How do Clang 'blocks' work?
http://clang.llvm.org/docs/BlockLanguageSpec.txt Looks really cool. However, I don't understand it. I don't see examples it. I don't see examples of ideas hard to express in C++ as is, but trivial to express in blocks. Can anyone enlighten me on this? Blocks are, essentially, a way to pass code and scope around as data. They're known in some other languages as closures and anonymous functions. Here's an article with more details and code examples. NanoTech already linked to an explanation of blocks. As for how this relates to C++ let me state my personal opinion: This extension is not useful