> On 27 Jan 2020, at 20:23, Greg Ewing <greg.ew...@canterbury.ac.nz> wrote: > > On 27/01/20 6:56 pm, John Skaller2 wrote: >> Felix binds C/C++ code with statements like: >> type PyObject = “PyObject*”; >> fun add: PyObject * PyObject -> PyObject = “Py_AddLong($1)”; >> and can use the bindings like: >> >> var a : PyObject = …. >> var b: PyObject = ... >> var sum = add (a,b); > > How does it deal with reference counting and exception handling?
The Felix binding generates C. So the answer is, the same way as you would in C. However the above is a low level binding, one to one with C. Higher level stuff is possible. Won’t know until the binding is operational. My script is basically working translating the *.pxd files in Cython. (Just the functions, the rest can be done by hand). Basically I can write, say, a concurrent matrix multiplication routine and map it to Python. Of course you can do that in C as well, but Felix is a very high level language so you can do stuff you wouldn’t bother attempting in low level languages like C and C++. — John Skaller skal...@internode.on.net _______________________________________________ cython-devel mailing list cython-devel@python.org https://mail.python.org/mailman/listinfo/cython-devel