# Ruby\_parser 3.0.0.a3 Released

**URL:** <https://www.ruby-forum.com/t/ruby-parser-3-0-0-a3-released/221191>\
**Category:** Ruby\
**Created:** [July 4, 2012, 5:05am UTC](https://www.ruby-forum.com/t/ruby-parser-3-0-0-a3-released/221191 "2012-07-04T05:05:31Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![aris](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/258eb7/32.png) [@aris](https://www.ruby-forum.com/u/aris)\
**Post date:** [July 4, 2012, 5:05am UTC](https://www.ruby-forum.com/t/ruby-parser-3-0-0-a3-released/221191/1 "2012-07-04T05:05:31Z")

</div>

ruby\_parser version 3.0.0.a3 has been released!

- bugs: [https://github.com/seattlerb/ruby\_parser/issues](https://github.com/seattlerb/ruby_parser/issues)
- rdoc: [http://docs.seattlerb.org/ruby\_parser](http://docs.seattlerb.org/ruby_parser)
- home: [https://github.com/seattlerb/ruby\_parser](https://github.com/seattlerb/ruby_parser)

ruby\_parser (RP) is a ruby parser written in pure ruby (utilizing  
racc–which does by default use a C extension). RP’s output is  
the same as ParseTree’s output: s-expressions using ruby’s arrays and  
base types.

As an example:

def conditional1(arg1)  
if arg1 == 0 then  
return 1  
end  
return 0  
end

becomes:

s(:defn, :conditional1,  
s(:args, :arg1),  
s(:scope,  
s(:block,  
s(:if,  
s(:call, s(:lvar, :arg1), :==, s(:arglist, s(:lit, 0))),  
s(:return, s(:lit, 1)),  
nil),  
s(:return, s(:lit, 0)))))

Changes:

### 3.0.0.a3 / 2012-07-03

- 1 major enhancement:

- 17 minor enhancements:

- 3 bug fixes:
