You are viewing archived messages.
Go here to search the history.

Mariano Guerra 2025-03-10 13:13:41

After two and a half years of work with Patrick Dubroy, we are happy to announce the release of WebAssembly from the Ground Up, a book that teaches you about WebAssembly 1.0 by building a simple compiler in JavaScript with Ohm/JS.

Here’s a 25% discount code you can use: FOCWASM25

We decided to do a “digital first” book to take advantage of interactivity and “explorable explanations”, and learned a couple of things along the way.

We also decided that all the code should be in the book and that it should run if you copy and paste the snippets as you read.

To achieve this we had to create most of the tooling around the book ourselves:

  • The server that handles authentication and access to the book
  • The script that extracts the snippets from the original source code and generates:
  • The snippets you can copy to clipboard.
  • The “Copy up to here” code segments.
  • The checkpoints and chapter modules in the code repo, accessible through stackblitz.
  • The emit library, a standalone library to emit WebAssembly 1.0 binary modules.
  • The early access feedback system using embedded hypothes.is
  • PDF generation (puppeteer, pdftk, imagemagick, poppler).
  • A tool to generate code snippet ranges for “highlight on text hover”.

We plan on writing about some of our takeaways in the coming weeks, but that will have to wait. 😅

Let us know if you have any questions!

📝 WebAssembly from the Ground Up

A book about WebAssembly — learn Wasm by building a simple compiler in JavaScript.

Ivan Reese 2025-03-10 15:21:16

Congrats you two! I've been eagerly awaiting the final release, and am super excited to dig in. Ever since WASM appeared on the scene, I've wanted to learn how it works at a low level, and this book's approach (start with the bytecode, then write your own compiler) seems perfectly suited to my goals. Thanks for all the hard work putting this together.

Patrick Dubroy 2025-03-10 16:18:39

Awesome! Let us know how you get along with it Ivan Reese.

J. Ryan Stinnett 2025-03-11 13:10:31

Bought the book, thanks for all your work on this! I'm also interested to read your eventual post about all this behind the scenes tech you had to build. 😄

Ezhik 2025-03-11 16:32:18

Ohm and WASM seems like a super cool combo for programming language experimentation

🕰️ 2025-03-09 17:23:09

...

Ezhik 2025-03-11 15:58:21

One more spreadsheet experiment: what if it wasn't just the cells themselves that could have formulas but things like cell styling too?

ezhik.jp/spreadsheet-2

Declan 2025-03-14 09:16:47

Hey all, I released ActuarialPlayground.com : an interactive and visual actuarial cashflow model, where the calculations are described by calculang.

There is a 7min video where I use the Playground to explore some things here: youtube.com/watch?v=S-cX7CmH0eA

I made remarks about the calculang model and especially model composition, that you can read under the '❓' tab

calculang outputs a JS bundle you can see under '🌟' - obviously a lot can be done with it in a pretty familiar way

This is a contrast to calculations rigidly defined in specialised tools, without composition, and without being able to break out or integrate in a tight visual/interactive and exploratory loop

Marek Rogalski 2025-03-15 11:59:06

I've turned some notes related to Flash from the last FoC meetup in Berlin into a thread here: bsky.app/profile/mrogalski.eu/post/3lkg25qntbk2l

https://bsky.app/profile/mrogalski.eu|@mrogalski.eu: Do you want to know what was the secret to Flash websites?

Instead of presupposing that "everything is a document" & "documents are a collection of boxes within other boxes" it went with "everything is a movie clip" & "movie clip is a collection of other movie clips" (Clips all the way down!) :thread::point_down: