Functional Programming Lessons in Imperative Code| jerf.org
OOP is not that bad, actually| osa1.net
Monad classes for transformers, using functional dependencies| Hackage
An opinionated guide to Haskell in 2018| lexi-lambda.github.io
Lifts for free: making mtl typeclasses derivable| lexi-lambda.github.io
In the first part of our Parsing With Haskell series, we introduce you to Alex – a Haskell tool for generating lexers.| Parsing With Haskell (Part 1): Lexing With Alex
Using a final tagless encoding does not require typeclasses, and we can achieve many of the same benefits with simpler code.| Foxhound Systems
+ tl;dr - In this post I go through a bunch of improvments and extras to the code from part 3, 2 years after this initial series was started. The improvements range from development aids to post-deployment “observability” (metrics, logging, tracing) and how I’ve handled them in the past. It’s pretty ridiculous to finish a blog series 2 years later, so I also released the code for a Job Board API I wrote (also the frontend that manages it) for those who want to see how a CRUD-y product...| vadosware.io