Ulaşım
- Adres:Batıkent Mh. 8910 Sk. 6. Etap 1H No: 18 Yeni Toki Eyyübiye / Şanlıurfa (Yeni Alım Satım Karşısı)
- Telefon:0 (545) 528 88 93
- eMail: info@alestaweb.com
Yarın Bristol'de tarihi bir gün yaşanıyor: Gleam programlama dilinin ilk konferansı, Gleam Gathering 2026, 21 Şubat 2026'da kapılarını açıyor. Peki bu dil nedir, neden Stack Overflow'da en çok beğenilen 2. dil oldu ve Alesta Web gibi modern yazılım ekipleri neden Gleam'e dikkat etmeli? Buyurun, hep birlikte inceleyelim.
Gleam, 2024 yılında ilk stabil sürümünü yayınlayan, statik tipli, fonksiyonel ve eşzamanlı (concurrent) bir programlama dilidir. Louis Pilfold tarafından geliştirilen bu dil; Erlang sanal makinesi olan BEAM üzerinde ya da doğrudan JavaScript hedefi olarak çalışabilir. Yani tek bir dil öğrenerek hem sunucu tarafı yüksek performanslı sistemler, hem de tarayıcı uygulamaları yazabiliyorsunuz.
Alesta Web bünyesindeki yazılım ekiplerinin sıklıkla sorduğu "Yeni bir dil öğrenmeye değer mi?" sorusuna Gleam için net bir cevap verebiliriz: Stack Overflow'un 2025 Geliştirici Anketi'nde 72% ile Rust'ın hemen ardından %70 beğeni oranıyla 2. sıraya giren Gleam, ankete ilk kez giren bir dil olarak bu skoru yakalamış ve tarihinin en güçlü debut performanslarından birini sergilemiştir.
Dili tanımlayan birkaç temel kelime: type-safe, scalable, friendly. GitHub'daki resmi slogan da tam olarak bu: "A friendly language for building type-safe, scalable systems." Bu friendliness (kullanıcı dostu yaklaşım) tesadüf değil; Gleam'in hata mesajları, araçları ve dökümantasyonu gerçekten yeni başlayanları düşünerek tasarlanmış.
2026'ya geldiğimizde yazılım dünyasında iki büyük baskı var: güvenlik (memory safety, type safety) ve ölçeklenebilirlik (scalability). Rust bellek güvenliğini çözüyor ama öğrenmesi zor. Go ölçeklenebilirliği çözüyor ama tip sistemi zayıf kalıyor. Elixir BEAM'in gücünü kullanıyor ama dinamik tip sistemi büyük projelerde yönetimi zorlaştırıyor.
Gleam tam bu boşluğu dolduruyor. BEAM'in 25 yıllık battle-tested fault tolerance (hata toleransı) altyapısını kullanırken, üstüne Hindley-Milner tip çıkarımı (type inference) getiriyor. Tip hatalarını runtime'da değil, compile-time'da yakalıyorsunuz. Bu, üretim sistemlerinde saatlerce debug yapmak yerine derleyicinin size "burada bir sorun var" demesi demek.
null yoktur. undefined yoktur. Bunlar modern dillerin en büyük sorun kaynaklarından ikisi. Gleam bunları dil seviyesinde ortadan kaldırarak Result ve Option tiplerini kullanır. Bu yaklaşım, alestaweb.com gibi üretim ortamlarında koşan sistemlerde "NullPointerException" türü hataların önüne geçer.
Alesta Web projelerinde de zaman zaman yaşadığımız şu senaryoyu düşünün: Bir API'den veri geliyor, veri bazen null, bazen yanlış tipte. Runtime'da patlıyor, log inceliyorsunuz, düzeltiyorsunuz. Gleam bu döngüyü kırıyor çünkü nil kavramı dilin tasarımında hiç yok.
Gleam'in tip sistemi, Elm ve Rust'tan ilham alıyor. Algebraic Data Types (ADT), parametric polymorphism ve exhaustive pattern matching destekleniyor. "Exhaustive" kelimesinin buradaki önemi şu: Bir case ifadesi yazarken tüm olası durumları kapsamazsanız, derleyici derleme aşamasında sizi uyarıyor. Hiçbir durum atlanamaz.
// Gleam - Basit Pattern Matching Örneği
pub type Shape {
Circle(Float)
Rectangle(Float, Float)
Triangle(Float, Float, Float)
}
pub fn area(shape: Shape) -> Float {
case shape {
Circle(r) -> 3.14159 *. r *. r
Rectangle(w, h) -> w *. h
Triangle(a, b, c) -> {
let s = (a +. b +. c) /. 2.0
Float.square_root(s *. (s -. a) *. (s -. b) *. (s -. c))
}
}
}
Bu kodda Triangle'ı tanımlar ama case içinde yazmayı unutursanız, Gleam derleyicisi size şöyle der: "This case expression does not have a clause for Triangle." Evet, hata mesajları bu kadar net ve açık. Bu, Alesta Web mühendislerinin code review süreçlerini önemli ölçüde kısaltabilir.
String pattern matching'de de güzel özellikler var. <> operatörü ile prefix eşleşmesi yapabilirsiniz:
// String prefix matching
pub fn greet(name: String) -> String {
case name {
"Alesta" <> rest -> "Hoş geldin, Alesta" <> rest <> "!"
_ -> "Merhaba, " <> name
}
}
BEAM (Björn's Erlang Abstract Machine), 1987'den beri geliştirilen bir sanal makine. WhatsApp milyonlarca eşzamanlı bağlantıyı BEAM üzerinde yönetiyor. Discord, Erlang/Elixir'in BEAM'ini kullanarak gerçek zamanlı iletişim altyapısını taşıyor. BEAM'in gücü şu üç özellikte toplanıyor: lightweight processes (milyonlarca eşzamanlı process), fault isolation (bir process çökerse diğerleri etkilenmiyor) ve hot code reloading (sistemi durdurmadan kod güncelleme).
Gleam, tüm bu BEAM avantajlarına sahip olmakla birlikte Erlang'ın sözlü (verbal/dynamic) tiplemesinden arınmış. Erlang kütüphanelerine doğrudan erişebilir, Elixir paketlerini kullanabilirsiniz. Bu, binlerce açık kaynak kütüphanenin hemen elinizin altında olması demek.
alestaweb.com üzerinde gerçek zamanlı bildirim, WebSocket tabanlı sohbet veya yüksek trafikli API endpoint'leri geliştirmek istediğinizde, BEAM'in concurrency modeli sizin için devreye giriyor. Gleam bu senaryolarda tip güvenliğini de beraberinde getiriyor.
// Gleam - Erlang kütüphanesi kullanımı
import gleam/erlang/process
import gleam/otp/actor
// BEAM Actor modeli ile basit bir state machine
pub fn start_counter() {
let assert Ok(subject) = actor.start(0, handle_message)
subject
}
fn handle_message(message: Int, count: Int) {
actor.continue(count + message)
}
Gleam'in ikinci derleme hedefi JavaScript. Bu, aynı Gleam kodunu hem backend (Erlang/BEAM) hem de frontend (tarayıcı veya Node.js) için kullanabileceğiniz anlamına geliyor. Bu full-stack type safety konsepti, TypeScript'in vadettiği ama tam olarak sunamadığı bir şeyi sunuyor: compile-time garantileri hem sunucuda hem istemcide aynı şekilde çalışıyor.
Gleam 1.10 ile birlikte JavaScript kod üretimi de önemli ölçüde iyileşti. Derleyici artık "Immediately Invoked Function Expressions (IIFE)" kullanımını azaltarak JavaScript çalışma zamanı performansını artırdı. Gleam'in JavaScript hedefi, özellikle Deno ve Bun gibi modern runtime'larla son derece uyumlu çalışıyor.
Gleam'in JavaScript çıktısı okunabilir ve insan tarafından anlaşılabilir temiz JavaScript üretiyor. Bu, debug süreçlerini kolaylaştırıyor ve mevcut JavaScript tooling (Webpack, Vite, ESLint) ile sorunsuz entegrasyon sağlıyor.
Gleam'in güçlü olduğu senaryolar neler? Pratikte en çok şu alanlarda öne çıkıyor:
Alesta Web ekibinin bu liste içinde en ilgisini çeken alan muhtemelen microservice mimarileri ve real-time servisler. Özellikle müşteri projelerinde gerçek zamanlı dashboard, anlık bildirim sistemi veya yüksek concurrent kullanıcı sayısına sahip API'ler geliştirirken Gleam ciddi bir alternatif haline geliyor.
21 Şubat 2026, Gleam tarihi için özel bir gün. Bristol, İngiltere'deki Origin Workspace'de düzenlenen Gleam Gathering 2026, dilin ilk resmi konferansı. Konuşmacılar arasında Gleam'in yaratıcısı Louis Pilfold ve core team üyeleri yer alıyor. Etkinlik, Gleam topluluğunun ne kadar hızlı büyüdüğünün somut bir göstergesi.
Bu tür konferanslar bir programlama dili için kritik dönüm noktalarını temsil ediyor. Go'nun 2010 yılında açık kaynak haline gelmesinden iki yıl sonra ilk GopherCon düzenlenmişti. Rust 2015'te stabilize oldu, 2016'da ilk RustConf kapılarını açtı. Gleam, 2024 stabil sürümünden yalnızca yaklaşık iki yıl sonra bu noktaya geliyor; bu son derece hızlı bir büyüme.
Alesta Web olarak bu konferansı yakından takip ediyoruz. Dil ne yöne evrileceğini konferans konuşmalarından, roadmap açıklamalarından ve topluluk tartışmalarından okumak mümkün. alestaweb.com okuyucularına bu takibi sürdürmeyi öneriyoruz.
Gleam'i denemek için kurulum son derece basit. Resmi web sitesindeki talimatları izleyerek birkaç dakikada başlayabilirsiniz.
# macOS (Homebrew)
brew install gleam
# Linux (asdf ile)
asdf plugin add gleam
asdf install gleam latest
# Windows (Scoop)
scoop install gleam
# Yeni proje oluşturma
gleam new merhaba_dunya
cd merhaba_dunya
gleam run
Gleam projesinin ana dosyası şu şekilde görünür:
// src/merhaba_dunya.gleam
import gleam/io
pub fn main() {
io.println("Merhaba, Dünya!")
io.println("Alesta Web - Modern Yazılım Çözümleri")
let sonuc = topla(3, 5)
io.debug(sonuc) // 8
}
fn topla(a: Int, b: Int) -> Int {
a + b
}
Dikkat edin: Tip bildirimleri zorunlu değil, Gleam bunları çıkarımlıyor (type inference). Ama istediğinizde açık tip bildirimi de ekleyebiliyorsunuz. Bu esneklik, dilin hem hızlı prototiplemeye hem de büyük ölçekli kod tabanlarına uyum sağlamasını mümkün kılıyor.
Gleam'i değerlendirirken en sık sorulan soru şu: "Zaten Elixir varken neden Gleam?" Bunu kısaca bir tablo formatında ele alalım:
// Özellik Karşılaştırması
+------------------+----------+---------+------+
| Özellik | Gleam | Elixir | Rust |
+------------------+----------+---------+------+
| Statik Tip | EVET | HAYIR | EVET |
| BEAM Desteği | EVET | EVET | HAYIR|
| JS Desteği | EVET | Kısmi | HAYIR|
| Öğrenme Eğrisi | Orta | Orta | Zor |
| Bellek Güvenliği | EVET | GC | EVET |
| Concurrency | BEAM | BEAM | Tokio|
| Olgunluk | Yeni | Olgun | Olgun|
+------------------+----------+---------+------+
Elixir geliştiricileri için Gleam, statik tiplemenin sağladığı güvenliği elde etmenin bir yolu. Rust geliştiricileri içinse Gleam, distributed systems dünyasına daha basit bir giriş kapısı sunuyor. Her iki kitle için de Gleam'de değer var.
Alesta Web'deki yazılım projelerinde şu gerçeği sık sık yaşıyoruz: Dinamik dillerde büyük kod tabanları büyüdükçe yönetimi zorlaşıyor. Tip güvenliği bu sorunu yapısal olarak çözüyor. Gleam, BEAM ekosisteminde bu güvenliği sunan nadir dillerden biri.
Rust ile karşılaştırıldığında Gleam, ownership ve borrowing gibi karmaşık kavramlar gerektirmiyor. Bellek yönetimi BEAM'in garbage collector'ına bırakılıyor; bu, uygulama geliştiricileri için çok daha erişilebilir bir deneyim sunuyor. Performans kritik sistem programlaması için Rust'ı seçin; yüksek eşzamanlılıklı, fault-tolerant backend servisleri için Gleam ciddi bir aday.
Gleam, 2026 itibarıyla "yakından takip edilmesi gereken diller" listesinin başına oturmuş durumda. Stack Overflow'un %70 beğeni skoru, ilk konferansının (Gleam Gathering 2026, 21 Şubat Bristol) düzenleniyor olması ve Thoughtworks Technology Radar'ın dikkatini çekmesi; bunlar tesadüf değil, sağlam bir temelin yavaş ama kararlı büyümesinin göstergeleri.
Alesta Web olarak her yeni teknolojiyi "şimdi production'a al" gözüyle değil, "bunu anlamak uzun vadede ne fark yaratır?" perspektifiyle değerlendiriyoruz. Gleam için yanıt açık: Eğer BEAM ekosistemi veya functional programming ilginizi çekiyorsa, Gleam öğrenmek için şu an harika bir zaman. Ekosistemi büyüyor, topluluk aktif, araçlar olgunlaşıyor.
Gelecek birkaç yıl içinde WebAssembly desteği geldiğinde Gleam, edge computing ve serverless dünyasında da ciddi bir oyuncu olmaya aday. alestaweb.com'u takip etmeye devam edin; Gleam'in bu yolculuğunu sizinle birlikte izlemeye devam edeceğiz.
© 2026 AlestaWeb - Alesta Web Yazılım ve Teknoloji Çözümleri. alestaweb.com