- Pkl ("pickle" diye telaffuz edilir), yapılandırma üretmek için kullanılan bir programlama dilidir; Apple'ın kurum içinde kullandığı aracın açık kaynak haline getirilmesiyle ilk sürümü duyuruldu
-
"Programmable, Scalable, and Safe Configuration"
-
- JSON, YAML ve Property Lists gibi statik diller, karmaşıklık arttığında sınırlara ulaşır
- Pkl, statik diller ile genel amaçlı programlama dilleri arasında bir denge kurmayı hedefler
Pkl Hızlı Tur
- Geliştiricilere tanıdık gelen sözdizimi ve kolay öğrenme için sınıflar, fonksiyonlar, döngüler ve tür notasyonları gibi özellikler içerir
- Pkl dosyaları yapılandırma şemasını tanımlar ve başka yapılandırma verilerini tanımlamak için kullanılır
- Pkl programları YAML, JSON, XML gibi yaygın biçimlere kolayca dönüştürülebilir
Yerleşik doğrulama
- Veriler geçerli olmalıdır ve Pkl bunu tür notasyonlarıyla sağlar
- Tür notasyonları kısıtları tanımlayabilir; başarısız olan kısıtlar değerlendirme hatasına yol açar
Paket paylaşımı
- Pkl, paket yayımlama ve bunları projelerde bağımlılık olarak içe aktarma özelliği sunar
- GitHub sürümleri üzerinden paketler kolayca oluşturulup yayımlanabilir; bağımlılıklar da proje üzerinden yönetilebilir
Dil bağları
- Pkl, metin çıktısı olarak yapılandırma üretebilir ve başka dillere kütüphane olarak gömülebilir
- Pkl şemaları hedef dilin sınıf/yapılarına dönüştürülebilir; Swift, Go, Java ve Kotlin gibi dilleri destekler
Editör desteği
- Pkl yazma deneyimini mümkün olan en iyi hale getirmeyi hedefler
- IntelliJ eklentisi dahil olmak üzere JetBrains editörleri için zengin destek sunar
- Otomatik tamamlama, gezinme ve doğrulama gibi özellikler sağlar; ayrıca Language Server Protocol desteği planlanmaktadır
Sonraki adımlar
- Pkl hakkında ayrıntılı kılavuzlar, dil referansı ve GitHub Discussions üzerinden iletişim önerilir
- Pkl kullanım örnekleri için örnek depo, CLI indirmesi ve editör eklentisi kurulumu tavsiye edilir
GN⁺'un görüşü:
- Pkl, yapılandırma yönetiminin karmaşıklığını çözmek için geliştirilen yeni bir programlama dili olarak geliştiriciler için faydalı görünüyor
- Yerleşik doğrulama ve paket paylaşımı özellikleri, kodun yeniden kullanılabilirliğini ve bakım kolaylığını artırabilir
- Farklı dillere bağlanabilmesi ve editör desteği, Pkl'nin daha fazla geliştirme ortamında kullanılmasını sağlayarak geliştiricilerin yapılandırma yönetimini daha kolay yapmasına yardımcı olabilir
2 yorum
Ben de öyle olabilir diye düşünmüştüm ama Go binding’i varmış. Görünüşe göre Apple da Go’yu epey kullanıyor.
apple/pkl-go: Go programlama dili için Pkl binding’leri
Hacker News görüşleri
inidosyalarında ya da Windows kayıt defterinde saklanıyordu ve elle de düzenlenebiliyordu. Şimdi ise yapılandırma dosyaları üretmek için 87 MB boyutunda ikili biçimde bir programlama dili kullanmak gerekiyor; üstelik bu dili çalıştırmak için bile önce yapılandırma dosyasını elle oluşturmak gerekiyor. Gidişat böyleyse yakında, yapılandırma dosyası üreten programlama dili için 500 GB’lık bir framework gerekecek gibi görünüyor. Modern geliştiriciler sanki sorun çözmekten çok sorun üretmekle meşgul.