# Ever heared of XRuby before?

**URL:** <https://www.ruby-forum.com/t/ever-heared-of-xruby-before/153578>\
**Category:** Ruby\
**Created:** [November 19, 2008, 12:14am UTC](https://www.ruby-forum.com/t/ever-heared-of-xruby-before/153578 "2008-11-19T00:14:13Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![flatekmonkey](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/e8c25b/32.png) [@flatekmonkey](https://www.ruby-forum.com/u/flatekmonkey)\
**Post date:** [November 19, 2008, 12:14am UTC](https://www.ruby-forum.com/t/ever-heared-of-xruby-before/153578/1 "2008-11-19T00:14:13Z")

</div>

Hi all,

I just stumbled above XRuby [http://xruby.com/default.aspx](http://xruby.com/default.aspx).  
I played around a little with quite some metaprogramming tricks, but I  
could not make it fail.  
I was quite surprised, to find a working? Ruby implementation I have  
never heard of before.  
Any thoughts, pointers, reviews would be appreciated.

Cheers  
Robert

–  
Ne baisse jamais la tête, tu ne verrais plus les étoiles.

Robert D. 😉

---

<div class="post-metadata">

**Author:** ![flatekmonkey](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/e8c25b/32.png) [@flatekmonkey](https://www.ruby-forum.com/u/flatekmonkey)\
**Post date:** [November 19, 2008, 3:05am UTC](https://www.ruby-forum.com/t/ever-heared-of-xruby-before/153578/2 "2008-11-19T03:05:33Z")

</div>

- Robert D. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) [2008-11-19 08:10:11 +0900]:

> Hi all,
> 
> I just stumbled above XRuby [xruby.com](http://xruby.com/default.aspx).  
> I played around a little with quite some metaprogramming tricks, but I  
> could not make it fail.  
> I was quite surprised, to find a working? Ruby implementation I have  
> never heard of before.  
> Any thoughts, pointers, reviews would be appreciated.

XRuby was started by yawl and continued by dreamhead at about the same  
time JRuby created, but JRuby had only an interpreter then (I think)  
when XRuby released its ruby to java bytecode compiler.

Then Sun and ThoughtWorks came. With Sun’s support JRuby  
became more and more usable and popluar; After dreamhead join  
ThoughtWorks the development of XRuby nearly stopped, as you can see on  
[http://code.google.com/p/xruby/source/list](http://code.google.com/p/xruby/source/list)

– Jan

---

<div class="post-metadata">

**Author:** ![flatekmonkey](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/e8c25b/32.png) [@flatekmonkey](https://www.ruby-forum.com/u/flatekmonkey)\
**Post date:** [November 19, 2008, 7:32am UTC](https://www.ruby-forum.com/t/ever-heared-of-xruby-before/153578/3 "2008-11-19T07:32:53Z")

</div>

Xie H. wrote:

> XRuby was started by yawl and continued by dreamhead at about the same  
> time JRuby created, but JRuby had only an interpreter then (I think) when XRuby released its ruby to java bytecode compiler.

This is basically true. JRuby’s compiler was not actually completed and  
released until 2008, though some experimentation had happened earlier. I  
spoke with XRuby guys frequently in 2006 and 2007, and we generally  
agreed that while XRuby had already a much better compiler, JRuby’s  
runtime and core classes were further along. As a result of JRuby’s core  
classes being more “correct”, we were able to run Rails in 2006, which  
is largely why Sun and Thoughtworks became so interested in JRuby during  
late 2006 and early 2007.

I still believe XRuby has something valuable the community could really  
use: perhaps the closest-to-correct Antlr grammar for Ruby yet created.  
I’d love for others to take it over and bring it to completion.

- Charlie

---

<div class="post-metadata">

**Author:** ![flatekmonkey](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/e8c25b/32.png) [@flatekmonkey](https://www.ruby-forum.com/u/flatekmonkey)\
**Post date:** [November 19, 2008, 6:43pm UTC](https://www.ruby-forum.com/t/ever-heared-of-xruby-before/153578/4 "2008-11-19T18:43:52Z")

</div>

Robert D. wrote:

> Thanx folks I was really impressed by the performance of XRuby.  
> By looking at the Hacking guide it seems like  
> an MRI Ruby running on Java instead of C. Big difference would be that  
> there is not an AST to be interpreted but a Java program that is  
> compiled from Ruby and which implements the dynamic features of Ruby  
> as an interpreter. Right?

XRuby is really far behind in supporting all of the more unusual  
features of Ruby, and with JRuby’s compiler I believe we’re faster on  
almost all the usual cases now. JRuby also has an ahead-of-time  
compiler, so you can just create .class files to ship.

Also, XRuby does nothing to integrate with Java at present, where JRuby  
provides pretty solid 2-way integration. I’m sure there’s more we can  
learn from XRuby codebase, but most of the main features are already  
superceded by JRuby.

Perhaps we need a JRuby hacking guide? It’s not very difficult to  
follow.

- Charlie

---

<div class="post-metadata">

**Author:** ![flatekmonkey](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/f/e8c25b/32.png) [@flatekmonkey](https://www.ruby-forum.com/u/flatekmonkey)\
**Post date:** [November 19, 2008, 5:35pm UTC](https://www.ruby-forum.com/t/ever-heared-of-xruby-before/153578/5 "2008-11-19T17:35:44Z")

</div>

On Wed, Nov 19, 2008 at 7:28 AM, Charles Oliver N.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> core classes were further along. As a result of JRuby’s core classes being  
> more “correct”, we were able to run Rails in 2006, which is largely why Sun  
> and Thoughtworks became so interested in JRuby during late 2006 and early  
> 2007.
> 
> I still believe XRuby has something valuable the community could really use:  
> perhaps the closest-to-correct Antlr grammar for Ruby yet created. I’d love  
> for others to take it over and bring it to completion.

Thanx folks I was really impressed by the performance of XRuby.  
By looking at the Hacking guide it seems like  
an MRI Ruby running on Java instead of C. Big difference would be that  
there is not an AST to be interpreted but a Java program that is  
compiled from Ruby and which implements the dynamic features of Ruby  
as an interpreter. Right?  
Cheers  
Robert

–  
Ne baisse jamais la tête, tu ne verrais plus les étoiles.

Robert D. 😉
