C++ and parser generators

"BBURSHTE.US.ORACLE.COM" <BBURSHTE@us.oracle.com>
Mon, 7 Feb 1994 21:07:17 GMT

          From comp.compilers

Related articles
C++ and parser generators janpeter@mpi.kun.nl (Jan Peter de Ruiter) (1994-02-04)
Re: C++ and parser generators helz@ecn.purdue.edu (1994-02-06)
C++ and parser generators BBURSHTE@us.oracle.com (BBURSHTE.US.ORACLE.COM) (1994-02-07)
Muskox report available for FTP johnl@iecc.com (John Levine) (1994-02-10)
| List of all articles for this month |
Newsgroups: comp.compilers
From: "BBURSHTE.US.ORACLE.COM" <BBURSHTE@us.oracle.com>
Keywords: C++, parse, tools
Organization: Compilers Central
References: 94-02-031 94-02-037
Date: Mon, 7 Feb 1994 21:07:17 GMT



Jan Peter de Ruiter <janpeter@mpi.kun.nl> writes:
|> The question is this: To me it seems to be the case that C++ would be a
|> very convenient language to build a parser generator in. ...


Randall A Helzerman writes:
]Ter and I have talked quite a bit about this. His ultimate goal is to
]write a parser generator in an object oriented language. The current
]problem with C++ is that there exists no compiler for it which doesn't
]have prohibitive bugs in it. He has tried repeatedly for several years
]now, but now appears to be quite disgusted with C++. He is investigating
]writing his own bug-free OO language in which to do further developement
]in.


According to my experience, some commercial versions of C++ are quite good
for writing a parser-generator. I have written a full minimal state LR1
parser generator in C++. The parser's sources, as well as its generated
C++ sources are compiled all right in Borland C++ v. 3.1 and v.4 and in
AT&T front-end v3.1 (they have actually been ported to PYRAMID, RISC-6000,
HP-UX, and ALPHA-DEC as well). The only serious problem I have found is
with GNU C++ when it could not quite handle pointers to member functions.


The parser I reffer to is USSA. Its doc is at <primost.cs.wisc.edu>. Since
then I have a new parser generator called MUSKOX. It has much more
capabilities - virtual grammars, C++ class attributes, faster algorithm,
... And all is written in C++, using usual C++ OO gadgets like
inheritance, virtual functions, etc., but no templates (at the time I
started there were no C++ compiler available that would provide templates).


Anybody interested in USSA or MUSKOX - please contact me by email.


Thanks, Boris.
--


Post a followup to this message

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