Re: please recommend me your favorite parsing tools..

"Quinn Tyler Jackson" <qjackson@wave.home.com>
9 Jun 1998 12:19:19 -0400

          From comp.compilers

Related articles
please recommend me your favorite parsing tools.. baehj@oz.co.kr (¹èÇöÁ÷) (1998-05-30)
Re: please recommend me your favorite parsing tools.. ast@halcyon.com (1998-06-04)
Re: please recommend me your favorite parsing tools.. qjackson@wave.home.com (Quinn Tyler Jackson) (1998-06-09)
| List of all articles for this month |
From: "Quinn Tyler Jackson" <qjackson@wave.home.com>
Newsgroups: comp.compilers
Date: 9 Jun 1998 12:19:19 -0400
Organization: Compilers Central
References: 98-05-135 98-06-015
Keywords: tools, parse

>I am about to make a source code wizard which should parse C++ class and its
>member functions and modify them by user input from dialog boxes. I know
>there are lex and yacc for assistance to these works, however, I think they
>will annoy me seriously so that I am now looking for good parsing tools or
>libraries(well, not complete parsing is not required so that I don't want
>any commercial parsing tools..:) ).




Considering a number of issues, such as #includes, inline methods,
friend functions, templates, and the many subtle inheritence grammar
quirks of C++, IMO, the C++ specification is hairy enough that there
is no way to parse class declarations without "annoying" oneself with
lex and yacc, or something like Visual Parse++ (a commercial parsing
tool).


That said, one way to get around the need for a proper LALR(n) grammar
might be to design a class wizard that churns out classes in some
known, simplified format from the get-go, and sprinkles liberal
tool-specific metainfo that the tool would then use to put things in
order, since this kind of tool would produce C++ code that a simpler
[hand written] parser would parse more intelligently. The caveat
here, of course, is that many programmers would end up inserting their
own code between the lines in order to ride the thing for all it's
worth, thereby breaking the the metainfo.




Cheers,


Quinn
--


Post a followup to this message

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