On Sun, 2012-07-22 at 23:06 +0100, Kevin Wright wrote:
> The story sounds familiar except for the part about Dick of course, because
> I experienced it with a different language :)
> 
> A much better "plain old" object type, improved collections, and a decent
> concurrency library will go a long way to making *any* language more
> pleasant than Java.  I even looked at Groovy myself, a few years back, for
> these very reasons.
> 
> What ultimately turned me off was the performance hit and the dynamic
> typing (that, and the existence of Scala).  What has your experience been
> with these in Groovy?

I have no intention of trying to convert static type folks to dynamic
languages, there is no point, both sorts of languages are good when the
languages are good. As to when to use each sort of language, that is a
moot point.

What I wanted to point out about Groovy is that Groovy 2 has taken
forays into:

1. Static typing using the @TypeChecked AST transform.

2. Static compilation with the @Compile Static AST transform.

Whilst there is still some work to be done to make it brilliant, it is
already very good.  This means I can write Groovy code and get Java
performance – by judicious application of appropriate transforms on a
basically dynamically typed system.

Groovy is thus no longer just a dynamically typed, dynamically bound
language, it is a mix of static and dynamic. Whether this makes is an
warty ugly hybrid or an indication of future languages on the JVM is
definitely a moot point. Personally I think Groovy is evolving to be the
mainstream JVM language, but no doubt I will be seen as biased. Which is
fair enough.

As for concurrency GPars builds on java.util.concurrent to provide
actors, dataflow, CSP, agents, STM, etc.

As for UI, Groovy is going strong. With Swing giving way to JavaFX,
SwingBuilder gives way to GroovyFX.  I think it was right for JavaFX2 to
be a Java API and not mandate a specific declarative language for
describing UIs. GroovyFX neatly fills the gap for people who prefer
something with less overhead than Java programming. 

No matter what else happens with Java, Scala, JRuby, Clojure, Kotlin,
Ceylon, Fantom, etc. I suspect Groovy will be a large part of the JVM
milieu for a long time yet. 
-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.win...@ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: rus...@winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to