[Haskell-cafe] Pattern match failure, then inconsistent function behavior