Re: How to write a virtuel machine and simulator

whopkins@csd.uwm.edu (Alfred Einstead)
3 Dec 2003 20:42:07 -0500

          From comp.compilers

Related articles
How to write a virtuel machine and simulator azoulayi@yahoo.fr (2003-11-11)
Re: How to write a virtuel machine and simulator x@boog.co.uk (Peter Cooper) (2003-11-18)
Re: How to write a virtuel machine and simulator nick.roberts@acm.org (Nick Roberts) (2003-11-21)
Re: How to write a virtuel machine and simulator next54@hotmail.com (John Galt) (2003-11-21)
Re: How to write a virtuel machine and simulator sasulzer@seanet.com (Stephen Sulzer) (2003-12-03)
Re: How to write a virtuel machine and simulator whopkins@csd.uwm.edu (2003-12-03)
| List of all articles for this month |
From: whopkins@csd.uwm.edu (Alfred Einstead)
Newsgroups: comp.compilers
Date: 3 Dec 2003 20:42:07 -0500
Organization: http://groups.google.com
References: 03-11-049
Keywords: VM
Posted-Date: 03 Dec 2003 20:42:07 EST

azoulayi@yahoo.fr wrote:
> I want to write a simulator and a virtual machine.


It's best to derive its entire structure systematically from an
appropriate (recursive) mathematical definition of expression
evaluation.


The best-known example of this is the CAML machine. Specific
cases where this method has been employed can be found in:


(1) The RegEx archive
http://www.csd.uwm.edu/~whopkins/regex/index.html
Contains REX, a large functional superset of GREP containing all the
boolean primities; as well as software for DFA and NFA converters.


(There's a copy of these programs in the comp.compilers archive under
the regex directory).


The programs implement algebraic rules for regular expressions
to do their processing.


(2) The C-BC Programming language
http://www.csd.uwm.edu/~whopkins/cbc/index.html
A large functional superset of the BC language.


The architecture is systematically derived from a definition of
expression evaluation, described in detail in the implementation
notes.


(3) The SCD Machine
http://www.csd.uwm.edu/~whopkins/combo/index.html
An architecture for optimized combinator reduction. This is
rigorously derived from a definition of expression normal form; the
definition and derivation are spelled out in detail.


(4) The SEQCD Machine
http://www.csd.uwm.edu/~whopkins/seqcd/index.html
The underlying architecure of the JOLT language; a language that is
simultaneously functional and imperative.


This, too, is rigorously derived from a definition of expression
normal form. The derivation is spelled out in detail.


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.