rails/rails — pull request #13416 by stephenprater (2013-12-20 02:15:02+00:00)
Title: Object#presence should take a block

In order to have parallel behavior with methods like #each, presence should
yield to a provided block if the object is present. This is
similar to an anaphoric if in Scheme, and is discussed at length here:

https://github.com/raganwald/homoiconic/blob/master/2012/05/anaphora.m

You can achieve similar functionality by appending `try` in its block
form to a presence call - but having presence evaluate the block itself
avoids the (confusing) call to try.