[Python-ideas] PEP 4XX: Adding sys.implementation
Chris Rebert
pyideas at rebertia.com
Sat Apr 28 08:22:25 CEST 2012
On Fri, Apr 27, 2012 at 11:06 PM, Eric Snow <ericsnowcurrently at gmail.com> wrote:
<snip>
> Proposal
> ========
>
> We will add ``sys.implementation``, in the ``sys`` module, as a namespace
> to contain implementation-specific information.
>
> The contents of this namespace will remain fixed during interpreter
> execution and through the course of an implementation version. This
> ensures behaviors don't change between versions which depend on variables
> in ``sys.implementation``.
>
> ``sys.implementation`` will be a dictionary, as opposed to any form of
> "named" tuple (a la ``sys.version_info``). This is partly because it
> doesn't have meaning as a sequence, and partly because it's a potentially
> more variable data structure.
<snip>
> Open Issues
> ===========
>
> * What are the long-term objectives for ``sys.implementation``?
>
> - possibly pull in implementation details from the main ``sys`` namespace
> and elsewhere (PEP 3137 lite).
>
> * Alternatives to the approach dictated by this PEP?
>
> * ``sys.implementation`` as a proper namespace rather than a dict. It
> would be it's own module or an instance of a concrete class.
So, what's the justification for it being a dict rather than an object
with attributes? The PEP merely (sensibly) concludes that it cannot be
considered a sequence.
Relatedly, I find the PEP's use of the term "namespace" in reference
to a dict to be somewhat confusing.
Cheers,
Chris
More information about the Python-ideas
mailing list