An overview of Pattern Matching, with demos of why it's needed, and how you can use it to write cleaner and safer code