Spotlight on Alejandro Serrano Mena
When: Wednesday, October 16th - 9:00
Yin and Yang of Haskell by 47 Degrees
In this full-day workshop, you have the chance to learn how to design and build applications using Haskell, one of the better-known functional languages. Haskell shines in describing business domains in a pure way, and this purity gives fertile ground for nice abstractions for concurrency. But every application needs to talk to the outer world, hence the need to understand the other, impure, side of the coin.
This workshop is not only useful for those working in Haskell codebases. The same ideas and concepts pop up when using other languages in a pure functional manner, such as Scala with Cats/Scalaz, Kotlin with Arrow, or Swift with Bow.
The workshop is divided into three parts:
- The Yin: pure modeling
- Simple modeling using algebraic data types
- Extracting dependencies into type classes
- Modeling services using monads
- Enforcing more invariants using GADTs
- The Yang: impure execution
- The base model: laziness and exceptions
- Basic input/output in the IO monad
- Cheap concurrency using green threads and STM
- Streams of data: databases and message queues
- The Duality: common architectural patterns
- Functional core, imperative shell
- Onion architecture
Almost every step in my professional life has been related to functional programming in one way or another. Currently, I work at 47 Degrees. Before that, I was at Utrecht University, doing research about functional languages, and teaching our students about basic and advanced Haskell. Previously, I was involved in Nublic, a small start-up where we tried to develop the concept of a ‘personal cloud’. The project didn’t really take off, but we all learnt a lot of Scala. I really enjoy speaking to other about the niceties of functional programming. Some years ago I wrote the book ‘Beginning Haskell’, and soon I’ll be publishing ‘The Book of Monads’. I am quite active in technical conferences such as LambdaWorld or LambdaConf, meet-ups in Spain and the Netherlands, apart from more academic conferences about this topic.
Preferred pronouns: he/him.
For more on Alejandro, visit:
About Lambda World:
Lambda World takes place October 17th - 18th, in Cádiz, Spain and is hosted by 47 Degrees in conjunction with the Scala and Java communities of Spain. The event is located at the Palacio de Congresos, an old tobacco factory near the beach. You can find more details at Lambda.world