Tradeoffs of Highly-Expressive Types

I’ve had three different things on my mind recently: I read the excellent blog post “ Hyper-Typing ”. I watched a proponent of dynamically typed languages claim that state machines can’t be represented in statically typed languages. I’ve noticed a trend of posts on the r/typescript subreddit, in which posters make heavy usage of advanced TypeScript features in order to enforce invariants which…