``` when x is | [a] then a | _ then 42 ``` We must be able to typecheck the `when` clauses. Without pattern matching capabilities, our data structures are practically useless.