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) |
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
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.