Functions

Requirement: Type, Impl := Type -> ClassType
Super: ClassType, Impl := Type, Additional := Type -> ClassType
Class: ClassType -> ClassType (with InheritableType) This function is used by the compiler to mark a class as inheritable and does nothing in terms of actual operation.
Super: TraitType, Impl := Type, Additional := Type -> TraitType
Requirement: Type, Impl := Type -> TraitType