
17 Nov
2007
17 Nov
'07
10:46 p.m.
I thought of two more reasons I'm against this proposal:
2) It isn't backwards compatible. It will cause some existing Haskell
code to not compile.
3) It makes things more difficult in GHCI. Under this proposal, you'd
have the following:
Prelude> let x = 2
Prelude> 6 ^ x
<interactive>:
Couldn't match expected type `Int' against inferred type `Integer'
On 11/17/07, Henning Thielemann
Let me guess - you don't use -Wall. :-) Warnings are not the problem, warnings point to a problem. The problem here is, that the compiler has to guess a type, because it cannot be infered from other operands.
I don't see how that's a problem. Have you ever had a case where defaulting to Integer produced the wrong behavior?