red-black-record (hackage): A library that provides extensible records and variants, both indexed by a type-level red-black tree that maps Symbol keys to value types of any kind.  The keys correspond to fields names in records, and to branch names in variants.  At the term level, value types come wrapped in a type constructor of kind q -> Type, where q is the kind of value types.  The records and variants can be converted to and from regular Haskell datatypes; also to and from the unlabelled n-ary products and sums of the sop-core package.
Keywords: bsd3|data|library