[Haskell-cafe] A question on dependent types in Haskell