Learning WebAssembly

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

Learning WebAssembly Series by Tomas Tulka
Learning WebAssembly Series by Tomas Tulka

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.

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

Written by

Software developer and occasional blogger: https://blog.ttulka.com

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store