Coding in Kotlin with Arrow

Garth Gilmour

Kotlin is one of the new generation of languages which are taking over from Java. It initially gained popularity on Android but has since spread to all kinds of application development. Although originally a JVM based language compilers have now been released that target JavaScript and native code.

Arrow is a functional coding library, aimed at developers who love Kotlin but also want to use frameworks previously only available in languages like F#, Haskell and Scala. Its most fundamental feature is provision for Typeclasses. On top of this are built implementations of standard FP monadic datatypes (Try, Option, State etc…), types for managing effects (IO, Async etc…), support for Optics and integrations with other frameworks like RxJava.

This talk will introduce, via copious examples, the more functional style of Kotlin development possible with Arrow and discuss its merits in typical industry scenarios. No previous Kotlin or Arrow experience is required. Attendees wishing to follow along should bring a laptop with Java 8 and the latest version of IntelliJ Community Edition.