definition module DefaultElem import StdEnv class DefaultElem a where default_elem :: a instance DefaultElem Int instance DefaultElem Char instance DefaultElem Bool //1.3 instance DefaultElem {#a} | ArrayElem, DefaultElem a; //3.1 /*2.0 instance DefaultElem {#a} | Array {#} a & DefaultElem a 0.2*/ instance DefaultElem (a e) | Array a e instance DefaultElem (a,b) | DefaultElem a & DefaultElem b //instance DefaultElem [e] class DefaultElemU a where default_elemU :: *a