[plt-scheme] guido on tail recursion
On Fri, Apr 24, 2009 at 7:53 PM, Eli Barzilay <eli at barzilay.org> wrote:
> I think that Shriram's automaton thing is a good demonstration of what you can
> get with tail calls
It is one of the best.
Take:
LAMBDA: The Ultimate Imperative [1]
and
LAMBDA: The Ultimate GOTO [2]
and
Automata via Macros [3]
While you certainly don't need to read 1, 2, or 3 to learn Scheme, or
perhaps to understand where tail-calls fit into your mental model of
programming; I haven't seen anything else that discusses it.
It is not just discussing it, actually; it is teaching it, and also,
marketing/selling it. Both are important.
It took me a long time to understand and appreciate tail-calls.
Sure in retrospect I guess it is obvious where their power lies; but
then again based on this thread maybe it is not obvious, or at least I
was not the only one who didn't get it.
"Scheme is hard because it is because it is subtle" to paraphrase
Aaron Hsu. Part of learning Scheme, perhaps, requires learning how to
really study! :)
My writeup on 1-3:
[1] http://www.wisdomandwonder.com/article/497/lambda-the-ultimate-imperative
[2] http://www.wisdomandwonder.com/article/509/lambda-the-ultimate-goto
[3] http://www.wisdomandwonder.com/article/1426/automata-via-macros