Racket Programlama Dili
- Racket olgun, pratik, genişletilebilir, sağlam ve rafine bir programlama dilidir
- Racket, dil odaklı programlama (Language-Oriented Programming) yaklaşımını benimseyen bir dildir ve şu özelliklere sahiptir:
- higher-order occurrence typing desteği sunar
- belge üretimi için Scribble dilini yerleşik olarak içerir
- Datalog benzeri mantıksal programlamayı destekler
- küçük makrolardan büyük makrolara, kolay DSL yazımına ve tüm sözdizimini kapsayan desteğe kadar güçlü bir makro sistemine sahiptir
- Racket ekosistemi; yazılımlar, eğitimler ve dokümantasyon, topluluk, kitaplar, eğitim ve promosyon ürünlerinden oluşur
- Racket; NSF, DARPA, FIPSE, Exxon Foundation, Microsoft, Mozilla ve Google gibi birçok kuruluş ve kişinin desteğini almıştır
GN⁺ görüşü
- Racket’ın en büyük avantajlarından biri dil odaklı programlamayı desteklemesidir. Bu sayede alan özel dilleri (DSL) kolayca oluşturmak mümkün olur ve bu da üretkenliği artırmaya yardımcı olur
- Ancak Lisp ailesi dillerin doğası gereği çok sayıda parantez kullanılır; bu da ilk kez karşılaşanlar için okunabilirliği düşürebilir. Clojure’da olduğu gibi parantez yerine farklı sözdizimlerinin sunulması iyi olabilir
- Eğitimler ve dokümantasyon oldukça iyi durumdadır, bu da öğrenmeyi kolaylaştırır. Eğitim amaçlı da yaygın biçimde kullanılmaktadır
- Genel amaçlı bir programlama dili olarak da kullanılabilir, ancak DSL geliştirme ya da SICP gibi eğitim amaçlı kullanımda daha belirgin bir uzmanlaşması vardır. Gerçek üretim ortamlarında kullanım için ise kütüphane ekosistemi henüz yetersiz görünebilir
- Fonksiyonel dillere başlamak isteyenlere öğrenme amacıyla önerilir. Ancak profesyonel kullanımda Haskell, OCaml ve F# gibi seçenekleri değerlendirmek daha uygun olabilir
1 yorum
Hacker News görüşü
Özet:
typed/racket,racket/gui,scribble/basegibi dillerini tek bir uygulamada nasıl birleştireceği net değil. Her dili anlatan öğretici bölümler birbirinden kopuk ele alındığı için kafa karıştırıyor.#langgibi pratik projeler geliştirildiğine dair örnekler var.