QEMU sy FFmpeg Mpanorina dia namoaka QuickJS JavaScript Engine

Ilay mpahay matematika frantsay Fabrice Bellard, izay nanangana ny tetikasa QEMU sy FFmpeg, dia namorona ny raikipohy haingana indrindra amin'ny kajy ny isa Pi ary namolavola ny endrika sary. harin-karena faobe, namoaka ny famoahana voalohany ny motera JavaScript vaovao QuickJS. Ny motera dia matevina ary natao ho an'ny fampidirana amin'ny rafitra hafa. Ny fehezan-dalàna momba ny tetikasa dia voasoratra amin'ny C ary zaraina amin'ny alàlan'ny fahazoan-dàlana MIT. Misy ihany koa ny fananganana motera, natambatra ao amin'ny WebAssembly mampiasa Emscripten ary mety amin'ny famonoana amin'ny navigateur.

Fampiharana JavaScript fanohanana Famaritana ES2019, ao anatin'izany ny maody, mpamokatra asynchronous ary proxy. Ny matematika tsy manara-penitra dia azo tohanana fanitarana ho an'ny JavaScript, toy ny karazana BigInt sy BigFloat, ary koa operator overloading. Ny fahombiazan'ny QuickJS dia manan-danja ambony noho misy analogues, ohatra, amin'ny fitsapana
bench-v8 dia mialoha ny motera XS amin'ny 35%, DukTape mihoatra ny avo roa heny JerryScript in-telo ary MuJS impito.

Ho fanampin'ny tranomboky hampidirana ny motera amin'ny fampiharana, ny tetikasa dia manolotra mpandika teny qjs ihany koa, izay azo ampiasaina hampandehanana ny code JavaScript avy amin'ny tsipika baiko. Ankoatr'izay, misy ny compiler qjsc, afaka mamokatra rakitra azo tanterahana mety ho an'ny famonoana mitokana izay tsy mitaky fiankinan-doha ivelany.

Endri-javatra manan-danja:

  • Compact ary mora ampidirina amin'ny tetikasa hafa. Ny kaody dia misy rakitra C vitsivitsy izay tsy mitaky fiankinan-doha ivelany amin'ny fivoriambe. Ny fampiharana natambatra tsotra indrindra dia mila 190 KB;
  • Fampisehoana tena avo lenta ary fotoana fohy fanombohana. Maharitra 56 segondra eo ho eo ny fandehanana andrana mifanaraka amin'ny ECMAScript miisa 100 arivo rehefa vita amin'ny fototra tokana amin'ny PC desktop mahazatra. Latsaky ny 300 microseconds ny fanombohana ny fotoana;
  • Fanohanana saika feno ho an'ny famaritana ES2019 sy fanohanana feno ho an'ny Appendix B, izay mamaritra ny singa mifanaraka amin'ny rindranasa tranonkala lova;
  • Fandalovana feno ny fitsapana rehetra avy amin'ny ECMAScript Test Suite;
  • Fanohanana ny fanangonana code Javascript ho rakitra azo tanterahana tsy misy fiankinan-doha ivelany;
  • Mpanangona fako mifototra amin'ny fanisana reference tsy misy fanadiovana tsingerin-taona, izay nahafahanay nahatratra ny fitondran-tena azo tsapain-tanana sy mampihena ny fanjifana fahatsiarovana;
  • Sehatra fanitarana ho an'ny kajy matematika amin'ny JavaScript;
  • Akorandriaka ho an'ny fanatanterahana kaody amin'ny fomba andalana baiko, manohana ny fanasongadinana ny fehezan-dalàna;
  • Tranomboky manara-penitra miaraka amin'ny fonony eo ambonin'ny tranomboky C.

Ny tetikasa koa dia mamolavola tranomboky C telo miaraka amin'ny QuickJS ary mety amin'ny fampiasana tsirairay:

  • libregexp - fampiharana haingana ny fomba fiteny mahazatra, mifanaraka tanteraka amin'ny famaritana Javascript ES 2019;
  • libunicode - tranomboky mirindra miasa miaraka amin'ny Unicode;
  • libbf - Fampiharana ny fampandehanana teboka mitsingevana mazava tsara tsy ara-drariny sy ny fiasa transcendental miaraka amin'ny fihodinana marina.

Source: opennet.ru

Add a comment