Gleam and the Quiet Rise of Typed BEAM Languages: What Elixir Developers Should Know
For years, the Erlang VM offered reliability and concurrency, but not static types. Now two answers are arriving at once. Gleam brings a fully typed language to the BEAM, while Elixir is growing a type system of its own.
Why Types on the BEAM Matter Now
The BEAM, short for the Erlang virtual machine, powers fault-tolerant systems with lightweight processes. However, Erlang and Elixir are dynamically typed. As a result, many mistakes only appear when the code runs.
That gap is exactly what Gleam targets. Its latest release I could confirm is v1.18.0 from July 29, 2026, and the language keeps shipping steadily. Meanwhile, Elixir answered on its own terms in June 2026. Both moves point the same way: more safety, checked earlier.
What Gleam Is, in Plain Terms
A Small, Typed Language
Louis Pilfold created Gleam, and its first numbered version arrived on April 15, 2019. Version 1.0 followed on March 4, 2024. The compiler is written in Rust, and it can target both the BEAM and JavaScript.
Gleam uses Hindley-Milner type inference, the same family of ideas behind OCaml. In practice, this means you rarely need to write types, because the compiler works them out. For Elixir developers, the official Gleam for Elixir users cheatsheet shows the main differences side by side. For instance, Gleam has no atoms in the Elixir sense, and it uses a Result type with Ok and Error values.
Moreover, it keeps the BEAM’s strengths. Gleam has its own OTP library, plus web tools such as Wisp, Mist and Lustre. It can also call libraries written in Gleam, Elixir and Erlang.
A Steady Release Rhythm
Gleam does not wait long between versions. Counting from the official news page, it shipped 8 releases in 2024, 8 in 2025, and 4 so far in 2026. In other words, a new version roughly every six or seven weeks.

Elixir’s Answer: Gradual Types
Elixir chose a different route. On June 3, 2026, Elixir v1.20 completed its first milestone: inferring types and gradually type-checking every Elixir program, without type annotations. The type system is built on set operations like unions and intersections, and it includes a dynamic() type for values checked at runtime.
The path took a while. The effort was announced in 2022, and v1.19 added checking for protocols and anonymous functions. The next big question, in José Valim’s words, is when Elixir will add type signatures. Notably, José also shared that Tyler Young’s team found about 500 violations in its codebase with the new release.
Two Philosophies, Side by Side
| Gleam | Elixir 1.20 | |
|---|---|---|
| Type model | Static, Hindley-Milner inference | Gradual, set-theoretic, with dynamic() |
| Annotations | Optional, inferred by the compiler | None needed yet, signatures are future work |
| Existing code | New language, new project | Checks your current code as is |
| Runs on | BEAM and JavaScript | BEAM |
| Web stack | Wisp, Mist, Lustre and others | Phoenix, Ecto, LiveView |
| Style | Small and strict, by design | Rich and flexible, with macros |
The key difference is commitment. Gleam makes the compiler the gatekeeper for everything. Elixir adds a safety net to a language that stays dynamic by design.
What the Numbers Say
Developer sentiment is a useful signal here. In the 2025 Stack Overflow Developer Survey, Rust was the most admired language at 72%. Gleam followed at 70%, with Elixir at 66% and Zig at 64%. Notably, Gleam made the list in its first appearance.

Interestingly, Gleam’s audience is not mostly Elixir developers. According to Wikipedia’s summary of Pilfold’s 2024 community survey, Gleam users overwhelmingly come from ecosystems other than Erlang and Elixir. The community is also growing: the project announced Gleam Gathering 2027 in London, following its first all-Gleam conference.
What This Means for Elixir Developers
First, you do not have to choose today. Elixir 1.20 improves your current code with no rewrite, and that is a real advantage for large codebases.
Second, Gleam is worth a weekend. Its ideas, such as exhaustive pattern matching and the Result type, may change how you design Elixir code. In addition, community packages like glixir try to bridge Gleam and Elixir OTP, although they are third-party projects with their own caveats.
Third, the trade-off is ecosystem. Phoenix, Ecto and LiveView are mature, and Gleam does not copy them. For a service where strict compile-time checks matter more than convenience, Gleam can fit. Otherwise, Elixir remains the practical default.
Finally, watch two things: Elixir’s type signatures and the maturity of Gleam’s OTP tooling.
What We Have Learned
Gleam brings Hindley-Milner type inference to the BEAM in a small, strict language that also compiles to JavaScript. It reached 1.0 in March 2024 and has kept a steady release pace, with v1.18.0 in July 2026. Elixir took a different path: v1.20, released in June 2026, now type-checks every program with inference and no annotations, with signatures planned later. Gleam earned 70% admiration in Stack Overflow’s 2025 survey, close behind Rust and ahead of Elixir at 66%, yet admiration is not adoption. For Elixir developers, the news is good either way. Your code gets safer today, and Gleam offers a stricter option when you want the compiler to enforce more.


