|
|
|
|
|
by chubot
1334 days ago
|
|
The problem is evolving the interpreter in a way that doesn't break bazillions of third party bindings -- Win32, OpenGL, Fortran for NumPy/Pandas, databases, GPUs, every C and C++ library ever, etc. Python's C API exposes ref counting and the GIL. It's also very large JS doesn't have that problem -- more code is written in pure JS, there are no C/C++ bindings in the browser. There are C/C++ bindings in node.js for v8, but as far as I know they are discouraged and not used very much. The bindings are more "first party" in node.js than third party. They have issues, but not the same ones as CPython, because the API is very different JS VMs must be re-entrant because they're embedded in browsers. That was never the case for CPython |
|
Fwiw, this a fully stable and well documented API. It’s not even v8 exclusive, Bun cloned it for WebKit.
https://nodejs.org/api/n-api.html