On 2018-03-03 16:51, Greg Ewing wrote:
2018-03-03 8:40 GMT+01:00 Nick Coghlan <ncogh...@gmail.com>:
   pairs = [(f(y), g(y)) for x in things with bind(h(x)) as y]

I don't mucn like "with bind(h(x)) as y" because it's kind of
like an abstraction inversion -- you're building something
complicated on top of something complicated in order to get
something simple, instead of just having the simple thing
to begin with. If nothing else, it has a huge runtime cost
for the benefit it gives.

Reading this thread I was thinking that the assignment part was happening too far away from where the action was and came up with this variant:

    [ f(y), g(y) for x, y as h(x) in things ]

Plus or minus an extra set of parentheses for clarity.

-Mike
_______________________________________________
Python-ideas mailing list
Python-ideas@python.org
https://mail.python.org/mailman/listinfo/python-ideas
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to