Data.Record
data X style
data (rec :& field) style
data (name ::: sort) style
class Name name
class Record kind rec
data Expander thing rec name sort
class Convertible rec rec'
class Separation rec remain sepName sepSort