[plt-scheme] A first metacircular evaluator
And if you want to go back even further to pre-Scheme days, there's John McCarthy's paper:
http://www-formal.stanford.edu/jmc/recursive/recursive.html
Paul Graham has written a commentary article on it, with a code translation to more modern lisp:
http://www.paulgraham.com/rootsoflisp.html
http://lib.store.yahoo.net/lib/paulgraham/jmc.lisp
Mike
Stephen De Gabrielle wrote:
> Here,
>
> The Art of the Interpreter of, the Modularity Complex (Parts Zero, One, and Two)
> Guy Lewis Steele, Jr. and Gerald Jay Sussman
>
> http://library.readscheme.org/servlets/cite.ss?pattern=Ste-78a
> ps & pdf http://repository.readscheme.org/ftp/papers/ai-lab-pubs/AIM-453.pdf
>
>
> cheers,
>
> S>
>
> On Nov 11, 2007 12:35 AM, Matthias Felleisen <matthias at ccs.neu.edu> wrote:
>> Start with the Art of the Interpreter instead. It's somewhere on-line.
>>
>> Then move to PLAI. -- Matthias
>>
>>
>>
>> On Nov 10, 2007, at 5:34 PM, Jens Axel Soegaard wrote:
>>
>>> Grant Rettke skrev:
>>>> I've yet to implement a metacircular evaluator for Scheme.
>>>> Seemingly there are two places where this problem is posed:
>>>> SICP: http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-26.html#
>>>> %_sec_4.1
>>>> TSPL: http://www.scheme.com/tspl3/examples.html#./examples:h7
>>>> Are there more?
>>> Are you kidding? It has been a favorite pasttime for Lisp and
>>> Scheme hackers at least since the reference manual of Lisp 1.5
>>> to write meta circular interpreters. The first page of the
>>> first chapter of "Lisp in Small Pieces" contains references
>>> to the first 26 interpreters.
>>>
>>>> With which one should I begin?
>>> SICP is a fine place to start.
>>>
>>>
>>> For a short meta circular interpreter see:
>>>
>>> http://scheme.dk/blog/archive/2006_12_01_archive.html
>>>
>>> --
>>> Jens Axel Søgaard
>>>
>>> _________________________________________________
>>> For list-related administrative tasks:
>>> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>> _________________________________________________
>> For list-related administrative tasks:
>> http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>>
>
>
>
>
> ------------------------------------------------------------------------
>
> _________________________________________________
> For list-related administrative tasks:
> http://list.cs.brown.edu/mailman/listinfo/plt-scheme