Arrow es promocionado como el complemento funcional de la biblioteca estándar de Kotlin. De hecho, el paquete de abstracciones de alto nivel listas para usar que ofrece Arrow ha demostrado ser tan útil que nuestros equipos ahora lo tienen como su elección por defecto para trabajar con Kotlin. Recientemente, en preparación para el lanzamiento de la versión 1.0, el equipo de Arrow introdujo varios cambios, entre los que se incluyen nuevos módulos y también algunas deprecaciones y eliminaciones.
Arrow es una librería de programación funcional para Kotlin que fue creada mezclando 2 populares librerías ya existentes (kategory y funKTionale). Si bien Kotlin ya contiene bloques nativos para la programación funcional, Arrow provee, además, paquetes de alto nivel de abstracción, listos para ser usados por desarrolladoras/es de aplicaciones. Provee, además, tipos de datos, clases, efectos, ópticos y otros patrones de programación funcional así como integraciones con otras famosas librerías. Nuestras primeras impresiones positivas de Arrow se han visto confirmadas cuando la usamos para construir aplicaciones que ahora están en producción.
Arrow is a functional programming library for Kotlin, created by merging two existing popular libraries (kategory and funKTionale). While Kotlin provides building blocks for functional programming, Arrow delivers a package of ready-to-use higher-level abstractions for application developers. It provides data types, type classes, effects, optics and other functional programming patterns as well as integrations with popular libraries. With Arrow, existing libraries are unified, which should go a long way to avoid fractured communities in this space.