<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Webassembly on MacWorks</title><link>https://macworks.dev/tags/webassembly/</link><description>Recent content in Webassembly on MacWorks</description><generator>Hugo</generator><language>en</language><atom:link href="https://macworks.dev/tags/webassembly/index.xml" rel="self" type="application/rss+xml"/><item><title>2026-04-13</title><link>https://macworks.dev/docs/week/simonwillison/simonwillison-2026-04-13/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://macworks.dev/docs/week/simonwillison/simonwillison-2026-04-13/</guid><description>&lt;h1 id="simon-willison--2026-04-13"&gt;Simon Willison — 2026-04-13&lt;a class="anchor" href="#simon-willison--2026-04-13"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;h2 id="highlight"&gt;Highlight&lt;a class="anchor" href="#highlight"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Today&amp;rsquo;s standout is Simon&amp;rsquo;s hands-on research into the newly released &lt;code&gt;servo&lt;/code&gt; crate using Claude Code. It perfectly captures his classic approach to AI-assisted exploration, demonstrating how quickly you can prototype a Rust CLI tool and evaluate WebAssembly compatibility with an LLM sidekick.&lt;/p&gt;
&lt;h2 id="posts"&gt;Posts&lt;a class="anchor" href="#posts"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;[Exploring the new servo crate]&lt;/strong&gt; · &lt;a href="https://simonwillison.net/2026/Apr/13/servo-crate-exploration/#atom-everything"&gt;Source&lt;/a&gt;
Following the initial release of the embeddable &lt;code&gt;servo&lt;/code&gt; browser engine on crates.io, Simon tasked Claude Code for web with exploring its capabilities. The AI successfully generated a working Rust CLI tool called &lt;code&gt;servo-shot&lt;/code&gt; for taking web screenshots. While compiling Servo itself to WebAssembly proved unfeasible due to its heavy use of threads and SpiderMonkey dependencies, Claude instead built a playground page utilizing a WebAssembly build of the &lt;code&gt;html5ever&lt;/code&gt; and &lt;code&gt;markup5ever_rcdom&lt;/code&gt; crates to parse HTML fragments.&lt;/p&gt;</description></item><item><title>Engineer Reads</title><link>https://macworks.dev/docs/week/blogs/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://macworks.dev/docs/week/blogs/</guid><description>&lt;h1 id="engineering-reads--week-of-2026-04-02-to-2026-04-10"&gt;Engineering Reads — Week of 2026-04-02 to 2026-04-10&lt;a class="anchor" href="#engineering-reads--week-of-2026-04-02-to-2026-04-10"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;h2 id="week-in-review"&gt;Week in Review&lt;a class="anchor" href="#week-in-review"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;This week&amp;rsquo;s reading reflects a fundamental inflection point: raw LLM intelligence is no longer the bottleneck in software development. Instead, the industry is pivoting toward the hard systems engineering required to constrain probabilistic models—whether through strict data ledgers, living specifications, or formal verification harnesses. The dominant debate centers on how we preserve architectural taste, mechanical sympathy, and system ethics as the mechanical act of writing code becomes increasingly commoditized.&lt;/p&gt;</description></item><item><title>2026-04-10</title><link>https://macworks.dev/docs/week/blogs/engineer-blogs-2026-04-10/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://macworks.dev/docs/week/blogs/engineer-blogs-2026-04-10/</guid><description>&lt;h1 id="engineering-reads--2026-04-10"&gt;Engineering Reads — 2026-04-10&lt;a class="anchor" href="#engineering-reads--2026-04-10"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;h2 id="the-big-idea"&gt;The Big Idea&lt;a class="anchor" href="#the-big-idea"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As AI abstractions upend our relationship with code, engineering craft is bifurcating: we must simultaneously grapple with emergent, functional behaviors in massive models while deliberately preserving the mechanical, systems-level intuition that historically grounded software ethics.&lt;/p&gt;
&lt;h2 id="deep-reads"&gt;Deep Reads&lt;a class="anchor" href="#deep-reads"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="https://eli.thegreenplace.net/2026/watgo-a-webassembly-toolkit-for-go/"&gt;watgo - a WebAssembly Toolkit for Go&lt;/a&gt;&lt;/strong&gt; · Eli Bendersky
This piece introduces &lt;code&gt;watgo&lt;/code&gt;, a zero-dependency WebAssembly toolkit written in pure Go that parses, validates, encodes, and decodes WASM. The core of the system lowers WebAssembly Text (WAT) to a semantic intermediate representation called &lt;code&gt;wasmir&lt;/code&gt;, flattening syntactic sugar to match WASM&amp;rsquo;s strict binary execution semantics. To guarantee correctness, &lt;code&gt;watgo&lt;/code&gt; executes the official 200K-line WebAssembly specification test suite by converting &lt;code&gt;.wast&lt;/code&gt; files to binary and running them against a Node.js harness. An earlier attempt to maintain a pure-Go execution pipeline using &lt;code&gt;wazero&lt;/code&gt; was abandoned because the runtime lacked support for recent WASM garbage collection proposals. Engineers working on compilers, parsers, or WebAssembly infrastructure should read this for a masterclass in leveraging specification test suites to bootstrap confidence in new tooling.&lt;/p&gt;</description></item><item><title>2026-04-11</title><link>https://macworks.dev/docs/week/simonwillison/simonwillison-2026-04-11/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://macworks.dev/docs/week/simonwillison/simonwillison-2026-04-11/</guid><description>&lt;h1 id="simon-willison--2026-04-11"&gt;Simon Willison — 2026-04-11&lt;a class="anchor" href="#simon-willison--2026-04-11"&gt;#&lt;/a&gt;&lt;/h1&gt;
&lt;h2 id="highlight"&gt;Highlight&lt;a class="anchor" href="#highlight"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The standout update today centers on the release of SQLite 3.53.0, where Simon highlights highly anticipated native &lt;code&gt;ALTER TABLE&lt;/code&gt; constraint improvements and showcases his classic rapid-prototyping workflow by using Claude Code on his phone to build a WebAssembly-powered playground for the database&amp;rsquo;s new Query Result Formatter.&lt;/p&gt;
&lt;h2 id="posts"&gt;Posts&lt;a class="anchor" href="#posts"&gt;#&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;SQLite 3.53.0&lt;/strong&gt; · &lt;a href="https://simonwillison.net/2026/Apr/11/sqlite/#atom-everything"&gt;Source&lt;/a&gt;
This is a substantial release following the withdrawal of SQLite 3.52.0, packed with accumulated user-facing and internal improvements. Simon specifically highlights that &lt;code&gt;ALTER TABLE&lt;/code&gt; can now directly add and remove &lt;code&gt;NOT NULL&lt;/code&gt; and &lt;code&gt;CHECK&lt;/code&gt; constraints, a workflow he previously had to manage using his own &lt;code&gt;sqlite-utils transform()&lt;/code&gt; method. The update also introduces &lt;code&gt;json_array_insert()&lt;/code&gt; (alongside its jsonb equivalent) and brings significant upgrades to the CLI mode&amp;rsquo;s result formatting via a new Query Results Formatter library. True to form, Simon leveraged AI assistance—specifically Claude Code on his phone—to compile this new C library into WebAssembly to build a custom playground interface.&lt;/p&gt;</description></item></channel></rss>