Gleam (Programmiersprache)
| Gleam | |
|---|---|
| Basisdaten | |
| Paradigmen: | funktional |
| Erscheinungsjahr: | 26. Juni 2016[1] |
| Designer: | Louis Pilfold |
| Entwickler: | Louis Pilfold |
| Aktuelle Version: | 1.13.0[2] (19. Oktober 2025) |
| Typisierung: | statisch, impliziert |
| Wichtige Implementierungen: | Rust |
| Beeinflusst von: | Erlang, Elixir, Rust, Go, OCaml, JavaScript, Elm[1] |
| Betriebssystem: | FreeBSD, Linux, macOS, OpenBSD, Windows[3] |
| Lizenz: | Apache-Lizenz, Version 2.0 |
| gleam.run | |
Gleam ist eine statisch typisierte Allzweck-Programmiersprache, entwickelt von Louis Pilfold. Sie kompiliert entweder zu Erlang (BEAM Virtuelle Maschine) oder JavaScript.[4] Durch ihre statische Typisierung hebt sie sich stark von anderen auf der BEAM Virtual Maschine basierenden Sprachen, wie Elixir und Erlang ab. Pakete werden über den Paketmanager Hex bereitgestellt.[5]
Geschichte
[Bearbeiten | Quelltext bearbeiten]Gleams erste Version (Version v0.1) erschien am 15. April 2019[6]. In der Version v0.16 wurde Support für JavaScript hinzugefügt.[7] 2023 investierte die Erlang Ecosystem Foundation in einen Kurs für Gleam auf der Plattform Exercism.[8] Die erste stabile Version 1.0 erschien am 4. März 2024.[9]
Implementation
[Bearbeiten | Quelltext bearbeiten]Gleams Compiler ist in der Programmiersprache Rust implementiert[10] und wird in einer einzelnen Datei mit den nötigen Build Tools, dem Packetmanager, dem Formatierer und dem Language Server ausgeliefert.
Beispiele
[Bearbeiten | Quelltext bearbeiten]Ein Hello World Beispiel:
import gleam/io
pub fn main() {
io.println("Hello, world!")
}
Berechnung der Fibonacci-Folge:
import gleam/int
import gleam/io
pub fn fibonacci(n: Int) -> Int {
case n {
0 -> 0
1 -> 1
_ -> fibonacci(n - 1) + fibonacci(n - 2)
}
}
pub fn main() {
io.println(int.to_string(fibonacci(10)))
}
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ a b Gleam: Past, Present, Future! • Louis Pilfold @ FOSDEM 2024. In: YouTube. 7. Februar 2024, abgerufen am 23. Oktober 2024 (englisch).
- ↑ Release v1.13.0. In: GitHub. 19. Oktober 2025, abgerufen am 1. Dezember 2025 (englisch).
- ↑ Installing Gleam. 2024.
- ↑ Paul Krill: Gleam language available in first stable release. In: Infoworld. 5. März 2024, abgerufen am 23. Oktober 2024 (englisch).
- ↑ Louis Pilfold: Introducing the Gleam package index. In: Gleam.run. 30. April 2024, abgerufen am 23. Oktober 2024 (englisch).
- ↑ Louis Pilfold: What’s Gleam? In: Gleam.run. 15. April 2019, abgerufen am 23. Oktober 2024 (englisch).
- ↑ Louis Pilfold: v0.16 - Gleam compiles to JavaScript! In: Gleam.run. 17. Juni 2021, abgerufen am 23. Oktober 2024 (englisch).
- ↑ Erlang Ecosystem Foundation Annual General Meeting December 2023 Chair’s Report. In: Google Drive. Erlang Ecosystem Foundation, 1. Dezember 2023, S. 9, abgerufen am 23. Oktober 2024 (englisch).
- ↑ Louis Pilfold: Gleam version 1. In: Gleam.run. 4. März 2024, abgerufen am 23. Oktober 2024 (englisch).
- ↑ Gleam GitHub. In: GitHub. Abgerufen am 23. Oktober 2024 (englisch).