On 10 October 2017 at 22:34, Koos Zevenhoven <k7hoven@gmail.com> wrote:
Really, it was my mistake to ever make you think that context_var.assign(42).__enter__() can be compared to .set(42) in PEP 550. I'll say it once more: PEP 555 context arguments have no equivalent of the PEP-550 .set(..).

Then your alternate PEP can't work, since it won't be useful to extension modules.

Context managers are merely syntactic sugar for try/finally statements, so you can't wave your hands and say a context manager is the only supported API: you *have* to break the semantics down and explain what the try/finally equivalent looks like.


Nick Coghlan   |   ncoghlan@gmail.com   |   Brisbane, Australia