binaryen-rs
Binaryen bindings for Rust.
With Binaryen you can create optimized WebAssembly modules.
For example what you can create with Binaryen you can check out DEMO*. Yes, this is CHIP-8 roms compiled straight to the WebAssembly. See emchipten test bed for this project.
(*) Modern browser required
Example
extern crate binaryen;
use *;
This example will print:
(module
(type $iii (func (param i32 i32) (result i32)))
(memory $0 0)
(func $adder (type $iii) (param $0 i32) (param $1 i32) (result i32)
(i32.add
(get_local $0)
(get_local $1)
)
)
)