Zip makes sense! was: Re: why not "'in' in 'in'"?
James T. Dennis
jadestar at idiom.com
Sun Jun 16 23:50:05 CEST 2002
John Roth <johnroth at ameritech.net> wrote:
> "David LeBlanc" <whisper at oz.net> wrote in message
> news:mailman.1024086417.5966.python-list at python.org...
>> Aaaah, a logger. Obviously the first on his block to be a logger. The
>> of bravely loggin where no one has logged before! ;->
>> Perhaps if he was an english major, or english was his first language,
>> could tell that the common meaning of yield isn't produce. I have no
>> what zip means beyond being a name for a compression utility or a verb
>> meaning to exercise a zipper.
> But that's what it is: exercising a zipper...
> It puts two (or more) sequences together into a single
> sequence, just like a zipper puts the two sides
> together into one.
> John Roth
More over the term "yield" in English has a few distinct senses.
One (slightly archaic) is the imperative to "yield" to a conqueror
or authority as in:
"Yield, Sir knight!"
Another is a similar and common traffic imperative meaning to defer
to the rights-of-way for others (probably the inspiration for the
most common programming semantics associated with 'yield').
Another is to refer to the product of a farm or manufacturing process
as in: the yield of the corn field last year was X bushells.
It is clearly this last sense which inspires Python's use of the
term. The return operator "yields" a result *and* terminates an
execution contect. The yield operator also "yields" a result but
it leaves the production machinery or the "field" available for
future results. That is in keeping with the English semantics
since saying that a field "yielded" a crop doesn't imply that I've
taken out the field (building a shopping mall over it, perhaps).
To say that my field "returned" a profit *could* mean that it
was a "yield" or it could mean that I've sold it off (ROI,
return on investment).
Of course these nuances are not strictly part of the English usage.
The are tendencies in usage since the terms can be used almost
interchangeable in many cases.
More information about the Python-list