Why wouldn't you want to just put the outer given outside the entire comprehension?retval = [expr(name, x) given name=update(name, x) for x in seq] given name=something
The more I think about it, the more i want to keep "given" in comprehensions, and given in expressions using parentheses when given is supposed to bind to the expression first.