De frijlitting fan 'e oersetter fan' e programmeartaal Vala 0.54.0

In nije ferzje fan de programmeartaal oersetter Vala 0.54.0 is útbrocht. De Vala-taal is in objekt-rjochte programmeartaal dy't in syntaksis leveret dy't fergelykber is mei C # of Java. Vala-koade wurdt oerset yn in C-programma, dat op syn beurt wurdt kompilearre troch in standert C-kompiler yn in binêre bestân en útfierd mei de snelheid fan in applikaasje kompilearre yn objektkoade fan it doelplatfoarm. It is mooglik om programma's yn skriptmodus út te fieren. De taal wurdt ûntwikkele ûnder auspysjes fan it GNOME-projekt. Gobject (Glib Object System) wurdt brûkt as in objektmodel. De kompilerkoade wurdt ferspraat ûnder de LGPLv2.1-lisinsje.

De taal hat stipe foar introspection, lambda funksjes, Schnittstellen, ôffurdigen en closures, sinjalen en slots, útsûnderings, eigenskippen, non-null types, type konklúzje foar lokale fariabelen (var). Unthâldbehear wurdt útfierd op basis fan referinsjetelling. In generalisearre programmearbibleteek libgee is ûntwikkele foar de taal, dy't de mooglikheid biedt om kolleksjes te meitsjen foar oanpaste gegevenstypen. Opsomming fan kolleksje-eleminten mei help fan 'e foareach statement wurdt stipe. Programming fan grafyske programma's wurdt útfierd mei de GTK-grafykbibleteek.

De kit komt mei in grut oantal bindingen oan biblioteken yn 'e taal C. De Vala-oersetter leveret stipe foar de Genie-taal, dy't ferlykbere mooglikheden leveret, mar mei in syntaksis ynspireare troch de programmeartaal Python. Sokke programma's lykas de Geary-e-postkliïnt, de Budgie-grafyske shell, it Shotwell-foto- en fideobestânorganisaasjeprogramma, en oaren binne skreaun yn 'e Vala-taal. De taal wurdt aktyf brûkt yn 'e ûntwikkeling fan' e Elementary OS-distribúsje.

Wichtichste ynnovaasjes:

  • Stipe tafoege foar ôffurdigen mei in fariabel oantal parameters;
  • Added LIBC profyl, dat is synonym mei POSIX profyl;
  • Ferbettere generaasje yn POSIX profyl modus;
  • Tafoege de mooglikheid om te ferklearjen fariabelen dy't kin hawwe in nul wearde mei type konklúzje (var?);
  • De mooglikheid tafoege om klassen ferbean te ferklearjen foar erfenis (fersegele);
  • Tafoege feilige tagong operator oan klasse fjilden dat kin wêze nul (a.?b.?c);
  • Tastiene inisjalisaasje fan struktuerynhâld nei nul (const Foo[] BARS = { { "bar", 42}, null };);
  • De operaasje resize () is ferbean foar konstante arrays;
  • Added warskôging útfier as jo besykje te cast in funksje oprop ta void ((void) not_void_func ();
  • Fuortsmite beheining op GLib.Array elemint typen;
  • Fêste "unowned var" eigendom erfenis yn foreach () statement;
  • Bining oan webkit2gtk-4.0 is bywurke nei ferzje 2.33.3;
  • Bining oan gstreamer is bywurke nei ferzje 1.19.0+ git master;
  • Bining oan gtk4 is bywurke nei ferzje 4.5.0~e681fdd9;
  • Bining foar gtk+-3.0 is bywurke nei ferzje 3.24.29+f9fe28ce
  • Bining oan gio-2.0, glib-2.0 is bywurke nei ferzje 2.69.0;
  • Foar linux binne bindingen oan SocketCAN tafoege;
  • Fixes yn bindingen foar glib-2.0, gio-2.0, gstreamer-rtp-1.0, javascriptcoregtk-4.0, gobject-2.0, pango, linux, gsl, rest-0.7, libusb, libusb-1.0, pixman-1, webkit2gtk-web- extension-4.0, x11, zlib, gnutls;
  • Gedit-2.20 en webkit-1.0 bindingen fuortsmiten;
  • Bywurke bindingen basearre op GIR;
  • De mooglikheid om te kontrolearjen generearre C-koade is tafoege oan it testsysteem;
  • Ferbettere girparser, girwriter, valadoc, libvaladoc / girimporter;
  • De opboude flaters en tekoarten fan ferskate kompilerkomponinten binne reparearre.

Boarne: opennet.ru

Add a comment