Is type-sensitive code totally acceptable now? I do use it at times but generally try to avoid it.
I'd say this is probably a bad example of usage for the feature. I use pattern matching in a few places in my own code-base, and it's almost always on interfaces that have a large set of extension methods applied. It's kind of like an entity-component architecture, except the components are added at compile-time, rather than run-time. Unfortunately, real-life use scenarios are verbose and involved and require a lot o…
That's clearly a use case for interfaces and type-level programming.
They could have made a better and shorter case with error handling logic.