WebAssembly is a bytecode format created in 2015 by Alon Zakai.
#115on PLDB | 8Years Old | 8.3kUsers |
13Books | 25Papers | 2kRepos |
Try now: TIO
WebAssembly (Wasm, WA) is a web standard that defines a binary format and a corresponding assembly-like text format for executable code in Web pages. It is meant to enable executing code nearly as fast as running native machine code. It was envisioned to complement JavaScript to speed up performance-critical parts of web applications and later on to enable web development in languages other than JavaScript. Read more on Wikipedia...
20 00
50
04 7E
42 01
05
20 00
20 00
42 01
7D
10 00
7E
0B
(module
(import "wasi_unstable" "fd_write"
(func $fd_write (param i32 i32 i32 i32) (result i32))
)
(memory 1)
(export "memory" (memory 0))
(data (i32.const 0) "\08\00\00\00\0c\00\00\00Hello World\n")
(func $main (export "_start")
i32.const 1
i32.const 0
i32.const 1
i32.const 20
call $fd_write
drop
)
)
(module
(import "env" "printInt" (func $printInt (param i32)))
(func $add (param $lhs i32) (param $rhs i32) (result i32)
get_local $lhs
get_local $rhs
i32.add
)
(func $main
(call $printInt
(call $add (i32.const 9) (i32.const 8))))
(export "main" (func $main))
)
(module
(import "math" "exp" (func $exp (param f64) (result f64)))
(func (export "doubleExp") (param $0 f64) (result f64)
(f64.mul
(call $exp
(get_local $0))
(f64.const 2))))
Feature | Supported | Token | Example |
---|---|---|---|
Comments | ✓ | ||
MultiLine Comments | ✓ | ||
Line Comments | ✓ | ||
Integers | ✓ | ||
Floats | ✓ | ||
Hexadecimals | ✓ |
title | authors | year | citations | influentialCitations |
---|---|---|---|---|
Bringing the web up to speed with WebAssembly | Andreas Haas and Andreas Rossberg and Derek L. Schuff and Ben L. Titzer and Michael Holman and D. Gohman and Luke Wagner and Alon Zakai and J. Bastien | 2017 | 307 | 64 |
Mechanising and verifying the WebAssembly specification | C. Watt | 2018 | 45 | 2 |
Wasabi: A Framework for Dynamically Analyzing WebAssembly | Daniel Lehmann and Michael Pradel | 2018 | 27 | 1 |
Weakening WebAssembly | C. Watt and Andreas Rossberg and Jean Pichon-Pharabod | 2019 | 18 | 3 |
An Empirical Study of Real-World WebAssembly Binaries: Security, Languages, Use Cases | Aaron Hilbig and Daniel Lehmann and Michael Pradel | 2021 | 17 | 3 |
Formally Verified Cryptographic Web Applications in WebAssembly | Jonathan Protzenko and Benjamin Beurdouche and Denis Merigoux and K. Bhargavan | 2019 | 17 | 2 |
WARDuino: a dynamic WebAssembly virtual machine for programming microcontrollers | Robbert Gurdeep Singh and Christophe Scholliers | 2019 | 16 | 2 |
Accelerate JavaScript applications by cross-compiling to WebAssembly | M. Reiser and Luc Bläser | 2017 | 15 | 1 |
Virtual Machine Execution for Wearables Based on WebAssembly | M. Jacobsson and Jonas Willén | 2018 | 11 | 1 |
FAUST Domain Specific Audio DSP Language Compiled to WebAssembly | S. Letz and Y. Orlarey and D. Fober | 2018 | 8 | 0 |
Compositional Information Flow Analysis for WebAssembly Programs | Quentin Stiévenart and Coen De Roover | 2020 | 7 | 0 |
Bringing the web up to speed with WebAssembly | Andreas Rossberg and Ben L. Titzer and Andreas Haas and Derek L. Schuff and D. Gohman and Luke Wagner and Alon Zakai and J. Bastien and Michael Holman | 2018 | 7 | 0 |
Sparse matrices on the web: characterizing the performance and optimal format selection of sparse matrix-vector multiplication in javascript and webassembly | Prabhjot Sandhu and D. Herrera and L. Hendren | 2018 | 6 | 0 |
Wasmachine: Bring the Edge up to Speed with A WebAssembly OS | Elliott Wen and Gerald Weber | 2020 | 3 | 0 |
Understanding the performance of webassembly applications | Yutian Yan and Tengfei Tu and Lijian Zhao and Yuchen Zhou and Weihang Wang | 2021 | 3 | 0 |
SELWasm: A Code Protection Mechanism for WebAssembly | Jian Sun and Dingyuan Cao and Ximing Liu and Ziyi Zhao and Wenwen Wang and Xiaoli Gong and Jin Zhang | 2019 | 3 | 0 |
WASim: Understanding WebAssembly Applications through Classification | Alan Romano and Weihang Wang | 2020 | 3 | 0 |
TruffleWasm: a WebAssembly interpreter on GraalVM | Salim S. Salim and A. Nisbet and M. Luján | 2020 | 3 | 1 |
An Empirical Study of Bugs in WebAssembly Compilers | Alan Romano and Xinyue Liu and Yonghwi Kwon and Weihang Wang | 2021 | 3 | 0 |
Wobfuscator: Obfuscating JavaScript Malware via Opportunistic Translation to WebAssembly | Alan Romano and Daniel Lehmann and Michael Pradel and Weihang Wang | 2022 | 2 | 0 |
Superoptimization of WebAssembly bytecode | Javier Cabrera-Arteaga and Shrinish Donde and Jian Gu and Orestis Floros and Lucas Satabin and B. Baudry and Monperrus Martin | 2020 | 2 | 0 |
Analysis of WebAssembly as a Strategy to Improve JavaScript Performance on IoT Environments | F. Oliveira and J. Mattos | 2020 | 2 | 0 |
Towards a WebAssembly standalone runtime on GraalVM | Salim S. Salim and A. Nisbet and M. Luján | 2019 | 1 | 0 |
Static Stack-Preserving Intra-Procedural Slicing of WebAssembly Binaries | Quentin Stiévenart and D. Binkley and Coen De Roover | 2022 | 1 | 0 |
Bringing WebAssembly up to speed with dynamic linking | Niko Mäkitalo and Victor Bankowski and Paulius Daubaris and R. Mikkola and Oleg Beletski and T. Mikkonen | 2021 | 1 | 0 |