Gleam (programming language): Difference between revisions

Content deleted Content added
Lpil (talk | contribs)
Note Gleam's type safe OTP implementation
Added a really basic history
Line 37:
'''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>
 
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 {{!}} Code BEAM America 2024 |language=en |access-date=2024-05-06 |via=www.youtube.com}}</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 ==
The first numbered version of Gleam was released on April 15, 2019.<ref>{{Cite web |title=Hello, Gleam! – Gleam |url=https://gleam.run//news/hello-gleam/ |access-date=2024-05-06 |website=gleam.run |language=en-GB}}</ref> Compiling to JavaScript was introduced with version v0.16.<ref>{{Cite web |title=v0.16 - Gleam compiles to JavaScript! – Gleam |url=https://gleam.run//news/v0.16-gleam-compiles-to-javascript/ |access-date=2024-05-07 |website=gleam.run |language=en-GB}}</ref> Version v1.0.0 was released on March 4, 2024.<ref>{{Cite web |title=Gleam version 1 – Gleam |url=https://gleam.run//news/gleam-version-1/ |access-date=2024-05-07 |website=gleam.run |language=en-GB}}</ref>
 
== Example ==
A [["Hello, World!" program|"Hello, World!"]] example:<syntaxhighlight lang="rust">
import gleam/io