# Grammar 0.8.1 - a performance release

**URL:** <https://www.ruby-forum.com/t/grammar-0-8-1-a-performance-release/148898>\
**Category:** Ruby\
**Created:** [September 18, 2008, 4:35am UTC](https://www.ruby-forum.com/t/grammar-0-8-1-a-performance-release/148898 "2008-09-18T04:35:03Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![snowbird122](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c68b51/32.png) [@snowbird122](https://www.ruby-forum.com/u/snowbird122)\
**Post date:** [September 18, 2008, 4:35am UTC](https://www.ruby-forum.com/t/grammar-0-8-1-a-performance-release/148898/1 "2008-09-18T04:35:03Z")

</div>

I just uploaded Grammar 0.8.1 here:

[http://rubyforge.org/projects/grammar/](http://rubyforge.org/projects/grammar/)

I mainly put performance into this release. Benchmarking JSON parsers  
from  
various parser generators, here is how it looks:

5.04M/s Grammar/Ruby2CExt(hacked) 0.8.1  
4.62M/s Ragel/C (the json gem - cext)  
2.88M/s Grammar/Ruby2CExt 0.8.1  
1.36M/s Grammar/Ruby2CExt 0.8  
457K/s Grammar/Ruby 0.8.1  
413K/s Grammar/Ruby 0.8  
291K/s RACC/ext  
83.6K/s RACC/ruby  
11.9K/s Treetop  
5.07K/s GhostWheel  
2.29K/s Peggy

About 1000X faster when compared to packrat parsers (the last 3).

I’ll try to work with Dominick Bathon to get my “hacks” into the  
ruby2cext  
project - at least as plugins.

Eric
