janl/mustache.js — pull request #217 by mjijackson (2012-06-04 16:20:31+00:00)
Title: Speed increases, refactored parser

Lots of changes in this work. First of all, I rewrote the parser/compiler to encourage greater separation of responsibilities. The scanner, parser, compiler, and renderer are all completely separate now. This architecture has led to a speed increase across the board, up to 50% in some browsers. See [the bechmark here](http://jsperf.com/mustache-js).

Also, this work removes the dependency on Ruby/Rspec for running the tests. All tests are run in JavaScript now using node and the [vows](http://vowsjs.org) testing framework. This let's us run finer grained unit tests, as well as debug the code more easily when tests are running. We also have the ability to run a single spec now instead of running the entire suite every time.