map/filter/reduce/lambda opinions and background unscientificmini-survey
tjreedy at udel.edu
Sat Jul 9 02:32:08 CEST 2005
"George Sakkis" <gsakkis at rutgers.edu> wrote in message
news:1120852274.923521.211250 at g43g2000cwa.googlegroups.com...
> "Steven Bethard" <steven.bethard at gmail.com> wrote:
>> Dict comprehensions were recently rejected:
>> The reason, of course, is that dict comprehensions don't gain you much
>> at all over the dict() constructor plus a generator expression, e.g.:
>> dict((i, chr(65+i)) for i in range(4))
> Sure, but the same holds for list comprehensions: list(i*i for i in
> xrange(10)). The difference is historic I guess; list comprehensions
> preceded generator expressions and so they cannot be removed, at least
> not before 3.0. I wonder if they will/should be in the language when
> the constraint of backwards compatibility is lifted.
Guido has asked himself the same question. Some developers who love l.c.s
are sure they will stay. I am not. I think it might depend on whether
they have any real advantages in the context of the 3.0 engine and design,
which don't exist yet.
> IMO they should
> not (TIOOWTDI, uniformity among builtin data structures, not
> overwhelmingly more useful than set or dict comprehensions), but
> there's a long way till that day.
Terry J. Reedy
More information about the Python-list