1
Types = Main +
2
types number = nat
3
gate = bool => bool => bool
4
('a,'b)alist = "('a * 'b)list"
5
end