See my comment above, ultimately you should be able to generate WebAssembly directly from your C compiler (and other languages too). You can write it by hand as well, but that's not the primary goal of the specification.
We should have a text format soon too, which will be nicer than the AST format to read/write by hand.