extenor (racket): Extensible Nominal Records.  They're like mixin-able structs that keep their extensions when functionally updated by procedures that only know about the non-extended version.  Also somewhat like dictionaries, but supporting struct-type-properties.
Keywords: struct