uint::range(0, 10) {|x| ... };
mymap.each {|key, val| ...};
A block ({ followed by | or ||) appearing after an expression is (with the same precedence as x.y, x[y], x(), etc) treated as a block value passed to a function. If the expression was a call, the block argument is added as a last argument. If it was a non-call, it becomes a call with a single argument.