| These are the languages that were either designed by Niklaus Wirth or are descended from them. |
| Pascal | |
| ? iso_pascal ? | |
| ? | |
| scanner(lex), parser(yacc) | |
| ? | |
| comp.sources.unix archive volume 13 | |
| ? | |
| ? |
| Oberon | |
| Ceres workstation Oberon System | |
| ? | |
| compiler | |
| ? | |
| ftp://neptune.ethz.ch/Oberon/? | |
| file format is Oberon, binary header | |
| The sources to the various _full_ implementations are indeed not available but the source to most of the complete Ceres workstation Oberon System, including NS32032 code generator but less low level system specific is available. This includes the complete Oberon compiler written in Oberon. | |
| ? |
| IFP (Illinois Functional Programming) | |
| ifp | |
| 0.5 | |
| interpreter | |
| Arch D. Robison <robison@shell.com> | |
| comp.sources.unix archive volume 10 | |
| A variant of Backus' "Functional Programming" language with a syntax reminiscent of Modula-2. The interpreter is written in portable C. | |
|
Arch D. Robison, "Illinois Functional Programming: A
Tutorial," BYTE, (February 1987), pp. 115--125.
Arch D. Robison, "The Illinois Functional Programming Interpreter," Proceedings of 1987 SIGPLAN Conference on Interpreters and Interpretive Techniques, (June 1987), pp. 64-73 | |
| Unix, MS-DOS, CTSS (Cray) | |
| ? |
| Modula-2* (parallel extension) | |
| IPD Modula-2* Programming Environment | |
| 9401 | |
| translator (->C), debugger (SUN4 only), X Windows user panel, automatic cross-architecture make, sequential and parallel libraries, examples, documentation | |
| IPD Modula-2* team <msc@ira.uka.de> consisting of the following kernel contributors: Thomas Gauweiler, Stefan U. Haenssgen, Ernst A. Heinz, Paul Lukowicz, Hendrik Mager, Michael Philippsen. | |
| ftp://ftp.ira.uka.de/pub/programming/modula2star/ | |
|
Modula-2* is an extension of Modula-2 for highly parallel,
portable programs. IPD Modula-2* is provided freely for
research, educational and classroom use. A complete sequential
Modula-2 environment in provided complemented with a set of
parallel libraries, which even include routines for
implementing low-level parallel operations. The employment of
of C translator allows increased accessibility to actual
parallel machines (many have nothing lower-level than C), at
the expense of Modula-2 features of arrays bounds checking
and symbolic debugging at the Modula-2* level.
[An interpreter could be written with functionality subsuming that of a symbolic debugger. -- Mark] | |
| PIM but not ISO compliant | |
|
J.R. Smith. "The design and analysis of parallel
algorithms. Chapter 3: Modula-2*." Oxford University
Press, December 1992.
M. Philippsen, E.A. Heinz, and P. Lukowicz. "Compiling machine-independent parallel programs." ACM SIGPLAN Notices, v. 28, no. 8, pp. 99-108, August 1993. M. Philippsen, T.M. Warschko, W.F. Tichy, C.G. Herter, E.A. Heinz, and P. Lukowicz. "Project Triton: Towards improved programmability of parallel computers." In D.J. Lija and P.L. Bird (eds), The Interaction of Compilation Technology and Computer Architecture, Kluwer Academic Publishers, 1994. Others available from ftp://i41s10.ira.uka.de/pub/m2s/*.ps | |
|
386 and above with BSDI/386 or Linux (sequential),
KSR-1/KSR-2 with KSR-OS (sequential and parallel),
DECStation (R3000/R4000) with Ultrix (sequential),
MP-1/MP-2 (DECStation frontend) with MP-Ultrix (parallel)
SUN (Sun-3, Sun-4 SPARCStation) with SunOS (sequential), | |
| sources are for GMD Mocka Modula-2 compiler | |
| supported | |
| ??? |
| Oberon-2 | |
| Jacob | |
| 0 | |
| compiler, library, documentation, examples | |
| Max Spring <sepp@cs.tu-berlin.de>, Ralf Bauer <nathan@cs.tu-berlin.de> | |
| ftp://sunsite.unc.edu/pub/Linux/devel/lang/oberon/jacob-v0* ftp://ftp.cs.tu-berlin.de/pub/linux/Local/compilers/oberon/jacob-v0* | |
| Jacob compiles Oberon-2 to 386 GNU Assembler code. | |
| Oberon-2 as defined in "The Programming Language Oberon-2" from H.Moessenboeck, N. Wirth, March 1995 | |
| "Read Me" http://www.cs.tu-berlin.de/~sepp/jacob/jacob.html "The Programming Language Oberon-2" ftp://ftp.inf.ethz.ch/pub/Oberon/Docu/Oberon2.Report.ps.gz | |
| |
| report bugs to sepp@cs.tu-berlin.de | |
| none | |
| GNU assembler | |
| Linux (386) | |
| First public release | |
| comp.lang.oberon | |
| contact the authors | |
| Max Spring <sepp@cs.tu-berlin.de> | |
| September 12th, 1995 |
| Cantata - Extensible Visual Programming Language | |
| Khoros | |
| 2.2 | |
| Composer, Ghostwriter, Source Configuration & Management, Animate, Editimage, Xprism, Viewimage. See features for more details. | |
| Khoros is an integrated software development environment for information processing and visualization, based on the X Windows System. | |
| Khoral Research Inc | |
|
Rasure and Kubica, "The Khoros Application Development
Environment", Experimental Environments for Computer Vision
and Image Processing, editor H.I Christensen and J.L Crowley,
World Scientific 1994.
Konstantinides and Rasure, "The Khoros Software Development Environment For Image And Signal Processing", IEEE Transactions on Image Processing, VOL. 3, No. 3 May 1994, pp. 243-252. Rasure, Williams, Argiro, and Sauer, "A Visual Language and Software Development Environment for Image Processing", International Journal of Imaging Systems and Technology, Vol. 2, pp 183-199 (1990) Man pages included with software distribution. | |
| |
| k2-xvapp-bugs-FAQ, k2-xvlib-bugs-FAQ | |
| Free access to Khoros, but not in the public domain. The software is owned by Khoral Research, Inc., and does carry a License and Copyright. While Khoros may be used by any organization free of charge, it can not be distributed without a license. All users of the system should register with Khoral Research and agree to abide by the Free Access License terms and conditions. | |
| gzip, C Compiler, X (R11), lex/yacc | |
| comp.soft-sys.khoros | |
| Many Un*x ports | |
| Khoros Consortium, ftp://ftp.khoral.com/pub/khoros/FAQ ftp://ftp.khoral.com/pub/khoros2.0/manual | |
| http://ftp.khoros.unm.edu/ | |
| ? |
| Modula-2, Pascal | |
| m2 | |
| ? 7/2/92 ? | |
| ? compiler ? | |
| Michael L. Powell. See description below. | |
| ftp://gatekeeper.dec.com/pub/DEC/Modula-2/m2.tar.Z | |
| 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. It was originally designed and built by Michael L. Powell, in 1984. Joel McCormack made it faster, fixed lots of bugs, and swiped/wrote a User's Manual. Len Lattanzi ported it to the MIPS. | |
extensions:
| |
| must pass changes back to Digital | |
| vax (ultrix, bsd), mips (ultrix) | |
| modula-2@decwrl.pa.dec.com | |
| July 6th, 1992 |
| Modula-2 | |
| m2c | |
| 0.6 | |
| Modula-2 to C translator | |
| Vladimir N. Makarov <vmakarov@usa.net> | |
| http://www.geocities.com/SiliconValley/Lab/4557 | |
| A modula-2 translator to C. | |
| The translator is based on language report in the 4th edition of Wirth's book Programming in Modula-2. The translator also supports of the third edition of Wirth's book. | |
| Unix | |
| very high (GNU configure) | |
| Vladimir N. Makarov <vmakarov@usa.net> | |
| Vladimir N. Makarov <vmakarov@usa.net> | |
| January 5th, 1998 |
| Modula-2, Modula-3 | |
| m2tom3 | |
| 2.00 | |
| Translator (Modula-2->Modula-3), Modula-2 standard library emulation | |
| Peter Klein <pk@i3.informatik.rwth-aachen.de> | |
| ftp://ftp-i3.informatik.rwth-aachen.de/pub/Modula-3-Contrib/m2tom3/m2tom3-2.00.tar.gz | |
|
m2tom3 is a system to port Modula-2 programs to Modula-3.
It consists of two parts:
1) A conversion program which tries to create a Modula-3
source text with the same semantics as the Modula-2 input
while retaining the original look and feel as good as possible.
2) A base library which tries to emulate the Modula-2 standard
library using the Modula-3 standard library.
This version performs a wide range of conversions including WITH-statements, variant RECORDS, qualification of enumeration type literals etc. For a detailed description, see the enclosed README file. | |
| DEC SRC Modula-3 release 3.3 | |
| <pk@i3.informatik.rwth-aachen.de> | |
| comp.lang.modula2, comp.lang.modula3 | |
| <pk@i3.informatik.rwth-aachen.de> | |
| November 30th, 1994 |
| Modula-2 | |
| mocka | |
| 9404 | |
| compiler, library, examples, docs | |
| ? Holger Hopp <hopp@ira.uka.de> | |
| ftp://i44.s10.ira.uka.de/pub/mocka/linux/mocka9404* ftp://sunsite.unc.edu/pub/Linux/devel/modula-2/mocka9404* | |
| A free version of a Modula-2 compiler for the Intel X86 under Linux or 386BSD (and derivatives?). Source code in Modula-2 is available. | |
| Linux and 386BSD (also commercial versions) | |
| April 29th, 1994 |
| Modula-2 | |
| mtc | |
| 9209 | |
| translator(->C) | |
| Matthias Martin, Josef Grosch <grosch@cocolab.sub.com> | |
| ftp://ftp.gmd.de/gmd/cocktail/{mtc,reuse}.tar.Z ftp://ftp.rus.uni-stuttgart.de/pub/unix/programming/compilerbau/{mtc,reuse}.tar.Z ftp://ftp.th-darmstadt.de/pub/programming/languages/compiler-compiler/cocktail/{mtc,reuse}.tar.Z ftp://src.doc.ic.ac.uk/languages/tools/gmd/{mtc,reuse}.tar.Z ftp://gatekeeper.dec.com/.3/plan/gmd/{mtc,reuse}.tar.Z | |
| A Modula-2 to C translator | |
| Unix, Linux, MS-DOS, MS-Windows, OS/2 | |
| Josef Grosch <grosch@cocolab.sub.com> | |
| October 1st, 1992 |
| Oberon-2 | |
| o2c | |
| 1.4 | |
| Michael van Acken <oberon1@informatik.uni-kl.de> Juergen Zimmermann <jnzimmer@informatik.uni-kl.de> | |
| ftp://ftp.uni-kl.de/pub/informatik/software/o2c-1.4.tar.gz ftp://cognac.informatik.uni-kl.de/pub/ooc | |
|
o2c is an Oberon-2 compiler that translates into the C
dialect accepted by the GNU C compiler (version 2.5.8 or
above). The compiler provides it's own make facility.
The package includes a symbol file browser and a
GNU Emacs mode that allows to use Emacs as a comfortable
programming environment for the compiler.
o2c is known to run on several 32bit UNIX-plattforms. It comes with full source-code. | |
| The programming language Oberon-2, Oct. 93, ETH Zuerich | |
| GNU General Public License | |
| UNIX, tested on [GNU-cannonical name/GCC version] hppa1.1-hp-hpux/2.5.8 sparc-sun-sunos4.1.3/2.5.8 sparc-sun-sunos4.1.3_U1/2.6.2 iX86-unknown-linux/2.5.8 iX86-unknown-linux/2.6.3 | |
| oberon1@informatik.uni-kl.de | |
| April 1st, 1996 |
| Oberon2 | |
| Oberon-2 LEX/YACC definition | |
| 1.4 | |
| parser(yacc), scanner(lex) | |
| Stephen J Bevan <bevan@cs.man.ac.uk> | |
| ftp://ftp.psg.com/pub/oberon/tools/o2lexyac.tar.Z http://panther.cs.man.ac.uk/~bevan/oberon | |
| A LEX and YACC grammar for Oberon 2 based on the one given in the listed reference. | |
| The Programming Language Oberon-2 H. M\"{o}ssenb\"{o}ck, N. Wirth Institut f\"{u}r Computersysteme, ETH Z\"{u}rich January 1992 ftp://neptune.inf.ethz.ch/Oberon/Docu/Oberon2.Report.ps.Z | |
| Portions of the source under copyright by U. Manchester. | |
| un-officially supported | |
| July 6th, 1992 |
| Pascal | |
| p2c | |
| 1.20 | |
| translator(Pascal->C) | |
| Dave Gillespie <daveg@synaptics.com> | |
| ftp://csvax.cs.caltech.edu | |
| ? | |
| supports ANSI/ISO standard Pascal as well as substantial subsets of HP, Turbo, VAX, and many other Pascal dialects. | |
| ? | |
| April 13th, 1990 |
| Parallaxis | |
| parallaxis | |
| Parallaxis-III | |
| ?,debugger, viz tools, simulator, x-based profiler | |
| Thomas Braunl <braunl@informatik.uni-stuttgart.de> | |
| ftp://ftp.informatik.uni-stuttgart.de/pub/p3 http://www.informatik.uni-stuttgart.de/ipvr/bv/p3 | |
| 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. | |
| MP-1, CM-2, Sun-3, Sun-4, DECstation, HP 700, RS/6000 | |
| ? Thomas Braunl <braunl@informatik.uni-stuttgart.de> ? | |
| October 23rd, 1992 |
| Pascal | |
| Pascal P4 compiler and interpreter | |
| ? 1 | |
| compiler, assembler/interpreter, documentation | |
| Urs Ammann, Kesav Nori, Christian Jacobi | |
| ftp://ftp.cwi.nl/pub/pascal/* or http://www.cwi.nl/~steven/pascal.html | |
| A compiler for Pascal written in Pascal, producing an intermediate code, with an assembler and interpreter for the code. | |
| Pascal Implementation, by Steven Pemberton and Martin Daniels, published by Ellis Horwood, Chichester, UK (an imprint of Prentice Hall), ISBN: 0-13-653-0311. Also available in Japanese. | |
| <Steven.Pemberton@cwi.nl> | |
| July 5th, 1993 |
| Pascal | |
| pasos2 | |
| Alpha | |
| Compiler, run-time library | |
| Willem Jan Withagen <wjw@eb.ele.tue.nl> | |
| ftp://ftp.eb.ele.tue.nl/pub/src/pascal/pasos2* | |
| a PASCAL/i386 compiler which generates code for OS/2 and DOS. It uses EMX as DOS extender and GNU/GAS, MASM or TASM as assembler. | |
| December 17th, 1993 |
| pm2 | |
| PRAM emulator and parallel modula-2 compiler ?? | |
| ? | |
| compiler, emulator | |
| ? | |
| ftp://cs.joensuu.fi/pub/pram/* | |
|
A software emulator for parallel random access machine (PRAM)
and a parallel modula-2 compiler for the emulator. A PRAM
consists of P processors, an unbounded shared memory, and a
common clock. Each processor is a random access machine (RAM)
consisting of R registers, a program counter, and a read-only
signature register. Each RAM has an identical program, but the
RAMs can branch to different parts of the program. The RAMs
execute the program synchronously one instruction in one clock
cycle.
pm2 programming language is Modula-2/Pascal mixture having extensions for parallel execution in a PRAM. Parallelism is expressed by pardo-loop- structure. Additional features include privat/shared variables, two synchronization strategies, load balancing and parallel dynamic memory allocation. | |
| Simo Juvaste <sjuva@cs.joensuu.fi> | |
| Febuary 17th, 1993 |
| Pascal | |
| ptc | |
| ? | |
| translator(Pascal->C) | |
| ? | |
| ftp://uxc.sco.uiuc.edu/languages/ptc ? (use archie?) | |
| ? | |
| ? | |
| ? |
| Pascal | |
| QCK | |
| 2.0 | |
| compiler(written in ANSI-C), library, assembler, linker etc. | |
| Henrik Quintel <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| top.cs.vu.nl/pub/minix/pascal/ | |
| Supports standard pascal with a few exceptions (set of.. , packed arrays, packed records, procedures/functions as parameters) | |
| Read the README file | |
| Cos, tan, sin.... does not work right ! | |
| PC-Minix 1.6.25 1.6.30 1.7.0 | |
| <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| comp.os.minix, comp.compilers | |
| <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| January 9th, 1995 |
| Pascal-Debugger | |
| QCK | |
| 1.0 | |
| Debugger/Interpreter(written in ANSI-C) | |
| Henrik Quintel <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| Server : top.cs.vu.nl Directory :/pub/minix/pascal/ | |
| Supports standard pascal with a few exceptions (set of.. , packed arrays, packed records, procedures/functions as parameters) | |
| Read the README file | |
| Cos, tan, sin.... does not work right ! | |
| PC-Minix 1.6.25 1.6.30 1.7.0 | |
| <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| comp.os.minix, comp.compilers | |
| <quintel@nibelung.Worms.Fh-Rpl.DE> | |
| January 9th, 1995 |
| Modula-3 | |||||||
| SRC Modula-3 | |||||||
| 3.5 | |||||||
| compiler(->C), runtime library, documentation | |||||||
| DEC Systems Research Center <m3-request@src.dec.com> LINUX version compiled by Michel Dagenais | |||||||
| |||||||
| 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. | |||||||
| implements the language defined in SPwM3. | |||||||
| gcc, preferrably X11 | |||||||
| i386/AIX 68020/DomainOS Acorn/RISCiX MIPS/Ultrix 68020/HP-UX RS6000/AIX IBMRT/4.3 68000/NextStep i860/SVR4 SPARC/SunOS 68020/SunOS sun386/SunOS Multimax/4.3 VAX/Ultrix FreeBSD Linux | |||||||
| comp.lang.modula3 | |||||||
| Bill Kalsow <kalsow@src.dec.com> | |||||||
| July 9th, 1995 |
| Pascal, Lisp, APL, Scheme, SASL, CLU, Smalltalk, Prolog | |
| Tim Budd's C++ implementation of Kamin's interpreters | |
| ? | |
| interpretors, documentation | |
| Tim Budd <budd@cs.orst.edu> | |
| ? ftp://cs.orst.edu/pub/budd/kamin/*.shar | |
| a set of interpretors written as subclasses based on "Programming Languages, An Interpreter-Based Approach", by Samuel Kamin. | |
| C++ | |
| ? | |
| Tim Budd <budd@fog.cs.orst.edu> | |
| September 12th, 1991 |
| Turbo Pascal, Turbo C | |
| tptc | |
| ? | |
| translator(Turbo Pascal->Turbo C) | |
| ? | |
| ftp://wuarchive.wustl.edu/mirrors/msdos/turbopas/tptc17*.zip | |
| (It does come with full source and a student recently used it as a start for a language that included stacks and queues as a built-in data type. | |
| ? | |
| ? |
| Modula-2 | |
| Ulm's Modula-2 System | |
| 3.0 | |
| compiler, library, tools, documentation | |
| Andreas Borchert <borchert@mathematik.uni-ulm.de> | |
| ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/ulm/sun4/ | |
|
This system may be used like other traditional systems
(e.g. cc) from the command line. Documentation is
available in the form of manual pages and a HTML tree.
The compiler has been derived from the ETHZ compiler for
the Lilith system (4 passes, written in Modula-2).
More informations may be found under http://www.mathematik.uni-ulm.de/modula/ | |
| PIM3 | |
| may be freely distributed unter the terms of the GNU General Public License or in case of the library under the terms of the GNU Library General Public License. | |
| SPARCv8 / Solaris 2.x (Note that SunOS 4.x is not supported!) | |
| SPARCv8, Sun3, Nixdorf Targon/31, Concurrent 3200 Series | |
| Andreas Borchert <borchert@mathematik.uni-ulm.de> | |
| New releases will be announced in comp.lang.modula2. | |
| March 6th, 1997 |
| Oberon | |
| Ulm's Oberon System | |
| 0.4 | |
| compiler, tools, library, documentation | |
| Andreas Borchert <borchert@mathematik.uni-ulm.de> | |
| ftp://ftp.mathematik.uni-ulm.de/pub/soft/oberon/ulm/sun3/ | |
| In comparison to the Oberon Systems of ETH Zurich this system may be used like other traditional language systems (e.g. cc). It consists of a compiler, a makefile generator, a debugger, and a large library which has a system-independent kernel that supports exception handling, concurrency, synchronization, persistence, and distributed systems. The package contains a copying garbage collector. The compiler is written in Modula-2, the debugger in C, all other parts are written in Oberon. More informations may be found at http://www.mathematik.uni-ulm.de/oberon/ | |
| N. Wirth, ``The Programming Language Oberon'', SP&E July 1988 with some selective adaptions of later revisions. The compiler still requires the separation of definitions & modules like Modula-2. | |
| The compiler and associated tools fall under the GNU CopyLeft, and the library under the GNU library general public license. | |
| Sun3/SunOS 4.1.1, Nixdorf Targon/31 | |
| Active -- will be ported to SPARC/Solaris 2.x | |
| New releases will be announced in comp.lang.oberon. | |
| March 6th, 1997 |
Please send updates to free-compilers@idiom.com
The HTML is maintained by David Muir Sharnoff and the entries themselves are currently maintained by Bryan Miller.
Copyright (c) 1992-1998 David Muir Sharnoff, All Rights Reserved
Copyright (c) 1994-1996, Steven Allen Robenalt, All Rights Reserved