Cutting Boilerplate with ppx_deriving: Where OCaml's Code Generation Pays Off
ppx_deriving generates compare, show, and equality functions from one annotation, keeping them correct as types evolve — but generated code has real costs in error readability and build complexity worth understanding first.