home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 1 / Meeting Pearls Vol 1 (1994).iso / installed_progs / text / faqs / free-compilers.part2 < prev    next >
Encoding:
Internet Message Format  |  1994-05-02  |  46.6 KB

  1. Subject: Catalog of compilers, interpreters, and other language tools [p2of5]
  2. Newsgroups: comp.compilers,comp.lang.misc,comp.archives.admin,news.answers,comp.answers
  3. From: free-compilers@idiom.berkeley.ca.us (Steve Robenalt)
  4. Date: Sun, 1 May 1994 11:00:23 GMT
  5.  
  6. Archive-name: free-compilers/part2
  7. Last-modified: 1994/4/29
  8. Version: 6.5
  9.  
  10.  
  11. C variants
  12. -------------------------------------------------------------------------------
  13. category:    C variants
  14. description:    These are languages that are closely based on C.  
  15. lref:        C-Refine, C++-Refine, *-Refine            
  16. lref:        (C,Duel) Duel (a <practical> C debugging language)    
  17.  
  18. language:    C, C++, Objective-C, RTL
  19. package:    GNU CC (gcc)
  20. version:    2.5.8
  21. parts:        compiler, runtime, examples, documentation
  22.         Library listed separately
  23. author:        Richard Stallman <gnu@prep.ai.mit.edu> and others
  24. how to get:    ftp gcc-2.X.X.tar.gz from a GNU archive site
  25.     msdos:    ftp pub/msdos/djgpp/* from oak.oakland.edu
  26.     6811:    ftp pub/coactive/gcc-6811-beta.tar.gz from netcom.com
  27.             (these are diffs from 2.5.8 distribution)
  28. description:    A very high quality, very portable compiler for C, C++,
  29.         Objective-C.  The compiler is designed to support multiple
  30.         front-ends and multiple back-ends by translating first
  31.         into RTL (Register Transfer Language) and from there into
  32.         assembly for the target architecture.    Front ends for
  33.         Ada, Pascal, and Fortran are all under development.
  34. conformance:    C: superset of K&R C and ANSI C.
  35.         C++: not exactly cfront 3.0? [could someone tell me which
  36.         version of cfront it is equivalent to, if any?    --ed]
  37.         Objective-C: ?
  38. bugs:        gnu.gcc.bug
  39. restriction:    GNU General Public License
  40. ports:        3b1, a29k, aix385, alpha, altos3068, amix, arm, convex,
  41.         crds, elxsi, fx2800, fx80, genix, hp320, clipper,
  42.         i386-{dos,isc,sco,sysv.3,sysv.4,mach,bsd,linux,windows,OS/2},
  43.         iris,i860, i960, irix4, m68k, m88ksvsv.3, mips-news,
  44.         mot3300, next, ns32k, nws3250-v.4, hp-pa, pc532,
  45.         plexus, pyramid, romp, rs6000, sparc-sunos, 
  46.         sparc-solaris2, sparc-sysv.4, spur, sun386, tahoe, tow,
  47.         umpis, vax-vms, vax-bsd, we32k, hitachi-{SH,8300}, 6811
  48. portability:    very high
  49. status:        actively developed
  50. discussion:    gnu.gcc.help
  51. announcements:    gnu.gcc.announce
  52. updated:    1993/11/27
  53.  
  54. language:    C, C++, Objective-C, RTL
  55. package:    GNU CC (gcc) - unsupported Macintosh port
  56. version:    1.37
  57. parts:        compiler, runtime, examples, documentation
  58.         Library listed separately
  59. author:        ?
  60. how to get:    ftp mpw-gcc-1.37.1r14 from ?
  61. description:    This is an unsupported port of the GNU C compiler to the
  62.         Macintosh environment. Note that the GNU project is actively
  63.         supporting the League for Programming Freedom (LPF) boycott
  64.         of Apple due to the "Look and Feel" lawsuit.
  65. bugs:        ?
  66. restriction:    GNU General Public License
  67. ports:        Macintosh
  68. portability:    very high
  69. status:        ?
  70. updated:    1993/11/27
  71.  
  72. language:    C
  73. package:    GNU C Library (glibc)
  74. version:    1.06
  75. parts:        library
  76. author:        ?
  77. how to get:    ftp glibc-1.06.tar.Z from a GNU archive site
  78.         Source for "crypt" must be FTP'ed from non-USA site if you are
  79.         outside the USA (site: glibc-1.06-crypt.tar.z from
  80.         ftp.uni-c.dk [129.142.6.74]).
  81. description:    The run-time library for the GNU C compiler, gcc.  The source
  82.         for libc.a.  This package is separately maintained.
  83. conformance:    ANSI and POSIX.1 superset.  Large subset of POSIX.2
  84. bugs:        Reports sent to mailing list bug-glibc@prep.ai.mit.edu.
  85. updated:    1993/06/25
  86.  
  87. language:    C
  88. package:    fdlibm
  89. version:    ?
  90. parts:        library
  91. author:        Dr. K-C Ng
  92. how to get:    ftp netlib/fdlibm.tar from netlib.att.com
  93. description:    Dr. K-C Ng has developed a new version of libm that is the
  94.         basis for the bundled /usr/lib/libm.so in Solaris 2.3 for SPARC
  95.         and for future Solaris 2 releases for x86 and PowerPC.     It
  96.         provides the standard functions necessary to pass the usual
  97.         test suites.  This new libm can be configured to handle
  98.         exceptions in accordance with various language standards or in
  99.         the spirit of IEEE 754. The C source code should be portable to
  100.         any IEEE 754 system with minimal difficulty.
  101. conformance:    IEEE 754
  102. bugs:        Send comments and bug reports to:
  103.         fdlibm-comments@sunpro.eng.sun.com.
  104. updated:    1993/12/18
  105.  
  106. language:    C
  107. package:    c68/c386
  108. version:    4.2a
  109. parts:        compiler
  110. author:        Matthew Brandt, Christoph van Wuellen, Keith and Dave Walker
  111. how to get:    ftp pub/Minix/common-pkgs/c386-4.2.tar.Z from bugs.nosc.mil
  112. description:    K&R C plus prototypes and other ANSI features.
  113.         targetted to several 68k and i386 assemblers, incl. gas.
  114.         floating point support by inline code or emulation.
  115.         lots of available warnings.  better code generation than ACK.
  116. ports:        386 and 68k Minix.  generic unix actually.
  117. status:        actively worked on by the Walkers.
  118. discussion:    comp.os.min
  119. updated:    ?
  120.  
  121. language:    C
  122. package:    GNU superoptimizer
  123. version:    2.2
  124. parts:        exhaustive instruction sequence optimizer
  125. author:        Torbjorn Granlund <tege@gnu.ai.mit.edu> with Tom Wood
  126. how to get:    ftp superopt-2.2.tar.Z from a GNU archive site
  127. description:    GSO is a function sequence generator that uses an exhaustive
  128.         generate-and-test approach to find the shortest instruction
  129.         sequence for a given function.    You have to tell the
  130.         superoptimizer which function and which CPU you want to get
  131.         code for.
  132.         This is useful for compiler writers.
  133. bugs:        Torbjorn Granlund <tege@gnu.ai.mit.edu>
  134. restriction:    GNU General Public License
  135. ports:        Alpha, Sparc, i386, 88k, RS/6000, 68k, 29k, Pyramid(SP,AP,XP)
  136. updated:    1993/02/16
  137.  
  138. language:    C
  139. package:    xdbx
  140. version:    2.1
  141. parts:        X11 front end for dbx
  142. author:        ?
  143. how to get:    retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
  144. description:    ?
  145. contact:    Po Cheung <cheung@sw.mcc.com>
  146. updated:    1992/02/22
  147.  
  148. language:    C
  149. package:    ups
  150. version:    2.1
  151. parts:        interpreter, symbolic debugger, tests, documentation
  152. author:        Mark Russell <mtr@ukc.ac.uk>
  153. how to get:    ? ftp from contrib/ups*.tar.Z from export.lcs.mit.edu ?
  154.     unofficial: unofficial enhancements by Rod Armstrong <rod@sj.ate.slb.com>,
  155.         available by ftp misc/unix/ups/contrib/rob from sj.ate.slb.com
  156. description:    Ups is a source level C debugger that runs under X11 or 
  157.         SunView.  Ups includes a C interpreter which allows you to add 
  158.         fragments of code simply by editing them into the source window
  159. bugs:        Mark Russell <mtr@ukc.ac.uk>
  160. ports:        Sun, Decstation, VAX(ultrix), HLH Clipper
  161. discussion:    ups-users-request@ukc.ac.uk
  162. updated:    1991/05/20
  163.  
  164. language:    C
  165. package:    C-Interp 
  166. version:    ?
  167. parts:        interpreter
  168. author:        ?
  169. how to get:    ftp Mac/Misc/C_Interp.sit from oac2.hsc.uth.tmc.edu
  170. description:    An interpreter for a small subset of C, originally part of a
  171.         communications package.
  172. contact:    ? Chuck Shotton <cshotton@oac.hsc.uth.tmc.edu>
  173. updated:    1993/05/14
  174.  
  175. langauge:    C
  176. package:    ae (application executive)
  177. version:    1?
  178. parts:        interpreter
  179. author:        Brian Bliss <bliss@sp64.csrd.uiuc.edu> [Is this right? --ed]
  180. how to get:    ftp pub/at.tar.Z from sp2.csrd.uiuc.edu
  181. description:    ae (the "application executive") is a C interpreter library
  182.         which is compiled with an application; hence, the interpreter
  183.         exists in the same process and address space.  it includes a
  184.         dbx symbol table scanner to access compiled vars & routines, or
  185.         you can enter them manually by providing a type/name
  186.         declaration and the address.  when the interpreter is invoked,
  187.         source code fragments are read from the input stream (or a
  188.         string), parsed, and evaluated immediately.  The user can call
  189.         compiled functions in addition to a few built-in intrinsics,
  190.         declare new data types and data objects, etc.  Different input
  191.         streams can be evaluated in parallel on alliant machines.
  192. ports:        SunOS (cc or gcc), Alliant FX, Cray YMP (soon)
  193. updated:    1992/04/21
  194.  
  195. language:    C (ANSI), lcc
  196. package:    lcc
  197. version:    1.8
  198. parts:        compiler, test suite, documentation
  199. author:        Dave Hanson <drh@cs.princeton.edu>
  200. how to get:    ftp pub/lcc/lccfe-*.tar.Z from princeton.edu
  201. description:    + hand coded C parser (faster than yacc)
  202.         + retargetable
  203.         + code "as good as GCC"
  204. ports:        vax (mips, sparc, 68k backends are commercial)
  205. status:        small-scale production use using commerical backends; the
  206.         commercial backends are cheap (free?) to universities.
  207. discussion:    lcc-requests@princeton.edu
  208. updated:    1992/02/20
  209.  
  210. language:    C, lcc 
  211. package:    Chop
  212. version:    0.6
  213. parts:        code generator
  214. author:        Alan L. Wendt <wendt@CS.ColoState.EDU>
  215. how to get:    ftp pub/chop/0.6.tar.Z from beethoven.cs.colostate.edu
  216. description:    The current revision, 0.6, is interfaced with Fraser and
  217.         Hanson's lcc front end.     The result is a highly fast C compiler
  218.         with good code selection and no global optimization.
  219.         Project Status: Chop compiles and runs a number of small test
  220.         programs on the Vax.  I'm currently updating the NS32k and 68K
  221.         retargets for lcc compatibility.  After I get them working,
  222.         I'll work on getting the system to compile itself, get struct
  223.         assignments working, improve the code quality and compile
  224.         speed, and run the SPEC benchmarks.  That will be rev 1.0.
  225. reference:    "Fast Code Generation Using Automatically-Generated Decision 
  226.         Trees", ACM SIGPLAN '90 PLDI
  227. updated:    1993/04/28
  228.  
  229. language:    C
  230. package:    GCT
  231. version:    1.4
  232. parts:        test-coverage-preprocessor
  233. author:        Brian Marick <marick@cs.uiuc.edu>
  234. how to get:    ftp pub/testing/gct.file/ftp.* from cs.uiuc.edu
  235. description:    GCT is test-coverage tool based on GNU C.  Coverage tools 
  236.         measure how thoroughly a test suite exercises a program.
  237. restriction:    CopyLeft
  238. ports:        sun3, sun4, rs/6000, 68k, 88k, hp-pa, ibm 3090,
  239.         ultrix, convex, sco
  240. discussion:    Gct-Request@cs.uiuc.edu
  241. support:    commercial support available from author, (217) 351-7228
  242. updated:    1993/02/12
  243.  
  244. language:    C
  245. package:    MasPar mpl, ampl
  246. version:    3.1
  247. parts:        compiler
  248. author:        ?
  249. how to get:    ftp put/mpl-* from maspar.maspar.com
  250. description:    mpl & ampl - the intrinsic parallel languages for MasPar's
  251.         machines are C (ampl is actually a gcc port these days). You
  252.         can get the source from marpar.com.
  253. contact:    ?
  254. updated:    ?
  255.  
  256. language:    C
  257. package:    gc
  258. version:    3.4
  259. parts:        library
  260. author:        Hans-J. Boehm <boehm@parc.xerox.com>, Alan J. Demers
  261. how to get:    ftp pub/russell/gc3.4.tar.Z from parcftp.xerox.com
  262. description:    This is a garbage colecting storage allocator that is intended
  263.         to be used as a plug-in replacement for C's malloc.  Since the
  264.         collector does not require pointers to be tagged, it does not
  265.         attempt to ensure that all inaccessible storage is reclaimed.
  266.         However, in our experience, it is typically more successful at
  267.         reclaiming unused memory than most C programs using explicit
  268.         deallocation.  Unlike manually introduced leaks, the amount of
  269.         unreclaimed memory typically stays bounded.
  270. ports:        Sun-3, Sun-4 , Vax/BSD, Ultrix, i386/Unix, SGI, Alpha/OSF/1,
  271.         Sequent (single threaded), Encore (single threaded),
  272.         RS/600, HP-UX, Sony News, A/UX, Amiag, NeXT.  
  273. updated:    1993/11/05
  274.  
  275. language:    C
  276. package:    dsp56k-gcc
  277. version:    ?
  278. parts:        compiler
  279. author:        ?
  280. how to get:    ftp pub/ham/dsp/dsp56k-tools/dsp56k-gcc.tar.Z from nic.funet.fi
  281.     Australia:    ftp pub/micros/56k/g56k.tar.Z from evans.ee.adfa.oz.au
  282. description:    A port of gcc 1.37.1 to the Motorola DSP56000 done by 
  283.         Motorola
  284. contact:    ?
  285. updated:    ?
  286.  
  287. language:    C
  288. package:    dsp56165-gcc
  289. version:    ?
  290. parts:        compiler
  291. author:        Andrew Sterian <asterian@eecs.umich.edu>
  292. how to get:    ftp usenet/alt.sources/? from wuarchive.wustl.edu    
  293. description:    A port of gcc 1.40 to the Motorola DSP56156 and DSP56000.
  294. updated:    ?
  295.  
  296. language:    C
  297. package:    Harvest C
  298. version:    1.3
  299. parts:        compiler, assembler, linker.
  300. author:        ?
  301. how to get:    ftp mac/development/languages/harves* from archive.umich.edu
  302. description:    The parts of the system are all integrated in a unique
  303.         application, which manages a "project" composed by several C
  304.         source files and resource files (which contain data).
  305. ports:        Macintosh
  306. contact:    Eric W. Sink
  307. updated:    1992/05/26
  308.  
  309. language:    C, C++
  310. package:    Cyclo - cyclomatic complexity tool
  311. version:    the one and only version
  312. parts:        code analysis tool
  313. author:        Roger D Binns 
  314. how to get:    alt.sources archive, 1993/06/28, <C9C2rH.EE@brunel.ac.uk>
  315. description:    It measures cyclomatic complexity, shows function calls and 
  316.         can draw flowgraphs of ANSI C and C++ code.
  317. requires:    lex, C++
  318. updated:    1993/06/28
  319.  
  320. language:    C
  321. package:    cxref
  322. version:    ?
  323. parts:        code analysis tool
  324. author:        Arnold Robbins <arnold@gatech.?>
  325. how to get:    use archie
  326. description:    A cross-reference genrator
  327. updated:    ?
  328.  
  329. language:    C
  330. package:    xref
  331. version:    ?
  332. parts:        code analysis tool
  333. author:        Jim Leinweber
  334. how to get:    use archie
  335. description:    A cross-reference genrator
  336. updated:    1985?
  337.  
  338. language:    C, C++
  339. package:    Xcoral
  340. version:    1.72
  341. parts:        editor
  342. author:        ?
  343. how to get:    ftp X/contrib/clients/xcoral* from ftp.inria.fr
  344. description:    Xcoral is a multiwindows mouse-based text editor, for X Window
  345.         System, with a built-in browser to navigate through C functions
  346.         and C++ classes hierarchies...    Xcoral provides variables width
  347.         fonts, menus, scrollbars, buttons, search, regions,
  348.         kill-buffers and 3D look.  Commands are accessible from menus
  349.         or standard key bindings. Xcoral is a direct Xlib client and
  350.         run on color/bw X Display.
  351. contact:    ?
  352. updated:    1993/03/14
  353.  
  354. language:    C++
  355. package:    Lily (LIsp LibrarY)
  356. version:    0.1
  357. parts:        library
  358. author:        Roger Sheldon <sheldon@kong.gsfc.nasa.gov>
  359. how to get:    ftp uploads/lily-0.1.tar.gz from sunsite.unc.edu
  360. description:    Lilly is a C++ class library which gives C++ programmers the
  361.         capability to write LISP-style code.  Lily's garbage collection
  362.         mechanism is not sufficient for commercial use.     The
  363.         documentation is incomplete.
  364. requires:    C++ (g++ or Turbo C++, but not cfront)
  365. restriction:    GNU Library General Public License
  366. updated:    1993/11/08
  367.  
  368. language:    C++
  369. package:    C++SIM
  370. version:    1.0
  371. parts:        library
  372. author:        Mark Little <M.C.Little@newcastle.ac.uk>
  373. how to get:    ftp ? from arjuna.ncl.ac.uk
  374. description:    C++SIM is a class library that provides the same sort of
  375.         features found in the simulation class libraries of SIMULA.
  376. updated:    1993/06/14
  377.  
  378. language:    C++
  379. package:    ? signatures for GCC 2.5.2. ?
  380. version:    ?
  381. parts:        patches to GNU CC, documentation
  382. author:        Gerald Baumgartner <gb@cs.purdue.edu>
  383. how to get:    ftp pub/gb/* from ftp.cs.purdue.edu
  384. description:    Signatures are very similar to abstract base classes except
  385.         that they have their own heirarchy and can be applied to
  386.         compiled classes.  They provide a means of separating
  387.         subtyping and inheritance.
  388. requires:    GNU CC 2.5.2
  389. updated:    1993/11/03
  390.  
  391. language:    C++
  392. package:    aard ???
  393. version:    ?
  394. parts:        memory use tracer
  395. author:        ?
  396. how to get:    ftp pub/aard.tar.Z from wilma.cs.brown.edu
  397. description:    We have a prototype implementation of a tool to do memory
  398.         checking.  It works by keeping track of the typestate of each
  399.         byte of memory in the heap and the stack.  The typestate can be
  400.         one of Undefined, Uninitialized, Free or Set.  The program can
  401.         detect invalid transitions (i.e. attempting to set or use
  402.         undefined or free storage or attempting to access uninitialized
  403.         storage).  In addition, the program keeps track of heap
  404.         management through malloc and free and at the end of the run
  405.         will report all memory blocks that were not freed and that are
  406.         not accessible (i.e.  memory leaks).
  407.         The tools works using a spliced-in shared library.
  408. requires:    Sparc, C++ 3.0.1, SunOS 4.X
  409. contact:    Steve Reiss <spr@cs.brown.edu>
  410. updated:    ?
  411.  
  412. language:    C++
  413. package:    ET++
  414. version:    3.0-alpha
  415. parts:        class libraries, documentation
  416. author:        ?
  417. how to get:    ftp C++/ET++/* from iamsun.unibe.ch
  418. description:    ?
  419. contact:    Erich Gamma <gamma@ifi.unizh.ch>
  420. updated:    1992/10/26
  421.  
  422. language:    C++
  423. package:    C++ grammar
  424. version:    ?
  425. parts:        parser (yacc)
  426. author:        ?
  427. how to get:    comp.sources.misc volume ?
  428. description:    [is this a copy of the Roskind grammar or something else? --ed]
  429. updated:    1991/10/23
  430.  
  431. language:    C++
  432. package:    cppp
  433. version:    1.14
  434. parts:        parser (yacc)
  435. author:        Tony Davis <ted@cs.brown.edu>
  436. how to get:    wilma.cs.brown.edu:/pub/cppp.tar.Z
  437. description:    A compiler front-end for C++, with complete semantic
  438.         processing.  Outputs abstract syntax graph.
  439. restriction:    Permission needed for incorporation into commercial software.
  440. requires:    Native C++ compiler, lex, yacc, make, sed (or hand editing)
  441. status:        Upgrading the back end.
  442. updated:    1993/05/26
  443.  
  444. language:    C++
  445. package:    C++ Object Oriented Library
  446. version:    COOL ?, GECOOL 2.1, JCOOL 0.1
  447. parts:        libraries, tests, documentation
  448. author:        ?
  449. how to get:    GECOOL, JCOOL: ftp pub/COOL/* from cs.utexas.edu
  450.         COOL: ftp pub/COOL.tar.Z from csc.ti.com
  451. description:    A C++ class library developed at Texas Instruments.  Cool
  452.         contains a set of containers like Vectors, List, Hash_Table,
  453.         etc.  It uses a shallow hierarchy with no common base class.
  454.         The funtionality is close to Common Lisp data structures (like
  455.         libg++).  The template syntax is very close to Cfront3.x and
  456.         g++2.x.     Can build shared libraries on Suns.  JCOOL's main
  457.         difference from COOL and GECOOL is that it uses real C++
  458.         templates instead of a similar syntax that is preprocessed by
  459.         a special 'cpp' distributed with COOL and GECOOL.
  460. ports:        ?
  461. contact:    Van-Duc Nguyen <nguyen@crd.ge.com>
  462. updated:    1992/08/05
  463.  
  464. language:    C++
  465. package:    GNU C++ Library (libg++)
  466. version:    2.5.1
  467. parts:        library
  468. author:        Per Bothner <bothner@cygnus.com> ?
  469. how to get:    libg++-2.5.1.tar.gz from a GNU archive site
  470. description:    The run-time library for the GNU C++ compiler.
  471.         This package is separately maintained.
  472. conformance:    ? ANSI and POSIX.1 superset
  473. bugs:        bug-lib-g++@prep.ai.mit.edu
  474. updated:    1993/06/30
  475.  
  476. language:    C++
  477. package:    ??? A C++ Parser toolkit
  478. version:    ?
  479. parts:        library
  480. author:        Mayan Moudgill <moudgill@cs.cornell.EDU>
  481. how to get:    ftp pub/Parse.shar from ftp.cs.cornell.edu
  482. description:    A collection of C++ classes that make building a 
  483.         recursive descent parser/scanner very easy.
  484. ports:        Sun 4 with cfront 3.0, 
  485. portability:    uses mmap(); probably low.
  486. updated:    1993/04/11
  487.  
  488. language:    C++, Extended C++
  489. package:    EC++
  490. version:    ?
  491. parts:        translator(C++), documentation
  492. author:        Glauco Masotti <masotti@lipari.usc.edu>
  493. how to get:    ? ftp languages/c++/EC++.tar.Z from ftp.uu.net ?
  494. description:    EC++ is a preprocessor that translates Extended C++
  495.         into C++.  The extensions include:
  496.         + preconditions, postconditions, and class invariants
  497.         + parameterized classes
  498.         + exception handling 
  499.         + garbage collection
  500. status:        ?
  501. updated:    1989/10/10
  502.  
  503. language:    C++
  504. package:    LEDA
  505. version:    3.0
  506. parts:        libraries
  507. author:        ?
  508. how to get:    ftp pub/LEDA/* from ftp.cs.uni-sb.de
  509. description:    library of efficient data types and algorithms.
  510.         New with 3.0: both template and non-template versions.
  511. contact:    Stefan N"aher <stefan@mpi-sb.mpg.de>
  512. updated:    1992/11/30
  513.  
  514. language:    E (a persistent C++ variant)
  515. package:    GNU E
  516. version:    2.3.3
  517. parts:        compiler
  518. author:        ?
  519. how to get:    ftp exodus/E/gnu_E* from ftp.cs.wisc.edu
  520. description:    GNU E is a persistent, object oriented programming language
  521.         developed as part of the Exodus project.  GNU E extends C++
  522.         with the notion of persistent data, program level data objects
  523.         that can be transparently used across multiple executions of a
  524.         program, or multiple programs, without explicit input and
  525.         output operations.
  526.         GNU E's form of persistence is based on extensions to the C++
  527.         type system to distinguish potentially persistent data objects
  528.         from objects that are always memory resident.  An object is
  529.         made persistent either by its declaration (via a new
  530.         "persistent" storage class qualifier) or by its method of
  531.         allocation (via persistent dynamic allocation using a special
  532.         overloading of the new operator).  The underlying object
  533.         storage system is the Exodus storage manager, which provides
  534.         concurrency control and recovery in addition to storage for
  535.         persistent data.
  536. restriction:    Copyleft; not all runtime sources are available (yet)
  537. requires:    release 2.1.1 of the Exodus storage manager
  538. contact:    exodus@cs.wisc.edu
  539. updated:    1993/01/20
  540.  
  541. language:    C (ANSI)
  542. package:    ? 1984 ANSI C to K&R C preprocessor ?
  543. version:    ?
  544. parts:        translator(K&R C)
  545. author:        ?
  546. how to get:    from comp.sources.unix archive volume 1
  547. description:    ?
  548. status:        ?
  549. updated:    ?
  550.  
  551. language:    C (ANSI)
  552. package:    unproto ?
  553. version:    ? 4 ? 1.6 ?
  554. parts:        translator(K&R C)
  555. author:        Wietse Venema <wietse@wzv.win.tue.nl>
  556. how to get:    ftp pub/unix/unproto4.shar.Z from ftp.win.tue.nl
  557. description:    ?
  558. contact:    ?
  559. updated:    ?
  560.  
  561. language:    C (ANSI)
  562. package:    cproto
  563. version:    ?
  564. parts:        translator(K&R C)
  565. author:        Chin Huang <chin.huang@canrem.com>
  566. how to get:    from comp.sources.misc archive volume 29
  567. description:    cproto generates function prototypes from function definitions.
  568.         It can also translate function definition heads between K&R
  569.         style and ANSI C style.
  570. ports:        Unix, MS-DOS
  571. updated:    1992/07/18
  572.  
  573. language:    C (ANSI)
  574. package:    cextract
  575. version:    1.7
  576. parts:        translator(K&R C), header file generator
  577. author:        Adam Bryant <adb@cs.bu.edu>
  578. how to get:    ftp from any comp.sources.reviewed archive
  579. description:    A C prototype extractor, it is ideal for generating
  580.         header files for large multi-file C programs, and will
  581.         provide an automated method for generating all of the
  582.         prototypes for all of the functions in such a program.
  583.         It may also function as a rudimentary documentation
  584.         extractor, generating a sorted list of all functions
  585.         and their locations
  586. ports:        Unix, VMS
  587. updated:    1992/11/03
  588.  
  589. language:    ANSI C
  590. package:    cgram
  591. version:    ?
  592. parts:        grammar
  593. author:        Mohd Hanafiah Abdullah <napi@cs.indiana.edu>
  594. how to get:    ftp pub/comp.compilers/cgram-ll1.Z from primost.cs.wisc.edu
  595. description:    An ANSI C grammar in LL(k) (1 <= k <= 2).  It's written in 
  596.         Scheme, so you need to have a Scheme interpreter to process 
  597.         the grammar using a program (f-f-d.s) that extracts the 
  598.         FIRST/FOLLOW/DIRECTOR sets.
  599. requires:    Scheme
  600. ports:        ?
  601. updated:    ?
  602.  
  603. language:    C, ANSI C, C++
  604. package:    The Roskind grammars
  605. version:    cpp5 (cf2.0)
  606. parts:        parser(yacc), documenation
  607. author:        Jim Roskind <jar@hq.ileaf.com>
  608. how to get:    ftp gnu/c++grammar2.0.tar.Z from ics.uci.edu
  609.         ftp pub/C++/c++grammar2.0.tar.Z from mach1.npac.syr.edu
  610. description:    The C grammar is CLEAN, it does not use %prec, %assoc, and
  611.         has only one shift-reduce conflict.  The C++ grammar has
  612.         a few conflicts.
  613.         Also included is an extension to byacc that produces
  614.         graphical parse trees automatically.
  615. conformance:    the C grammar si true ANSI; the C++ grammar supports 
  616.         cfront 2.0 constructs.
  617. requires:    byacc 1.8 (for graphical parse trees)
  618. status:        actively developed
  619. updated:    1991/07/01
  620.  
  621. language:    C, C++
  622. package:    xxgdb
  623. version:    1.06
  624. parts:        X11 front end for gdb
  625. author:        ?
  626. how to get:    retrieve xxgdb from comp.sources.x volumes 11, 12, 13, 14, & 16
  627. description:    ?
  628. contact:    Pierre Willard <pierre@la.tce.com>
  629. updated:    1992/02/22
  630.  
  631. language:    C, C++
  632. package:    gdb
  633. version:    4.11
  634. parts:        symbolic debugger, documentation
  635. author:        many, but most recently Fred Fish <fnf@cygnus.com>,
  636.         Stu Grossman <grossman@cygnus.com>, and 
  637.         John Gilmore <gnu@cygnus.com>, all of Cygnus Support
  638. how to get:    ftp gdb-*.tar.[zZ] from a GNU archive site
  639. description:    gdb is a full-featured symbolic debugger.  It fills the
  640.         same niche as dbx.  Programs must be compiled with debugging
  641.         symbols.
  642. bugs:        <bug-gdb@prep.ai.mit.edu>
  643. restriction:    CopyLeft
  644. ports:        most unix variants, vms, vxworks, amiga, msdos
  645. updated:    1993/10/29
  646.  
  647. language:    C, C++, Objective-C
  648. package:    emx programming environment for OS/2
  649. version:    0.8g
  650. parts:        gcc, g++, gdb, libg++, .obj linkage, DLL, headers
  651. author:        Eberhard Mattes <mattes@azu.informatik.uni-stuttgart.de>
  652. how to get:    ftp os2/2_x/unix/gnu/emx0.8g from ftp-os2.cdrom.com
  653.     Europe:    ftp soft/os2/emx-0.8g from ftp.uni-stuttgart.de
  654. description:    ?
  655. discussion:    subscribe to emx-list using listserv@ludd.luth.se
  656. updated:    1992/09/21
  657.  
  658. language:    C
  659. package:    Pthreads
  660. version:    1.17
  661. parts:        library
  662. author:        PART (POSIX / Ada-Runtime Project)
  663. how to get:    ftp pub/PART/pthreads* from ftp.cs.fsu.edu
  664. description:    As part of the PART project we have been designing and
  665.         implementing a library package of preemptive threads which is
  666.         compliant with POSIX 1003.4a Draft 6. A description of the
  667.         interface for our Pthreads library is now available on ftp.
  668. restriction:    GNU General Public License
  669. discussion:    send "Subject: subscribe-pthreads" to mueller@uzu.cs.fsu.edu
  670. ports:        Sun-4/SunOS 4.1.x
  671. contact:    pthreads-bugs@ada.cs.fsu.edu
  672. updated:    1993/07/22
  673.  
  674. language:    C, nroff, texinfo, latex
  675. package:    c2man
  676. version:    2.0 patchlevel 25
  677. parts:        documentation generator (C -> nroff -man, -> texinfo, -> latex)
  678. author:        Graham Stoney <greyham@research.canon.oz.au>
  679. how to get:    ftp usenet/comp.sources.reviewed/volume03/c2man* 
  680.         from ftp.wustl.edu
  681.     Europe:    ftp /pub/archive/comp.sources/reviewed/c2man* 
  682.         from ftp.informatik.uni-stuttgart.de
  683.     Patches:    ftp pub/netnews/sources.bugs/volume93/sep/c2man* from lth.se
  684. description:    c2man is an automatic documentation tool that extracts comments
  685.         from C source code to generate functional interface
  686.         documentation in the same format as sections 2 & 3 of the Unix
  687.         Programmer's Manual. It requires minimal effort from the
  688.         programmer by looking for comments in the usual places near the
  689.         objects they document, rather than imposing a rigid
  690.         function-comment syntax or requiring that the programmer learn
  691.         and use a typesetting language. Acceptable documentation can
  692.         often be generated from existing code with no modifications.
  693. conformance:    supports both K&R and ISO/ANSI C coding styles
  694. features:    + generates output in nroff -man, TeXinfo or LaTeX format
  695.         + handles comments as part of the language grammar
  696.         + automagically documents enum parameter & return values
  697.         + handles C (/* */) and C++ (//) style comments
  698.         - doesn't handle C++ grammar (yet)
  699. requires:    yacc/byacc/bison, lex/flex, and nroff/groff/texinfo/LaTeX.
  700. ports:        Unix, OS/2, MSDOS
  701. portability:    very high for unix, via Configure
  702. status:        actively developed; contributions by users are encouraged.
  703. discussion:    send "subscribe c2man <Your Name>" (in the message body) to
  704.         listserv@research.canon.oz.au
  705. announcements:    patches appear first in comp.sources.bugs, later in
  706.         comp.sources.reviewed after a review period.
  707. updated:    1994/02/21
  708.  
  709. language:    Small-C
  710. package:    smallc
  711. version:    ?
  712. parts:        compiler
  713. author:        ?
  714. how to get:    ?, comp.sources.unix volume 5
  715. description:    Small-C is a subset of the C programming language for which a
  716.         number of public-domain compilers have been written.  The
  717.         original compiler was written by Ron Cain and appeared in the
  718.         May 1980 issue of Dr.Dobb's Journal.  More recently, James
  719.         E.Hendrix has improved and extended the original Small-C
  720.         compiler and published "The Small-C Handbook", ISBN
  721.         0-8359-7012-4 (1984).  Both compilers produce 8080 assembly
  722.         language, which is the most popular implementation of Small-C
  723.         to-date.  My 6502 Small-C compiler for the BBC Micro is based
  724.         on "RatC", a version of the original Ron Cain compiler
  725.         described by R.E.Berry and B.A.Meekings in "A Book on C", ISBN
  726.         0-333-36821-5 (1984).  The 6502 compiler is written in Small-C
  727.         and was bootstrapped using Zorland C on an Amstrad PC1512 under
  728.         MSDOS 3.2, then transferred onto a BBC Micro using Kermit.  The
  729.         compiler can be used to cross-compile 6502 code from an MSDOS
  730.         host, or as a 'resident' Small-C compiler on a BBC Micro.
  731. conformance:    subset of C
  732. ports:        68k, 6809, VAX, 8080, BBC Micro, Z80
  733. updated:    1989/01/05
  734.  
  735. language:    Maisie
  736. package:    Maisie
  737. version:    2.1
  738. parts:        ?, user manual, examples
  739. author:        Wen-Toh Liao <wentoh@may.CS.UCLA.EDU>
  740. how to get:    ftp pub/maisie.2.1.1.3.tar.Z from cs.ucla.edu 
  741. description:    C-based parallel programming language that uses asynchronous
  742.         typed-message passing and supports light-weight processes.
  743.         The language is C with enhancements to allow processes to be
  744.         defined, created, and destroyed, to send and receive messages,
  745.         and manipulate the system clock.
  746. ports:        PVM/3.1, Cosmic Environment, and SUN Sockets.
  747. updated:    1993/06/14
  748.  
  749. language:    MeldC (MELD, C)
  750. package:    MeldC
  751. version:    2.0
  752. parts:        microkernel, compiler, debugger, manual, examples
  753. author:        MELD Project, Programming Systems Laboratory at 
  754.         Columbia University
  755. how to get:    obtain license from <MeldC@cs.columbia.edu>
  756. description:    MeldC 2.0: A Reflective Object-Oriented Coordination
  757.         Programming Language MELDC is a C-based, concurrent,
  758.         object-oriented language built on a reflective architecture.
  759.         The core of the architecture is a micro-kernel (the MELDC
  760.         kernel), which encapsulates a minimum set of entities that
  761.         cannot be modeled as objects. All components outside of the
  762.         kernel are implemented as objects in MELDC itself and are
  763.         modularized in the MELDC libraries. MELDC is reflective in
  764.         three dimensions: structural, computational and architectural.
  765.         The structural reflection indicates that classes and
  766.         meta-classes are objects, which are written in MELDC. The
  767.         computational reflection means that object behaviors can be
  768.         computed and extended at runtime. The architectural reflection
  769.         indicates that new features/properties (e.g., persistency and
  770.         remoteness) can be constructed in MELDC.
  771. restriction:    must sign license, cannot use for commercial purposes
  772. ports:        Sun4/SunOS4.1 Mips/Ultrix4.2
  773. contact:    <MeldC@cs.columbia.edu>
  774. updated:    1992/12/15
  775.  
  776. language:    uC++
  777. package:    uC++ 
  778. version:    3.7
  779. parts:        compiler, reference
  780. author:        ? Peter A. Ruhr <pabuhr@plg.uwaterloo.ca>
  781. how to get:    ftp pub/uSystem/u++-3.7.tar.Z from plg.uwaterloo.ca
  782. description:    An extended C++ with light-weight concurrency for Unix-like
  783.         systems.  uC++ is pronounced "micro-C++".
  784. reference:    Software--Practice and Experience, 22(2):137-172, February 1992.
  785. requires:    dmake 3.0+ (ftp pub/dmake/dmake38.tar.Z from plg.uwaterloo.ca)
  786.         GNU C++ 2.3.3
  787. ports:        Sequent, Sun-4, Sun-3, Ultrix, SGI, RS/6000, HP-PA
  788. portability:    Needs "setitimer" and "sigcontext" from Unix-like systems.
  789. updated:    1993/06/10
  790.  
  791. language:    Objective-C
  792. package:    Collection Library for GNU Objective-C
  793. version:    Alpha Release
  794. parts:        library
  795. author:        R. Andrew McCallum <mccallum@cs.rochester.edu> ?
  796. how to get:    ftp pub/ObjC/libcoll-*.tar.z from iesd.auc.dk
  797. description:    It's a library of Objective-C objects with similar
  798.         functionality to Smalltalk's Collection objects.  It includes:
  799.         Set, Bag, Array, LinkedList, LinkList, CircularArray, Queue,
  800.         Stack, Heap, SortedArray, MappedCollector, GapArray and
  801.         DelegateList.
  802. updated:    1993/06/01
  803.  
  804. language:    Glenda
  805. package:    Glenda parallel programming environment
  806. version:    0.91
  807. parts:        preprocessor,tuple server, and tuple functions
  808. author:        Ray Seyfarth <seyfarth@whale.st.usm.edu>
  809. how to get:    ftp pub/glenda.tar.Z from seabass.st.usm.edu
  810. description:    Glenda is a programming environment for parallel programming
  811.         implementing a variation of the Linda programming model
  812.         defined by Carriero and Gelernter. It consists of a C
  813.         preprocessor to allow reasonable syntax for the added
  814.         operations, a tuple server process and a set of functions to
  815.         connect an application to the tuple server.
  816. ports:        RS6000, SUN4, LINUX
  817. updated:    1993/06/01
  818.  
  819. compiled, imperative languages
  820. -------------------------------------------------------------------------------
  821. category:    compiled, imperitive languages
  822. description:    This is the set of traditional infix languages other than C 
  823.         and Pascal which each have their own section.  
  824. cref:        C variants
  825. cref:        Wirth family languages
  826. lref:        Simula
  827. lref:        Fortran
  828.  
  829. language:    Ada
  830. package:    Ada/Ed
  831. version:    1.11.0a+
  832. parts:        translator(?), interpreter, ?
  833. author:        ?
  834. how to get:    ftp pub/Ada/Ada-Ed from cnam.cnam.fr
  835. description:    Ada/Ed is a translator-interpreter for Ada. It is
  836.         intended as a teaching tool, and does not have the
  837.         capacity, performance,    or robustness of commercial
  838.         Ada compilers. Ada/Ed was developed at New York
  839.         University, as part of a long-range project in
  840.         language definition and software prototyping.
  841. conformance:    Ada 83.     Last validated with version 1.7 of the ACVC tests.
  842.         being an interpreter, it does not implement most 
  843.         representation clauses, and thus does not support systems 
  844.         programming close to the machine level.
  845. ports:        Unix, MSDOS, Amiga, Atari
  846. contact:    Michael Feldman <mfeldman@seas.gwu.edu>
  847. updated:    1992/05/08
  848.  
  849. language:    Ada
  850. package:    GW-Ada
  851. version:    ?
  852. parts:        translator, interpreter, editor, runtime environment
  853. author:        ?
  854. how to get:    ftp languages/ada/compiler/adaed/gwu/9309/dos
  855.         or languages/ada/compilers/adaed/gwu/mac from 
  856.         wuarchive.wustl.edu
  857. description:    Ada/Ed is a translator-interpreter for Ada. It is
  858.         intended as a teaching tool, and does not have the
  859.         capacity, performance,    or robustness of commercial
  860.         Ada compilers. Ada/Ed was developed at New York
  861.         University, as part of a long-range project in
  862.         language definition and software prototyping.
  863. conformance:    "Ada/Ed handles nearly all of Ada 83"
  864. ports:        MSDOS and Mac
  865. contact:    Michael Feldman <mfeldman@seas.gwu.edu>
  866. restriction:    For educational purposes only.
  867. updated:    1993/09/01
  868.  
  869. language:    Ada
  870. package:    Ada grammar
  871. version:    ?
  872. parts:        scanner(lex), parser(yacc)
  873. author:        ?
  874. how to get:    ftp from primost.cs.wisc.edu or mail to
  875.         compilers-server@iecc.cambridge.ma.us
  876. description:    ?
  877. contact:    masticol@dumas.rutgers.edu
  878. updated:    1991/10/12
  879.  
  880. language:    Ada
  881. package:    Compiler for Toy/Ada in SML/NJ
  882. version:    ?
  883. parts:        translator(?)
  884. author:        Amit Bhatiani <bhatiaa@polly.cs.rose-hulman.edu>
  885. how to get:    ftp pub/compiler*.tar.Z from master.cs.rose-hulman.edu
  886. description:    ?
  887. conformance:    subset
  888. updated:    1992/04/08
  889.  
  890. language:    Ada
  891. package:    NASA PrettyPrinter
  892. version:    ?
  893. parts:        Ada LR parser, ?
  894. author:        ? Michael Feldman <mfeldman@seas.gwu.edu> in comp.compilers
  895.         provided the initial reference to this package, he also has a
  896.         yacc grammar for ada.
  897. how to get:    ftp from Ada Software Repository on wsmr-simtel20.army.mil
  898. description:    pretty-print program that contains an ada parser
  899. requires:    Ada
  900. updated:    1991/02/01
  901.  
  902. language:    Ada
  903. package:    yacc grammar for Ada
  904. version:    ?
  905. parts:        parser(yacc)
  906. author:        Herman Fischer
  907. how to get:    ftp  PD2:<ADA.EXTERNAL-TOOLS>GRAM2.SRC 
  908.         from wsmr-simtel20.army.mil
  909. description:    ?
  910. contact:    ?
  911. updated:    1991/02/01
  912.  
  913. language:    Ada
  914. package:    Paradise
  915. version:    2.0
  916. parts:        library
  917. author:        ?
  918. how to get:    ftp pub/Ada/Paradise from cnam.cnam.fr
  919. description:    Paradise is a subsystem (a set of packages) developped
  920.         to implement inter-processes, inter-tasks and
  921.         inter-machines communication for Ada programs in
  922.         the Unix world. This subsystem gives the user full
  923.         access to files, pipes, sockets (both Unix and
  924.         Internet), and pseudo-devices.
  925. ports:        Sun, Dec, Sony Mips, Verdex compiler, DEC compiler, 
  926.         Alsys/Systeam compiler
  927. contact:    paradise-info@cnam.cnam.fr
  928. updated:    1992/09/30
  929.  
  930. language:    Ada
  931. package:    Adamakegen
  932. version:    2.6.3
  933. parts:        makefile generator
  934. author:        Owen O'Malley <omalley@porte-de-st-ouen.ics.uci.edu>
  935. how to get:    ftp ftp/pub/arcadia/adamakegen* from spare.ics.uci.edu
  936. description:    A program that generates makefiles for Ada programs 
  937. requires:    Icon
  938. ports:        Verdix, SunAda 
  939. updated:    1993/03/02
  940.  
  941. language:    Ada 9X
  942. package:    GNAT
  943. version:    1.78.l1
  944. parts:        parser, library management system, documentation?
  945. author:        The GNAT Development Team <gnat-request@cs.nyu.edu>
  946. how to get:    ftp pub/gnat/* from cs.nyu.edu
  947. description:    A bootstrapped implementation of a Ada83 subset.
  948. conformance:    Currently only a subset of of Ada 83 is working.  Compliance 
  949.         to Ada 9X being worked on.
  950. status:        Actively developed.  
  951. requires:    gcc 2.5.x or higher
  952. updated:    1993/08/29
  953.  
  954. language:    Algol, Foogol
  955. package:    foogol
  956. version:    ?
  957. parts:        compiler
  958. author:        ?
  959. how to get:    comp.sources.unix archive volume 8
  960. description:    ?
  961. conformance:    subset of Algol
  962. ports:        VAX
  963. updated:    ?
  964.  
  965. language:    Algol
  966. lref:        Simula
  967.  
  968. language:    BCPL
  969. package:    ?
  970. version:    ?
  971. parts:        ?
  972. author:        ?
  973. how to get:    ftp systems/amiga/programming/languages/BCPL/BCPL4Amiga.lzh
  974.         from wuarchive.wustl.edu.
  975. description:    The original INTCODE interpreter for BCPL.
  976. ports:        Amiga, Unix, MSDOS
  977. contact:    ?
  978. updated:    ?
  979.  
  980. language:    BCPL
  981. package:    ?
  982. version:    ?
  983. parts:        ?
  984. author:        ?
  985. how to get:    ftp [.languages]bcpl.tar_z from ftp.syd.dit.csiro.au
  986. description:    A BCPL* (Basic Combined Programming Language) compiler 
  987.         bootstrap kit with an INTCODE interpreter in C.     
  988. contact:    Ken Yap <ken@syd.dit.CSIRO.AU>
  989. updated:    ?
  990.  
  991. language:    E
  992. package:    Amiga E
  993. version:    2.1b
  994. parts:        compiler, assembler, linker, utilities
  995. author:        Wouter van Oortmerssen <Wouter@mars.let.uva.nl>
  996. how to get:    ftp amiga/dev/lang/AmigaE21b.lha from amiga.physik.unizh.ch
  997. description:    An Amiga specific E compiler.  E is a powerful and flexible
  998.         procedural programming language and Amiga E a very fast
  999.         compiler for it, with features such as compilation speed of
  1000.         20000 lines/minute on a 7 Mhz amiga, inline assembler and
  1001.         linker integrated into compiler, large set of integrated
  1002.         functions, module concept with 2.04 includes as modules,
  1003.         flexible type-system, quoted expressions, immediate and typed
  1004.         lists, low level polymorphism, exception handling and much,
  1005.         much more.  Written in Assembly and E.
  1006. ports:        Amiga
  1007. portability:    not portable at all
  1008. status:        actively developed
  1009. discussion:    comp.sys.amiga.programmer (sometimes)
  1010. updated:    1993/03/01
  1011.  
  1012. language:    Eiffel
  1013. package:    ?
  1014. version:    ?
  1015. parts:        source checker
  1016. author:        Olaf Langmack <langmack@inf.fu-berlin.de> and Burghardt Groeber
  1017. how to get:    ftp pub/heron/ep.tar.Z from ftp.fu-berlin.de
  1018. description:    A compiler front-end for Eiffel-3 is available. It has been
  1019.         generated automatically with the Karlsruhe toolbox for
  1020.         compiler construction according to the most recent public
  1021.         language definition. The parser derives an easy-to-use
  1022.         abstract syntax tree, supports elementary error recovery
  1023.         and provides a precise source code indication of errors. It
  1024.         performs a strict syntax check and analyses 4000 lines of
  1025.         source code per second on a Sun-SPARC workstation.
  1026. updated:    1992/12/14
  1027.  
  1028. language:    Sather
  1029. package:    Sather programming language and environment
  1030. version:    0.2i
  1031. parts:        compiler(->C), debugger, libraries, documentation, emacs macros
  1032. author:        International Computer Science Institute in Berkeley, CA
  1033. how to get:    ftp pub/sather/sa-0.2i.tar.Z from ftp.icsi.berkeley.edu
  1034.     Europe:    ftp pub/Sather/* from ftp.gmd.de
  1035.     Australia:    ftp pub/sather/* from lynx.csis.dit.csiro.au
  1036.     Japan:    ftp pub/lang/sather/* from sra.co.jp
  1037. description:    Sather is a new object-oriented computer language
  1038.         developed at the International Computer Science
  1039.         Institute. It is derived from Eiffel and attempts to
  1040.         retain much of that language's theoretical cleanliness
  1041.         and simplicity while achieving the efficiency of C++.
  1042.         It has clean and simple syntax, parameterized classes,
  1043.         object-oriented dispatch, multiple inheritance, strong
  1044.         typing, and garbage collection. The compiler generates
  1045.         efficient and portable C code which is easily
  1046.         integrated with existing code.    
  1047. package:    A variety of development tools including a debugger and browser
  1048.         based on gdb and a GNU Emacs development environment
  1049.         have also been developed. There is also a class library
  1050.         with several hundred classes that implement a variety
  1051.         of basic data structures and numerical, geometric,
  1052.         connectionist, statistical, and graphical abstractions.
  1053.         We would like to encourage contributions to the library
  1054.         and hope to build a large collection of efficient,
  1055.         well-written, well-tested classes in a variety of areas
  1056.         of computer science.
  1057. conformance:    reference implemantation
  1058. bugs:        sather-admin@icsi.berkeley.edu
  1059. ports:        Sun-4 HP9000/300 Decstation5000 MIPS SonyNews3000 Sequent/Dynix
  1060.         SCO SysVR3.2 NeXT (from others: RS6000 SGI)
  1061. portability:    high
  1062. status:        actively developed.
  1063. discussion:    sather-request@icsi.berkeley.edu
  1064. updated:    1992/07/02
  1065.  
  1066. language:    XPL (PL/I dialect)
  1067. package:    XPL optimizing Compiler
  1068. version:    1
  1069. parts:        compiler, documentation
  1070. author:        Robin Vowels <robin_vowels@rmit.edu.au>
  1071. how to get:    mail to author
  1072. description:    The compiler is a standard implementation of XPL and is based on
  1073.         McKeeman, Horning, and Wortman's improved XCOM (which employs
  1074.         hashed symbol table generation).  It includes the extra built-in
  1075.         function COREHALFWORD.
  1076.         The following areas have been optimized: procedures calls when
  1077.         the argument and corresponding parameter are of the same type,
  1078.         and when the argument is a constant; constant subscripts; use of
  1079.         CORELHALFWORD and COREWORD; string constants of length one;
  1080.         iterative DO statements by transferring code to the end of the
  1081.         loop.
  1082.         String constants of length one do not require a descriptor,
  1083.         hence more descriptors are available for string variables.
  1084.         Comparison operations are treated as commutative, and an
  1085.         improved Commute algorithm is used.  Halfword instructions are
  1086.         generated for BIT(16) variables.
  1087.         These areas have been improved or re-written: calls on OUTPUT,
  1088.         catenation, integer-to-string conversion, multiply, divide, and
  1089.         MOD.  An emitter for SS-type instructions has been added.
  1090.         The compiler achieves an 11% reduction in object code 
  1091.         compiling itself, an 11% increase in compilation rate, a 55%
  1092.         increase in compilation speed when the $E toggle is set.
  1093.         Special treatment for catenating a string to an integer
  1094.         substantially decreases consumption of the free string area, and
  1095.         decreases string moves.     The latter improvement is most 
  1096.         noticeable on small core machines.
  1097.         Core requirements: less than the improved XCOM on which it is
  1098.         based (approx. 98000 bytes).  Symbol table size is 468.
  1099. ports:        IBM System 370
  1100. portability:    The compiler is written in XPL.     The code generators are
  1101.         machine-specific.
  1102. updated:    1993/08/07
  1103.  
  1104. language:    PL/M grammar and parser
  1105. package:    plm-parse
  1106. version:    1.1
  1107. parts:        bison (GNU yacc) grammar description, flex (GNU lex)
  1108.                 lexer description, and a scoped symbol table manager
  1109. author:        Kirk Hays <hays@ichips.intel.com>
  1110.             Gary Funck <gary@intrepid.com>
  1111. how to get:    ftp pub/file/plm.shar.gz from iecc.com to obtain
  1112.                 a shar archive in compressed GNU zip format.  To access
  1113.         the mail server, mail "send plm.shar"
  1114.                 to compilers-server@iecc.com.
  1115. description:    this is a skeleton parser for PL/M.  The grammar description
  1116.         and lexer description files were written for bison and flex.
  1117.         The grammar description closely follows the EBNF documented
  1118.         in the _PL/M Programmer's Guide_, Intel doc. 452161-003,
  1119.         Appendix C.  A symbol table manager is supplied,
  1120.         though there is no semantic checking.
  1121. conformance:    the grammar describes PL/M 386 and where possible, will
  1122.         accept various other dialects
  1123. reference:    _PL/M Programmer's Guide_, Intel doc. 452161-003
  1124. features:    has support for PL/M's "literally" macro definitions
  1125. bugs:        doesn't support $-directives (includes)
  1126. restriction:    freely available, use at you own risk
  1127. requires:    flex, bison, an ANSI compliant C compiler (gcc), and the
  1128.         avl-subs balanced binary tree library routines
  1129.                 (comp.sources.unix Volume 27, Issue 34 ,'avl-subs')
  1130. ports:        SGI IRTIX 5.2, and a 486DX2 PC clone running Linux
  1131. help:        contact the authors
  1132. updated:    04/04/1994
  1133.  
  1134.  
  1135. object oriented langauges
  1136. -------------------------------------------------------------------------------
  1137. category:    object oriented langauges
  1138. description:    In general, object oriented langauges were categorized 
  1139.         elsewhere.  Only those that were not anything but object-
  1140.         oriented are here.
  1141. lref:        ABCL ???
  1142. lref:        ABCL/R2
  1143. lref:        ALLOY
  1144. lref:        C++
  1145. lref:        CLU
  1146. lref:        Common Lisp
  1147. lref:        Dylan
  1148. lref:        GNU E
  1149. lref:        MeldC
  1150. lref:        Objective-C
  1151. lref:        Oberon-2
  1152. lref:        Perl5
  1153. lref:        Python
  1154. lref:        Sather
  1155. lref:        Simula
  1156. iref:        (TCL) BOS
  1157. iref:        (Scheme) STk
  1158. iref:        (Scheme) SOS
  1159.  
  1160. language:    O'small
  1161. package:    O'small
  1162. version:    Initial release
  1163. parts:        compiler?, parser/scanner specification
  1164. author:        ? Andreas Hense <hense@sol.cs.uni-sb.de>
  1165. how to get:    FTP /pub/osmall/machine/* from cs.uni-sb.de (134.96.7.254)
  1166. description:    A concise, formally defined object-oriented language suited
  1167.         for teaching object oriented programming.
  1168. reference:    (Numerous references listed in software documentation)
  1169.         Christoph Boeschen.  Christmas - An abstract machine for
  1170.         O'small.  Master's thesis, Universit"at des Saarlandes, 
  1171.         Fachbereich 14, June 1993.
  1172. requires:    sml-yacc, sml-lex, sml-noshare (details in HowToGetML).
  1173. ports:        Sun 4, SPARC (binaries provided).
  1174. portability:    Probably portable to other Unix's.
  1175. updated:    1993/06/25
  1176.  
  1177. language:    O'small
  1178. package:    ?
  1179. version:    ?
  1180. parts:        interpreter
  1181. author:        ?
  1182. how to get:    ?
  1183. description:    ?
  1184. requires:    Miranda
  1185. ports:        ?
  1186. portability:    ?
  1187. updated:    ?
  1188.  
  1189. language:    Self
  1190. package:    Self
  1191. version:    2.0
  1192. parts:        ?, compiler?, debugger, browser
  1193. author:        The Self Group at Sun Microsystems & Stanford University
  1194. how to get:    ftp ? from self.stanford.edu
  1195. description:    The Self Group at Sun Microsystems Laboratories, Inc., and
  1196.         Stanford University is pleased to announce Release 2.0 of the
  1197.         experimental object-oriented exploratory programming language
  1198.         Self.  Release 2.0 introduces full source-level debugging of
  1199.         optimized code, adaptive optimization to shorten compile
  1200.         pauses, lightweight threads within Self, support for
  1201.         dynamically linking foreign functions, changing programs within
  1202.         Self, and the ability to run the experimental Self graphical
  1203.         browser under OpenWindows.
  1204.         Designed for expressive power and malleability, Self combines a
  1205.         pure, prototype-based object model with uniform access to state
  1206.         and behavior. Unlike other languages, Self allows objects to
  1207.         inherit state and to change their patterns of inheritance
  1208.         dynamically. Self's customizing compiler can generate very
  1209.         efficient code compared to other dynamically-typed
  1210.         object-oriented languages.
  1211. ports:        Sun-3 (no optimizer), Sun-4
  1212. portability:    ? [Can it be ported to non-Sun or non-Unix systems?]
  1213. discussion:    self-request@self.stanford.edu
  1214. contact:    ?
  1215. updated:    1992/08/13
  1216.  
  1217. language:    Smalltalk
  1218. package:    Little Smalltalk
  1219. version:    3
  1220. parts:        ?
  1221. author:        Tim Budd <budd@cs.orst.edu> ?
  1222. how to get:    ftp pub/budd/? from cs.orst.edu
  1223. description:    ?
  1224. ports:        unix, pc, atari, vms
  1225. status:        ?
  1226. updated:    ?
  1227.  
  1228. language:    Smalltalk
  1229. package:    GNU Smalltalk
  1230. version:    1.1.1
  1231. parts:        ?
  1232. author:        Steven Byrne <sbb@eng.sun.com>
  1233. how to get:    ftp smalltalk-1.1.1.tar.Z from a GNU archive site
  1234. description:    ?
  1235. bugs:        gnu.smalltalk.bug
  1236. discussion:    ?
  1237. contact:    ?
  1238. updated:    1991/09/15
  1239.  
  1240. language:    Smalltalk
  1241. package:    msgGUI
  1242. version:    1.0
  1243. parts:        library
  1244. author:        Mark Bush <bush@ecs.ox.ac.uk>
  1245. how to get:    ftp pub/Packages/mst/mstGUI-1.0.tar.Z from ftp.comlab.ox.ac.uk
  1246. description:    GUI for GNU Smalltalk.    This this package contains the basics 
  1247.         for creating window applications in the manner available in 
  1248.         other graphical based Smalltalk implementations.
  1249. updated:    1992/12/14
  1250.  
  1251. language:    Smalltalk
  1252. package:    Mei
  1253. version:    0.50
  1254. parts:        interpreters(Lisp,Prolog), examples, libraries, tools, editor,
  1255.         browser
  1256. author:        Atsushi Aoki <aoki@sra.co.jp> and others
  1257. how to get:    ftp pub/goodies/misc/Mei.tar.Z from mushroom.cs.man.ac.uk
  1258.     N.America:    ftp pub/MANCHESTER/misc/Mei from st.cs.uiuc.edu
  1259.     Japan:    ftp pub/lang/smalltalk/mei/Mei0.50.tar.Z from srawgw.sra.co.jp
  1260. description:    Mei is a set of class libraries for Objectworks Smalltalk
  1261.         Release 4.1.  it includes:   1.     Grapher Library (useful for
  1262.         drawing diagrams);  2. Meta Grapher Library (grapher to develop
  1263.         grapher);  3. Drawing tools and painting tools (structured
  1264.         diagram editors and drawing editors);  4. GUI editor (graphical
  1265.         user interface builder);  5. Lisp interpreter;    6. Prolog
  1266.         interpreter;  7. Pluggable gauges;  8. Extended browser;
  1267.         (package, history, recover, etc.)
  1268. restriction:    GNU General Public License
  1269. requires:    Objectworks Smalltalk Release 4.1
  1270. contact:    Watanabe Katsuhiro <katsu@sran14.sra.co.jp>
  1271. updated:    1993/01/20
  1272.  
  1273. language:    Smalltalk
  1274. iref:        (Pascal) Tim Budd's C++ implementation of Kamin's interpreters
  1275. -- 
  1276. Send compilers articles to compilers@iecc.com or
  1277. {ima | spdcc | world}!iecc!compilers. Meta-mail to compilers-request@iecc.com.
  1278.  
  1279.