(datatype constant V : boolean; !; _______________ V : constant; V : string; !; ______________ V : constant; V : number; !; ______________ V : constant; V : symbol; !; ______________ V : constant;) (datatype constant !; V : boolean; ______________ V : constant; !; V : string; ______________ V : constant; !; V : number; ___________ V : constant; !; V : symbol; ___________ V : constant;) (datatype whatever ____________________ (f X Y), !, (f Y Z) >> (f X Z);)