Category : UNIX Files
Archive   : FREECO.ZIP
Filename : FREEC.TXT

Output of file : FREEC.TXT contained in archive : FREECO.ZIP

From: [email protected] (David Muir Sharnoff)
Newsgroups: comp.lang.misc,comp.sources.d,comp.archives.admin,news.answers
Subject: Catalog of compilers, interpreters, and other language tools [p1of3]
Followup-To: comp.archives.admin
Date: 21 Feb 1993 02:12:12 GMT
Organization: University of California, Berkeley
Lines: 1138
Approved: [email protected]
Distribution: world
Expires: Sun, 19 Jun 1993 01:26:32 GMT
Reply-To: [email protected]
Summary: montly? posting of free language tools that include source code
Originator: [email protected]
Xref: comp.lang.misc:13119 comp.sources.d:9038 comp.archives.admin:968 news.answers:6153

Archive-name: free-compilers/part1

Version: 3.1

Catalog of Free Compilers and Interpreters.

This documents attempts to catalog freely availiable compilers,
interpretors, libraries, and language tools. This is still a draft
document: it has errors, it is not complete, and I might re-organize
it. It is my intention that it be aimed at developers rather than
researchers. I am much more intersted in production quality systems.

There is some overlap of coverage between this document and other
lists and catalogs. See the references section for a list...

To be on this list a package must be free and have source code
included. If there are any packages on this list that do not have
source code included or are not free, then I would appreciate it if it
is brought to my attention so that I may correct the error.

There are many fields filled in with a question mark (?). If you have
information which would allow me to remove question marks, please
send it to me. The only field which I do not expect to be completely
obvious is the "parts" field because I wish to distinguish between
compilers, translators, and interpretors. To qualify as a compiler
as I'm using the term, it must compile to a machine-readable format
no higher-level than assembly. Why? Just because. If you've
got a better idea, send it in.

I would like to post this once a month, but reality intrudes. This
document may be ftp'ed from Be nice to my SLIP

Unfortunantly, I lost some email in a disk crash -- if you sent me
something and I didn't incorporate the information, please send
it again. Thanks.

David Muir Sharnoff , 1993/02/13

------------------------- selected major changes ------------------------------

Selected changes section

language package
-------- -------
new listings:
ADL Adventure Definition Language [2]
asm6809 usim
? attribute grammar ? Alpha - A Compiler Generator
BCPL 2 incomplete entries
BNF ? Eli Compiler Construction System
C++ LEDA 3.0 library of data types and algorithms.
Common Lisp Cartier's Contribs 1.2 (Macintosh only)
Common Lisp Memoization
Common Lisp GINA (Generic Interactive Application)
Common Lisp QT-OBJECTS (MCL)
LIFE (Logic, Inheritance, Functions, Equations)
Lisp RefLisp [1]
LOOPN LOOPN (Can anybody tell me what a petri-net is?) Extended Tiny Extended Tiny
Forth F68K
Fortran, C cfortran.h
Haskell The Glasgow Haskell Compiler (GHC)
MeldC MeldC 2.0
Prolog Aditi (database interface)
Prolog CORAL (database interface)
RLaB language RLaB
Scheme Hobbit Scheme->C compiler
Scheme PSI
Smalltalk Mei 0.50
UNITY maspar_unity
Verilog XNF to Verilog Translator
BURS? Iburg
new versions:
C GCT 1.4
Common Lisp CMU Common Lisp [1]
Common Lisp WCL 2.14 [1]
Logo Berkeley Logo 2.8 - alpha
Logo MswLogo 3.X
python python 0.9.8
Scheme Elk (Extension Language Kit) 2.0
Scheme scm 4a14
Standard ML SML/NJ 0.93 (about time I had it listed!)
Lisp XLISP [1]
Common Lisp AKCL [1]
Common Lisp KCL [1]
Common Lisp CLISP [1]
Modula-2* no source

[1] New info from the Lisp FAQ, written by Mark Kantrowitz and Barry Margolin
[2] New info from the Language List by Bill Kinnersley


----------------------- selected blanks (you fill in) -------------------------

'Tim Budd's C++ implementation of Kamin's interpreters' -- where is it?
byacc - what is the master archive, how do you reach Robert Corbett?
ATS (Attribute Translation System) - where do you get it?
franz lisp (free version) - where do you get it?

------------------------------- tools -----------------------------------------

