I think it will be a while, if ever, before we&#x27;re able to handle passing types around as values, in Haskell, the way we do in Idris and Agda. Dependent typing isn&#x27;t just some feature. It touches a whole other way of thinking about things.<p>If you go all the way with Agda, you have significantly constrained recursion to the point that the language isn&#x27;t turing-complete anymore, but in return you get termination checking and other nice things. As it turns out, most of the code we write doesn&#x27;t need unbounded recursion. Seriously, can you think of the last time you wrote something like that?<p>And I think that&#x27;ll be a hard pill for people to swallow, much like how it was really hard to sell memory safety to C&#x2F;C++ guys back in the day.