[Python-Dev] PEP 289 - Generator Expressions - Let's Move For ward

Tim Peters tim.one at comcast.net
Tue May 4 17:53:47 EDT 2004


[Jeremy]
>> We are in rather dire need of docs and a revised PEP.

[Anthony]
> Indeed. The timeframe we came up with at PyCon had the
> generator expressions being landed "in the first week of
> May". At the moment the discussion seems to be spinning
> wheels -- it looks (to me) like there's not even 100%
> agreement from everyone that they should even go into
> 2.4 at all.

Well, only one opinion really counts, and the discussion has more the feel
of whining at a wake about the deceased's bad qualities <wink>.

Alas, the PEP is indeed out of date, and I can't remember exactly which set
of gimmicks Guido favored.  The PEP currently says early-binding is the
rule, but I *think* Guido favored mostly-late binding -- which is late
binding, except that the iterable in the leftmost for-clause is evaluated at
once.  So

    ... (e1 for stuff in e2 for morestuff in e3 ...) ...

is effectively replaced by

    def __g(primary):
        for stuff in primary:
           for morestuff in e3:
              ...
                 yield e1

    ... __g(e2) ...


> I'm not fussed if we slip a week or two here, but if
> it slips another 6 weeks, say, then the release time
> line could be in some trouble.

Is anyone working (or willing to work) on the PEP, implementation, and docs
now?  I can't make time for it, but if I could I think the semantic issues
are settled (in Guido's mind, and possibly in some email of his I can't find
now).




More information about the Python-Dev mailing list