A Vala 0.56.0 programnyelvi fordító kiadása

Megjelent a Vala 0.56.0 programnyelvi fordító új verziója. A Vala nyelv egy objektum-orientált programozási nyelv, amely a C#-hoz vagy a Java-hoz hasonló szintaxist biztosít. A Vala kódot C programmá fordítják, amelyet viszont egy szabványos C fordító bináris fájllá fordít, és a célplatform objektumkódjába fordított alkalmazás sebességével hajtja végre. Lehetőség van programok futtatására script módban. A nyelvet a GNOME projekt égisze alatt fejlesztik. A Gobject (Glib Object System) objektummodellként használatos. A fordítókód LGPLv2.1 licenc alatt kerül terjesztésre.

A nyelv támogatja az introspekciót, a lambda függvényeket, az interfészek, a delegált és a lezárásokat, a jelzéseket és a helyek, a kivételeket, a tulajdonságokat, a nem null típusokat, a helyi változók típuskövetkeztetését (var). A memóriakezelés referenciaszámláláson alapul. A nyelvhez kifejlesztettek egy általánosított programozási könyvtárat, a libgee-t, amely lehetővé teszi gyűjtemények létrehozását az egyéni adattípusokhoz. A gyűjteményelemek felsorolása a foreach utasítás használatával támogatott. A grafikus programok programozása a GTK grafikus könyvtár segítségével történik.

A készlet nagyszámú kötődést tartalmaz a C nyelvű könyvtárakhoz. A Vala fordító támogatja a Genie nyelvet, amely hasonló képességekkel rendelkezik, de a Python programozási nyelv által ihletett szintaxissal. Vala nyelven készülnek olyan programok, mint a Geary email kliens, a Budgie grafikus shell, a Shotwell fotó- és videófájl-rendező program és mások. A nyelvet aktívan használják az Elementary OS disztribúció fejlesztésében.

Főbb újítások:

  • Hozzáadott támogatás az aszinkron main() függvényhez;
  • Beágyazott funkciók támogatása;
  • A fordítás során a figyelmeztetések és hibák megjelenítési formátuma megváltozott;
  • Lehetőség van a jelek dinamikus hívására;
  • Hozzáadott támogatás részleges osztályokhoz - olyan osztályokhoz, amelyek tartalma több forrásfájlban található;
  • A kötésekhez hozzáadtuk a tömbhossz-típusok megadásának lehetőségét. Korábban csak a 32 bites egész típus volt engedélyezett;
  • Hozzáadott támogatás a foreach operátorhoz a Glib.Sequence és Glib.Array típusokhoz;
  • Új kötések hozzáadva: libsoup, linux-media;
  • A portolási folyamat során a gnome-desktop könyvtár a gnome-desktop-4, a gnome-rr-4 és a gnome-bg-4 részekre lett felosztva.
  • A GNOME programozási kézikönyvek példákkal bővülnek Valában.
  • Kiadási megjegyzések hozzáadva a Markdown jelölőnyelvhez.
  • Frissített kötések:
    • gtk4 4.6.0+06ec4ec1 verzióig;
    • gstreamer 1.21.0+ verzióig git master;
    • gio-2.0 2.72-es verzióig;
    • glib-2.0 a 2.72-es verzió előtt;
    • gobject-2.0 a 2.72-es verzió előtt;
    • webkit2gtk-*.0 a 2.35.1 verzió előtt.

Forrás: opennet.ru

Hozzászólás