Closures in Java 7

There's an ongoing proposal to introduce closures in Java 7. It will still be a long way until this paradigm is consistently used throughout Java libraries, and it will probably never be used like it's used in Smalltalk. However, it's definitely a step in the right direction. I hope this will be accepted for Java 7.

PS: I'm not so happy with some of its syntax yet, which is full of type information, curly braces and everything, and which tends to confuse me.

The currying example for instance, from Zdeněk Troníček's "Advanced features" tutorial, is still a bit hard on my eyes:

{ int, int => int } plus = { int x, int y => x + y };
{ int => { int => int } } anotherPlus = { int x => { int y => x + y } };
int threePlusFour = anotherPlus.invoke(3).invoke(4);

Update: In the comments, Ricky Clarkson hinted at the Scala language, which already has closure support without all the type clutter on top of the JVM. His recent blog post on the topic of closures includes a nice demonstration. Thanks for the hint! :-)

Update 2014: Six years later, Java has closures!