
On Wed, Mar 17, 2021 at 7:33 PM Eric Snow <ericsnowcurrently@gmail.com> wrote:
Finally, is such a "minimal" API worth it? Is the current full "public" API sufficient (and projects like HPy can be the less-constrained, future-oriented adaptations)?
HPy aims to make the details of the implementation underlying the HPy API more opaque (especially hiding the memory layout of PyObject by replacing it with HPy handles, hiding the details of object lifetimes by removing borrowed and stolen references from the API and by not sharing handles).
Since that's already a big project our other goals are things like "make porting to HPy as easy as we can" (one can port the methods of a type one method at a time, for example).
We are trying to drop old ways of doing things where we can, and trimming down the API where possible, but we're also making a conscious effort not to try to fix everything.
Projects like the existing limited API, or a minimal API are potentially useful in providing a smaller target that contains only the "core" or "most needed" or "not changing too much" parts of the API, but in the end I imagine practicality will win out and HPy with grow whatever APIs it needs to make porting existing extensions work.
Hopefully that was some helpful HPy background.
Yours sincerely, Simon Cross