Si entiendo correctamente, Groovy está tipeado dinámicamente, pero dado que es casi un superconjunto de Java, opcionalmente se puede proporcionar información de tipo estático. Esto podría ser útil si se escribe algo donde solo unas pocas partes son críticas para el rendimiento, al tiempo que se evita la fricción de utilizar varios idiomas. Las anotaciones de tipo solo se pueden proporcionar para las partes críticas de rendimiento.¿El estilo de Java Groovy es tan rápido como Java?
¿Cuál es la penalidad de rendimiento por usar Groovy en lugar de Java en funciones/clases donde se usa el subconjunto tipo Java y se proporcionan anotaciones de tipo estático?
Creo que esta respuesta está desactualizada ahora que '@ CompileStatic' se ha agregado al idioma principal de Groovy. – ArtB