deniz.in

Piyasalar

Hava durumu

Hava durumu yükleniyor

· kaynak dev.to (home feed)

Sere, Python Sözdizimini Manuel Bellek Kontrolüyle Birleştiren Açık Kaynaklı Derlenen Dil Olarak Yayınlandı

Yeni yayınlanan açık kaynaklı dil Sere, Python tarzı sözdizimini LLVM üzerinden yerel ikili dosyalara derliyor; ham işaretçiler, sahiplik türleri ve örüntü eşleme sunuyor. Geliştiricisi dili henüz erken aşamada olarak nitelendiriyor ve geri bildirim bekliyor.

Sere, Python Sözdizimini Manuel Bellek Kontrolüyle Birleştiren Açık Kaynaklı Derlenen Dil Olarak Yayınlandı

Sere adlı yeni bir açık kaynaklı programlama dili herkese açık olarak yayınlandı; Python benzeri sözdizimini yerel derleme ve statik tip sistemi ile manuel bellek kontrolü gibi sistem düzeyindeki özelliklerle bir araya getiriyor. Dilin geliştiricisi tarafından dev.to üzerinde yayımlanan duyuru yazısına göre LLVM üzerine kurulu olan Sere, program yazmak, yerel ikili dosyalar derlemek ve kütüphaneleri paketlemek için yeterince kullanılabilir durumda; ancak geliştirici, projenin hâlâ erken aşamada olduğunu açıkça belirtiyor.

Görünüşte Python, özünde sistem dili

Yüzeysel bakıldığında Sere Python gibi okunuyor: fonksiyonlar def ile tanımlanıyor, kod blokları süslü parantez yerine girintiyle sınırlandırılıyor ve türler ayrı bildirimler olarak değil, ek notasyonlar (annotation) biçiminde yer alıyor. Duyuruda gösterilen giriş noktası, 32 bitlik bir tamsayı döndürdüğü notlandırılmış kısa bir main fonksiyonu; ayrıca yapılar (struct) hem alanlar hem de metotlar taşıyabiliyor — bu, uzunluğunun karesini hesaplayan bir metoda sahip Point türüyle gösteriliyor.

Dil ayrıca kendisine veri bağlayabilen enum'lar ve bunlar üzerinde örüntü eşleme yapmayı sağlayan match/case yapısı ile çıktı için aradeğerlendirmeli dizgiler gibi modern kolaylıklar da içeriyor.

LLVM üzerinden derleme

Kaputun altında Sere, LLVM üzerine kurulu yerel derlenen bir dil. Tek bir derleyici çağrısı kaynak dosyayı yürütülebilir bir dosyaya dönüştürüyor; ayrıca araç zinciri ara LLVM temsilini ya da üretilen assembly kodunu da çıkarabiliyor, böylece geliştiriciler derleyicinin tam olarak ne ürettiğini inceleyebiliyor. dev.to yazısına göre asıl vaat bu: okunabilir üst düzey kodun, yine de gerçek bir yerel ikili dosya olarak sonuçlanması.

Birinci sınıf bir özellik olarak bellek kontrolü

Geliştirici, Sere'nin basitçe "derleyicili Python" olmadığını açıkça belirtiyor. Dil, Unique türü üzerinden açık bir sahiplik sunuyor; sahip olunan değerleri oluşturma, başvurusunu alma ve yükleme işlemleri mevcut. Ayrıca bu düzeyde kontrole gerçekten ihtiyaç duyulan durumlar için manuel tahsis, saklama ve serbest bırakma imkânı sunan ham işaretçiler sağlıyor. Beyan edilen hedef, bir liste üzerinde gezinmenin zahmetsiz kalırken ham bir byte tamponunun elle ayrılmasının da mümkün olduğu bir dil; kodun gerektiğinde üst düzey kalması ama gerektiğinde manuel tahsise inebilmesi.

Derleyiciyle birlikte gelen araçlar

Geliştirici deneyimini sonradan düşünülen bir konu olarak ele almak yerine, yayının kendisi halihazırda sözdizimi vurgulama, tanılama, hover bilgileri, tanıma gitme (go-to-definition), yeniden adlandırma desteği, VS Code entegrasyonu ve proje derlemeleri içeriyor. Kütüphaneler .slib dosyalarına paketlenebiliyor ve özel init ve pack komutlarıyla diğer Sere projelerine aktarılabiliyor. Yerel birlikte çalışabilirlik büyük bir hedef olarak tanımlanıyor; C ve C++ interop'un planlanması, Sere'nin mevcut yerel ekosistemi yok saymak yerine onunla çalışabilmesi içindir.

Eleştiri toplamak için yayınlanan erken aşama bir proje

Duyuru, dilin olgunluğu konusunda açık sözlü: hâlâ hatalar, eksik özellikler, derleyici uç durumları ve üzerinde daha fazla çalışılması gereken ekosistem parçaları var. Geliştirici, kamuya açık yayının bu aşamada bilinçli bir tercih olduğunu söylüyor; çünkü geri bildirim, tasarım hâlâ değiştirilebilecek kadar esnekken en değerlidir. Sere'nin amacı açıkça Python'un, C++'ın ya da Rust'ın yerine geçmek değil; okunabilirlik ve kontrol arasında farklı bir dengeyi keşfetmek. Proje GitHub'da açık kaynaklı ve geliştirici, derleyiciler, LLVM, dil tasarımı ya da sistem programlama ile ilgilenen herkesin katkısını davet ediyor.

Neden önemli

Erişilebilir betik sözdizimi ile ince ayarlı yerel performans arasındaki gerilim onlarca yıldır dil tasarımını şekillendiriyor ve her yeni oyuncu bu konuda biraz farklı bir konum alıyor. Sere'nin en dikkat çekici tercihi, derleyicinin kendisiyle aynı anda editör entegrasyonundan yeniden düzenleme komutlarına ve kütüphane paketlemeye kadar gerçek araçlar sunması; bu, bu kadar genç bir dil için nadir görülen ve çoğu zaman benimsenip benimsenmeyeceğini belirleyen bir durum. Bugün kimse Sere üzerinde üretim sistemleri kurmamalı ve geliştirici de aksini iddia etmiyor. Ancak Python tarzı ergonomiyi LLVM destekli yerel çıktı ve planlanan C interop'uyla birleştiren kamuya açık, geri bildirim odaklı bir deney olarak, programlama dili tasarımını takip eden herkes için izlemeye değer bir proje.

  • #programming-languages
  • #llvm
  • #open-source
  • #compilers
  • #systems-programming

İlgili yazılar