Π€ΡΠ΅Π½ΡΠΊΠΈΡΡ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊ Π€Π°Π±ΡΠΈΡ ΠΠ΅Π»Π°ΡΠ΄, ΠΊΠΎΠΉΡΠΎ Π½ΡΠΊΠΎΠ³Π° Π΅ ΠΎΡΠ½ΠΎΠ²Π°Π» ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠ΅ QEMU ΠΈ FFmpeg, ΠΏΡΠ±Π»ΠΈΠΊΡΠ²Π° Π°ΠΊΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΠΊΠΎΠΌΠΏΠ°ΠΊΡΠ½ΠΈΡ Π²Π³ΡΠ°Π΄Π΅Π½ JavaScript Π΄Π²ΠΈΠ³Π°ΡΠ΅Π», ΠΊΠΎΠΉΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°. QuickJS. ΠΠ²ΠΈΠ³Π°ΡΠ΅Π»ΡΡ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ° ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° ES2019 ΠΈ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·ΡΠΈΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΠΎ ΡΠΈΠΏΠΎΠ²Π΅ΡΠ΅ BigInt ΠΈ BigFloat. ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π½ΠΎΡΡΡΠ° Π½Π° QuickJS Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠ° ΠΏΡΠ΅Π²ΡΠ·Ρ
ΠΎΠΆΠ΄Π° Π½Π°Π»ΠΈΡΠ½ΠΈ Π°Π½Π°Π»ΠΎΠ·ΠΈ (XS Ρ 35%, Π΄ΡΠΊΡΠ΅ΠΉΠΏ ΠΏΠΎΠ²Π΅ΡΠ΅ ΠΎΡ Π΄Π²Π° ΠΏΡΡΠΈ jerryscript ΡΡΠΈ ΠΏΡΡΠΈ ΠΈ MuJS ΡΠ΅Π΄Π΅ΠΌ ΠΏΡΡΠΈ). ΠΡΠΎΠ΅ΠΊΡΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π·Π° Π²Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° Π΄Π²ΠΈΠ³Π°ΡΠ΅Π»Ρ, qjs ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡ Π·Π° ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° JavaScript ΠΊΠΎΠ΄ ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ ΠΈ qjsc ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΎΡ Π·Π° Π³Π΅Π½Π΅ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»Π½ΠΈ ΠΈΠ·ΠΏΡΠ»Π½ΠΈΠΌΠΈ ΡΠ°ΠΉΠ»ΠΎΠ²Π΅. ΠΠΎΠ΄ΡΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C ΠΈ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΡΠ΅ ΠΎΡ ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·Π° Π½Π° MIT. ΠΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ ΠΏΠΎΠ²Π΅ΡΠ΅ Π·Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² ΡΠ΅ΠΊΡΡΠ°. Π°Π½ΠΎΠ½Ρ Π½Π° ΠΏΡΡΠ²ΠΈΡ Π±ΡΠΎΠΉ.
ΠΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΄ΠΎΠ±Π°Π²Ρ Π΅ΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΡΠΈΠΏΠ° BigDecimal, ΠΊΠΎΠ΅ΡΠΎ Π²ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠ°ΡΠ΅ Π΄Π΅ΡΠ΅ΡΠΈΡΠ½ΠΈ ΡΠΈΡΠ»Π° Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»Π½Π° ΡΠΎΡΠ½ΠΎΡΡ (Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ Π½Π° BigInt Π·Π° ΡΠΈΡΠ»Π° Ρ ΠΎΡΠ½ΠΎΠ²Π° 10). ΠΠΊΡΡΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΎ ΠΈΠ·ΠΏΡΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠ΅ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ°. ΠΠΎΠ±Π°Π²Π΅Π½ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΈ Π·Π° Π΅ΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° ΠΠΈ Ρ ΡΠΎΡΠ½ΠΎΡΡ Π΄ΠΎ Π΅Π΄ΠΈΠ½ ΠΌΠΈΠ»ΠΈΠ°ΡΠ΄ ΡΠΈΡΠ»Π° ΡΠ»Π΅Π΄ Π΄Π΅ΡΠ΅ΡΠΈΡΠ½Π°ΡΠ° Π·Π°ΠΏΠ΅ΡΠ°Ρ (ΠΊΠ°ΡΠΎ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊ Π€Π°Π±ΡΠΈΡ ΠΠ΅Π»Π°ΡΠ΄ Π΅ ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΠΊΠ°ΡΠΎ ΡΡΠ·Π΄Π°ΡΠ΅Π» Π½Π° Π½Π°ΠΉ-Π±ΡΡΠ·Π°ΡΠ° ΡΠΎΡΠΌΡΠ»Π° Π·Π° ΠΈΠ·ΡΠΈΡΠ»ΡΠ²Π°Π½Π΅ Π½Π° ΠΠΈ).
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru