ИздаванС Π½Π° ΠΏΡ€Π΅Π²ΠΎΠ΄Π°Ρ‡Π° Π½Π° Π΅Π·ΠΈΠΊ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ 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 ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ са написани Π½Π° Π΅Π·ΠΈΠΊΠ° Vala. Π•Π·ΠΈΠΊΡŠΡ‚ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° дистрибуцията Π½Π° Elementary OS.

Основни ΠΈΠ½ΠΎΠ²Π°Ρ†ΠΈΠΈ:

  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π·Π° Π΄Π΅Π»Π΅Π³Π°Ρ‚ΠΈ с ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ² Π±Ρ€ΠΎΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ LIBC ΠΏΡ€ΠΎΡ„ΠΈΠ», ΠΊΠΎΠΉΡ‚ΠΎ Π΅ синоним Π½Π° POSIX ΠΏΡ€ΠΎΡ„ΠΈΠ»;
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π² Ρ€Π΅ΠΆΠΈΠΌ POSIX ΠΏΡ€ΠΎΡ„ΠΈΠ»;
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠΌΠ°Ρ‚ Π½ΡƒΠ»Π΅Π²Π° стойност с ΠΈΠ·Π²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° Ρ‚ΠΈΠΏΠ° (var?);
  • Π”ΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° класовС, Π·Π°Π±Ρ€Π°Π½Π΅Π½ΠΈ Π·Π° наслСдяванС (Π·Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½ΠΈ);
  • Π”ΠΎΠ±Π°Π²Π΅Π½ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ Π·Π° бСзопасСн Π΄ΠΎΡΡ‚ΡŠΠΏ към ΠΏΠΎΠ»Π΅Ρ‚Π°Ρ‚Π° Π½Π° класа, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ null (a.?b.?c);
  • ПозволСно ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° структурата Π΄ΠΎ null (const Foo[] BARS = { { "bar", 42 }, null };);
  • ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡΡ‚Π° resize() Π΅ Π·Π°Π±Ρ€Π°Π½Π΅Π½Π° Π·Π° постоянни масиви;
  • Π”ΠΎΠ±Π°Π²Π΅Π½ ΠΈΠ·Ρ…ΠΎΠ΄ Π·Π° ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΎΠΏΠΈΡ‚ Π·Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° функция към void ((void)not_void_func(););
  • ΠŸΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π·Π° Ρ‚ΠΈΠΏΠΎΠ²Π΅ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ GLib.Array;
  • ΠšΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½ΠΎ наслСдяванС Π½Π° собствСността β€žΠ½Π΅ΠΏΡ€ΠΈΡ‚Π΅ΠΆΠ°Π²Π°Π½ Π²Π°Ρ€β€œ Π² ΠΈΠ·Ρ€Π°Π·Π° 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;
  • Π—Π° linux са Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ ΠΎΠ±Π²ΡŠΡ€Π·Π²Π°Π½ΠΈΡ към SocketCAN;
  • ΠŸΠΎΠΏΡ€Π°Π²ΠΊΠΈ Π² ΠΎΠ±Π²ΡŠΡ€Π·Π²Π°Π½ΠΈΡ Π·Π° 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- Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΠ΅-4.0, x11, zlib, gnutls;
  • ΠŸΡ€Π΅ΠΌΠ°Ρ…Π½Π°Ρ‚ΠΎ ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅ Π½Π° gedit-2.20 ΠΈ webkit-1.0;
  • Актуализирани ΠΎΠ±Π²ΡŠΡ€Π·Π²Π°Π½ΠΈΡ, Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° GIR;
  • Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° гСнСрирания C ΠΊΠΎΠ΄ Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° към систСмата Π·Π° тСстванС;
  • ΠŸΠΎΠ΄ΠΎΠ±Ρ€Π΅Π½ girparser, girwriter, valadoc, libvaladoc/girimporter;
  • ΠšΠΎΡ€ΠΈΠ³ΠΈΡ€Π°Π½ΠΈ са Π½Π°Ρ‚Ρ€ΡƒΠΏΠ°Π½ΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΈ Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈ Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€Π°.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€