From: Bill W. <wil...@co...> - 2014-03-23 17:10:54
|
On Sun, 2014-03-23 at 15:51 +0000, Leo Butler wrote: . . . > My point in writing the functions co-operatively and tail-recursively is > that the logic is easier to follow. Re-writing a tail-recursive function > as a loop seems easier than vice-versa. Maybe I have just become bitten > by a fashion virus. I and practically every Scheme programmer in the land heartily agree :-). In my experience re-writing a while loop as a tail-recursive function is almost always dead-bang easy. The state variables of the loop become the parameters of the function, the body of the loop becomes the body of the function, and the jump at the bottom of the loop becomes the tail call. Of course, I always try to write simple loops so this may be self-fulfilling prophesy :-). -- Bill Wood |