[Haskell-cafe] A Question of Restriction
felipe.lessa at gmail.com
Mon Jul 27 00:14:07 EDT 2009
On Sun, Jul 26, 2009 at 09:01:22PM -0700, Brian Troutwine wrote:
> Hello all.
> I would like to define a data type that is the super-set of several
> types and then each of the proper subset types. For example:
data Foo = O !Odd | E !Even
> data Odd = One | Three
> data Even = Two | Four
> This, of course, does not work. It seems that such a thing should
> possible to express entirely in the type system, but I cannot think of
> how. Would someone be so kind as to explain how this sort of thing can
> be accomplished?
Do you have any reason not to do the above?
More information about the Haskell-Cafe