Pretty.c - C Üzerinde Script Yazımı
(github.com/aartaka)- Pretty C, C ile uyumlu yeni bir script dili olup dinamik tipleme, jenerik yineleme, kaynak takibi gibi özellikler sunuyor
- C ve tüm kütüphanelerle geriye dönük uyumluluğu koruyor
- Lua, Python, JavaScript ve Lisp'ten ilham almış
Hedefler
- C geliştiricilerine bol miktarda sözdizimsel sugar sunarak C'yi daha kolay kullanılır hale getirmek
- Lua, Python, JavaScript, Ruby gibi çeşitli dillerin yerini alabilecek nihai script dili olarak konumlanmak
- Yalnızca tek bir header dosyası ekleyerek tüm kod tabanlarını yeni başlayanlar için daha erişilebilir hale getirmek
Başlarken
- GitHub deposunu klonlayabilir veya
pretty.hdosyasını kopyalayarak kullanabilirsiniz
Sunulan kolaylıklar
Dahil edilen standart header'lar
stdbool.hiletrue,false,boolsağlanırstdint.hile sabit genişlikli tamsayı türleri sağlanıriso646.hile daha okunaklı alternatif operatörler sağlanır
Basit makrolar
max,min,len,default,limit,between,divisiblegibi makrolar sunulur
Yeni türler
string,byte,bytes,anygibi tür takma adları sunuluruchar,ushort,uint,ulonggibi tamsayı kısaltmaları sunulur
Yeni takma adlar
eq,is,bitnot,bitxorgibi operatör takma adları sunulurbelow,above,upto,downtogibi karşılaştırma operatörleri sunulureven,odd,positive,negative,zero,emptygibi sayı/veri predicate'leri sunulurnil,until,elif,ifnt,repeat,done~/~finish,passgibi takma adlar sunulur
Tür çıkarımı (GCC, Clang veya C23+)
var,let,localanahtar sözcükleri kullanılarak tür çıkarımı yapılabilir
Jenerik çıktı (C11+)
print,printlnile farklı türlerde veriler yazdırılabilir
Jenerik eşitlik (C11+)
equalile farklı türlerde veriler karşılaştırılabilir
Daha okunaklı üçlü operatör
when,then,other,otherwise,only,otherwhengibi anahtar sözcüklerle okunaklı bir üçlü operatör kullanılabilir
for makroları
foreach,forthese,fortimes,forrange,forrangebygibi makrolarla çeşitli yineleme kalıpları sunulur
Atama makroları
new,vector,deletegibi makrolarla basit bellek ayırma ve serbest bırakma işlemleri yapılabilir
Blok yardımcıları
lambda,with,defer,try,catchgibi blok yardımcıları sunulur
GN⁺ Özeti
Pretty C, C diline çeşitli sözdizimsel sugar ekleyerek geliştiricilerin daha kolay kod yazmasına yardımcı olan bir proje. Özellikle C ile geriye dönük uyumluluğu korurken Lua, Python, JavaScript gibi dillerden ilham alan çeşitli özellikler sunuyor. Bu özellikler, C geliştiricilerinin daha kısa ve daha okunaklı kod yazmasına yardımcı olabilir. Benzer işlevler sunan projeler arasında Zig ve Nim bulunuyor.
1 yorum
Hacker News görüşleri
ifnt,unlesskadar okunaklı değil