The Gleam programming language was created by Louis Pilfold and first released on April 24, 2022.
Gleam is a functional programming language used to build type-safe, scalable systems. Its compiler is written in Rust, and its syntax resembles a mix of Elm and Rust. It compiles to Erlang and JavaScript and has straightforward interop with other BEAM languages like Erlang, Elixir, and LFE.
All data structures in Gleam are immutable and implemented using structural sharing so that they can be efficiently updated. Type safe message passing is implemented in Gleam as a set of libraries, rather than being part of the language itself. This allows programmers to write safe concurrent programs that make use of Erlang's OTP framework while not being locked into one specific approach to typing message passing.
Alpaca and Caramel are similar to Gleam in that both are statically typed languages for the Erlang virtual machine, and inspired by the ML family of languages.
Although Gleam was written in Rust, they are very different languages. Rust is a low-level programming language, while Gleam is a very high-level language. Rust is a hybrid functional and imperative language that makes heavy use of mutable state, while Gleam is a functional language where everything is immutable. Rust compiles to native code, while Gleam runs on the Erlang VM and JavaScript runtimes. Rust is a much larger and more difficult language than Gleam, which was designed to be easy to learn. It is expected that a future release of Gleam will be written in Gleam.
This portion of our web guide focuses on the Gleam programming language, so online resources relating to the language, including compilers, interpreters, editors, IDEs, or other utilities designed to facilitate programming in Gleam, as well as Gleam tutorials, guides, or forums.
 
 
Recommended Resources
A Tutorial Introduction to Gleam
Written by Dusty Phillips, a Canadian author and software developer, this is a tutorial on Gleam, a programming language that compiles to JavaScript and Erlang. This is part one of a comprehensive introduction and guide to the language, with a second part available through the "Next" button at the bottom of the page. The first page explores the basic features of Gleam, while the second explores looping in Gleam, as Gleam doesn't have looping constructs.
https://dusty.phillips.codes/2022/04/17/a-tutorial-introduction-to-gleam-part-1/
Devtalk is a developer forum that provides a platform for developers to discuss various programming languages and technologies, as well as resources to help improve the lives of professional developers. Several Devtalk forum threads discussing the Gleam programming language or other topics related to Gleam are featured here, including official announcements from the Gleam development team along with schedules of events around the world related to the language.
https://devtalk.com/gleam
Gleam is a statically typed language for the Erlang virtual machine and JavaScript. GitHub is a hosting platform for software developers that allows for the creation of unlimited public and private repositories for free, with additional features available for a fee. This is the GitHub repository for the Gleam programming language. It includes the main repository for Gleam, a collection of Gleam libraries and projects, the Gleam standard library, the organizational page, and release history.
https://github.com/gleam-lang/
Hosted on GitHub, this page features the Gleam programming language, a friendly language for building type-safe, scalable systems, and compiles to Erlang. Included is an introduction to the language, including its characteristics, limitations, and opportunities to make contributions to it, as well as a sample "Hello Data" program written in Gleam, and other code examples. Links to discussions of the language are also provided, along with links to other resources.
https://github.com/human154/gleam-book
Designed to build type-safe, scalable systems, Gleam builds on top of the Erlang virtual machine, taking advantage of the Erlang runtime while adding no overhead of its own. In addition, Gleam code can be used by programmers of other BEAM languages, either by making use of libraries written in Gleam, or by adding Gleam modules to their existing projects. An overview of the program, documentation, the Gleam community, and links to the source code on GitHub is provided.
https://gleam.run/
This is the webpage for Louis Pilford, a software engineer who writes code in many languages. He maintains and contributes to several open-source projects in the Erlang ecosystem and beyond, including the Elixir programming language. He is also developing the Gleam programming language. His site discusses several of his projects and activities, as well as his work on the Gleam programming language, and includes a schedule of upcoming and past speaking engagements.
https://lpil.uk/
SourceForge is a web-based service offering free hosting for open-source software development projects. This section of the site is a mirror of the Gleam project, a programming language for building type-safe, scalable systems. Hosted on SourceForge, the mirror is an exact copy of the Gleam project hosted on GitHub, so the latest version of Glame may be downloaded from the mirror. A description and a list of features for Gleam are included, along with project samples.
https://sourceforge.net/projects/gleam.mirror/