Kenneth McDonald wrote:
If you need to do efficient web dev and think Rails is great for that, if you like Ruby as a language to use, if you don't want to take too much risk with a language who has a very small community (Groovy vs Ruby communities). If you want to get rich and save the world from the bloatware attacks :)
I think the above is, while fairly accurate, a little harsh. Groovy was designed with Java in mind, and its semantics offer effectively all of the advantages of Ruby, while integrating with Java much more cleanly. In addition, Groovy offers optional typing, IMHO a major feature that all scripting languages should have. (Basically, you can declare a type on a variable, parameter, etc.; if you do so, those declarations are checked at runtime.) This is a convenient way of enhancing code robustness, potentially allows for such things as operator overloading and more efficient code compilation, and also has significant advantages in terms of increasing code readability. Groovy has also looked at what Ruby arguably 'got wrong' and avoided most of those problems (while introducing a few of its own). So Groovy has strengths.

More simply, Groovy does have strengths, some significant, that JRuby lacks.

Agreed. And we're working to narrow the gap on those strengths. In general, we're trying to decide what people want out of JRuby that it doesn't have today.

Goal #1 was "make it compatible with Ruby 1.8". We've achieved that, modulo a continuous stream of minor bugs and a few impossible features.

Goal #2 has been "make it faster than Ruby 1.8", and the compiler mostly does that, modulo a few areas where the Ruby/JVM disconnect add enough overhead to offset the compiler. But for the most part, we're going to have great perf numbers for 1.1

So what's Goal #3? I'd argue it's making Ruby a better member of the Java platform. That's going to mean, for some cases, that you need to do a little extra work or allow JRuby to turn off some features to allow Ruby to fit well on the JVM. It may mean programming in a subset of Ruby, avoiding the pieces that make integration trickier. But it can happen.

- Charlie

---------------------------------------------------------------------
To unsubscribe from this list please visit:

   http://xircles.codehaus.org/manage_email

Reply via email to