Die vrystelling van die vertaler van die programmeertaal Vala 0.56.0

'n Nuwe weergawe van die programmeertaalvertaler Vala 0.56.0 is vrygestel. Die Vala-taal is 'n objekgeoriënteerde programmeertaal wat 'n sintaksis soortgelyk aan C# of Java verskaf. Vala-kode word in 'n C-program vertaal, wat op sy beurt deur 'n standaard C-samesteller in 'n binêre lêer saamgestel word en uitgevoer word teen die spoed van 'n toepassing wat saamgestel is in objekkode van die teikenplatform. Dit is moontlik om programme in skripmodus te laat loop. Die taal word ontwikkel onder die vaandel van die GNOME-projek. Gobject (Glib Object System) word as 'n objekmodel gebruik. Die samestellerkode word onder die LGPLv2.1-lisensie versprei.

Die taal het ondersteuning vir introspeksie, lambda-funksies, koppelvlakke, afgevaardigdes en sluitings, seine en gleuwe, uitsonderings, eienskappe, nie-nul tipes, tipe inferensie vir plaaslike veranderlikes (var). Geheuebestuur word uitgevoer op grond van verwysingtelling. 'n Algemene programmeringsbiblioteek libgee is vir die taal ontwikkel, wat die vermoë bied om versamelings vir persoonlike datatipes te skep. Opsomming van versamelingselemente met behulp van die vooreke stelling word ondersteun. Programmering van grafiese programme word uitgevoer met behulp van die GTK grafiese biblioteek.

Die stel kom met 'n groot aantal bindings aan biblioteke in die taal C. Die Vala-vertaler bied ondersteuning vir die Genie-taal, wat soortgelyke vermoëns bied, maar met 'n sintaksis geïnspireer deur die Python-programmeertaal. Programme soos die Geary-e-poskliënt, die Budgie-grafiese dop, die Shotwell-foto- en videolêerorganiseringsprogram en ander is in die Vala-taal geskryf. Die taal word aktief gebruik in die ontwikkeling van die Elementary OS-verspreiding.

Belangrikste innovasies:

  • Bygevoeg ondersteuning vir die asynchrone hoof() funksie;
  • Bygevoeg ondersteuning vir geneste funksies;
  • Die formaat vir die vertoon van waarskuwings en foute tydens samestelling is verander;
  • Die vermoë om seine dinamies op te roep word verskaf;
  • Bygevoeg ondersteuning vir gedeeltelike klasse - klasse waarvan die inhoud in verskeie bronlêers geleë is;
  • Vir bindings is die vermoë om skikkinglengtetipes te spesifiseer bygevoeg. Voorheen is slegs die 32-bis heelgetaltipe toegelaat;
  • Bygevoeg ondersteuning vir die foreach operateur vir die Glib.Sequence en Glib.Array tipes;
  • Bygevoeg nuwe bindings libsoup, linux-media;
  • Tydens die oordragproses is die gnome-desktop-biblioteek verdeel in gnome-desktop-4, gnome-rr-4 en gnome-bg-4.
  • Die GNOME-programmeringshandleidings word uitgebrei met voorbeelde in Vala.
  • Bygevoeg vrystellingsnotas in Markdown-opmerktaal.
  • Opgedateerde bindings:
    • gtk4 tot weergawe 4.6.0+06ec4ec1;
    • gstreamer tot weergawe 1.21.0+ git master;
    • gio-2.0 tot weergawe 2.72;
    • glib-2.0 voor weergawe 2.72;
    • gobject-2.0 voor weergawe 2.72;
    • webkit2gtk-*.0 voor weergawe 2.35.1.

Bron: opennet.ru

Voeg 'n opmerking