Elixir Wizards

Set Theoretic Types in Elixir with José Valim


Listen Later

Elixir creator José Valim returns to the podcast to unpack the latest developments in Elixir’s set-theoretic type system and how it is slotting into existing code without requiring annotations. We discuss familiar compiler warnings, new warnings based on inferred types, a phased rollout in v1.19/v1.20 that preserves backward compatibility, performance profiling the type checks across large codebases, and precise typing for maps as both records and dictionaries.

José also touches on CNRS academic collaborations, upcoming LSP/tooling enhancements, and future possibilities like optional annotations and guard-clause typing, all while keeping Elixir’s dynamic, developer-friendly experience front and center.

Key topics discussed in this episode:
  • Set-theoretic typing (union, intersection, difference)
  • Compiler-driven inference with zero annotations
  • Phased rollout strategy in 1.19 and 1.20
  • Performance profiling for large codebases
  • Map typing as records and dictionaries
  • Exhaustivity checks and behavioral typing in GenServers
  • Language Server Protocol & tooling updates
  • Future optional annotations and guard-clause typing
  • CNRS collaboration for theoretical foundations
  • Clear error messages and false-positive reduction
  • Community-driven feedback and iterative improvements
  • Links mentioned:

    https://github.com/elixir-nx

    https://livebook.dev/
    https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html
    https://hexdocs.pm/elixir/main/gradual-set-theoretic-types.html
    https://hexdocs.pm/dialyxir/0.4.0/readme.html
    https://remote.com/
    Draw the Owl meme: https://i.imgur.com/rCr9A.png
    https://dashbit.co/blog/data-evolution-with-set-theoretic-types
    https://hexdocs.pm/ecto/Ecto.html
    https://github.com/elixir-lsp/elixir-ls

    Special Guest: José Valim.

    ...more
    View all episodesView all episodes
    Download on the App Store

    Elixir WizardsBy SmartLogic LLC

    • 4.9
    • 4.9
    • 4.9
    • 4.9
    • 4.9

    4.9

    22 ratings


    More shows like Elixir Wizards

    View all
    Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

    Software Engineering Radio - the podcast for professional software developers

    272 Listeners

    The Changelog: Software Development, Open Source by Changelog Media

    The Changelog: Software Development, Open Source

    284 Listeners

    Software Engineering Daily by Software Engineering Daily

    Software Engineering Daily

    621 Listeners

    Python Bytes by Michael Kennedy and Brian Okken

    Python Bytes

    215 Listeners

    Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

    Syntax - Tasty Web Development Treats

    987 Listeners

    CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

    CoRecursive: Coding Stories

    189 Listeners

    Elixir Outlaws by Elixir Outlaws

    Elixir Outlaws

    24 Listeners

    The Stack Overflow Podcast by The Stack Overflow Podcast

    The Stack Overflow Podcast

    62 Listeners

    Thinking Elixir Podcast by ThinkingElixir.com

    Thinking Elixir Podcast

    33 Listeners

    Beam Radio by Lars Wikman

    Beam Radio

    11 Listeners

    Software Unscripted by Richard Feldman

    Software Unscripted

    26 Listeners

    Oxide and Friends by Oxide Computer Company

    Oxide and Friends

    47 Listeners

    Elixir Mentor by Jacob Luetzow

    Elixir Mentor

    2 Listeners

    Risky Business with Nate Silver and Maria Konnikova by Pushkin Industries

    Risky Business with Nate Silver and Maria Konnikova

    261 Listeners

    The Pragmatic Engineer by Gergely Orosz

    The Pragmatic Engineer

    63 Listeners