By re-writing the AST as a closure expression you are going to add closure semantics to all the variables referenced within the switch. There are a number of differences between variables in a block and variables within a closure.
Is there any idea of how close Java is to finalizing their syntax? The text block feature underwent a complete overhaul that removed the need for Groovy to do much of anything.