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

Pattern Matching Replaces If

  • Gleam intentionally omits an if construct and uses pattern-matching case for all conditional logic.
  • Louis found developers adapted quickly and the design simplified language surface area.
ANECDOTE

Erlang's Guard Limits Sparked Change

  • Louis described Erlang's limited if as a trigger for preferring case and eventually removing if from Gleam.
  • Repeated Erlang usage convinced him one conditional form was sufficient.
INSIGHT

No Currying For BEAM Interop

  • Gleam avoids currying because the BEAM and existing Erlang/Elixir ecosystems don't support it well.
  • Louis prioritized interop with the BEAM over Haskell-style currying ergonomics.
Get the Snipd Podcast app to discover more snips from this episode
Get the app