> Hello Guido,
>
> I did a quick review of the stdlib, including the tests, to see which list
> comprehensions could be replaced with generator expressions. Thought I admit
> I am biased towards early binding, I ended up looking for cases with the
> following properties: [...]
Even if we switched to early binding, won't these issues still bite you
with mutable values? E.g.:
some_dict = {'x': 1, 'y': 2}
iter1 = (some_dict.get(v, 3) for v in input1)
some_dict['z'] = 5
iter2 = (some_dict.get(v, 7) for v in input2)
It seems like it would be surprising (to me, anyway) if this gave a
different result than:
some_dict = {'x': 1, 'y': 2}
iter1 = (some_dict.get(v, 3) for v in input1)
some_dict = {'x': 1, 'y': 2, 'z': 5}
iter2 = (some_dict.get(v, 7) for v in input2)
-Edward