-
Notifications
You must be signed in to change notification settings - Fork 208
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
boa: create a new DSL to generate JavaScript native extension #174
Comments
Perhaps we could also use |
napi-emscripten seems using Emscripten API to generate the N-API. |
Or we can just compile CPython to |
IMO it works, given that |
But we need to maintain the wasm-backend for boa/lib/*, how do you think about this implementation? |
Maybe we need to maintain the various versions of |
Hmm, wasm-backend is for reducing the maintenance of that works IMHO. |
I have some ideas and don't know if they'll work:
|
I'm -1 on the first one, that's really to implement because the N-API and WASM have some differences especially like Node.js Buffer, and write a DSL to generate extensions for platforms have the same implementation issue. Why not try to maintain both the 2 backends(napi, wasm), that we can cover all possible issues one by one :) |
As we have discussed at #172, to support boa is able to work on multiple platforms includes: N-API, WASM, Rust-based native extension for Deno.
@yjjnls has created a great project: https://github.com/yjjnls/napi-emscripten, which uses emscripten APIs as the DSL to generate N-API-based add-ons.
Boa is heavily based on N-API and it's mainly working for Node.js, therefore we are going to propose creating a N-API based DSL which could generate N-API, WASM, Deno extension and more.
Just feel free to comment anything if something wrong :)
The text was updated successfully, but these errors were encountered: