[Haskell] Fixpoint combinator without recursion

Claus Reinke claus.reinke at talk21.com
Thu Apr 5 18:39:52 EDT 2007

>> Then we say "the argument occurs in both positive and negative
>> positions" or "the argument occurs in both covariant and contravariant
>> positions". There doesn't seem to be a shorter name. I want to note that
>> this kind of thing drives OOP crazy.

i recall this paper being of some help:-)

    Covariance and Contravariance: Conflict without a Cause (1994)
    Giuseppe Castagna
    ACM Transactions on Programming Languages and Systems

> I know that types like
>> data T = T (T -> T)
> are inhabitated by things other than bottom (like id or \_ ->
> undefined), but can it be useful for *anything*?

you are in good company with that kind of question.

have a look at Dana Scott's Turing Award paper for some personal notes 
on how he set out to show Christopher Strachey "that he was all wrong.. 
it [lambda-calculus] was a formal device.. it had no mathematical basis.. I 
had actually convinced him by 'superior logic' to give up the type-free 
lambda-calculus", followed by "once the doubt .. was there, it was not 
long before I had found one of the spaces isomorphic with its own function 
space, which provides a model of the 'type-free' lambda-calculus".



More information about the Haskell mailing list