Self recursion is a special case that WASM backend targets can more or less efficiently resolve the same way a human can convert a recursive function into a non-recursive one: explicitly put arguments onto your own simulation of a stack and perform the computation in a loop.
Unfortunately self recursion is only a subset of tail calling.
Unfortunately self recursion is only a subset of tail calling.