WebAssembly - The Next Big Platform
Sven Sauleau
2019
1
Sven Sauleau @svensauleau
@svensauleau 2
JavaScript, what happened?
Loading time
1. Fetching.
2. Parsing source.
3. Compiling + optimizing∞−→ reoptimizing.
@svensauleau 4
Performance
Dynamic and untyped.
Complex runtime.
Managed memory.
@svensauleau 5
Became acompilation target
WebAssembly,at the rescue?
Sources
C/C++ Rust Golang Haskell . . .
Compilers
Emscripten rustc GoGHC
Asterius
LLVM
Binaryen
WebAssembly Module
@svensauleau 9
WebAssembly Module
Runtimes
Web browsers
(Firefox, Chrome, Safari, ...)
Other environments
(WASI, WAVM, crypto...)
@svensauleau 10
What’s evenWebAssembly?
Inside the black box
...
y from x
import section
func #2
export section
WebAssembly Module
JS JS
@svensauleau 14
WebAssembly all thethings?
WebAssembly is designed to be a
complement to, not replacement of,
JavaScript.
@svensauleau 20
demo!
Rust andWebAssembly
demo!
Thanks!