I disagree with the statement that groovy is harder to develop outside of the IDE. I did some serious python and groovy development and some rubies, mostly without an IDE.
While there is no pdb style debugger, there is a console: groovysh is a console without a GUI, a command line application and groovyConsole is a graphical interface with simple syntax highlighting and editing. TDD's rails and concepts emphasize development with tests, not debuggers, and I find that I rarely, if ever, feel the need to use a full-featured debugger if I have good testing coverage. It doesn't matter if it is up to you on your own developmental style.
Groovy simplifies the whole jar / classpath mess. Although you can still set the class path if you want, it's much easier to let groovy manage it completely. groovy automatically includes banks in $GROOVY_HOME/lib and ~/.groovy/lib in the classpath. Installing a library simply copies it there. Better than with @Grab , you can declare your dependencies at the top of your script, and groovy will automatically download the version you specify and recursively retrieve all your dependencies and configure the correct class path and Class Loaders; he can even manage two libraries that depend on different versions of the same bank. Rakes also have declarative dependencies.
The groovy language itself is as concise and flexible as ruby ββor python. Although you can write it as full-blown Java, groovy can be written to look very similar to ruby.
One valid complaint against groovy vs python and ruby ββis that the JVM startup time is still noticeably worse.
source share