Commits on Mar 6, 2012
  1. @dmajda

    Make current parse position visible in actions and predicates

    The speed/size impact is insignificant.
    
    Speed impact
    ------------
    Before:     214.11 kB/s
    After:      214.87 kB/s
    Difference: 0.35%
    
    Size impact
    -----------
    Before:     1042691 b
    After:      1046731 b
    Difference: 0.38%
    
    (Measured by /tools/impact with Node.js v0.6.6 on x86_64 GNU/Linux.)
    dmajda committed Mar 5, 2012
  2. @dmajda
Commits on Mar 4, 2012
  1. @dmajda

    AST: Store rules in an array instead of an object

    This simplifies the code a bit and makes the AST more regular (each node
    type has a fixed set of properties). The latter may get useful later
    when generalizing visitors.
    dmajda committed Mar 4, 2012
  2. @dmajda

    Replace Jakefile with Makefile

    Doing scripting tasks in JavaScript is painful.
    dmajda committed Mar 4, 2012
  3. @dmajda

    Fix |quote| visibility in generated parsers

    |quote| is used outside of the |parse| function so it must be defined in
    more outer scope.
    
    Fixes a problem (introduced in e9d8dc8)
    where construction of some error messages could throw an error.
    dmajda committed Mar 4, 2012
Commits on Feb 27, 2012
  1. @dmajda

    Semantic predicates now have access to preceding labels

    Part of a fix for GH-69.
    dmajda committed Feb 27, 2012
  2. @dmajda

    Move param computations from the emitter into a separate pass

    This has two main benefits:
    
      1. The knowledge about scoping params in at one designated place,
         making all future adjustments in this area easier.
    
      2. Action-related code does not handle sequences specially anymore.
         Such knowledge/behavior doesn't belong there.
    dmajda committed Feb 27, 2012
  3. @dmajda

    Consolidate all variable name computations into one compiler pass

    Before this change, knowledge about variable names was spread between
    the |computeStackDepths| pass and the code emitter code. For example,
    the fact that the |&...| expression needs one variable to store a
    position was represented in both places.
    
    This changes consolidates that knowledge and introduces a new
    |computeVarNames| pass. This pass replaces old |computeStackDepths|
    pass, does all computations realted to variable names and stores the
    results in the AST. Note that some knowledge about variables
    (inevitably) remained in emitter code templates.
    
    Beside DRYing things up, this change simplifies the emitter
    significantly. By storing variable names in the AST it also allows
    introduction of a pass that will identify parameters passed to actions
    using proper symbol tables. Right now, this is done in a hackish way
    directly in the emitter, which won't work well with changes planned in
    GH-69.
    dmajda committed Feb 27, 2012
Commits on Feb 13, 2012
  1. @dmajda
  2. @dmajda

    Remove comment about IE in |quoteForRegexpClass|

    We escape null for general compatibility (see comment at the top of the
    function), not only because of IE.
    dmajda committed Feb 13, 2012
Commits on Feb 12, 2012
  1. @dmajda

    /bin/pegjs: Avoid calling |process.openStdin|

    While |process.openStdin| is not officially deprecated, it's no longer
    documented and just using |process.stdin| and resuming it seems to be
    the official way.
    dmajda committed Feb 12, 2012
  2. @dmajda

    /bin/pegjs: Don't close standard output

    Avoids "Error: process.stdout cannot be closed" error when invoked
    without file arguments.
    dmajda committed Feb 12, 2012
  3. @dmajda
  4. @dmajda

    Add |expected| and |found| properties to exceptions thrown by parsers

    Based on a patch by Marcin Stefaniuk (marcin@stefaniuk.info).
    dmajda committed Feb 12, 2012
  5. @dmajda
  6. @dmajda

    Add |offset| property to exceptions thrown by parsers

    Based on a patch by Marcin Stefaniuk (marcin@stefaniuk.info).
    dmajda committed Feb 11, 2012
Commits on Feb 4, 2012
  1. @dmajda

    Fix typo in JavaScript example grammar

    Fixes GH-62.
    dmajda committed Feb 4, 2012
Commits on Jan 11, 2012
  1. @dmajda

    Merge pull request #59 from jasondavies/typo

    Fix typo in comment.
    dmajda committed Jan 11, 2012
Commits on Jan 9, 2012
  1. @dmajda
Commits on Jan 7, 2012
  1. @dmajda

    Use |util| module instead of |sys|

    |sys| emits a warning in Node.js 0.6.x.
    dmajda committed Jan 7, 2012
  2. @dmajda

    Update version of Node.js and development dependencies in package.json

    The new versions are the ones I test with.
    dmajda committed Jan 7, 2012
Commits on Oct 9, 2011
  1. @jasondavies

    Fix typo in comment.

    jasondavies committed Oct 9, 2011
Commits on Oct 3, 2011
  1. @dmajda
  2. @dmajda
  3. @dmajda
  4. @dmajda

    Unify checks and passes

    There is no real reason to have them separated.
    dmajda committed Oct 3, 2011
  5. @dmajda
  6. @dmajda

    Rename |reportMissingReferencedRules| check to |reportMissingRules|

    The new name is shorter, there is no real loss of meaning.
    dmajda committed Oct 3, 2011
  7. @dmajda
Commits on Oct 1, 2011
  1. @dmajda
  2. @dmajda
  3. @dmajda
  4. @dmajda
Commits on Sep 30, 2011
  1. @dmajda

    Fix stack depth computations for empty sequences

    Part of a fix for GH-53.
    dmajda committed Sep 30, 2011
  2. @dmajda

    Fix |posStackDepth| computation for rules

    Rules by themselves do not need any variable for storing position.
    
    Part of a fix for GH-53.
    dmajda committed Sep 30, 2011