We may say most aptly, that the Analytical Engine weaves algebraical patterns just as the Jacquard-loom weaves flowers and leaves.
—Ada Lovelace, Computer Pioneer
Weaving Software with Patterns
I have many “favorite” F# features, but my favorite favorite is pattern matching! Perhaps this is because it’s the feature that takes us furthest away from Object-Oriented coding, letting us truly differentiate from legacy coding patterns. Another nice aspect is how unexpectedly pervasive it can be in well-factored code bases. Prepare to be surprised ...