[Haskell-cafe] Counterintuitive ScopedTypeVariables behaviour