ИзданиС Π½Π° ΠΏΡ€Π΅Π²Π΅Π΄ΡƒΠ²Π°Ρ‡ΠΎΡ‚ Π½Π° програмскиот јазик Vala 0.54.0

ОбјавСна Π΅ Π½ΠΎΠ²Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° Π½Π° ΠΏΡ€Π΅Π²Π΅Π΄ΡƒΠ²Π°Ρ‡ΠΎΡ‚ Π½Π° програмски Ρ˜Π°Π·ΠΈΡ†ΠΈ Vala 0.54.0. ΠˆΠ°Π·ΠΈΠΊΠΎΡ‚ Vala Π΅ ΠΎΠ±Ρ˜Π΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ програмски јазик кој ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° синтакса слична Π½Π° C# ΠΈΠ»ΠΈ Java. ΠšΠΎΠ΄ΠΎΡ‚ Vala Π΅ ΠΏΡ€Π΅Π²Π΅Π΄Π΅Π½ Π²ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° C, која, ΠΏΠ°ΠΊ, сС ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π° ΠΎΠ΄ ΠΎΠ±ΠΈΡ‡Π΅Π½ C ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ Π²ΠΎ Π±ΠΈΠ½Π°Ρ€Π½Π° Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠ° ΠΈ сС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π° со Π±Ρ€Π·ΠΈΠ½Π° Π½Π° Π°ΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΡ˜Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»ΠΈΡ€Π°Π½Π° Π²ΠΎ ΠΎΠ±Ρ˜Π΅ΠΊΡ‚Π½ΠΈΠΎΡ‚ ΠΊΠΎΠ΄ Π½Π° Ρ†Π΅Π»Π½Π°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°. МоТно Π΅ Π΄Π° сС ΠΈΠ·Π²Ρ€ΡˆΡƒΠ²Π°Π°Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ Π²ΠΎ Ρ€Π΅ΠΆΠΈΠΌ Π½Π° скрипта. ΠˆΠ°Π·ΠΈΠΊΠΎΡ‚ Π΅ Ρ€Π°Π·Π²ΠΈΠ΅Π½ ΠΏΠΎΠ΄ покровитСлство Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΡ‚ GNOME. Gobject (Glib Object System) сС користи ΠΊΠ°ΠΊΠΎ ΠΎΠ±Ρ˜Π΅ΠΊΡ‚ ΠΌΠΎΠ΄Π΅Π». ΠšΠΎΠ΄ΠΎΡ‚ Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚ сС дистрибуира ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Ρ†Π°Ρ‚Π° LGPLv2.1.

ΠˆΠ°Π·ΠΈΠΊΠΎΡ‚ ΠΈΠΌΠ° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° ΠΈΠ½Ρ‚Ρ€ΠΎΡΠΏΠ΅ΠΊΡ†ΠΈΡ˜Π°, Π»Π°ΠΌΠ±Π΄Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΈΠ½Ρ‚Π΅Ρ€Ρ„Π΅Ρ˜ΡΠΈ, Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΈ ΠΈ Π·Π°Ρ‚Π²ΠΎΡ€Π°Ρ‡ΠΈ, сигнали ΠΈ слотови, исклучоци, ΡΠ²ΠΎΡ˜ΡΡ‚Π²Π°, Ρ‚ΠΈΠΏΠΎΠ²ΠΈ ΠΊΠΎΠΈ Π½Π΅ сС Π½ΡƒΠ»Π°, Π·Π°ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°ΡšΠ΅ Π½Π° Ρ‚ΠΈΠΏΠΎΡ‚ Π·Π° Π»ΠΎΠΊΠ°Π»Π½ΠΈ ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ (var). Π£ΠΏΡ€Π°Π²ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ со ΠΌΠ΅ΠΌΠΎΡ€ΠΈΡ˜Π°Ρ‚Π° сС заснова Π½Π° Π±Ρ€ΠΎΠ΅ΡšΠ΅ Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ†ΠΈ. Π—Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ Π΅ Ρ€Π°Π·Π²ΠΈΠ΅Π½Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ‡ΠΊΠ°Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°ΡšΠ΅ libgee, која ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° моТност Π·Π° ΠΊΡ€Π΅ΠΈΡ€Π°ΡšΠ΅ ΠΊΠΎΠ»Π΅ΠΊΡ†ΠΈΠΈ Π·Π° сопствСни Ρ‚ΠΈΠΏΠΎΠ²ΠΈ Π½Π° ΠΏΠΎΠ΄Π°Ρ‚ΠΎΡ†ΠΈ. ΠŸΠΎΠ΄Π΄Ρ€ΠΆΠ°Π½ΠΎ Π΅ Π΄Π° сС Π½Π°Π±Ρ€ΠΎΡ˜ΡƒΠ²Π°Π°Ρ‚ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ Π·Π° ΡΠΎΠ±ΠΈΡ€Π°ΡšΠ΅ ΠΊΠΎΡ€ΠΈΡΡ‚Π΅Ρ˜ΡœΠΈ ја ΠΈΠ·Ρ˜Π°Π²Π°Ρ‚Π° foreach. Π“Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ сС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½ΠΈ со помош Π½Π° Π³Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠ°Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° GTK.

