Aasaasaha QEMU iyo FFmpeg waxay daabacaan Matoorka JavaScript ee QuickJS

Xisaabyahan Faransiis ah Fabrice Bellard, oo mar aasaasay mashaariicda QEMU iyo FFmpeg, sidoo kale abuuray qaacidada ugu dhaqsaha badan ee xisaabinta pi oo horumariyay qaabka sawirka GDP, daabacay sii deynta ugu horeysay ee matoor cusub JavaScript QuickJS. Matoorku waa cufan oo diiradda saaraya ku-xidhka nidaamyada kale. Xeerka mashruuca wuxuu ku qoran yahay C waxaana lagu qaybiyaa shatiga MIT. Waxa kale oo la heli karaa ururinta mishiinka lagu soo ururiyey WebAssembly iyadoo la isticmaalayo Emscripten oo ku habboon in lagu fuliyo daalacashada.

Hirgelinta JavaScript taageerooyinka Qeexida ES2019, oo ay ku jiraan modules, koronto-dhaliyeyaasha asynchronous, iyo wakiillada. Xisaabta aan caadiga ahayn si ikhtiyaari ah ayaa loo taageeraa. fidinta loogu talagalay JavaScript, sida noocyada BigInt iyo BigFloat, iyo sidoo kale rarka hawlwadeenka. Marka la eego waxqabadka, QuickJS waa muhiim ka sareeya analogues jira, tusaale ahaan, imtixaanka
bench-v8 ayaa ka horreeya mishiinka XS at 35%, duktape in ka badan laba jeer jerryscript saddex jeer iyo MuJS todoba jeer.

Marka lagu daro maktabadda loogu talagalay dhejinta mishiinka codsiyada, mashruucu wuxuu sidoo kale bixiyaa turjumaanka qjs, kaas oo loo isticmaali karo in lagu socodsiiyo koodhka JavaScript ee khadka taliska. Waxaa intaa dheer, isku-duwaha qjsc waa la heli karaa, oo awood u leh inuu soo saaro faylal la fulin karo oo keli ah oo aan u baahnayn ku tiirsanaanta dibadda.

Tilmaamo waaweyn:

  • Is haysta oo sahlan in lagu dhex daro mashaariicda kale. Koodhka waxa ku jira dhawr faylal C ah oo aan u baahnayn ku tiirsanaanta dibadda si loo dhiso. Codsiga fudud ee la soo ururiyey wuxuu qaadanayaa qiyaastii 190 KB;
  • Waxqabad aad u sarreeya iyo wakhtiga bilawga hooseeya. Gudbinta 56 kun ee imtixaanada ku haboonaanta ECMAScript waxay qaadataa ilaa 100 ilbiriqsi marka lagu fuliyo hal xudun oo ah kombuyutarka caadiga ah. Bilawga Runtime wuxuu qaadanayaa in ka yar 300 microse seconds;
  • Ku dhawaad ​​taageero buuxda ee qeexitaanka ES2019 iyo taageero buuxda ee lifaaqa B, kaas oo qeexaya qaybaha ku habboonaanta codsiyada shabakadaha hore;
  • Dhamaystir dhammaan imtixaanada ka gudba ECMAScript Test Suite;
  • Taageerada ururinta koodhka Javascript ee faylasha la fulin karo iyada oo aan ku tiirsanayn dibadeed;
  • Tixraaca-tirinta qashinka iyada oo aan la nadiifin baaskiil, kaas oo u oggolaanaya habdhaqan la saadaalin karo iyo hoos u dhigista isticmaalka xusuusta;
  • Qayb ka mid ah kordhinta xisaabinta xisaabta ee luqadda JavaScript;
  • qolof loogu talagalay fulinta koodka qaabka khadka taliska ee taageera muujinta koodka;
  • Maktabadaha caadiga ah ee is haysta oo ku xidhan maktabadda C.

Mashruucu waxa kale oo uu horumariyaa sadex saaxiibo C-libraries oo ku lug leh QuickJS oo ku habboon codsi gaar ah:

  • libregexp waa dhaqan gelinta degdega ah ee tibaaxaha caadiga ah ee si buuxda ugu hoggaansamaya qeexida Javascript ES 2019;
  • libunicode - maktabad kooban oo loogu talagalay la shaqaynta Unicode;
  • libbf waa hirgelinta hawlgallo sax ah oo sabbaynaya oo aan sabab lahayn iyo wareegyada saxda ah ee hawlaha ka gudba.

Source: opennet.ru

Add a comment