Wanda ya kafa QEMU da FFmpeg sun buga injin JavaScript na QuickJS

Masanin lissafin Faransa Fabrice Bellard, wanda ya kafa ayyukan QEMU da FFmpeg, shi ma ya ƙirƙiri dabara mafi sauri don ƙididdige lambar Pi kuma ya haɓaka tsarin hoto. GDP, ya buga sakin farko na sabon injin JavaScript QuickJS. Injin yana da ƙarfi kuma an tsara shi don haɗawa cikin wasu tsarin. An rubuta lambar aikin a cikin C kuma an rarraba a ƙarƙashin lasisin MIT. Hakanan ana samun ginin injin, wanda aka haɗa shi cikin WebAssembly ta amfani da Emscripten kuma ya dace da aiwatarwa a cikin masu bincike.

Aiwatar da JavaScript goyon bayan Ƙayyadaddun ES2019, gami da kayayyaki, janareta asynchronous da proxies. Lissafin da ba daidai ba ana goyan bayan zaɓin fadada don JavaScript, irin su BigInt da BigFloat iri, haka nan ma'aikaci fiye da kima. Ayyukan QuickJS yana da mahimmanci fifikon akwai analogues, misali, a cikin gwaji
bench-v8 yana gaba da injin XS a 35%, DukTape fiye da ninki biyu jerryscript sau uku kuma MuJS sau bakwai.

Baya ga ɗakin karatu don shigar da injin cikin aikace-aikace, aikin kuma yana ba da fassarar qjs, wanda za'a iya amfani dashi don gudanar da lambar JavaScript daga layin umarni. Haka kuma, qjsc mai tarawa yana samuwa, yana iya samar da fayilolin aiwatar da fitarwa wanda ya dace da aiwatar da shi kaɗai wanda baya buƙatar dogaro na waje.

Babban fasali:

  • Karami da sauƙi don haɗawa cikin wasu ayyukan. Lambar ta ƙunshi ƴan fayilolin C waɗanda basa buƙatar dogaro na waje don taro. Aikace-aikacen da aka haɗa mafi sauƙi yana ɗaukar kusan 190 KB;
  • Babban aiki sosai da ɗan gajeren lokacin farawa. Wucewa gwajin dacewa ECMAScript dubu 56 yana ɗaukar kusan daƙiƙa 100 lokacin da aka aiwatar da shi akan cibiya ɗaya na PC ɗin tebur na yau da kullun. Fara lokacin gudu yana ɗaukar ƙasa da 300 microsecond;
  • Kusan cikakken goyon baya ga ƙayyadaddun ES2019 da cikakken goyan baya ga Karin Bayani na B, wanda ke ayyana abubuwan haɗin gwiwa don dacewa da aikace-aikacen gidan yanar gizo na gado;
  • Cikakkun gwaje-gwaje daga ECMAScript Test Suite;
  • Taimako don tattara lambar Javascript cikin fayilolin aiwatarwa ba tare da dogaro na waje ba;
  • Mai tara shara bisa ƙididdige ƙididdigewa ba tare da tsabtace cyclic ba, wanda ya ba mu damar cimma halayen da za a iya faɗi da kuma rage yawan ƙwaƙwalwar ajiya;
  • Saitin kari don lissafin lissafi a JavaScript;
  • Harsashi don aiwatar da lamba a cikin yanayin layin umarni, mai goyan bayan alamar yanayin mahallin;
  • Karamin daidaitaccen ɗakin karatu tare da nannade saman ɗakin karatu na C.

Har ila yau, aikin yana haɓaka ɗakunan karatu na C guda uku masu rakiyar da ke cikin QuickJS kuma sun dace da amfanin mutum:

  • libregexp - aiwatar da sauri na maganganun yau da kullun, cikakken jituwa tare da ƙayyadaddun Javascript ES 2019;
  • libunicode - ƙaramin ɗakin karatu don aiki tare da Unicode;
  • libbf - Aiwatar da madaidaicin madaidaicin ayyuka masu iyo da ayyukan wuce gona da iri tare da madaidaicin zagaye.

source: budenet.ru

Add a comment