Ecco una discussione interessante del principio di corrispondenza di Tennent e una breve descrizione da Neal Gafter :
The principle dictates that an expression or statement, when wrapped in a closure and then immediately invoked, ought to have the same meaning as it did before being wrapped in a closure. Any change in semantics when wrapping code in a closure is likely a flaw in the language.
La lingua Groovy segue questo principio?