César is a Senior Software Engineer at ThousandEyes. He is particularly interested in the theoretical foundations of Functional Programming and is passionate in his endeavour to convince the Java community to embrace FP beyond lambdas. He regularly speaks at London Meetups, occasionally gives talks at major conferences, such as DevoxxUK, mostly on the adoption of functional programming and Kubernetes. In his spare time, he co-organises Devoxx4Kids UK
The time is ripe to demystify monads...
Monads are a key part of Functional Programming. They allow us to write clean, composable code and removes boilerplate. Have you noticed them sneaking into Java 8?
Yet, monads are feared by many in the Java community. Here I will debunk their mythical complexity.
In this talk we will explore two of the foundations of Functional Programming: functors and monads. We will look at Functional Programming from a theoretical perspective, but we won’t get lost in mathematical details. Using simple diagrams and practical examples we will build a clear understanding of monads. This is the perfect talk for anyone that feels baffled by functional programming!
Key takeaways:
You knew types were fantastic, but did you know they were algrebaic? That's the A in the perhaps familiar ADT acronym.
In this session I'll show you how to add and multiply types and even solve useful equations with them.
The ability to do algebraic operations with types is one of the cornerstones of Functional Programming. It is useful with languages like Haskell, Scala, Kotlin, Typescript and even Java...