Brian Hulley wrote: > <snip> > which is perhaps clearer and prevents bad types such as (Int -> > String & Int -> Char) by construction. Oops! I forgot that functions with such types can exist via multi-parameter type classes and overloading - this may be one reason why intersection types have not yet been added to Haskell.