I would like to believe that "break"-as-a-expression solves most of these issues. It is reasonable, though, to drop the "return"-as-an-expression part of the proposal, because you need to know that the comprehension is run in a separate function to understand it (it's a bit ironic that I am dropping the original proposal to defend my own, now...). Consider ((x, y) for x in l1 if f1(x) or break for y in l2 if f2(y) or break) This maps directly to for x in l1: if f1(x) or break: for y in l2: if f2(y) or break: yield x, y which is literally a copy-paste of the second part followed by yielding the first part. I think this reads reasonably well but this is obviously a subjective issue. Antony 2014-11-21 8:49 GMT-08:00 Chris Angelico <rosuav@gmail.com>:
On 11/21/2014 08:22 AM, Andrew Barnert wrote:
Maybe what we need to do is update PEP 3142, gathering all of the
alternative ideas,
and expanding on the rationale, so Guido can reject that, and next time
On Sat, Nov 22, 2014 at 3:36 AM, Ethan Furman <ethan@stoneleaf.us> wrote: this comes
up, everyone will have something to read before having the same arguments about the same proposals?
Are we accepting nominations? I have the perfect fellow in mind. :)
(And in case Chris decides to nominate me in retaliation, I decline. ;)
Heh! Great, I'm going to get a name for writing the PEPs that exist solely to be rejected... I was hoping PEP 479 would be accepted easily, given who was advocating it, but now it's starting to look like I doomed the proposal :)
ChrisA _______________________________________________ Python-ideas mailing list Python-ideas@python.org https://mail.python.org/mailman/listinfo/python-ideas Code of Conduct: http://python.org/psf/codeofconduct/