[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: addendum about informality and tail recursion

Kent Pitman made my day by saying Scheme has taught people to think:

> Hidden in this tiny aside is my anger that one of the biggest effects
> that I have seen in the way Scheme has taught people to think is that
> they think "stack models are wrong" and "continuation models are
> right", "tail recursion is right" and "iteration is wrong", etc.  This
> may not be the intent of the cogniscenti...

Speaking, I hope, as one of the cogniscenti, I think

    stack implementations are right (I once wrote a paper on this)
    continuation models are right sometimes

    tail recursion is right
    iteration is right, too (it's a special case of tail recursion)

> In my own small way, this wording request represents a
> push on my part back toward restoring equilibrium by having a place to
> point to in the Doctrine of All That Is Right and Good (i.e., the
> Scheme manual) where words like "stack" and "goto" are used without
> fear that the world will come to an end

I haven't seen much evidence that Scheme's True Way has so mauled
the Forces of Evil Incarnate as to create the kind of imbalance
within the Complementary Principles of Light and Dark that might
lead to the Imminent Demise of The Universe as We Know It.

In fact, I think Scheme's True Way continues to be a minority
viewpoint, and that minorities contribute most when they don't
completely abandon their culture while assimilating themselves
into the mainstream.

> So when I talk about a "spaghetti stack", I'm automatically 
> risking that someone will assume I'm prescribing an implementation?

That's what I would assume, because the term was invented
to describe an implementation.  What does it mean to you,
if not an implementation strategy?