What is a Ruby block?

Ruby blocks work under the hood - blocks, procs and lambdas, how yield works, and understand common gotchas when working with blocks and method calls.