የፕሮግራም አወጣጥ ቋንቋ ተርጓሚ Vala 0.54.0 መለቀቅ

አዲሱ የፕሮግራሚንግ ቋንቋ ተርጓሚ Vala 0.54.0 ተለቋል። የቫላ ቋንቋ በነገር ላይ ያተኮረ የፕሮግራሚንግ ቋንቋ ሲሆን ከ C # ወይም Java ጋር ተመሳሳይ የሆነ አገባብ ያቀርባል። የቫላ ኮድ ወደ ሲ ፕሮግራም ተተርጉሟል ፣ እሱም በተራው ፣ በመደበኛ ሲ አጠናቅሮ ወደ ሁለትዮሽ ፋይል እና በመተግበሪያው ፍጥነት ወደ ኢላማው መድረክ የቁስ ኮድ በተጠናቀረ። በስክሪፕት ሁነታ ፕሮግራሞችን ማሄድ ይቻላል. ቋንቋው በጂኖኤምኢ ፕሮጄክት ስር እየተገነባ ነው። Gobject (Glib Object System) እንደ የነገር ሞዴል ጥቅም ላይ ይውላል። የማጠናቀሪያው ኮድ በLGPLv2.1 ፍቃድ ስር ተሰራጭቷል።

ቋንቋው ለግንዛቤ፣ ላምዳ ተግባራት፣ በይነ መጋጠሚያዎች፣ ተወካዮች እና መዝጊያዎች፣ ምልክቶች እና ክፍተቶች፣ ልዩ ሁኔታዎች፣ ንብረቶች፣ ባዶ ያልሆኑ አይነቶች፣ የአካባቢ ተለዋዋጮች አይነት (var) አይነት ድጋፍ አለው። የማህደረ ትውስታ አስተዳደር በማጣቀሻ ቆጠራ ላይ የተመሰረተ ነው. ለቋንቋው አጠቃላይ የሆነ የፕሮግራም አወጣጥ ላይብረሪ libgee ተዘጋጅቷል፣ ይህም ለብጁ የውሂብ አይነቶች ስብስቦችን የመፍጠር ችሎታ ይሰጣል። የፊት መግለጫውን በመጠቀም የመሰብሰቢያ አካላት መቁጠር ይደገፋል። የግራፊክስ ፕሮግራሞች ፕሮግራሚንግ የ GTK ግራፊክስ ቤተ-መጽሐፍትን በመጠቀም ይከናወናል.

መሣሪያው በC ቋንቋ ውስጥ ካሉ ቤተ-መጻሕፍት ጋር ብዙ ማሰሪያዎችን ይዞ ነው የሚመጣው። የቫላ ተርጓሚው ለጂኒ ቋንቋ ድጋፍ ይሰጣል፣ እሱም ተመሳሳይ ችሎታዎችን ይሰጣል፣ ነገር ግን በ Python ፕሮግራሚንግ ቋንቋ አነሳሽነት። እንደ የጌሪ ኢሜል ደንበኛ፣ የ Budgie ግራፊክ ሼል፣ የሾትዌል ፎቶ እና ቪዲዮ ፋይል አደረጃጀት ፕሮግራም እና ሌሎች በቫላ ቋንቋ የተፃፉ ፕሮግራሞች ናቸው። ቋንቋው በአንደኛ ደረጃ ስርዓተ ክወና ስርጭት እድገት ውስጥ በንቃት ጥቅም ላይ ይውላል።

ዋና ፈጠራዎች፡-

  • በተለዋዋጭ የመለኪያዎች ብዛት ለልዑካን ድጋፍ ታክሏል;
  • ከ POSIX መገለጫ ጋር ተመሳሳይ የሆነ የ LIBC መገለጫ ታክሏል;
  • በ POSIX መገለጫ ሁነታ የተሻሻለ ትውልድ;
  • ከአይነት ኢንፈረንስ (var?) ጋር ባዶ እሴት ሊኖራቸው የሚችሉ ተለዋዋጮችን የማወጅ ችሎታ ታክሏል።
  • ለውርስ የተከለከሉ ክፍሎችን የማወጅ ችሎታ ታክሏል (የታሸገ);
  • ባዶ ሊሆኑ ወደሚችሉ የክፍል መስኮች ደህንነቱ የተጠበቀ መዳረሻ ኦፕሬተር ታክሏል (a.?b.?c)።
  • የተፈቀደው የመዋቅር ይዘቶችን ማስጀመር ባዶ ይሆናል (const Foo[] BARS = { {"ባር"፣ 42 }፣ null};);
  • የመጠን () አሠራሩ ለቋሚ ድርድሮች የተከለከለ ነው;
  • የተግባር ጥሪን ወደ ባዶ (( ባዶ) not_void_func () ለማድረግ ሲሞክር የታከለ የማስጠንቀቂያ ውጤት;
  • በ GLib.Array አባል ዓይነቶች ላይ እገዳ ተወግዷል;
  • በ foreach () መግለጫ ውስጥ ቋሚ "ባለቤትነት የሌለው var" የባለቤትነት ውርስ;
  • ከ 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- ማሰሪያዎችን ማስተካከል ቅጥያ-4.0, x11, zlib, gnutls;
  • ተወግዷል gedit-2.20 እና webkit-1.0 ማሰሪያዎች;
  • በጂአይአር ላይ በመመስረት የተሻሻሉ ማሰሪያዎች;
  • የመነጨውን C ኮድ የመፈተሽ ችሎታ ወደ የሙከራ ስርዓቱ ተጨምሯል;
  • የተሻሻለ girparser, girwriter, valadoc, libvaladoc / girimporter;
  • የተለያዩ የማጠናከሪያ አካላት የተከማቹ ስህተቶች እና ድክመቶች ተስተካክለዋል.

ምንጭ: opennet.ru

አስተያየት ያክሉ