One more that is fun (and one I learned a lot from when I was in grad school in 
1966) is Niklaus Wirth's "Euler" paper, published in two parts in CACM Jan and 
Feb 1966.

This is "a generalization of Algol" via some ideas of van Wijngaarten and winds 
up with a very Lispish kind of language by virtue of consolidating and merging 
specific features of Algol into a more general much smaller kernel.

The fun of this paper is that Klaus presents a complete implementation that 
includes a simple byte-code interpreter.

This paper missed getting read enough historically (I think) because one large 
part of it is a precedence parsing scheme invented by Wirth to allow a 
mechanical transition between a BNF-like grammar and a parser. This part was 
not very effective and it was very complicated. 


So just ignore this. You can use a Meta II type parser (or some modern PEG 
parser like OMeta) to easily parse Euler directly into byte-codes. 


Everything else is really clear, including the use of the Dijkstra "display" 
technique for quick access to the static nesting of contexts used by Algol (and 
later by Scheme).

Cheers,

Alan




>________________________________
> From: Monty Zukowski <mo...@codetransform.com>
>To: Fundamentals of New Computing <fonc@vpri.org> 
>Sent: Tuesday, April 10, 2012 9:20 PM
>Subject: Re: [fonc] Kernel & Maru
> 
>Thank you everyone for the great references.  I've got some homework
>to do now...
>
>Monty
>
>On Tue, Apr 10, 2012 at 2:54 PM, Ian Piumarta <piuma...@speakeasy.net> wrote:
>> Extending Alan's comments...
>>
>> A small, well explained, and easily understandable example of an iterative 
>> implementation of a recursive language (Scheme) can be found in R. Kent 
>> Dybvig's Ph.D. thesis.
>>
>> http://www.cs.unm.edu/~williams/cs491/three-imp.pdf
>>
>> Regards,
>> Ian
>>
>> _______________________________________________
>> fonc mailing list
>> fonc@vpri.org
>> http://vpri.org/mailman/listinfo/fonc
>_______________________________________________
>fonc mailing list
>fonc@vpri.org
>http://vpri.org/mailman/listinfo/fonc
>
>
>
_______________________________________________
fonc mailing list
fonc@vpri.org
http://vpri.org/mailman/listinfo/fonc

Reply via email to