Switch branches/tags
Nothing to show
Commits on Feb 25, 2011
  1. Refactor the Variable AST node into two different nodes, and fix a bu…

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

    Twisol committed Feb 24, 2011
    …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.
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…

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

    Twisol committed Feb 21, 2011
    … 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.
Commits on Feb 20, 2011
  1. Implement table literals.

    Twisol 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…

    Twisol committed Dec 13, 2010
    …) 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.
  2. Minor comment fix

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

    Twisol committed Dec 12, 2010
    … 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.
Commits on Dec 10, 2010
Commits on Dec 8, 2010
  1. Implemented many operations on the Number and String value types. Sti…

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

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

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

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

    Twisol committed Dec 5, 2010
    …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.
  2. Created the beginnings of Lua's type system, and converted the specs …

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

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

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