5 Apr
2007
5 Apr
'07
4:41 a.m.
On Wed, Apr 04, 2007 at 01:36:18PM -0700, Michael Vanier wrote:
For those of us who aren't type theorists: What's a "negative datatype"?
Negative isn't the usual term; we mostly call them 'contravariantly recursive' data types, due to CT influence. Anyways the thing to note is that the value appears recursively, on the left of an arrow. data Foo = Foo (Foo -> Bool) -- contravariantly recursive data Foo = Foo (Bool -> Foo) -- covariantly recursive Stefan