Gleam

What Gleam is
Gleam is a free, open-source programming language for building type-safe systems. It compiles to Erlang abstract forms, Erlang source, and JavaScript source, running on the Erlang virtual machine or JavaScript runtimes. The language offers a practical type system, clear error messages, and no null values or exceptions. Its toolchain includes a compiler, build tool, formatter, editor integrations, and package manager. The build tool creates projects, builds and tests them, runs programs, resolves dependencies, and supports lockfiles. Gleam projects can use packages written in Gleam, Erlang, or Elixir; Elixir dependencies and source files can be compiled when Elixir is installed. JavaScript output can run in browsers or other JavaScript environments and generates TypeScript definitions. Precompiled executables are available for Linux, macOS, and Windows, with lower-level Android support. The language tour is interactive in a browser. Gleam can use Erlang and Elixir code, while Erlang provides actor-based concurrency and fault-tolerant execution.
Who it suits
Gleam suits developers building type-safe applications for Erlang or JavaScript runtimes. It is relevant to teams that need Gleam, Erlang, or Elixir package interoperability and lockfile-based dependency management.
What it does well
- Free and open source
- Erlang and JavaScript targets
- Dependency resolution and lockfiles
- Elixir interoperability
- Built-in compiler and build tool
What to know first
- No private registry authentication
- Latest minor version usually gets fixes
- Android support is lower level
Verdict
Gleam offers a complete language toolchain with Erlang and JavaScript targets, practical typing, and access to the wider BEAM package ecosystem. Check its registry-authentication and version-support limits against your development workflow.
Facts from Gleam's own pages
- Audience and use
- The FAQ describes Gleam as production-ready and says it is ready for mission-critical workloads. · gleam.run, 12 Oct 2026
- Browser learning
- The language tour is an in-browser interactive introduction that teaches the whole language. · gleam.run, 11 Oct 2026
- Concurrency
- The Erlang virtual machine provides multi-core actor-based concurrency and fault-tolerant execution for Gleam programs. · gleam.run, 12 Oct 2026
- Dependency resolution
- Yes · gleam.run, 22 Sept 2026
- Editor support
- The product site lists editor integrations among the built-in Gleam tools. · gleam.run, 12 Oct 2026
- Elixir interoperability
- Gleam’s build tool can compile Elixir dependencies and source files in a Gleam project, provided Elixir is installed. · gleam.run, 12 Oct 2026
- Interop
- Gleam can use Erlang and Elixir code, and the build tool can compile Elixir dependencies and source files in a Gleam project. · gleam.run, 11 Oct 2026
- JavaScript interoperability
- Gleam can compile to JavaScript for use in browsers or other JavaScript environments and generates TypeScript definitions. · gleam.run, 12 Oct 2026
- Lockfile support
- Yes · gleam.run, 22 Sept 2026
- Maintenance limit
- Typically, only the latest minor version receives bug fixes and security fixes. · gleam.run, 11 Oct 2026
- Maker
- The site footer credits Louis Pilfold; the opened pages do not state a headquarters or founding year. · gleam.run, 11 Oct 2026
- Operating systems
- The project provides precompiled executables for Linux, macOS, and Windows; it also makes an effort to support Android, with a lower level of support. · gleam.run, 12 Oct 2026
- Package ecosystem
- Gleam projects can use published packages written in Gleam, Erlang, or Elixir through the wider BEAM ecosystem. · gleam.run, 12 Oct 2026
- Package formats
- Gleam,Erlang/rebar3,Elixir/Mix · gleam.run, 22 Sept 2026
- Packages
- Gleam projects can use published packages written in Gleam, Erlang, or Elixir. · gleam.run, 11 Oct 2026
- Platforms
- Gleam provides precompiled executables for Linux, macOS, and Windows on aarch64 and x86_64; Android is listed among operating systems it makes an effort to support. · gleam.run, 11 Oct 2026
- Private registry auth
- No · gleam.run, 22 Sept 2026
- Production use
- The FAQ describes Gleam as production-ready and says it is ready for mission-critical workloads. · gleam.run, 11 Oct 2026
- Purpose
- Gleam is a friendly language for building type-safe systems that scale. · gleam.run, 12 Oct 2026
- Runtime
- Gleam runs on the Erlang virtual machine and JavaScript runtimes. · gleam.run, 11 Oct 2026
- Runtime targets
- Gleam compiles for the Erlang and JavaScript runtimes. · gleam.run, 12 Oct 2026
- Security
- Gleam’s documentation includes a guide to creating a software bill of materials for Gleam projects using the OSS Review Toolkit. · gleam.run, 12 Oct 2026
- Security guidance
- The documentation includes a guide to generating a software bill of materials for a Gleam project using the OSS Review Toolkit. · gleam.run, 11 Oct 2026
- Security updates
- The compatibility reference says bug fixes and security fixes typically go only to the latest minor version. · gleam.run, 12 Oct 2026
Where Gleam stands on Freedom251
- Package Managers#89 of 93