language: ABC
package: ABC
version: 1.04.01
parts: ?
author: Leo Geurts, Lambert Meertens,
Steven Pemberton
how to get: ftp programming/languages/abc/* from or
description: ABC is an imperative language embedded in its own
environment. It is interactive, structured,
high-level, very easy to learn, and easy to use.
It is suitable for general everyday programming,
such as you would use BASIC, Pascal, or AWK for.
It is not a systems-programming language. It is an
excellent teaching language, and because it is
interactive, excellent for prototyping. ABC programs
are typically very compact, around a quarter to a
fifth the size of the equivalent Pascal or C program.
However, this is not at the cost of readability,
on the contrary in fact.
references: "The ABC Programmer's Handbook" by Leo Geurts,
Lambert Meertens and Steven Pemberton, published by
Prentice-Hall (ISBN 0-13-000027-2)
"An Alternative Simple Language and Environment for PCs"
by Steven Pemberton, IEEE Software, Vol. 4, No. 1,
January 1987, pp. 56-64.
ports: unix, MSDOS, atari, mac
contact: [email protected]
updated: 1991/05/02

language: ABCL/1 (An object-Based Concurrent Language)
package: ABCL/1
version: ?
parts: ?
author: Akinori Yonezawa, ABCL Group now at Department of Information
Science, the University of Tokyo
how to get: ftp pub/abcl1/* from
description: Asynchronous message passing to objects.
references: "ABCL: An Object-Oriented Concurrent System", Edited by
Akinori Yonezawa, The MIT Press, 1990, (ISBN 0-262-24029-7)
restriction: no commercial use, must return license agreement
requires: Common Lisp
contact: [email protected]
updated: 1990/05/23

language: ABCL ???
package: ABCL/R2
version: ?
author: [email protected], [email protected],
[email protected], [email protected]
how to get: ftp pub/abclr2/* from
description: ABCL/R2 is an object-oriented concurrent reflective language
based on Hybrid Group Architecture. As a reflective language,
an ABCL/R2 program can dynamically control its own behavior,
such as scheduling policy, from within user-program. An an
object-oriented concurrent language, this system has almost all
functions of ABCL/1.
requires: Common Lisp
updated: 1993/01/28

language: Ada
package: Ada/Ed
version: 1.11.0a+
parts: translator(?), interpreter, ?
author: ?
how to get: ftp pub/Ada/Ada-Ed from
description: Ada/Ed is a translator-interpreter for Ada. It is
intended as a teaching tool, and does not have the
capacity, performance, or robustness of commercial
Ada compilers. Ada/Ed was developed at New York
University, as part of a long-range project in
language definition and software prototyping.
conformance: last validated with version 1.7 of the ACVC tests.
being an interpreter, it does not implement most
representation clauses, and thus does not support systems
programming close to the machine level.
contact: ? Michael Feldman ?
updated: 1992/05/08

language: Ada
package: Ada grammar
version: ?
parts: scanner(lex), parser(yacc)
how to get: ftp from or mail to
[email protected]
contact: [email protected]
updated: 1991/10/12

language: Ada
package: Compiler for Toy/Ada in SML/NJ
version: ?
parts: translator(?)
author: Amit Bhatiani
how to get: ftp pub/compiler*.tar.Z from master.cs.rose-hulman.edy
conformance: subset
updated: 1992/04/08

language: Ada
package: NASA PrettyPrinter
version: ?
parts: Ada LR parser, ?
how to get: ftp from Ada Software Repository on
description: pretty-print program that contains an ada parser
requires: Ada
info-source: Michael Feldman in comp.compilers
[he also has a yacc grammar for ada]
updated: 1991/02/01

language: Ada
package: yacc grammar for Ada
version: ?
parts: parser(yacc)
author: Herman Fischer
how to get: ftp PD2:GRAM2.SRC
contact: ?
updated: 1991/02/01

language: Ada
package: Paradise
version: 2.0
parts: library
how to get: ftp pub/Ada/Paradise from
author: ?
description: Paradise is a subsystem (a set of packages) developped
to implement inter-processes, inter-tasks and
inter-machines communication for Ada programs in
the Unix world. This subsystem gives the user full
access to files, pipes, sockets (both Unix and
Internet), and pseudo-devices.
ports: Sun, Dec, Sony Mips, Verdex compiler, DEC compiler,
Alsys/Systeam compiler
contact: [email protected]
updated: 1992/09/30

language: ADL (Adventure Definition Language)
package: ADL
parts: interpreter
author: Ross Cunniff , Tim Brengle
how to get: archive volume 2
description: An adventure language, semi-object-oriented with LISP-like
syntax. A superset of DDL.
updated: ?

language: ALF (Algebraic Logic Functional programming language)
package: alf
version: ?
parts: runtime, compiler(Warren Abstract Machine)
author: Rudolf Opalla
description: ALF is a language which combines functional and
logic programming techniques. The foundation of
ALF is Horn clause logic with equality which consists
of predicates and Horn clauses for logic programming,
and functions and equations for functional programming.
Since ALF is an integration of both programming
paradigms, any functional expression can be used
in a goal literal and arbitrary predicates can
occur in conditions of equations.
updated: 1992/10/08

language: Algol, Foogol
package: foogol
version: ?
parts: compiler
author: ?
how to get: comp.sources.unix archive volume 8
conformance: subset of Algol
description: ?
ports: VAX
updated: ?

language: ALLOY
package: ALLOY
version: 2.0?
parts: interpreter, documentation, examples
author: Thanasis Mitsolides
how to get: ftp pub/local/alloy/* from
description: ALLOY is a higher level parallel programming language
appropriate for programming massively parallel computing
systems. It is based on a combination of ideas from
functional, object oriented and logic programming languages.
The result is a language that can directly support
functional, object oriented and logic programming styles
in a unified and controlled framework. Evaluating modes
support serial or parallel execution, eager or lazy
evaluation, non-determinism or multiple solutions etc.
ALLOY is simple as it only requires 29 primitives in all
(half of which for Object Oriented Programming support).
ports: sparc, ?
updated: 1991/06/11

language: APL
package: J-mode
what: add on to J
parts: emacs macros
how to get: ftp pub/j/gmacs/j-interaction-mode.el from
updated: 1991/03/04

language: APL
package: I-APL
how to get: ftp languages/apl/* from
updated: 1992/07/06

language: APL
package: APLWEB
version: ?
parts: translator(web->apl), translator(web->TeX)
author: Dr. Christoph von Basum
how to get: ftp languages/apl/aplweb/* from
updated: 1992/12/07

language: Assembler (8051)
package: CAS: The Free Full-Featured 8051 Assembler
version: ?
parts: ?
author: ?
how to get: ftp /pub/8051/assem from
description; an experimental public domain one-pass assembler for the 8051
portability: high
ports: MSDOS, ?
requries: ANSI-C compiler
updated: 1992/08/13

language: Assembler (mc6809)
package: usim
version: 0.11
parts: simulator, documentation
author: Ray P. Bellis
how to get: ftp /pub/mc6809/usim-* from
description: a mc6809 simulator
updated: 1993/02/14

language: ? attribute grammar ?
package: Alpha
version: pre-release
parts: semantic-analysis generator?, documentation(german)
author: Andreas Koschinsky
how to get: from author
description: I have written a compiler generator. The generator is called
Alpha and uses attribute grammars as specification calculus.
Alpha is the result of a thesis at Technische Universitaet
Berlin. I am looking for someone who would like to test and use
Alpha. Alpha generates compilers from a compiler
specification. This specification describes a compiler in
terminology of attribute grammars. Parser and Scanner are
generated by means of Bison and Flex. Alpha generates an
ASE-evaluator (Jazayeri and Walter). The documentation is in
german since it is a thesis at a german university.
updated: 1993/02/16

language: BASIC
package: bwBASIC (Bywater BASIC interpreter)
version: 1.10
parts: interpreter, shell, ?
how to get: ftp pub/bywater/* from
author: Ted A. Campbell
description: ?
conformance: large superset of ANSI Standard for Minimal BASIC (X3.60-1978)
requires: ANSI C
ports: DOS, Unix
updated: 1992/11/05

language: BASIC
package: ? basic ?
version: ?
parts: paser(yacc), interpreter
author: ?
how to get: comp.sources.unix archives volume 2
updated: ?

language: BASIC
package: ? bournebasic ?
version: ?
parts: interpreter
author: ?
how to get: comp.sources.misc archives volume 1
description: ?
updated: ?

language: BASIC
package: ? basic ?
version: ?
parts: interpreter
author: ?
how to get: ftp ? from
description: ?
contact: ?
updated: ?

language: BASIC
package: ubasic
version: 8
parts: ?
author: Yuji Kida

how to get: ? ask archie ?
references: reviewed in Notices of the A.M.S #36 (May/June 1989),
and "A math-oriented high-precision BASIC", #38 (3/91)
contact: ?
updated: 1992/07/06

language: BCPL
package: ?
version: ?
author: ?
how to get: ftp systems/amiga/programming/languages/BCPL/BCPL4Amiga.lzh
description: The original INTCODE interpreter for BCPL.
ports: Amiga, UNIX, MSDOS
contact: ?
updated: ?

language: BCPL
package: ?
version: ?
how to get: ftp [.languages]bcpl.tar_z from
description: A BCPL* (Basic Combined Programming Language) compiler
bootstrap kit with an INTCODE interpreter in C.
contact: Ken Yap
updated: ?

language: BNF variant
package: TXL: Tree Transformation Language
version: 6.0
parts: translator generator
author: Jim Cordy
how to get: ftp txl/00README for instructions from
description: + TXL is a generalized source-to-source translation
system suitable for rapidly prototyping computer
languages and language processors of any kind. It has
been used to prototype several new programming
languages as well as specification languages, command
languages, and more traditional program transformation
tasks such as constant folding, type inference, source
optimization and reverse engineering. TXL takes
as input an arbitrary context-free grammar in extended
BNF-like notation, and a set of show-by-example
transformation rules to be applied to inputs parsed
using the grammar.
updated: 1992/02/23

language: BNF
package: Grey
version: 3
parts: parser generator(Forth)
author: Martin Anton Ertl
how to get: author; version 2 is on various ftp sites
description: Gray is a parser generator written in Forth. It takes
grammars in an extended BNF and produces executable Forth
code for recursive descent parsers. There is no special
support for error handling.
requires: Forth
ports: TILE Release 2 by Mikael Patel
updated: 1992/05/22

language: BNF ??
package: ZUSE
version: ?
parts: parser generator(?)
author: Arthur Pyster
how to get: ? Univ Calif at Santa Barbara ?
description: ll(1) paser generator
requires: Pascal
updated: 1986/09/23

language: BNF ??
package: FMQ
version: ?
parts: paser generator w/error corrector generator
author: Jon Mauney
how to get: ftp from
status: ?
contact: ?
updated: 1990/03/31

language: BNF ??
package: ATS (Attribute Translation System)
version: ?
author: ? University of Saskatchewan ?
how to get: ?
description: generates table-driven LL(1) parsers with full insert-only
error recovery. It also handles full left-attribute semantic
handling, which is a dream compared to using YACC's parser
contact: ?
info-source: Irving Reid in comp.compilers
status: ?
updated: 1988/11/29

language: BNF (Extended)
package: PCCTS (Purdue Compiler-Construction Tool Set)
version: 1.06
parts: scanner generator, parser generator (LL(k)), documentation,
author: Terence J. Parr , Will E. Cohen
, Henry G. Dietz
how to get: ftp pub/pccts/1.06 from
uk: ftp /comput*/progra*/langu*/tools/pccts/* from
description: PCCTS is similar to a highly integrated version of YACC
and LEX; where ANTLR (ANother Tool for Language
Recognition) corresponds to YACC and DLG (DFA-based
Lexical analyzer Generator) functions like LEX.
However, PCCTS has many additional features which make
it easier to use for a wide range of translation
problems. PCCTS grammars contain specifications for
lexical and syntactic analysis, semantic predicates,
intermediate-form construction and error reporting.
Rules may employ Extended BNF (EBNF) grammar constructs
and may define parameters, return values and local
variables. Languages described in PCCTS are recognized
via LL(k) parsers constructed in pure, human-readable,
C code. PCCTS parsers may be compiled with C++.
ports: UNIX, DOS, OS/2
portability: very high
contact: Terence J. Parr
updated: 1992/12/14

language: BNF ??
package: DEER
version: ?
parts: parser geneartor
author: Bob Grey
description: LL(1) paser generator generates directly executable C,
rather than a table-driven C machine.
reference: Bob Grey, 1987 Summer Usenix proceedings.
status: ?
updated: 1988/11/29

language: BNF ??
package: LLGen
version: ?
parts: parser generator
author: ? Fischer and LeBlanc ?
how to get: ? ftp from ?
description: LL(1) parser generator
conformance: subset of FMQ
reference: "Crafting A Compiler", by Fischer and LeBlanc
status: ?
contact: ?
updated: 1990/03/31

language: BNF ????
package: GMD Toolbox for Compiler Construction (aka Cocktail)
version: ?
how to get: ftp gmd/cocktail from
msdos: ftp pub/cocktail/dos from
description: ?
requires: DJ Delorie's DOS extender (go32)
ports: msdos, unix, maybe os/2
contact: ?
msdos: [email protected]
updated: 1992/10/01

language: BNF ????
package: T-gen
version: 2.1
parts: parser generator, documentation, ?
author: Justin Graver
how to get: ftp pub/st80_r41/T-gen2.1/* from
description: T-gen is a general-purpose object-oriented tool for the
automatic generation of string-to-object translators.
It is written in Smalltalk and lives in the Smalltalk
programming environment. T-gen supports the generation
of both top-down (LL) and bottom-up (LR) parsers, which
will automatically generate derivation trees, abstract
syntax trees, or arbitrary Smalltalk objects. The simple
specification syntax and graphical user interface are
intended to enhance the learning, comprehension, and
usefulness of T-gen.
ports: ParcPlace Objectworks/Smalltalk 4.0 & 4.1
requires: Smalltalk-80
updated: 1992/10/18

language: BNF ???
package: Eli Compiler Construction System
version: 3.4.2
parts: ?????, translator(WEB->BNF?)
how to get: ftp pub/cs/distribs/eli/* from
ports: Sun-3/SunOS4.1 Sun-4/SunOS4.1.2 RS/6000/AIX3 Mips/Ultrix4.2
HP9000/300/HP-UX8.00 HP9000/700/HP-UX8.07
description: Eli integrates off-the-shelf tools and libraries with
specialized language processors to generate complete compilers
quickly and reliably. It simplifies the development of new
special-purpose languages, implementation of existing languages
on new hardware and extension of the constructs and features of
existing languages.
contact: ,
updated: 1993/02/11

language: Milarepa (BNF variant)
package: Marpa
version: ?
parts: parser-generator, examples
author: Jeffrey Kegler
description: Milarepa is a program which uses a subset of Marpa's
capabilities to take a file of BNF and associated
actions (in Perl!), and parse them into a Perl program
which parses its input standard, performing the
This is intended to be a real hacker's parser. It is
not restricted to LR(k), and the parse logic follows
directly from the BNF. It handles ambiguous grammars,
ambiguous tokens (tokens which were not positively
identified by the lexer) and allows the programmer to
change the start symbol. There is no fixed distinction
between terminals and non-terminals, that is, a symbol
can both match the input AND be on the left hand side
of a production. Multiple Marpa grammars are allowed
in a single perl program. The grammar is extensible.
The BNF may have productions added (or, as an
extension, deleted) after parsing has begun.
The grammar may not be left recursive. The input must
be divided into sentences of a finite maximum length.
requires: perl, C
updated: 1992/11/06

language: BNF (yacc)
package: NewYacc
version: 1.0
parts: parser generator, documenation
how to get: ftp src/newyacc.1.0.*.Z from
author: Jack Callahan
reference: see Dec 89 CACM for a brief overview of NewYacc.
updated: 1992/02/10

language: BNF (yacc)
package: bison
version: 1.18
parts: parser generator, documentation
author: many ?
how to get: ftp bison-1.16.tar.Z from a GNU archive site
bugs: [email protected]
ports: unix, atari, ?
restriction: *** will CopyLeft your code if you use it ***
updated: 1992/01/28

language: BNF (yacc)
package: ? jaccl ?
version: ?
parts: parser generator
author: Dave Jones
description: a LR(1) parser generator
how to get: ?
updated: 1989/09/08

language: BNF (yacc)
package: byacc (Berkeley Yacc)
version: ?
parts: parser generator
author: Robert Corbett ? ?
how to get: ftp pub/byacc.tar.Z from
description: ?
history: Used to be called Zoo, and before that, Zeus
updated: 1990/02/05

language: BURS ?
package: Iburg
version: ?
parts: parser generator?
author: Christopher W. Fraser , David R. Hanson
, Todd A. Proebsting
how to get: ftp pub/iburg.tar.Z from
description: Iburg is a program that generates a fast tree parser. It is
compatible with Burg. Both programs accept a cost-augmented
tree grammar and emit a C program that discovers an optimal
parse of trees in the language described by the grammar. They
have been used to construct fast optimal instruction selectors
for use in code generation. Burg uses BURS; Iburg's matchers
do dynamic programming at compile time.
updated: 1993/02/10

language: C
package: xdbx
version: 2.1
parts: X11 front end for dbx
how to get: retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
contact: Po Cheung
updated: 1992/02/22

language: C
package: ups
version: 2.1
parts: interpreter, symbolic debugger, tests, documentation
how to get: ? ftp from contrib/ups*.tar.Z from ?
unofficial: unofficial enhancements by Rod Armstrong ,
available by ftp misc/unix/ups/contrib/rob from
author: Mark Russell
description: Ups is a source level C debugger that runs under X11 or
SunView. Ups includes a C interpreter which allows you to add
fragments of code simply by editing them into the source window
ports: Sun, Decstation, VAX(ultrix), HLH Clipper
discussion: [email protected]
bugs: Mark Russell
updated: 1991/05/20

language: C (ANSI)
package: lcc
version: 1.8
parts: compiler, test suite, documentation
author: Dave Hanson
how to get: ftp pub/lcc/lccfe-*.tar.Z from
description: + hand coded C parser (faster than yacc)
+ retargetable
+ code "as good as GCC"
ports: vax (mips, sparc, 68k backends are commercial)
status: small-scale production use using commerical backends; the
commercial backends are cheap (free?) to universities.
discussion: [email protected]
updated: 1992/02/20

language: C
package: smallc
version: ?
parts: compiler
author: ?
how to get: comp.sources.unix volume 5
description: ?
conformance: ?
ports: 68k, 6809, VAX, 8080
updated: ?

language: C
package: GCT
version: 1.4
parts: test-coverage-preprocessor
author: Brian Marick
how to get: ftp pub/testing/gct.file/ftp.* from
description: GCT is test-coverage tool based on GNU C. Coverage tools
measure how thoroughly a test suite exercises a program.
restriction: CopyLeft
discussion: [email protected]
support: commercial support available from author, (217) 351-7228
ports: sun3, sun4, rs/6000, 68k, 88k, hp-pa, ibm 3090,
ultrix, convex, sco
updated: 1993/02/12

language: C
package: Harvest C
version: 2.1
ports: Macintosh
how to get: ftp mac/development/languages/harves* from
description: ?
contact: Eric W. Sink
updated: 1992/05/26

language: C++
package: ET++
parts: class libraries, documentation
how to get: ftp C++/ET++/* or pub/* from
contact: Erich Gamma
updated: 1992/10/26

language: C++
package: C++ grammar
how to get: comp.sources.misc volume 25
parts: parser(yacc)
updated: 1991/10/23

language: C++
package: COOL
version: ?
parts: libraries, tests, documentation
how to get: ftp ? from
description: A C++ class library developed at Texas Instruments. Cool
contains a set of containers like Vectors, List, Has_Table,
etc. It uses a shallow hierarchy with no common base
class. The funtionality is close to Common Lisp data
structures (like libg++). The template syntax is very close
to Cfront3.x and g++2.x. Can build shared libraries on Suns.
contact: Van-Duc Nguyen
ports: ?
updated: 1992/08/05

language: C++, Extended C++
package: EC++
version: ?
parts: translator(C++), documentation
author: Glauco Masotti
how to get: ? ftp languages/c++/EC++.tar.Z from ?
description: EC++ is a preprocessor that translates Extended C++
into C++. The extensions include:
+ preconditions, postconditions, and class invariants
+ parameterized classes
+ exception handling
+ garbage collection
status: ?
updated: 1989/10/10

language: C++
package: LEDA
version: 3.0
parts: libraries
how to get: ftp pub/LEDA/* from
description: library of efficient data types and algorithms.
New with 3.0: both template and non-template versions.
contact: Stefan N"aher
updated: 1992/11/30

language: C (ANSI)
package: ? 1984 ANSI C to K&R C preprocessor ?
version: ?
parts: translator(K&R C)
author: ?
how to get: from comp.sources.unix archive volume 1
status: ?
updated: ?

language: C (ANSI)
package: unproto ?
version: ? 4 ? 1.6 ?
parts: translator(K&R C)
author: Wietse Venema
how to get: ftp pub/unix/unproto4.shar.Z from
contact: ?
updated: ?

language: C (ANSI)
package: cproto
version: ?
parts: translator(K&R C)
author: Chin Huang
how to get: from comp.sources.misc archive volume 29
description: cproto generates function prototypes from function definitions.
It can also translate function definition heads between K&R
style and ANSI C style.
ports: UNIX, MS-DOS
updated: 1992/07/18

langauge: C (ANSI)
package: cextract
version: 1.7
parts: translator(K&R C), header file generator
how to get: ftp from any comp.sources.reviewed archive
author: Adam Bryant
description: A C prototype extractor, it is ideal for generating
header files for large multi-file C programs, and will
provide an automated method for generating all of the
prototypes for all of the functions in such a program.
It may also function as a rudimentary documentation
extractor, generating a sorted list of all functions
and their locations
ports: Unix, VMS
updated: 1992/11/03

language: C, ANSI C, C++
package: ? The Roskind grammars ?
version: ? 2.0 ?
parts: parser(yacc), documenation
author: Jim Roskind
how to get: ftp pub/*grammar* from
description: The C grammar is CLEAN, it does not use %prec, %assoc, and
has only one shift-reduce conflict. The C++ grammar has
a few conflicts.
status: ?
updated: 1989/12/26

language: C, C++
package: xxgdb
version: 1.06
parts: X11 front end for gdb
how to get: retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
contact: Pierre Willard
updated: 1992/02/22

language: C, C++
package: gdb
version: 4.7
parts: symbolic debugger, documentation
how to get: ftp gdb-4.5.tar.Z from a GNU archive site
author: many, but most recently Stu Grossman
and John Gilmore
ports: most unix variants, vms, vxworks, amiga, msdos
bugs: gnu.gdb.bug
discussion: ?
restriction: CopyLeft
updated: 1992/11/01

language: C, C++, Objective C
package: emx programming environment for OS/2
parts: gcc, g++, gdb, libg++, .obj linkage, DLL, headers
how to get: ftp pub/os2/2.0/programing/emx-0.8e from
author: Kai-Uwe Rommel
updated: 1992/09/21

language: C, nroff
package: c2man
version: 1.1
parts: documentation generator (C -> nroff -man)
how to get: alt.sources archive
author: Graham Stoney
description: c2man is a program for generating Unix style manual pages in
nroff -man format directly from ordinary comments embedded
in C source code
updated: 1992/07/10

language: C-Refine, C++-Refine, *-Refine
package: crefine
version: 3.0
parts: pre-processor, documentation
how to get: aquire from any comp.sources.reviewed archive
author: Lutz Prechelt
description: C-Refine is a preprocessor for C and languages that
vaguely resemble C's syntax. It allows symbolic naming
of code fragments so as to redistribute complexity and
provide running commentary.
portability: high
ports: unix, msdos, atari, amiga.
updated: 1992/07/16

language: CAML (Categorical Abstract Machine Language)
package: CAML
version: 3.1
parts: ?
author: ?
description: CAML is a language belonging to the ML family including:
+ lexical binding discipline
+ static type inference
+ user-defined (sum and product) types
+ possibly lazy data structures
+ possibly mutable data structures
+ interface with the Yacc parser generator
+ pretty-printing tools
+ and a complete library.
how to get: ? ftp lang/caml from ?
status: ?
discussion: ?
ports: Sun-3 Sun-4 Sony-68k Sony-R3000 Decstation Mac-A/UX Apollo
portability: ?
bugs: [email protected] or [email protected]
updated: ?

language: Caml Light
package: Caml Light
version: 0.4
how to get: ftp lang/caml-light/* from
author: Xavier Leroy
parts: bytecode compiler, runtime, scanner generator, parser generator
ports: most unix, Macintosh, Amiga, MSDOS
conformance: subset of CAML
features: very small
performance: five to ten times slower than SML-NJ
portability: very high
contact: Xavier Leroy
updated: 1991/10/05

language: Candle, IDL (Interface Description Language)
package: Scorpion System
version: 5.0
author: University of Arizona
parts: software development environment for developing
software development environments, documentation
how to get: ftp scorpion/* from
description: 20 tools that can be used to construct specialized
programming environments
history: The Scorpion Project was started by Prof. Richard
Snodgrass as an outgrowth of the SoftLab Project (which pro-
duced the IDL Toolkit) that he started when he was at the
University of North Carolina. The Scorpion Project is
directed by him at the University of Arizona and by Karen
Shannon at the University of North Carolina at Chapel Hill.
reference: "The Interface Description Language: Definition and Use,"
by Richard Snodgrass, Computer Science Press, 1989,
ISBN 0-7167-8198-0
ports: Sun-3, Sun-4, Vax, Decstation, NeXT, Sequent, HP9000
discussion: [email protected]
contact: [email protected]
updated: 1991/04/10

language: Common Lisp
package: CMU Common Lisp
version: 16f
parts: incremental compiler, profiler, runtime, documentation,
editor, debugger
how to get: ftp /afs/
from Precompiled versions also available
description: includes *macs-like editor (hemlock), pcl, and clx.
conformance: mostly X3J13 compatible.
ports: Sparc/Mach Sparc/SunOS Mips/Mach IBMRT/Mach
contact: [email protected]
updated: 1992/12/17

language: Common Lisp
package: PCL (Portable Common Loops)
version: 8/28/92 PCL
parts: library
author: ? Richard Harris ?
how to get: ftp pcl/* from
description: A portable CLOS implementation. CLOS is the object oriented
programming standard for Common Lisp. Based on Symbolics
FLAVORS and Xerox LOOPS, among others. Loops stands for
Lisp Object Oriented Programming System.
status: ?
ports: Lucid CL 4.0.1, CMUCL 16e, ?
updated: 1992/09/02

language: Common Lisp
package: WCL
version: 2.14
parts: ?, shared library runtime, source debugger

author: Wade Hennessey
how to get: ftp pub/wcl/* from
description: A common lisp implementation as a shared library. WCL
Is not a 100% complete Common Lisp, but it does have
the full development environment including dynamic file
loading and debugging. A modified version of GDB provides
mixed-language debugging. A paper describing WCL was
published in the proceedings of the 1992 Lisp and Functional
Programming Conference.
requires: GNU C 2.1 (not 2.2.2)
ports: Sparc/SunOS
updated: 1992/10/28

language: Common Lisp
package: KCL (Kyoto Common Lisp)
parts: translator(C), interpreter
how to get: ? ftp pub/kcl*.tar.Z from ?
author: T. Yuasa , M. Hagiya

description: KCL, Kyoto Common Lisp, is an implementation of Lisp,
It is written in the language C to run under Un*x-like
operating systems. KCL is very C-oriented; for example,
the compilation of Lisp functions in KCL involves a
subsidiary C compilation.
conformance: conforms to the book ``Common Lisp: The Language,''
G. Steele, et al., Digital Press, 1984.
restriction: must sign license agreement
discussion: [email protected]
bugs: [email protected]
updated: 1987/06

language: Common Lisp
package: AKCL (Austin Kyoto Common Lisp)
version: 1-615
parts: improvements
author: Bill Schelter
how to get: ftp pub/akcl-*.tar.Z from
author: Bill Schelter
description: AKCL is a collection of ports, bug fixes, and
performance improvements to KCL.
ports: Decstation3100, HP9000/300, i386/sysV, IBM-PS2/aix, IBM-RT/aix
SGI Sun-3/Sunos[34].* Sun-4 Sequent-Symmetry IBM370/aix,
VAX/bsd VAX/ultrix NeXT
updated: 1992/04/29

language: Common Lisp
package: CLX
version: 5.01
parts: library
how to get: ftp contrib/CLX.R5.01.tar.Z from
description: Common Lisp binding for X
contact: ?
ports: ?, CMU Common Lisp
bugs: [email protected]
updated: 1992/08/26

language: Common Lisp
package: CLISP
version: ?
parts: interpreter, translator?, library, editor
author: Bruno Haible ,
Michael Stoll
how to get: ftp pub/lisp/clisp/linux/* from
description: runs in only 1.5MB of memory
ports: Atari, Amiga, MS-DOS, OS/2, Linux, Sun4, Sun386i, HP90000/800
and others
conformance: CLISP is mostly CLtL1 compliant. It implements 99% of the
restriction: not all source included, CopyLeft
updated: 1992/10/11

language: Common Lisp
package: Cartier's Contribs
version: 1.2
parts: libraries, documentation
author: Guillaume Cartier
how to get: ftp pub/mcl2/contrib/Cartiers* from
description: libraries for MCL
requires: Macintosh Common Lisp
updated: 1992/11/30

language: Common Lisp
package: QT-OBJECTS
version: ?
author: Michael Travers and others
parts: library
description: interface between MCL and QuickTime
requires: Macintosh Common Lisp
updated: 1992/12/20

language: Common Lisp
package: Memoization ?
version: ?
parts: library
how to get: ftp pub/Memoization from
author: Marty Hall
description: Automatic memoization is a technique by which an existing
function can be transformed into one that "remembers"
previous arguments and their associated results
updated: 1992/11/30

language: Common Lisp
package: GINA (Generic Interactive Application)
version: 2.2
parts: language binding, class library, interface builder
how to get: ftp /gmd/gina from
usa: ftp contrib/? from
description: GINA is an application framework based on Common Lisp and
OSF/Motif to simplify the construction of graphical
interactive applications. It consists of:
+ CLM, a language binding for OSF/Motif in Common Lisp.
+ the GINA application framework, a class library in CLOS
+ the GINA interface builder, an interactive tool implemented
with GINA to design Motif windows.
requires: OSF/Motif 1.1 or better. Common Lisp with CLX, CLOS, PCL and
ports: Franz Allegro, Lucid, CMU CL and Symbolics Genera
discussion: [email protected]

language: Concurrent Clean
package: The Concurrent Clean System
version: 0.8.1
parts: development environment, documentation, compiler(byte-code),
compiler(native), interpreter(byte-code), examples
how to get: ftp pub/Clean/* from
author: Research Institute for Declarative Systems,
University of Nijmegen
description: The Concurrent Clean system is a programming
environment for the functional language Concurrent
Clean, developed at the University of Nijmegen, The
Netherlands. The system is one of the fastest
implementations of functional languages available at
the moment. Its I/O libraries make it possible to do
modern, yet purely functional I/O (including windows,
menus, dialogs etc.) in Concurrent Clean. With the
Concurrent Clean system it is possible to develop
real-life applications in a purely functional
* lazy and purely functional
* strongly typed - based on Milner/Mycroft scheme
* module structure
* modern I/O
* programmer-infulenced evaluation order by annotations
contact: [email protected]
ports: Sun-3, Sun-4, Macintosh
updated: 1992/11/07

language: CLP (Constraint Logic Programming language)
package: CLP(R)
version: 1.2
parts: runtime, compiler(byte-code), contstraint solver
author: IBM
how to get: mail to Joxan Jaffar
description: CLP(R) is a constraint logic programming language
with real-arithmetic constraints. The implementation
contains a built-in constraint solver which deals
with linear arithmetic and contains a mechanism
for delaying nonlinear constraints until they become
linear. Since CLP(R) subsumes PROLOG, the system
is also usable as a general-purpose logic programming
language. There are also powerful facilities for
meta programming with constraints. Significant
CLP(R) applications have been published in diverse
areas such as molecular biology, finance, physical
modelling, etc. We are distributing CLP(R) in order
to help widen the use of constraint programming, and
to solicit feedback on the system
restriction: free for academic and research purposes only
contact: Roland Yap , Joxan Jaffar
ports: unix, msdos, OS/2
updated: 1992/10/14

language: csh (C-Shell)
package: tcsh
version: 6.03
parts: interpreter
author: Christos Zoulas
how to get: ftp ? from
description: a modified C-Shell with history editing
ports: unix, OpenVMS
updated: 1992/12/16

language: Dylan
pakcage: Thomas
version: ? first public release ?
parts: translator(Scheme)
how to get: ftp pub/DEC/Thomas from
author: Matt Birkholz , Jim Miller
, Ron Weiss
description: Thomas, a compiler written at Digital Equipment
Corporation's Cambridge Research Laboratory compiles
a language compatible with the language described
in the book "Dylan(TM) an object-oriented dynamic
language" by Apple Computer Eastern Research and
Technology, April 1992. It does not perform well.
Thomas is NOT Dylan(TM).
ports: MIT's CScheme, DEC's Scheme->C, Marc Feeley's Gambi, Mac, PC,
Vax, MIPS, Alpha, 680x0
requires: Scheme
updated: 1992/09/11

language: EDIF (Electronic Design Interchange Format)
package: Berkeley EDIF200
version: 7.6
parts: translator-building toolkit
author: Wendell C. Baker and Prof A. Richard Newton of the Electronics
Research Laboratory, Department of Electrical Engineering and
Computer Sciences at the University of California, Berkeley, CA
how to get: ftp from pub/edif in
description: ?
ports: ?
restriction: no-profit w/o permission
updated: 1990/07

language: EDIF v 2 0 101
package: University of Manchester EDIF v 2 0 101 Syntax Checker
how to get: ftp pub/edif from
description: Parser/Syntax checker for EDIF v 2 0 101 written in ANSI-C

language: Eiffel
package: ?
version: ?
parts: front-end
author: Olaf Langmack and Burghardt Groeber
how to get: ftp pub/heron/ep.tar.Z from
description: A compiler front-end for Eiffel-3 is available. It has been
generated automatically with the Karlsruhe toolbox for
compiler construction according to the most recent public
language definition. The parser derives an easy-to-use
abstract syntax tree, supports elementary error recovery
and provides a precise source code indication of errors. It
performs a strict syntax check and analyses 4000 lines of
source code per second on a Sun-SPARC workstation.
updated: 1992/12/14

language: EuLisp
package: Feel (Free and Eventually Eulisp)
version: 0.75
parts: interpreter, documentation
how to get: ftp pub/eulisp from
author: Pete Broadbery
description: + integrated object system
+ a module system
+ parallelism
+ interfaces to PVM library, tcp/ip sockets, futures,
Linda, and CSP.
ports: most unix
portability: high, but can use shared memory and threads if available
updated: 1992/09/14

language: FMPL of Accardi
package: FMPL interpreter
version: 1
parts: interpreter, documentation
author: Jon Blow
how to get: ftp src/local/fmpl/* from
description: FMPL is an experimental prototype-based object-oriented
programming language developed at the Experimental Computing
Facility of the University of California, Berkeley.
+ lambda-calculus based constructs.
+ event-driven (mainly I/O events)
updated: 1992/06/02

language: FORTH
package: TILE Forth
version: 2.1
parts: interpreter
author: Mikael Patel
how to get: ftp tile-forth-2.1.tar.Z from a GNU archive site
description: Forth interpreter in C; many Forth libraries
conformance: Forth83
restriction: shareware/GPL
ports: unix
updated: 1991/11/13

language: FORTH
package: cforth
version: ?
parts: interpreter
author: ?
how to get: comp.sources.unix archive volume 1
description: ?
updated: ?

language: FORTH
package: F68K
version: ?
how to get: ftp atari/Languages/f68k.* from
description: a portable Forth system for Motorola 68k computers
ports: Atari ST/TT, Amiga, Sinclair QL and OS9
portability: very high for 68000 based systems
contact: Joerg Plewe
updated: 1992/12/14

language: Forth, Yerk
package: Yerk
version: 3.62
parts: ?
how to get: ftp pub/Yerk/? from
description: Yerk is an object oriented language based on a
Forth Kernel with some major modifications. It
was originally known as Neon, developed and sold
as a product by Kriya Systems from 1985 to 1989.
Several of us at The University of Chicago have
maintained Yerk since its demise as a product.
Because of the possible trademark conflict that
Kriya mentions, we picked the name Yerk, which is
at least not an acronym for anything, but rather
stands for Yerkes Observatory, part of the Department
of Astronomy and Astrophysics at U of C.
author: ?
updated: ?

language: Fortran
package: f2c
version: ?
parts: translator(C)
author: ?
how to get: ftp ft2/? from [email protected]
bugs: [email protected]
updated: ? 1991/02/16 ?

language: Fortran
package: Floppy
version: ?
how to get: ffccc in comp.sources.misc archive volume 12
description: ?
contact: ?
updated: 1992/08/04

language: Fortran
package: Flow
version: ?
parts: ?
how to get: comp.sources.misc archive volume 31
author: Julian James Bunn
descripton: The Flow program is a companion to Floppy, it allows the user
to produce various reports on the structure of Fortran
77 code, such as flow diagrams and common block tables.
requires: Floppy
ports: VMS, Unix, CMS

language: Fortran
package: Adaptor (Automatic DAta Parallelism TranslatOR)
version: ?
parts: translator(Fortran), documentation
how to get: ftp gmd/adaptor/* from
description: Adaptor is a tool that transforms data parallel
programs written in Fortran with array extensions,
parallel loops, and layout directives to parallel
programs with explicit message passing.
ADAPTOR is not a compiler but a source to source
transformation that generates Fortran 77 host and
node programs with message passing. The new
generated source codes have to be compiled by the
compiler of the parallel machine.
ports: Alliant FX/2800, iPSC/860, Net of Sun-4 or RS/6000
Workstations (based on PVM), Parsytec GCel, Meiko Concerto
contact: Thomas Brandes
updated: 1992/10/17

language: Fortran, C
package: cfortran.h
version: 2.6
parts: macros, documentation, examples
author: Burkhard Burow
how to get: ftp cfortran/* from
description: cfortran.h is an easy-to-use powerful bridge between
C and FORTRAN. It provides a completely transparent, machine
independent interface between C and FORTRAN routines and
global data.
cfortran.h provides macros which allow the C preprocessor to
translate a simple description of a C (Fortran) routine or
global data into a Fortran (C) interface.
references: reviewed in RS/Magazine November 1992 and
a user's experiences with cfortran.h are to be described
in the 1/93 issue of Computers in Physics.
portability: high
ports: VAX VMS or Ultrix, DECstation, Silicon Graphics, IBM RS/6000,
Sun, CRAY, Apollo, HP9000, LynxOS, f2c, NAG f90.
contact: [email protected]
updated: 1992/04/12

language: FP
package: ? funcproglang ?
version: ?

parts: translator(C)
author: ?
how to get: comp.sources.unix archive volume 13
descrition: ? Backus Functional Programming ?
updated: ?

language: Garnet ??
package: Garnet
version: 2.1 alpha
how to get: ftp from /usr/garnet/? from
description: ?
contact: ?
updated: ?

language: Garnet
package: Multi-Garnet
version: 2.1
how to get: ftp /usr/garnet/alpha/src/contrib/multi-garnet
author: Michael Sannella
description: better contstraint system for Garnet ??
updated: 1992/09/21

language: Gofer (Haskell derivitive)
package: Gofer
version: 2.23
parts: interpreter, documentation, examples
author: Mark Jones
how to get: ftp pub/haskell/gofer from
uk: pub/Packages/Gofer from
conformances: Gofer does not implement all of Haskell, although it is
very close.
ports: many, including Sun, PC, Mac, Atari, Amiga
updated: 1992/09/05

language: Haskell
package: Chalmers Haskell (aka Haskell B.)
version: ?
parts: ?
how to get: ftp pub/haskell/chalmers/hbc from
requires: LML
contact: ?
updated: 1992/07/06

language: Haskell
package: The Glasgow Haskell Compiler (GHC)
version: 0.10
parts: translator(C), tests, profiler
how to get: ftp pub/haskell/glasgow/* from
uk: ftp pub/haskell/glasgow/* from
se: ftp pub/haskell/glasgow/* from
description: + almost all of Haskell is implemented
+ An extensible I/O system is provided, based on a "monad"
+ significant language extensions are implemented: Fully
fledged unboxed data types, Ability to write arbitrary in-line
C-language code, Incrementally-updatable arrays, Mutable
reference types.
+ generational garbage collector
+ Good error messages
+ programs compiled with GHC "usually" beat
Chalmers-HBC-compiled ones.
+ compiler is written in a modular and well-documented way.
+ Highly configurable runtime system.
- No interactive system.
- Compiler is greedy on resources.
requires: GNU C 2.1+, perl, Chalmers HBC 0.998.x (source build only)
conformance: Almost all of Haskell is implemented.
ports: Sun4
portability: should be high
updated: 1992/12/14

language: Hermes
package: IBM Watson prototype Hermes system
version: 0.8alpha patchlevel 01
parts: bytecode compiler, bytecode translator(C), runtime
author: Andy Lowry
how to get: ftp pub/hermes/README from
description: Hermes is a very-high-level integrated language and
system for implementation of large systems and
distributed applications, as well as for
general-purpose programming. It is an imperative,
strongly typed, process-oriented language. Hermes
hides distribution and heterogeneity from the
programmer. The programmer sees a single abstract
machine containing processes that communicate using
calls or sends. The compiler, not the programmer,
deals with the complexity of data structure layout,
local and remote communication, and interaction with
the operating system. As a result, Hermes programs are
portable and easy to write. Because the programming
paradigm is simple and high level, there are many
opportunities for optimization which are not present in
languages which give the programmer more direct control
over the machine.
reference: Strom, Bacon, Goldberg, Lowry, Yellin, Yemini. Hermes: A
Language for Distributed Computing. Prentice-Hall, Englewood
Cliffs, NJ. 1991. ISBN: O-13-389537-8.
ports: RS6000 Sun-4 NeXT IBM-RT/bsd4.3 (Sun-3 and Convex soon)
updated: 1992/03/22

language: Hope
package: ?
parts: ?
how to get: ftp ? from
author: ?
description: Functional language with polymorphic types and lazy lists.
First language to use call-by-pattern.
ports: Unix, Mac, PC
updated: 1992/11/27

language: ici
package: ici
parts: interpreter, documentation, examples
author: Tim Long
how to get: ftp pub/ici.cpio.Z from
description: ICI has dynamic arrays, structures and typing with the flow
control constructs, operators and syntax of C. There are
standard functions to provided the sort of support provided
by the standard I/O and the C libraries, as well as addi-
tional types and functions to support common needs such as
simple data bases and character based screen handling.
ports: Sun4, 80x86 Xenix, NextStep, MSDOS
features: + direct access to many system calls
+ structures, safe pointers, floating point
+ simple, non-indexed built in database
+ terminal-based windowing library
contact: ?
portability: high
status: actively developed.
updated: 1992/11/10

language: Icon
package: icon
version: 8.7 (8.5, 8.0 depending on platform)
parts: interpreter, compiler (some platforms), library (v8.8)
author: Ralph Griswold
how to get: ftp icon/* from
description: Icon is a high-level, general purpose programming language that
contains many features for processing nonnumeric data,
particularly for textual material consisting of string of
- no packages, one name-space
- no exceptions
+ object oiented features
+ records, sets, lists, strings, tables
+ unlimited line length
- unix interface is primitive
+ co-expressions
references: "The Icon Programmming Language", Ralph E. Griswold and
Madge T. Griswold, Prentice Hall, seond edition, 1990.
"The Implementation of the Icon Programmming Language",
Ralph E. Griswold and Madge T. Griswold, Princeton
University Press 1986
ports: Amiga, Atari, CMS, Macintosh, Macintosh/MPW, MSDOS, MVS, OS/2,
Unix (most variants), VMS, Acorn
discussion: comp.lang.icon
contact: [email protected]
updated: 1992/08/21

language: IDL (Project DOE's Interface Definition Language)
package: SunSoft OMG IDL CFE
version: 1.0
parts: compiler front end, documentation
author: SunSoft Inc.
how to get: ftp pub/OMG_IDL_CFE_1.0 from
description: OMG's (Object Management Group) CORBA 1.1 (Common
Object Request Broker Architecture) specification
provides the standard interface definition between
OMG-compliant objects. IDL (Interface Definition
Language) is the base mechanism for object
interaction. The SunSoft OMG IDL CFE (Compiler Front
End) provides a complete framework for building CORBA
1.1-compliant preprocessors for OMG IDL. To use
SunSoft OMG IDL CFE, you must write a back-end; full
instructions are included. No problem. A complete
compiler of IDL would translate IDL into client side
and server side routines for remote communication in
the same manner as the currrent Sun RPCL compiler. The
additional degree of freedom that the IDL compiler
front end provides is that it allows integration of new
back ends which can translate IDL to various
programming languages. Locally at Sun we are working on
a back end that will produce C and C++, and we know of
companies (members of OMG) that are interested in other
target languages such as Pascal or Lisp.
contact: [email protected]
updated: 1992/10/23

language: IFP (Illinois Functional Programming)
package: ifp
version: 0.5
parts: interpreter
author: Arch D. Robison
how to get: comp.sources.unix archive volume 10
description: A variant of Backus' "Functional Programming" language
with a syntax reminiscent of Modula-2. The interpreter
is written in portable C.
references: [1] Arch D. Robison, "Illinois Functional Programming: A
Tutorial," BYTE, (February 1987), pp. 115--125.
[2] Arch D. Robison, "The Illinois Functional
Programming Interpreter," Proceedings of 1987 SIGPLAN
Conference on Interpreters and Interpretive Techniques,
(June 1987), pp. 64-73
ports: UNIX, MS-DOS, CTSS (Cray)
updated: ?

language: INTERCAL
package: ?
version: ?
how to get: archie?
description: ?
contact: ?
updated: ?

language: J
package: J from ISI
version: 6
parts: ?, tutorial
how to get: ftp languages/apl/j/* from
author: Kenneth E. Iverson and Roger Hui
ports: Dec, NeXT, SGI, Sun-3, Sun-4, VAX, RS/6000, MIPS, Mac,
IBM-PC, Atari, 3b1, Amiga
updated: 1992/10/31

language: Janus
package: qdjanus
version: 1.3
parts: translator(prolog)
author: Saumya Debray
how to get: ftp janus/qdjanus/* from
conformance: mostly compliant with "Programming in Janus" by
Saraswat, Kahn, and Levy.
description: janus is a janus-to-prolog compiler meant to be used
with Sicstus Prolog
updated: 1992/05/18

language: Janus
package: jc
version: 1.50 alpha
parts: translator(C)
author: David Gudeman
how to get: ftp janus/jc/* from
description: jc is a janus-to-C compiler (considerably faster than qdjanus).
jc is a _sequential_ implementation of a _concurrent_ language.
status: jc is an experimental system, undergoing rapid development.
It is in alpha release currently.
bugs: [email protected]
discussion: [email protected]
ports: sun-4, sun-3, Sequent Symmetry
updated: 1992/06/09

language: Kevo
package: kevo
version: 0.9b2
parts: ?, demo programs, user's guid, papers
author: Antero Taivalsaari
how to get: ftp /ursa/kevo/* from
description: Experimental prototype-based object-oriented system.
Although the Kevo system has been built to experiment
with ideas which are somewhat irrelevant from the
viewpoint of Forth, the system does bear some
resemblance to Forth; in particular, the system
executes indirect threaded code, and a great deal
of the primitives are similar to those of Forth's.
ports: Macintosh ('020 or better)
contact: kevo-inter[email protected]
updated: 1992/09/21

language: Korn Shell
package: bash (Bourne Again SHell)
version: 1.12
parts: parser(yacc), interpreter, documentation
how to get: ftp bash-1.12.tar.Z from a GNU archive site
author: Brian Fox
description: ?
restriction: CopyLeft
bugs: gnu.bash.bug
updated: 1992/01/28

language: PCN
package: PCN
version: 2.0
parts: compiler?, runtime, linker, libraries, tools, debugger,
profiler, tracer
author: Ian Foster , Steve Tuecke
, and others
how to get: ftp pub/pcn/pcn_v2.0.tar.Z from
description: PCN is a parallel programming system designed to improve
the productivity of scientists and engineers using parallel
computers. It provides a simple language for specifying
concurrent algorithms, interfaces to Fortran and C, a
portable toolkit that allows applications to be developed
on a workstation or small parallel computer and run
unchanged on supercomputers, and integrated debugging and
performance analysis tools. PCN was developed at Argonne
National Laboratory and the California Institute of
Technology. It has been used to develop a wide variety of
applications, in areas such as climate modeling, fluid
dynamics, computational biology, chemistry, and circuit
ports: (workstation nets): Sun4, NeXT, RS/6000, SGI
(multicomputers): iPSC/860, Touchstone DELTA
(shared memory multiprocessors): Symmetry/Dynix
updated: 1993/02/12

language: Korn Shell
package: SKsh
version: 2.1
author: Steve Koren
parts: interpreter, utilities
how to get: ftp pub/amiga/incom*/utils/SKsh021.lzh from
description: SKsh is a Unix ksh-like shell which runs under AmigaDos.
it provides a Unix like environment but supports many
AmigaDos features such as resident commands, ARexx, etc.
Scripts can be written to run under either ksh or SKsh,
and many of the useful Unix commands such as xargs, grep,
find, etc. are provided.
ports: Amiga
updated: 1992/12/16

