[Haskell-cafe] expected vs inferred type confusion