[Python-Dev] PEP 550 v4

Ethan Furman ethan at stoneleaf.us
Fri Aug 25 22:19:32 EDT 2017


All in all, I like it.  Nice job.

On 08/25/2017 03:32 PM, Yury Selivanov wrote:

> A *context variable* is an object representing a value in the
> execution context.  A new context variable is created by calling
> the ``new_context_var()`` function.  A context variable object has
> two methods:
>
> * ``lookup()``: returns the value of the variable in the current
>    execution context;
>
> * ``set()``: sets the value of the variable in the current
>    execution context.

Why "lookup" and not "get" ?  Many APIs use "get" and it's functionality is well understood.


> Conceptually, an *execution context* (EC) is a stack of logical
> contexts.  There is one EC per Python thread.
>
> A *logical context* (LC) is a mapping of context variables to their
> values in that particular LC.

Still don't like the name of "logical context", but we can bike-shed on that later.

--
~Ethan~


More information about the Python-Dev mailing list