ABNF Parser Generator

"Lowell Thomas" <lowell@coasttocoastresearch.com>
4 Jun 2005 15:09:17 -0400

          From comp.compilers

Related articles
ABNF Parser Generator lowell@coasttocoastresearch.com (Lowell Thomas) (2005-06-04)
Re: ABNF Parser Generator angray@beeb.net (Aaron Gray) (2005-06-16)
Re: ABNF Parser Generator ang-usenet@gmail.com (Aaron Gray) (2005-06-26)
Re: ABNF Parser Generator lowell@coasttocoastresearch.com (Lowell Thomas) (2005-11-29)
| List of all articles for this month |

From: "Lowell Thomas" <lowell@coasttocoastresearch.com>
Newsgroups: comp.compilers
Date: 4 Jun 2005 15:09:17 -0400
Organization: Compilers Central
Keywords: parse, question
Posted-Date: 04 Jun 2005 15:09:17 EDT

Hi All,

I'm new to this group and new to the business of parser
generators. I've recently written a parser generator which takes any
RFC2234-compliant ABNF grammar and produces a C++ recursive-decent
parser with a call back function for each rule name. The call back
functions can be used for user-written syntactic actions and
user-written resolution of alternates with ambiguous prefixes. It does
fairly extensive grammar checking and recursion analysis and has been
tested on a variety of grammars from simple to complex.

I know that parser generation is a mature field and that many tools
exist, but searching the web and this group for ABNF-specific tools
doesn't seem to turn up much. I would be very interested in knowing if
similar tools exist or whether there is any interest in such a tool.

I've perused a number of the parser generator descriptions, here and
elsewhere, but don't see any that use ABNF grammar descriptions or the
call back function approach to interface the user with the
parser. However, the shear number of them is daunting. I would be very
interested in comments, tips, critiques, etc. from others more
experienced in the field. The full description and source code with
examples is available at http://www.coasttocoastresearch.com

Lowell Thomas

Post a followup to this message

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