Subject: Re: Tail recursion & CL
From: Erik Naggum <>
Date: Sun, 23 Sep 2001 15:54:36 GMT
Newsgroups: comp.lang.lisp
Message-ID: <>

* Juliusz Chroboczek <>
> On the other hand, consider the following:
>   (defun foo ()
>     (foo))
> and suppose that you compile FOO without tail-call elimination.  Does
> FOO terminate?

  Why do you not distinguish between "terminate" and "signal an error"?

> Thus, tail call elimination is not a mere optimisation, but a semantic
> feature.

  This is just plain wrong.  Your semantic feature rests on an equivocation
  between termination and crashing.  I fail to see how this can reasonably
  be considered anything but _completely_ bogus.  What is the _value_ of a
  crash?  Rather, a crash is the antithesis of termination, because it
  _prevents_ every reasonably expectation from a termination.  The same is
  true for a non-idiotic example which takes enough time to terminate that
  it can run out of some resources, like electric power or memory or disk
  space or whatever -- hell, that might even happen immediate after it has
  _started_ running.  It is profoundly counter-productive to treat each and
  every cessation of execution the same way.  I wonder what kind of silly
  theoretical framework has found it useful to abstract away the value of a
  computation so one could study the conditions for cessation of execution
  without concern for what the computation yields.  It seems to be one of
  those useless theories that are used only to prove something that is
  wrong and that every reasonable person knows to be wrong, but which can
  be shown to be true if you accept a whole bunch of insane premises that
  have been divorced from the reality and purpose of computing.

  Again, it is typical that this discussion centers around a Scheme feature.

  Why did that stupid George W. Bush turn to Christian fundamentalism to
  fight Islamic fundamentalism?  Why use terms like "crusade", which only
  invokes fear of a repetition of that disgraceful period of Christianity
  with its _sustained_ terrorist attacks on Islam?  He is _such_ an idiot.