>   As for recursive "newtype":  Really?  That's news to me.  "newtype"
> definitions only have one constructor, so any recursive definition would be an
> infinite datatype.  Since a newtype constructor is unlifted, this would make
> recursive newtypes pretty useless.
How about this?

  newtype List a = L (Maybe (a, List a))

This gives you (something isomorphic to) ordinary lists 
and is quite useful I think.

        -- Lennart



Reply via email to