Closures and anonymous blocks are pretty important programming constructs and I hit the lack fast in java, C++, C, and about any other language that's missing them. They are especially useful with asynchronous and eventing stuff. They also make function-taking functions more enjoyable to use and provide choices to do more things without additional syntax. (see: smalltalk and scheme)