Conversation

There's precedent for this in dependently typed languages. They forbid infinite loops because infinite loops let you prove anything (they let you do circular reasoning).
1
2
It turns out a lot of code should halt, but some programs shouldn't (e.g. your pacemaker controller). Having non-termination contexts seems like a good way to support both cases well in the same language.
1
2