Kotlin is great language to do modern functional programming, and in my opinion perhaps the best language to do modern mainstream (hardcore) functional programming. With the power of Kotlin DSLs we can make functional programming idiomatic, simple and elegant. This talk takes us through the different techniques that we can apply in Kotlin to achieve modern, and elegant functional patterns.