On 25 Jan 2009, at 00:11, Thomas Davie wrote:
I'm coming at this from the point of view that bottom would contain all the information we could possibly know about a value while still being the least value in the set.

Note that we can't possibly know what information can we possibly know about a value being given it's type.

For example, you can prove that the only "reasonable" value of type (forall a. a -> a) is (id); so, from you POV, (_|_) :: forall a. a -> a is equal to (id). This means, that

((_|_) :: forall a. a -> a) 1 = 1

instead of (_|_). But there is no way for a compiler to deduce all the equalities of this kind.
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to