Classical FP problem in python : Hamming problem
Bengt Richter
bokr at oz.net
Tue Jan 25 23:44:43 EST 2005
On Tue, 25 Jan 2005 11:46:04 -0800, Jeff Shannon <jeff at ccvcorp.com> wrote:
>Bengt Richter wrote:
>
>> On 25 Jan 2005 08:30:03 GMT, Nick Craig-Wood <nick at craig-wood.com> wrote:
>>
>>>If you are after readability, you might prefer this...
>>>
>>>def hamming():
>>> def _hamming():
>>> yield 1
>>> for n in imerge(imap(lambda h: 2*h, iter(hamming2)),
>>> imerge(imap(lambda h: 3*h, iter(hamming3)),
>>> imap(lambda h: 5*h, iter(hamming5)))):
>>> yield n
>>> hamming2, hamming3, hamming5, result = tee(_hamming(), 4)
>>> return result
>>
>> Are the long words really that helpful?
>>
>> def hamming():
>> def _hamming():
>> yield 1
>> for n in imerge(imap(lambda h: 2*h, iter(hg2)),
>> imerge(imap(lambda h: 3*h, iter(hg3)),
>> imap(lambda h: 5*h, iter(hg5)))):
>> yield n
>> hg2, hg3, hg5, result = tee(_hamming(), 4) # four hamming generators
>> return result
>
>Well, judging by the fact that shortening the identifiers made it so
>that you felt the need to add a comment indicating what they were
>identifying, I'd say that yes, the long words *are* helpful. ;)
>Comments are good, but self-documenting code is even better.
The comment was a conscious factoring decision, in terms of documentation ;-)
Regards,
Bengt Richter
More information about the Python-list
mailing list