At Symbolica we're building a symbolic execution service that explores every reachable state of a...
Choc13 - Blog
Symbolica's Console Newsletter Interview
This week we chatted to Jackson Kelley in the Console newsletter about our open-source symbolic executor.
Azure Functions with F# using .NET 5
Serverless computing promises to make it "easier" to just write some code, sling it at the cloud and...
Grokking Lenses
In most functional programming languages data structures are immutable by default, which is great bec...
Interpreting Free Monads
In the last post in this series we grokked Free Monads and saw that they gave us a way to neatly buil...
Grokking Free Monads
In this post I’m going to try and demystify free monads and show you that they’re not some strange ab...
Grokking Monad Transformers
Earlier in this series, in Grokking Monads, we discovered that monads allowed us to abstract away the...
Grokking the Reader Monad
From its name the reader monad doesn’t give too many clues about where it would be useful. In this po...
Grokking Traversable
Once you've grokked traversable's you'll wonder how you ever lived without them. Trying to gain intui...
Grokking Applicative Validation
Previously in Grokking Applicatives we discovered Applicatives and more specifically invented the...
Grokking Applicatives
Applicatives are perhaps the less well-known sibling of the monad, but are equally important and...
Grokking Functors
In this post we're going to grok functors by "discovering" them through a worked example. S...
Grokking Monads, Imperatively
Previously, in Grokking Monads, we discovered monads by going through a worked example. By the end we...
Grokking Monads
In this post we're going to grok monads by independently "discovering" them through a worked example....