Lëshimi i versions eksperimental të përkthyesit të gjuhës së programimit Vala 0.51.1

Doli një version i ri i përkthyesit të gjuhës së programimit Vala 0.51.1. Gjuha Vala është një gjuhë programimi objekt-orientuar, që ofron një sintaksë të ngjashme me gjuhët C# ose Java. Modeli i objekteve përdor Gobject (Sistemi i Objëve Glib). Menaxhimi i memories bëhet nëpërmjet numërimit të referencave.

Gjuha ka mbĂ«shtetje pĂ«r introspeksion, funksione lambda, ndĂ«rfaqe, delegat dhe mbyllje, sinjale dhe vende, pĂ«rjashtime, pronĂ«, tipa jo-null dhe inferrimin e tipeve pĂ«r variablat vendas (var). ËshtĂ« zhvilluar njĂ« bibliotekĂ« programimi tĂ« pĂ«rgjithshĂ«m libgee pĂ«r gjuhĂ«n, qĂ« ofron mundĂ«sinĂ« e krijimit tĂ« koleksioneve pĂ«r tipat e tĂ« dhĂ«nave tĂ« pĂ«rdoruesit. MbĂ«shtetet enumerimi i elementeve tĂ« koleksioneve duke pĂ«rdorur operatorin foreach. Programimi i aplikacioneve grafike realizohet me bibliotekĂ«n grafike GTK+. Vjen me njĂ« sĂ«rĂ« tĂ« madhe lidhjesh me bibliotekat nĂ« gjuhĂ«n C.

Programet në gjuhën Vala përkthen në një përfaqësim në gjuhën C dhe më pas kompilohet me kompjilatorin standard për gjuhën C. Ka mundësi për të ekzekutuar programet në mënyrë skenarike. Translatori Vala mbështet gjuhën Genie, e cila ofron mundësi të ngjashme, por me një sintaksë të frymëzuar nga gjuhëprogramimi Python.

Gjuha Vala po zhvillohet nën egidën e projektit GNOME. Në Vala janë shkruar programe si klienti i postës Geary, ndërfaqja grafike Budgie, programi për menaxhimin e koleksioneve të fotografive dhe videove Shotwell dhe të tjera. Vala përdoret aktivisht në zhvillimin e komponenteve të shpërndarjes Linux Elementary OS.

Në këtë version të ri:

  • Shtuar mbĂ«shtetje pĂ«r automatikisht pĂ«rshkallĂ«zimin e tipeve (type narrowing) nĂ« shprehje; if (x is Foo){ x.SomeFooField // nuk ka nevojĂ« pĂ«r konvertim tĂ« qartĂ« tĂ« „x“ nĂ« „Foo“ }
  • Shtuar mbĂ«shtetje pĂ«r thirrjen e zinxhirĂ«ve tĂ« konstruktorĂ«ve pĂ«r shabllonĂ«t;
  • Shtuar kontrolli i versionit libvala nĂ« procesin ekzekutiv;
  • Shtuar mbĂ«shtetje pĂ«r klasat e kompresuara 'opake' (opaque);
  • Shtuar mbĂ«shtetje pĂ«r parametrat e masivizuar nĂ« konstruktorĂ«;
  • NĂ« girparser Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r delegatĂ«t anonimĂ« qĂ« nuk mbĂ«shteten nga metodat virtuale ose sinjalet;
  • JanĂ« rregulluar mangĂ«si nĂ« valadoc, libvaladoc dhe girwriter;
  • ËshtĂ« shtuar lidhja me SDL 2.x, ndĂ«rsa mbĂ«shtetja pĂ«r lidhjen e SDL 1.x Ă«shtĂ« ndĂ«rprerĂ«;
  • ËshtĂ« shtuar lidhja me Enchant 2.x;
  • ËshtĂ« eliminuar njĂ« rrjedhje kujtese gjatĂ« kopjimit tĂ« qartĂ« tĂ« arrays, pĂ«rdorimit tĂ« Glib.Value, dhe transferimit tĂ« njĂ« strukture tĂ« alokuar nĂ« 'Heap' nĂ« stack;
  • Lidhja me gdk-pixbuf-2.0 Ă«shtĂ« azhurnuar nĂ« versionin 2.42.3;
  • ËshtĂ« shtuar lidhja me funksionin getopt_long() dhe disa funksione tĂ« tjera GNU;
  • ËshtĂ« shtuar lidhja me libunwind-generic;
  • JanĂ« rregulluar lidhjet me cairo, gobject-2.0, pango, goocanvas-2.0, curses, alsa, bzlib, sqlite3, libgvc, posix, gstreamer-1.0, gdk-3.0, gdk-x11-3.0, gtk+-3.0, gtk4, fuse, libxml-2.0;
  • Lidhja me gio-2.0 Ă«shtĂ« azhurnuar nĂ« versionin 2.67.3;
  • Lidhja me gobject-2.0 Ă«shtĂ« azhurnuar nĂ« versionin 2.68;
  • Lidhja me gstreamer Ă«shtĂ« azhurnuar nĂ« versionin 1.19.0+ git master;
  • Lidhja me gtk4 Ă«shtĂ« azhurnuar nĂ« versionin 4.1.0+2712f536;
  • JanĂ« shtuar lidhjet me API-tĂ« e shprehjeve tĂ« rregullta pĂ«r POSIX, GNU dhe BSD;
  • Lidhja me webkit2gtk-4.0 Ă«shtĂ« azhurnuar nĂ« versionin 2.31.1;
  • JanĂ« rregulluar gabimet dhe mangĂ«sitĂ« e akumuluara tĂ« kompilatorit.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster