Software Unscripted

Gleam's Design and Compiler - with creator Louis Pilfold

34 snips
Jan 10, 2026
Louis Pilfold, the creator of the Gleam programming language, shares his insights on its unique design choices, like substituting traditional if statements with pattern-matching case expressions. He discusses the influences of Erlang and Elixir, and why Gleam avoids currying for better compatibility. Louis also explains the practicalities of developing a typechecker and his approach to module caching for fast builds. Additionally, he highlights the challenges of integrating a JavaScript backend and the future of community-driven solutions.
Ask episode
AI Snips
Chapters
Transcript
Episode notes
INSIGHT

Skip Let Generalization By Default

  • Gleam avoids generalizing let bindings by default to sidestep complex rank-based inference.
  • Louis notes optional, annotation-driven generalization could be added later for compatibility.
INSIGHT

Design For Analysis And Fast Builds

  • Gleam's fast compile and static analysis stem from designing the language to be easy to analyze and cache per-module.
  • Simple module boundaries let Gleam compile quickly and power a strong language server.
ANECDOTE

JS Backend Brought Regretful Feature

  • The JavaScript backend arrived when a contributor demonstrated it working, but conditional compilation caused many problems.
  • Louis now calls that conditional-compilation feature soft-deprecated due to analysis and UX breakage.
Get the Snipd Podcast app to discover more snips from this episode
Get the app