Subject: Catalog of Compiler Construction Products - Thirteenth Issue
Newsgroups: comp.compilers,news.answers,comp.answers
Archive-name: compilers/construction-tools
Followup-To: poster


Catalog of Compiler Construction Products 01-98

This posting may be reproduced in any form without further permission, as long as it is left unchanged. January 1998, Olaf Langmack.

THIRTEENTH ISSUE

This catalog lists products and services for the construction of programming language compilers and related programming tools. It covers compiler generators, corresponding grammars, reusable parts of compilers, reusable parts of other programming tools and related consulting or programming services.

The catalog provides only technical information. Potential customers have to inquire at the given address about prices and licensing policies. (For a catalog of free software see the "Catalog of Free Compilers and Interpreters".)

All the listed products are available now in a form suitable for production use. They shall exhibit professional quality and have long term support.

The entries are submitted voluntarily. Apart from tracking complaints about inappropriate entries no quality control of the entries is applied. Therefore I do not assume any liability for listed entries.

The catalog is posted monthly on comp.compilers. Updates are incorporated at least twice a year. If you want to submit an update send the filled form to langmack@feinarbeit.de. Updates that do not make use of the form or do not comply with the guidelines given at the end will not be considered. Entries have to be provided as ASCII text files. If they shall be incorporated into the respective Web pages, they have to be provided as HTML files as well.


Table of Contents


Adrian Johnstone

ADDRESS

Dr Adrian Johnstone
Department of Computer Science
Royal Holloway, University of London
Egham
Surrey
United Kingdom

CONTACT

Dr Adrian Johnstone
Phone +44 (0)1784 443425 Fax +44 (0)1784 443420
E-Mail adrian@dcs.rhbnc.ac.uk

TOOL

Recursive Descent Compiler generator
RDP

Features

RDP takes an attributed very-extended BNF and analyses it for LL(1) conformance providing detailed error and warning messages. It outputs ANSI C and links against a library of general purpose routines that provide set handling, command line switch processing, symbol table management and more. RDP is very easy to use.

Distribution

All source in ANSI C, compiler-compiler source in BNF, various examples. Complete distributions available from ftp://ftp.dcs.rhbnc.ac.uk/pub/rdp.

Platform

MS-DOS / Borland-C
MS-DOS / Microsoft C
Many flavours of Unix with gcc and vendors' compilers
Macintosh / Think C
Macintosh / metroWorks C
Acorn Archimedes
Amiga


Archelon

ADDRESS

Archelon Inc.
460 Forestlawn Road
Waterloo, Ontario
Canada N2K 2J6

WEB

http://www.archelon.com

CONTACT

Preston Gurd
Phone (519)746-7925 Fax (519)746-7925
E-Mail rpgurd@archelon.com

TOOL

C compiler and related tools
User Retargetable Development Tools II (URDT)

Features

The URDT set includes an ANSI C compiler, compactor, assembler, linker, and related tools. It allows you to "roll your own" C compiler and related tools. You do retargets by writing text files, which are read in by these programs when they run. Please see our web page at "http://www.archelon.com" for details.

Distribution and Platform

Binary versions available for DOS (32 bit), SunOs 4.x.x, Solaris 2.x, HP-UX. Source licences available, as well.

COMPONENT

C compiler
MCC ANSI C compiler

Features

You target MCC to a specific machine by writing a text file which includes a machine description and code tables. You do not need to know compiler internals. The compiler includes output macros which allow you to output code for any assembler, as well as our own. Can handle a wide variety of machines, including DSPs and microprammable machines.

Distribution and Platform

Part of URDT (see above).

COMPONENT

Compactor/Scheduler/Optimizing Assembler
MCPACK Compactor/Scheduler

Features

MCPACK gives you a way to implement low level translator tools. It reads a control file, which you must write. The control file describes the layout of instructions and provides procedures for translating input statements into instructions. You may provide rules for scheduling and compaction in the file.

Distribution and Platform

Part of URDT (see above).

COMPONENT

Assembler
MCASR assembler

Features

