Pular para o conteúdo

Louis Pilfold on Building Gleam - Static Types on the BEAM

11 de setembro de 2026 · 1 h 12 min

Notas do episódio

What if the BEAM had a language that felt like talking to a friend instead of fighting a compiler?

That's the problem Louis Pilfold set out to solve. He loved the BEAM. He missed static types. Every other option was a tradeoff he couldn't live with. So he built Gleam - and after years of quietly saying no to everything he wasn't sure about, it's gathered a community, found production users, and now runs on servers, browsers, and $2 microcontrollers.

Topics include:

  • why every successful language is born from a problem - and what specific frustration made Louis start building rather than just complaining

  • the discipline of saying no: no if, no currying, no pretending two targets are one world

  • the design decision Louis regrets most - the conditional compilation syntax he's now stuck with and desperately doesn't want more people to use

  • why Gleam's concurrency model lives in a library rather than the language - and what that buys in terms of flexibility when smarter people eventually improve it

  • how Gleam solved the problem everyone said was unsolvable: "you can't type message passing on the BEAM"

  • what the JavaScript and BEAM targets share and where they genuinely can't be unified - and why pretending they can leads to terrible architecture

  • why Gleam chose Erlang records as its data structure and what that costs at runtime

  • Lustre, Gleam's web framework - beating mainstream JavaScript frameworks in benchmarks while written entirely in Gleam

  • how Louis funds his work on Gleam: GitHub Sponsors, the Gleam community, and what sustainable open source actually looks like from the inside

  • what Gleam will look like in 3–5 years - native records, better JavaScript interop, and why the language's approach to stability makes those changes possible

Recorded August 20, 2026.

Resources mentioned:

  • gleam.run - docs, tour, community

  • tour.gleam.run - interactive language tour running the Gleam compiler compiled to Wasm, takes an afternoon

  • Exercism Gleam track

  • Code Crafters - build Redis/SQLite/Git in Gleam

  • GitHub Sponsors: lpil (Louis Pilfold)

  • Lustre - Gleam's web framework

Todos os episódios de BEAM There, Done That

Configurações

Exibição

Idioma

Define quais estações você vê primeiro na página inicial.

Histórico

As rádios e episódios ouvidos recentemente e suas últimas buscas ficam só neste navegador.

Avisos

Um aviso rápido quando um podcast que você segue tem um episódio novo. Desative podcasts individuais pelo sino na página deles.

Conta

Salve favoritos – no app e no site.

Atalhos de teclado

/
Abrir busca
Espaço
Reproduzir ou pausar
← →
No player: voltar 15 s, avançar 30 s (episódios) · na fileira: próximo bloco
↑ ↓
Na fileira: alvo dentro do bloco
Home / End
Na fileira: primeiro ou último bloco
Esc
Fechar janela ou menu
?
Esta visão geral
Tocando agora

Ir para a estação

A seguir

    Adicione episódios com “A seguir” – eles tocam depois do episódio atual.