gitbook eligible for Community Plan, free for open source projects
The basics of WebAssembly
- its origin
- what problems does it solve
- how does it work
- structure of its module
- what languages can be used to create module
more details about WebAssmebly can be found in Appendix A
The basics of WAMR
- what it is
- why you may want to use it
- main parts it provides and brief introduction of each part
- "iwasm" VM core
- "wamrc" AOT compiler
- application framework
- dynamic management
more details about background knowledge(compiler, interpreter, runtime system, all other jargons) are in Appendix B
details on how to build and use each part properly and where you may want to use it can be found in section 3.tutorial
A hello world program
more example programs in section 4. Examples
dependencies, how to build on different platform...
suppose to be easier, don't need to worry about dependencies(however, most example programs has to be checked and modified to run in current docker)
-
how to build different parts with different mode on different platforms , and how to decide which mode to apply based on corresponding scene
-
embedding in the language you prefer
- C/C++
- Python
- Go
-
existing document: getting started
-
benchmark demonstrate performance difference when it comes to use different mode
TODO: advance
- memory model and memory tuning
- memory profiling
- performance profiling
- call stack dump
- multi-thread
- multi-module
- socket
- XIP
- linux sgx
- librats: sgx
- debugging and IDE support
TODO: details?
Programmer’s Manual like LLVM?
- API list
- wasm_export.h
- wasm_c_api.h
- upcoming features
- how/what to contribute
- code styles/guideline
- github
- medium
Book: webassembly in action
- compiler
- interpreter
- JIT
- runtime system