There's an expressiveness gap between languages with and without proper tail calls. (Unless you're willing to accept the unsafe-for-space solution.)
How far I would get before losing interest or facing those issues, I don't know.
For others who are curious about it, here it is: https://github.com/WebAssembly/tail-call/blob/master/proposa...