4 ms·
> Functions taking more than 3 arguments. Currently PyTypeBuilder.add_function() and related function bindings only support Mojo functions that take up to 3 Pyt
by almostgotcaught 1y ago
> Functions taking more than 3 arguments. Currently PyTypeBuilder.add_function() and related function bindings only support Mojo functions that take up to 3 PythonObject arguments: fn(PythonObject, PythonObject, PythonObject).
Lol wut. For the life of me I cannot fathom what design decision in their cconv/ABI leads to this.
- rybosome 1y agoI was wondering if it is function overloads of the same name, defining it non-variadically: add_function(PythonObject) add_function(PythonObject, PythonObject) add_function(PythonObject, PythonObject, PythonObject) There was a similar pattern in the Guava library years ago, where ImmutableList.of(…) would only support up to 20 arguments because there were 20 different instances of the method for each possible argument count.
- deleted 1y ago[deleted]
- bmacho 1y agoProbably not, since they would surely up it at least 15 arguments, instead of 3. But what else, then?