Skip to content
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

Add support for WASM #16

Open
icexin opened this issue Oct 26, 2020 · 6 comments
Open

Add support for WASM #16

icexin opened this issue Oct 26, 2020 · 6 comments
Labels
enhancement New feature or request

Comments

@icexin
Copy link
Owner

icexin commented Oct 26, 2020

Add support for WASM, it is best to support the WASI standard, so as to support programs written in c or c++ as user programs. In addition, need to add documentation on how to compile c/c++ to wasm.

@icexin icexin added the enhancement New feature or request label Oct 26, 2020
@gedw99
Copy link

gedw99 commented Aug 15, 2021

If you can also support golang code cross compiled with tinygo that would be awesome .

mother wasm runners tend not to support tinygo , and instead only support rust and c

@icexin
Copy link
Owner Author

icexin commented Aug 15, 2021

@gedw99 Thanks for your suggestion. May be you can try gasm to run wasm file compiled by tinygo.

For how to use eggos to write bare metal programs, you can refer to this article https://icexin.com/post/running-go-application-on-bare-metal/. If you encounter any errors, please feel free to submit an issue.

Hope it helps.

@gedw99
Copy link

gedw99 commented Aug 16, 2021

It looks, unfortunately, that Haan is a dead project. Maintainer says this here: tetratelabs/wazero#25

I really just wanted to make sure that whatever wasm VM runner you use that it supports wasm compiled from golang.

suborbital is a good wasm vm runner but it does not support wasm compiled from golang last time I checked. It supports rust .

https://github.com/suborbital

@prologic
Copy link

It may still be good enough to embed in eggos though as it looks like a fairly complete and minimal WASM VM.

@icexin
Copy link
Owner Author

icexin commented Aug 16, 2021

suborbital uses wasmer-go as the virtual machine of wasm, which uses cgo. Unfortunately, eggos currently does not support cgo packages.

@gedw99
Copy link

gedw99 commented Sep 8, 2021

@icexin I am using suborbital - https://github.com/suborbital

It has been stable and the support is excellent. Tinygo has been confirmed that it will be supported. Its just taking a while due to some hold ups in wasm-go.

So i think its an excellent choice.

It works well with NATS also.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants