Fabrice BΓ©lard ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π° двигатСля Π½Π° JavaScript

ЀрСнският ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊ Ѐабрис Π‘Π΅Π»Π°Ρ€Π΄, ΠΏΠΎ-извСстСн с Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° си Π²ΡŠΡ€Ρ…Ρƒ ffmpeg, qemu, tcc ΠΈ изчисляванСто Π½Π° pi, пусна QuickJS, ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π° рСализация Π½Π° JavaScript ΠΊΠ°Ρ‚ΠΎ C Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°.

  • ΠŸΠΎΡ‡Ρ‚ΠΈ напълно ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° спСцификацията ES2019.
  • Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ матСматичСски Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ.
  • Π˜Π·Π΄ΡŠΡ€ΠΆΠ° всички тСстовС Π½Π° ECMAScript Test Suite.
  • Няма зависимости ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.
  • ΠœΠ°Π»ΠΊΠΈΡΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° статично ΡΠ²ΡŠΡ€Π·Π°Π½Π°Ρ‚Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π΅ ΠΎΡ‚ 190 KiB Π½Π° x86 Π·Π° β€žΠ·Π΄Ρ€Π°Π²Π΅ΠΉ ΡΠ²ΡΡ‚β€œ.
  • Π‘ΡŠΡ€Π· ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ - ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π° 56000 100 тСста Π½Π° ECMAScript Test Suite Π·Π° ~1 сСкунди Π½Π° 300 ядро ​​на настолСн ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€. Π‘Ρ‚Π°Ρ€Ρ‚ ΠΈ стоп Ρ†ΠΈΠΊΡŠΠ» Π½Π° Π½Π°Ρ‚ΠΎΠ²Π°Ρ€Π²Π°Π½Π΅ < XNUMX Β΅s.
  • МоТС Π΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π° Javascript Π² изпълними Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π±Π΅Π· външни зависимости.
  • МоТС Π΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€Π° Javascript към WebAssembly.
  • ΠšΠΎΠ»Π΅ΠΊΡ‚ΠΎΡ€ Π·Π° Π±ΠΎΠΊΠ»ΡƒΠΊ с прСброяванС Π½Π° Ρ€Π΅Ρ„Π΅Ρ€Π΅Π½Ρ‚Π½ΠΈ Π΄Π°Π½Π½ΠΈ (Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€Π°Π½, ниска консумация Π½Π° ΠΏΠ°ΠΌΠ΅Ρ‚).
  • Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Π½Π° командния Ρ€Π΅Π΄ с Ρ†Π²Π΅Ρ‚Π½ΠΎ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€Ρ‚Π°Π²Π°Π½Π΅ Π½Π° синтаксиса.

Π‘ΠΏΠΎΡ€Π΅Π΄ тСстовС Π·Π° СфСктивност Π½Π° дискусии Π½Π° opennet.ru, скоростта Π½Π° QuickJS Π² тСстовСтС Π΅ 15-40 ΠΏΡŠΡ‚ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠ° ΠΎΡ‚ Node.js.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€