A proc is just a way to make a bit of code (a block) reusable instead of having to rewrite it every time. It also transforms your block into an object, which is more useful in a language where almost everything is object.