ú Subject: Catalog of compilers, interpreters, and other language tools [p1of Archive-name: free-compilers/part1 Last-modified: 1993/02/20 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 idiom.berkeley.ca.us. Be nice to my SLIP link. 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: ABCL/1 ABCL [2] ABCLR ABCLR2 ADL Adventure Definition Language [2] ALLOY ALLOY [2] APL, TeX APLWEB 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) PCN PCN 2.0 RLaB language RLaB Scheme Hobbit Scheme->C compiler Scheme PSI Smalltalk Mei 0.50 UNITY maspar_unity UNITY HOL-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!) edits: Lisp XLISP [1] Common Lisp AKCL [1] Common Lisp KCL [1] Common Lisp CLISP [1] deleted: 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 references ---------- ----------------------- selected blanks (you fill in) ------------------------- package ------- '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 mcsun.eu.net or ftp.eu.net 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: abc@cwi.nl 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 camille.is.s.u-tokyo.ac.jp 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: abcl@is.s.u-tokyo.ac.jp updated: 1990/05/23 language: ABCL ??? package: ABCL/R2 version: ? author: masuhara@is.s.u-tokyo.ac.jp, matsu@is.s.u-tokyo.ac.jp, takuo@is.s.u-tokyo.ac.jp, yonezawa@is.s.u-tokyo.ac.jp how to get: ftp pub/abclr2/* from camille.is.s.u-tokyo.ac.jp 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 cnam.cnam.fr 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 primost.cs.wisc.edu or mail to compilers-server@iecc.cambridge.ma.us contact: masticol@dumas.rutgers.edu 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 wsmr-simtel20.army.mil 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 from wsmr-simtel20.army.mil contact: ? updated: 1991/02/01 language: Ada package: Paradise version: 2.0 parts: library how to get: ftp pub/Ada/Paradise from cnam.cnam.fr 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: paradise-info@cnam.cnam.fr updated: 1992/09/30 language: ADL (Adventure Definition Language) package: ADL parts: interpreter author: Ross Cunniff , Tim Brengle how to get: comp.sources.games 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 cs.nyu.edu 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 think.com updated: 1991/03/04 language: APL package: I-APL how to get: ftp languages/apl/* from watserv1.waterloo.edu 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 watserv1.uwaterloo.ca 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 csd4.csd.uwm.edu 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 ftp.cns.ox.ac.uk 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 duke.cs.duke.edu 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 wsmr-simtel20.army.mil 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 from wuarchive.wustl.edu. 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 ftp.syd.dit.csiro.au 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 qusuna.qucis.queensu.ca 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 csczar.ncsu.edu 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 actions. 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, tutorial author: Terence J. Parr , Will E. Cohen @DATAPHONE@ , Henry G. Dietz how to get: ftp pub/pccts/1.06 from marvin.ecn.purdue.edu uk: ftp /comput*/progra*/langu*/tools/pccts/* from src.doc.ic.ac.uk 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 csczar.ncsu.edu ? 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 ftp.gmd.de msdos: ftp pub/cocktail/dos from ftp.karlsruhe.gmd.de description: ? requires: DJ Delorie's DOS extender (go32) ports: msdos, unix, maybe os/2 contact: ? msdos: grosch@karlsruhe.gmd.de 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 st.cs.uiuc.edu 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 ftp.cs.colorado.edu 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. discussion: @DATAPHONE@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 actions. 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 flubber.cs.umd.edu 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: bug-gnu-utils@prep.ai.mit.edu 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 ucbarpa.berkeley.edu 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 @DATAPHONE@ , Todd A. Proebsting how to get: ftp pub/iburg.tar.Z from ftp.cs.princeton.edu 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 export.lcs.mit.edu ? unofficial: unofficial enhancements by Rod Armstrong , available by ftp misc/unix/ups/contrib/rob from sj.ate.slb.com 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: ups-users-request@ukc.ac.uk 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 princeton.edu 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: lcc-requests@princeton.edu 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 cs.uiuc.edu description: GCT is test-coverage tool based on GNU C. Coverage tools measure how thoroughly a test suite exercises a program. restriction: CopyLeft discussion: Gct-Request@cs.uiuc.edu 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 archive.umich.edu 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 iamsun.unibe.ch 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 cs.utexas.edu 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 ftp.uu.net ? 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 ftp.cs.uni-sb.de 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 ftp.win.tue.nl 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 ics.uci.edu 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 ftp-os2.nmsu.edu 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 nuri.inria.fr ? status: ? discussion: ? ports: Sun-3 Sun-4 Sony-68k Sony-R3000 Decstation Mac-A/UX Apollo portability: ? @DATAPHONE@bugs: weis@margaux.inria.fr or caml@margaux.inria.fr updated: ? language: Caml Light package: Caml Light version: 0.4 how to get: ftp lang/caml-light/* from nuri.inria.fr 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 cs.arizona.edu 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: info-scorpion-request@cs.arizona.edu contact: scorpion-project@cs.arizona.edu 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/cs.cmu.edu/project/clisp/release/16f-source.tar.Z from ftp.cs.cmu.edu. 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: slisp@cs.cmu.edu 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 parcftp.xerox.com 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 sunrise.stanford.edu 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 contact: discussion: 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 rascal.ics.utexas.edu ? 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: kcl-request@cli.com bugs: kcl@cli.com 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 rascal.ics.utexas.edu 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 export.lcs.mit.edu description: Common Lisp binding for X contact: ? ports: ?, CMU Common Lisp bugs: bug-clx@expo.lcs.mit.edu updated: 1992/08/26 language: Common Lisp package: CLISP version: ? parts: interpreter, translator?, library, editor @DATAPHONE@author: Bruno Haible how to get: ftp pub/mcl2/contrib/Cartiers* from cambridge.apple.com 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 archive.cs.umbc.edu 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 ftp.gmd.de usa: ftp contrib/? from export.lcs.mit.edu 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 processes. ports: Franz Allegro, Lucid, CMU CL and Symbolics Genera discussion: gina-users-request@gmdzi.gmd.de 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 ftp.cs.kun.nl 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 language. * lazy and purely functional * strongly typed - based on Milner/Mycroft scheme * module structure * modern I/O * programmer-infulenced evaluation order by annotations contact: clean@cs.kun.nl 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 ftp.spc.edu 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 gatekeeper.pa.dec.com author: Matt Birkholz , Jim Miller 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 ic.berkeley.edu 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 edif.cs.man.ac.uk 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 ftp.fu-berlin.de 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 ftp.bath.ac.uk 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 xcf.berkeley.edu 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 archive.umich.edu 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 oddjob.uchicago.edu 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 netlib@research.att.com bugs: dmg@research.att.com 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 ftp.gmd.de 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 zebra.desy.de 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: burow@vxdesy.cern.ch 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 a.gp.cs.cmu.edu description: ? contact: ? updated: ? language: Garnet package: Multi-Garnet version: 2.1 how to get: ftp /usr/garnet/alpha/src/contrib/multi-garnet from a.gp.cs.cmu.edu 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 nebula.cs.yale.edu uk: pub/Packages/Gofer from ftp.comlab.ox.ac.uk 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 animal.cs.chalmers.se 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 nebula.cs.yale.edu uk: ftp pub/haskell/glasgow/* from ftp.dcs.glasgow.ac.uk se: ftp pub/haskell/glasgow/* from animal.cs.chalmers.se 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 bugs: contact: 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 software.watson.ibm.com 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) discussion: comp.lang.hermes updated: 1992/03/22 language: Hope package: ? parts: ? how to get: ftp ? from brolga.cc.uq.oz.au 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 extro.ucc.su.oz.au 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 cs.arizona.edu 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 characters. - 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: icon-project@cs.arizona.edu 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 omg.org 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: idl-cfe@sun.com 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 watserv1.waterloo.edu 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 cs.arizona.edu 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 cs.arizona.edu 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: jc-bugs@cs.arizona.edu discussion: janusinterest-request@parc.xerox.com 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 ursamajor.uvic.ca 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-interest@ursamajor.uvic.ca 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 info.mcs.anl.gov 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 simulation. ports: (workstation nets): Sun4, NeXT, RS/6000, SGI (multicomputers): iPSC/860, Touchstone DELTA (shared memory multiprocessors): Symmetry/Dynix contact: 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 hubcap.clemson.edu 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 ftp.irisa.fr 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 from ftp.irisa.fr ports: unix discussion: prolog-mali-request@irisa.fr contact: pm@irisa.fr 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 evans.ee.adfa.oz.au 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 array. 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 aditi@cs.mu.oz.au 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 contact: updated: 1992/12/17 language: prolog (variant) package: CORAL version: ? parts: interpreter, interface(C++), documentation author: ? how to get: ftp ? from ftp.cs.wisc.edu 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 ftp.ee.lbl.gov 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 gatekeeper.dec.com. 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: life-request@prl.dec.com bugs: life-bugs@prl.dec.com 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/cs.cmu.edu/user/mkant/Public/Lisp on ftp.cs.cmu.edu 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 wasp.eng.ufl.edu usmail: contact Tom Almy windows: ftp util/wxlslib.zip from ftp.cica.indiana.edu version2.0: ftp pub/xlisp/* from cs.orst.edu 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: franz-friends-request@berkeley.edu 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 cher.media.mit.edu 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 anarres.cs.berkeley.edu 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 ftp.cis.upenn.edu 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 once. 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 ftp.utas.edu.au 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? --muir] 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 contact: updated: 1992/12/15 language: ML package: LML version: ? parts: compiler(?), interactive environment how to get: ftp ? from animal.cs.chalmers.se 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 Pascal. 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 gatekeeper.dec.com restriction: must pass changes back to Digital ports: vax (ultrix, bsd), mips (ultrix) contact: modula-2@decwrl.pa.dec.com 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 ftp.psg.com 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 gatekeeper.dec.com 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 from rusmv1.rus.uni-stuttgart.de author: ? description: ? ports: ? updated: 1991/10/25 language: Modula2, Pascal package: ?? metro ?? version: ? beta parts: ? how to get: ftp from mips1.info.uqam.ca 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 scam.berkeley.edu description: a left-associative natural language grammar scanner bugs: proof@xcf.berkeley.edu discussion: proof-request@xcf.berkeley.edu ("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 oxy.edu 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/cs.cmu.edu/user/bap/oak/ftpable/* from f.gp.cs.cmu.edu 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: Pearlmutter-Barak@CS.Yale.Edu ? 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 neptune.inf.ethz.ch MSDOS: ftp Oberon/DOS386/* from neptune.inf.ethz.ch macintosh: ??? same package or different ??? ftp /mac/development/languages/macoberon2.40.sit.hqx from archive.umich.edu 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 MSDOS contact: Leuthold@inf.ethz.ch updated: 1992/07/20 language: Oberon2 package: Oberon-2 LEX/YACC definition version: 1.4 parts: parser(yacc), scanner(lex) how to get: mail bevan@cs.man.ac.uk 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/cs.cmu.edu/user/mkant/Public/Lisp/ops5* from ftp.cs.cmu.edu 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 ftp.informatik.uni-stuttgart.de 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 nuri.inria.fr 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 cs.orst.edu ? 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 jpl-devvax.jpl.nasa.gov OS/2 port: ftp pub/os2/all/unix/prog*/perl4019.zip from hobbes.nmsu.edu Mac port: ftp software/mac/src/mpw_c/Mac_Perl_405_* from nic.switch.ch Amiga port: ftp perl4.035.V010.* from wuarchive.wustl.edu VMS port: ftp software/vms/perl/* from ftp.pitt.edu Atari port: ftp amiga/Languages/perl* from atari.archive.umich.edu DOS port: ftp pub/msdos/perl/* from ftp.ee.umanitoba.ca 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 ftp.sterling.com 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 sbcs.sunysb.edu description: ? contact: ? warren@sbcs.sunysb.edu ? restriction: ? CopyLeft ? updated: 1992/09/16 language: prolog package: swi-prolog version: 1.6.5 author: Jan Wielemaker how to get: ftp ftp from swi.psy.uva.nl [192.42.96.1] 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: prolog-request@swi.psy.uva.nl updated: 1992/09/29 language: Prolog package: Frolic version: ? how to get: ftp pub/frolic.tar.Z from cs.utah.edu 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 cpsc.ucalgary.ca description: + delayed goals + interval arithmetic requires: Scheme portability: reliese on continuations contact: ? updated: ? language: Prolog package: ? slog ? version: ? parts: translator(Scheme) author: dorai@cs.rice.edu how to get: ftp public/slog.sh from titan.rice.edu 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 sics.se requires: ZetaLisp contact: ? updated: ? language: Prolog package: ISO draft standard parts: language definition how to get: ftp ? from ftp.th-darmstadt.de 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 ftp.cwi.nl america: ftp pub/? from wuarchive.wustl.edu 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: python-list-request@cwi.nl 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 flash.bellcore.com 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 arexx.uwaterloo.ca or ftp ? from flipper.pvv.unit.no 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 arexx.uwaterloo.ca or ftp ? from tony.cat.syr.edu 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 neat.cs.toronto.edu 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 ftp.icsi.berkeley.edu europe: ftp pub/Sather/* from gmdzi.gmd.de aus: ftp world/sather/* from lynx.csis.dit.csiro.au japan: ftp pub/lang/sather/* from sra.co.jp 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: sather-request@icsi.berkeley.edu bugs: sather-admin@icsi.berkeley.edu status: actively developed. updated: 1992/07/06 language: Scheme package: Schematik version: 1.1.5.1 parts: programming environment author: Chris Kane, Max Hailperin how to get: ftp /pub/next/scheme/* from ftp.gac.edu europe: ftp /pub/next/ProgLang from ftp.informatik.uni-muenchen.de 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: schematik@gac.edu updated: 1992/07/10 language: Scheme package: T version: 3.1 parts: compiler author: ? how to get: ftp pub/systems/t3.1 from ftp.ai.mit.edu description: a Scheme-like language developed at Yale. T is written in itself and compiles to efficient native code. (A multiprocessing version of T is available from masala.lcs.mit.edu:/pub/mult) ports: Decstation, Sparc, sun-3, Vax(unix), Encore, HP, Apollo, Mac (A/UX) contact: t-project@cs.yale.edu. bugs: t3-bugs@cs.yale.edu 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 altdorf.ai.mit.edu canada: ftp pub/oz/scheme/new from nexus.yorku.ca 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 altdorf.ai.mit.edu 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 world.std.com 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 altdorf.ai.mit.edu 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: bug-cscheme@zurich.ai.mit.edu discussion: info-cscheme@zurich.ai.mit.edu (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 gatekeeper.dec.com documentation: send Subject "help" to WRL-Techreports@decwrl.dec.com 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 altdorf.ai.mit.edu 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 trex.iro.umontreal.ca 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 tub.cs.tu-berlin.de usa: ftp contrib/elk-2.0.tar.Z from export.lcs.mit.edu 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 nexus.yorku.ca 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 scam.berkeley.edu 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 1-812-335-9770. description: ? requires: VAX, Franz Lisp, VMS or BSD contact: nlg@indiana.edu updated: ? language: Scheme package: Scheme88 version: ? parts: ? how to get: ftp pub/scheme/* from nexus.yorku.ca contact: ? updated: ? language: Scheme package: UMB Scheme version: ? parts: ?, editor, debugger author: William Campbell how to get: ftp pub/scheme/* from nexus.yorku.ca 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: info-clscheme-request@mc.lcs.mit.edu updated: ? language: Scheme package: Similix version: ? parts: partial evaulator, debugger how to get: ftp misc/Similix.tar.Z from ftp.diku.dk 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 altdorf.ai.mit.edu description: SLIB is a portable scheme library meant to provide compatibiliy and utility functions for all standard scheme implementations. 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 iuvax.cs.indiana.edu 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 unix.sri.com 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 cs.tut.fi 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 parcftp.xerox.com 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 gregor@parc.xerox.com 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 self.stanford.edu 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 OpenWindows. 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: self-request@self.stanford.edu 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 ftp.uu.net uk: ftp sgmls/sgmls-1.0.tar.Z from sgml1.ex.ac.uk 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 rascal.ics.utexas.edu 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 cs.orst.edu 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 ftp.comlab.ox.ac.uk 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 st.cs.uiuc.edu uk: ftp uiuc/st*/* from mushroom.cs.man.ac.uk description: a large collection of libraries for smalltalk contact: goodies-lib@cs.man.ac.uk updated: 1992/07/06 language: Smalltalk package: Mei version: 0.50 parts: interpreters(Lisp,Prolog), examples, libraries, tools, editor, browser author: Atsushi Aoki and others how to get: ftp pub/goodies/misc/Mei.tar.Z from mushroom.cs.man.ac.uk us: ftp pub/MANCHESTER/misc/Mei from st.cs.uiuc.edu jp: ftp pub/lang/smalltalk/mei/Mei0.50.tar.Z from srawgw.sra.co.jp 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 cs.arizona.edu contact: snobol4@arizona.edu updated: 1986/07/29 language: Snobol4 package: vinilla version: ? author: Catspaw, Inc. how to get: ftp snobol4/vanilla.arc from cs.arizona.edu 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 cs.arizona.edu 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 supported. 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: sr-project@cs.arizona.edu discussion: info-sr-request@cs.arizona.edu 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 dravido.soar.cs.cmu.edu linux: ftp pub/linux/smlnj-0.82-linux.tar.Z from ftp.dcs.glasgow.ac.uk 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 @NUMCALLS@@TIMELEFT@@TIMELIMIT@@UPFILES@@UPBYTES@@INCONF@@LASTTIMEON@@SECURITY@@ peter.lee@cs.cmu.edu 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 research.att.com 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 sprite.berkeley.edu msdos: ftp ? from cajal.uoregon.edu macintosh: ftp pub/ticl from bric-a-brac.apple.com 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 barkley.berkeley.edu 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 Stanford. 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 ftp.wu-wien.ac.at 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 listserv@wu-wien.ac.at 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 cygnus.com 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 ftp.cs.umd.edu 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: omega@cs.umd.edu 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 cs.umd.edu 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 SanFrancisco.ira.uka.de 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 punisher.caltech.edu 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 ftp.cs.umb.edu 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 labrea.stanford.edu 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 watserv1.waterloo.edu 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 ftp.ai.mit.edu contact: ? language: lisp package: Lisp Utilities collection how to get: ftp /afs/cs.cmu.edu/user/mkant/Public/Lisp from ftp.cs.cmu.edu contact: cl-utilities-request@cs.cmu.edu 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 nexus.yorku.ca 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 prep.ai.mit.edu. Please do not use the master archive without good reason. how to get: pub/gnu/* from prep.ai.mit.edu USA: ftp mirrors4/gnu/* from wuarchive.wustl.edu ftp pub/src/gnu/* from ftp.cs.widener.edu ftp gnu/* from uxc.cso.uiuc.edu ftp mirrors/gnu/* from col.hp.com ftp pub/GNU/* from gatekeeper.dec.com ftp packages/gnu/* from ftp.uu.net Japan: ftp ? from ftp.cs.titech.ac.jp ftp ftpsync/prep/* from utsun.s.u-tokyo.ac.jp Australia: ftp gnu/* from archie.au Europe: ftp gnu/* from src.doc.ic.ac.uk ftp pub/GNU/*/* from ftp.informatik.tu-muenchen.de [re-org'ed] ftp pub/gnu/* from ftp.informatik.rwth-aachen.de ftp pub/gnu/* from nic.funet.fi ftp pub/gnu/* from ugle.unit.no ftp pub/gnu/* from isy.liu.se ftp pub/gnu/* from ftp.stacken.kth.se ftp pub/gnu/* from sunic.sunet.se [re-org'ed] ftp pub/gnu/* from ftp.win.tue.nl ftp pub/gnu/* from ftp.diku.dk ftp software/gnu/* from ftp.eunet.ch ftp gnu/* from archive.eu.net [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 ftp.apple.com 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 ? name: Survey of Interpreted Languages author: Terrence Monroe Brannon how to get: Posted to comp.lang.tcl,comp.lang.misc,comp.lang.perl, gnu.emacs.help,news.answers; or ftp pub/gnu/emacs/elisp-ar*/pack*/Hy*Act*F*/survey-inter*-languages from archive.cis.ohio-state.edu. 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