
27 Dec
2007
27 Dec
'07
3 p.m.
Achim Schneider wrote:
Jonathan Cast wrote:
More importantly, we can prove that [1..] == [1..] = _|_, since
[1..] == [1..] = LUB (n >= 1) [1..n] ++ _|_ == [1..n] ++ _|_ = LUB (n >= 1) _|_ = _|_
As far as I understand http://www.haskell.org/haskellwiki/Bottom , only computations which cannot be successful are bottom, not those that can be successful, but aren't. Kind of idealizing reality, that is.
Ah, that's only a glitch in the wording. [1..] == [1..] is still _|_ since it loops forever. For more about _|_, see also http://en.wikibooks.org/wiki/Haskell/Denotational_semantics Regards, apfelmus