You can even track space complexity in the type system.
We were talking about JavaScript, remember?
As to JavaScript, there are much more commonplace things that it doesn't track in the type system, either, and they're all a matter of choice. There is no theory that says what should or shouldn't be tracked, and no definitive empirical results that can settle all those questions, either. At the end of the day, what you choose to track is a matter of preference.
And you implicitly acknowledged this fact by using TPL as example: you know, the class of language where all you can write is a provably halting program (that's the definition of Total programming languages!).
The halting problem being a property of Turing-complete languages, you just sidestepped the issue here.
> Of course it can be tracked. It's all a matter of choice, and things you've grown used to vs. not.
What? When has the halting problem become “something you've grown used to”?!