Supporting infinite recursion via stacker?

Another alternative is to implement a coroutine library/macro that creates the state-machine and stack datastructure for us. Coroutines have been discussed (RFC) and discussed (rust issue) and discussed (rfc-issue).

To quote @pnkfelix:

a library in stdlib could provide the functionality.

This is analogous to how setjmp is provided as a library function in C. Or if you prefer, call-with-current-continuation in Scheme. It simply may not require much or any primitive language change. One might want nicer sugar for the feature, but we have yield reserved so that seems okay.

(Caveat: I have not given any consideration to how the borrow-checking rules could be impacted by such a feature. I am assuming it's a solvable problem at worst.)

and a library on crates could use the intrinsics to implement coroutines.