MCASR is a "bit-stuffing" assembler, driven from a user written text file which describes the fields of the instructions. An instruction word can be up to 256 bits wide and may contain multiple relocatable fields. Such a field may be set with only a subset of the bits of the full address.

Distribution and Platform

Part of URDT (see above).

COMPONENT

Linker
MCLINK linker

Features

MCLINK supports up to eight independent overlapping memory address spaces, so it can, for instance, easily support DSP architectures with X and Y memories.

Distribution and Platform

Part of URDT (see above).

RELATED SERVICES

Archelon provides consulting services for the development of compilers and related tools. In particular, we provide a retargeting service for our User Regargetable Development Tools.


CoCoLab

ADDRESS

CoCoLab
Dr.-Ing. Josef Grosch
Hagsfelder Allee 16
D-76131 Karlsruhe
Germany

CONTACT

Josef Grosch
Phone +49-721-697061 Fax +49-721-661966
E-Mail grosch@cocolab.sub.com

TOOL

Toolbox for compiler construction
Cocktail

Features

Distribution

Platform

TOOL

Scanner generator
Rex

Features

Distribution

and

Platform

like Cocktail

TOOL

Parser generator
Lark

Features

Distribution

and

Platform

like Cocktail

TOOL

Parser generator
Ell

Features

Distribution

and

Platform

like Cocktail

TOOL

Generator for abstract syntax trees
Ast

Features

Distribution

and

Platform

like Cocktail

TOOL

Generator for attribute evaluators
Ag

Features

Distribution

and

Platform

like Cocktail

TOOL

Transformation of attributed trees
Puma

Features

Distribution

and

Platform

like Cocktail

TOOL

Library of reusable modules
Reuse

Features

Distribution

and

Platform

like Cocktail

TOOL

Preprocessors
Rpp, Lpp, L2r, Y2l, R2l

Features

Distribution

and

Platform

like Cocktail

TOOL

Modula-2 -> C translator
Mtc

Features

Distribution

and

Platform

like Cocktail

GRAMMAR

Scanner and parser description
COBOL 85 (ANSI X3.23 - 1985)

Tool

Rex and Lark

Distribution

like Cocktail

GRAMMAR

Scanner and parser description
COBOL union (ANSI'74 Standard, ANSI'85 Standard, IBM OS/VS COBOL, IBM VS COBOL II, IBM SAA COBOL/370, IBM DOSVS COBOL, X/Open, and Micro Focus COBOL)

Tool

Rex and Lark

Distribution

like Cocktail

COMPONENT

Parser and syntax tree construction
COBOL union (ANSI'74 Standard, ANSI'85 Standard, IBM OS/VS COBOL, IBM VS COBOL II, IBM SAA COBOL/370, IBM DOSVS COBOL, X/Open,and Micro Focus COBOL)

Features

Distribution

and

Platform

like Cocktail

COMPONENT

Parser and syntax tree construction
PL/I (DIN 66 255, IBM OS PL/I)

Features

Distribution

and

Platform

like Cocktail

COMPONENT

Preprocessor
PL/I preprocessor (IBM OS PL/I)

Features

Distribution

and

Platform

like Cocktail

GRAMMAR

Scanner and parser description
FORTRAN-77 (ANSI X3.9 - 1978)

Tool

Rex and Lark

Distribution

like Cocktail

GRAMMAR

Scanner and parser description
Fortran-90 (ISO/IEC 1539: 1991 (E), ANSI X3.198-1992)

Tool

Rex and Lark

Distribution

like Cocktail

RELATED SERVICES

Consulting, training, maintenance, development, research, projects in the areas of compiler construction, programming languages, software reengineering, source to source translation, dialect conversion, programming convention checkers, etc.


Compiler Resources

ADDRESS

Compiler Resources, Inc.
3 Proctor Street
Hopkinton, MA 01748-1158
USA

CONTACT

Barbara Zino
Phone 1 (508) 435-5016 Fax 1 (508) 435-4847
E-Mail compres@world.std.com

TOOL

