የተከተተ mruby 3.2 አስተርጓሚ ይገኛል።

ለተለዋዋጭ ነገር-ተኮር የፕሮግራም አወጣጥ ቋንቋ Ruby የተካተተ አስተርጓሚ ምሩቢ 3.2 መልቀቅን አስተዋወቀ። Mruby በ Ruby 3.x ደረጃ መሰረታዊ የአገባብ ተኳኋኝነትን ያቀርባል፣ ለስርዓተ ጥለት ማዛመጃ ("case .. in") ድጋፍ ካልሆነ በስተቀር። አስተርጓሚው ዝቅተኛ የማህደረ ትውስታ ፍጆታ ያለው ሲሆን የሩቢ ቋንቋ ድጋፍን ወደ ሌሎች መተግበሪያዎች በመክተት ላይ ያተኮረ ነው። በመተግበሪያው ውስጥ የተገነባው አስተርጓሚ ሁለቱንም የምንጭ ኮድ በሩቢ ቋንቋ እና በፕሮጀክቱ የተገነባውን "mrbc" አጠናቃሪ በመጠቀም የተገኘውን ባይት ኮድ ማስፈጸም ይችላል። የmruby ምንጭ ኮድ በ MIT ፈቃድ ስር ተሰራጭቷል።

አዲሱ ልቀት አስተርጓሚው ልዩ በሆነ መልኩ የሩቢ ኮድ ሲቀርጽ ወደ ቋት መጨናነቅ፣ ባዶ ጠቋሚ ክፍተቶች ወይም የማህደረ ትውስታ መዳረሻ ከነጻ በኋላ 19 ተጋላጭነቶችን ያስተካክላል።

የደህንነት ያልሆኑ ለውጦች የሚከተሉትን ያካትታሉ:

  • ስም-አልባ ክርክሮችን ለማለፍ ድጋፍ (*, **, እና)
  • ለትልቅ ኢንቲጀሮች ድጋፍ (mruby-bigint).
  • የተጠናቀሩ ሁለትዮሾችን ለማውረድ ድጋፍ ከ ".mrb" ቅጥያ ጋር።
  • በ mrbc አቀናባሪ ውስጥ ማመቻቸትን ለማሰናከል የ"--no-optimize" አማራጭን ማከል።
  • የክፍል # ንዑስ ክፍሎች እና ሞዱል # ያልተገለጹ_የምሳሌ_ዘዴዎችን በ mruby-class-ext ውስጥ መተግበር።
  • አዲስ አብሮ የተሰሩ mruby-errno፣mruby-set፣mruby-dir እና mruby-data።

ምንጭ: opennet.ru

አስተያየት ያክሉ