Saadaval on sisseehitatud mruby 3.2 tõlk

Tutvustas dünaamilise objektorienteeritud programmeerimiskeele Ruby manustatud interpretaatorit mruby 3.2. Mruby tagab põhilise süntaksi ühilduvuse Ruby 3.x tasemel, välja arvatud mustrite sobitamise tugi ("case .. in"). Tõlkil on vähe mälu ja see on keskendunud Ruby keele toe manustamisele teistesse rakendustesse. Rakendusse sisseehitatud tõlk suudab käivitada nii rubykeelse lähtekoodi kui ka projekti poolt välja töötatud kompilaatori mrbc abil saadud baitkoodi. Mruby lähtekoodi levitatakse MIT-i litsentsi all.

Uus väljalase parandab 19 haavatavust, mis võivad põhjustada puhvri ületäitumist, nullkursori viiteid või mälule juurdepääsu pärast vabastamist, kui tõlk töötleb spetsiaalselt vormindatud Ruby koodi.

Turvalisusega mitteseotud muudatused hõlmavad järgmist:

  • Anonüümsete argumentide edastamise tugi (*, **, &),
  • Suurte täisarvude tugi (mruby-bigint).
  • Kompileeritud binaarfailide allalaadimise tugi laiendiga ".mrb".
  • Suvandi "--no-optimize" lisamine optimeerimise keelamiseks mrbc-kompilaatoris.
  • Meetodite Class#subclasses ja Module#undefined_instance_methods juurutamine failis mruby-class-ext.
  • Uued sisseehitatud teegid mruby-errno, mruby-set, mruby-dir ja mruby-data.

Allikas: opennet.ru

Lisa kommentaar