OO Lexer and Parser Generator for C++ and Class Library
Yacc++ and the Language Objects Library

Features

Outputs C++ classes of lexers and parsers and optionally for tokens, non-terminals, and rules as specified in the grammar. Regular expressions integrated with BNF, LALR & LR, grammar inheritance. Library support for various AST, input, error, and symbol table classes. Email for complete online information.

Distribution

The Yacc++ generators are shipped as executables (sources available) and the Language Objects Library is shipped as C++ source code and pre-compiled for supported targets. Numerous examples and makefiles are included. Printed manuals include Installation, Tutorial, and Reference Guides.

Platform

DEC Alpha Unix DEC C++
DOS/Windows Borland, Microsoft, and Watcom C++
HP-UX HP C++
OS/2 Borland and IBM C++
SGI IRIX SGI (Edison Design Group) C++
Solaris SPARCCompiler C++
SunOS Sun and GNU C++
Windows NT/95 Microsoft Visual C++
Portable -- other platforms by cross-compiling.


Edison Design Group

ADDRESS

Edison Design Group
4 Norman Road
Upper Montclair, NJ 07043
USA

WEB

http://www.edg.com

CONTACT

Steve Adamczyk
Phone +1 973 744 2620 Fax +1 973 744 8949
E-Mail jsa@edg.com

TOOL

Compiler Front End
EDG C++ Front End

Features

Does full syntax and semantic analysis on C++ source code, producing an AST-like internal representation. Accepts most of the modern features of the language, e.g., templates, exceptions, RTTI, new-style casts, array new/delete, namespaces, member templates. Also accepts ANSI/ISO C, several older dialects of both C and C++, and Microsoft C and C++ extensions. This is a commercial product.

Distribution

Source code and internal documentation

Platform

Portable; has been used on all major Unix platforms, plus Windows NT/95.


GrammaTech, Inc.

ADDRESS

GrammaTech, Inc.
One Hopkins Place
Ithaca, NY 14850
USA

CONTACT

Jeff Burns
Phone 607-273-7340 Fax 607-273-8752
E-Mail jeff@grammatech.com

TOOL

CASE tool generator
Synthesizer Generator

Features

CASE tool generator for implementing language-sensitive editors and user interfaces, including program editors, document preparation systems, and program verification tools. Uses attribute grammars to compute derived information about the object being edited and incrementally recomputes attribute values after an editing change.

Distribution

object

Platform

SunOS, Solaris, HP-UX, IBM AIX, and Digital UNIX

RELATED SERVICES

The Synthesizer Generator may be licensed directly from GrammaTech or GrammaTech can perform customizations or create custom implementations.


Langmack & Partner

ADDRESS

Langmack & Partner
Gitschiner Strasse 91 - 2. Hof
D-10969 Berlin
Germany

CONTACT

Olaf Langmack
Phone +49-30-616794-61 Fax +49-30-616794-67
E-Mail langmack@feinarbeit.de

COMPONENT

Parser and syntax tree construction
Eiffel-3 (ETL, 2nd printing)

Features

Distribution

Platform

COMPONENT

Parser and syntax tree construction
Cobol 74

Features

Distribution

Platform

COMPONENT

Parser and syntax tree construction
IBM High Level Assembler, Release 2

Features

Distribution

Platform

COMPONENT

Parser and syntax tree construction
COLUMBUS Assembler

Features

Distribution

Platform

TOOL

Transformation of attributed trees
Fine Eiffel, Fine ISO-C, Fine Cobol74

Features

Distribution

Platform

RELATED SERVICES

We provide consultancy and custom development related to program development tools and compilers. Recent customers include Softlab (Munich, Atlanta), Art+Com (Berlin) and BMW (Munich).


MageLang Institute

ADDRESS

MageLang Institute
1535 Francisco Street Suite 9
San Francisco, California 94123
USA

CONTACT

Dr. Terence Parr
Phone 415 346 1070
E-Mail parrt@MageLang.com

TOOL

Parser generator
ANTLR 1.33

Features

