[GR-Jug] [J2EE or PHP]

Kyle Adams kadams at gfs.com
Fri May 26 14:20:26 EDT 2006


Groovy: Groovy seems like re-inventing the wheel to me, especially when
we already have mature (which Groovy is not) scripting languages like
BeanShell and Javascript (Rhino).  The disclaimer is that I've never
used Groovy, but many of the people I've talked to have expressed
serious reservations about it.

The feeling I got was that a bunch of people jumped on the bandwagon at
the beginning, they implemented some whiz-bang features, but no one
bothered creating a solid core.  Consequently work slowed to a crawl as
the whiz-bang aspect faded because no one wanted to take on the
boring-but-necessary parts of creating a language.  Does anyone know
what the current state of the Groovy project is?  Is there still a
healthy amount of activity and progress towards a final 1.0?

I know that Dave Brondsema did an evaluation of various scripting
languages in the Java world awhile back, so I'd be curious to hear his
perspective...

One final word: I'm much more skeptical about running scripting
languages inside the JVM.  Problems: the overhead of the JVM (primarily
memory), lagtime behind the "real" scripting language, minor deviations
in functionality, etc.  I see scripting in the JVM as a nice tool in the
box for existing Java apps, but not as a replacement for the native
scripting environments.  If I'm writing a Rails app, it's going to be
running in native Ruby served up via WebBrick or FastCGI.  I don't want
the headache of dealing with "well I found instructions for doing it
this way, but JRuby hasn't implemented that yet [or: it works
differently]."  I have enough of that stuff running a Mac (both with PC
and Linux software) :-)

If I'm evaluating what language to use at the beginning of a project,
I'm still going to lean towards scripting languages outside of the JVM
for lighterweight work.  The primary practical use of scripting within
the JVM (as I see it) is in providing easy extension points for app
functionality.  Example: using Python scripting to extend the
functionality of WinCVS.

Kyle

_____

Kyle Adams | Java Developer  |  Gordon Food Service  |  616-717-6162


More information about the Jug mailing list