Which Crates Will Work Off-the-Shelf with WebAssembly?
There are no system libraries in wasm, so any crate that tries to bind to asystem library won't work.
Using C libraries will also probably fail to work, since wasm doesn't have astable ABI for cross-language communication, and cross-language linking for wasmis very finicky. Everyone wants this to work eventually, especially since is shipping their target by default now, but the story isn'tquite there yet.
File I/O
There are , but it isn'tshipping yet. Attempts to spawn on a thread on the target will panic, which triggers a wasm trap.
So Which General Purpose Crates Tend to Work Off-the-Shelf with WebAssembly?
Algorithms and Data Structures
Crates that provide the implementation of a particularalgorithm or , for example A* graphsearch or splay trees, tend to work well with WebAssembly.
Parsers
— so longas they just take input and don't perform their own I/O — tend to workwell with WebAssembly.
Crates that deal with the complexities of human language when expressed intextual form tend to work wellwith WebAssembly.