On 10/10/2016 06:37 PM, Guido van Rossum wrote:
Modified +1: you can't change the behavior of the existing API, but
you can deprecate it and introduce a better one with a different name.
We'll have until Python 4.0 to carry through the deprecation anyways.
And I doubt this is the only C API change needed for happy gil-free
coding...

First, "deprecate" won't work for these semantics for the Gilectomy branch. I simply cannot safely support the semantics of the existing function. All call sites need to change.

Second, consider that every function that returns a borrowed reference--PyDict_GetItem(), PyList_GetItem()--has to change too, to return an actual (non-borrowed) reference. It's going to be a major upheaval in the C API.


For now I'm going to leave the names as-is and just change the semantics everywhere. If this approach really works, and if we decide we want to merge it back into trunk--and those are both still big if's--we can revisit this decision.


I haven't yet ruled out abandoning reference counting completely and going to 100% tracing garbage collecting,


//arry/
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to