Our team introduced Groovy into the main sales quoting system used at the 
company I work for. The framework itself is mostly in Java, but in all places 
we support Groovy as a first-class choice (joint compilation mode) and allow 
developers to pick either language based on preference and appropriate tool. We 
use Groovy almost exclusively in the static compile mode, for performance 
reasons. The code implementing the REST APIs and consuming SOAP and REST APIs 
are the places where we use dynamic Groovy, because dynamic Groovy works so 
much better in webservices. To be honest though, since Java 8, we have been 
using Groovy less because the streams API gives us something close to one of 
the main benefits we got from Groovy (through findAll, collect, take, etc.). 
Now Groovy is mostly syntax sugar for us with Java 8+ lambdas around. Java 
performs better, debugs better, compiles faster, works better with hotswapping 
than Groovy does, so we tend to favor Java now unless we really itch for Groovy 
features in a file. In our main project we have over 1100 .groovy source files. 
We have one other project mostly using Groovy, and a few others using Groovy in 
a lesser manner. And we use Groovy extensively in any utility/script/one-off 
type scenario (i.e. if I need to write a script to do some JMX operations or 
parse log files or script some SSH operations, etc.). We are still using Groovy 
2.4 but I am very curious to see if Groovy 3 and/or indy on modern JVM will 
help considerably with the performance reason to prefer Java. In particular we 
use a very high amount of closures, which still have a penalty to coerce into 
functional interfaces even in static groovy 2.4 and in GroovyObject 
constructor, but supposedly in Groovy 3 this might be better as I hear closures 
can be replaced with lambdas. Also besides the performance, lambdas fare much 
better for hotswap than Closures (Groovy will "renumber" all of the Closures if 
you add one, which destroys hotswap).

Jason


Sensitivity: Internal

-----Original Message-----
From: MG <mg...@arscreat.com> 
Sent: Friday, June 26, 2020 6:24 PM
To: users@groovy.apache.org
Subject: What projects use Groovy as its main development language ?

A quick survey: Who on this mailing list works on or knows of a project where 
Groovy is the main language of development, i.e. it is not used as "just" a 
script or DSL language in addition to e.g. Java ?
If possible name the company/country/project and give some impression of the 
size of the project (lines of code, # of people working on it, etc), timeframe 
of development, and whether it is os or commercial (or both) G-)

Thanks in advance,
cheers,
mg


Reply via email to