<div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace"><span style="font-family:arial,sans-serif">On Tue, Sep 5, 2017 at 8:24 PM, Yury Selivanov </span><span dir="ltr" style="font-family:arial,sans-serif"><<a href="mailto:yselivanov.ml@gmail.com" target="_blank">yselivanov.ml@gmail.com</a>></span><span style="font-family:arial,sans-serif"> wrote:</span><br></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Tue, Sep 5, 2017 at 9:12 AM, Koos Zevenhoven <<a href="mailto:k7hoven@gmail.com">k7hoven@gmail.com</a>> wrote:<br>
> On Tue, Sep 5, 2017 at 6:53 PM, Yury Selivanov <<a href="mailto:yselivanov.ml@gmail.com">yselivanov.ml@gmail.com</a>><br>
> wrote:<br>
>><br>
>> On Tue, Sep 5, 2017 at 8:35 AM, Koos Zevenhoven <<a href="mailto:k7hoven@gmail.com">k7hoven@gmail.com</a>> wrote:<br>
>> > On Tue, Sep 5, 2017 at 3:49 AM, Nathaniel Smith <<a href="mailto:njs@pobox.com">njs@pobox.com</a>> wrote:<br>
>> [..]<br>
>> >><br>
>> >> I think PEP 550 is sufficient to allow implementing all<br>
>> >> your proposed APIs (and that if it isn't, that's a bug in PEP 550).<br>
>> ><br>
>> ><br>
>> > That's not true either. The LocalContext-based semantics introduces<br>
>> > scope<br>
>> > barriers that affect *all* variables. You might get close by putting<br>
>> > just<br>
>> > one variable in a LogicalContext and then nest them, but PEP 550 does<br>
>> > not<br>
>> > allow this in all cases. With the addition of PEP 521 and some trickery,<br>
>> > it<br>
>> > might.<br>
>><br>
>> I think you have a wrong idea about PEP 550 specification.  I<br>
>> recommend you to reread it carefully, otherwise we can't have a<br>
>> productive discussion here.<br>
>><br>
><br>
> I'm sorry, by LocalContext I meant LogicalContext, and by "nesting" them, I<br>
> meant stacking them. It is in fact nesting in terms of value scopes.<br>
<br>
</span>I don't actually care if you use the latest terminology.  You seem to<br>
have a wrong idea about how PEP 550 really works (and its full<br>
semantics), because things you say here about it don't make any sense.<br></blockquote><div><br></div><div><span style="font-family:monospace,monospace">​In PEP 550, introducing a new LogicalContext on the ExecutionContext affects the scope of <div class="gmail_default" style="font-family:monospace,monospace;display:inline">​any_</div>var.set(value)​ for *<div class="gmail_default" style="font-family:monospace,monospace;display:inline">​any</div>* <div class="gmail_default" style="font-family:monospace,monospace;display:inline">​any_var</div>.<div class="gmail_default" style="font-family:monospace,monospace;display:inline">​ Does that not make sense?​</div></span></div><div><span style="font-family:monospace,monospace"><br></span></div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">–– Koos</div></div><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">+ Koos Zevenhoven + <a href="http://twitter.com/k7hoven" target="_blank">http://twitter.com/k7hoven</a> +</div>
</div></div>