http://clang.llvm.org/docs/BlockLanguageSpec.txt
Looks really cool.
However,
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.