ΠšΠΎΠΌΠΏΠ»Π΅Ρ‚ΠΎΡ‚ Π΄ΠΎΠ°Ρ“Π° со Π³ΠΎΠ»Π΅ΠΌ Π±Ρ€ΠΎΡ˜ Π²Ρ€Π·ΡƒΠ²Π°ΡšΠ° Π·Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ C. ΠŸΡ€Π΅Π²Π΅Π΄ΡƒΠ²Π°Ρ‡ΠΎΡ‚ Vala Π³ΠΎ ΠΏΠΎΠ΄Π΄Ρ€ΠΆΡƒΠ²Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ Genie, кој ΠΎΠ±Π΅Π·Π±Π΅Π΄ΡƒΠ²Π° слични карактСристики, Π½ΠΎ со синтакса инспирирана ΠΎΠ΄ програмскиот јазик Python. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ‚Π΅ ΠΊΠ°ΠΊΠΎ ΡˆΡ‚ΠΎ сС ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΡ‚ Π·Π° ΠΏΠΎΡˆΡ‚Π° Geary, Π³Ρ€Π°Ρ„ΠΈΡ‡ΠΊΠ°Ρ‚Π° школка Budgie, ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΡ‚ Π½Π° Ρ„ΠΎΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ Π΄Π°Ρ‚ΠΎΡ‚Π΅ΠΊΠΈ Shotwell ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ сС напишани Π½Π° Ρ˜Π°Π·ΠΈΠΊΠΎΡ‚ Π’Π°Π»Π°. ΠˆΠ°Π·ΠΈΠΊΠΎΡ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ сС користи Π²ΠΎ Ρ€Π°Π·Π²ΠΎΡ˜ΠΎΡ‚ Π½Π° Π΄ΠΈΡΡ‚Ρ€ΠΈΠ±ΡƒΡ†ΠΈΡ˜Π°Ρ‚Π° Π½Π° Elementary OS.

