| These are either special-purpose languages and tools, or general purpose languages and tools that have traditionally been used for mathematical and scientific computing task. |
| Fortran | |
| ? | |
| ? | |
| ? | |
| Steve Mccrea <mccrea@gdwest.gd.com> | |
| ? | |
| a tool to split up monolithic fortran programs | |
| new awk | |
| ? |
| Fortran | |
| ? | |
| ? | |
| semantic analyser | |
| ? | |
| http://www.nag.co.uk:70/ | |
| Fortran 90 semantic analyser | |
| ? |
| C (ANSI) | |
| ? 1984 ANSI C to K&R C preprocessor ? | |
| ? | |
| translator(K&R C) | |
| ? | |
| from comp.sources.unix archive volume 1 | |
| ? | |
| ? | |
| ? |
| Ratfor | |
| ? ratfor ? | |
| ? | |
| translator(Ratfor->Fortran IV) | |
| Brian Kernighan and P.J. Plauger (wrote the book anyway) | |
| comp.sources.unix archives volume 13 | |
| Ratfor is a front end language for Fortran. It was designed to give structured control structures to Fortran. It is mainly of historical significance. | |
| ? |
| Fortran (HPF) | |
| Adaptor (Automatic DAta Parallelism TranslatOR) | |
| 3.0 | |
| preprocessor, library, documentation | |
| ? | |
| ftp://ftp.gmd.de/GMD/adaptor/adp_3.0.tar.gz | |
|
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. | |
| http://www.gmd.de/SCAI/lab/adaptor/adaptor_home.html | |
| CM-5, iPCS/860, Meiko CS1/CS2, KSR 1, SGI, Alliant, network of Suns, or RS/6000s | |
| Thomas Brandes <brandes@gmd.de> | |
| 1995/06 |
| C | |
| ae (application executive) | |
| 2 | |
| interpreter | |
| Brian Bliss <bliss@convex.com> | |
| ftp://sp2.csrd.uiuc.edu/pub/CSRD_Software/APPL_EXEC/ | |
| ae (the "application executive") is a C interpreter library which is compiled with an application; hence, the interpreter exists in the same process and address space. it includes a dbx symbol table scanner to access compiled vars & routines, or you can enter them manually by providing a type/name declaration and the address. when the interpreter is invoked, source code fragments are read from the input stream (or a string), parsed, and evaluated immediately. The user can call compiled functions in addition to a few built-in intrinsics, declare new data types and data objects, etc. Different input streams can be evaluated in parallel on alliant machines. Version 2 differs substantially in that the code fragments are read into an intermediate form before being evaluated, and can be stored in this form and then called from either user code or the interpreter. Version 2 also handles looping constructs (and the full C language), unlike version 1. | |
| SunOS (cc or gcc), Alliant FX, SGI (partial), Cray YMP (partial) | |
| July 18th, 1993 |
| Algea language (math manipulation - MATLAB-like) | |
| Algea | |
| 3.4.0 | |
| ? | |
| Scott Hunziker <ksh@eskimo.com> and Mike Brennan | |
|
http://www.eskimo.com/~ksh/algae/index.html http://axams1.bo.infn.it:9999/algae ftp://ftp.eskimo.com/u/k/ksh/algae | |
| GPL | |
| gcc | |
| UNIX (Linux Only?) | |
| Active | |
| To join the Algea list email algae-list-request@eskimo.com | |
| Algae is an interpreted language for numerical analysis. Algae borrows ideas from languages like MATLAB, APL, and C, but it was developed in response to a need for a free, efficient, and versatile high-level language with large problem capability. | |
| 1998/05 |
| APL | |
| APLWEB | |
| ? | |
| translator(web->apl), translator(web->TeX) | |
| Dr. Christoph von Basum <CvB@erasmus.hrz.uni-bielefeld.de> | |
| ftp://watserv1.uwaterloo.ca/languages/apl/aplweb/* | |
| [Should this be listed with the Web entries? -- Ed.] | |
| December 7th, 1992 |
| C-like caluculator | |
| Arbitrary precision calculator | |
| 1.26.4 | |
| interpreter | |
| David I. Bell <dbell@canb.auug.org.au> | |
| ftp://ftp.uu.net/pub/calc | |
| Arbitrary precision C-like calculator [similar to BC? --ed] | |
| Linux | |
| June 15th, 1993 |
| Unix BC (arbitrary-precision arithmetic language) | |
| C-BC | |
| 1.1 | |
| bytecode compiler, interpreter, documentation, examples | |
| Mark Hopkins <mark@omnifest.uwm.edu> | |
| alt.sources (10/04/93), or contact author by E-mail. | |
| A strongly typed version of BC with expanded C-like syntax, more base types, with ability to form array and pointer types of any dimension and to allocate/free arrays at run-time. | |
| Most POSIX-BC features supported, except functions must be declared consistently and declared before first use. String handling slightly different. | |
| C-BC implementation notes contained with software documentation | |
| ANSI-C compiler | |
| DOS, Unix | |
| No system dependent features present. | |
| August 23rd, 1993 |
| C | |
| C-Interp | |
| ? | |
| interpreter | |
| ? | |
| ftp://oac2.hsc.uth.tmc.edu/Mac/Misc/C_Interp.sit | |
| An interpreter for a small subset of C, originally part of a communications package. | |
| ? Chuck Shotton <cshotton@oac.hsc.uth.tmc.edu> | |
| May 14th, 1993 |
| C | |
| C-Tree | |
| .04 | |
| Source | |
| Shaun Flisakowski | |
| ftp.kagi.com:/flisakow/ctree_04.tar.gz ftp.kagi.com:/flisakow/ctree_04.zip ftp.cs.wisc.edu:/coral/tmp/spf/ctree_04.tar.gz | |
| Takes the name of a file to parse as input, and returns a pointer to the parse tree generated; or NULL if there are errors, printing the errors to stderr. It is written using flex and bison. | |
| July 13th, 1997 |
| C, nroff, texinfo, latex, html | |||||||||||||
| c2man | |||||||||||||
| 2.0 patchlevel 34 | |||||||||||||
documentation generator (C -> nroff -man, -> texinfo, -> latex,
| |||||||||||||
| Graham Stoney <greyham@research.canon.oz.au> | |||||||||||||
| |||||||||||||
| c2man is an automatic documentation tool that extracts comments from C source code to generate functional interface documentation in the same format as sections 2 & 3 of the Unix Programmer's Manual. It requires minimal effort from the programmer by looking for comments in the usual places near the objects they document, rather than imposing a rigid function-comment syntax or requiring that the programmer learn and use a typesetting language. Acceptable documentation can often be generated from existing code with no modifications. | |||||||||||||
| supports both K&R and ISO/ANSI C coding styles | |||||||||||||
| |||||||||||||
| yacc/byacc/bison, lex/flex, and nroff/groff/texinfo/LaTeX. | |||||||||||||
| Unix, OS/2, MSDOS, VMS. | |||||||||||||
| very high for unix, via Configure | |||||||||||||
| actively developed; contributions by users are encouraged. | |||||||||||||
| via a mailing list: send "subscribe c2man <Your Name>" (in the message body) to listserv@research.canon.oz.au | |||||||||||||
| from the author and other users on the mailing list: c2man@research.canon.oz.au | |||||||||||||
| patches appear first in comp.sources.bugs, and then in comp.sources.misc. | |||||||||||||
| March 2nd, 1995 |
| C, nroff, texinfo, latex, html, autodoc | |||||||
| c2man | |||||||
| 2.0 patchlevel 41 | |||||||
documentation generator (C -> nroff -man, -> texinfo, -> latex,
| |||||||
| Graham Stoney <greyham@research.canon.com.au> | |||||||
| |||||||
| c2man is an automatic documentation tool that extracts comments from C source code to generate functional interface documentation in the same format as sections 2 & 3 of the Unix Programmer's Manual. It requires minimal effort from the programmer by looking for comments in the usual places near the objects they document, rather than imposing a rigid function-comment syntax or requiring that the programmer learn and use a typesetting language. Acceptable documentation can often be generated from existing code with no modifications. | |||||||
| supports both K&R and ISO/ANSI C coding styles | |||||||
| |||||||
| yacc/byacc/bison, lex/flex, and nroff/groff/texinfo/LaTeX. | |||||||
| Unix, OS/2, MSDOS, VMS, Amiga. | |||||||
| very high for unix, via Configure | |||||||
| user-supported; contributions by users are encouraged. | |||||||
| c2man mailing list: send "subscribe c2man" (in the message body) to majordomo@research.canon.com.au | |||||||
| from the author and other users on the mailing list: c2man@research.canon.com.au | |||||||
| patches appear first in comp.sources.bugs, and then in comp.sources.misc. | |||||||
| October 17th, 1996 |
| C | |
| c68/c386 | |
| 4.2a | |
| compiler | |
| Matthew Brandt, Christoph van Wuellen, Keith and Dave Walker | |
| ftp://archimedes.nosc.mil/pub/misc/c386-4.2b.tar.Z [Temporary location, looking for a permanent home. -ed] You can get an older, 68k-only version from ftp://bode.ee.ualberta.ca/motorola/m68k/cc68k.arc | |
|
K&R C plus prototypes and other ANSI features.
targetted to several 68k and i386 assemblers, incl. gas. floating point support by inline code or emulation. lots of available warnings. better code generation than ACK. | |
| 386 and 68k Minix. generic unix actually. | |
| actively worked on by the Walkers. | |
| comp.os.minix | |
| ? |
| Calc? (symbolic math calculator) | |
| Calc | |
| 2.02 | |
| interpreter, emacs mode, documentation | |
| Dave Gillespie <daveg@cs.caltech.edu> | |
| ftp://gatekeeper.dec.com/calc-2.02.tar.z or any other GNU archive site | |
| Calc is an extensible, advanced desk calculator and mathematical tool written in Emacs Lisp that runs as part of GNU Emacs. It is accompanied by the "Calc Manual", which serves as both a tutorial and a reference. If you wish, you can use Calc as only a simple four-function calculator, but it also provides additional features including choice of algebraic or RPN (stack-based) entry, logarithms, trigonometric and financial functions, arbitrary precision, complex numbers, vectors, matrices, dates, times, infinities, sets, algebraic simplification, differentiation, and integration. | |
| ? | |
| ? |
| C (ANSI) | |
| cextract | |
| 1.7 | |
| translator(K&R C), header file generator | |
| Adam Bryant <adb@cs.bu.edu> | |
| ftp from any comp.sources.reviewed archive | |
| 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 | |
| Unix, VMS | |
| November 3rd, 1992 |
| Fortran, C | |
| cfortran.h | |
| 2.6 | |
| macros, documentation, examples | |
| Burkhard Burow | |
| ftp://zebra.desy.de/cfortran/* | |
|
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. | |
| 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. | |
| VAX VMS or Ultrix, DECstation, Silicon Graphics, IBM RS/6000, Sun, CRAY, Apollo, HP9000, LynxOS, f2c, NAG f90. | |
| high | |
| burow@vxdesy.cern.ch | |
| April 12th, 1992 |
| C (ANSI) | |
| cgram | |
| ? | |
| grammar | |
| Mohd Hanafiah Abdullah <napi@cs.indiana.edu> | |
| ftp://primost.cs.wisc.edu/pub/comp.compilers/cgram-ll1.Z | |
| An ANSI C grammar in LL(k) (1 <= k <= 2). It's written in Scheme, so you need to have a Scheme interpreter to process the grammar using a program (f-f-d.s) that extracts the FIRST/FOLLOW/DIRECTOR sets. | |
| Scheme | |
| ? | |
| ? |
| C, lcc intermediate format | |
| Chop | |
| 0.6 | |
| code generator | |
| Alan L. Wendt <wendt@CS.ColoState.EDU> | |
| ftp://beethoven.cs.colostate.edu/pub/chop/0.6.tar.Z | |
| The current revision, 0.6, is interfaced with Fraser and Hanson's lcc front end. The result is a highly fast C compiler with good code selection and no global optimization. Project Status: Chop compiles and runs a number of small test programs on the Vax. I'm currently updating the NS32k and 68K retargets for lcc compatibility. After I get them working, I'll work on getting the system to compile itself, get struct assignments working, improve the code quality and compile speed, and run the SPEC benchmarks. That will be rev 1.0. | |
| "Fast Code Generation Using Automatically-Generated Decision Trees", ACM SIGPLAN '90 PLDI | |
| April 28th, 1993 |
| CLP (Constraint Logic Programming language) [Prolog variant] | |
| CLP(R) | |
| 1.2 | |
| runtime, compiler(byte-code), contstraint solver | |
| IBM | |
| mail to Joxan Jaffar <joxan@watson.ibm.com> | |
| 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 | |
| free for academic and research purposes only | |
| unix, msdos, OS/2 | |
| Roland Yap <roland@bruce.cs.monash.edu.au>, Joxan Jaffar | |
| October 14th, 1992 |
| C (ANSI) | |
| cproto | |
| 4 patchlevel 0 | |
| translator(K&R C) | |
| Chin Huang <chin.huang@canrem.com> | |
| comp.sources.misc volume 29 | |
| cproto generates function prototypes from function definitions. It can also translate function definition heads between K&R style and ANSI C style. | |
| Unix, VMS, MS-DOS | |
| July 18th, 1992 |
| C | |
| csize | |
| 1.12 | |
| code analysis tool | |
| Christopher Lott <c.m.lott@ieee.org> | |
| http://www.cs.umd.edu/users/cml/ | |
| A C language code counter | |
| October 17th, 1994 |
| C | |
| CSlang | |
| 1.0 | |
| interpreter | |
| Tudor Hulubei <tudor@cs.unh.edu> | |
| http://www.cs.unh.edu/~tudor/cslang/ ftp://ftp.cs.unh.edu/pub/grads/tudor/cslang/cslang-1.0.tar.gz | |
| CSlang is a C interpretor I have developed in 1996. It is based on James A. Roskind's C grammar. Although not all the features of C have been implemented yet, and I am not working on this project at the moment, I decided to make it available in its present form. | |
| inactive | |
| 1997 |
| C | |
| cutils | |
| 1.5.2 | |
| C language miscellaneous utilities | |
| C language miscellaneous utilities; C, obfusc, shrouder, highlight, yacc, literate | |
| ssigala@globalnet.it (Sandro Sigala) | |
| ftp://ftp.vix.com/guests/ssigala/pub/cutils ftp://sunsite.unc.edu/pub/Linux/devel/lang/c | |
| ANSI C compiler | |
| BSD-like | |
| 1997/11 |
| C | |
| Cxref | |
| 1.4 | |
| Documentation + Cross-reference generator | |
| Andrew M. Bishop <amb@gedanken.demon.co.uk> | |
| ftp://ftp.demon.co.uk/pub/unix/unix/tools/cxref-1.4.tgz ftp://sunsite.unc.edu/pub/Linux/devel/lang/c/cxref-1.4.tgz http://www.gedanken.demon.co.uk | |
|
Produce LaTeX or HTML documentation including
cross-references from C program source code.
The documentation for the program is produced from comments in the code that are appropriately formatted. Cross references are provided for global variables, functions, include files and type definitions. | |
| |
| GPL | |
| Yacc, Lex, C compiler, HTML browser and/or LaTeX. | |
| UNIX (Linux, SunOS, Solaris, HPUX) others? | |
| Will compile for WinNT, OS/2, but needs a little work. | |
| Version 1.4 is stable Version 1.3 is stable (with known patches) Version 1.2 has a few bugs (fixed in 1.2[ab] patches). Versions 1.0 & 1.1 are known to contain bugs. | |
| By mail to author amb@gedanken.demon.co.uk, or on cxref homepage via http://www.gedanken.demon.co.uk/ | |
| As for discussion above. | |
| As for discussion above. | |
| As for discussion above. | |
| comp.os.linux.announce and homepage. | |
| 1997/07 |
| C | |
| cxref | |
| ? | |
| code analysis tool | |
| Arnold Robbins <arnold@gatech.?> | |
| use archie | |
| A cross-reference genrator | |
| ? |
| C, C++ | |
| Cyclo - cyclomatic complexity tool | |
| the one and only version | |
| code analysis tool | |
| Roger D Binns | |
| alt.sources archive, June 28th, 1993, <C9C2rH.EE@brunel.ac.uk> | |
| It measures cyclomatic complexity, shows function calls and can draw flowgraphs of ANSI C and C++ code. | |
| lex, C++ | |
| June 28th, 1993 |
| C, C++ | |
| ddd | |
| 2.1 | |
| symbolic graphical debugger, documentation | |
| Andreas Zeller | |
| ftp://ftp.ips.cs.tu-bs.de/pub/local/softech/ddd/ddd-2.1.tar.gz | |
| The Data Display Debugger (DDD) is a common graphical user interface to GDB, DBX, and XDB, the popular UNIX debuggers. Besides ``usual'' features such as viewing source texts and breakpoints, DDD provides a graphical data display, where data structures are displayed as graphs. A simple mouse click dereferences pointers or reveals structure contents, updated each time the program stops. Using DDD, you can reason about your application by viewing its data, not just by viewing it execute lines of source code. | |
| ddd@ips.cs.tu-bs.de http://www.cs.tu-bs.de/softech/ddd/ | |
| GPL | |
| May 5th, 1997 |
| C | |
| dsp56165-gcc | |
| ? | |
| compiler | |
| Andrew Sterian <asterian@eecs.umich.edu> | |
| ftp://wuarchive.wustl.edu/usenet/alt.sources/? | |
| A port of gcc 1.40 to the Motorola DSP56156 and DSP56000. | |
| ? |
| C | |
| dsp56k-gcc | |
| ? | |
| compiler | |
| ? | |
| A port of gcc 1.37.1 to the Motorola DSP56000 done by Motorola | |
| ? | |
| ? |
| C, C++, Objective-C | |
| emx programming environment for OS/2 | |
| 0.8g | |
| gcc, g++, gdb, libg++, .obj linkage, DLL, headers | |
| Eberhard Mattes <mattes@azu.informatik.uni-stuttgart.de> | |
| ? | |
| subscribe to emx-list using listserv@ludd.luth.se | |
| September 21st, 1992 |
| Fortran | |
| F-curses | |
| ? | |
| library | |
| Wade Schauer <sal!wade@sactoh0.sac.ca.us> | |
| comp.sources.misc volume 44 | |
| F-curses (C) is a library of Fortran and C routines that gives Fortran programmers tranparent access to the curses library (a C library). | |
| shareware | |
| UNIX, MS-DOS | |
| October 10th, 1994 |
| Fortran | |
| f2c | |
| 1993.04.28 | |
| translator (to C), postscript documentation, man pages, support libraries. | |
| S. I. Feldman, D. M. Gay, M. W. Maimone and N. L. Schryer | |
| ftp from netlib@netlib.bell-labs.com:netlib/f2c/src/* | |
| translator (Fortran 77 to ANSI C or C++) | |
| D. M. Gay <dmg@research.bell-labs.com> | |
| 1993 April 27 |
| C | |
| fdlibm | |
| ? | |
| library | |
| Dr. K-C Ng | |
| ftp://netlib.att.com/netlib/fdlibm.tar | |
| Dr. K-C Ng has developed a new version of libm that is the basis for the bundled /usr/lib/libm.so in Solaris 2.3 for SPARC and for future Solaris 2 releases for x86 and PowerPC. It provides the standard functions necessary to pass the usual test suites. This new libm can be configured to handle exceptions in accordance with various language standards or in the spirit of IEEE 754. The C source code should be portable to any IEEE 754 system with minimal difficulty. | |
| IEEE 754 | |
| Send comments and bug reports to: fdlibm-comments@sunpro.eng.sun.com. | |
| December 18th, 1993 |
| Fortran | |
| Floppy | |
| ? | |
| ? | |
| ? | |
| ffccc in comp.sources.misc archive volume 12 | |
| ? | |
| ? | |
| August 4 1992 |
| Fortran | |
| Flow | |
| ? | |
| ? | |
| Julian James Bunn <julian@vxcrna.cxern.ch> | |
| comp.sources.misc archive volume 31 | |
| 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. | |
| Floppy | |
| VMS, Unix, CMS | |
| ? |
| Fortran | |
| Fortran77 -> Fortran90 converter | |
| ? 1 | |
| translator(Fortran 77 -> Fortran 90), documentation? | |
| metcalf@cernvm.cern.ch <Michael Metcalf> | |
| ftp://jkr.cc.rl.ac.uk/pub/MandR/convert.f90 | |
| A Fortran77 to Fortran90 translator. There's a number of significant differences between the two Fortrans that makes a package like this useful. | |
| July 17th, 1993 |
| Fortran | |
| fsplit | |
| ? | |
| ? | |
| ? | |
| ? | |
| a tool to split up monolithic fortran programs | |
| ? |
| FUDGIT language (math manipulation) | |
| FUDGIT | |
| 2.27 | |
| interpreter | |
| Martin-D. Lacasse | |
| ftp://tsx-11.mit.edu/pub/linux/sources/usr.bin/fudgit-*?? | |
| FUDGIT is a double-precision multi-purpose fitting program. It can manipulate complete columns of numbers in the form of vector arithmetic. FUDGIT is also an expression language interpreter understanding most of C grammar except pointers. Morever, FUDGIT is a front end for any plotting program supporting commands from stdin. It is a nice mathematical complement to GNUPLOT, for example. Ported to Linux by Thomas Koenig | |
| GNUPLOT | |
| AIX, HPUX, Linux, IRIX, NeXT, SunOS, Ultrix | |
| Febuary 22nd, 1993 |
| GNU Fortran | |
| g77 | |
| 0.5.17 | |
| compiler, documentation, libraries. | |
| Craig Burley <burley@gnu.ai.mit.edu> | |
| ftp://any/g77-0.5.17.tar.gz GNU site | |
| GNU Fortran is a free replacement for the UNIX f77 Fortran compiler, and is currently in beta testing. | |
| To build it requires the GNU CC source distribution, Version 2.6.3 through 2.7. | |
| <fortran@gnu.ai.mit.edu> | |
| November 22nd, 1995 |
| C | |
| gc | |
| 3.4 | |
| library | |
| Hans-J. Boehm <boehm@parc.xerox.com>, Alan J. Demers | |
| ftp://parcftp.xerox.com/pub/russell/gc3.4.tar.Z | |
| This is a garbage colecting storage allocator that is intended to be used as a plug-in replacement for C's malloc. Since the collector does not require pointers to be tagged, it does not attempt to ensure that all inaccessible storage is reclaimed. However, in our experience, it is typically more successful at reclaiming unused memory than most C programs using explicit deallocation. Unlike manually introduced leaks, the amount of unreclaimed memory typically stays bounded. | |
| Sun-3, Sun-4 , Vax/BSD, Ultrix, i386/Unix, SGI, Alpha/OSF/1, Sequent (single threaded), Encore (single threaded), RS/600, HP-UX, Sony News, A/UX, Amiag, NeXT. | |
| November 5th, 1993 |
| C | |
| GCT | |
| 1.4 | |
| test-coverage-preprocessor | |
| Brian Marick <marick@cs.uiuc.edu> | |
| ftp://cs.uiuc.edu/pub/testing/gct.file/ftp.* | |
| GCT is test-coverage tool based on GNU C. Coverage tools measure how thoroughly a test suite exercises a program. | |
| CopyLeft | |
| sun3, sun4, rs/6000, 68k, 88k, hp-pa, ibm 3090, ultrix, convex, sco | |
| Gct-Request@cs.uiuc.edu | |
| commercial support available from author, (217) 351-7228 | |
| Febuary 12th, 1993 |
| C, C++ | |
| gdb | |
| 4.15.1 | |
| symbolic debugger, documentation | |
| many, but most recently Fred Fish <fnf@cygnus.com>, Stu Grossman <grossman@cygnus.com>, and John Gilmore <gnu@cygnus.com>, all of Cygnus Support | |
| ftp://gatekeeper.dec.com/gdb-*.tar.[zZ] or any other GNU archive site | |
| gdb is a full-featured symbolic debugger. It fills the same niche as dbx. Programs must be compiled with debugging symbols. | |
| <bug-gdb@prep.ai.mit.edu> | |
| CopyLeft | |
| most unix variants, vms, vxworks, amiga, msdos | |
| November 4 1995 |
| Unix BC (arbitrary-precision arithmetic language) | |
| GNU BC | |
| 1.02 | |
| parser (yacc), interpreter, BC math library | |
| Philip A. Nelson <phil@cs.wwu.edu> | |
| ftp://gatekeeper.dec.com/bc-1.02.tar.Z or any other GNU archive site | |
| BC is an arbitrary precision numeric processing language with a C-like syntax that traditionally provided a front-end to DC. This version, however, is self-contained and internally executes its own compiled code (unrelated to DC code). | |
| Superset of POSIX BC (P10003.2/D11), with a POSIX-only mode. | |
| Source code falls under the GNU CopyLeft. | |
| vsprintf and vfprintf routines | |
| Unix (BSD, System V, MINIX, POSIX) | |
| ? |
| C | |
| GNU C Library (glibc) | |
| 2.0.3 | |
| library, documentation | |
| ? | |
| ftp://gatekeeper.dec.com/glibc-2.0.3.tar.gz or any other GNU archive site Source for "crypt" must be FTP'ed from non-USA site if you are outside the USA: ftp://glibc-1.09-crypt.tar.z from ftp.uni-c.dk. | |
| The GNU C library is a complete drop-in replacement for libc.a on Unix. It conforms to the ANSI C standard and POSIX.1, has most of the functions specified by POSIX.2, and is intended to be upward compatible with 4.3 and 4.4 BSD. It also has several functions from System V and other systems, plus GNU extensions. | |
| ANSI and POSIX.1 superset. Large subset of POSIX.2 | |
| Reports sent to mailing list bug-glibc@prep.ai.mit.edu. | |
| most os's on alpha, i386, m88k, mips, and sparc | |
| November 7th, 1994 |
| C, C++, Objective-C, RTL | |||||||
| GNU CC (gcc) | |||||||
| 2.7.1 | |||||||
| compiler, runtime, examples, documentation Library listed separately | |||||||
| Richard Stallman and others | |||||||
| |||||||
| A very high quality, very portable compiler for C, C++, Objective-C. The compiler is designed to support multiple front-ends and multiple back-ends by translating first into RTL (Register Transfer Language) and from there into assembly for the target architecture. Front ends for Ada, Pascal, and Fortran are all under development. There is a bounds checking port based on gcc 2.7.1. Patches for this port are available at: ftp://dse.doc.ic.ac.uk/pub/misc/bcc | |||||||
|
C: superset of K&R C and ANSI C.
C++: supports most ARM features; exceptions supported only on some platforms. Supports "bool". Alpha-level RTTI implementation included. Not yet supported: member templates, namespaces. Developers are tracking the draft ANSI/ISO standard and are committee members. Objective-C: Complies with NeXT proposed (ANSI?) standard. | |||||||
| gnu.gcc.bug (for C/Objective-C), gnu.g++.bug (for C++) | |||||||
| GNU General Public License | |||||||
| 3b1, a29k, aix385, alpha, altos3068, amix, arm, convex, crds, elxsi, fx2800, fx80, genix, hp320, clipper, i386-{dos,isc,sco,sysv.3,sysv.4,mach,bsd,linux,windows,OS/2}, iris,i860, i960, irix4, m68k, m88ksvsv.3, mips-news, mot3300, next, ns32k, nws3250-v.4, hp-pa, pc532, plexus, pyramid, romp, rs6000, sparc-sunos, freebsd sparc-solaris2, sparc-sysv.4, spur, sun386, tahoe, tow, umpis, vax-vms, vax-bsd, we32k, hitachi-{SH,8300}, 6811 | |||||||
| very high | |||||||
| actively developed | |||||||
| gnu.gcc.help (for C/Objective-C), gnu.g++.help (for C++) | |||||||
| gnu.gcc.announce (for C/Objective-C), gnu.g++.announce (for C++) | |||||||
| 1995 |
| C, C++, Objective-C, RTL | |
| GNU CC (gcc) - unsupported Macintosh port | |
| 1.37 | |
| compiler, runtime, examples, documentation Library listed separately | |
| ? | |
| mpw-gcc-1.37.1r14 from ? | |
| This is an unsupported port of the GNU C compiler to the Macintosh environment. [If anyone knows who the author is please let me know - ed] | |
| ? | |
| GNU General Public License | |
| Macintosh | |
| very high | |
| ? | |
| November 27th, 1993 |
| Unix DC (arbitrary-precision arithmetic language) | |
| GNU DC | |
| 0.2 | |
| interpreter | |
| ? | |
| ftp://gatekeeper.dec.com/dc-0.2.tar.Z or any other GNU archive site | |
| DC is the language for an arbitrary precision postfix calculator. This version is a subset of DC that handles all the Unix DC operations, except the (undocumented) array operations. | |
| Attempting integration with GNU BC. | |
| May 21st, 1993 |
| C | |
| GNU superoptimizer | |
| 2.5 | |
| exhaustive instruction sequence optimizer | |
| Torbjorn Granlund <tege@gnu.ai.mit.edu> with Tom Wood | |
| ftp://gatekeeper.dec.com/superopt-2.5.tar.Z or any other GNU archive site | |
| GSO is a function sequence generator that uses an exhaustive generate-and-test approach to find the shortest instruction sequence for a given function. You have to tell the superoptimizer which function and which CPU you want to get code for. This is useful for compiler writers. | |
| Torbjorn Granlund <tege@gnu.ai.mit.edu> | |
| GNU General Public License | |
| Alpha, Sparc, i386, 88k, RS/6000, 68k, 29k, Pyramid(SP,AP,XP) | |
| 1995 |
| C | |
| Harvest C | |
| 1.3 | |
| compiler, assembler, linker. | |
| ? | |
| ftp://archive.umich.edu/mac/development/languages/harves* | |
| The parts of the system are all integrated in a unique application, which manages a "project" composed by several C source files and resource files (which contain data). | |
| Macintosh | |
| Eric W. Sink | |
| May 26th, 1992 |
| APL | |
| I-APL | |
| ? | |
| ? | |
| ? | |
| ftp://watserv1.waterloo.edu/languages/apl/* | |
| ? | |
| July 6th, 1992 |
| J | |
| J from ISI | |
| 6 | |
| interpreter, tutorial | |
| Kenneth E. Iverson and Roger Hui <hui@yrloc.ipsa.reuter.com> | |
| ftp://watserv1.waterloo.edu/languages/apl/j/* | |
| J was designed and developed by Ken Iverson and Roger Hui. It is similar to the language APL, departing from APL in using using the ASCII alphabet exclusively, but employing a spelling scheme that retains the advantages of the special alphabet required by APL. It has added features and control structures that extend its power beyond standard APL. Although it can be used as a conventional procedural programming language, it can also be used as a pure functional programming language. | |
| Dec, NeXT, SGI, Sun-3, Sun-4, VAX, RS/6000, MIPS, Mac, Acorn IBM-PC, Atari, 3b1, Amiga | |
| October 31st, 1992 |
| J | |
| J-mode | |
| ? | |
| emacs macros | |
| ? | |
| ftp://think.com/pub/j/gmacs/j-interaction-mode.el | |
| add on to J | |
| March 4 1991 |
| C (ANSI), lcc intermediate format | |
| lcc | |
| 3.4b | |
| compiler, test suite, documentation | |
| Chris Fraser <cwf@research.att.com> Dave Hanson <drh@cs.princeton.edu> | |
| ftp://ftp.cs.princeton.edu/pub/lcc/* | |
| |
| x86, MIPS, SPARC | |
| small-scale production use | |
| email "subscribe lcc" to majordomo@cs.princeton.edu | |
| Febuary 1st, 1995 |
| C (ANSI) | |
| lcc-win32 | |
| 1.2 | |
| compiler, assembler, linker, resource compiler, resource editor, IDE, debugger, Windows header files, windows import libraries, make/dump utilities, import library generator. | |
| Chris Fraser, Dave Hanson, Jacob Navia | |
| http://www.remcomp.com/lcc-win32 | |
| A free compiler system centered around the lcc compiler version 3.6 and heavily modified to run under windows 95/NT. Enhancements include native MMX instruction support through intrinsics, an optimizer, etc. | |
| Runs only under windows 32 (Windows 95/NT) | |
| production use | |
| August 1st, 1977 | |
| jacob@jacob.remcomp.fr | |
| jacob@jacob.remcomp.fr | |
| ANSI C + enhancements for windows 95/NT. Compatible MSVC. | |
| ? |
| C (ANSI) | |
| LCLint | |
| 1.4 | |
| code analysis tool | |
| David E Evans <evs@larch.lcs.mit.edu> | |
| ftp://larch.lcs.mit.edu/pub/Larch/lclint/ | |
| LCLint is a lint-like tool for ANSI C. It can be used like a traditional lint to detect certain classes of C errors statically; if formal specifications are also supplied, it can do more powerful checking to detect inconsistencies between specifications and code. | |
| http://larch-www.lcs.mit.edu:8001/larch/lclint.html | |
| OSF/1, Ultrix, SunOS, Solaris, Linux, IRIX | |
| October 16th, 1994 |
| C | |
| Maspar MPL | |
| 3.1 | |
| compiler | |
| Christopher Glaeser | |
| ftp://maspar.maspar.com/pub/mpl-* | |
|
MPL is based on ANSI C and includes SIMD language estensions.
The new keyword "plural" is a type qualifier which is used
to declare variables on a parallel array. For example, the
declaration "plural int i" declares an "i" on each of the
parallel processors.
In addition, plural expressions can be used in IF, WHILE, SWITCH, and other statements to support plural control flow. The MPL compiler is based on the GNU compiler. | |
| Christopher Glaeser cdg@nullstone.com | |
| ? |
| C (ANSI/ISO) | |
| Metre | |
| 2.3 | |
| grammar(yacc,lex), generated parser files, metrics examples, documentation (man pages). | |
| Paul Long <plong@perf.com> | |
| ftp://iecc.com/pub/file/metre.tar.gz | |
| Metre is a freely-distributable ANSI/ISO Standard C parser whose behavior is determined by a set of rules. Sets are provided for a metrics tool and a call-tree tool. Written in Standard C, lex, and yacc, it is source-code portable across operating systems, Standard C compilers, and the various flavors of lex and yacc. | |
| Intended to conform to ANSI and ISO standards. | |
| April 4 1995 |
| Octave language (math manipulation - MATLAB-like) | |
| Octave | |
| 2.0.13 | |
| interpreter, libraries, documentation | |
| John W. Eaton | |
| ftp://ftp.che.utexas.edu/pub/octave also, any GNU archive site (see archive listing below) | |
|
Octave is a high-level language, primarily intended for
numerical computations. It provides a convenient command line
interface for solving linear and nonlinear problems
numerically.
Octave can do arithmetic for real and complex scalars and matrices, solve sets of nonlinear algebraic equations, integrate functions over finite and infinite intervals, and integrate systems of ordinary differential and differential-algebraic equations. | |
| bug-octave@che.utexas.edu | |
| GNU General Public License | |
| g++ 2.7.2 or later, a recent version of GNU Make, GNU libstdc++ | |
| Linux, Digital Unix, HP-UX, SunOS, OS/2, and Windows NT/95 | |
| May 21st, 1998 |
| PCN | |
| PCN | |
| 2.0 | |
| compiler?, runtime, linker, libraries, tools, debugger, profiler, tracer | |
| Ian Foster <foster@mcs.anl.gov>, Steve Tuecke <tuecke@mcs.anl.gov>, and others | |
| ftp://info.mcs.anl.gov/pub/pcn/pcn_v2.0.tar.Z | |
| 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. | |
| (workstation nets): Sun4, NeXT, RS/6000, SGI (multicomputers): iPSC/860, Touchstone DELTA (shared memory multiprocessors): Symmetry/Dynix | |
| <pcn@mcs.anl.gov> | |
| Febuary 12th, 1993 |
| C | |
| Pthreads | |
| 1.17 | |
| library | |
| PART (POSIX / Ada-Runtime Project) | |
| ftp://ftp.cs.fsu.edu/pub/PART/pthreads* | |
| As part of the PART project we have been designing and implementing a library package of preemptive threads which is compliant with POSIX 1003.4a Draft 6. A description of the interface for our Pthreads library is now available on ftp. | |
| GNU General Public License | |
| Sun-4/SunOS 4.1.x | |
| send "Subject: subscribe-pthreads" to mueller@uzu.cs.fsu.edu | |
| pthreads-bugs@ada.cs.fsu.edu | |
| July 22nd, 1993 |
| RLaB language (math manipulation - MATLAB-like) | |
| RLaB | |
| 1.18d | |
| interpreter, libraries, documentation | |
| Ian Searle <ians@eskimo.com> | |
| 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. | |
| Ian Searle <ians@eskimo.com> | |
| GNU General Public License | |
| GNUPLOT, lib[IF]77.a (from f2c) | |
| many unix, OS/2, Amiga | |
| March 16th, 1995 |
| C, Fortran, SUIF | |
| Stanford Base SUIF Compiler Package (``basesuif'') | |
| 1.1.2 | |
| compiler(->C,->SUIF), run-time, documentation, examples | |
| "Stanford Compiler Group" <suif@suif.stanford.edu> | |
| ftp://ftp-suif.stanford.edu/pub/suif/basesuif-1.1.2.tar.gz http://www-suif.Stanford.EDU | |
| SUIF is a framework for building large, complex compilers, targeted particular toward research in compiler algorithms. This package is the core of the system. It contains a kernel, which supports the Stanford University Intermediate Format (file I/O, manipulation, etc.), and a toolkit consisting of passes and libraries for program transformation. | |
| C front end, C back end ANSI-C, FORTRAN front end mostly f77, defining implementation of SUIF IR | |
| Wide range of published papers available from web site | |
| suif-bugs@suif.Stanford.EDU mailing list (more than 100 subscribers to this mailing list, including authors) | |
| Free for any use, commercial or non-commercial, only requires copyright notice be preserved; currently used in commercial products | |
| Modern C++ compiler, such as GNU g++ 2.7.2.1, GNU make | |
Ultrix/DECstation, SunOS/SPARC, Solaris/SPARC/x86,
Irix/SGI-Mips, Linux/x86, OSF/DECAlpha,
| |
| Very system independent, but makefiles need to be replaced for non-UNIX systems if GNU make isn't used | |
| Very active and growing quickly, with Java and C++ front-ends, connections from DEC Fortran, gcc, and g++ front-ends and to gcc's RTL back-ends, and new code generators for many systems funded and underway, all to be made available publicly | |
| Several mailing lists, see http://www-suif.stanford.edu | |
| Several mailing lists, more than 200 active users | |
| No ``official'' support, but mailing lists usually provide support to any who ask | |
| suif-announce@suif.Stanford.EDU mailing list (see web site) | |
| 1997/04 |
| C, C++ | |
| TenDRA | |
| 4.1.2 | |
| compiler, grammar, library, documentation, examples, run-time | |
| The Defence Evaluation and Research Agency. | |
| http://alph.dera.gov.uk/TenDRA/ | |
| TenDRA is an implementation of TDF, which was adopted by the Open Group, where it is called ANDF. Its core is a binary format, TDF, which can be architecture-neutral or architecture-specific, and which can be conveniently manipulated. | |
| They claim, very conformant. The package includes implementation-independent descriptions of the ISO C API, POSIX, XPG3 and other APIs. | |
| http://www.gr.osf.org/andf/ | |
| |
| Enquiries to R.Andrews@eris.dera.gov.uk | |
| 1998 |
| SISAL 1.2 | |
| The Optimizing SISAL Compiler | |
| 12.9+ | |
| compiler, manuals, documentation, examples, debugger, user support | |
| Thomas M. DeBoni <deboni@sisal.llnl.gov> | |
| ftp://sisal.llnl.gov/pub/sisal | |
| Sisal is a functional language aimed at parallel numerical and scientific programming. It provides Fortran-like performance (or better), automatic parallelism, and excellent portability. It is an easy language to learn and use; Sisal programs tend to be easier to read and understand than those in other functional or parallel languages. The Optimizing Sisal Compiler, OSC, allows efficient use of machine resources during serial or parallel execution, and guarantees determinate results under any execution environment. | |
| Unix, Cray-2 Y-MP & C-90 and Convex Sequent and SGI, Sun/Sparc, Vax, HP, PC, Mac | |
| Can run on many Unix machines, shared-memory machines, workstations or personal computers. | |
| http://www.llnl.gov/sisal | |
| July 15th, 1994 |
| C, ANSI C, C++ | |
| The Roskind grammars | |
| cpp5 (cf2.0) | |
| parser(yacc), documenation | |
| Jim Roskind <jar@netscape.com> | |
|
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.
Also included is an extension to byacc that produces graphical parse trees automatically. | |
| the C grammar is true ANSI; the C++ grammar supports cfront 2.0 constructs. | |
| byacc 1.8 (for graphical parse trees) | |
| actively developed | |
| July 1st, 1991 |
| 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 |
| C (ANSI) | |
| unproto ? | |
| ? 4 ? 1.6 ? | |
| translator(K&R C) | |
| Wietse Venema <wietse@wzv.win.tue.nl> | |
| ftp://ftp.win.tue.nl/pub/unix/unproto4.shar.Z | |
| ? | |
| ? | |
| ? |
| C | |||||
| ups | |||||
| 2.1 | |||||
| interpreter, symbolic debugger, tests, documentation | |||||
| Mark Russell <mtr@ukc.ac.uk> | |||||
| |||||
| 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 | |||||
| Mark Russell <mtr@ukc.ac.uk> | |||||
| Sun, Decstation, VAX(ultrix), HLH Clipper | |||||
| ups-users-request@ukc.ac.uk | |||||
| May 20th, 1991 |
| C, C++ | |
| Xcoral | |
| 2.5 | |
| editor | |
| ? | |
| Xcoral is a multiwindow mouse-based text editor, for X Window System, with a built-in browser to navigate through C functions and C++ classes hierarchies... Xcoral provides variables width fonts, menus, scrollbars, buttons, search, regions, kill-buffers and 3D look. Commands are accessible from menus or standard key bindings. Xcoral is a direct Xlib client and run on color/bw X Display. Also includes HTML and Latex modes. | |
| Lionel Fournigault <Lionel.Fournigault@aar.alcatel-alsthom.fr> | |
| December 21st, 1995 |
| C | |
| xdbx | |
| 2.1 | |
| X11 front end for dbx | |
| ? | |
| retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16 | |
| ? | |
| Po Cheung <cheung@sw.mcc.com> | |
| Febuary 22nd, 1992 |
| C | |
| xref | |
| ? | |
| code analysis tool | |
| Jim Leinweber | |
| use archie | |
| A cross-reference genrator | |
| 1985 ? |
| C, C++ | |
| xxgdb | |
| 1.06 | |
| X11 front end for gdb | |
| ? | |
| retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16 | |
| ? | |
| Pierre Willard <pierre@la.tce.com> | |
| Febuary 22nd, 1992 |
| Y (cross between C and Ratfor) | |
| y+po | |
| ? | |
| compiler | |
| Jack W. Davidson and Christopher W. Fraser | |
| ftp://ftp.cs.princeton.edu/pub/y+po.tar.Z | |
| Davidson/Fraser peephole optimizer PO [1-3] [where the GCC RTL idea and other optimization ideas came from] along with the Y compiler [cross between C+ratfor] is ftpable from ftp.cs.princeton.edu: /pub/y+po.tar.Z. It is a copy of the original distribution from the University of Arizona during the early 80's, totally unsupported, almost forgotten [do not bug the authors] old code, possibly of interest to compiler/language hackers. | |
|
Jack W. Davidson and Christopher W. Fraser, "The Design and
Application of a Retargetable Peephole Optimizer", TOPLAS,
Apr. 1980.
Jack W. Davidson, "Simplifying Code Through Peephole Optimization" Technical Report TR81-19, The University of Arizona, Tucson, AZ, 1981. Jack W. Davidson and Christopher W. Fraser, "Register Allocation and Exhaustive Peephole Optimization" Software-Practice and Experience, Sep. 1984. | |
| history | |
| ? |
| ZPL | |
| ZPL | |
| ? | |
| compiler,language documents, sample code | |
| L. Snyder, C. Lin, B. Chamberlain, S-E. Choi, E. Lewis, J. Secosky, D. Weathersby | |
| http://www.cs.washington.edu/research/zpl/ | |
| ZPL is a new array programming language designed from first principles for fast execution on both sequential and parallel computers. ZPL benefits from recent parallel compiler research, though code from existing sequential Fortran and C programs can often be reused. Programmers with scientific computing experience can learn ZPL in a few hours. | |
| zpl-info@cs.washington.edu | |
| July 1st, 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