ANNOUNCEMENT: An interpreter construction tool

"Jørgen" Steensgaard <jsm@it.dtu.dk>
16 Dec 1997 11:24:17 -0500

          From comp.compilers

Related articles
ANNOUNCEMENT: An interpreter construction tool jsm@it.dtu.dk (JørgenSteensgaard) (1997-12-16)
| List of all articles for this month |
From: "Jørgen" Steensgaard <jsm@it.dtu.dk>
Newsgroups: comp.compilers
Date: 16 Dec 1997 11:24:17 -0500
Organization: The Technical University of Denmark
Keywords: interpreter, tools, available

The first release of the ULC-system to build interpreters is now
avaliable at


ftp://ftp.it.dtu.dk/pub/jsm/ulc-0.10-{platform}.tgz


where {platform} may be


pc.linux
sun4.Sun414
sun4.SunOS
mips.ultrix
alpha.DigitalUNIX


The system has been developed and tested for the pc.linux platform.
It should be considered a beta release. Testing for the other
platforms has been minimal. Essential parts of the system are
distributed in the form of a library only.


Two interpreters with complete sources are included with the
distribution for illustration. Feedback will be most welcome.


Title: ULC


Version: 0.10


Entered-date:


Description: ULC: Uniform Languages of Composition


The ULC system is a tool to build interpreters for a
special (rich) family of languages. Each language
will be strongly typed, possibly polymorphic, and may
support infix operators that can be overloaded.
End-users only see types in error messages and in
descriptions of syntax, since type information is
inferred based on use, the descriptions of syntax and
constants (e.g. some languages will allow a variable
to be allocated, but must insist on inferring its type
from the way it is used.)


The semantics of commands constitute separately
compiled components, that share several aspects
with classes in object-oriented languages, but with
additions to support `templates', `higher-order classes',
`multiple views', `iterators' and more.


Incremental development of interpreters is emphasised.
Adding one new form of command requires addition of
its syntax to a description file, automatic generation
of a semantics outline, manual completion of the
semantics and recompilation.


Semantics are subroutines in the language accepted by
the GNU C compiler, and depend on the implemented
extensions in important ways. A command for an
interpreter will express composition of components,
and the interpreter will be able to translate the
command to a C main program that can be linked with
the semantics library to yield a stand-alone program.


The package contains an example interpreter with
command forms that can be used to express a
tcp-server, starting a child process, pipe
manipulations and threading -- all with complete
implementation details.


Keywords: Interpreters, component composition, polymorphism.


Author: Joergen Steensgaard-Madsen (jsm@it.dtu.dk)


Maintained-by: author


Primary-site: ftp://ftp.it.dtu.dk/pub/jsm


Alternate-site: (none)


Original-site: ftp://ftp.it.dtu.dk/pub/jsm


Platforms: pc.linux sun4.Sun414 sun4.SunOS mips.ultrix
alpha.DigitalUNIX




Copying-policy: Rights of unmodified package distribution and use of
the software are granted for free. All other rights
reserved.


--
=======================================================================
    Joergen Steensgaard-Madsen | Postal address:
    Phone: +45 45 25 37 32 |
    Fax: +45 45 93 00 74 | Dept. of Information Technology
    WWW: http://www.it.dtu.dk/~jsm | Technical University of Denmark
    email: jsm@it.dtu.dk | Building 344
    Office: Building 343, Room 117 | DK-2800 Lyngby
--


Post a followup to this message

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