Announcing the 1.10 release of PCCTS

"Terence Parr" <>
Tue, 31 Aug 1993 04:09:49 GMT

          From comp.compilers

Related articles
Announcing the 1.10 release of PCCTS (Terence Parr) (1993-08-31)
| List of all articles for this month |

Newsgroups: comp.compilers
From: "Terence Parr" <>
Keywords: tools, available, PCCTS
Organization: Compilers Central
Date: Tue, 31 Aug 1993 04:09:49 GMT

The lastest version of the Purdue Compiler-Construction Tool Set
(PCCTS), 1.10, 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 Postscript form from the email server or ftp site and via
U of MN AHPCRC Preprint 93-088).

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, selective backtracking,
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 predicated-LL(k) parsers constructed in pure,
human-readable, C code.

For those users with anonymous FTP access: The site is:


in the directory:


Those with only email access mail send:

                                  mail -s 'email install'
                                  mail -s 'email one.c'
                                  mail -s 'email pccts.bag'

Note that non-UNIX users will have to get files install.unbag.reqd and
unbag.c in addition. See the README file. The makefile has explicit
stuff for a variety of compilers for PC's. A makefile.VMS file is
also included for ANTLR and DLG.

Items of note in the new version:

o Semantic predicate functionality has been expanded. All 'visible'
        predicates are hoisted and the lookahead 'context' of the
        predicates can be computed and moved along with the predicate.

o A means of examining the tokens of the entire input stream has been
        added. Using this mechanism, 'syntactic' predicates have been
        introduced that represent a form of selective backtracking. This
        is extremely useful for parsing totally hairy stuff like C++.

o The user has been given much more control of the grammar analysis
        phase of ANTLR with the addition of a second lookahead depth
        specifier, '-ck n'. With it, the user can ask ANTLR to use a
        linear approximation to the full, exponentially complex lookahead
        computation. This approximation handles most LL(k) decisions and
        is linear in complexity.

o DLG is about 7 times faster.

o 1.10 ANTLR-generated parser files compile about twice as fast and
        are about half the size of 1.06 output files.

o Multiple ANTLR parsers can be linked together using the new
        '#parser "my_parser_name"' directive.

If you are interested in sharing your experiences/problems/
successes/suggestions regarding PCCTS, please subscribe to the mailing
list by sending mail to


with a body of

                                subscribe pccts-users your_name

where your_name can be your name or your email address.
To post a message, send email to


Also, feel free to post messages to the comp.compilers newsgroup if
you have grammars/tools that might prove useful to others. At last
count, about 150 people have requested the mailing list; we just
passed 1000 registered sites for PCCTS.

The mail server ( is still the site to obtain the
PCCTS software. It is to be distinguished from our mailing list server
( that handles our mailing list

The Authors of The Purdue Compiler Construction Tool Set:

    Terence J. Parr,
    Will E. Cohen,
    Henry G. Dietz,

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.