I have the following snipet of Groovy code
class Test
{
// @groovy.transform.CompileStatic
static main(args)
{
long start = System.currentTimeMillis()
def x = "3967"
println x ==~ /[0-9]+([1379])$/
println System.currentTimeMillis()-start
}
}
Which is supposed to test weather x is a number ending in 1,3,7,or 9
I'm using the groovy plugin for eclipse, so when i want to run the code I have a few options, I can either run it as a Groovy Script, or as a Java application. Here are the runtimes.
Groovy Script: 93ms
Java Application: 125ms
But then when I enable Static compilation, this happens
Groovy Script: 0ms
Java Application: 312ms
I'm confused,
1. I thought compiling to a Java application was supposed to be faster than running Groovy as a script.
2. Why is it that the Groovy script option gets so much faster with static compilation, and the Java one gets longer?