Lambda World 2019 - Arrow Meta - Enabling Functional Programming in the Kotlin Compiler
Arrow Meta is a library that empowers library and application authors with the ability to write plugins for the Kotlin compiler. Compiler plugins have access to all compiler phases and can intercept and modify the AST, descriptors, and IR intermediate lang for bytecode generation. In this talk, Simon Vergauwen and Raul Raja, Arrow maintainers from 47 Degrees, will go over the main features of Arrow Meta and how the Arrow library aims for:
- Bringing first-class FP capabilities to the Kotlin compiler.
- Provide a framework for developers to write compiler plugins easily.
You will learn how the Kotlin compiler works internally and how you can write compiler plugins with the Arrow Meta library.
We will discuss some of the current Arrow plugins in development and the future and state of FP in Kotlin:
- Keep 87. Type class and extension families
- Monad Comprehensions
- Higher Kinded Types
- Automatic Optics derivation
- Refined types
Follow Raúl Raja on Twitter - @raulraja
Follow Simon Vergauwen on Twitter - @vergauwen_simon