Going REPLing with Haskeline

Getting Started with Nix for Haskell

Solving Advent of Code ’23 “Aplenty” by Compiling

Implementing Co, a Small Language With Coroutines #4: Adding Channels

Implementing Co, a Small Language With Coroutines #3: Adding Coroutines

Writing a Static Site Generator Using Shake

Solving Rock-Paper-Scissors in Type-level Haskell

Solving Advent of Code Day 7 with Parsers, Zippers and Interpreters

A* Algorithm in Haskell

Self-hosting GoToSocial on NixOS

Just, Nix Shell and Podman are a Killer Combo

Implementing Co, a Small Interpreted Language With Coroutines #2: The Interpreter

Implementing Co, a Small Interpreted Language With Coroutines #1: TheParser

Solving Advent of Code “Handy Haversacks” in Type-level Haskell

Learnings from Solving Advent of Code 2020 in Haskell

JSON Parsing from Scratch in Haskell: Error Reporting

JSON Parsing from Scratch in Haskell

Notes for 'Thinking with Types: Type-level Programming in Haskell', Chapters 1–5

Mechanically Deriving Binary Tree Iterators with Continuation Defunctionalization

Fast Sudoku Solver in Haskell #3: Picking the Right Data Structures

Fast Sudoku Solver in Haskell #2: A 200x Faster Solution

Fast Sudoku Solver in Haskell #1: A Simple Solution