
17 Jan
2002
17 Jan
'02
3:08 p.m.
Dylan Thurston wrote:
If I understand it correctly, this makes \x.undefined :: a -> b different from undefined :: a -> b For instance, in this setup, the CPO [()->()] has four elements, in a totally ordered CPO; in increasing order, they are undefined const undefined id const () Is it really clear the first two ('undefined' and 'const undefined') are different? Ken says they are observationally equivalent.
The two first are different: seq undefined 0 gives bottom seq (\ x -> undefined) 0 gives 0 When seq was introduced as a polymorphic function the function space in Haskell got lifted. :-( Not that in lambda calculus they are the same; seq is not lambda definable. -- Lennart