Clj.rs: Clojure Rust'ta Yeniden Yazılıyor
Clojure, Java sanal makinesinde çalışan fonksiyonel bir dil. Şimdi Rust dünyasında kendi versiyonunu alıyor: Clj.rs.
Proje, Clojure'un söz dizimini ve davranışını Rust'ta sıfırdan inşa ediyor. Amacı, dinamik bir dilin esnekliğini Rust'ın hız ve güvenlik garantileriyle birleştirmek.
Neden Rust?
Clojure geliştiricileri JVM'nin ağırlığından ve başlangıç süresinden yakınırlar. Rust ise derli toplu, hızlı ve bellek açısından verimli. Clj.rs ile bir Clojure programı saniyeler yerine milisaniyede başlayabiliyor.
Teknik Yaklaşım
Proje bir REPL (etkileşimli kabuk) ve derleyici içeriyor. Clojure'un temel özellikleri, immutable veri yapıları, makrolar, lazy evaluation, Rust'ın ownership sistemi içinde yeniden tasarlanıyor. İlginç kısım: Rust'ın güvenlik kuralları, Clojure'un hata yapmaya açık kısımlarını otomatik olarak yakalıyor.
Pratik Etkisi
Bu, Clojure sevenlerin masaüstü uygulamaları, CLI araçları ve gömülü sistemler yazabilmesi anlamına geliyor. Şu an JVM gerektiren projelerde Rust'ın çalışma zamanı avantajını kullanabilirler.
Proje henüz erken aşamada ama açık kaynak. İlgilenenlerin katılımına açık.
4 yorum
jvm'nin ağırlığı gerçekten sorun ama clojure'un dinamik yapısını rust'ın statik dünyasında tam olarak yakalamak zor olabilir.
Clojure'u Rust'ta yeniden yazmak çok saçma
başarılabilir performans kazancı gerçek olacak başlangıç süresi çok kritik konular için baya fark eder
ama dinamik dilleri statik dillerde yazmak çok nadir değil, python da c'de yazılıyor mesela.