Goldilocks Rectangle - finding a better solution
Three different ways to solve a problem in a functional language, with some discussion of the pros and cons of each approach.
Using functional programming to solve logical puzzles in code
Duck-typing with GHC Generics
An exploration of structural typing in a nominal world
Abusing Monoids: Monoidal predicate combinators
There are many ways to skin a predicate, and monoids fold into one of them.