[Haskell-cafe] Re: Laws and partial values

Miguel Mitrofanov miguelimo38 at yandex.ru
Sat Jan 24 17:42:05 EST 2009

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.

More information about the Haskell-Cafe mailing list