eqWAlizer - Scaling Erlang development at WhatsApp with static typing
summary
eqWAlizer is a type-checker for Erlang built at WhatsApp, open-sourced August 2022, and already applied to a significant portion of the codebase. It enforces specs-as-documentation, runs fast enough for editor and CI use, and supports gradual and strict modes so teams migrate module-by-module. Implementation is in Scala, uses local bidirectional type inference, occurrence typing, generics, recursive types, escape hatches and error tolerance. It complements Dialyzer, scales to very large projects, and proves practical in production.
AI-written summary · about
chapters (7)
- 0:00Introduction to Equalizer
- 1:52Engineering Culture at Meta
- 4:26The Need for Static Typing
- 6:58Timeline and Adoption
- 9:08Equalizer vs Dialyzer
- 12:03Types as Documentation
- 16:33Technical Design Choices
related talks
33mTypes and Erlang: from Dialyzer to(...)
38mLanguage Reliability Illustrated by Elixir and Erlang
52mA Backpack to Go the Extra-Functional Mile
27mBuilding Erlang with Buck2
27mBuilding Erlang with Buck2
38mErlang IDE done right
49mAn Introduction to Erlang From behind the Trenches
41mIdioms for building fault-tolerant applications with Elixir
