PureScript Row Polymorphism: Type-Safe Records Without Wrapper Types
PureScript's row polymorphism lets functions accept any record containing at least the fields they need — no interfaces or wrappers. A worked example, the Cons/Union machinery, and the pitfalls.