Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Dec 16, 2013
  1. Regen'd parser.

  2. Ported more grammar.

Commits on Dec 15, 2013
  1. Added generated grammar.

    [ci skip]
  2. Started migrating grammar from greg to kpeg.

    [ci skip]
Commits on Dec 7, 2013
  1. Added grammar.kpeg

Commits on Dec 6, 2013
  1. Added kpeg dependency.

Commits on Dec 3, 2013
  1. Fixed scope of Generator.

  2. Added .travis.yml.

  3. Ignore Gemfile.lock.

  4. Moved README to

Commits on Apr 29, 2013
Commits on Dec 17, 2010
  1. Don't use 'should' in specs.

Commits on Dec 15, 2010
  1. @vic

    Removed un-used methods from Table

    vic committed
  2. @vic

    First Table implementation.

    vic committed
  3. @vic
  4. @vic
  5. @vic
  6. @vic

    Remove rbc files on clean task

    vic committed
  7. @vic

    Removed inherited from _why's potion. We dont need machin…

    vic committed
    …e assembly for poison.
  8. @vic
Commits on Nov 20, 2010
  1. More closure specs.

  2. Begin parsing closures.

    We are changing from _why's syntax for closures here. He had
      (a, b, ...) : statements.
    where the (a, b, ...) table was optional. We have
      : (a, b, ...) statements.
    where, again, the (a, b, ...) table is optional. In this new
    form, it is easy to communicate that:
      "A closure starts with ':' and ends with '.' and has an optional
      table of arguments as the first element after the ':'"
    However, this does lead to one potential ambiguity (for the user,
    not the parser). The following has an empty body, rather than a single
    statement comprised of a table:
      : (a, b) .
    To create a closure that is a single table as the first item, the
    optional table of arguments must be specified:
      : () (a, b) .
    While it would be nice to avoid this sort of case completely, it
    should be fairly rare. The tradeoff is made in the favor of the simplicity
    of describing (and identifying when reading code) what a closure is.
    A second reason for this syntax is that attaching a block to a message
    is much nicer. The syntax _why used could not handle the following elegantly:
      5 to 10 : (x) x string print.
      5 to (10, 2) : (x) x string print.
    because there is nothing separating the argument to #to (eg 10 or (10, 2) )
    from the argument table for the closure. Using this alternative syntax, the
    closure start token ':' nicely separates the table of arguments as part of a
    message and the table of arguments for the closure.
Commits on Nov 19, 2010
Commits on Nov 17, 2010
  1. Add #string to String.

  2. More operator parsing.

Commits on Nov 16, 2010
  1. Parse arithmetic expressions.

Commits on Nov 14, 2010
  1. Rework nil, true, false.

Commits on Nov 13, 2010
  1. Add mspec as a dependency.

Commits on Nov 12, 2010
  1. Basic compilation infrastructure.

Something went wrong with that request. Please try again.