Jrg W Mittag wrote:
> But only 3 of those (MRI, YARV and JRuby) actually fully implement
> Ruby. (And actually, JRuby does not implement continuations, so
> technically it's not a full Ruby Implementation either.)

Well, according to the earliest drafts of the Ruby standard, 
continuations are not part of "core Ruby" :)

But yes, this is one area we've opted not to be compatible in exchange 
for performance. We could implement continuations, but we'd be several 
times slower as a result.

> I agree. That's why I am quite positively surprised, that the Blue
> Ruby project actually *runs* the RubySpec suite and publishes the
> numbers. Given that Blue Ruby is a proprietary corporate project that
> has been developed behind closed doors without any interaction with
> the larger Ruby and Ruby implementers community, I'm quite pleased
> with the emphasis on being a first class Ruby citizen, and generally
> doing the right thing wrt. the "Rubyness" of the implementation.
> 
> Running the RubySpecs is unfortunately *not* something that is the
> norm for Ruby Implementations. Some noteable implementations that do
> (or at least did, last time I checked) *not* run the RubySpecs include
> MRI and YARV, for example. Anybody remember MRI 1.8.7?

I agree...I was also impressed that BlueRuby talked first about 
compatibility, and barely mentioned performance in any of their 
postings. That's very impressive.

It's also worth mentioning that though you're right, all the major Ruby 
impls try to run RubySpec in some form, there are those that have a 
different path. Tinyrb would probably only be able to run a subset, and 
can't run any right now (I believe, correct me if I'm wrong). My 
stripped down JRuby for JavaME doesn't run them yet, though I hope to 
identify a subset it can run. And MacRuby didn't run RubySpecs at all 
until recently, but they've started to both run them and update them for 
1.9 behavior.

- Charlie