[Haskell-cafe] Functional dependencies and type inference