Proqramlaşdırma dili tərcüməçisinin buraxılışı Vala 0.56.0

Vala 0.56.0 proqramlaşdırma dili tərcüməçisinin yeni versiyası buraxıldı. Vala dili C# və ya Java ilə oxşar sintaksisi təmin edən obyekt yönümlü proqramlaşdırma dilidir. Vala kodu C proqramına tərcümə olunur ki, bu da öz növbəsində standart C kompilyatoru tərəfindən ikili faylda tərtib edilir və hədəf platformanın obyekt koduna yığılmış proqram sürətində icra olunur. Proqramları skript rejimində işlətmək mümkündür. Dil GNOME layihəsinin himayəsi altında hazırlanır. Obyekt modeli kimi Gobject (Glib Object System) istifadə olunur. Kompilyator kodu LGPLv2.1 lisenziyası altında paylanır.

Bu dil introspeksiya, lambda funksiyaları, interfeyslər, nümayəndələr və qapaqlar, siqnallar və yuvalar, istisnalar, xassələr, qeyri-null tiplər, yerli dəyişənlər üçün tip nəticəsinə malikdir (var). Yaddaşın idarə edilməsi istinadların hesablanması əsasında həyata keçirilir. Dil üçün ümumiləşdirilmiş proqramlaşdırma kitabxanası libgee hazırlanmışdır ki, bu da xüsusi məlumat növləri üçün kolleksiyalar yaratmaq imkanı verir. Foreach ifadəsindən istifadə edərək kolleksiya elementlərinin sadalanması dəstəklənir. Qrafik proqramların proqramlaşdırılması GTK qrafik kitabxanasından istifadə etməklə həyata keçirilir.

Kit C dilindəki kitabxanalara çoxlu sayda bağlama ilə gəlir.Vala tərcüməçisi oxşar imkanları təmin edən, lakin Python proqramlaşdırma dilindən ilhamlanmış sintaksislə Genie dilini dəstəkləyir. Geary e-poçt müştərisi, Budgie qrafik qabığı, Shotwell foto və video faylların təşkili proqramı və digər proqramlar Vala dilində yazılmışdır. Dil Elementary OS paylanmasının inkişafında fəal şəkildə istifadə olunur.

Əsas yeniliklər:

  • Asinxron main() funksiyası üçün əlavə dəstək;
  • İç-içə funksiyalar üçün əlavə dəstək;
  • Kompilyasiya zamanı xəbərdarlıqların və səhvlərin göstərilməsi formatı dəyişdirildi;
  • Siqnalları dinamik çağırmaq imkanı təmin edilir;
  • Qismən siniflər üçün əlavə dəstək - məzmunu bir neçə mənbə faylında yerləşən siniflər;
  • Bağlamalar üçün massiv uzunluğu növlərini təyin etmək imkanı əlavə edilmişdir. Əvvəllər yalnız 32 bitlik tam ədəd növünə icazə verilirdi;
  • Glib.Sequence və Glib.Array növləri üçün foreach operatoru üçün əlavə dəstək;
  • libsoup, linux-media üçün yeni bağlamalar əlavə edildi;
  • Daşıma prosesi zamanı gnome-desktop kitabxanası gnome-desktop-4, gnome-rr-4 və gnome-bg-4-ə bölündü.
  • GNOME proqramlaşdırma təlimatları Valadakı nümunələrlə genişləndirilir.
  • Markdown işarələmə dilində Buraxılış Qeydləri əlavə edildi.
  • Yenilənmiş bağlamalar:
    • gtk4 4.6.0+06ec4ec1 versiyasına qədər;
    • gstreamer 1.21.0+ versiyasına qədər git master;
    • gio-2.0 2.72 versiyasına qədər;
    • 2.0 versiyasından əvvəl glib-2.72;
    • gobject-2.0 2.72 versiyasından əvvəl;
    • webkit2gtk-*.0 2.35.1 versiyasından əvvəl.

Mənbə: opennet.ru

Добавить комментарий