Re: [Pyparsing] Get Better Error Messages - Prevent Backtracking
Brought to you by:
ptmcg
From: Paul M. <pt...@au...> - 2008-04-20 14:58:48
|
I am sorting out what to release in the next version of pyparsing. I will definitely include ErrStop or something similar. I would also like to get an idea of any patterns of usage, to see if there is a natural place to automatically include this feature, in an And say. Or perhaps just incorporate this logic into the And class's parseImpl method. Or make raiseErrorStop an attribute of And (or maybe just of ParserElement), so that any class can report its error location. I'm also looking at something like lastParseLoc. Ideally I'd like lastParseLoc to be an attribute of a ParseStatus object that is passed through the grammar - this would be a natural home for lastParseLoc, as well as things like global debugging flags, whitespace character sets, packrat caches, etc. But I think I would also want to pass this object to parse actions, and this would break the interface to all existing parse actions. :( So for now, it will probably have to be a class attribute, the same way that the packrat cache is handled. So these changes could get pretty drastic. I'll keep them to a minimum for compatability with 1.4.x, maybe bump the minor version to 1.5, and save the really drastic changes for 2.0 someday. -- Paul -----Original Message----- From: pyp...@li... [mailto:pyp...@li...] On Behalf Of W. Martin Borgert Sent: Sunday, April 20, 2008 3:50 AM To: Eike Welk Cc: pyp...@li... Subject: Re: [Pyparsing] Get Better Error Messages - Prevent Backtracking On Mon, Apr 14, 2008 at 01:16:35AM +0200, Eike Welk wrote: > I want to propose an other way, how to get better error messages: > Prevent backtracking at certain points in the grammar. I like your approach and will probably use it in one of my two pyparsing projects. Unfortunately, my other projects has about 600 BNF productions, some of them non-trivial. Adding ErrStop to at least 100 or 200 of them would clutter my code a lot and I'm yet sure it even would give the desired result. For that grammar I still hope for inclusion of LastParseLoc or sth. similar in pyparsing :~) Thanks Eike, Gre7g, and Paul! ------------------------------------------------------------------------- This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javao ne _______________________________________________ Pyparsing-users mailing list Pyp...@li... https://lists.sourceforge.net/lists/listinfo/pyparsing-users |