Commits on Feb 25, 2011
  1. Refactor the Variable AST node into two different nodes, and fix a bu…

    …g where all instances of Lupin::Types::Table had the same #hash result.
    committed Feb 24, 2011
Commits on Feb 24, 2011
  1. Implement variable lookups and function calls. For bin/lupin.rb, set …

    …the 'exit' variable to Kernel.exit so it can be called from Lua.
    
    Also fix () and [] precedence issue where foo()['k'] and foo['k']() wouldn't work.
    Also remove shambles of metamethods implementation. I'll figure it out later.
    committed Feb 24, 2011
Commits on Feb 23, 2011
Commits on Feb 22, 2011
Commits on Feb 21, 2011
  1. Fix minor issue where Lupin::AST::Number sexp's sometimes were floats…

    … and other times were integers.
    committed Feb 21, 2011
  2. Implement table indexing, expand the Generator's instruction set, and…

    … clean up the representation of literals in the AST.
    
    Fix an occurance where true parses as false and vice versa.
    Implement #eql? and #hash on Lupin::Types::Value, allowing for much more natural usage of the Table type.
    committed Feb 21, 2011
Commits on Feb 20, 2011
  1. Implement table literals.

    committed Feb 20, 2011
Commits on Dec 15, 2010
Commits on Dec 13, 2010
  1. Added a new Lupin::Value class (the types/ files will be removed soon…

    …) to implement some of the primitive operations on Lua values. Also implemented #type, #getmetatable, and #setmetatable, of which only #type is used at this time.
    
    Also moved Generator#try_tonumber to Lupin::Value.
    committed Dec 13, 2010
  2. Minor comment fix

    committed Dec 12, 2010
Commits on Dec 12, 2010
  1. Improved on the compilation process by replacing Compiler with State,…

    … Code, and Generator. At this point, State#compile always returns a Code object that returns true, but this will change (obviously) when I build out Lupin::Generator.
    committed Dec 11, 2010
Commits on Dec 10, 2010
Commits on Dec 8, 2010
  1. Implemented many operations on the Number and String value types. Sti…

    …ll missing behaviors that depend on metatables.
    committed Dec 8, 2010
Commits on Dec 7, 2010
Commits on Dec 6, 2010
  1. Touched up some small issues with the Value types. Also re-implemente…

    …d the 'not' operator.
    committed Dec 6, 2010
  2. Use :consume option whenever using Lupin::Parser.parse, so invalid da…

    …ta after a valid match isn't ignored.
    committed Dec 6, 2010
  3. Added specs for matching booleans and nil, and refactored the associa…

    …ted matches in the parser into their own rules to make sure it only matches on those values.
    committed Dec 6, 2010
Commits on Dec 5, 2010
  1. Cleaned up the parser some more by moving more of the data-translatin…

    …g code into match mixins. Also moved the escape sequences code out of Lupin::AST::String and into a match mixin to decouple the file format from the AST.
    committed Dec 5, 2010
  2. Created the beginnings of Lua's type system, and converted the specs …

    …to use S-expressions instead of a hand-crafted AST node tree.
    committed Dec 4, 2010
Commits on Dec 4, 2010
  1. Added some operators (# and %) that I missed previously because I was…

    … referring to Lua 5.0 instead of 5.1.
    committed Dec 4, 2010
  2. No indeed; I am the king of dunces. (Forgot to add an | between 'not'…

    … and '-'.) Also cleaned up some whitespace mis-handling around the word operators (and/or/not).
    
    Implemented bytecode for the 'not' operator.
    committed Dec 4, 2010