summaryrefslogtreecommitdiff
path: root/docs/getting_started/wasm.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/getting_started/wasm.md')
-rw-r--r--docs/getting_started/wasm.md31
1 files changed, 31 insertions, 0 deletions
diff --git a/docs/getting_started/wasm.md b/docs/getting_started/wasm.md
new file mode 100644
index 000000000..f1c7e6fd2
--- /dev/null
+++ b/docs/getting_started/wasm.md
@@ -0,0 +1,31 @@
+## WASM support
+
+Deno can execute [wasm](https://webassembly.org/) binaries.
+
+<!-- prettier-ignore-start -->
+```js
+const wasmCode = new Uint8Array([
+ 0, 97, 115, 109, 1, 0, 0, 0, 1, 133, 128, 128, 128, 0, 1, 96, 0, 1, 127,
+ 3, 130, 128, 128, 128, 0, 1, 0, 4, 132, 128, 128, 128, 0, 1, 112, 0, 0,
+ 5, 131, 128, 128, 128, 0, 1, 0, 1, 6, 129, 128, 128, 128, 0, 0, 7, 145,
+ 128, 128, 128, 0, 2, 6, 109, 101, 109, 111, 114, 121, 2, 0, 4, 109, 97,
+ 105, 110, 0, 0, 10, 138, 128, 128, 128, 0, 1, 132, 128, 128, 128, 0, 0,
+ 65, 42, 11
+]);
+const wasmModule = new WebAssembly.Module(wasmCode);
+const wasmInstance = new WebAssembly.Instance(wasmModule);
+console.log(wasmInstance.exports.main().toString());
+```
+<!-- prettier-ignore-end -->
+
+### ES Module style imports
+
+> This is an unstable feature. Learn more about
+> [unstable features](../../runtime/unstable).
+
+WASM files can also be loaded using imports:
+
+```ts
+import { fib } from "./fib.wasm";
+console.log(fib(20));
+```