Web developmentLesson 5 of 5 in the course JavaScript and the browser

WebAssembly Modules, Runtimes, Interfaces, Performance, and Security

5 flashcards · 5 quiz questions · 5 match pairs · 5 fill-in sentences · English

Lesson progress
0 / 5

Your progress is kept in this browser only.Sign up to save it

Summary

WebAssembly, often shortened to Wasm, is a portable format for executable programs and software interfaces. It was created to help web applications run demanding tasks efficiently, while also being useful beyond web browsers.

WebAssembly defines both a compact binary format for executable code and a corresponding text format that people can read. It also specifies ways for programs to communicate with a host environment, such as a browser or a standalone runtime.

All flashcards

What is WebAssembly?
WebAssembly (Wasm) is an open standard for portable executable modules, a readable text representation, and interfaces for communication with a host environment.
Why is Wasm called hardware-independent?
A Wasm module is not written for one specific processor's machine instructions. A compatible runtime can execute it across different hardware and operating systems.
What were WebAssembly's two important precursors?
Mozilla's asm.js and Google's Native Client influenced WebAssembly; the initial implementation was based on the asm.js feature set.
When did the WebAssembly MVP design finish?
The minimum viable product design was declared finished in March 2017, ending the preview phase.
What kinds of capabilities did WebAssembly 2.0 add?
Among its additions were SIMD-related instructions and a v128 type, reference types, memory initialization and copy instructions, and multiple return values.

Quiz questions

  1. Which description best characterizes WebAssembly linear memory?Answer: A growable array of bytes used to store module data.
  2. In WebAssembly structured control flow, what does branching to a block versus a loop do?Answer: A branch to a block exits it; a branch to a loop returns to its beginning.
  3. What is the purpose of the WebAssembly System Interface (WASI)?Answer: To provide portable access to selected system services through a defined interface.
  4. How do WebAssembly components communicate with one another in the Component Model?Answer: Through imported and exported functions described by explicit interfaces.
  5. How does WebAssembly code interact with the Document Object Model (DOM) in browsers?Answer: It uses JavaScript as an intermediary for DOM interaction.

Based on the Wikipedia article WebAssembly, licensed CC BY-SA 4.0. Adapted into a summary, flashcards and quizzes.

All Web development lessons