A detailed guide to using GHC's WebAssembly backend

Welcome to the bleeding edge!

August 24, 2024
haskell1webassembly1

At ZuriHac this year, my goal was to use GHC’s relatively new WebAssembly (wasm) backend to do something cool. I accomplished this goal, and learned a ton about wasm and how GHC’s wasm backend works along the way. In this post, I’ll document everything I learned, from the basics of wasm to some nitty-gritty details of how GHC targets wasm from Haskell.

To demonstrate what we cover, we’ll be building this interactive example webpage! Thrilling!

In a future post, I’ll document the actual project I worked on while learning all of this and include a demo of the finished product, so stay tuned!