-
-
Notifications
You must be signed in to change notification settings - Fork 63
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
Wasm #192
Comments
Something like that; Yes package on npm includes test, src folders. They are just small files. |
Uh, interesting 🥸 |
lul paullouisageneau/datachannel-wasm#43 (comment) A: hey check out B instead NodeJS and other runtimes have |
bun supports node bindings? idk about deno, wasm is also insanely slower than native bindings, so is there really a point? its actually insanely hard to create bindings for C libraries like this with WASM, I have tried, and it's a lot more work than you'd expect |
@jimmywarting Porting libdatachannel to WASI sounds like a lot of work, if it is even possible, given that the library and its dependencies rely on a lot of POSIX or OS-specific system APIs, in particular for network access and threading. |
yea, WASI is probably the right thing for it... |
I digged into the construction of this, and upon examination, it appears to be utilizing NodeJS bindings. However, I believe there is room for improvement by transitioning this to WebAssembly.
By doing so, not only would it function seamlessly on NodeJS, but it could potentially be executed on Deno, Bun, and various other runtimes as well(?) It would simplify the distribution process, as we could distribute one single pre-compiled WebAssembly file that operates on any runtime or machine, eliminating the need for source code compilation upon installing the package.
While inspecting the source code on npm, I also noticed it includes cmake, src, test, and heck even node_modules (which might have been unintentional?). Consolidating everything into a single WebAssembly file would result in a fully cross-compatible executable and also being easier to install
toughts?
The text was updated successfully, but these errors were encountered: