meta data for this page
  •  

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Last revisionBoth sides next revision
key_differences [2020/12/12 23:28] – [JavaCC 21 is being actively developed] revuskykey_differences [2021/02/08 18:09] – ↷ Links adapted because of a move operation revusky
Line 37: Line 37:
 Perhaps most importantly, the longstanding bug of nested syntactic lookahead not working correctly has [[https://javacc.com/2020/07/15/nested-syntactic-lookahead-works/|finally been squashed]]! Perhaps most importantly, the longstanding bug of nested syntactic lookahead not working correctly has [[https://javacc.com/2020/07/15/nested-syntactic-lookahead-works/|finally been squashed]]!
  
-The ''SCAN'' construct (designed to supersede the legacy ''LOOKAHEAD'') offers a superset of the legacy ''LOOKAHEAD'' functionality. [[Lookbehind]] predicates allow you to define conditions at [[choice points]] based on scanning backwards in the parse/lookahead stack. [[Lookbehind]] also works in arbitrarily nested scanahead.+The ''SCAN'' construct (designed to supersede the legacy ''LOOKAHEAD'') offers a superset of the legacy ''LOOKAHEAD'' functionality. [[contextual_predicates]] predicates allow you to define conditions at [[choice points]] based on scanning backwards in the parse/lookahead stack. [[contextual_predicates]] also works in arbitrarily nested scanahead.
  
 The new [[up to here]] construct should eliminate the need to write more verbose and error-prone numerical and syntactic lookahead constructs.  The new [[up to here]] construct should eliminate the need to write more verbose and error-prone numerical and syntactic lookahead constructs.