Franca matematikisto Fabrice Bellard, kiu fondis la projektojn QEMU kaj FFmpeg, ankaŭ kreis la plej rapidan formulon por kalkuli Pi kaj evoluigis la bildformaton.
Efektivigo de JavaScript
bench-v8 estas antaŭ la motoro
Krom la biblioteko por enigi la motoron en aplikojn, la projekto ankaŭ ofertas qjs-interpretilon, kiu povas esti uzata por ruli JavaScript-kodon de la komandlinio. Plie, la qjsc-kompililo estas disponebla, kapabla generi eligajn ruleblajn dosierojn taŭgajn por memstara ekzekuto, kiuj ne postulas eksterajn dependecojn.
Ŝlosilaj Karakterizaĵoj:
- Kompakta kaj facile integrebla en aliaj projektoj. La kodo inkluzivas nur kelkajn C-dosierojn, kiuj ne postulas eksterajn dependecojn por kunigo. La plej simpla kompilita aplikaĵo prenas ĉirkaŭ 190 KB;
- Tre alta rendimento kaj mallonga ektempo. Trapasi 56 mil ECMAScript-kongruecajn testojn daŭras ĉirkaŭ 100 sekundojn kiam ekzekutita sur ununura kerno de regula labortabla komputilo. Rultempa inicialigo prenas malpli ol 300 mikrosekundojn;
- Preskaŭ plena subteno por la specifo ES2019 kaj plena subteno por Apendico B, kiu difinas komponantojn por kongruo kun heredaj TTT-aplikoj;
- Kompleta trapaso de ĉiuj testoj de la ECMAScript Test Suite;
- Subteno por kompili Javascript-kodon en ruleblajn dosierojn sen eksteraj dependecoj;
- Rubokolektilo bazita sur referenca nombrado sen cikla purigado, kio permesis al ni atingi antaŭvideblan konduton kaj redukti memorkonsumon;
- Aro de etendaĵoj por matematikaj kalkuloj en JavaScript;
- Ŝelo por ekzekuti kodon en komandlinia reĝimo, subtenanta kuntekstan kodon reliefigon;
- Kompakta norma biblioteko kun envolvaĵoj super la C-biblioteko.
La projekto ankaŭ evoluigas tri akompanajn C-bibliotekojn implikitajn en QuickJS kaj taŭgajn por individua uzo:
- libregexp - rapida efektivigo de regulaj esprimoj, plene kongrua kun la Javascript ES 2019-specifo;
- libunicode - kompakta biblioteko por labori kun Unikodo;
- libbf - Efektivigo de arbitraj precizecaj glitkoma operacioj kaj transcendaj funkcioj kun preciza rondigo.
fonto: opennet.ru