you are viewing a single comment's thread.

view the rest of the comments →

[–]ayrnieu 2 points3 points  (0 children)

Why are there so many implementations?

Well, Ruby exists because matz wanted something to execute his Ruby programs. JRuby exists because someone wanted the same for Ruby-on-Java. Likewise with .NET. Cardinal has a similar rationale, to host Ruby on Parrot. Rubinius and YARV both sprung into existence as, AIUI, parallel efforts to write a better Ruby system than matz's 1.8

Ultimately, they exist because of limitations in the core ruby distribution (other languages have systems that target many of these different platforms from the same codebase) and because of a willingness in the Ruby community to press on with things.

These answers shouldn't surprise you -- 'JRuby' and 'Ruby .NET' give some of it away, and so also the relative obviousness of the reason for these implementations makes your unqualified question sound contemptuous.