w2c2
wabt
Our great sponsors
w2c2 | wabt | |
---|---|---|
9 | 21 | |
668 | 6,380 | |
- | 2.4% | |
8.6 | 8.7 | |
16 days ago | 18 days ago | |
C | C++ | |
MIT License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
w2c2
-
Build your own WebAssembly Compiler
For AOT, the simplest approach, that actually produces the fastest native code, is to naively translate WASM opcodes to C.
This is for example what W2C2 does: https://github.com/turbolent/w2c2
-
Show HN: RustPython for FreeDOS with W2c2
This uses [w2c2](https://github.com/turbolent/w2c2) to convert RustPython,
- DeviceScript: TypeScript for Tiny IoT Devices
-
Running Rust code on Plan 9 using webassembly
Using a modified version of the w2c2 wasm->C89 translator, I was able to run Rust code on 9front!
-
Rust on macOS 9
There's not much data in the performance section of the front-page readme of the repo, but the one bullet point there seems promising:
> Coremark 1.0: ~7% slower than native [0]
[0] https://github.com/turbolent/w2c2#performance
- W2c2: Translates WebAssembly Modules to C
- W2c2: Translate WebAssembly Modules to C
- I'm not sure what this is, but I'm sure I want to find out. WASM2C.. Is it for me...
wabt
-
Fortran on WebAssembly
https://github.com/WebAssembly/wabt/blob/main/wasm2c/README.... is a straightforward way to take an untrusted application (compiled already to wasm) and turn it into C that you can embed into your application or compile to a linkable DLL. I believe this approach has been used to sandbox untrusted libraries in production by Mozilla: https://hacks.mozilla.org/2021/12/webassembly-and-back-again...
-
Show HN: Mutable.ai – Turn your codebase into a Wiki
As long as this is happening, might as well try some of my favorites: https://github.com/wasm3/wasm3, https://github.com/WebAssembly/wabt, https://github.com/bytecodealliance/wasmtime
- Ask HN: Best blog tutorial explaining Assembly code?
-
Understanding Every Byte in a WASM Module
This seems sort of like understanding machine code vs assembly; it's much easier to learn WAT and translate to/from WASM as necessary using the wabt tools [0].
Either way its super cool how simple WebAssembly is, you can really get your hands dirty and understand exactly every detail of how your program runs!
[0] https://github.com/WebAssembly/wabt
-
Show HN: Gogosseract, a Go Lib for CGo-Free Tesseract OCR via Wazero
You mean this? https://github.com/WebAssembly/wabt/blob/main/wasm2c/README....
That seems like quite an undertaking. But at that point, It would make sense to cut out WASM entirely like https://datastation.multiprocess.io/blog/2022-05-12-sqlite-i...
-
WebAssembly: byte-code of the future
The .wat file can be compiled to a .wasm using wat2wasm which is part of the WebAssembly Toolkit CLI tools:
- DeviceScript: TypeScript for Tiny IoT Devices
-
Is anyone working/creating tools for wasm in C?
it is in C++ https://github.com/WebAssembly/wabt/blob/main/src/tools/wat2wasm.cc
-
How to hide script file?
I don't think you are building an application that will use Native Client technologies How to extract source code from Native Client .nexe file, migrate to WebAssembly? #1864 so that would be superfluous, and frankly, useless in your case.
-
Hey Rustaceans! Got a question? Ask here (5/2023)!
I'm trying to get a basic Rust webassembly program, then porting it to C via wasm2c. The example works, but when I use wasm-bindgen and analyze it with wasm2wat, I get an import "env". The issue is that in C (wasm2c) it comes out as struct Z_env_instance_t; and I can't instantiate it (as in Z_env_instance_t env; to pass it's address to Z_wasm_client_bg_instantiate.
What are some alternatives?
raw-wasm - Raw WebAssembly demos
wasmr - Execute WebAssembly from R using wasmer
react-native-webassembly - ⚛️ 🏎 WebAssembly for React Native powered by JSI.
langs
assemblyscript - A TypeScript-like language for WebAssembly.
perspective - A data visualization and analytics component, especially well-suited for large and/or streaming datasets.
RustPython - A Python Interpreter written in Rust
binaryen - Optimizer and compiler/toolchain library for WebAssembly
jerryscript - Ultra-lightweight JavaScript engine for the Internet of Things.
wasmtime - A fast and secure runtime for WebAssembly
hermit - Actually Portable WebAssembly compiler toolchain for self-contained cross-platform binaries
benchmarks - Some benchmarks of different languages