我开始使用 Haskell... 我尝试以两种不同的方式编写以下微不足道的函数,让 Haskell 决定类型,而类型系统在每种情况下都会做不同的事情。这种行为的解释是什么?
Prelude> let f x = 2 * x
Prelude> let g = (2*)
Prelude> :info f
f :: Num a => a -> a -- Defined at <interactive>:1:5
Prelude> :info g
g :: Integer -> Integer -- Defined at <interactive>:1:5
谢谢!