On Jul 10, 2007, at 2:28 PM, dblack / wobblini.net wrote:
> Explaining block.yield, though, would be impossible.  What does it
> yield?  Nothing.  What does it yield *to*?  It doesn't.  It's just a
> word that used to have a different meaning and is now a synonym for
> "call", even though "yield" and "call" have almost opposite semantics.

I think of 'yield' as short for 'yield control'.  The second definition
of 'yield' in the Oxford dictionary includes 'to relinquish possession
of something'.  The first definition is 'produce or provide'.

Ruby's 'yield' does both, it relinquishes control to the implicit block
and returns the reference that is produced by that block.

Gary Wright