


                    The History of PCCTS

         The Purdue Compiler-Construction Tool Set


                        Terence Parr
                 Parr Research Corporation
                   Minneapolis, Minnesota
                            and
                  University of Minnesota
      Army High Performance Computing Research Center

                      [Updated 8-7-94]


     The PCCTS project began as a parser-generator project for a  gra-
duate  course  at Purdue University in the Fall of 1988 taught by Hank
Dietz- translator-writing systems.  Under the  guidance  of  Professor
Dietz, the parser generator, ANTLR (originally called YUCC), continued
after the termination of the course and eventually became the  subject
of  Terence  Parr's Master's thesis.  Originally, lexical analysis was
performed via ALX which was soon replaced by Will Cohen's DLG  in  the
Fall  of  1989 (DFA-based lexical-analyzer generator, also an offshoot
of the graduate translation course).

     The alpha version of ANTLR was  totally  rewritten  resulting  in
1.00B.    Version   1.00B  was  released  via  an  internet  newsgroup
(comp.compilers) posting in February of 1990 and  quickly  gathered  a
large  following.  1.00B generated only LL(1) parsers, but allowed the
merged description of lexical and syntactic analysis.  It had rudimen-
tary  attribute  handling  similar  to that of YACC and did not incor-
porate rule parameters or return values; downward inheritance was very
awkward.   1.00B-generated  parsers  terminated  upon the first syntax
error.  Lexical classes (modes) were not allowed and DLG did not  have
an interactive mode.

     Upon starting his Ph.D. at Purdue in the Fall  of  1990,  Terence
Parr  began  the  second  total rewrite of ANTLR.  The method by which
grammars may be  practically  analyzed  to  generate  LL(k)  lookahead
information  was  discovered in August of 1990 just before his return.
Version 1.00 incorporated this algorithm and included the AST  mechan-
ism,  lexical  classes,  error  classes, and automatic error recovery;
code quality and portability were higher.  In February  of  1992  1.00
was  released  via  an  article in SIGPLAN Notices.  Peter Dahl, Ph.D.
candidate, and Professor Matt O'Keefe (both at the University of  Min-
nesota)  tested  this  version  extensively.  Dana Hoggatt (Micro Data
Base Systems, Inc.) came up with the idea of error  grouping  (strings
attached to non-terminals) and tested 1.00 heavily.

     Version 1.06 was released in  December  1992  and  represented  a
large  feature enhancement over 1.00.  For example, rudimentary seman-
tic predicates were  introduced,  error  messages  were  significantly
improved  for k>1 lookahead and ANTLR parsers could indicate that loo-
kahead fetches were  to  occur  only  when  necessary  for  the  parse



                                                                Page 1

                                                                 PCCTS


(normally,  the  lookahead "pipe" was constantly full).  Russell Quong
joined the project in the Spring of 1992 to aid in the semantic predi-
cate  design.   Beginning  and  advanced  tutorials  were  created and
released as well.  A makefile generator  was  included  that  sets  up
dependencies  and  such  correctly  for  ANTLR and DLG.  Very few 1.00
incompatibilities were introduced (1.00 was quite different from 1.00B
in some areas).

     1.10 was released on August 31, 1993 and incorporated bug  fixes,
a  few  feature enhancements and a major new capability - an arbitrary
lookahead operator (syntactic predicate), (alpha)?beta.  This  feature
was  co-designed with Professor Russell Quong also at Purdue.  To sup-
port infinite lookahead, a preprocessor flag, ZZINF_LOOK, was  created
that  forced the ANTLR() macro to tokenize all input prior to parsing.
Hence, at any moment, an action or predicate can see the entire  input
sentence.   The predicate mechanism of 1.06 was extended to allow mul-
tiple predicates to be hoisted; the syntactic context of  a  predicate
was also moved along with the predicate.

     In February of 1994, SORCERER (a  simple  tree-parser  generator)
was  released.  This tool allows the user to parse child-sibling trees
by specifying a grammar rather than building a recursive-descent  tree
walker  by  hand.   Work  towards a library of tree transformations is
underway.  Aaron Sawdey at The University of Minnesota became a second
author of SORCERER after the initial release.

     On April 1, 1994, PCCTS 1.20 was released.  This  was  the  first
version  to  actively  support C++ output.  It also included important
fixes regarding semantic predicates and (..)+ subrules.  This  version
also introduced token classes, the "not" operator, and token ranges.

     On June 19, 1994, SORCERER 1.00B9 was released.   Gary  Funck  of
Intrepid  Technology  joined the SORCERER team and provided very valu-
able suggestions regarding the "transform" mode of SORCERER.

     On August 8, 1994, PCCTS 1.21 was released.  It mainly cleaned up
the C++ output and included a number of bug fixes.

     From the 1.21 release forward, the maintenance and support of all
PCCTS  tools  will be primarily provided by Parr Research Corporation,
Minneapolis MN---an organization founded on the principles  of  excel-
lence in research and integrity in business; we are devoted to provid-
ing really cool software tools.  Please see file PCCTS.FUTURE for more
information.  All PCCTS tools currently in the public domain will con-
tinue to be in the public domain.

     Looking towards the future, a graphical user-interface is in  the
design  phase.   This  would  allow  users  to view the syntax diagram
representation of their grammars and would highlight  nondeterministic
productions.   Parsing can be traced graphically as well.  This system
will be built using a multiplatform window library.  We  also  antici-
pate  the  introduction  of  a  sophisticated error handling mechanism
called "parser exception handling" in a near future release.




                                                                Page 2

                                                                 PCCTS


     Currently, PCCTS is used at over 1000 known academic, government,
and  commercial  sites in 37 countries.  Of course, the true number of
users is unknown due to the large number of ftp sites.
                               Credits

_____________________________________________________________________________
_____________________________________________________________________________
|ANTLR 1.00A            Terence Parr   Hank Dietz                           |
|ALX                    Terence Parr   Hank Dietz                           |
|ANTLR 1.00B            Terence Parr   Hank Dietz, Will Cohen               |
|DLG 1.00B              Will Cohen     Terence Parr, Hank Dietz             |
|NFA Relabelling        Will Cohen                                          |
|LL(k) analysis         Terence Parr   Hank Dietz                           |
|ANTLR 1.00             Terence Parr   Hank Dietz, Will Cohen               |
|DLG 1.00               Will Cohen     Terence Parr, Hank Dietz             |
|ANTLR 1.06             Terence Parr   Will Cohen, Russell Quong, Hank Dietz|
|DLG 1.06               Will Cohen     Terence Parr, Hank Dietz             |
|ANTLR 1.10             Terence Parr   Will Cohen, Russell Quong            |
|ANTLR 1.20             Terence Parr   Will Cohen, Russell Quong            |
|ANTLR 1.21             Terence Parr   Russell Quong                        |
|DLG 1.10               Will Cohen     Terence Parr                         |
|DLG 1.20               Will Cohen     Terence Parr                         |
|DLG 1.21               Terence Parr                                        |
|Semantic predicates    Terence Parr   Russell Quonq                        |
|Syntactic predicates   Terence Parr   Russell Quonq                        |
|SORCERER 1.00A         Terence Parr                                        |
|SORCERER 1.00B         Terence Parr   Aaron Sawdey                         |
|SORCERER 1.00B9        Terence Parr   Aaron Sawdey, Gary Funck             |
|___________________________________________________________________________|




























                                                                Page 3

