Monads 2.0, aka Algebraic Effects: ExtensibleEffects.jl
2021-07-29, 19:00–19:30 (UTC), Purple

While Monads make it easy to hide one context nicely in your code, with Extensible Effects you can combine multiple contexts and let them seamlessly interact with each other. TLDR: If you want to abstract and hide away some computational context, prefer Extensible Effects to Monads.

You heard that monads should be cool, but guess maybe there is something better already? Indeed ;-)

Extensible effects, or sometimes also called algebraic effects are now around for some time and have made monads composable.
Remember, a monad is essentially a composable hidden context, however to compose different such monads has been a struggle for many years.

This talk will present the concept and implementation of Extensible Effects. The implementation was adapted from the scala library Eff, but massively simplified, and with many examples of different complexity. Hence it will serve very well for educational purposes. You can find the source code at

Extensible Effects are a bit like magic. The implementation looks so small but what it can do surpasses imagination, even if you programmed it yourself. It is a truly remarkable concept. Grab the chance and get to know it in this session!

Stephan Sahm is Senior Data Science and ML Engineering Consultant. Having programmed in Java, Matlab, Python, R, Scala and Julia he appreciates the combination of simplicity and speed which the Julia language brings to Data Science. With master degree in math/stochastics and cognitive science together with 5 years industry experience he can help you bring your favourite Data idea into production.