Express What, not How.
Vis Mike
visionary25 at _nospam_hotmail.com
Fri Oct 17 15:48:47 EDT 2003
"Luke Gorrie" <luke at bluetail.com> wrote in message
news:lhad81igl6.fsf at dodo.bluetail.com...
> ketil+news at ii.uib.no writes:
>
> > Anonymous functions *can* be more clear than any name. Either because
> > they are short and simple, because it is hard to come up with a good
> > name, and/or becuase they are ambigous.
> >
> > Say I want to attach an index to elements of a list. I could write
> >
> > integers = [1..]
> > attach_index ls = zip integers ls
> >
> > or just
> >
> > attach_index ls = zip [1..] ls
>
> If we're arguing to eliminate names that don't say very much, then
>
> attach_index = zip [1..]
I think dynamic scoping within blocks really trims down on duplication and
make the code easier to read. For example:
employees sort: [ | a b | a date < b date ]
A lot of typing for a simple concept:
employees sort: [ < data ]
I'm not against too much typing to be clear, but rather too much typping
that makes the concept unclear.
-- Mike
> > Whether you want to give an explicit name to the list of integers is
> > not given. If the indexed list is local, it is better to use the
> > definition directly; I don't want to look up the definition of
> > integers (perhaps in a different module) to check whether it is [1..]
> > or [0..].
>
> And for the exact same reason you might like to just write "zip [1..]"
> instead of using a separate "attach_index" function.
>
> Cheers,
> Luke
>
More information about the Python-list
mailing list