sum types, value constructors, type constructors