I'm less interested in languages where you can write almost anything, but then are required to write an accompanying proof that what you wrote terminates.
I'm more interested in the design space of languages inherently confined to certain complexity classes by construction.
Is there any sort of theory hierarchy for sub-turing-complete languages?