Curious if Deno's adoption of the N-API ABI interfaces could make a Deno mode practical? #195
Replies: 1 comment 4 replies
-
Good question. Here are my thoughts based on the facts till now (Oct, 2022) for your reference. Javet doesn't fully rely on the so-called ABI to interact with libnode. Instead, Javet directly references a few source files from both V8 and Node.js to get some advanced features. So, I hold concern on this embedding ABI alignment. The additional work might be beyond the imagination. For now, I wouldn't consider Deno as its performance is way below the public expectation. Also, the major Javet users use it in multi-tenancy applications where non-technical tenant users are allowed to execute custom scripts. I believe one of the crucial facts is those users will never understand Static Typing which means Deno mode is useless. By the way, Google is not friendly to new projects like Javet. Duckduckgo does the work in a better way. Stackoverflow treats me in a hostile way, so I won't answer any questions there. Actually, Github search seems to be the best. |
Beta Was this translation helpful? Give feedback.
-
Somehow google never showed me this project when I tied searching for Java <-> Node.js, I had started working on using the new Project Panama preview (w/jextract) to bind to the early example libnode package. I kind of wanted to go the route of Deno, but at the time it didn't have a ABI, and that would have been too much work.
So I've been following the PRs in Node and Deno on the ABI and embedding APIs and it sounds like the intention is for both to use the same ABI for interaction, and the ABI embedding API to be separate but still standardized such that there's limited differences between runtimes.
So I'm curious if once the embedding ABI APIs land in both, if this project is structured such that additional runtimes could be added without too much additional work?
Beta Was this translation helpful? Give feedback.
All reactions