The Curious Engineer

All blogs / Haskell

Lysxia's blog

blog.poisson.chat

A blog about functional programming

HaskellFunctional / PL theoryCompilers

Posts
66 from 28 Sep 2016 to 1 Sep 2025
Posting
now and then
Kind
personal blog
Feed
https://blog.poisson.chat/atom.xml

2025 3

  1. Alpha-beta pruning is just minimax in a lattice of clamping functions
  2. Twentyseven 1.0.0
  3. Unfolding trees breadth-first in Haskell

2024 3

  1. Unicode shenanigans: Martine écrit en UTF-8
  2. Where does the name "algebraic data type" come from?
  3. Programming Turing machines with regexes

2023 2

  1. Abstract nonsense
  2. From delimited continuations to algebraic effects in Haskell

2022 3

  1. The quantified constraint trick
  2. Formalizing finite sets
  3. The pro-PER meaning of "proper"

2021 5

  1. On proving lists infinite
  2. Initial and final encodings of free monads
  3. What is a type?
  4. Defunctionalizing dependent type families in Haskell
  5. Theory of iteration and recursion

2020 6

  1. hs-to-coq and Data.Sequence
  2. Definitional lawfulness: proof by inspection testing
  3. Generic traversals with applicative difference lists
  4. The pl-a.net link aggregators
  5. Programming totally with head and tail
  6. Testing higher-order properties with QuickCheck

2019 11

  1. A monad is just a submonad of the continuation monad, what's the problem?
  2. The reasonable effectiveness of the continuation monad
  3. Infinite types and existential newtypes
  4. Making Haskell run fast: the many faces of reverse
  5. Functor, Applicative, Monad, a play
  6. Free applicative functors in Coq
  7. Free monads of free monads
  8. Formalization of Reynolds's parametricity theorem in Coq
  9. Higher-rank types in Standard Haskell
  10. From C to Interaction trees: Specifying, Verifying, and Testing a networked server (CPP 2019 talk transcript)
  11. Hiding code blocks in literate programming blogs

2018 11

  1. Naming abstraction
  2. Surgery for data types
  3. Overloaded type families
  4. Haskell with only one type family
  5. Type is an extensible GADT
  6. Deriving instances with a twist
  7. Heterogeneous lists with dependent types in Haskell
  8. Pipes define a free monad
  9. An old and a new library for generic deriving
  10. Deriving Show for higher-kinded types
  11. A quick tour of generic-random

2017 11

  1. Making a Show with reflection
  2. Performance debugging in aeson
  3. Fuzzing of concurrent programs
  4. A terminal view of testing polymorphic functions
  5. Canonical testing for polymorphic functions
  6. Free monad transformers
  7. Note to myself: a theory of injective arrows
  8. Randomness in purely functional programs
  9. Enumeration of multigraph DFS
  10. Coupled reader and writer
  11. Monadic profunctors for bidirectional programming

2016 11

  1. Applicative style programming with profunctors
  2. Applicative lenses
  3. Lookaheads
  4. Typeclasses for bidirectional serialization, an example
  5. Typeclasses for bidirectional serialization
  6. Better invertible syntax descriptions
  7. Towards monadic bidirectional serialization, a monadic example
  8. Towards monadic bidirectional serialization, a step back
  9. Towards monadic bidirectional serialization
  10. Incremental updates for efficient bidirectional transformations
  11. Parsing and unparsing with lenses