A New Architecture for the Implementation of Scripting Languages
Adam Sah and Jon Blow
Computer Science Division
Electrical Engineering and Computer Sciences
University of California
Berkeley, CA 94720
{asah,blojo}@cs.Berkeley.EDU
Abstract
Nearly all scripting languages today are implemented as interpreters
written in C. We propose an alternate architecture where the language
is translated into the dynamic language Scheme [R4RS]. The plethora
of high quality, public domain Scheme implementations give the
developer a wide selection of interpreters, byte compilers, and
machine code compilers to use as targets for her VHLL.
Our VHLL, Rush, provides high-level features such as automatic type
conversion and production rules [SHH86][Ston93]. Performance
benchmarks show that our system runs with acceptable speed; in fact,
Rush programs run much more quickly than their equivalents in
languages such as Tcl and Perl4. Whereas those languages are coded in
C, Rush takes advantage of Scheme's existing high-level features,
saving de- velopment time. Since the features provided by Scheme are
among those most VHLLs share, we expect this approach to be widely
applicable.
Download the full text of this paper in
ASCII (51,747 bytes) and
POSTSCRIPT (99,273 bytes) form.
To Become a USENIX Member, please see our
Membership Information.