--- editLink: false --- > See [commit history](https://github.com/pegjs/pegjs/compare/0.3...0.4) for a full list of changes. ## v0.4 _(April 17, 2010)_ ### Big Changes * Improved IE compatibility — IE6+ is now fully supported. * Generated parsers are now standalone (no runtime is required). * Added example grammars for JavaScript, CSS and JSON. * Added a benchmark suite. * Implemented negative character classes (e.g. `[^a-z]`). * Project moved from BitBucket to GitHub. ### Small Changes * Code generated for the character classes is now regexp-based (= simpler and more scalable). * Added `\uFEFF` (BOM) to the definition of whitespace in the metagrammar. * When building a parser, left-recursive rules (both direct and indirect) are reported as errors. * When building a parser, missing rules are reported as errors. * Expected items in the error messages do not contain duplicates and they are sorted. * Fixed several bugs in the example arithmetic's grammar. * Converted `README` to GitHub Flavored Markdown and improved it. * Added `CHANGELOG`. * Internal code improvements.