Content deleted Content added
Add portal |
Link suggestions feature: 3 links added. |
||
Line 36:
'''Gleam''' is a [[General-purpose programming language|general-purpose]], [[concurrent computing|concurrent]], [[Functional programming|functional]] [[High-level programming language|high-level]] [[programming language]] that compiles to [[Erlang (programming language)|Erlang]] or [[JavaScript]] source code.<ref name="Homepage" /><ref>{{cite news | url=https://www.infoworld.com/article/3713460/gleam-language-available-in-first-stable-release.html | title=Gleam language available in first stable release | first=Paul | last=Krill | work=InfoWorld | date=5 March 2024 | access-date=26 March 2024}}</ref><ref name="eastman">{{cite news | url=https://thenewstack.io/introduction-to-gleam-a-new-functional-programming-language/ | title=Introduction to Gleam, a New Functional Programming Language | first=David | last=Eastman | work=The New Stack | date=2024-06-22 | access-date=2024-07-29}}</ref>
Gleam is a statically-typed language,<ref>{{cite news | url=https://www.infoq.com/news/2024/03/gleam-erlang-virtual-machine-1-0/ | title=Erlang-Runtime Statically-Typed Functional Language Gleam Reaches 1.0 | first=Sergio | last=De Simone | work=InfoQ | date=16 March 2024 | access-date=26 March 2024}}</ref> which is different from the most popular languages that run on Erlang’s virtual machine [[BEAM (Erlang virtual machine)|BEAM]], [[Erlang (programming language)|Erlang]] and [[Elixir (programming language)|Elixir]]. Gleam has its own type-safe implementation of OTP, Erlang's actor framework.<ref>{{Cite AV media |url=https://www.youtube.com/watch?v=WaHx6n2UZJg |title=Getting to know Actors in Gleam – Raúl Chouza | series=Code BEAM America | date=2024-03-27 |language=en |access-date=2024-05-06 |via=YouTube}}</ref> Packages are provided using the Hex [[package manager]], and an index for finding packages written for Gleam is available.<ref>{{Cite web |title=Introducing the Gleam package index – Gleam |url=https://gleam.run//news/introducing-the-gleam-package-index/ |access-date=2024-05-07 |website=gleam.run |language=en-GB}}</ref>
== History ==
Line 50:
Gleam has seen growing adoption in recent years, supported by an active and enthusiastic community. The language creators have placed strong emphasis on developer experience (DX), which has contributed to its appeal among functional programming enthusiasts and newcomers alike.<ref>[https://tahazsh.com/blog/why-gleam-is-good/ Why Gleam Is Good]</ref>
Although it compiles to run on the BEAM [[virtual machine]], most new Gleam users do not have a background in Erlang nor Elixir, two older BEAM languages. According to the 2024 Gleam Developer Survey<ref>[https://gleam.run/news/developer-survey-2024-results/ Gleam Developer Survey 2024 Results – Gleam website]</ref> and core team insights as presented in "Gleam's journey on the BEAM" keynote talk,<ref>[https://www.youtube.com/watch?v=6I0IbJtUC3U Gleam's Journey on the BEAM – YouTube]</ref> this trend suggests that Gleam is helping to expand the BEAM ecosystem by attracting developers from other programming communities.
Developers frequently cite Gleam’s simplicity, static typing, and user-friendly tooling as key reasons for adoption. Companies using Gleam in production environments highlight its strong developer ergonomics and maintainability. For example, the team behind Nestful described their motivations for rewriting the project in Gleam as driven by its clarity and ease of use.<ref>[https://blog.nestful.app/p/why-i-rewrote-nestful-in-gleam Why I Rewrote Nestful in Gleam – Nestful Blog]</ref> A community-maintained list of companies using Gleam in production<ref>[https://github.com/isaacharrisholt/gleam-in-production Gleam in Production – GitHub]</ref> further reflects its growing presence in real-world applications.
Line 93:
== Implementation ==
Gleam's toolchain is implemented in the [[Rust (programming language)|Rust programming language]].<ref>{{Cite web |title=gleam-lang/gleam |date=2024-05-06 |url=https://github.com/gleam-lang/gleam |access-date=2024-05-06 |publisher=Gleam}}</ref> The toolchain is a single native binary executable which contains the compiler, build tool, package manager, source code formatter, and [[Language Server Protocol|language server]]. A [[WebAssembly]] binary containing the Gleam compiler is also available, enabling Gleam code to be compiled within a [[web browser]].
== References ==
|