On 14 Apr 2010, at 09:12, Jonas Almström Duregård wrote:
>> f,g :: Bool -> Int
>> f x = 6
>> g x = 6
>>
>> We can in Haskell compute that these two functions are equal, without
>> solving the halting problem.
>
> what about these?
> f,g :: Bool -> Int
> f x = 6
> g x = x `seq` 6
As pointed out on #haskell by roconnor, we apparently don't care, this is a
shame... We only care that x == y => f x == g y, and x == y can't tell if _|_
== _|_.
It's a shame that we can't use this to tell if two functions are equally lazy
(something I would consider part of the semantics of the function).
Bob
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe