DEV Community

Cover image for Learning WebAssembly
Tomas Tulka
Tomas Tulka

Posted on • Updated on • Originally published at blog.ttulka.com

Learning WebAssembly

A series of learning texts covering the first steps with WebAssembly for complete beginners.


Some time ago I started learning WebAssembly as an absolute beginner. It has been an exciting but not so simple journey.

I decided to publish my continuous and probably neverending notices to make your learning path a little easier.

Here is the actual list of already finished posts. I will constantly update and extend it.

Hello, World of Wasm!

Let’s try WebAssembly for the first time. We will create a simple program in the Wat text format, compile it into Wasm binary, and finally execute it in a browser and as a server application.

Wasm Binary Format

We will explore the structure of the Wasm binary format byte by byte.

Wat Programming Basics

Finally some real programming! We will learn the very basics of the Wat text format, how to work with functions and variables, write conditions, and loops.

Wasm Memory and Working with Strings

The concept of memory objects is very important know-how in Wasm. We will use it to deal with strings.

Running Wasm in the Browser

WebAssembly is part of the web platform, thus it is important to understand interactions between Wasm and JavaScript. We will learn about shared memory and global variables.

Running Wasm in Node.js

Browser is not the only environment that Wasm can run in. We will also learn how to execute Wasm in Node.js, the popular backend platform.

Introducing WASI

WebAssembly System Interface (WASI) provides access to several operating-system-like features from Wasm. We will learn how to write programs that use WASI.

Compiling into Wasm

There are plenty of languages that can be compiled into Wasm. We will take a look at some of them.

AssemblyScript Basics

AssemblyScript syntax is very close to JavaScript and as such is an ideal candidate to write Wasm in. We will explore the basics of AssemblyScript and create a few neat programs.

Image Processing in AssemblyScript

WebAssembly is a great fit for computation-intensive tasks like generating and processing graphics. We will experiment in this field a little.


You are welcome to join me on the exciting journey of learning WebAssembly!

Top comments (1)

Collapse
 
atapas profile image
Tapas Adhikary

Thanks for sharing! I'm all up to learn WA sometime sooner :) .