Rust and WebAssembly

MozMeetup Lima 07-2019

mozillaperu

who I am?

  • ccarruitero
  • Mozillian
  • Open Source Contributor
  • software developer
  • a global community of people who believe that openness, innovation, and opportunity are key to the continued health of the Internet.

    rust + wasm

    wasm

    binary format for a virtual machine that can run on web , but not designed strictly for web

    why

  • fast, efficient, and portable
  • readable and debuggable
  • safe
  • open web standard
  • would replace js?

    wasm <3 js

    how it works

    Not only C | C++ | Rust

    wasm languages

    wat

    spec

    Assembly Script

    assemblyscript.org

    rust compiling to wasm

    rustc src/main.rs --target=wasm32-unknown-unknown

    using in js

    other web api interfaces

  • Module
  • Instance
  • Table
  • Memory
  • rustwasm/wasm-bindgen

    more easy interactions between wasm modules and js

    rustwasm/wasm-pack

    wasm workflow tool!

    binary toolkit

    webassembly/wabt

    WASI

    API for use outside web

    WASMER

    Universal WebAssembly runtime

    WAPM

    wasm package manager

    what's next

    Future Features

  • ECMAScript module integration
  • support garbage collection languages
  • references

  • WebAssembly MDN docs
  • Awesome WASI
  • WASI repo
  • wasm-tetris
  • Thanks!

    mozillaperu