ANTLR constructs human-readable recursive-descent parsers in C or C++ from predicated-LL(k>1) grammars. Many context-sensitive languages and languages requiring infinite lookahead are recognizable with ANTLR parsers. Can automatically build ASTs. Has new and powerful error recovery mechanism.

Distribution

Complete C source code, totally public domain. Free at site ftp://ftp.parr-research.com/pub/pccts/.

Platform

Any platform that compiles C or C++. Specific Mac port available as well as binaries/makefiles for PC compilers.

TOOL

Parser generator
ANTLR 2.00

Features

Complete rewrite in Java generating Java and soon other languages. Meta-language has been redesigned. Will incorporate SORCERER tree rewrite rules also by mid May 1997.

Distribution

Complete Java source code, totally public domain. Free at site http://java.magelang.com/antlr/download.html.

Platform

Any platform that runs Java.

TOOL

AST transformer / walker (source-to-source translation)
SORCERER

Features

A SORCERER grammar describes AST content and structure. You may annotate the grammar with actions to effect a translation or manipulate the tree itself. Generates recursive-descent tree walkers in C or C++ (soon Java). Same flavor/syntax as ANTLR. Not tied to a parser generator or any other tool.

Distribution

Complete C source code, totally public domain. Free at site ftp://ftp.parr-research.com/pub/pccts/sorcerer/.

Platform

Any platform that compiles C or C++.

RELATED SERVICES

MageLang Institute continues to enhance and maintain PCCTS. We support the tools via maintenance agreements, short term contracts, and collaborations. We also develop custom translators and provide technical assistance for language design and implementation development.


Mastersys

MUSKOX v4.0 from MASTERSYS

ADDRESS
  MASTERSYS
  3915 ARBOLADO DRIVE
  WALNUT CREEK, CA 94598,
  USA
WEB
  http://www.mastersys.com
CONTACT
  Boris Burshteyn
  Phone 1 (510) 944 0701, Fax 1 (510) 944 5928
  E-Mail master@mastersys.com

TOOL
  C++ and Java Parser Generator
    MUSKOX v4.0
  Features
    -Annotates C++ & Java classes and interfaces with EBNF LR(K) grammars 
    -Grammar inheritance and redefinition of rules.
    -Multiple parsers, recording/replay of trace logs, HTML pretty-printing.
    -Default and user-defined lexer and error processing.
    -Syntactic lookaheads, semantic predicates, syntax trees.
  Distribution
    -Parser Generator executable. 
    -Runtime Framework C++ & Java source.
    -Downloadable from the web site.
    -Documentation in Postscript and Adobe PDF formats.
  Platform
    -PC Windows 95 & NT.
    -Sun Sparc Solaris 2.4 and higher.
    -Pyramid and Siemens/Nixdorff RELIANT/UNIX, DC/OSx and 
     Sinix (please contact by email).


Metamata

Metamata
ADDRESS
  Sriram Sankar
  Metamata, Inc.
  2140 Peralta Blvd., Suite 213B
  Fremont, California - 94536
  U.S.A.
WEB 
  http://www.suntest.com/JavaCC
CONTACT
  Sriram Sankar
  Phone 1(510)796-0915 Fax 1(510)796-0916
  E-Mail sriram@metamata.com

TOOL
  Parser, Scanner, and Tree Builder Generator
    JavaCompilerCompiler (JavaCC)
  Features
    JavaCC is a top-down (LL(k)) parser generator for Java with 
    integrated features for generating scanners and tree builders.  
    JavaCC offers EBNF constructs, syntactic and semantic lookahead, 
    lexical states and actions, case-insensitive scanning, and the 
    ability to store white space tokens for further processing.
  Distribution
    Byte code files freely downloadable from our web site
  Platform
    Any Java compliant platform 1.0.2 or above

GRAMMAR
  LL(k)
    Java, C, C++, HTML, VHDL
  Tool
    JavaCC
  Distribution
    Freely downloadable with JavaCC distribution

RELATED SERVICES
  Metamata Inc. offers consulting services in the area of parser
  technology and other related areas in Java.


Nullstone

ADDRESS

