Skip to content

dev call 20230302

Du Toit Spies edited this page Mar 2, 2023 · 4 revisions

Dev Call: 2 March 2023

Present

Tim, Florian, Antonio, Simon, Petr V., Du Toit, Mohaned

Agenda

Still working on the release 0.9.

Language Summit Proposal

  • Petr suggests to have a short HPy intro as well since not everyone will know it.
  • Tim points out that we should mentioned/compare/involve Mark's new C API proposal
  • Simon thinks that concentrating too much on Mark's proposal could
  • Tim: in contrast to Mark's C API, HPy also addresses the problem that the C API is very tangled with CPython implementation.
  • Simon argues, the Microsoft team (which tries improve interpreter performance) would have an easier life if HPy would already be the default.
  • Simon points out that if CPython ignores HPy, it will be dead in the water.
  • Petr thinks that it will be very hard that CPython core devs commit to something concerning HPy (since also a lot of the devs do not really care about the C API); but he thinks that HPy is still in a good position.
  • Simon asks: do CPython core devs share the same frustration concerning the C API?
    • Petr answers: frustrations are the same among core devs and a few (including Petr) are convinced that HPy (or an approach like this) is the way to go.
  • Our (HPy team) intention of the language summit talk is to get information about steps forward.
  • Petr doesn't think that a PEP would really help.
  • We could aim to get a statement like: "Everyone interested in the C API should support HPy"
  • Florian will prepare some numbers for Numpy/HPy game of life for PyCon US

Vectorcall PR

  • See also discussion on PR 309
  • Let's go for vectorcall calling convention (i.e. C function signature HPy (*fun)(HPyContext *ctx, const HPy *args, HPy_ssize_t nargs, HPy kwnames)) as primary calling mechanism and convention (also change HPyFunc_keywords to that).
  • We should provide some helpers for easy migration from tp_call. This could be some macro that generates a trampoline or just some helper functions that do conversion to the different calling convention.
  • We can start without the flag HPy_VECTORCALL_ARGUMENTS_OFFSET and maybe add it later if it turns out to be useful.

Misc

  • Du Toit is preparing work for internship at Oracle and writing up proposals for his Masters degree. Currently doing background research on potential topics like Cython or CPython's subinterpreters. The current state of the HPy Cython port was discussed, as well as some basics on subinterpreters.
Clone this wiki locally