Functional Programming Ideas for the Curious Kotliner

Functional Programming Ideas for the Curious Kotliner

A new book by Xebia Functional (formerly 47 Degrees) lead software engineer Alejandro Serrano Mena demonstrates why functional programming and Kotlin make such a great team.

Functional Programming Ideas for the Curious Kotliner

Kotlin lies in a really interesting intersection of programming styles, with functional programming becoming increasingly popular. Data classes, a collection library based on higher-order functions, and the suspend mechanism are examples of how Kotlin embraces the functional style. Libraries like Arrow have taken the lead on the community side. Others like HTTP4k talk of “your server as a function.” But functional programming is by no means new; languages like Haskell and OCaml have existed for more than three decades. So, why not take advantage of the decades worth of ideas, concepts, and patterns from the broader community? Functional Programming Ideas for the Curious Kotliner explores those ideas with a higher impact on Kotlin code, including how to model and transform data in immutable fashion, describing dependencies using contexts and effects, or treating actions as data.

Early-access release

The author is still putting the final touches on this book, but you can pick up an early-access version of Functional Programming Ideas for the Curious Kotliner at Leanpub.com. Although this is an in-progress release, you’ll get free updates when the author updates the book.

About the author

Alejandro is a developer and trainer specialized in functional programming. He has more than a decade of experience using and researching functional programming, formal verification, and static analysis. He holds a PhD from Utrecht University on the topic of compilers for domain-specific languages. He is the author of Practical Haskell, the Book of Monads, Haskell (Almost) Standard Libraries, and Functional Programming Ideas for the Curious Kotliner.

Ensure the success of your project

47 Degrees can work with you to help manage the risks of technology evolution, develop a team of top-tier engaged developers, improve productivity, lower maintenance cost, increase hardware utilization, and improve product quality; all while using the best technologies.