dependency is allowed. Integrated automatic error recovery.
Integration with Elegant programming language for back-ends. Garbage
collection.
Distribution
Complete source code available, see WEB.
Platform
SunOS4, SunOS5, HP-UX-10, IRIX, Linux, Windows (cross generation)
Tool
Elegant programming language
Elegant
Features
Subtyping (linear inheritance), polymorphic types and functions.
Several different lazy types and function (lambda) expressions.
Overloading and automatic and user definable coercions. Pattern
matching (= sub-type analysis) and list comprehensions. Garbage
collection and self generating, i.e. written in Elegant.
Distribution
Complete source code available, see WEB.
Platform
SunOS4, SunOS5, HP-UX-10, IRIX, Linux, Windows (cross generation)
Tool
Scanner Generator
ScanGen
Features
Very efficient. Provides source position (file, line, column) for
every token. Seemlessly integrated with Elegant. Made with Elegant
and itself.
Distribution
Complete source code available, see WEB.
Platform
SunOS4, SunOS5, HP-UX-10, IRIX, Linux, Windows (cross generation)
Tool
Bnf to attribute grammar compiler
Bnf
Features
Compiles Bnf onto attribute grammars and scanner specifications.
Made with Elegant.
Distribution
Complete source code available, see WEB.
Platform
SunOS4, SunOS5, HP-UX-10, IRIX, Linux, Windows (cross generation)
Tool
Postscript syntax diagram generator
Diagrams
Features
Compiler Bnf onto postscript. Offers many ways to control the
lay-out. Generates printable or encapsulated postscript. Made with
Elegant.
Distribution
Complete source code available, see WEB.
Platform
SunOS4, SunOS5, HP-UX-10, IRIX, Linux, Windows (cross generation)
back to contents
--------------------------------
Technical University of Denmark
--------------------------------
Address
Technical University of Denmark
Building 322, IMM
Richard Petersens Plads
DK-2800 Lyngby
DENMARK
Web
http://www.imm.dtu.dk/~jsm/
Contact
J. Steensgaard-Madsen
Phone (+45) 4525 3732 Fax (+45) 4593 0074
E-Mail jsm@imm.dtu.dk
Tool
Interpreter construction
ULC -- Uniform Languages of Composition
Features
Fast, incremental construction of interpreters for polymorphic,
statically typed (scripting) languages. The ease comes at the price
of adhering to fixed syntactic principles. New semantic routines can
be added incrementally. Commands can be compiled and linked with the
semantic libraries (experimental).
The distribution of ULC contains various contributions to languages,
including a language HTEL that is essentially an HTML-algebra (i.e.
HTML+operations+variables).
Distribution
Source code under the GNU Lesser General Public License.
http://www.imm.dtu.dk/~jsm/sys/ulcsys.tgz
Platform
Linux / GNU C
Windows / GNU C (prerelease versions succesfully tested)
GNU C extensions are essential.
back to contents
--------------------------------
UniBw Muenchen
--------------------------------
Address
Dr. Lothar Schmitz
UniBw Muenchen
Fakultaet fuer Informatik
Institut fuer Softwaretechnologie
D-85577 Neubiberg
Web
http://inf2-www.informatik.unibw-muenchen.de/schmitz/sic.html
http://inf2-www.informatik.unibw-muenchen.de/schmitz/jaccie/jaccie.htm
Contact
Lothar Schmitz
Phone +49 89 6004 2140 Fax +49 8106 8467
E-Mail lothar@informatik.unibw-muenchen.de
Tool
Visual Compiler-Compiler for Teaching Purposes.
SIC (Smalltalk-based Interactive Compiler-compiler)
Features
Scanner-Generator, Parser-Generators (LL- and LR-styles),
Evaluator-Generators (including left-attributed and OAG). Browsers,
specialized editors, debuggers for all phases allowing processes to
be watched and controlled interactively. Information windows:
first/follow sets, parsing automata, etc.
Distribution
Smalltalk Sourcecode and Handbook (English): See WEB
Platform
Most Unix-Dialects, MS Windows (3.x, 95, NT), Mac. Requires
VisualWorks (2.0 or later) from ObjectShare (formerly ParcPlace).
Tool
Visual Compiler-Compiler for Teaching Purposes.
Jaccie (Java-based compiler-compiler in an interactive environment)
Features
Produces Java-Sources "at a mouse-click". Scanner-Generator (with
user-defined Java actions), Parser-Generators (LL and LR styles).
Browsers, specialized editors, debuggers for all phases allowing
processes to be watched and controlled interactively. Information
windows: first/follow sets, parsing automata, etc.
Distribution
Java Sourcecode and Handbook (German): See WEB
Platform
Requires Java (JDK 1.1.3 or later). Jaccie has been tested on Sun
SPARC (Solaris 2.5) and Intel Pentium (MS Windows 95 and NT)
machines.
back to contents
--------------------------------
Universitaet Paderborn
--------------------------------
Address
Software Engineering Group
Department of Electrical and Computer Engineering
University of Boulder
Boulder, CO 80309-0425
USA
Prof. Dr. U. Kastens
Universitt Paderborn, FB17
Frstenallee 11
33102 Paderborn
GERMANY
Dr. A. M. Sloane
Department of Computer Science
James Cook University
Townsville, QLD, 4811
AUSTRALIA
Web
http://www.cs.colorado.edu/~eliuser
http://www.uni-paderborn.de/project-hp/eli.html
http://www.cs.jcu.edu.au/~tony/eli.html
Contact
Matthias Jung
Phone +49 5251 60-6663 Fax +49 5251 60-6697
E-Mail mjung@uni-paderborn.de
Tool
Domain-Specific Programming Environment for the Automatic Generation of
Complete Language Implementations.
Eli
Features
o Problem-oriented instead of tool-oriented
o Broad spectrum of tasks and solutions
o Little prior knowledge required
o Integrated system, with flexible overriding
o State-of-the art components
o Selective regeneration
Distribution
Complete Sourcecode (ANSI C) available from ftp-servers. See WEB
Platform Most Unix-Dialects. Eli has been tested on:
Sun workstation running SunOS 4.1.x using Sun C compiler
Sun workstation (Solaris) running SunOS 5.[45] using cc SC3.01
Sun workstation (Solaris) running SunOS 5.[45] using gcc 2.7.2
HP 9000/715 running HP-UX Version A, Release A.09.05 using cc
SGI, IP20 running IRIX Release 5.3 using cc
PC-i586 running Linux 1.3.59 using gcc version 2.7.2
DECstation5000 running OSF/1 V3.2 alpha using cc
back to contents
--------------------------------
University of Paisley
--------------------------------
Address
Malcolm Crowe
Computing and Information Systems
University of Paisley
Paisley PA1 2BE
United Kingdom
Web
http://cis.paisley.ac.uk/crow-ci0
Contact
Malcolm Crowe
Phone 0044 141 848 3300 Fax 0044 141 848 3542
E-Mail malcolm.crowe@paisley.ac.uk
Tool
Lexer generator
lg
Features
Generates C# source (used with library supplied)
Input script similar to lex
Object-oriented: you can subclass the TOKEN class
Automatic constructors for your subclasses
Supports Unicode and various file encodings
Distribution
C# source of tools and library, documentation (Word), and samples
Platform
Windows .NET platform (currently Beta 1)
Tool
LALR Parser generator
pg
Features
Generates C# source (used with library supplied)
Input script similar to yacc
Object-oriented: you can subclass the SYMBOL class
Automatic constructors for your subclasses
Identifier symbols can be used as alternative to $1 etc
Distribution
C# source of tools and library, documentation (Word), and samples
Platform
Windows .NET platform (currently Beta 1)
back to contents
--------------------------------
ENTRY FORM
--------------------------------
Address
Web
Contact
Phone Fax
E-Mail
Tool
Features
Distribution
Platform
Specification
Tool
Distribution
Component
Features
Distribution
Platform
Related Services
-------------------------------------------------------
GUIDELINES for using the entry form: Please replace the text in angle brackets
(<>) with the relevant information. The form provides four topics: TOOL,
SPECIFICATION, COMPONENT and RELATED SERVICES. There has to be at least one of
these topics, but at most one RELATED SERVICES:
* TOOL refers to self standing software products;
* SPECIFICATION refers to specifications of formal languages accepted by
any of the tools;
* COMPONENT refers to software components which can be integrated with
software products of potential customers.
The topics are described by several subtopics. Subtopics may be omitted if the
information is available from the context. Subtopics may be answered
with up to five lines of free form ASCII text. Lines shall not be more than 70
characters long, they should be indented properly. All other subtopics shall
be described with only a few words. "Feature" descriptions should cover input,
output and implementation languages.
back to contents
------------------------------------------------------------------------
END OF CATALOG 08-2001
------------------------------------------------------------------------
--
Send compilers articles to compilers@iecc.com, meta-mail to
compilers-request@iecc.com. Archives at http://compilers.iecc.com