Новая вСрсия встраиваСмого JavaScript-Π΄Π²ΠΈΠΆΠΊΠ° ΠΎΡ‚ основатСля QEMU ΠΈ FFmpeg

Ѐранцузский ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊ Ѐабрис Π‘Π΅Π»Π»Π°Ρ€ (Fabrice Bellard), основавший Π² своё врСмя ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹ QEMU ΠΈ FFmpeg, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·Π²ΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΈΠΌ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½ΠΎΠ³ΠΎ встраиваСмого JavaScript-Π΄Π²ΠΈΠΆΠΊΠ° QuickJS. Π”Π²ΠΈΠΆΠΎΠΊ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ES2019 ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ матСматичСскиС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏΡ‹ BigInt ΠΈ BigFloat. По ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ QuickJS Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ прСвосходит ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈ (XS Π½Π° 35%, DukTape Π±ΠΎΠ»Π΅Π΅ Ρ‡Π΅ΠΌ Π² Π΄Π²Π° Ρ€Π°Π·Π°, JerryScript Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π°, Π° MuJS Π² сСмь Ρ€Π°Π·). ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ прСдлагаСтся Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для встраивания Π΄Π²ΠΈΠΆΠΊΠ°, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ qjs для запуска JavaScript-ΠΊΠΎΠ΄Π° ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки ΠΈ компилятор qjsc для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ самодостаточных исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ². Код написан Π½Π° Π‘ΠΈ ΠΈ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² тСкстС анонса ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ выпуска.

Π’ Π½ΠΎΠ²ΠΎΠΉ вСрсии Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΊΡΠΏΠ΅Ρ€ΠΈΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ‚ΠΈΠΏΠ° BigDecimal, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π³ΠΎ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ дСсятичными числами с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ (Π°Π½Π°Π»ΠΎΠ³ BigInt для чисСл с основаниСм 10). ОбновлСна рСализация ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ². Π”ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для эффСктивного расчёта числа Пи с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ Π΄ΠΎ ΠΌΠΈΠ»Π»ΠΈΠ°Ρ€Π΄Π° чисСл послС запятой (ΠΊΠ°ΠΊ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊ, Ѐабрис Π‘Π΅Π»Π»Π°Ρ€ извСстСн ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΡŒ самой быстрой Ρ„ΠΎΡ€ΠΌΡƒΠ»Ρ‹ вычислСния числа Пи).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