Data types à la carte
Summary
Data types à la carte (2008) by Wouter Swierstra introduces a technique to assemble data types and functions from modular components and shows how this approach can structure free monads to manage IO in Haskell. The abstract highlights modular data/type composition as a core idea, with historical significance in functional programming.