If I'm going to make a leap from Java to another language (a
significant undertaking for most organizations) on the JVM, then I'd
opt for Scala over Groovy as Scala provides for more conceptual
breadth and bang for the buck.

The compile-time static typed languages, such as Scala and Go, foster
much of the benefit found in the dynamically typed languages, such as
Groovy. Type inference, when done right, can greatly lower code
clutter. Groovy++ just muddy's the water. It will tend to foster a
split in Groovy such that some code will only ever work in the dynamic
typed scripting language version. Also, I'd rather have features like
code completion available all the time. As soon as you shift into
regular Groovy, you're back to type ambiguity land. (The compile-time
static typed language Go is so fast to compile and link that it's an
even better "scripting" language than dynamic typed Groovy scripting
language. The code and test-it cycle goes way faster with Go.)

If I really want to wallow in something that's a radical departure
from the static type languages of the ilk of Java or even Scala, then
I'd opt to just dive into Clojure - as opposed to Groovy. Once again
Clojure offers a great deal more conceptual breadth and bang for the
buck.

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to