Quoting Simon Peyton-Jones <simo...@microsoft.com>:

for example. Singleton unboxed tuples are a perfectly valid data type; it's just that we don't (now) have a name for their constructor.

Well, Haskell *does* have a mechanism for giving two different implementations to a particular name...

class UnboxedUnit a where (# #) :: a
instance UnboxedUnit (##)
instance UnboxedUnit (a -> (# a #))

That only leaves solving the equivalent problem for the type-level name (# #).

~d

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to