Nullstone Corporation
48531 Warm Springs Blvd, Suite 404
Fremont, CA 94539
USA

WEB

http://www.nullstone.com

CONTACT

Christopher Glaeser
Phone (800) 995-2841 International +1 (510) 490-6222
Fax +1 (510) 490-9333
E-Mail cdg@nullstone.com

TOOL

Compiler Performance Analysis Tool
NULLSTONE

Features

The NULLSTONE Automated Compiler Performance Analysis

Tool

(tm) uses a QA approach of test coverage and isolation to measure an optimizer. The NULLSTONE methodology increases compiler performance by: Language ANSI C

Distribution

Complete sources.

Platform

UNIX, WinNT, Win3.1, OS/2, DOS, MacOS. SPARC, PowerPC, Pentium, x86, MIPS, 68K, and others.


Siber Systems

ADDRESS

Siber Systems
2902 Rock Manor Ct
Herndon, VA 20171
USA

WEB

http://www.siber.com/sct

CONTACT

Vadim Maslov
Phone: +1-703-716-7770
E-Mail vadik@siber.com

TOOL

Cobol compiler/reengineering toolkit
CobolTransformer

Features

(1) Well-tested Cobol Parser that parses 10 most popular Cobol dialects. (2) Tree-based Internal Representation for Cobol programs and C++ library used to browse and trasform the trees. (3) PrettyPrinter libraru that transforms tree-based Internal Representation back into indented human-readable Cobol program.

Distribution

compressed encrypted TAR/ZIP file by e-mail

Platform

comes in source, tested on WIN32 (Windows 95, Windows NT), Linux, SunOS, Solaris.

GRAMMAR

LALR(1) with backtracking
Cobol, several dialects: ANSI-74, ANSI-85, OSVS, VS COBOL II, SAA, MicroFocus, RyanMcFarland, RyanMcFarland-85, DOSVS

Tool

CobolTransformer

Distribution

compressed encrypted TAR/ZIP file by e-mail

RELATED SERVICES

Consulting for projects based on CobolTransformer


OCCL

ADDRESS

Oxford and Cambridge Compilers Limited
55 Brampton Rd
Cambridge CB1 3HJ
UK

CONTACT

Dave Lloyd
Phone (+44) 1223 572074
E-Mail dave@occl-cam.demon.co.uk

RELATED SERVICES

OCCL produces commercial compilers for Algol 68 and Fortran 90 on a variety of platforms. This technology is available for bespoke applications such as custom languages or tools. OCCL also provides consultancy and support for other compiler toolsets such as GNU or PCCTS.


Universitaet Paderborn

ADDRESS

Software Engineering Group
Department of Electrical and Computer Engineering
University of Boulder
Boulder, CO 80309-0425
USA
Prof. Dr. U. Kastens
Universität Paderborn, FB17
Fürstenallee 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

Problem-oriented instead of tool-oriented - Broad spectrum of tasks and solutions - Little prior knowledge required - Integrated system, with flexible overriding - State-of-the art components - 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


ENTRY FORM

ADDRESS

<provider>
<building,department>
<street>
<state,city>
<country>

WEB

<URL>

CONTACT

<name>
Phone <number> Fax <number>
E-Mail <address>

TOOL

<type>
<name>

Features

<text>

Distribution

<source, object, list of media>

Platform

<list of operating system and hardware>

GRAMMAR

<type>
<programming language, version, standard>

Tool

<name>

Distribution

<list of media>

COMPONENT

<type>
<programming language, version, standard>

Features

<text>

Distribution

<source, object, list of media>

Platform

<list of operating system and hardware>

RELATED SERVICES

<text>

GUIDELINES for using the entry form: Please replace the text in angle brackets (<>) with the relevant information. The form provides four topics: TOOL, GRAMMAR, COMPONENT, and RELATED SERVICES. There has to be at least one of these topics, but at most one RELATED SERVICES. The topics are described by several subtopics. Subtopics may be omitted if the information is available from the context. Subtopics <text> 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.


END OF CATALOG 01-98