Re: CL implementations and tail-call optimization



In article <1156761645.434767.82780@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>,
Rob Thorpe <robert.thorpe@xxxxxxxxxxxx> wrote:
I've looked at all of the implementations on my machine. All of Sbcl,
Ecl , Clisp and Gcl have TCO in their compilers. The normal
interpreters of Ecl, Gcl and Clisp don't have it (and Sbcl doesn't have
an interpreter).

[Apologies for pulling this thread out of the deep.]

Just as a note, since 0.9.17 SBCL has had a full interpreter. It is not
enabled by default; to use it:

(setf sb-ext:*evaluator-mode* :interpret) ; :compile for default behavior

It is primarily intended for performance of run-once code and eventual
support of compilerless images. There is currently no debugger support
(you see the frames of the evaluator guts in the debugger), and in
general compiled code is a lot more developer-friendly.

Unlike CMUCL's interpreter SBCL's directly interprets the source code.
(CMUCL interprets the IR1 flow graph the compiler generates, IIRC.)

-bcd
--
*** Brian Downing <bdowning at lavos dot net>
.



Relevant Pages

  • Re: C as a Platonic pathology
    ... Don't patronize me about matters you don't fully understand, ... That's what I've always heard and read as lexical analysis and parsing. ... examples I gave are said to be compilers, ... I have, and i can provide many, manhy references in support of my views on what constitutes a compiler vs an interpreter. ...
    (comp.lang.c)
  • Re: universelle Funktion mit 3 Variablen
    ... Blickwinkel des 'externen Compilers', sondern quasi mitten drin, mit dem ... Interaktiv am Interpreter Schlüsseldefinitionen durchzuhecheln geht relativ ... nicht immer trivial ist (es gibt in Forth nicht 'den Rückgabewert', ... was mich stark atten Makros in Lisp ...
    (de.sci.electronics)
  • Re: CASE...ENCASE Query...
    ... What does this have to do with a language being interpreted or compiled? ... with syntax errors as it executes the problem. ... languages that you thing compilers are slow? ... How would the interpreter known what's going to be run at load-time ...
    (comp.sys.acorn.programmer)
  • Re: C as a Platonic pathology
    ... being patronizking towards you, I'd suggest you stop being patronizing ... because lexical analysis can be performed simply, in one pass, without ... examples I gave are said to be compilers, ... what constitutes a compiler vs an interpreter. ...
    (comp.lang.c)
  • Re: Minimal Forth
    ... Play around with the search order, ... Cross compilers typically do things to the search order, ... patching the interpreter, which ANS doesn't allow. ...
    (comp.lang.forth)