You can't recreate "newtype" with "data". There's a long discussion of this in the report: check section 4.2.3 http://haskell.org/onlinereport/decls.html#sect4.2.3 John