home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / compiler / 1530 < prev    next >
Encoding:
Internet Message Format  |  1992-09-10  |  4.8 KB

  1. Path: sparky!uunet!haven.umd.edu!darwin.sura.net!udel!gvls1!faatcrl!iecc!compilers-sender
  2. From: grosch@karlsruhe.gmd.de (Josef Grosch)
  3. Newsgroups: comp.compilers
  4. Subject: GMD Karlsruhe Toolbox - Cocktail
  5. Keywords: tools, FTP, parse, attribute, LALR, LL(1)
  6. Message-ID: <92-09-049@comp.compilers>
  7. Date: 8 Sep 92 08:33:56 GMT
  8. Sender: compilers-sender@iecc.cambridge.ma.us
  9. Reply-To: Josef Grosch  <grosch@karlsruhe.gmd.de>
  10. Organization: GMD Forschungsstelle Karlsruhe
  11. Lines: 118
  12. Approved: compilers@iecc.cambridge.ma.us
  13.  
  14. A new version (9208) of the GMD Toolbox for Compiler Construction - also
  15. known as Cocktail (Compiler-Compiler-Toolbox Karlsruhe) - is now available
  16. via anonymous ftp:
  17.  
  18.  
  19. TOOLBOX(1)       GMD-Forschungsstelle-Karlsruhe        TOOLBOX(1)
  20.  
  21.  
  22. NAME
  23.      toolbox - tool box for compiler construction
  24.  
  25. DESCRIPTION
  26.      Toolbox is a set of program generators or compiler
  27.      construction tools for nearly all phases of a compiler. The
  28.      compiler construction tools support the automatic generation
  29.      of compilers for imperative programming languages. The
  30.      design goals for this tool box were practical usability,
  31.      significantly reduced construction effort for compilers, and
  32.      high quality of the generated compilers. Especially with
  33.      respect to efficiency the tools are competitive to
  34.      programming by hand. Currently the tools can generate
  35.      compiler modules in the target languages C and Modula-2.
  36.      First realistic applications demonstrate the excellent
  37.      performance of the tools and show that the tools allow the
  38.      construction of production quality compilers.
  39.  
  40. TOOLS
  41.      Rex     generator for lexical analyzers
  42.      Lalr    LALR(1) parser generator
  43.      Ell     LL(1) parser generator
  44.      Ast     generator for abstract syntax trees
  45.      Ag      generator for attribute evaluators
  46.      Puma    transformation of attributed trees using pattern matching
  47.      Reuse   library of reusable modules
  48.  
  49. IMPLEMENTATION LANGUAGES
  50.      C (ANSI + K&R) or Modula-2
  51.  
  52. TARGET LANGUAGES
  53.      C (ANSI + K&R), C++, or Modula-2
  54.  
  55. PLATFORMS
  56.      DEC Station / ULTRIX
  57.      VAX / ULTRIX or BSD UNIX 4.2
  58.      SUN 3 or SUN 4 / SunOS
  59.      NEXT / MACH
  60.      PCS Cadmus / MUNIX
  61.      others
  62.  
  63. FILESERVER
  64.      host    : ftp.karlsruhe.gmd.de = 192.76.241.33
  65.      login    : anonymous
  66.      directory    : /pub/cocktail
  67.  
  68. DISTRIBUTION
  69.      Medium: DC 300 data cartridge, TK 50, Exabyte, or 1/2" magnetic tape
  70.      (1600 bpi) in tar format
  71.  
  72.      source programs in Modula-2 as well as in C
  73.      documentation in troff- and Postscript-format
  74.      example specifications
  75.  
  76. CONTACT
  77.      Josef Grosch
  78.      GMD Forschungsstelle an der Universitaet Karlsruhe
  79.      Vincenz-Priesznitz-Str. 1
  80.      D-7500 Karlsruhe
  81.      Germany
  82.  
  83.      Tel: +721-6622-26
  84.      Fax: +721-6622-968
  85.      E-Mail: grosch@karlsruhe.gmd.de
  86.  
  87. TAPE HANDLING FEE
  88.      Source licence: 500 DM or 250 US $
  89.  
  90. RECENT CHANGES
  91.  
  92. - The scanner generator 'rex' and the parser generators 'lalr' and 'ell'
  93.   allow to chose arbitrary names for the generated modules. Therefore, it is
  94.   possible to have several scanners and parsers in one program.
  95.  
  96. - The length of a token and the lookahead in scanners generated by 'rex' is no
  97.   longer restricted to 256 characters. Both, tokens and lookahead can be of
  98.   arbitrary length. A restriction in the size of the tables generated by
  99.   'lalr' has been removed. Now it is possible to generate rather huge
  100.   parsers.
  101.  
  102. - The attribute grammar tool 'ag' has been extended to generate attribute
  103.   evaluators for well-defined attribute grammars (WAGs). The program checks
  104.   grammars whether they obey this property. It is possible to access
  105.   non-local attributes and to compute attributes on a restricted form of
  106.   graphs.
  107.  
  108. - The auxiliary modules 'Errors' and 'Source' have been included into the
  109.   library of reusable modules called 'reuse'. The 'Errors' module has been
  110.   extended to support messages with a string argument. It allows to store
  111.   the messages and print them sorted by the source position. An extra module
  112.   named 'Positions' has been introduced in 'reuse', too, for the handling of
  113.   source positions.
  114.  
  115. - The program 'cg' which implements 'ast' and 'ag' accepts several input
  116.   files.  Instead of one file that communicates a tree definition to
  117.   'puma' with the fixed name 'TREE.TS' it is possible to produce several
  118.   of those with different names. This is of interest if different "views"
  119.   have to be communicated.
  120.  
  121. - The extern declarations for malloc, free, and exit have been removed from
  122.   the generated C code.
  123.  
  124. - All tools do not generate # line directives by default, only upon request.
  125.  
  126. - In case of fatal errors during the execution of generated modules a user
  127.   defined exception routine can be called instead of the predefined 'exit
  128.   (1)'.
  129. -- 
  130. Send compilers articles to compilers@iecc.cambridge.ma.us or
  131. {ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.
  132.