Skip to content
Artwork for Dead Code
Dead Code · August 4 · 25 min

No More Magic (with Nithin Bekal)

On this episode of Dead Code, Jared talks with Nithin Bekal, a longtime Ruby developer at Shopify, about Sapphire, his hobby programming language: a gradually typed, object-oriented language inspired by Ruby but stripped of metaprogramming magic, implemented in Rust, with features admitted only if he'd use them in production code. Nithin built much of it with LLM coding agents, even prompting from his phone after his laptop died, and now has 10,000 to 15,000 lines of Rust he doesn't fully understand, so he plans to scale back to asking agents questions rather than letting them drive, a struggle Jared relates to after throwing away his own fully vibe-coded OCaml compiler before hand-building his ML-style language, Shroom. Nithin prioritized tooling early because developer experience is what he most wants to learn, cites the LLM-fueled wave of hobby languages like Matz's Spinel and Steve Klabnik's Rue as motivation, advises aspiring language builders to just dive in since parsing is more approachable than it looks, and plans a docs generator as Sapphire's first real codebase. Links: Sapphire Spinel Rue Nithin Bekal Crafting Interpreters Sorbet Ruby Rust Dead Code Podcast Links: Mastodon X Jared’s Links: Mastodon X twitch.tv/jardonamron Jared’s Newsletter & Website Episode Transcript Hosted on Acast. See acast.com/privacy for more information.

0:00-25:50

transcript

No transcript — this publisher did not publish one.

show notes

On this episode of Dead Code, Jared talks with Nithin Bekal, a longtime Ruby developer at Shopify, about Sapphire, his hobby programming language: a gradually typed, object-oriented language inspired by Ruby but stripped of metaprogramming magic, implemented in Rust, with features admitted only if he'd use them in production code. Nithin built much of it with LLM coding agents, even prompting from his phone after his laptop died, and now has 10,000 to 15,000 lines of Rust he doesn't fully understand, so he plans to scale back to asking agents questions rather than letting them drive, a struggle Jared relates to after throwing away his own fully vibe-coded OCaml compiler before hand-building his ML-style language, Shroom. Nithin prioritized tooling early because developer experience is what he most wants to learn, cites the LLM-fueled wave of hobby languages like Matz's Spinel and Steve Klabnik's Rue as motivation, advises aspiring language builders to just dive in since parsing is more approachable than it looks, and plans a docs generator as Sapphire's first real codebase.


Links:


Sapphire

Spinel

Rue

Nithin Bekal

Crafting Interpreters

Sorbet

Ruby

Rust


Dead Code Podcast Links:


Mastodon

X


Jared’s Links:


Mastodon

X

twitch.tv/jardonamron

Jared’s Newsletter & Website


Episode Transcript


Hosted on Acast. See acast.com/privacy for more information.

links16