language: Lambda-Prolog
package: Prolog/Mali (PM)
version: ? 6/23/92 ?
parts: translator(C), linker, libraries, runtime, documentation
how to get: ftp pm/* from
author: Pascal Brisset
description: Lambda-Prolog, a logic programming language defined by
Miller, is an extension of Prolog where terms are
simply typed $\lambda$terms and clauses are higher
order hereditary Harrop formulas. The main novelties
are universal quantification on goals and implication.
references: + Miller D.A. and Nadathur G. "Higher-order logic
programming", 3rd International Conference on Logic
Programming, pp 448-462, London 1986.
+ Nadathur G. "A Higher-Order Logic as a Basis for Logic
Programming", Thesis, University of Pennsylvania, 1987.
requires: MALI-V06 abstract memory. MALI is available by anonymous ftp
ports: unix
discussion: [email protected]
contact: [email protected]
updated: 1992/07/06

language: RLaB language (math manipulation - MATLAB-like)
package: RLaB
version: 0.50 - first public release, still alpha
parts: interpreter, libraries, documentation
author: Ian Searle
how to get: ftp pub/alpha/RLaB from
description: RLaB is a "MATLAB-like" matrix-oriented programming
language/toolbox. RLaB focuses on creating a good experimental
environment (or laboratory) in which to do matrix math
Currently RLaB has numeric scalars and matrices (real and
complex), and string scalars, and matrices. RLaB also contains
a list variable type, which is a heterogeneous associative
restriction: Copyleft
requires: GNUPLOT, lib[IF]77.a (from f2c)
ports: many unix, OS/2, Amiga
bugs: Ian Searle
updated: 1993/02/16

language: prolog (variant)
package: Aditi
version: Beta Release
parts: interpreter, database
author: Machine Intelligence Project, Univ. of Melbourne, Australia
how to get: send email to [email protected]
description: The Aditi Deductive Database System is a multi-user
deductive database system. It supports base relations
defined by facts (relations in the sense of relational
databases) and derived relations defined by rules that
specify how to compute new information from old
information. Both base relations and the rules
defining derived relations are stored on disk and are
accessed as required during query evaluation. The
rules defining derived relations are expressed in a
Prolog-like language, which is also used for expressing
queries. Aditi supports the full structured data
capability of Prolog. Base relations can store
arbitrarily nested terms, for example arbitrary length
lists, and rules can directly manipulate such terms.
Base relations can be indexed with B-trees or
multi-level signature files. Users can access the
system through a Motif-based query and database
administration tool, or through a command line
interface. There is also in interface that allows
NU-Prolog programs to access Aditi in a transparent
manner. Proper transaction processing is not supported
in this release.
ports: Sparc/SunOS4.1.2 Mips/Irix4.0
updated: 1992/12/17

language: prolog (variant)
package: CORAL
version: ?
parts: interpreter, interface(C++), documentation
author: ?
how to get: ftp ? from
description: The CORAL deductive database/logic programming system was
developed at the University of Wisconsin-Madison. The CORAL
declarative language is based on Horn-clause rules with
extensions like SQL's group-by and aggregation operators, and
uses a Prolog-like syntax. * Many evaluation techniques are
supported, including bottom-up fixpoint evaluation and top-down
backtracking. * A module mechanism is available. Modules are
separately compiled; different evaluation methods can be used
in different modules within a single program. * Disk-resident
data is supported via an interface to the Exodus storage
manager. * There is an on-line help facility
requires: AT&T C++ 2.0 (G++ soon)
ports: Decstation, Sun4
updated: 1993/01/29

language: lex
package: flex
version: 2.3.7
parts: scanner generator
how to get: ftp flex-2.3.7.tar.Z from a GNU archive site or
author: Vern Paxson
updated: 1992/10/20

language: LIFE (Logic, Inheritance, Functions, and Equations)
package: Wild_LIFE
version: first-release
parts: interpreter, manual, tests, libraries, examples
author: Paradise Project, DEC Paris Research Laboratory.
how to get: ftp pub/plan/Life.tar.Z from
description: LIFE is an experimental programming language with a
powerful facility for structured type inheritance. It
reconciles styles from functional programming, logic
programming, and object-oriented programming. LIFE
implements a constraint logic programming language with
equality (unification) and entailment (matching)
constraints over order-sorted feature terms. The
Wild_LIFE interpreter has a comfortable user interface
with incremental query extension ability. It contains
an extensive set of built-in operations as well as an X
Windows interface.
conformance: semantic superset of LOGIN and LeFun. Syntax is similar
to prolog.
discussion: [email protected]
bugs: [email protected]
contact: Peter Van Roy
ports: MIPS-Ultrix
portability: good in theory
updated: 1992/12/14

language: lisp
package: RefLisp
version: ?
parts: interpreter, documentation, examples
author: Bill Birch
how to get: ftp implementations/reflisp/* from the directory
/afs/ on
description: The interpreter is a shallow-binding (i.e., everything has
dynamic scope), reference counting design making it suitable
for experimenting with real-time and graphic user interface
programming. Common Lisp compatibility macros are provided, and
most of the examples in "Lisp" by Winston & Horn have been run
on RefLisp. RefLisp makes no distinction between symbol-values
and function-values, so a symbol can be either but not both.
ports: MSDOS (CGA/EGA/VGA), Unix (AIX)
updated: 1993/02/09

language: lisp
package: xlisp
version: 2.1
parts: interpreter
author: David Micheal Betz
how to get: ftp pub/xlisp* from
usmail: contact Tom Almy
windows: ftp util/ from
version2.0: ftp pub/xlisp/* from
description: XLISP is an experimental programming language
combining some of the features of Common Lisp with an
object-oriented extension capability. It was
implemented to allow experimentation with
object-oriented programming on small computers.
conformance: subset of Common Lisp with additions of Class and Object
portability: very high: just needs a C compiler
ports: unix, amiga, atari, mac, MSDOS
restriction: ? no commercial use ?
updated: 1992/05/26 (unix), 1987/12/16 (other platforms)

language: lisp
package: "LISP, Objects, and Symbolic Programming"
version: ?
parts: book with compiler included
author: Robert R. Kessler and Amy R. Petajan
publisher: Scott, Foresman and Company, Glenview, IL
how to get: bookstore...
updated: 1988

language: lisp
package: franz lisp
version: ?
how to get: ?
author: ?
discussion: [email protected]
updated: ?

language: Logo
package: logo
version: 4
parts: interpreter
author: ?
how to get: comp.sources.unix archive volume 10
description: ?
updated: ?

language: Logo
package: MswLogo
version: 3.X
parts: interpreter
author: George Mills
how to get: ftp pub/comp.lang.logo/programs/mswlogo from
history: The core of this Version of Logo comes from a project done by
Boston Childrens Museum and Lincoln Sudbury Regonal High
School. The port to Windows was done by George Mills of DEC.
description: The Core of this Version of Logo comes from a
project done by Boston Childrens Museum and Lincoln
Sudbury Regonal High School. The Port to Windows
was done by George Mills Digital Equipment Corporation.
Digital Equipment Corporation takes no responsibility
for the software.
Version 3.X is a prototype, use version 2.4 if you are
not looking for excitement.
status: activly developed
ports: MS Windows 3.x
updated: 1992/10/17

language: Logo
package: Berkeley Logo
version: 2.8 - alpha
parts: ?
author: Brian Harvey
how to ge: ftp pub/*logo* from
description: + Logo programs are compatible among Unix, PC, and Mac.
+ "richer" than MswLogo
- pretty slow.
- doesn't do anything fancy about graphics. (One turtle.)
ports: unix, pc, mac
updated: 1992/09/29

language: Lolli (logic programming)
package: Lolli
parts: ?
how to get: ftp pub/Lolli/Lolli-07.tar.Z. from
author: ? Josh Hodas ?
description: Lolli is an interpreter for logic programming based
on linear logic principles.
Lolli can be viewed as a refinement of the the
Hereditary Harrop formulas of Lambda-Prolog. All the
operators (though not the higher order unification) of
Lambda-Prolog are supported, but with the addition of
linear variations. Thus a Lolli program distinguishes
between clauses which can be used as many, or as few,
times as desired, and those that must be used exactly
requires: ML
updated: 1992/11/08

language: LOOPN
package: LOOPN
version: ?
parts: compiler?, simulator
how to get: ftp departments/computer_sci*/loopn.tar.Z from
description: I wish to announce the availability of a compiler, simulator
and associated source control for an object-oriented petri net
language called LOOPN. In LOOPN, a petri net is an extension
of coloured timed petri nets. The extension means firstly that
token types are classes. In other words, they consist of both
data fields and functions, they can be declared by inheriting
from other token types, and they can be used polymorphically.
The object-oriented extensions also mean that module or subnet
types are classes. LOOPN has been developed over a period of
about 5 years at the University of Tasmania, where it has been
used in teaching computer simulation and the modelling of
network protocols. [Can anyone tell me what a petri-net is?
contact: Charles Lakos
updated: 1992/12/20

language: MeldC (MELD, C)
package: MeldC
version: 2.0
parts: microkernel, compiler, debugger, manual, examples
author: MELD Project, Programming Systems Laboratory at
Columbia University
how to get: obtain license from
restriction: must sign license, cannot use for commercial purposes
description: MeldC 2.0: A Reflective Object-Oriented Coordination
Programming Language MELDC is a C-based, concurrent,
object-oriented language built on a reflective
architecture. The core of the architecture is
a micro-kernel (the MELDC kernel), which encapsulates
a minimum set of entities that cannot be modeled as
objects. All components outside of the
kernel are implemented as objects in MELDC itself
and are modularized in the MELDC libraries. MELDC is
reflective in three dimensions: structural,
computational and architectural. The structural
reflection indicates that classes and meta-classes are
objects, which are written in MELDC. The
computational reflection means that object behaviors
can be computed and extended at runtime. The
architectural reflection indicates that new
features/properties (e.g., persistency and
remoteness) can be constructed in MELDC.
ports: Sun4/SunOS4.1 Mips/Ultrix4.2
updated: 1992/12/15

language: ML
package: LML
version: ?
parts: compiler(?), interactive environment
how to get: ftp ? from
description: lazy, completely functional variant of ML.
ports: ?
contact: ?
updated: 1992/07/06

language: Modula-2, Pascal
package: m2
version: ? 7/2/92 ?
parts: ? compiler ?
history: The compiler was designed and built by Michael L.
Powell, and originally released in 1984. Joel
McCormack sped the compiler up, fixed lots of bugs, and
swiped/wrote a User's Manual. Len Lattanzi ported the
compiler to the MIPS.
description: A modula-2 compiler for VAX and MIPS. A Pascal
compiler for VAX is also included. The Pascal compiler
accepts a language that is almost identical to Berkeley
conformance: extensions:
+ foreign function and data interface
+ dynamic array variables
+ subarray parameters
+ multi-dimensional open array parameters
+ inline proceedures
+ longfloat type
+ type-checked interface to C library I/O routines
how to get: ftp pub/DEC/Modula-2/m2.tar.Z from
restriction: must pass changes back to Digital
ports: vax (ultrix, bsd), mips (ultrix)
contact: [email protected]
updated: 1992/07/06

langauge: m4
package: GNU m4
version: 1.0
parts: interperter, ?
how to get: ftp m4-1.0.tar.Z from a GNU archive site
author: ?
description: A macro preprocessor language, somewhat flexible.
conformance: ?
ports: ?
updated: 1991/10/25

language: Modula-2
package: fst
version: 3.0
parts: compiler
how to get: ftp pub/modula-2/pc/* from
author: Fitted Software Tools (Inc)
restriction: Shareware
ports: msdos
updated: 1992/10/09

language: Modula-3
package: SRC Modula-3
version: 2.01
parts: translator(C), runtime, library, documentation
how to get: ftp pub/DEC/Modula-3/m3-*.tar.Z from
description: The goal of Modula-3 is to be as simple and safe as it
can be while meeting the needs of modern systems
programmers. Instead of exploring new features, we
studied the features of the Modula family of languages
that have proven themselves in practice and tried to
simplify them into a harmonious language. We found
that most of the successful features were aimed at one
of two main goals: greater robustness, and a simpler,
more systematic type system. Modula-3 retains one of
Modula-2's most successful features, the provision for
explicit interfaces between modules. It adds objects
and classes, exception handling, garbage collection,
lightweight processes (or threads), and the isolation
of unsafe features.
ports: ?, Ultrix, RS6000
contact: Bill Kalsow
discussion: comp.lang.modula3
updated: 1992/02/09

language: Modula2
package: mtc
parts: translator(C)
how to get: ftp soft/unixtools/compilerbau/mtc.tar.Z
author: ?
description: ?
ports: ?
updated: 1991/10/25

language: Modula2, Pascal
package: ?? metro ??
version: ? beta
parts: ?
how to get: ftp from using metro, password release4.0
description: ?
ports: Sparc (Modula2 only), Macintosh
contact: Marcel Achim

language: Motorola DSP56001 assembly
package: a56
version: 1.1
parts: assembler
author: Quinn C. Jensen
how to get: alt.sources archive
updated: 1992/08/10

language: natural languages
package: proof
parts: parser, documentation
author: Craig R. Latta
how to get: ftp src/local/proof/* from
description: a left-associative natural language grammar scanner
bugs: [email protected]
discussion: [email protected] ("Subject: add me")
ports: Decstation3100 Sun-4
updated: 1991/09/23

language: new awk
package: mawk
version: 1.1.2
how to get: ftp public/mawk* from
parts: interpreter
author: Mike Brennan
conformance: superset
+ RS can be a regular expression
features: + faster than most new awks
ports: sun3,sun4:sunos4.0.3 vax:bsd4.3,ultrix4.1 stardent3000:sysVR3
decstation:ultrix4.1 msdos:turboC++
contact: Mike Brennan
status: actively developed
updated: 1992/10/09

language: new awk
package: gawk
version: 2.14
parts: interpreter, documentation
author: David Trueman and Arnold Robbins
how to get: ftp gawk-2.14.tar.Z from a GNU archive site
conformance: superset
ports: unix, msdos:msc5.1
status: activly developed
updated: 1992/11/18

language: Oaklisp
package: oaklisp
version: 1.2
parts: interface, bytecode compiler, runtime system, documentation
author: Barak Pearlmutter, Kevin Lang
how to get: ftp /afs/* from
description: Oaklisp is a Scheme where everything is an object. It
provides multiple inheritence, a strong error system,
setters and locators for operations, and a facility for
dynamic binding.
status: actively developed?
contact: [email protected] ?
updated: 1992/05 ?

language: Oberon
package: Oberon from ETH Zurich
version: 2.2 (msdos: 1.0)
parts: compiler, programming environment, libraries, documenation
how to get: ftp Oberon/* from
MSDOS: ftp Oberon/DOS386/* from
macintosh: ??? same package or different ??? ftp
author: Josef Templ
conformance: superset (except Mac)
ports: DECstation/MIPS/Ultrix/X11 Macintosh/68020/MacOS/QuickDraw
IBM/RS6000/AIX/X11 Sun-4/SunOS4/X11 Sun-4/SunOS4/pixrect
contact: [email protected]
updated: 1992/07/20

language: Oberon2
package: Oberon-2 LEX/YACC definition
version: 1.4
parts: parser(yacc), scanner(lex)
how to get: mail [email protected] with Subject "b-server-request~ and
body "send oberon/oberon_2_p_v1.4.shar"
author: Stephen J Bevan
parts: scanner(lex) parser(yacc)
status: un-officially supported
updated: 1992/07/06

language: OPS5
package: PD OPS5
version: ?
parts: interpreter
how to get: ftp /afs/* from
author: Written by Charles L. Forgy and ported to Common Lisp by
George Wood and Jim Kowalski.
description: Public domain implementation of an OPS5 interpreter. OPS5 is
a programming language for production systems. ??????
contact: ? Mark Kantrowitz ?
requires: Common Lisp
updated: 1992/10/17

language: Parallaxis
package: parallaxis
version: 2.0
parts: ?, simulator, x-based profiler
author: ?
how to get: ftp pub/parallaxis from
description: Parallaxis is a procedural programming language based
on Modula-2, but extended for data parallel (SIMD) programming.
The main approach for machine independent parallel programming
is to include a description of the virtual parallel machine
with each parallel algorithm.
ports: MP-1, CM-2, Sun-3, Sun-4, DECstation, HP 700, RS/6000
contact: ? Thomas Braunl ?
updated: 1992/10/23

language: Parlog
package: SPM System (Sequential Parlog Machine)
version: ?
parts: ?, documenation
author: ?
how to get: ? ftp lang/Parlog.tar.Z from
description: a logic programming language ?
references: Steve Gregory, "Parallel Logic Programming in PARLOG",
Addison-Wesely, UK, 1987
ports: Sun-3 ?
restriction: ? no source code ?
updated: ??

language: Pascal
package: p2c
version: 1.15
parts: translator(C)
author: Dave Gillespie
how to get: comp.sources.unix archive volume 21, 22
conformance: ?
ports: ?
updated: 1990/04/13

language: Pascal
package: ? iso_pascal ?
version: ?
parts: scanner(lex), parser(yacc)
author: ?
how to get: comp.sources.unix archive volume 13
description: ?
updated: ?

language: Pascal, Lisp, APL, Scheme, SASL, CLU, Smalltalk, Prolog
package: Tim Budd's C++ implementation of Kamin's interpreters
version: ?
parts: interpretors, documentation
author: Tim Budd
how to get: ? ftp pub/budd/kamin/*.shar from ?
description: a set of interpretors written as subclasses based on
"Programming Languages, An Interpreter-Based Approach",
by Samuel Kamin.
requires: C++
status: ?
contact: Tim Budd
updated: 1991/09/12

language: Perl (Practical Extraction and Report Language)
package: perl
version: 4.0 patchlevel 36
parts: interpreter, debugger, libraries, tests, documentation
how to get: ftp pub/perl.4.0/* from
OS/2 port: ftp pub/os2/all/unix/prog*/ from
Mac port: ftp software/mac/src/mpw_c/Mac_Perl_405_* from
Amiga port: ftp perl4.035.V010.* from
VMS port: ftp software/vms/perl/* from
Atari port: ftp amiga/Languages/perl* from
DOS port: ftp pub/msdos/perl/* from
author: Larry Wall
description: perl is an interpreted language optimized for scanning
arbitrary text files, extracting information from those text
files, and printing reports based on that information. It's
also a good language for many system management tasks.
features: + very-high semantic density becuase of powerful operators
like regular expression substitution
+ exceptions, provide/require
+ associative array can be bound to dbm files
+ no arbitrary limits
+ direct access to almost all system calls
+ can access binary data
+ many powerful common-task idioms
- three variable types: scalar, array, and hash table
- unappealing syntax
references: "Programming Perl" by Larry Wall and Randal L. Schwartz,
O'Reilly & Associates, Inc. Sebastopol, CA.
ISBN 0-93715-64-1
discussion: comp.lang.perl
bugs: comp.lang.perl; Larry Wall
ports: almost all unix, MSDOS, Mac, Amiga, Atari, OS/2, VMS
portability: very high for unix, not so high for others
updated: 1993/02/07

language: perl, awk, sed, find
package: a2p, s2p, find2perl
parts: translators(perl)
author: Larry Wall
how to get: comes with perl
description: translators to turn awk, sed, and find into perl.

language: perl, yacc
package: perl-byacc
version: 1.8.1
parts: parser-generator(perl)
how to get: ftp local/perl-byacc1.8.1.tar.Z from
author: Rick Ohnemus
description: A modified version of byacc that generates perl code.
updated: 1992/10/20

language: Postscript
package: Ghostscript
version: 2.5.2
parts: interpreter, ?
author: L. Peter Deutsch
how to get: ftp pub/GNU/ghostscript* from a GNU archive site
description: ?
updated: 1992/10/07

language: Postscript, Common Lisp
package: PLisp
version: ?
parts: translator(Postscript), programming environment(Postscript)
description: ?
author: John Peterson
updated: ?

language: Prolog
package: SB-Prolog
version: 3.0
author: ?
how to get: ftp pub/sbprolog from
description: ?
contact: ? [email protected] ?
restriction: ? CopyLeft ?
updated: 1992/09/16

language: prolog
package: swi-prolog
version: 1.6.5
author: Jan Wielemaker
how to get: ftp ftp from []
conformance: superset
features: "very nice Ed. style prolog, best free one I've seen"
ports: Sun-4, Sun-3 (complete); Linux, DEC MIPS (done but
incomplete, support needed); RS6000, PS2/AIX, Atari ST,
Gould PN, NeXT, VAX, HP-UX (known problems, support needed);
MSDOS (status unknown)
status: activly developed
discussion: [email protected]
updated: 1992/09/29

language: Prolog
package: Frolic
version: ?
how to get: ftp pub/frolic.tar.Z from
requires: Common Lisp
contact: ?
updated: 1991/11/23

language: Prolog
package: ? Prolog package from the University of Calgary ?
version: ?
how to get: ftp pub/prolog1.1/prolog11.tar.Z from
description: + delayed goals
+ interval arithmetic
requires: Scheme
portability: reliese on continuations
contact: ?
updated: ?

language: Prolog
package: ? slog ?
version: ?
parts: translator(Scheme)
author: [email protected]
how to get: ftp public/ from
description: macros expand syntax for clauses, elations etc, into Scheme
ports: Chez Scheme
portability: reliese on continuations
updated: ?

language: Prolog
package: LM-PROLOG
version: ?
parts: ?
author: Ken Kahn and Mats Carlsson
how to get: ftp archives/lm-prolog.tar.Z from
requires: ZetaLisp
contact: ?
updated: ?

language: Prolog
package: ISO draft standard
parts: language definition
how to get: ftp ? from
updated: 1992/07/06

language: Python
package: Python
version: 0.9.8
parts: interpeter, libraries, documentation, emacs macros
how to get: ftp pub/python* from
america: ftp pub/? from
author: Guido van Rossum
description: Python is a simple, yet powerful programming language
that bridges the gap between C and shell programming,
and is thus ideally suited for rapid prototyping. Its
syntax is put together from constructs borrowed from a
variety of other languages; most prominent are
influences from ABC, C, Modula-3 and Icon. Python is
object oriented and is suitable for fairly large programs.
+ packages
+ exceptions
+ good C interface
+ dynamic loading of C modules
- arbitrary restrictions
discussion: [email protected]
ports: unix and Macintosh
updated: 1993/01/09

language: RATFOR
package: ? ratfor ?
version: ?
parts: translator(f77)
author: ?
how to get: comp.sources.unix archives volume 13
description: ?
updated: ?

language: rc
package: rc
version: ?
parts: interpretor
author: ?
how to get: ?? ftp from uunet ?
description: a free implementation of the Plan 9 shell.
contact: ?
updated: ?

langauge: Relation Grammer
package: rl
version: ?
how to get: fto rl/* from
author: Kent Wittenburg
description: The RL files contain code for defining Relational
Grammars and using them in a bottom-up parser to
recognize and/or parse expressions in Relational
Languages. The approach is a simplification of that
described in Wittenburg, Weitzman, and Talley (1991),
Unification-Based Grammars and Tabular Parsing for
Graphical Languages, Journal of Visual Languages and
Computing 2:347-370.
This code is designed to support the definition and
parsing of Relational Languages, which are
characterized as sets of objects standing in
user-defined relations. Correctness and completeness
is independent of the order in which the input is given
to the parser. Data to be parsed can be in many forms
as long as an interface is supported for queries and
predicates for the relations used in grammar
productions. To date, this software has been used to
parse recursive pen-based input such as math
expressions and flowcharts; to check for data integrity
and design conformance in databases; to automatically
generate constraints in drag-and-drop style graphical
interfaces; and to generate graphical displays by
parsing relational data and generating output code.
ports: Allegro Common Lisp 4.1, Macintosh Common Lisp 2.0
requires: Common Lisp
updated: 1992/10/31

language: REXX
package: Regina ?
version: 0.02a
author: Anders Christensen
how to get: ftp andersrexx/rexx-0.02a.tar.Z from
or ftp ? from
ports: unix
discussion: comp.lang.rexx
updated: 1992/05/13

language: REXX
package: ?
version: 102
author: ? al ?
how to get: ftp alrexx/rx102.tar.Z from
or ftp ? from
requires: C++
ports: unix
discussion: comp.lang.rexx
contact: ?
updated: 1992/05/13

language: S/SL (Syntax Semantic Language)
package: ssl
version: ?
author: Rick Holt, Jim Cordy (language),
Rayan Zachariassen (C implementation)
parts: parser bytecode compiler, runtime
how to get: ftp pub/ssl.tar.Z from
description: A better characterization is that S/SL is a language
explicitly designed for making efficient recusive-descent
parsers. Unlike most other languages, practicially the
LEAST expensive thing you can do in S/SL is recur. A
small language that defines input/output/error token
names (& values), semantic operations (which are really
escapes to a programming language but allow good
abstration in the pseudo-code), and a pseudo-code
program that defines a grammar by the token stream the
program accepts. Alternation, control flow, and
1-symbol lookahead constructs are part of the
language. What I call an S/SL "implementation", is a
program that compiles this S/SL pseudo-code into a
table (think byte-codes) that is interpreted by the
S/SL table-walker (interpreter). I think the pseudo-code
language is LR(1), and that the semantic mechanisms turn it
into LR(N) relatively easily.
+ more powerful and cleaner than yac
- slower than yacc
reference: + Cordy, J.R. and Holt, R.C. [1980] Specification of S/SL:
Syntax/Semantic Language, Computer Systems Research
Institute, University of Toronto.
+ "An Introduction to S/SL: Syntax/Semantic Language" by
R.C. Holt, J.R. Cordy, and D.B. Wortman, in ACM Transactions
on Programming Languages and Systems (TOPLAS), Vol 4, No.
2, April 1982, Pages 149-178.
updated: 1989/09/25

language: Sather
package: Sather programming language and environment
version: 0.2g
parts: translator(C), debugger, libraries, documentation, emacs macros
author: International Computer Science Institute in Berkeley, CA
how to get: ftp pub/sather/sa-0.2g.tar.Z from
europe: ftp pub/Sather/* from
aus: ftp world/sather/* from
japan: ftp pub/lang/sather/* from
conformance: reference implemantation
description: Sather is a new object-oriented computer language
developed at the International Computer Science
Institute. It is derived from Eiffel and attempts to
retain much of that language's theoretical cleanliness
and simplicity while achieving the efficiency of C++.
It has clean and simple syntax, parameterized classes,
object-oriented dispatch, multiple inheritance, strong
typing, and garbage collection. The compiler generates
efficient and portable C code which is easily
integrated with existing code.
package: A variety of development tools including a debugger and browser
based on gdb and a GNU Emacs development environment
have also been developed. There is also a class library
with several hundred classes that implement a variety
of basic data structures and numerical, geometric,
connectionist, statistical, and graphical abstractions.
We would like to encourage contributions to the library
and hope to build a large collection of efficient,
well-written, well-tested classes in a variety of areas
of computer science.
ports: Sun4
portability: high
discussion: [email protected]
bugs: [email protected]
status: actively developed.
updated: 1992/07/06

language: Scheme
package: Schematik
parts: programming environment
author: Chris Kane, Max Hailperin
how to get: ftp /pub/next/scheme/* from
europe: ftp /pub/next/ProgLang from
description: Schematik is a NeXT front-end to MIT Scheme for
the NeXT. It provides syntax-knowledgeable text
editing, graphics windows, and user-interface to
an underlying MIT Scheme process. It comes packaged
with MIT Scheme 7.1.3 ready to install on the NeXT.
ports: NeXT, MIT Scheme 7.1.3
portability: requires NeXTSTEP
contact: [email protected]
updated: 1992/07/10

language: Scheme
package: T
version: 3.1
parts: compiler
author: ?
how to get: ftp pub/systems/t3.1 from
description: a Scheme-like language developed at Yale. T is
written in itself and compiles to efficient native
(A multiprocessing version of T is available from
ports: Decstation, Sparc, sun-3, Vax(unix), Encore, HP, Apollo,
Mac (A/UX)
contact: [email protected]
bugs: [email protected]
updated: 1991/11/26

language: Scheme
package: scm
version: 4a14
parts: interpreter, conformance test, documentation
author: Aubrey Jaffer
conformance: superset of Revised^3.99 Report on the Algorithmic
Language Scheme and the IEEE P1178 specification.
how to get: ftp archive/scm/* from
canada: ftp pub/oz/scheme/new from
restriction: GNU Copyleft
contributions: send $$$ to Aubrey Jaffer, 84 Pleasant St., Wakefield, MA 01880
ports: unix, amiga, atari, mac, MSDOS, nos/ve, vms
updated: 1992/11/30

language: Scheme
package: Hobbit
version: release 1
parts: translator(->C), documentation
author: Tanel Tammet
how to get: ftp archive/scm/hobbit1.tar.Z from
description: The main aim of hobbit is to produce maximally fast C programs
which would retain most of the original Scheme program
structure, making the output C program readable and modifiable.
Hobbit is written in Scheme and is able to self-compile.
Hobbit release 1 works together with the scm release scm4b3.
Future releases of scm and hobbit will be coordinated.
requires: scm 4b3
updated: 1993/02/07

language: Scheme
package: siod (Scheme In One Day, or Scheme In One Defun)
version: 2.9
author: George Carrette
how to get: ftp src/lisp/siod-v2.8-shar from
description: Small scheme implementation in C arranged as a set of
subroutines that can be called from any main program
for the purpose of introducing an interpreted extension
language. Compiles to ~20K bytes of executable. Lisp
calls C and C calls Lisp transparently.
ports: VAX/VMS, VAX UNIX, Sun3, Sun4, Amiga, Macintosh, MIPS, Cray
updated: 1992/09/01

language: MIT Scheme
package: CScheme
version: 7.2
parts: interpreter, large runtime library, emacs macros,
native-code compiler, emacs-like editor, source-level debugger
author: MIT Scheme Team (primarily Chris Hanson, Jim Miller, and
Bill Rozas, but also many others)
how to get: ftp archive/scheme-7.2 from
DOS floppies ($95) and Unix tar tapes ($200) from
Scheme Team / c/o Prof. Hal Abelson / MIT AI Laboratory /
545 Technology Sq. / Cambridge, MA 02139
description: Scheme implementation with rich set of utilities.
conformance: full compatibility with Revised^4 Report on Scheme,
one known incompatibility with IEEE Scheme standard
ports: 68k (hp9000, sun3, NeXT), MIPS (Decstation, Sony, SGI),
HP-PA (600, 700, 800), Vax (Ultrix, BSD), Alpha (OSF),
i386 (DOS/Windows, various Unix)
bugs: [email protected]
discussion: [email protected]
(cross-posted to comp.lang.scheme.c)
status: activly developed
updated: 1992/08/24

language: Scheme
package: Scheme->C
version: 01nov91
parts: translator(C)
author: ? Digital Western Research Laboratory ?
how to get: ftp pub/DEC/Scheme-to-C/* from
documentation: send Subject "help" to [email protected]
conformance: superset of Revised**3
+ "expansion passing style" macros
+ foreign function call capability
+ interfaces to Xlib (Ezd & Scix)
ports: SunOS, Ultrix, Amiga, Apollo
updated: 1991/11/01

language: Scheme
package: PC-Scheme
version: 3.03
parts: ?
author: Texas Instruments
how to get: ftp archive/pc-scheme/* from
conformance: Revised^4 Report, also supports dialect used in SICP.
ports: MSDOS
restriction: official version is $95
updated: 1992/02/23

language: Scheme
package: Gambit Scheme System
version: 1.8.2
parts: interpreter, compiler, linker
author: Marc Feeley
how to get: ftp pub/gambit1.7.1/* from
description: Gambit is an optimizing Scheme compiler/system.
conformance: IEEE Scheme standard and `future' construct.
restriction: Mac version of compiler & source costs $40.
ports: 68k: unix, sun3, hp300, bbn gp100, NeXT, Macintosh
updated: 1992/07/01

language: Scheme
package: Elk (Extension Language Kit)
version: 2.0
parts: interpreter
how to get: ftp pub/elk/elk-2.0.tar.Z from
usa: ftp contrib/elk-2.0.tar.Z from
author: Oliver Laumann , Carsten Bormann
description: Elk is a Scheme interpreter designed to be used as a
general extension language.
+ interfaces to Xlib, Xt, and various widget sets.
+ dynamic loading of extensions
+ almost all artificial limitations removed
conformance: Mostly R3RS compatable.
ports: unix, ultrix, vax, sun3, sun4, 68k, i386, mips, ibm rt,
rs6000, hp700, sgi, sony
updated: 1992/11/30

language: Scheme
package: XScheme
version: 0.28
parts: ?
author: David Betz
how to get: ftp pub/scheme/* from
description: ?

discussion: comp.lang.lisp.x
contact: ?
updated: 1992/02/02

language: Scheme
package: Fools' Lisp
version: 1.3.2
author: Jonathan Lee
how to get: ftp src/local/fools.tar.Z from
description: a small Scheme interpreter that is R4RS conformant.
ports: Sun-3, Sun-4, Decstation, Vax (ultrix), Sequent, Apollo
updated: 1991/10/31

language: Scheme
package: Scheme84
version: ?
parts: ?
how to get: Send a tape w/return postage to: Scheme84 Distribution /
Nancy Garrett / c/o Dan Friedman / Department of Computer
Science / Indiana University / Bloomington, Indiana. Call
description: ?
requires: VAX, Franz Lisp, VMS or BSD
contact: [email protected]
updated: ?

language: Scheme
package: Scheme88
version: ?
parts: ?
how to get: ftp pub/scheme/* from
contact: ?
updated: ?

language: Scheme
package: UMB Scheme
version: ?
parts: ?, editor, debugger
author: William Campbell
how to get: ftp pub/scheme/* from
conformance: R4RS Scheme
ports: ?
updated: ?

language: Scheme
package: PseudoScheme
version: 2.8
parts: translator(Common Lisp)
author: Jonathan Rees
conformance: R3RS except call/cc.
requires: Common Lisp
ports: Lucid, Symbolics CL, VAX Lisp, Explorer CL
announcements: [email protected]
updated: ?

language: Scheme
package: Similix
version: ?
parts: partial evaulator, debugger
how to get: ftp misc/Similix.tar.Z from
description: Similix is an autoprojector (self-applicable partial
evaluator) for a higher order subset of the strict functional
language Scheme. Similix handles programs with user defined
primitive abstract data type operators which may process
global variables (such as input/output operators).
conformance: subset
contact: Anders Bondorf
requires: Scheme
ports: Chez Scheme, T
updated: 1991/09/09

language: Scheme
package: Scheme Library (slib)
version: 1c2
parts: library, documentation
how to get: ftp archive/scm/slib1b*.tar.Z from
description: SLIB is a portable scheme library meant to provide
compatibiliy and utility functions for all standard scheme
ports: GAMBIT, MITScheme, scheme->C, Scheme48, and T3.1
status: actively developed
contact: Aubrey Jaffer
updated: 1992/11/30

language: Scheme
package: ? syntax-case ?
version: 2.1
parts: macro system, documentation
how to get: ftp pub/scheme/syntax-case.tar.Z from
author: R. Kent Dybvig
description: We have designed and implemented a macro system that is
vastly superior to the low-level system described in
the Revised^4 Report; in fact, it essentially
eliminates the low level altogether. We also believe
it to be superior to the other proposed low-level
systems as well, but each of you can judge that for
yourself. We have accomplished this by "lowering the
level" of the high-level system slightly, making
pattern variables ordinary identifiers with essentially
the same status as lexical variable names and macro
keywords, and by making "syntax" recognize and handle
references to pattern variables.
references: + Robert Hieb, R. Kent Dybvig, and Carl Bruggeman "Syntactic
Abstraction in Scheme", IUCS TR #355, 6/92 (revised 7/3/92)
+ R. Kent Dybvig, "Writing Hygienic Macros in Scheme with
Syntax-Case", IUCS TR #356, 6/92 (revised 7/3/92).
ports: Chez Scheme
updated: 1992/07/06

language: Scheme
package: x-scm
version: ?
parts: ?
author: Larry Campbell
how to get: alt.sources archive
description: x-scm is a bolt-on accessory for the "scm" Scheme interpreter
that provides a handy environment for building Motif and
OpenLook applications. (There is some support as well for raw
Xlib applications, but not enough yet to be useful.)
requires: scm, X
ports: ?
updated: 1992/08/10

language: Scheme, Prolog
package: "Paradigms of AI Programming"
version: ?
parts: book with interpreters and compilers in Common Lisp
author: Peter Norvig
how to get: bookstore, and ftp pub/norvig/* from
updated: ?

language: Scheme
package: PSD (Portable Scheme Debugger)
version: 1.0
parts: debugger
author: Kellom{ki Pertti
how to get: ftp /pub/src/languages/schemes/psd.tar.Z from
description: source code debugging from emacs
requires: R4RS compliant Scheme, GNU Emacs.
restriction: GNU GPL
updated: 1992/07/10

language: Scheme
package: Tiny Clos
version: first release
how to get: ftp pub/mops/* from
description: A core part of CLOS (Common Lisp Object System) ported to
Scheme and rebuilt using a MOP (Metaobject Protocol).
This should be interesting to those who want to use MOPs
without using a full Common Lisp or Dylan.
ports: MIT Scheme 11.74
discussion: mailing list, mops, administered by [email protected]
contact: Gregor Kiczales
updated: 1992/12/14

langauge: Scheme
package: VSCM
version: 93Jan26
parts: runtime, bytecode compiler
author: Matthias Blume ?
how to get: ftp pub/scheme/imp/vscm93Jan26.tar.Z from nexus.yorku.cs
description: VSCM is an implementation of Scheme based on a virtual machine
written in ANSI C.
conformance: conforms to the R4RS report except non-integral number types
portability: very high
udated: 1993/01/26

language: Scheme
package: PSI
version: pre-release
parts: interpreter, virtual machine
author: Ozan Yigit , David Keldsen, Pontus Hedman
how to get: from author
description: I am looking for a few interested language hackers to play with
and comment on a scheme interpreter. I would prefer those who
have been hacking portable [non-scheme] interpreters for many
years. The interpreter is PSI, a portable scheme interpreter
that includes a simple dag compiler and a virtual machine. It
can be used as an integrated extension interpreter in other
systems, allows for easy addition of new primitives, and it
embodies some other interesting ideas. There are some unique[2]
code debug/trace facilities, as well, acceptable performance
resulting from a fairly straight-forward implementation.
Continuations are fully and portably supported, and perform
well. PSI is based on the simple compilers/vm in Kent
Dbyvig's thesis.
compliance: R^4RS compatible with a number of useful extensions.
updated: 1993/02/19

language: sed
package: GNU sed
version: 1.09
parts: interpreter, ?
author: ?
how to get: ftp sed-1.09.tar.Z from a GNU archive site
contact: ?
updated: 1992/05/31

language: Self
package: Self
version: 2.0
parts: ?, compiler?, debugger, browser
author: The Self Group at Sun Microsystems & Stanford University
how to get: ftp ? from
The Self Group at Sun Microsystems Laboratories,
Inc., and Stanford University is pleased to announce
Release 2.0 of the experimental object-oriented
exploratory programming language Self.
Release 2.0 introduces full source-level debugging
of optimized code, adaptive optimization to shorten
compile pauses, lightweight threads within Self,
support for dynamically linking foreign functions,
changing programs within Self, and the ability to
run the experimental Self graphical browser under
Designed for expressive power and malleability,
Self combines a pure, prototype-based object model
with uniform access to state and behavior. Unlike
other languages, Self allows objects to inherit
state and to change their patterns of inheritance
dynamically. Self's customizing compiler can generate
very efficient code compared to other dynamically-typed
object-oriented languages.
discussion: [email protected]
ports: Sun-3 (no optimizer), Sun-4
contact: ?
updated: 1992/08/13

language: SGML (Standardized Generalized Markup Language)
package: sgmls
version: 1.0
parts: parser
author: James Clark and Charles Goldfarb
how to get: ftp pub/text-processing/sgml/sgmls-1.0.tar.Z from
uk: ftp sgmls/sgmls-1.0.tar.Z from
description: SGML is a markup language standardized in ISO 8879.
Sgmls is an SGML parser derived from the ARCSGML
parser materials which were written by Charles
Goldfarb. It outputs a simple, easily parsed, line
oriented, ASCII representation of an SGML document's
Element Structure Information Set (see pp 588-593
of ``The SGML Handbook''). It is intended to be
used as the front end for structure-controlled SGML
applications. SGML is an important move in the
direction of separating information from its
presentation, i.e. making different presentations
possible for the same information.
ports: unix, msdos
updated: 1992/10/20

language: Simula
package: Lund Simula
version: 4.07
author: ?
how to get: ftp misc/mac/programming/+_Simula/* from
description: ?
contact: Lund Software House AB / Box 7056 / S-22007 Lund, Sweden
updated: 1992/05/22

language: Smalltalk
package: Little Smalltalk
version: 3
author: Tim Budd ?
how to get: ftp pub/budd/? from
ports: unix, pc, atari, vms
status: ?
updated: ?

language: Smalltalk
package: GNU Smalltalk
version: 1.1.1
parts: ?
author: ?
how to get: ftp smalltalk-1.1.1.tar.Z from a GNU archive site
description: ?
discussion: ?
bugs: gnu.smalltalk.bug
contact: ?
updated: 1991/09/15

language: Smalltalk
package: msgGUI
version: 1.0
parts: library
author: Mark Bush
how to get: ftp pub/Packages/mst/mstGUI-1.0.tar.Z from
description: GUI for GNU Smalltalk. This this package contains the basics
for creating window applications in the manner available in
other graphical based Smalltalk implementations.
updated: 1992/12/14

language: Smalltalk
package: Manchester Smalltalk Goodies Library
parts: libraries
how to get: ftp uiuc/st*/* from
uk: ftp uiuc/st*/* from
description: a large collection of libraries for smalltalk
contact: [email protected]
updated: 1992/07/06

language: Smalltalk
package: Mei
version: 0.50
parts: interpreters(Lisp,Prolog), examples, libraries, tools, editor,
author: Atsushi Aoki and others
how to get: ftp pub/goodies/misc/Mei.tar.Z from
us: ftp pub/MANCHESTER/misc/Mei from
jp: ftp pub/lang/smalltalk/mei/Mei0.50.tar.Z from
description: Mei is a set of class libraries for Objectworks Smalltalk
Release 4.1. it includes: 1. Grapher Library (useful for
drawing diagrams); 2. Meta Grapher Library (grapher to develop
grapher); 3. Drawing tools and painting tools (structured
diagram editors and drawing editors); 4. GUI editor (graphical
user interface builder); 5. Lisp interpreter; 6. Prolog
interpreter; 7. Pluggable gauges; 8. Extended browser;
(package, history, recover, etc.)
restriction: Copyleft
requires: Objectworks Smalltalk Release 4.1
contact: Watanabe Katsuhiro
updated: 1993/01/20

language: Snobol4
package: SIL (Macro Implementation of SNOBOL4)
version: 3.11
how to get: ftp snobol4/* from
contact: [email protected]
updated: 1986/07/29

language: Snobol4
package: vinilla
version: ?
author: Catspaw, Inc.
how to get: ftp snobol4/vanilla.arc from
contact: ?
ports: MSDOS
updated: 1992/02/05

language: SR (Synchronizing Resources)
package: sr
version: 2.0
parts: ?, documentation, tests
how to get: ftp sr/sr.tar.Z from
description: SR is a language for writing concurrent programs.
The main language constructs are resources and
operations. Resources encapsulate processes and
variables they share; operations provide the primary
mechanism for process interaction. SR provides a novel
integration of the mechanisms for invoking and
servicing operations. Consequently, all of local and
remote procedure call, rendezvous, message passing,
dynamic process creation, multicast, and semaphores are
reference: "The SR Programming Language: Concurrency in Practice",
by Gregory R. Andrews and Ronald A. Olsson, Benjamin/Cummings
Publishing Company, 1993, ISBN 0-8053-0088-0
contact: [email protected]
discussion: [email protected]
ports: Sun-4, Sun-3, Decstation, SGI Iris, HP PA, HP 9000/300,
NeXT, Sequent Symmetry, DG AViiON, RS/6000, Multimax,
Apollo, and others.
updated: 1992/09/01

language: Standard ML
package: sml2c
version: ?
parts: translator(C), documentation, tests
how to get: ftp /usr/nemo/sml2c/sml2c.tar.Z from
linux: ftp pub/linux/smlnj-0.82-linux.tar.Z from
author: School of Computer Science, Carnegie Mellon University
conformance: superset
+ first-class continuations,
+ asynchronous signal handling
+ separate compilation
+ freeze and restart programs
history: based on SML/NJ version 0.67 and shares front end and
most of its runtime system.
description: sml2c is a Standard ML to C compiler. sml2c is a batch
compiler and compiles only module-level declarations,
i.e. signatures, structures and functors. It provides
the same pervasive environment for the compilation of
these programs as SML/NJ. As a result, module-level
programs that run on SML/NJ can be compiled by sml2c
without any changes. It does not support SML/NJ style
debugging and profiling.
ports: IBM-RT Decstation3100 Omron-Luna-88k Sun-3 Sun-4 386(Mach)
portability: easy, easier than SML/NJ
contact: [email protected] [email protected]
[email protected]
updated: 1991/06/27

language: Standard ML
package: SML/NJ (Standard ML of New Jersey)
version: 0.93
parts: compiler, libraries, extensions, interfaces, documentation,
build facility
author: Lal George ?
how to get: ftp dist/ml/* from
description: Standard ML is a modern, polymorphically typed, (impure)
functional language with a module system that supports flexible
yet secure large-scale programming. Standard ML of New Jersey
is an optimizing native-code compiler for Standard ML that is
written in Standard ML. It runs on a wide range of
architectures. The distribution also contains:
+ an extensive library - The Standard ML of New Jersey Library,
including detailed documentation.
+ CML - Concurrent ML
+ eXene - an elegant interface to X11 (based on CML)
+ SourceGroup - a separate compilation and "make" facility
ports: M68K, SPARC, MIPS, HPPA, RS/6000, I386/486
updated: 1993/02/18

language: TCL (Tool Command Language)
package: TCL
version: 6.3
parts: interpreter, libraries, tests, documentation
how to get: ftp tcl/tcl6.3.tar.Z from
msdos: ftp ? from
macintosh: ftp pub/ticl from
author: John Ousterhout
description: TCL started out as a small language that could be
embedded in applications. It has now been extended
into more of a general purpose shell type programming
language. TCL is like a text-oriented Lisp, but lets
you write algebraic expressions for simplicity and to
avoid scaring people away.
+ may be used as an embedded interpreter
+ exceptions, packages (called libraries)
- only a single name-space
+ provide/require
- no dynamic loading ability
? - arbitrary limits ?
- three variable types: strings, lists, associative arrays
bugs: ?
discussion: comp.lang.tcl
ports: ?
updated: 1992/05/14

language: TCL
package: BOS - The Basic Object System
version: 1.31
parts: library
author: Sean Levy
how to get: ftp tcl/? from
description: BOS is a C-callable library that implements the
notion of object and which uses Tcl as its interpreter
for interpreted methods (you can have "compiled"
methods in C, and mix compiled and interpreted
methods in the same object, plus lots more stuff).
I regularly (a) subclass and (b) mixin existing
objects using BOS to extend, among other things,
the set of tk widgets (I have all tk widgets wrapped
with BOS "classes"). BOS is a class-free object
system, also called a prototype-based object system;
it is modeled loosely on the Self system from
updated: 1992/08/21

language: TCL
package: Wafe
version: 0.94
parts: interface
author: Gustaf Neumann
how to get: ftp pub/src/X11/wafe/wafe-0.94.tar.Z from
description: Wafe (Widget[Athena]front end) is a package that implements
a symbolic interface to the Athena widgets (X11R5) and
OSF/Motif. A typical Wafe application consists of two
parts: a front-end (Wafe) and an application program which
runs typically as a separate process. The distribution
contains sample application programs in Perl, GAWK, Prolog,
TCL, C and Ada talking to the same Wafe binary.
discussion: send "subscribe Wafe " to [email protected]
updated: 1993/02/13

language: TCL
package: Cygnus Tcl Tools
version: Release-930124
author: David D 'zoo' Zuhn
how to get: ftp pub/tcltools-* from
description: a rebundling of Tcl and Tk into the Cyngus GNU build
framework with 'configure'.
updated: 1993/01/24

language: Tiny
package: Omega test, Extended Tiny
version: 3.0.0
parts: translator(fortran->tiny), tiny interpreter?, analysis tools
author: William Pugh and others
how to get: ftp pub/omega from
description: The Omega test is implemented in an extended version of
Michael Wolfe's tiny tool, a research/educational tool
for examining array data dependence algorithms and
program transformations for scientific computations.
The extended version of tiny can be used as a
educational or research tool. The Omega test: A system
for performing symbolic manipulations of conjunctions
of linear constraints over integer variables. The
Omega test dependence analyzer: A system built on top
of the Omega test to analyze array data dependences.
contact: [email protected]
updated: 1992/12/14

Name; Extended Tiny
Package: Extended Tiny
Version: 3.0 (Dec 12th, 1992)
parts: programming environment, dependence tester, tests
translator(Fortran->tiny), documentation, tech. reports
author: original author: Michael Wolfe ,
extended by William Pugh et al.
how to get: ftp pub/omega from
description: A research/educational tool for experimenting with
array data dependence tests and reordering transformations.
It works with a language tiny, which does not have procedures,
goto's, pointers, or other features that complicate dependence
testing. The original version of tiny was written by Michael
Wolfe, and has been extended substantially by a research group
at the University of Maryland. Michael Wolfe has made further
extensions to his version of tiny.
contact: Omega test research group
ports: Any unix system (xterm helpful but not required)
updated: 1993/01/23

language: UNITY
package: MasPar Unity
version: ?
parts: ?
author: ?
how to get: ftp pub/maspar/maspar_unity* from
contact: Lutz Prechelt ?
updated: ?

language: UNITY
package: HOL-UNITY
version: 2.1
parts: verification tool
how to get: ?
contact: Flemming Andersen ?

language: Verilog, XNF
package: XNF to Verilog Translator
version: ?
parts: translator(XNF->Verilog)
author: M J Colley
how to get: ftp pub/dank/xnf2ver.tar.Z from
description: This program was written by a postgraduate student as part
of his M.Sc course, it was designed to form part a larger
system operating with the Cadence Edge 2.1 framework. This
should be bourne in mind when considering the construction
and/or operation of the program.
updated: ?

language: Web
package: web2c
version: ?
parts: translator(C)
how to get: ftp ? from
description: A version of tangle that outputs C code
contact: ?
updated: ?

language: Web
package: Web
version: ?
parts: translator(Pascal)
author: Donald Knuth
how to get: ftp ? from
description: Donald Knuth's programming language where you
write the source and documentation together.
contact: ?
updated: ?

------------------------------ archives ---------------------------------------

language: APL, J
package: APL, J, and other APL Software at Waterloo
parts: ftp archive
how to get: ftp languages/apl/index from
contact: Leroy J. (Lee) Dickey

language: lisp
package: MIT AI Lab archives
description: archive of lisp extensions, utilities, and libraries
how to get: ftp pub/* from
contact: ?

language: lisp
package: Lisp Utilities collection
how to get: ftp /afs/ from
contact: [email protected]

language: Scheme
package: The Scheme Repository
description: an archive of scheme material including a bibliography,
the R4RS report, sample code, utilities, and implementations.
how to get: ftp pub/scheme/* from
contact: Ozan S. Yigit

language: C, C++, Objective C, yacc, lex, postscript,
sh, awk, smalltalk, sed
package: the GNU archive sites
description: There are many sites which mirror the master gnu archives
which live on Please do not use
the master archive without good reason.
how to get: pub/gnu/* from
USA: ftp mirrors4/gnu/* from
ftp pub/src/gnu/* from
ftp gnu/* from
ftp mirrors/gnu/* from
ftp pub/GNU/* from
ftp packages/gnu/* from
Japan: ftp ? from
ftp ftpsync/prep/* from
Australia: ftp gnu/* from
Europe: ftp gnu/* from
ftp pub/GNU/*/* from [re-org'ed]
ftp pub/gnu/* from
ftp pub/gnu/* from
ftp pub/gnu/* from
ftp pub/gnu/* from
ftp pub/gnu/* from
ftp pub/gnu/* from [re-org'ed]
ftp pub/gnu/* from
ftp pub/gnu/* from
ftp software/gnu/* from
ftp gnu/* from [re-org'ed]

----------------------------- references --------------------------------------

name: Catalog of embeddable Languages.
author: Colas Nahaboo
how to get: posted to comp.lang.misc,comp.lang.tcl
description: Descriptions of languages from the point of view of
embedding them.
version: 2
updated: 1992/07/09

name: Compilers bibliography
author: Cheryl Lins
how to get: ftp pub/oberon/comp_bib_1.4.Z from
description: It includes all the POPLs, PLDIs, Compiler Construction,
TOPLAS, and LOPAS. Plus various articles and papers from
other sources on compilers and related topics
version: 1.4
updated: 1992/10/31

name: Language List
author: Bill Kinnersley
how to get: posted regularly to comp.lang.misc
description: Descriptions of almost every computer langauge there is.
Many references to available source code.
version: 1.7 ?
updated: 1992/04/05

name: Survey of Interpreted Languages
author: Terrence Monroe Brannon
how to get: Posted to comp.lang.tcl,comp.lang.misc,comp.lang.perl,,news.answers; or ftp
description: Detailed comparision of a few interpreters: Emacs Lisp,
Perl, Python, and Tcl.
version: ?
updated: ?

name: The Apple II Programmer's Catalog of Languages and Toolkits
author: Larry W. Virden
description: a survey of language tools availabe for the Apple ][.
how to get: posted to comp.sys.apple2, comp.lang.misc
version: 1.5
updated: 1993/01/29