Π“Π»Π°Π²Π½ΠΈΡ‚Π΅ ΠΈΠ½ΠΎΠ²Π°Ρ†ΠΈΠΈ:

  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡˆΠΊΠ° Π·Π° Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΈ со ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ² Π±Ρ€ΠΎΡ˜ Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ;
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ LIBC ΠΏΡ€ΠΎΡ„ΠΈΠ», кој Π΅ синоним Π·Π° POSIX ΠΏΡ€ΠΎΡ„ΠΈΠ»;
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°ΡšΠ΅ Π²ΠΎ Ρ€Π΅ΠΆΠΈΠΌ Π½Π° ΠΏΡ€ΠΎΡ„ΠΈΠ» Π½Π° POSIX;
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ моТност Π·Π° Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€Π°ΡšΠ΅ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° ΠΈΠΌΠ°Π°Ρ‚ Π½ΡƒΠ»Π° врСдност со типско Π·Π°ΠΊΠ»ΡƒΡ‡ΡƒΠ²Π°ΡšΠ΅ (var?);
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½Π° Π΅ моТност Π΄Π° сС прогласат класи Π·Π°Π±Ρ€Π°Π½Π΅Ρ‚ΠΈ Π·Π° Π½Π°ΡΠ»Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ (Π·Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π΅Π½ΠΈ);
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π·Π° Π±Π΅Π·Π±Π΅Π΄Π΅Π½ пристап Π²ΠΎ ΠΏΠΎΠ»ΠΈΡšΠ°Ρ‚Π° Π½Π° класата ΠΊΠΎΠΈ ΠΌΠΎΠΆΠ°Ρ‚ Π΄Π° Π±ΠΈΠ΄Π°Ρ‚ Π½ΡƒΠ»Π° (a.?b.?c);
  • Π”ΠΎΠ·Π²ΠΎΠ»Π΅Π½ΠΎ Π΅ Π΄Π° сС ΠΈΠ½ΠΈΡ†ΠΈΡ˜Π°Π»ΠΈΠ·ΠΈΡ€Π° содрТината Π½Π° структуритС Π²ΠΎ Π½ΡƒΠ»Π° (const Foo[] BARS = { { "bar", 42 }, null };);
  • Π—Π° ΠΏΠΎΡΡ‚ΠΎΡ˜Π°Π½ΠΈ Π½ΠΈΠ·ΠΈ, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ˜Π°Ρ‚Π° resize() Π΅ Π·Π°Π±Ρ€Π°Π½Π΅Ρ‚Π°;
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ΠΎ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅Π΄ΡƒΠ²Π°ΡšΠ΅ ΠΊΠΎΠ³Π° сС ΠΎΠ±ΠΈΠ΄ΡƒΠ²Π°Ρ‚Π΅ Π΄Π° испратитС ΠΏΠΎΠ²ΠΈΠΊ Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡ˜Π° Π½Π° void ((void)not_void_func();
  • ΠžΡ‚ΡΡ‚Ρ€Π°Π½Π΅Ρ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΡƒΠ²Π°ΡšΠ΅ Π½Π° Ρ‚ΠΈΠΏΠΎΠ²ΠΈΡ‚Π΅ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ GLib.Array;
  • ΠŸΠΎΠΏΡ€Π°Π²Π΅Π½ΠΎ наслСдство Π½Π° сопствСност Π½Π° β€žΠ½Π΅ΠΏΠΎΡΠ΅Π±Π΅Π½ varβ€œ Π²ΠΎ ΠΈΠ·Ρ˜Π°Π²Π°Ρ‚Π° foreach();
  • Π’Ρ€Π·ΡƒΠ²Π°ΡšΠ΅ Π·Π° webkit2gtk-4.0 Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½ΠΎ Π½Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° 2.33.3;
  • Π’Ρ€Π·ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π·Π° gstreamer Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½ΠΎ Π½Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°Ρ‚Π° 1.19.0+ git master;
  • Π’Ρ€Π·ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π·Π° gtk4 Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½ΠΎ Π½Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°Ρ‚Π° 4.5.0~e681fdd9;
  • Π’Ρ€Π·ΡƒΠ²Π°ΡšΠ΅Ρ‚ΠΎ Π·Π° gtk+-3.0 Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½ΠΎ Π½Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π°Ρ‚Π° 3.24.29+f9fe28ce
  • Π’Ρ€Π·ΡƒΠ²Π°ΡšΠ΅ Π·Π° gio-2.0,glib-2.0 Π°ΠΆΡƒΡ€ΠΈΡ€Π°Π½ΠΎ Π½Π° Π²Π΅Ρ€Π·ΠΈΡ˜Π° 2.69.0;
  • Π”ΠΎΠ΄Π°Π΄Π΅Π½ΠΈ врски Π·Π° SocketCAN Π·Π° Linux;
  • ΠŸΠΎΠΏΡ€Π°Π²Π΅Π½ΠΈ сС ΠΏΠΎΠ²Ρ€Π·ΡƒΠ²Π°ΡšΠ°Ρ‚Π° со 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, webkit2gt-we Π΅ΠΊΡΡ‚Π΅Π½Π·ΠΈΡ˜Π°-4.0, x11, zlib, gnutls;
  • ΠžΡ‚ΡΡ‚Ρ€Π°Π½Π΅Ρ‚ΠΈ gedit-2.20 ΠΈ webkit-1.0 врски;
  • АТурирани врски Π²Ρ€Π· основа Π½Π° GIR;
  • ΠœΠΎΠΆΠ½ΠΎΡΡ‚Π° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½ΠΈΠΎΡ‚ C-ΠΊΠΎΠ΄ Π΅ Π΄ΠΎΠ΄Π°Π΄Π΅Π½Π° Π²ΠΎ систСмот Π·Π° Ρ‚Π΅ΡΡ‚ΠΈΡ€Π°ΡšΠ΅;
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ girparser, girwriter, valadoc, libvaladoc/girimporter;
  • ΠŸΠΎΠΏΡ€Π°Π²Π΅Π½ΠΈ Π°ΠΊΡƒΠΌΡƒΠ»ΠΈΡ€Π°Π½ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ нСдостатоци Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠ°Ρ˜Π»Π΅Ρ€ΠΎΡ‚.

Π˜Π·Π²ΠΎΡ€: opennet.ru

Π”ΠΎΠ΄Π°Π΄Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€