On 7/2/2020 11:36 AM, Stefan Behnel wrote:
Victor Stinner schrieb am 02.07.20 um 00:07:
Le mer. 1 juil. 2020 à 23:43, Eric V. Smith a écrit :
On 7/1/2020 3:43 PM, Stefan Behnel wrote:
Petr Viktorin schrieb am 30.06.20 um 14:51:
For example, could we only deprecate the bad parts, but not remove them until the experiments actually show that they are preventing a beneficial change?
Big nod on this one.
At one of the core sprints (maybe at Microsoft?) there was talk of adding a new API without changing the existing one.
There is the https://github.com/pyhandle/hpy project which is implemented on top of the existing C API.
But this project doesn't solve problems listed in PEP 620, since CPython must continue to support existing C extensions.
Maybe I'm missing something here, but how is "removing parts of the C-API" the same as "supporting existing C extensions" ? It seems to me that both are straight opposites.
Agreed. I thought the discussion was "in CPython, leave the existing C-API alone, but experiment with new APIs, and then maybe someday deprecate the existing C-API". I could see conditionally disabling the existing C-API if doing so was needed to do something like experimenting with remove reference counting. But for the foreseeable future, we'd ship with the existing C-API until we'd determined a significant benefit to dropping it.