[Haskell-cafe] The semantics of constructor patterns