Masking asynchronous exceptionsPublished 14 II 2021
Interruptible operations in Haskell and masking asychnronous exceptions.
Ghc Tags PluginPublished 7 III 2020
Generating vim tags file using a GHC plugin.
Monoidal and applicative functorsPublished 1 III 2019
In this post we explore the equivalence between monoidal and applicative functors. Monoidal functors in Hask are functors which preserve the product (in some relaxed way), while applicative functors are ones that preserve application of lambdas. Monoidal functors have much more conincise laws, but at the end it turned out that the applicative formulation was very successful.
Why Monadic IO?Published 8 II 2019
In this post we will discover that the imperative programming style leads to monoidal IO, while using recursive style, which is more natural for functional programming, leads to monadic IO.
Categories with Monadic Effects and State MachinesPublished 1 II 2019
In this post we will discover and describe categories which admits monadic effects, we will build a free object of this type and show how to use it to build a typed safe state machine that was presented by Edwin Brady.
Kleisli categories and free monadsPublished 20 XII 2018
In this short post we explore the interplay of free monads and Kleisli categories.
Typed transitions, finite state machines and free categoriesPublished 25 VIII 2018
In this post I model finite state machines using free categories; you will also get a gentle introduction to Kleisli categories, folds on free categories and finally tagless style. Based on a simple example of an FSM by Oscar Wickström.
Monadicityfrom algebras to monads and back to algebrasPublished 9 VIII 2018
Introduction to the monadicity theory based on free-algebras Haskell package.
Free algebrashaddock documentation
free-algebrapackage on hackage.
From free algebras to free monadsPublished 30 VII 2018
The post was re-published on iohk blog.
Introduction to Universal Algebra, a mathematical discipline that is hidden under many constructions in Haskell ecosystem. It is more concrete than Category Theory, and hence often easier to understand. It is also a very useful source of examples in Category Theory.
Composing cofree intepretersPublished: 30 VIII 2018
Workshop on Category TheoryPublished: 12 VI 2018
Workshop I gave at Monadic Party. Unfortunatelly, first 30 minutes of the recording was lost...
Routing with cofree comonadPublished: 14 X 2017
My talk at PureScript Conf 2017 (a satelite event of Lambda Conf 2017) about routing frontend applications using coffree comonad and modelling DOM with
Peano Algebras in HaskellPublished: 2017
Fun with Peano axioms in Haskell.