let intstr = Sequence.plus (Types.char (Chars.char_class (Chars.mk_char '0') (Chars.mk_char '9') ) ) let true_atom = Atoms.mk_ascii "true" let false_atom = Atoms.mk_ascii "false" let true_type = Types.atom (Atoms.atom true_atom) let false_type = Types.atom (Atoms.atom false_atom) let bool = Types.cup true_type false_type let types = [ "Empty", Types.empty; "Any", Types.any; "Int", Types.Int.any; "Char", Types.char Chars.any; "Atom", Types.atom Atoms.any; "Pair", Types.Product.any; "Arrow", Types.Arrow.any; "Record", Types.Record.any; "String", Sequence.string; "Bool", bool ];