I plan to embed groovy in my application and use GroovyShell programatically - I will run the same script several times with different parameters.
Does GroovyShell caches the compiled script or does it work only as a stateless interpreter?
I don't think it caches the scripts. Take a look at the code. Unless the comments are wrong, the scripts are not cached. Line 511.