
2018-08-02 1:18 GMT+02:00 Eric Snow <ericsnowcurrently@gmail.com>:
The "core" config is basically the config for the runtime. In fact, PEP 432 renamed "core" to "runtime". Please keep the firm distinction between the runtime and the (main) interpreter.
There is already something called _PyRuntime but it's shared between all interpreters. _PyCoreConfig is already *per* interpreter. Would you mind to elaborate what you mean by the "main interpreter"? I don't see anything obvious in the current code about what is a "main interpreter". Technically, I don't see anything like that. I'm still not convinced that we need _PyMainInterpreterConfig: _PyCoreConfig contains the same information. Is it really worth it to duplicate all _PyCoreConfig (more than 36 fields) in _PyMainInterpreterConfig? _PyMainInterpreterConfig adds a third copy of many paramters: another opportunity to introduce an inconsistency. Right now, an interpreter contains both: core and main configurations... I propose to *remove* _PyMainInterpreterConfig and rename _PyCoreConfig as _PyInterpreterConfig. I would also propose to merge again Py_Initialize() to have a single step instead of the current core step + main step: 2 steps. Victor