From: parrt@ecn.purdue.edu (Terence J Parr)
Newsgroups: comp.archives
Subject: [comp.compilers] PCCTS: release 1.06
Followup-To: comp.compilers
Date: 14 Dec 1992 08:16:55 GMT
Organization: Compilers Central
Distribution: world
Reply-To: parrt@ecn.purdue.edu (Terence J Parr)
NNTP-Posting-Host: soda.berkeley.edu
X-Original-Newsgroups: comp.compilers
X-Original-Date: Tue, 8 Dec 1992 23:54:13 GMT

Archive-name: auto/comp.compilers/PCCTS-release-1-06

	The latest release of The Purdue Compiler Construction Tool Set,
PCCTS 1.06, is now available.  This release is a bug fix and feature
update, but does not constitute a major release; hence, the manual has not
been updated (a description of the new features is available in TROFF,
Postscript, and text formats).  The original manual, describing PCCTS
1.00, was published in ACM SIGPLAN Notices publication (Vol 27, No 2, Feb
1992) and is available with the latest release.

	For those not familiar with PCCTS, it is similar to a highly
integrated version of YACC and LEX; where ANTLR (ANother Tool for Language
Recognition) corresponds to YACC and DLG (DFA-based Lexical analyzer
Generator) functions like LEX.  However, PCCTS has many additional
features which make it easier to use for a wide range of translation
problems.  PCCTS is also in the public domain, that is, we reserve no
legal rights to the software.

	PCCTS grammars contain specifications for lexical and syntactic
analysis, semantic predicates, intermediate-form construction and error
reporting.  Rules may employ Extended BNF (EBNF) grammar constructs and
may define parameters, return values and local variables.  Languages
described in PCCTS are recognized via LL(k) parsers constructed in pure,
human-readable, C code.

For those users with anonymous FTP access: THE SITE HAS CHANGED TO:

                 marvin.ecn.purdue.edu (128.46.179.151)

in the directory:

                 pub/pccts/1.06

	For those without ftp access, contact our mail server at
pccts@ecn.purdue.edu.  A missing or undecipherable "Subject:" line will
cause the system to reply with email explaining how to use the server.
However, the following sequence of mail commands (on a UNIX system) is
sufficient to receive all files needed to install PCCTS on your system:

             mail -s 'email README' pccts@ecn.purdue.edu
             mail -s 'email UPDATE106.ms' pccts@ecn.purdue.edu
             mail -s 'email install' pccts@ecn.purdue.edu
             mail -s 'email one.c' pccts@ecn.purdue.edu
             mail -s 'email pccts.bag' pccts@ecn.purdue.edu

Note that non-UNIX users will have to get files install.bag.reqd and
unbag.c in addition.  See the README file for details.

	The old ftp site still exists, but will not be updated.  Only the
new ftp site (or email) should be used for bug fixes, new releases, etc.

	Items of note in the new version:

o Predicated Parsing--PCCTS now has the ability to allow semantics
  (arbitrary C expressions) to influence parsing; hence, context-
  sensitive translators may now be specified.  THIS FEATURE IS AN
  ALPHA RELEASE VERSION.

o ANTLR/DLG should compile without modification using either K&R or
  ANSI compilers.  It can be compiled with GCC 1.37 and 2.2 with
  -pedantic option (ANSI with extreme prejustice).  DOS and OS/2 even
  like it.

o 1.06 is written in itself: 1.00 or higher.

o The PCCTS source grammar files, antlr.g and dlg_p.g, are distributed
  with the 1.06 release

o A C program to generate makefiles for PCCTS projects

o DLG supports case insensitive scanners

o PCCTS can now delay lookahead until absolutely necessary whereas,
  before, parsers always maintained a buffer of k tokens of lookahead.

o Tutorials are available -- beginning and advanced

o Error messages for k>1 are vastly improved

o The trace facility now has an exit macro

o One can limit the amount of resources available to ANTLR grammar
  analysis to overcome the rare occurrences when ANTLR does not
  terminate.

o PCCTS parsers may now be compiled with C++ (tested with GCC 2.2)

If you are interested in sharing your experiences/problems/successes/
suggestions regarding PCCTS, please send email to parrt@ecn.purdue.edu (a
human).  Many people ask what others are doing, but no one tells us what
they are doing.  Also, feel free to post messages to the comp.compilers
newsgroup if you have grammars/tools that might prove useful to others.


                       WHO USES PCCTS?

	Although we will not make public the list of users of the PCCTS
email server, we thought you might be interested in a few statistics about
who is using PCCTS.  Note that this does not include users who simply
access our ftp site, any mirror site, Compuserve, or BIX; neither does it
include those who purchase PCCTS from Austin Code Works.

This information was obtained using a (not very clever) shell script
on Dec.  4, 1992:

Site count:      625 total
Known types:     171 .edu, 168 .com, 11 .gov, 11 .org, 6 .mil

Site countries:  439 US; 186 foreign:

  32 Germany, 21 Australia, 20 UK, 19 Canada, 9 Sweden, 9 Holland, 7
  France, 7 Finland, 5 South Africa, 5 Japan, 5 Austria, 4 Portugal, 4
  Norway, 4 New Zealand, 4 Greece, 4 Denmark, 3 Korea, 3 Italy, 3
  Ireland, 3 India, 3 Commonwealth of Independent States, 2 Hong Kong,
  2 China, 2 Belgium, 1 Singapore, 1 Mexico


                        OTHER INFO

A few universities are using PCCTS in compiler courses.

Mirror sites include src.doc.ic.ac.uk, where PCCTS is available in:
/computing/programming/languages/tools/pccts/1.06


The Authors of The Purdue Compiler Construction Tool Set:

  Terence J. Parr, parrt@ecn.purdue.edu
  Will E. Cohen,   cohenw@ecn.purdue.edu
  Henry G. Dietz,  hankd@ecn.purdue.edu
-- 
Send compilers articles to compilers@iecc.cambridge.ma.us or
{ima | spdcc | world}!iecc!compilers.  Meta-mail to compilers-request.