## More detailed differences between Scheme, OCaml, and Haskell ## Here is comparison of the syntax for declaring types in Haskell and OCaml: -- Haskell data Pretty a b = Lovely a | Cute b ClothingModule.ButtonType newtype Pretty a b = Pretty a b Int newtype Pretty a b = Pretty { unPretty a } type Pretty a b = (a, b) (* OCaml *) type ('a,'b) pretty = Lovely of 'a | Cute of 'b * ClothingModule.ButtonType type ('a,'b) pretty = Pretty of 'a * 'b * int type ('a,'b) pretty = Pretty of 'a type ('a,'b) pretty = 'a * 'b *Will explain later, and add more material.*