Programlama dili Vala 0.56.0 çevirmeninin piyasaya sürülmesi

Programlama dili çevirmeni Vala 0.56.0'ın yeni bir sürümü yayınlandı. Vala dili, C# veya Java'ya benzer bir sözdizimi sağlayan nesne yönelimli bir programlama dilidir. Vala kodu bir C programına çevrilir, bu da standart bir C derleyicisi tarafından ikili bir dosyaya derlenir ve hedef platformun nesne koduna derlenen bir uygulamanın hızında yürütülür. Programları komut dosyası modunda çalıştırmak mümkündür. Dil, GNOME projesinin himayesinde geliştirilmektedir. Nesne modeli olarak Gobject (Glib Object System) kullanılmaktadır. Derleyici kodu LGPLv2.1 lisansı altında dağıtılmaktadır.

Dilin iç gözlem, lambda işlevleri, arayüzler, delegeler ve kapanışlar, sinyaller ve yuvalar, istisnalar, özellikler, boş olmayan türler, yerel değişkenler için tür çıkarımı (var) desteği vardır. Bellek yönetimi referans sayımına dayalı olarak gerçekleştirilir. Dil için özel veri türleri için koleksiyonlar oluşturma yeteneği sağlayan genelleştirilmiş bir programlama kütüphanesi libgee geliştirilmiştir. Koleksiyon öğelerinin foreach ifadesi kullanılarak numaralandırılması desteklenir. Grafik programlarının programlanması GTK grafik kütüphanesi kullanılarak gerçekleştirilir.

Kit, C dilindeki kitaplıklara çok sayıda bağlamayla birlikte gelir. Vala tercümanı, benzer yetenekler sağlayan ancak Python programlama dilinden ilham alan bir sözdizimine sahip olan Genie dili için destek sağlar. Geary e-posta istemcisi, Budgie grafik kabuğu, Shotwell fotoğraf ve video dosyası düzenleme programı ve diğerleri gibi programlar Vala dilinde yazılmıştır. Dil, Temel İşletim Sistemi dağıtımının geliştirilmesinde aktif olarak kullanılmaktadır.

Ana yenilikler:

  • Eşzamansız main() işlevi için destek eklendi;
  • İç içe geçmiş işlevler için destek eklendi;
  • Derleme sırasında uyarıların ve hataların görüntülenme biçimi değiştirildi;
  • Sinyalleri dinamik olarak çağırma yeteneği sağlanır;
  • Kısmi sınıflar için destek eklendi - içerikleri çeşitli kaynak dosyalarda bulunan sınıflar;
  • Bağlamalar için dizi uzunluğu türlerini belirtme yeteneği eklendi. Daha önce yalnızca 32 bitlik tam sayı türüne izin veriliyordu;
  • Glib.Sequence ve Glib.Array türleri için foreach operatörü desteği eklendi;
  • Yeni bağlamalar eklendi: libsoup, linux-media;
  • Taşıma işlemi sırasında gnome-desktop kitaplığı gnome-desktop-4, gnome-rr-4 ve gnome-bg-4'e bölündü.
  • GNOME programlama kılavuzları Vala'daki örneklerle genişletilmiştir.
  • Markdown işaretleme diline Sürüm Notları eklendi.
  • Güncellenmiş bağlamalar:
    • gtk4, 4.6.0+06ec4ec1 sürümüne kadar;
    • gstreamer 1.21.0+ git master sürümüne kadar;
    • gio-2.0'dan 2.72 sürümüne kadar;
    • glib-2.0, sürüm 2.72'den önce;
    • gobject-2.0, 2.72 sürümünden önce;
    • webkit2gtk-*.0, 2.35.1 sürümünden önce.

Kaynak: opennet.ru

DDoS korumalı siteler, VPS VDS sunucuları için güvenilir hosting satın alın 🔥 DDoS korumalı, güvenilir VPS ve VDS sunucu barındırma hizmeti satın alın | ProHoster