Be MORE defensive!

Blog: http://random8.zenunit.com/
Learn rails: http://sensei.zenunit.com/

On 02/04/2009, at 12:00 AM, Charles Oliver Nutter <charles.nutter / sun.com 
 > wrote:

> 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
>
>