On Thu, Jul 22, 2010 at 1:51 AM, Bruce Leban <bruce@leapyear.org> wrote:
I'm unconvinced of the value at this point but notwithstanding that let me toss in an alternative syntax:
given: suite do: suite
This executes the two suites in order with any variable bindings created by the first suite being local to the scope of the two suites. I think this is more readable than the trailing clause and is more flexible (you can put multiple statements in the second suite) and avoids the issue with anyone wanting the where clause added to arbitrary expressions.
FWIW, in math it's more common to list givens at the top.
However, writing it that way has even less to offer over ordinary local variables than the postfix given clause. I updated the draft PEP again, pointing out that if a decision had to be made today, the PEP would almost certainly be rejected due to a lack of compelling use cases. The bar for adding a new syntactic construct is pretty high and PEP 3150 currently isn't even close to reaching it (see PEP 343 for the kind of use cases that got the with statement over that bar). Cheers, Nick. -- Nick Coghlan | ncoghlan@gmail.com | Brisbane, Australia