Archive-name: compilers/free/part5 Last-modified: 2000/02/08 Version: 10.3 Wirth family languages ------------------------------------------------------------------------------ category: Wirth family languages description: These are the languages that were either designed by Niklaus Wirth or are descended from them. lref: IFP language: CLU iref: (CLU) Tim Budd's C++ implementation of Kamin's interpreters language: Modula-2, Pascal package: m2 version: ? 7/2/92 ? parts: ? compiler ? author: Michael L. Powell. See description below. location: ftp://gatekeeper.dec.com/pub/DEC/Modula-2/m2.tar.Z 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. 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. 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 restriction: must pass changes back to Digital ports: vax (ultrix, bsd), mips (ultrix) contact: [email protected] updated: 1992/07/06 language: Modula-2 package: Ulm's Modula-2 System version: 3.0 parts: compiler, library, tools, documentation author: Andreas Borchert <[email protected]> location: ftp://ftp.mathematik.uni-ulm.de/pub/soft/modula/ulm/sun4/ description: 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/ conformance: PIM3 restriction: 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. requires: SPARCv8 / Solaris 2.x (Note that SunOS 4.x is not supported!) ports: SPARCv8, Sun3, Nixdorf Targon/31, Concurrent 3200 Series contact: Andreas Borchert <[email protected]> announcements: New releases will be announced in comp.lang.modula2. updated: 1997/03/06 language: Modula-2 package: m2c version: 0.6 parts: Modula-2 to C translator author: Vladimir N. Makarov <[email protected]> location: http://www.geocities.com/SiliconValley/Lab/4557 description: A modula-2 translator to C. conformance: 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. ports: Unix portability: very high (GNU configure) support: Vladimir N. Makarov <[email protected]> contact: Vladimir N. Makarov <[email protected]> updated: 1998/01/05 language: Modula-2 package: mtc version: 9209 parts: translator(->C) author: Matthias Martin, Josef Grosch <[email protected]> location: 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 description: A Modula-2 to C translator ports: Unix, Linux, MS-DOS, MS-Windows, OS/2 contact: Josef Grosch <[email protected]> updated: 1992/10/01 language: Modula-2 package: mocka version: 9404 parts: compiler, library, examples, docs author: ? Holger Hopp <[email protected]> location: ftp://i44.s10.ira.uka.de/pub/mocka/linux/mocka9404* ftp://sunsite.unc.edu/pub/Linux/devel/modula-2/mocka9404* description: 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. ports: Linux and 386BSD (also commercial versions) updated: 1994/04/29 language: Modula-2* (parallel extension) package: IPD Modula-2* Programming Environment version: 9401 parts: translator (->C), debugger (SUN4 only), X Windows user panel, automatic cross-architecture make, sequential and parallel libraries, examples, documentation author: IPD Modula-2* team <[email protected]> consisting of the following kernel contributors: Thomas Gauweiler, Stefan U. Haenssgen, Ernst A. Heinz, Paul Lukowicz, Hendrik Mager, Michael Philippsen. location: ftp://ftp.ira.uka.de/pub/programming/modula2star/ description: 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] conformance: PIM but not ISO compliant reference: 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 ports: 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), portability: sources are for GMD Mocka Modula-2 compiler status: supported updated: ??? language: Modula-2, Modula-3 package: m2tom3 version: 2.00 parts: Translator (Modula-2->Modula-3), Modula-2 standard library emulation author: Peter Klein <[email protected]> location: ftp://ftp-i3.informatik.rwth-aachen.de/pub/Modula-3-Contrib/m2tom3/m2tom3-2.00.tar.gz description: 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. requires: DEC SRC Modula-3 release 3.3 help: <[email protected]> announcements: comp.lang.modula2, comp.lang.modula3 contact: <[email protected]> updated: 1994/11/30 language: pm2 package: PRAM emulator and parallel modula-2 compiler ?? version: ? parts: compiler, emulator author: ? location: ftp://cs.joensuu.fi/pub/pram/* description: 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. contact: Simo Juvaste <[email protected]> updated: 1993/02/17 language: Modula-3 package: SRC Modula-3 version: 3.5 parts: compiler(->C), runtime library, documentation author: DEC Systems Research Center <[email protected]> LINUX version compiled by Michel Dagenais location: ftp://gatekeeper.dec.com/pub/DEC/Modula-3/release-3.5/*.tar.gz MSDOS: ftp://gatekeeper.dec.com/pub/DEC/Modula-3/contrib/m3pc* OS2: ftp.vlsi.polymtl.ca in pub/m3/os2 (binaries only) 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. conformance: implements the language defined in SPwM3. requires: gcc, preferrably X11 ports: 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 discussion: comp.lang.modula3 contact: Bill Kalsow <[email protected]> updated: 1995/07/09 language: Oberon2 package: Oberon-2 LEX/YACC definition version: 1.4 parts: parser(yacc), scanner(lex) author: Stephen J Bevan <[email protected]> location: ftp://ftp.psg.com/pub/oberon/tools/o2lexyac.tar.Z http://panther.cs.man.ac.uk/~bevan/oberon description: A LEX and YACC grammar for Oberon 2 based on the one given in the listed reference. 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 restriction: Portions of the source under copyright by U. Manchester. status: un-officially supported updated: 1992/07/06 language: Oberon package: Ceres workstation Oberon System version: ? parts: compiler author: ? location: ftp://neptune.ethz.ch/Oberon/? description: file format is Oberon, binary header status: 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. updated: ? language: Oberon package: Ulm's Oberon System version: 0.4 parts: compiler, tools, library, documentation author: Andreas Borchert <[email protected]> location: ftp://ftp.mathematik.uni-ulm.de/pub/soft/oberon/ulm/sun3/ description: 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/ conformance: 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. restriction: The compiler and associated tools fall under the GNU CopyLeft, and the library under the GNU library general public license. ports: Sun3/SunOS 4.1.1, Nixdorf Targon/31 status: Active -- will be ported to SPARC/Solaris 2.x announcements: New releases will be announced in comp.lang.oberon. updated: 1997/03/06 language: Oberon-2 package: o2c version: 1.4 author: Michael van Acken <[email protected]> Juergen Zimmermann <[email protected]> location: ftp://ftp.uni-kl.de/pub/informatik/software/o2c-1.4.tar.gz ftp://cognac.informatik.uni-kl.de/pub/ooc description: 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. conformance: The programming language Oberon-2, Oct. 93, ETH Zuerich restriction: GNU General Public License ports: 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 contact: [email protected] updated: 1996/04/01 language: Oberon-2 package: Jacob version: 0 parts: compiler, library, documentation, examples author: Max Spring <[email protected]>, Ralf Bauer <[email protected]> location: ftp://sunsite.unc.edu/pub/Linux/devel/lang/oberon/jacob-v0* ftp://ftp.cs.tu-berlin.de/pub/linux/Local/compilers/oberon/jacob-v0* description: Jacob compiles Oberon-2 to 386 GNU Assembler code. conformance: Oberon-2 as defined in "The Programming Language Oberon-2" from H.Moessenboeck, N. Wirth, March 1995 reference: "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 features: + automatic storage reclamation (garbage collection) + FOREIGN modules for accessing third party libraries + verbose run-time error messages bugs: report bugs to [email protected] restriction: none requires: GNU assembler ports: Linux (386) status: First public release discussion: comp.lang.oberon help: contact the authors contact: Max Spring <[email protected]> updated: 1995/09/12 language: Parallaxis package: parallaxis version: Parallaxis-III parts: ?,debugger, viz tools, simulator, x-based profiler author: Thomas Braunl <[email protected]> location: ftp://ftp.informatik.uni-stuttgart.de/pub/p3 http://www.informatik.uni-stuttgart.de/ipvr/bv/p3 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 <[email protected]> ? updated: 1992/10/23 language: Pascal package: p2c version: 1.20 parts: translator(Pascal->C) author: Dave Gillespie <[email protected]> location: ftp://csvax.cs.caltech.edu description: ? conformance: supports ANSI/ISO standard Pascal as well as substantial subsets of HP, Turbo, VAX, and many other Pascal dialects. ports: ? updated: 1990/04/13 language: Pascal package: Pascal P4 compiler and interpreter version: ? 1 parts: compiler, assembler/interpreter, documentation author: Urs Ammann, Kesav Nori, Christian Jacobi location: ftp://ftp.cwi.nl/pub/pascal/* or http://www.cwi.nl/~steven/pascal.html description: A compiler for Pascal written in Pascal, producing an intermediate code, with an assembler and interpreter for the code. reference: 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. contact: <[email protected]> updated: 1993/07/05 language: Pascal package: ? iso_pascal ? version: ? parts: scanner(lex), parser(yacc) author: ? location: comp.sources.unix archive volume 13 description: ? updated: ? language: Pascal package: pasos2 version: Alpha parts: Compiler, run-time library author: Willem Jan Withagen <[email protected]> location: ftp://ftp.eb.ele.tue.nl/pub/src/pascal/pasos2* description: 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. updated: 1993/12/17 language: Pascal package: ptc version: ? parts: translator(Pascal->C) author: ? location: ftp://uxc.sco.uiuc.edu/languages/ptc ? (use archie?) description: ? contact: ? updated: ? language: Turbo Pascal, Turbo C package: tptc version: ? parts: translator(Turbo Pascal->Turbo C) author: ? location: ftp://wuarchive.wustl.edu/mirrors/msdos/turbopas/tptc17*.zip description: (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. contact: ? updated: ? language: Pascal package: QCK version: 2.0 parts: compiler(written in ANSI-C), library, assembler, linker etc. author: Henrik Quintel <[email protected]> location: top.cs.vu.nl/pub/minix/pascal/ description: Supports standard pascal with a few exceptions (set of.. , packed arrays, packed records, procedures/functions as parameters) features: Read the README file bugs: Cos, tan, sin.... does not work right ! requires: PC-Minix 1.6.25 1.6.30 1.7.0 help: <[email protected]> support: <[email protected]> Announcements: comp.os.minix, comp.compilers contact: <[email protected]> updated: 1995/01/09 language: Pascal-Debugger package: QCK version: 1.0 parts: Debugger/Interpreter(written in ANSI-C) author: Henrik Quintel <[email protected]> location: Server : top.cs.vu.nl Directory :/pub/minix/pascal/ description: Supports standard pascal with a few exceptions (set of.. , packed arrays, packed records, procedures/functions as parameters) features: Read the README file bugs: Cos, tan, sin.... does not work right ! requires: PC-Minix 1.6.25 1.6.30 1.7.0 help: <[email protected]> support: <[email protected]> announcements: comp.os.minix, comp.compilers contact: <[email protected]> updated: 1995/01/09 language: Pascal iref: (Pascal) Tim Budd's C++ implementation of Kamin's interpreters language: Cantata - Extensible Visual Programming Language package: Khoros version: 2.2 parts: Composer, Ghostwriter, Source Configuration & Management, Animate, Editimage, Xprism, Viewimage. See features for more details. description: Khoros is an integrated software development environment for information processing and visualization, based on the X Windows System. author: Khoral Research Inc location: USA: ftp://ftp.khoral.com/pub/khoros2.0 GERMANY: ftp://ftp.e20.physik.tu-muenchen.de BRAZIL: ftp://ftp.unicamp.br/pub/khoros2.0 reference: 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. features: +Composer - Interactive Graphical User Interface Editor +Ghostwriter - Code Generation Tool for a Command Line User Interface +Source Configuration & Management - Tools to install and maintain a distributed source tree +Animate - Interactive Image Sequence Display Tool +Editimage - Interactive Image Display & Manipulation Program +Xprism - 2D and 3D Plotting Packages +Viewimage - A basic interactive program for surface rendering documentation bugs: k2-xvapp-bugs-FAQ, k2-xvlib-bugs-FAQ restriction: 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. requires: gzip, C Compiler, X (R11), lex/yacc discussion: comp.soft-sys.khoros ports: Many Un*x ports help: Khoros Consortium, ftp://ftp.khoral.com/pub/khoros/FAQ ftp://ftp.khoral.com/pub/khoros2.0/manual support: http://ftp.khoros.unm.edu/ updated: ? assemblers ------------------------------------------------------------------------------- category: assemblers language: various assembly package: GNU assembler (GAS) version: 2.5.2 parts: assembler, documentation author: ? location: ftp binutils-*.tar.z from a GNU archive site description: Many CPU types are now handled, and COFF and IEEE-695 formats are supported as well as standard a.out. bugs: [email protected] ports: Sun-3, Sun-4, i386/{386BSD, BSD/386, FreeBSD, Linux, PS/2-AIX}, VAX/{Ultrix,BSD,VMS} updated: 1994/11/02 language: various assembly package: fas: Frankenstein Cross Assemblers version: ? parts: base assembler, parser modules (yacc), documentation? author: Mark Zenier location: ftp://ftp.njit.edu/pub/msdos/frankasm/frankasm.zoo [Inform me of the other sites -Mark] description: A reconfigurable assembler package, especially suited for 8-bit processors, consisting of a base assembler module and a yacc parser, for each microprocessor, to handle mnemonics and addressing. Second party parser modules available from many sites. requires: YACC updated: ? language: 6502, Z80, 8085, 68xx package: ? version: ? parts: ? author: [email protected] and Alan R. Baldwin location: ftp://ccosun.caltech.edu ? description: I have enhanced a set of 68xx and Z80 and 8085 cross assemblers to support 6502. These assemblers run on MS-DOS computers or on any systems that support standard Kerninghan & Richie C, for example, Amiga, Atari ST and any "big" machines updated: 1993/03/10 language: 6502, 6800, and 16 and 32 bit machine-independent skeletons package: ? version: ? parts: assembler, manual author: Doug Jones <[email protected]> location: http://www.cs.uiowa.edu/~jones/cross/ ftp.cs.uiowa.edu:/pub/jones/smal description: Supports macro and conditional features, even, as well as being usable for linkage editing of object files. Easy to modify to support other machines. requires: Pascal updated: ? language: 65xx assembler package: d65 disassembler version: 0.1.0 parts: disassembler, documentation author: [email protected] location: ftp://ftp.funet.fi/pub/cbm/programming/d65-0.1.0.tar.gz. description: A disassembler for the 65xx microprocessor. ports: Unix updated: 1994/06/15 language: mc6809 package: usim version: 0.90 parts: simulator, documentation author: Ray P. Bellis <[email protected]> location: ftp://ftp.mrc-bbc.ox.ac.uk/pub/mc6809/usim-* Alt.sources archive at FTP site: wuarchive.wustl.edu in usenet/alt.sources/articles files 10405.Z 10406.Z and 10407.Z description: a mc6809 simulator updated: 1994/05/30 language: mc6809 package: 6809, E-Forth version: ? parts: assembler, simulator author: Lennart Benschop <[email protected]> location: alt.sources, 1993/11/03 <[email protected]> description: An assembler and simulator for the Motorola M6809 processor. Also included is a Forth interpreter, E-Forth written in 6809. ports: assembler: Unix, DOS; simulator: Unix updated: 1993/11/03 language: 68HC11 package: 68HC11 simulator version: ? 1 parts: simulator author: Ted Dunning <[email protected]> location: ftp://crl.nmsu.edu/pub/non-lexical/6811/sim6811.shar description: An opcode simulator for the 68HC11 processor. Interrupts, hardware I/O, and half carries are still outside the loop. [Adding interrupts may require simulating at the clock phase level -Mark] ports: unix?, ms-dos updated: 1993/07/28 language: 8051 package: CAS 8051 Assembler version: 1.2 parts: assembler/linker, disassembler, documentation, examples author: Mark Hopkins <[email protected]> location: ftp://lyman.pppl.gov/pub/8051/assem Europe: ftp://nic.funet.fi/pub/microprocs/MCS-51/csd4-archive/assem description: experimental one-pass assembler for the 8051 with C-like syntax. Most features of a modern assembler included except macros (soon to be added). Other software tools and applications contained in /pub/compilers/8051/*. requires: ANSI-C compiler ports: MSDOS, Ultrix, Sun4 (contact author) updated: 1993/07/22 language: 8051 package: as31 - An 8031/8051 assembler. version: ? 1 parts: assembler, parser(yacc), documentation author: Ken Stauffer <[email protected]> (Theo Deraadt wrote the S-record output routines) location: comp.sources.misc volume 10 description: Assembler with ability to produce a variety of object output formats, including S-records. ports: SUN 3 / SUN 4 (SunOS 4.0), Tandy 6000 (Xenix) portability: File I/O may require porting on non-Unixs. updated: 1990/01/26 language: MIL-STD-1750 assembly package: as1750 version: 0.8 parts: assembler and linker (monolithic) author: Oliver M. Kellogg <[email protected]> location: ftp://ftp.fta-berlin.de/pub/crossgcc/1750gals/as1750-0.7.tar.gz description: Simple assembler for the MIL-STD-1750 (A and B) instruction set. This is the assembler used by gcc-1750a. Assembly and linkage are not separate passes: load modules are generated directly from sources, without object files. features: + produces Tektronix Extended Hex or TLD LDM load modules + parameterized macros (MACRO/ENDMACRO) + macro variables (SET) + macro expressions with operators as in the C language + conditional assembly (IF/ELSIF/ELSE/ENDIF) + repeated assembly (WHILE/ENDWHILE) + small and fast - no linker control directive file, the only means of linkage control is via ORG statements restriction: GNU General Public License requires: 32-bit ANSI C compiler (gcc is just fine) ports: Unix, VMS, DOS status: actively developed announcements: The Cross-GCC List <[email protected]> updated: 1995/06/24 language: Motorola DSP56000 package: ? version: 1.1 parts: assembler author: Quinn Jensen <[email protected]> location: alt.sources archive or ftp://wuarchive.wustl.edu ? description: ? updated: ? language: Motorola DSP56001 package: a56 version: 1.2 parts: assembler author: Quinn Jensen <[email protected]> location: ftp://ftp.novell.com/pub/pin/misc/a56/a56v1.2* description: DSP56001 cross-assembler written in YACC. Produces OMF or S-record format output suitable for serial download or EPROM. Package includes sample 56001 code fragments that implement musical DSP effects like reverberation, chorus, and flange. ports: Unix, DOS announcements: comp.dsp,comp.music updated: 1994/09/07 language: DSP32C package: a32src version: ? parts: assembler author: Tom Roberts <[email protected]> location: comp.sources.misc volume 44 description: This is an assembler for the AT&T DSP32C Digital Signal Processor chip. This is source for the assembler and for an enhanced C pre-processor; a DSP test program is included. portability: probably high ports: MS-DOS updated: 1994/09/23 language: 80486 package: WDASM17B.ZIP - Windows 80486 Disassembler for Windows 3.1 version: 1.7b parts: disassembler author: Eric Grass <[email protected]> location: SIMTEL20, pd1:<msdos.windows3> description: An interactive 80486 disassembler for Windows 3.1. Multiple options for formatting disassembly exist. ports: Windows3.1 portability: Windows-specific updated: 1993/06/29 language: Assember (SPARC) package: elfdis version: 2.3 parts: disassembler author: Bruce Ediger <[email protected]> location: comp.sources.misc archives volume 42, issue 83 description: An object code disassembler for SPARC which, unlike the native SPARC disassembler, uses the relocation and dynamic linking information in the Elf file. updated: 1994/05/08 language: 68000 assembler package: m68kdis version: ?? parts: documentation, disassembler author: Christopher Phillips <[email protected]> location: comp.sources.misc volume 45 description: A disassembler for the M68000 family of microprocessors. Some extra functionality for Macintosh resource forks is provided. updated: 1994/11/08 language: PDP-11 macro assembly package: PDPXASM.EXE version: 2.20 parts: assembler, linker, disassembler, serial line loader, library routines author: Jim Cook <[email protected]> location: ftp://ftp.idiom.com/pub/msdos/pdpxasm.exe description: A cross assembler that runs on the IBM PC/AT family. Assembles PDP-11 into core image files. Developed for use in testing an add-in PDP-11 clone board. reference: Brief help files/screens for each program. features: 1. Macro and .IRP support bugs: Contact [email protected] restriction: May not be sold for profit. Must be distributed in toto. requires: 2mb on a MS-DOS compatible machine. updated: 1995/06/02 macro preprocessors ------------------------------------------------------------------------------- category: macro preprocessors description: These are tools that expand macros for another language. iref: (C) GNU CC iref: (C) lcc language: C preprocessor package: Decus cpp version: ? parts: pre-processor author: Martin Minow location: included in the X11R5 distribution as contrib/util/cpp description: An almost-ANSI C preprocessor. It is shipped with X11R5 because some systems don't have a working cpp. ports: VMS (Vax C, Decus C), RSX-11M, RSTS/E, P/OS, and RT11, A/UX, Apollo Domain/IX 9.6, etc. portability: very high updated: ? language: C-Refine,C++-Refine&comma *-Refine package: crefine version: 3.0 parts: pre-processor, documentation author: Lutz Prechelt <[email protected]> location: aquire from any comp.sources.reviewed archive 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. ports: unix, msdos, atari, amiga. portability: high updated: 1992/07/16 language: gema package: gema version: 1.1 parts: macro processor, documentation, examples. author: David N. Gray <[email protected]> location: FTP://ftp.ugcs.caltech.edu/pub/gema/gema.tar.gz MS-DOS executable in file exe.zip To just view doc: http://www.ugcs.caltech.edu/gema/ description: A general-purpose macro processor that uses pattern matching and replacement. It can be used as a pre-processor or to translate one language to another, or to extract selected information from files. features: + Does not impose any particular syntax for macro calls. + No built-in assumptions about input language syntax. + Can recognize patterns spanning multiple lines. + Handles recursive patterns, such as matching pairs of nested parentheses. + Different sets of rules can be used in different contexts. + Easy to ignore redundant white space. requires: ANSI C compiler ports: Unix, MS-DOS, Windows/NT updated: 1995/05/23 language: m4 package: pd/bsd m4 version: ? parts: interpreter, man page author: Ozan Yigit <[email protected]>, Richard A. O'Keefe <[email protected]> location: ftp from any 386BSD, NetBSD, or FreeBSD archive description: A macro preprocessor, more flexible than cpp conformance: ? updated: 1993/11/03 language: m4 package: GNU m4 version: 1.4 parts: interperter author: Francois Pinard <[email protected]> location: ftp m4-1.4.tar.gz from a GNU archive site Macintosh: ftp://nic.switch.ch/pub/software/mac/src/mpw-c/* description: A macro preprocessor, more flexible than cpp. It copies its input to the output, expanding macros. Macros are either built-in or user-defined. `m4' has built-in functions for including files, running Unix commands, doing integer arithmetic, manipulating text in various ways, recursing, etc. `m4' can be used either as a front-end to a compiler or as a macro processor in its own right. conformance: Mostly SVR4 compatible with a few extensions. restriction: GNU General Public License updated: 1994/11/06 special purpose languages ------------------------------------------------------------------------------- category: special purpose languages description: Languages with very specific purposes that are the only free language in that niche (otherwise they would have a category) language: ADL (Adventure Definition Language) package: ADL version: ? parts: interpreter author: Ross Cunniff <[email protected]>, Tim Brengle location: comp.sources.games archive volume 2 description: An adventure language, semi-object-oriented with LISP-like syntax. A superset of DDL. updated: ? language: ASA package: Adaptive Simulated Annealing (ASA) version: 9.4 parts: ? author: Lester Ingber <[email protected]> location: ftp://ftp.alumni.caltech.edu/pub/ingber http://www.alumni.caltech.edu/~ingber/ description: ? Language interface to neural net simulator? discussion: [email protected] updated: 1995/09/03 language: ASN.1 (Abstract Syntax Notation One) package: snacc (Sample Neufeld ASN.1 to C/C++ Compiler) version: 1.1 parts: compiler, runtime BER libraries, utility progs author: Mike Sample <[email protected]> location: ftp://ftp.cs.ubc.ca/pub/local/src/snacc/snacc1.1.tar.Z description: ASN.1 is a language used to describe data structures in a machine and implementation lang independent way. Basic Encoding Rules (BER) provide a universal (contiguous) representation of data values. ASN.1 & BER were designed to exchange data (with complex structure) over networks. OSI Application protocols such as X.400 MHS (email) and X.500 directory and others protocols such as SNMP use ASN.1 to describe the PDUs they exchange. Snacc compiles 1990 ASN.1 (including some macros) data structures into C, C++ or type tables. The generated C/C++ includes a .h file with the equivalent data struct and a .c/.C file for the BER encode and decode, print and free routines. conformance: ITU T X.680/ISO 8824 (1994) CCITT X.208 (1988), aka CCITT X.409 (1984) reference: Michael Sample and Gerald Neufeld, "Implementing Efficient Encoders and Decoders for Network Data Representations", IEEE INFOCOM '93 Proceedings, Vol 3, pp 1143-1153, Mar 1993 Michael Sample, "How Fast Can ASN.1 Encoding Rules Go?", M.Sc. Thesis, University of British Columbia, Apr 1993 restriction: Compiles under GNU Public License. No restriction on libs and C/C++/tables generated by snacc. requires: yacc (or bison), lex (or flex) and cc (ANSI or non-ANSI) contact: mailing list: <[email protected]> mailing list join/quit requests: <[email protected]> Barry Brachman <[email protected]> updated: 1993/07/12 language: CLIPS package: CLIPS version: 6.02 parts: interpreter author: Gary Riley and Brian Donnell location: ftp://ftp.cs.cmu.edu/user/ai/areas/expert/systems/clips description: CLIPS is an expert system tool which provides a complete environment for the construction of rule and/or object based expert systems (computer programs which emulate human expertise). CLIPS provides a cohesive tool for handling a wide variety of knowledge with support for three different programming paradigms: rule-based, object-oriented and procedural. bugs: A list of bug fixes for CLIPS 6.0 and the replacement source files to fix the bugs are available by anonymous ftp from hubble.jsc.nasa.gov in the directory /pub/clips/Bug-Fixes. ports: Mac, Win 3.1, DOS, Sun Sparc (X Windows), others. portability: Highly portable. requires: ANSI C Compiler status: active, supported discussion: Mailing list - send a single line message to [email protected] saying SUBSCRIBE CLIPS-LIST Usenet - comp.ai.shells help: support: Software Technology Branch (STB) Help Desk voice - (713)286-8919 from 9:00 AM to 4:00 PM (CST). email - <[email protected]> FAX - (713) 244-5698. updated: 5/5/94 language: Duel (a <practical> C debugging language) package: DUEL version: 1.10 parts: interpreter, stand-alone module, documentation, test suites author: Michael Golan <[email protected]> location: ftp://ftp.cs.princeton.edu/duel/* description: DUEL acts as front end to gdb. It implements a language designed for debbuging C programs. It mainly features efficient ways to select and display data items. It is normally linked into the gdb executable, but could stand alone. It interprets a subset of C in addition to its own language. requires: gdb status: author is pushing the system hard. updated: 1993/03/20 language: GSM suite package: GSM version: 1.0 parts: editor program, gsmedit, a compiler, gsm2cc, that produces a C++ implementation of a state machine, a PostScript generator, gsm2ps, and two other minor programs. author: [email protected] (Andrew Mangogna) location: http://www.slip.net/~andrewm/gsm description: GSM Suite is a set of programs to facilitate use of finite state machines in programming. Included is a Motif based graphical editor, a program to convert the state machine to C++ code, and a PostScript generator for printing and viewing. updated: 1997/07/20 language: IDL (Project DOE's Interface Definition Language) package: SunSoft OMG IDL CFE version: 1.2 parts: compiler front end, documentation author: SunSoft Inc. location: ftp://omg.org/pub/OMG_IDL_CFE_1.2/* 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. 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. Several companies including Sunsoft are building back ends to the CFE which translate IDL into target languages, e.g. Pascal or C++, in the context of planned CORBA-compliant products. requires: C++ 2.1 conformant C++ compiler contact: [email protected] updated: 1993/05/04 language: NeuDL package: NeuDL - Neural-Network Description Language version: 0.2 parts: NeuDL interpreter, translator (NewDL->C++), user manual, NeuDL paper, examples author: Joey Rogers <[email protected]> location: ftp://cs.ua.edu/pub/neudl/NeuDLver02.tar.gz description: A prototype of a neural network description language with a C++ - like syntax currently limited to backpropagation neural nets. There is enough flexibility in the language, though, to allow users to create dynamic neural net configurations. The source is written in C++. updated: 1994/05/23 language: NeuronC package: nc version: ? parts: ? author: Robert G. Smith <[email protected]> location: retina.anatomy.upenn.edu:pub/nc.tgz description: Neuronc ("nc") is a general-purpose programming language with a C-like syntax with special features for simulating large neural circuits using compartments. The source is written in C++, but facilities are included for converting the software to ANSI-C. reference: Smith, R.G. (1992) NeuronC: a computational language for investigating functional architecture of neural circuits. J. Neurosci. Meth. 43: 83-108. ports: Unix: SGI, Sun, IBM AIX, and Linux. updated: 1994/05/24 language: NewsClip ? package: NewsClip version: 1.01 parts: translator(NewsClip->C), examples, documentation author: Looking Glass Software Limited but distributed by ClariNet Communications Corp. location: ? description: NewsClip is a very high level language designed for writing netnews filters. It translates into C. It includes support for various newsreaders. restriction: Cannot sell the output of the filters. Donation is hinted at. status: supported for ClariNet customers only contact: [email protected] updated: 1992/10/25 language: PROGRES package: PROGRES version: RWTH 5.10 parts: environment, interpreter, database, ? author: Dr. Andy Schuerr <[email protected]>, Albert Zuendorf <[email protected]> location: send mail to authors sun4-bin: ftp://ftp.informatik.rwth-aachen.de/pub/unix/PROGRES/? description: PROGRES is an integrated environment for a very high level programming language which has a formally defined semantics based on "PROgrammed Graph Rewriting Systems". This language supports the following programming paradigms/purposes: 1) Structurally object-oriented specification of attributed graph structures with multiple inheritance hierarchies and types of types (for parametric polymorphy). 2) Declarative/relational specification of derived attributes, node sets, binary relationships (directed edges), and Boolean constraints. 3) Rule-oriented/visual specification of parameterized graph rewrite rules with complex application conditions. 4) Nondeterministic & imperative programming of composite graph transformations (with built-in backtracking and cancelling arbitrary sequences of failing graph modifications). Therefore, PROGRES may be used as 1) a very high level programming language for implementing abstract data types with a graph-like internal structure, 2) a visual database programming language for the graph-oriented database system GRAS (which is available as free software under the GNU license conditions), 3) a rule-oriented language for rapid prototyping nondeterministically specified data/rule base transformations. Furthermore, PROGRES is an almost statically typed language which additionally offers "down casting" operators for runtime checked type casting/conversion (in order to avoid severe restrictions concerning the language's expressiveness). PROGRES is meant to be used with GRAS, which is also available updated: 1993/11/02 language: Tiny package: Omega test, Extended Tiny version: 3.2.2 parts: translator(fortran->tiny), tiny interpreter?, analysis tools author: William Pugh <[email protected]> and others location: ftp://ftp.cs.umd.edu/pub/omega description: The Omega test is implemented in an extended version of Michael Wolfe's tiny tool, a research/educational tool for examining array data dependence algorithms and program transformations for scientific computations. The extended version of tiny can be used as a educational or research tool. The Omega test: A system for performing symbolic manipulations of conjunctions of linear constraints over integer variables. The Omega test dependence analyzer: A system built on top of the Omega test to analyze array data dependences. contact: [email protected] updated: 1992/11/13 language: 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 <cse.ogi.edu>, extended by William Pugh et al. <[email protected]> location: ftp://cs.umd.edu/pub/omega 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. ports: Any unix system (xterm helpful but not required) contact: Omega test research group <[email protected]> updated: 1993/01/23 language: PLAN package: PLAN version: 1.0 parts: ? author: Carl A. Gunter Mike Hicks Pankaj Kakkar Jonathan Moore Scott Nettles Sam Weber location: http://www.cis.upenn.edu/~switchware/PLAN/ description: (Programming Language for Active Networks). PLAN is a small functional scripting language that is intended to be carried in communication packets and evaluated on routers in an active network. Its primary goal is to support 1. finding, installing, and invoking services, and 2. diagnostics for routers and the network with authentication only on services that require it. PLAN programs are guaranteed to terminate and have predictable behavior over a limited safe interface. PLAN programs with this limited interface can therefore be interpreted by all active routers to all active packets. PLAN programs may also access libraries of other services that may not be provided to all packets, based on authorization. PLAN 1.0 is our first experimental prototype release, implementing some of the basic functionality expected of PLAN. updated: 1997/07/27 language: SQL package: _lex & yacc_ by Levine, Mason & Brown published by O'Reilly version: ? parts: book, grammar author: Levine, Mason & Brown location: buy the book, or ftp://tp.uu.net/published/oreilly/nutshell/lexyacc/? description: In _lex & yacc_, by Levine, Mason & Brown an SQL parser is included as an example grammar updated: ? language: SQL package: MultiCal System version: ? parts: ? author: Richard Snodgrass? location: ftp://FTP.cs.arizona.edu/tsql/multical description: [Anyone care to write a description? - ed] restriction: public domain, freely available contact: [email protected] updated: ? language: SQL package: mSQL2 (Mini SQL) version: 2.0.10.1 parts: interpreter, documentation, import and dumping tools, admin tool author: David J. Hughes <[email protected]> location: www.hughes.com.au description: Subset of ANSI SQL implemented with client-server support over TCP/IP. Mini SQL is a light weight relational database management system capable of providing rapid access to your data with very little overhead. updated: 1999/05/26 language: SQL package: MySQL version: 3.23 parts: Interpreter (with command line editing), import and dump tools, mysqld (server daemon). APIs for C, C++, Eiffel, Java, Perl, PHP Python and TCL. ODBC (Open-DataBase-Connectivity) for Windows95 (with source). author: Michael (Monty) Widenius <[email protected]> contact: [email protected] location: www.tcx.se description: MySQL is a client/server implementation that consists of a server daemon (mysqld) and many different client programs and libraries. MySQL is a true multi-user, multi-threaded SQL database server. A very fast thread-based memory allocation system. No memory leaks. Tested with a commercial memory leakage detector (purify). Includes isamchk, a very fast utility for table checking, optimization and repair. Full support for the ISO-8859-1 Latin1 character set. For example, the Scandinavian characters @ringaccent{a}, @"a and @"o are allowed in table and column names. All data are saved in ISO-8859-1 Latin1 format. All comparisons for normal string columns are case insensitive. Sorting is done according to the ISO-8859-1 Latin1 character set (the Swedish way at the moment). It is possible to change this in the source by adding new sort order arrays. To see an example of very advanced sorting, look at the Czech sorting code. MySQL supports many different character sets that can be specified at compile time. Aliases on tables and columns as in the SQL92 standard. DELETE, INSERT, REPLACE, and UPDATE return how many rows were changed (affected). Function names do not clash with table or column names. For example, ABS is a valid column name. The only restriction is that for a function call, no spaces are allowed between the function name and the `(' that follows it. Clients connect to the MySQL server using TCP/IP connections or Unix sockets, or named pipes under NT. The EXPLAIN command can be used to determine how the optimizer resolves a query. The January 1999 issue of Linux Journal reported that the 1998 Readers Choice Award chose MySQL as the 'Most Used Database over the Internet'. updated: 1999/07/05 language: SQL package: Beagle SQL author: Rob Klein location: http://tiny.iapnet.com/rob/beagle.html description: Beagle SQL is a free client server database management system for Unix operating systems. It is very new and development is still in progress. The following subset of SQL is currently supported (full ANSI compliance being the ultimite goal): CREATE TABLE, CREATE INDEX, SELECT, INSERT, DROP TABLE, DROP INDEX. The SELECT statement supports complex expressions complete with implicit join operations as well as explicit btree index support. Supported operators include <>, <, >, contains, begins, and =. - Full source code available - Complex expression parser - Implicit joins - Variable length fields and records - Multi-Attribute B-Tree indexes - Subset of SQL updated: 1997/10/01 natural languages ------------------------------------------------------------------------------- category: natural languages description: These are tools that interact with human languages. language: natural languages package: Pleuk grammar development system version: 1.0 parts: shell, examples, documentation author: Jo Calder <[email protected]>, Kevin Humphreys <[email protected]>, Chris Brew <[email protected]>, Mike Reape <[email protected]> location: ftp://ai.uga.edu/ai.natural.language/ description: A shell for grammar development, handles various grammatical formalisms. requires: SICStus Prolog version 2.1#6 or later, and other programs readily available from the public domain. contact: [email protected]. updated: 1993/06/18 language: natural languages package: proof version: ? parts: parser, documentation author: Craig R. Latta <[email protected]> location: ftp://scam.berkeley.edu/src/local/proof/* description: a left-associative natural language grammar scanner bugs: [email protected] ports: Decstation3100 Sun-4 discussion: [email protected] ("Subject: add me") updated: 1991/09/23 curiosities ------------------------------------------------------------------------------- category: curiosities description: These are the languages and tools that I could not fit into one of the other categories. I am quite willing to reclassify these if provided with a rational way to do so. language: a1 (Address 1 code) package: a1 code interpreter version: ? 1 parts: interpreter, examples author: Matthew Newhook <[email protected]> location: ftp://garfield.cs.mun.ca/pub/a1/a1.tar.Z description: An address 1 code interpreter used to test compiler output. requires: gcc 2.4.2 or higher portability: Ports to machine without memory segment protection unverified. updated: 1993/06/02 language: INTERCAL package: C-INTERCAL version: 0.10 parts: compiler(->C), library, documentation author: Eric S. Raymond <[email protected]> location: ftp://locke.ccil.org:pub/retro/intercal-0.10.tar.gz (in the Museum of Retrocomputing) description: INTERCAL is possibly the most elaborate and long-lived joke in the history of programming languages. It was first designed by Don Woods and Jim Lyons in 1972 as a deliberate attempt to produce a language as unlike any existing one as possible. The manual, describing features of horrifying uniqueness, became an underground classic. ESR wrote C-INTERCAL in 1990 as a break from editing _The_New_Hacker's_Dictionary_, adding to it the first implementation of COME FROM under its own name. The compiler has since been maintained and extended by an international community of technomasochists. The distribution includes extensive documentation and a program library. C-INTERCAL is actually an INTERCAL-to-C source translator which then calls the local C compiler to generate a binary. The code is thus quite portable. contact: Steve Swales <[email protected]> updated: 1993/05/20 language: MIX package: mix version: 1.05 parts: interpreter, examples. author: Darius Bacon <[email protected]> location: ftp://locke.ccil.org:pub/retro/mix-1.5.shar.gz (in the Museum of Retrocomputing) description: An interpreter for the MIX pseudoassembler used for algorithm description in Volume I of Donald Knuth's "The Art Of Computer Programming". status: preliminary release of a program under active development portability: Any ANSI C host updated: 1994/10/20 language: Loglan'82 package: Loglan82 version: ? parts: Cross-Compiler (->C) author: ? location: ftp://infpc1.univ-pau.fr/pub/Loglan82 description: The academic community has a need for one language which enables to teach all elements of object programming: classes & objects, coroutines, processes (in Loglan'82 processes are objects which are able to act in parallel), inheritance, exception handling, dynamic arrays etc. Loglan'82 offers the complete sets of programming tools used in object and modular and structural programming. It is suggested to use it duringthe first two years of teaching and afterwards too. Loglan'82 supports other styles of programming e.g. programming by rules, functional programming etc. restriction: GNU General Public License requires: ? announcements: send "SUBSCRIBE loglan82 <your_first_name> <your_name>" to [email protected] contact: [email protected] updated: 1994/2/15 language: TRAC package: trac version: 1.1 parts: interpreter, documentation, examples. author: Jown Cowan <[email protected]> location: ftp://locke.ccil.org:pub/retro/trac.shar.gz (in the Museum of Retrocomputing) description: TRAC is an interactive language built around the idea that everything is a macro. Analogous to APL, in that it is an elegant language with peculiar syntax that pushes one idea as far as it can go. bugs: report to Jown Cowan <[email protected]> portability: Written in Perl. Almost universal... updated: 1994/10/16 language: OISC package: oisc version: we don't need no steenking versions parts: interpreter, documentation, examples. author: Ross Cunniff <[email protected]> location: ftp://locke.ccil.org:pub/retro/oisc.shar.gz (in the Museum of Retrocomputing) description: You've heard of RISC, Reduced Instruction Set Computers? Well, here is the concept taken to its logical extreme -- an emulator for a computer with just one (1) instruction! Illustrative programs in the OISC machine language are included. language: orthogonal package: orthogonal version: ? parts: interpreter, documentation, examples. author: Jeff Epler <[email protected]> location: ftp://locke.ccil.org/pub/retro/orthogonal.shar.gz (in the Museum of Retrocomputing) description: A mini-language composed in September 1994 as a response to a speculative thread on the USENET group alt.lang.intercal, designed to explore the possibility of truly two-dimensional control structures. Vaguely FORTH-like, except that control flow can move forward, backward, or sideways (or even diagonally!). updated: 1994/09/24 language: Common Lisp package: Garnet version: 2.2 parts: user interface builder author: The Garnet project location: ftp://a.gp.cs.cmu.edu/usr/garnet/garnet description: Garnet is a user interface development environment for Common Lisp and X11. It helps you create graphical, interactive user interfaces for your software. Garnet is a large scale system containing many features and parts including a custom object-oriented programming system which uses a prototype-instance model. It includes postscript support, gester recognition, and Motif emulation. contact: [email protected] updated: October 15, 1993 language: FMPL of Accardi package: FMPL interpreter version: 1 parts: interpreter, documentation author: Jon Blow <[email protected]> location: ftp://xcf.berkeley.edu/src/local/fmpl/* 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: Garnet package: Multi-Garnet version: 2.1 parts: ? author: Michael Sannella <[email protected]> location: ftp://a.gp.cs.cmu.edu/usr/garnet/alpha/src/contrib/multi-garnet description: better contstraint system for Garnet ?? updated: 1992/09/21 language: EXPRESS (ISO 10303, Part 11) package: NIST EXPRESS Toolkit version: parts: scanner (lex or flex), parser (yacc or bison), library author: Don Libes <[email protected]> location: ftp://ftp.cme.nist.gov/pub/step/npttools/exptk.tar.Z description: Compiler front-end for EXPRESS language. Several backends are available in the same location. conformance: CADDETC certified. reference: numerous documents on ftp.cme.nist.gov/pub/step/nptdocs/exptk-*.ps.Z EXPRESS Language Reference Manual features: Can be tried without installing by emailing EXPRESS schemas to [email protected] bugs: [email protected] restriction: none, is public-domain requires: lex or flex, yacc or bison, C compiler ports: any UNIX or UNIX-like system portability: DOS port available from: status: Settling down now that it has been certified. A new version is in development for EXPRESS 2 discussion: [email protected] (EXPRESS Users Mailing List) help: [email protected] support: [email protected] (not officially supported) contributions: no contributions, however a letter to your US congressional representative describing what a great (or lousy) job NIST is doing is helpful to maintaining (or destroying) our funding. announcements: EXPRESS Users Mailing List contact: [email protected] updated: 1994/11/25 ------------------------------------------------------------------------------- references ------------------------------------------------------------------------------- name: The Apple II Programmer's Catalog of Languages and Toolkits version: 3.0 author: Larry W. Virden <[email protected]> location: posted to comp.sys.apple2, comp.lang.misc; ftp://ftp.idiom.com/pub/compilers-list/AppleIICatalog3.0 description: A survey of language tools available for the Apple ][. updated: 1994/08/26 name: Catalog of embeddable Languages. version: 2 author: Colas Nahaboo <[email protected]> location: posted to comp.lang.misc,comp.lang.tcl; ftp://avahi.inria.fr/pub/EmbeddedInterpretersCatalog.txt description: Descriptions of languages from the point of view of embedding them. updated: 1992/07/09 name: Compilers bibliography version: 1.5 author: Charlie A. Lins location: ftp://ftp.apple.com/pub/oberon/comp_bib_1.4.Z 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. updated: 1992/10/31 name: haskell-status version: ? author: Simon Peyton Jones <[email protected]> location: posted occasionally to ??? description: A report, detailing the current features and status of all the implementations of Haskell. updated: ? name: Language List version: 2.1 author: Bill Kinnersley <[email protected]> location: posted regularly to comp.lang.misc; ftp://primost.cs.wisc.edu/pub/comp.compilers/LanguageList* ftp://ftp.idiom.com/pub/compilers-list/LanguageList* description: Descriptions of almost every computer language there is. Many references to available source code. updated: 1993/09/11 name: Numerical Analysis Using Non-Procedural Paradigms version: published thesis author: Steve Sullivan <[email protected]> location: ftp://ftp.mathcom.com/Mathcom/numex or send email to the author. description: A thesis, that among other things, compares and benchmarks: C++, Modula-3, Standard ML, Haskell, Sather, Common Lisp, Fortran 77, and Fortran 90. updated: 1995 name: SoftFloat version: 2 author: John R. Hauser location: http://HTTP.CS.Berkeley.EDUn/~jhauser/arithmetic description: SoftFloat is a high-quality software implementation of floating-point conforming to the IEC/IEEE Standard for Floating-point Arithmetic. Release 2 now has single, double, extended double (80-bit), and quadruple (128-bit) precisions, all written in standard C. There's also a program called TestFloat for testing a computer's IEEE floating-point. See the Web page for details. updated: 1997/07/10 name: The Lisp FAQs version: 1.30 author: Mark Kantrowitz <[email protected]> location: posted regularly to comp.lang.lisp,news.answers,comp.answers description: Details of many lisps and systems written in lisps including many languages not covered elsewhere. updated: 1993/02/08 name: Survey of Interpreted Languages version: ? author: Terrence Monroe Brannon <[email protected]> location: Posted to comp.lang.tcl,comp.lang.misc,comp.lang.perl, gnu.emacs.help,news.answers; or ftp://archive.cis.ohio-state.edu/pub/gnu/emacs/elisp-ar*/pack*/Hy*Act*F*/survey-inter*-languages description: Detailed comparision of a few interpreters: Emacs Lisp, Perl, Python, and Tcl. updated: ? ------------------------------------------------------------------------------- archives ------------------------------------------------------------------------------- language: Ada package: AdaX location: ftp://falcon.stars.rosslyn.unisys.com/pub/AdaX/* description: an archive of X libraries for Ada. Includes Motif [note, I chose this server out of many somewhat randomly. Use archie to find others --ed] contact: ? language: APL, J package: APL, J, and other APL Software at Waterloo location: ftp://watserv1.waterloo.edu/languages/apl/index contact: Leroy J. (Lee) Dickey <[email protected]> language: Assembler (Motorola) package: ? location: ftp://bode.ee.ualberta.ca/pub/dos/motorola description: An archive of development software and tools for the Motorola microcontroller series. Includes assemblers, a C compiler (6809), and applications. Comes mainly from the Austin Texas Motorola BBS. language: Assembler (Various) package: The Beowulf archive? location: hpcsos.col.hp.com : /misc/ns32k/beowulf description: An archive of assemblers for various 8-bit microcontrollers language: Assembler, Forth (8051) package: The Siemens 8051 archive location: ftp://ftp.pppl.gov/pub/8051/signetics-bbs/ description: An archive for development software and tools for the 8051 microcontroller. contact: [email protected] language: Assembler (8051) package: The CAS archive. location: ftp://nic.funet.fi/pub/microprocs/MCS-51/CAS/ description: Another archive for development software and tools for the 8051 microcontroller. May be converted into a general microprocessor archive in the future. language: Assembler package: asl version: 1.41r6 location: ftp://nic.funet.fi/pub/microprocs/MCS-51/CAS/ description: A cross assembler for a variety of micro-controllers/processors ported from the same author's Borland version to Linux author: [email protected] (Alfred Arnold) restrictions: GPL updated: 1997/02/24 language: C, C++, Objective-C, yacc, lex, postscript, sh, awk, smalltalk, sed package: the GNU archive sites location: NOTE: Many gnu files are now compressed with gzip. You can tell a gzip'ed file because it has a lower-case .z or .gz rather than the capital .Z that compress uses. Gzip is available from these same archives ftp://prep.ai.mit.edu/pub/gnu/* USA: ftp://wuarchive.wustl.edu/mirrors4/gnu/* ftp://ftp.cs.widener.edu/pub/src/gnu/* ftp://uxc.cso.uiuc.edu/gnu/* ftp://col.hp.com/mirrors/gnu/* ftp://gatekeeper.dec.com/pub/GNU/* ftp://ftp.uu.net/packages/gnu/* Japan: ftp://ftp.cs.titech.ac.jp/ ftp://utsun.s.u-tokyo.ac.jp/ftpsync/prep/* Australia: ftp://archie.au/gnu/* Europe: ftp://src.doc.ic.ac.uk/gnu/* ftp://ftp.informatik.tu-muenchen.de/pub/GNU/*/* [re-org'ed] ftp://ftp.informatik.rwth-aachen.de/pub/gnu/* ftp://nic.funet.fi/pub/gnu/* ftp://ugle.unit.no/pub/gnu/* ftp://isy.liu.se/pub/gnu/* ftp://ftp.stacken.kth.se/pub/gnu/* ftp://sunic.sunet.se/pub/gnu/* [re-org'ed] ftp://ftp.win.tue.nl/pub/gnu/* ftp://ftp.diku.dk/pub/gnu/* ftp://ftp.eunet.ch/software/gnu/* ftp://archive.eu.net/gnu/* [re-org'ed] 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. restriction: Most GNU programs are CopyLeft'ed. That means that they are distributed under the terms of the GNU General Public License or GNU Library General Public License. The CopyLeft is only a concern if you want to use actual GNU code in your program. Using Gcc or any of the other tools is completely safe from a copyright point-of-view with the sole exception of bison which includes GNU code in its output. If you use a GNU library, you must supply an unlinked version of your program. language: C, C++ package: LEARN C/C++ TODAY location: http://nyx10.cs.du.edu:8001/~vcarpent/learn-cpp.html or ftp://rtfm.mit.edu/pub/usenet/news.answers/C-faq/learn-c-cpp-today descripton: The LEARN C/C++ TODAY list is a list of a few C and C++ language tutorials available to a user. This list includes interactive tutorials, public-domain code collections, books etc. contact: Vinit S. Carpenter <[email protected]> language: Forth package: ? location: [email protected][192.35.246.17]:pub/forth description: Forth implementations and programs contact: Paulo A. D. Ferreira <?> language: Haskell package: ? location: [email protected]:pub/haskell/library [email protected]:pub/haskell/library [email protected]:pub/haskell/library description: An archive of Haskell and Gofer programs language: ALGOL-60, FOCAL, FOOGOL, INTERCAL, JCL, MIXAL, OISC, PILOT, TRAC, orthogonal, Little Smalltalk package: The Museum of Retrocomputing. location: ftp://locke.ccil.org/pub/retro/ description: The Museum of Retrocomputing. This archive collects implementations of languages that time forgot -- also, the jokes, freaks, and monstrosities from the history of language design. language: lisp package: MIT AI Lab archives location: ftp://ftp.ai.mit.edu/pub/* description: archive of lisp extensions, utilities, and libraries contact: ? language: lisp package: Lisp Utilities collection location: ftp://ftp.cs.cmu.edu/afs/cs.cmu.edu/user/mkant/Public/Lisp/ description: ??? contact: [email protected] language: Scheme package: The Scheme Repository location: ftp://nexus.yorku.ca/pub/scheme/* description: an archive of scheme material including a bibliography, the R4RS report, sample code, utilities, and implementations. contact: Ozan S. Yigit <[email protected]> language: Smalltalk package: Manchester Smalltalk Goodies Library location: ftp://st.cs.uiuc.edu/uiuc/st*/* UK: ftp://mushroom.cs.man.ac.uk/uiuc/st*/* description: a large collection of libraries for smalltalk. Created by Alan Wills, administered by Mario Wolczko. contact: [email protected] language: Tcl package: Tcl/Tk Contrib Archive location: ftp://ftp.neosoft.com/pub/tcl/ description: An archive of Tcl/tk things. contact: Barbara Pearce <[email protected]> language: TeX package: CTAN (Comprehensive TeX Archive Network location: ftp://ftp.shsu.edu/~ftp/tex-archive/* ?? Europe: ftp://ftp.uni-stuttgart.de/ ? description: A large archive site of most all things TeX-related, including literate programming tools such as WEB and derivatives. ------------------------------------------------------------------------------- cross-reference ------------------------------------------------------------------------------- These are additional categories. When an implementation is in a category rather than a language, the language is indicated in (parenthesis). category: command shells description: These are the languages that treat bare words as programs to execute. lref: csh lref: ERGO-Shell lref: es lref: Korn Shell lref: Q lref: rc lref: ssh lref: Z-shell category: compiler frontend/backend glue description: These are the languages used to glue semantic analysers to code generators. lref: C -- C is often used as an intermediate step lref: RTL lref: SUIF iref: (lcc intermediate format) lcc category: database description: These are the languages that are either specifically designed for database access or have an interface to persistent data that is much more than embedded SQL. lref: PFL lref: PROGRES iref: (CooL) CooL-SPE iref: (E) GNU E iref: (Prolog) Aditi iref: (Prolog) CORAL category: programming in the large description: These are systems designed for large-scale programming projects. [I just added this category, so please add to it --ed] lref: C lref: C++ lref: CooL category: distributed description: These are languages that include constructs that specifically support distributed programming. lref: Hermes lref: Glish iref: (Tcl) Tcl-DP category: dynamic foreign functions description: These tools can dynamically load C code at run-time. lref: Common Lisp lref: Python lref: Perl iref: (Scheme) Elk category: editor construction description: These are languages that are embedded in editors lref: IVY lref: S-Lang lref: elisp category: educational description: These are languages that are either designed for teaching, or are often used that way. lref: ABC lref: C lref: Logo lref: MIX lref: O'small lref: Pascal lref: PILOT lref: Scheme category: embeddable description: These tools can be used as scripting languages for programs written in C. They are all interpreted. lref: IVY lref: Perl lref: Python lref: S-Lang lref: Tcl iref: (C) ae iref: (Scheme) Elk iref: (Scheme) siod category: glue description: These are languages that are designed to tie other programs and libraries together. cref: dynamic foreign functions cref: command shells lref: Glish lref: REXX category: graphic user interface support description: These are the languages that have support for writing gui programs. cref: C variants lref: Common Lisp lref: LIFE lref: Python lref: Perl iref: (Caml) Caml Light iref: (CooL) CooL-SPE iref: (Prolog) PI iref: (Prolog) XWIP iref: (Scheme) Elk iref: (Scheme) ezd iref: (Scheme) STk iref: (Tcl) Tk iref: (Tcl) Wafe category: interactive description: These are the languages that are meant to be used interactively. [I'm sure there are more. Tell me! --ed] lref: Caml lref: Common Lisp lref: Q lref: TRAC iref: (C) ae category: reflective description: from Rainer Joswig ([email protected]) : To make it short: Reflective Languages have access to their own implementation. One can ask about the state of the running system and/or change aspects of the language. lref: ABCL ??? lref: ABCL/1 lref: MeldC lref: CLOS with MOP (Meta Object Protocol) category: terminal graphics support description: These are languages that can access curses, or have an equivalent. cref: C variants lref: ICI lref: Perl lref: Python iref: (Fortran) F-curses iref: (Common Lisp) CLISP iref: (Scheme) scm category: text manipulation description: These languages have very high-level features for manipulating text. cref: compiler generators and related tools lref: Icon lref: Lex lref: Perl lref: Snobol4 category: unix tool building description: These are languages that are appropriate for building tools in a Unix environment. To be included, direct access to most system features is required. lref: C lref: ICI lref: Perl lref: Python lref: Tcl iref: (Scheme) scsh category: window manager construction description: These are languages that are built into window managers iref: (Lisp) GWM -- Send compilers articles to [email protected], meta-mail to [email protected]. Archives at http://www.iecc.com/compilers
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |