> In the Haskell Report 1.3 it says
> 
>     "Type synonyms are a strictly syntactic mechanism to make type
>      signatures more readable.  A synonym and its definition are
>      completely interchangable."
> (BTW, these sentences are the first of section 4.2.3, but they
> probably should be the last of the previous section.)  This is
> against my intuition.  I would say that a type synonym introduces
> a new type, of which the programmer knows nothing except that there 
> exists a way to convert the synonym and its definition to each 
> other.
It may be against your intuition, but that is the way it is defined
to be in Haskell. A `type' definition just defines an abbreviation.
If you want a new type you need to use `data' or `newtype'.

A type system with automatic coercions inserted on top of all the
complexities of Haskell is more than I want to think about.

        -- Lennart



Reply via email to