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 by se-radio@computer.org

    Software Engineering Radio

    273 Listeners

    The Changelog: Software Development, Open Source by Changelog Media

    The Changelog: Software Development, Open Source

    288 Listeners

    Talk Python To Me by Michael Kennedy

    Talk Python To Me

    584 Listeners

    Software Engineering Daily by Software Engineering Daily

    Software Engineering Daily

    626 Listeners

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

    Syntax - Tasty Web Development Treats

    982 Listeners

    REWORK by 37signals

    REWORK

    212 Listeners

    CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

    CoRecursive: Coding Stories

    188 Listeners

    Elixir Outlaws by Elixir Outlaws

    Elixir Outlaws

    24 Listeners

    Elixir Mix by Charles M Wood

    Elixir Mix

    13 Listeners

    Thinking Elixir Podcast by ThinkingElixir.com

    Thinking Elixir Podcast

    32 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

    59 Listeners

    Elixir Mentor by Jacob Luetzow

    Elixir Mentor

    4 Listeners

    The Pragmatic Engineer by Gergely Orosz

    The Pragmatic Engineer

    62 Listeners