Related articles |
---|
ANNOUNCEMENT: An interpreter construction tool jsm@it.dtu.dk (JørgenSteensgaard) (1997-12-16) |
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
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.