You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+7-10Lines changed: 7 additions & 10 deletions
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@
14
14
15
15
-**Tiny**: TinyWasm is designed to be as small as possible without significantly compromising performance or functionality (< 4000 LLOC).
16
16
-**Portable**: TinyWasm runs on any platform that Rust can target, including `no_std`, with minimal external dependencies.
17
-
-**Safe**: No unsafe code is used in the runtime (`rkyv` which uses unsafe code can be used for serialization, but is optional).
17
+
-**Safe**: No unsafe code is used in the runtime (`rkyv`, which uses unsafe code, can be used for serialization but is optional).
18
18
19
19
## Status
20
20
@@ -24,7 +24,7 @@ TinyWasm passes all WebAssembly MVP tests from the [WebAssembly core testsuite](
24
24
25
25
**Legend**\
26
26
🌑 -- not available\
27
-
🚧 -- in development / partialy supported\
27
+
🚧 -- in development/partially supported\
28
28
🟢 -- fully supported
29
29
30
30
| Proposal | Status | TinyWasm Version |
@@ -61,24 +61,21 @@ $ tinywasm-cli --help
61
61
-**`archive`**\
62
62
Enables pre-parsing of archives. This is enabled by default.
63
63
64
-
With all these features disabled, TinyWasm only depends on `core`, `alloc` ,and `libm` and can be used in `no_std` environments.
65
-
Since `libm` is not as performant as the compiler's math intrinsics, it is recommended to use the `std` feature if possible (at least [for now](https://github.com/rust-lang/rfcs/issues/2505)), especially on wasm32 targets.
64
+
With all these features disabled, TinyWasm only depends on `core`, `alloc`, and `libm` and can be used in `no_std` environments. Since `libm` is not as performant as the compiler's math intrinsics, it is recommended to use the `std` feature if possible (at least [for now](https://github.com/rust-lang/rfcs/issues/2505)), especially on `wasm32` targets.
66
65
67
66
## Inspiration
68
67
69
68
Big thanks to the authors of the following projects, which have inspired and influenced TinyWasm:
70
69
71
-
-[wasmi](https://github.com/wasmi-labs/wasmi) - an efficient and lightweight WebAssembly interpreter that also runs on`no_std` environments
72
-
-[wasm3](https://github.com/wasm3/wasm3) - a highperformance WebAssembly interpreter written in C
73
-
-[wazero](https://wazero.io/) - a zero-dependency WebAssembly interpreter written in go
70
+
-[wasmi](https://github.com/wasmi-labs/wasmi) - an efficient and lightweight WebAssembly interpreter that also runs in`no_std` environments
71
+
-[wasm3](https://github.com/wasm3/wasm3) - a high-performance WebAssembly interpreter written in C
72
+
-[wazero](https://wazero.io/) - a zero-dependency WebAssembly interpreter written in Go
74
73
-[wain](https://github.com/rhysd/wain) - a zero-dependency WebAssembly interpreter written in Rust
75
74
76
-
I encourage you to check these projects out if you're looking for more mature and feature-complete WebAssembly Runtimes.
75
+
I encourage you to check these projects out if you're looking for more mature and feature-complete WebAssembly runtimes.
77
76
78
77
## License
79
78
80
79
Licensed under either of [Apache License, Version 2.0](./LICENSE-APACHE) or [MIT license](./LICENSE-MIT) at your option.
81
80
82
81
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in TinyWasm by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
83
-
84
-
**Note:** The GitHub repository contains a Submodule (`crates/tinywasm-parser/data`) which is licensed only under the [Apache License, Version 2.0](https://github.com/WebAssembly/spec/blob/main/test/LICENSE). This data is generated from the [WebAssembly Specification](https://github.com/WebAssembly/spec/tree/main/test) and is only used for testing purposes and not included in the final binary.
0 commit comments