▲ | mrkeen 5 days ago | ||||||||||||||||
I'll bite. What's an example of such a loop? | |||||||||||||||||
▲ | eru 4 days ago | parent [-] | ||||||||||||||||
> All tail recursive functions can be rewritten as a loop but there exist loops that can not be rewritten as a tail recursive function. And the other way round: how do you (sanely) write a state machine as a loop? See https://en.wikisource.org/wiki/Lambda:_The_Ultimate_GOTO for some examples. I agree that (most) functions that only ever tail-call themselves can relatively easily be expressed as loops, if for some reason you really love loops. But state machines aren't like that. With tail calls, you can represent each state as a function, and you can pass different parameters to different states. Very neat, and just works. | |||||||||||||||||
|