A(n incomplete) Javascript implementation in Ruby!
JavaScript Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
test fix join, sparse arrays, etc Feb 4, 2012
.travis.yml remove rbx from travis Jan 18, 2012
Gemfile proper gem file Jan 5, 2012
LICENSE MIT License Oct 29, 2011
disasm.rb compilation to speed up execution (parsing is slooooow), String.proto… Jan 4, 2012
parse.rb bundler/setup Jan 7, 2012
repl.js basic repl written in javascript Jan 4, 2012
runner.rb add backtrace to runner.rb Jan 24, 2012
test.rb add message if a test file could not be loaded Feb 4, 2012
twostroke.gemspec bump gem version Jan 17, 2012




Twostroke is a Javascript implementation written in pure Ruby. It currently consists of:

  • A hand-written parser
  • A TSASM compiler (Twostroke's internal bytecode format)
  • A VM that runs TSASM bytecode
  • A minimal Javascript standard library implementation
  • A test suite containing:
    • Some tests written for Twostroke
    • Underscore.js's complete test suite (minus the cases relying on the DOM)
    • Parts of mootools' test suite

Why use Twostroke?

It's cool:


It actually works:

yep, that's unmodified underscore.js:

tests lol