Ang paglabas ng tagasalin ng programming language na Vala 0.56.0

Isang bagong bersyon ng tagasalin ng programming language na Vala 0.56.0 ang inilabas. Ang wika ng Vala ay isang object-oriented programming language na nagbibigay ng syntax na katulad ng C# o Java. Ang Vala code ay isinalin sa isang C program, na kung saan, ay pinagsama-sama ng isang karaniwang C compiler sa isang binary file at naisakatuparan sa bilis ng isang application na pinagsama-sama sa object code ng target na platform. Posibleng magpatakbo ng mga programa sa script mode. Ang wika ay binuo sa ilalim ng tangkilik ng proyekto ng GNOME. Ginagamit ang Gobject (Glib Object System) bilang object model. Ang compiler code ay ipinamahagi sa ilalim ng LGPLv2.1 na lisensya.

Ang wika ay may suporta para sa pagsisiyasat ng sarili, mga function ng lambda, mga interface, mga delegado at pagsasara, mga signal at mga puwang, mga pagbubukod, mga katangian, mga hindi null na uri, uri ng hinuha para sa mga lokal na variable (var). Ang pamamahala ng memorya ay isinasagawa batay sa pagbibilang ng sanggunian. Ang isang pangkalahatang programming library libgee ay binuo para sa wika, na nagbibigay ng kakayahang lumikha ng mga koleksyon para sa mga custom na uri ng data. Ang enumerasyon ng mga elemento ng koleksyon gamit ang foreach statement ay sinusuportahan. Ang pag-program ng mga programa ng graphics ay isinasagawa gamit ang GTK graphics library.

Ang kit ay may kasamang malaking bilang ng mga binding sa mga aklatan sa wikang C. Ang tagapagsalin ng Vala ay nagbibigay ng suporta para sa wikang Genie, na nagbibigay ng mga katulad na kakayahan, ngunit may isang syntax na inspirasyon ng Python programming language. Ang mga programa tulad ng Geary email client, ang Budgie graphical shell, ang Shotwell photo at video file organizing program, at iba pa ay nakasulat sa wikang Vala. Ang wika ay aktibong ginagamit sa pagbuo ng pamamahagi ng Elementary OS.

Mga pangunahing inobasyon:

  • Nagdagdag ng suporta para sa asynchronous main() function;
  • Nagdagdag ng suporta para sa mga nested function;
  • Ang format para sa pagpapakita ng mga babala at error sa panahon ng compilation ay binago;
  • Ang kakayahang dynamic na tumawag sa mga signal ay ibinigay;
  • Nagdagdag ng suporta para sa mga bahagyang klase - mga klase na ang mga nilalaman ay matatagpuan sa ilang mga source file;
  • Para sa mga binding, idinagdag ang kakayahang tumukoy ng mga uri ng haba ng array. Noong nakaraan, tanging ang 32-bit na uri ng integer ang pinapayagan;
  • Nagdagdag ng suporta para sa foreach operator para sa mga uri ng Glib.Sequence at Glib.Array;
  • Nagdagdag ng mga bagong binding libsoup, linux-media;
  • Sa proseso ng pag-port, nahati ang gnome-desktop library sa gnome-desktop-4, gnome-rr-4 at gnome-bg-4.
  • Ang GNOME programming manuals ay pinalawak na may mga halimbawa sa Vala.
  • Nagdagdag ng Mga Tala sa Paglabas sa Markdown markup language.
  • Na-update na mga binding:
    • gtk4 hanggang sa bersyon 4.6.0+06ec4ec1;
    • gstreamer hanggang sa bersyon 1.21.0+ git master;
    • gio-2.0 hanggang sa bersyon 2.72;
    • glib-2.0 bago ang bersyon 2.72;
    • gobject-2.0 bago ang bersyon 2.72;
    • webkit2gtk-*.0 bago ang bersyon 2.35.1.

Pinagmulan: opennet.ru

Magdagdag ng komento