-
Notifications
You must be signed in to change notification settings - Fork 30
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
Features roadmap #59
Comments
Ambitious! If we're looking at farther-out features, here are some:
|
I'll add those to the checklist. |
I think "Support basic globals without Julia's runtime" technically already works with #58. I got the globals working before I even figured out how to link to the runtime. The only real problem is that the way I relocate the globals is currently happening inside a julia session, so yeah I think it's kinda covered by the deserialization point and the lower startup time point. Naively, I think actually that cross compilation might not be too bad (famous last words I know). Afterall, GPUCompiler is already doing cross compilation to GPUs. |
Cross-compilation on the same OS is feasible, e.g. Linux to Linux, but cross-compilation across OS's is tricky since people love to do: |
out of curiosity, how hard would WASM compilation be? Just flipping a switch in LLVM or something else? I'd imagine could be straightforward for full static code. Otherwise, we could maybe compile the runtime to wasm- Python does that for the entire interpreter. Or is that better as some sort of plugin system or dependent package? cc: @fonsp |
Yeah, the main issue as far as I understand is that the libjulia runtime is not well supported on WASM. I think LLVM is able to compile to WASM fine from what I understand, but stuff that needs the runtime might be dicey. I'm not an expert at all on this though |
Yea, does seem dicey...on the other hand @Keno got all of Julia to compile to WASM here (with caveats): https://github.com/Keno/julia-wasm and that seems even dicey-er. So maybe it's not as bad as we think (if we just want the slim libjulia and don't need to codegen) and there could be some code or lessons lifted from that effort. |
@rhuffy has been working on compiling libjulia to WASM |
Awesome! How is the progress there? |
Is compiling standalone executable also something that might work with this? We would love to eventually ship the language server as a precompiled binary :) |
Maybe I'm going a little off the deep end here, but is targeting bare-metal (i.e., there is no OS) anything short of infeasible? Particularly in combination with |
Okay, so a lot has changed with version 0.6 (#146) and a lot of stuff on that roadmap is no longer relevant or planned, so I've updated it. The package is now significantly simpler and more streamlined, so hopefully future work on it will be easier. |
The text was updated successfully, but these errors were encountered: