I came to love pattern matching so much that now when I write TypeScript I get frustrated. It is a weird balance.
All of this looks and feels like C#. That doesn’t look unreadable or a completely different language. In fact they end up making C# more readable by removing boilerplate