# Ruby\_parser 1.0.0 Released

**URL:** <https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976>\
**Category:** Ruby\
**Created:** [December 23, 2007, 12:03am UTC](https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976 "2007-12-23T00:03:19Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![aguynamedryan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/43a26b/32.png) [@aguynamedryan](https://www.ruby-forum.com/u/aguynamedryan)\
**Post date:** [December 23, 2007, 12:03am UTC](https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976/1 "2007-12-23T00:03:19Z")

</div>

ruby\_parser version 1.0.0 has been released!

- [http://parsetree.rubyforge.org/](http://parsetree.rubyforge.org/)

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.

## FEATURES/PROBLEMS:

- Pure ruby, no compiles.
- Incredibly simple interface.
- Output is 100% equivalent to ParseTree.
  - Can utilize PT’s SexpProcessor and UnifiedRuby for language  
processing.

- Known Issue: Speed sucks currently. 5500 tests currently run in 21  
min.
- Known Issue: Code is waaay ugly. Port of a port. Not my fault. Will  
fix RSN.
- Known Issue: I don’t currently support newline nodes.
- Known Issue: Totally awesome.
- Known Issue: dasgn\_curr decls can be out of order from ParseTree’s.
- TODO: Add comment nodes.

## SYNOPSIS:

RubyParser.new.parse “1+1”

# =\> s(:call, s(:lit, 1), :+, s(:array, s(:lit, 1)))

Changes:

## 1.0.0 / 2007-12-20

- 1 major enhancement

- [http://parsetree.rubyforge.org/](http://parsetree.rubyforge.org/)

---

<div class="post-metadata">

**Author:** ![aguynamedryan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/43a26b/32.png) [@aguynamedryan](https://www.ruby-forum.com/u/aguynamedryan)\
**Post date:** [July 20, 2008, 6:47am UTC](https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976/2 "2008-07-20T06:47:10Z")

</div>

Ryan D. wrote:

> ruby\_parser version 1.0.0 has been released!
> 
> - [http://parsetree.rubyforge.org/](http://parsetree.rubyforge.org/)
> 
> 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.

I assume this doesn’t work with 1.9 [the racc, at least]?  
Thanks!  
-R

---

<div class="post-metadata">

**Author:** ![aguynamedryan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/43a26b/32.png) [@aguynamedryan](https://www.ruby-forum.com/u/aguynamedryan)\
**Post date:** [July 23, 2008, 1:28am UTC](https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976/3 "2008-07-23T01:28:17Z")

</div>

Roger P. wrote:

> Ryan D. wrote:
> 
> > ruby\_parser version 1.0.0 has been released!
> > 
> > - [http://parsetree.rubyforge.org/](http://parsetree.rubyforge.org/)
> > 
> > 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.
> 
> I assume this doesn’t work with 1.9 [the racc, at least]?  
> Thanks!  
> -R

Answering my own question [in 1.9 SVN HEAD]

> > RubyParser.new.parse “1+1”  
> > /Users/rogerpack/dev/ruby\_19\_installed/lib/ruby/gems/1.9.0/gems/ruby\_parser-1.0.0/lib/ruby\_lexer.rb:2617:  
> > [BUG] Bus Error  
> > ruby 1.9.0 (2008-07-23 revision 17865) [i686-darwin9.3.0]

– control frame ----------  
c:0029 p:---- s:0098 b:0098 l:000097 d:000097 CFUNC :method\_missing  
c:0028 p:---- s:0096 b:0096 l:000095 d:000095 CFUNC :old\_initialize  
c:0027 p:0029 s:0092 b:0092 l:000091 d:000091 METHOD  
/Users/rogerpack/dev/ruby\_19\_installed/lib/ruby/gems/1.9.0/gems/ruby\_parser-1.0.0/lib/ruby\_lexer.rb:2617  
c:0026 p:---- s:0088 b:0088 l:000087 d:000087 FINISH :(null)  
…

As a note 1.9 does include racc still, as an extension, so I don’t think  
this is expected.

Guess I’ll file it away to the core people.  
-R

---

<div class="post-metadata">

**Author:** ![aguynamedryan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/43a26b/32.png) [@aguynamedryan](https://www.ruby-forum.com/u/aguynamedryan)\
**Post date:** [July 25, 2008, 12:24am UTC](https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976/4 "2008-07-25T00:24:25Z")

</div>

On Jul 19, 2008, at 21:41 , Roger P. wrote:

> I assume this doesn’t work with 1.9 [the racc, at least]?  
> nope. it works with 1.9 just fine. why?

---

<div class="post-metadata">

**Author:** ![aguynamedryan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/43a26b/32.png) [@aguynamedryan](https://www.ruby-forum.com/u/aguynamedryan)\
**Post date:** [July 25, 2008, 5:42am UTC](https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976/5 "2008-07-25T05:42:48Z")

</div>

> I get a silent failure on 1.9.0-2, but it worked on 1.9.0-1. I’ll look  
> into it but would appreciate if you filed a bug.

Thanks for looking into that. I filed something but it was a little  
obscure.

[http://rubyforge.org/tracker/index.php?func=detail&aid=21263&group\_id=439&atid=1781](http://rubyforge.org/tracker/index.php?func=detail&aid=21263&group_id=439&atid=1781)  
Thanks!  
-R

---

<div class="post-metadata">

**Author:** ![aguynamedryan](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/a/43a26b/32.png) [@aguynamedryan](https://www.ruby-forum.com/u/aguynamedryan)\
**Post date:** [July 25, 2008, 1:45am UTC](https://www.ruby-forum.com/t/ruby-parser-1-0-0-released/123976/6 "2008-07-25T01:45:49Z")

</div>

On Jul 22, 2008, at 16:22 , Roger P. wrote:

> > > base types.  
> > > [BUG] Bus Error  
> > > ruby 1.9.0 (2008-07-23 revision 17865) [i686-darwin9.3.0]
> 
> – control frame ----------  
> c:0029 p:---- s:0098 b:0098 l:000097 d:000097 CFUNC :method\_missing  
> c:0028 p:---- s:0096 b:0096 l:000095 d:000095 CFUNC :old\_initialize  
> c:0027 p:0029 s:0092 b:0092 l:000091 d:000091 METHOD  
> /Users/rogerpack/dev/ruby\_19\_installed/lib/ruby/gems/1.9.0/gems/  
> ruby\_parser-1.0.0/lib/ruby\_lexer.rb:2617  
> c:0026 p:---- s:0088 b:0088 l:000087 d:000087 FINISH :(null)  
> …

I get a silent failure on 1.9.0-2, but it worked on 1.9.0-1. I’ll look  
into it but would appreciate if you filed a bug.
