11 Jul 26
We received 553 answers to the question “If you could change one thing about Haskell, what would it be?”. This is the breakdown.
Building a language is fucking hard, man.
30 Jun 26
A great introduction to typeclasses!
28 Jun 26
Very nice way of transitioning from Lisp to Haskell. The Lisp library is also very cool.
12 Jun 26
Some nice patterns, both in the main body and the comments, for implementing lenses with a light sprinkling of category theory.
via: https://haskellforall.com/2026/06/ergonomic-overrides-for-nixpkgs
What I enjoy most about these (semantic) editor combinators is that their use is type-directed and so doesn’t require much imagination. When I have the type of a complex value, and I want to edit some piece buried inside, I just read off the path in the containing type, on the way to the buried value.
via: https://haskellforall.com/2026/06/ergonomic-overrides-for-nixpkgs
25 Mar 26
11 Nov 25
Despite being formally dual to monads, they don’t seem to be “all the rave” like monads are. Just because you get ‘em by just reversing some arrows doesn’t mean that comonads aren’t independently interesting!
Monads look pretty different in math vs in programming… what exactly are they? (Don’t say they’re just monoids in the category of endofunctors,… I mean it.)
03 Nov 25
A programming language for multilingual grammar applications
26 Sep 25
19 Sep 25
Curry is a declarative multi-paradigm programming language which combines in a seamless way features from functional programming (nested expressions, higher-order functions, strong typing, lazy evaluation) and logic programming (non-determinism, built-in search, free variables, partial data structures). Compared to the single programming paradigms, Curry provides additional features, like optimal evaluation for logic-oriented computations and flexible, non-deterministic pattern matching with user-defined functions.
04 May 25
29 Apr 25
28 Apr 25
Always better to probably have not made a mistake than institute logic to double check later
23 May 22
An ESLint plugin to disable mutation and promote functional programming in JavaScript and TypeScript.