On 8/17/07, Kenneth McDonald <[EMAIL PROTECTED]> wrote: > > > 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.
For sure that optional typing is a great thing. The absence of static typing in Ruby is probably the main reason while I would never drop Java for Ruby or JRuby totally. I still fill you can't engineer very large software frameworks across large teams such without readable static rules. There are indeed a few "entreprise" situation where JRuby would probably be a bad choice. No sure if Ruby could evolve and admit optional static types. Still, having Java is a good Ruby workaround for that. I think I would generally decide some strategic Java interfaces between large frameworks that could eventually be partially implemented in JRuby under the cover. Still, IMHO, the only thing is that those few Groovy extra features don't make it a viable language form in the existing language eco-system. I feel that JRuby, by barely bridging two large communities is way more viable than re-inventing a yet one more scripting language (even how good it might be) just because you didn't have enough with Jython or Beanshell. Two years ago, I would probably have chosen Groovy and BeanShell earlier. But I think Rails came out, made such a great step forward for Ruby and launched the whole JRuby rise. So the situation is just different now: pure Java is getting closures too on one side and JRuby starts to compete feature per feature with Groovy on the other side: the Grovvy justification is getting smaller. And I don't think JRuby is a too specific move to be anything so risky. More simply, Groovy does have strengths, some significant, that JRuby lacks. > > However, last I heard, Groovy was really quite absurdly slow in places, > and though it's hard to be sure, I suspect Raphaël's contention that > Groovy's active user/dev community is quite small is correct. JRuby's > development has been phenomenal, and (to me at least), it seems clear > that the JRuby team is very, very sharp. My point is not about comparing the JRuby and Groovy communities but rather the Ruby vs the Groovy communties. Really JRuby lets you do 99% of what people do in pure Ruby so there is no need to be a JRuby happy few to bring a positive feedback to JRuby, that's actually my whole point. Compare this with Groovy frameworks like Gorm for instance, only Groovy guys participate to it... I just wanted to point out that Groovy does have features that JRuby > doesn't, and that some of those features are quite attractive. The optionnal static typing is surely one of those. Then that's all about the appreciation on how much things weight in the balance. I was making fun about the flame war, don't take it bad, Cheers, Raphaël Valyi.
