Π£Ρ‚Π²Π΅Ρ€ΠΆΠ΄Ρ‘Π½ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ JavaScript-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Bun Π½Π° язык Rust

Π”ΠΆΠ°Ρ€Ρ€Π΅Π΄ Π‘Π°ΠΌΠ½Π΅Ρ€ (Jarred Sumner), ΡΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΡŒ ΠΈ основной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ сСрвСрной JavaScript-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Bun, ΠΏΡ€ΠΈΠ·Π½Π°Π» ΡƒΡΠΏΠ΅ΡˆΠ½Ρ‹ΠΌ экспСримСнт ΠΏΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΡ‹Π²Π°Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с языка Zig ΠΈ Rust ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ AI-ассистСнта Claude Code, ΠΈ принял Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π΅ Bun Π½Π° язык Rust. ΠŸΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Π½Π½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π½Π° языкС Rust ΡƒΠΆΠ΅ принят Π² основной Ρ€Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π° ΠΊΠΎΠ΄ Π½Π° языкС Zig Π½Π°ΠΌΠ΅Ρ‡Π΅Π½ ΠΊ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΡŽ. Π’Π°ΠΊΠΆΠ΅ Π°Π²Ρ‚ΠΎΡ€ Bun объявил ΠΎ Π½Π°ΠΉΠΌΠ΅ сотрудников для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Bun, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… Π±ΠΎΠ»Π΅Π΅ 5 Π»Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π° языках C/C++ ΠΈ Rust.

На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π½Π° Rust Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ прямой ΠΏΠΎΡ€Ρ‚ с языка Zig, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ мноТСство Π±Π»ΠΎΠΊΠΎΠ² unsafe ΠΊΠΎΠ΄Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚Ρƒ ΠΆΠ΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρƒ, Ρ‚Π΅ ΠΆΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΏΡ€Π΅ΠΆΠ½ΠΈΠ΅ внСшниС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. ΠžΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ€Ρ‚ Π½Π° Rust ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΏΡ€ΠΎΡˆΡ‘Π» ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ тСстовым Π½Π°Π±ΠΎΡ€ΠΎΠΌ Π½Π° всСх ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…. ΠŸΠΎΠΏΡƒΡ‚Π½ΠΎ Π±Ρ‹Π»ΠΎ устранСно нСсколько ΡƒΡ‚Π΅Ρ‡Π΅ΠΊ памяти ΠΈ сбоСв Π² тСстах.

ПослС сборки вСрсии Π½Π° Rust исполняСмый Ρ„Π°ΠΉΠ» получился Π½Π° 3-8 ΠœΠ‘ мСньшС, Ρ‡Π΅ΠΌ ΠΏΡ€ΠΈ сборкС вСрсии Π½Π° Zig. Π’ тСстах ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ вСрсия Π½Π° Rust оказалась Π»ΠΈΠ±ΠΎ быстрСС, Π»ΠΈΠ±ΠΎ Π½Π° Ρ‚ΠΎΠΌ ΠΆΠ΅ ΡƒΡ€ΠΎΠ²Π½Π΅. ΠŸΡ€ΠΈ этом ΠΏΠΎ мнСнию Π”ΠΆΠ°Ρ€Ρ€Π΅Π΄ самым Π²Π°ΠΆΠ½Ρ‹ΠΌ прСимущСством Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° Π½Π° Rust стала Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ отлавливания ΠΈ прСдотвращСния ошибок ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ, диагностика ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… послСдниС Π³ΠΎΠ΄Ρ‹ ΠΎΡ‚Π½ΠΈΠΌΠ°Π»Π° Ρƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² Bun ΡƒΠΉΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π’ качСствС ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ пСрСписывания Π½Π° Rust Ρ€Π°Π½Π΅Π΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π»ΠΎΡΡŒ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Bun, Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹Π΅ ΡƒΡ‚Π΅Ρ‡ΠΊΠ°ΠΌΠΈ памяти, Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ разногласий с Π°Π²Ρ‚ΠΎΡ€Π°ΠΌΠΈ Zig Π² ΠΏΠ»Π°Π½Π΅ примСнСния AI для написания ΠΊΠΎΠ΄Π° ΠΈ нСприСмлСмая для ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Zig Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ принятия Π² язык ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½Π°Ρ€ΡƒΡˆΠ°ΡŽΡ‰ΠΈΡ… ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ.

JavaScript-ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Bun развиваСтся ΠΊΠ°ΠΊ Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π°Π½Π°Π»ΠΎΠ³ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ Node.js ΠΈ Deno. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ разрабатываСтся с оглядкой Π½Π° обСспСчСниС совмСстимости с сСрвСрными прилоТСниями для Node.js ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ API Node.js. Π’ состав ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π°Π±ΠΎΡ€ инструмСнтов для создания ΠΈ выполнСния ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° языках JavaScript ΠΈ TypeScript, Π° Ρ‚Π°ΠΊΠΆΠ΅ runtime для выполнСния JavaScript-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π±Π΅Π· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ (совмСстимый с NPM), инструмСнтарий для выполнСния тСстов, систСма сборки самодостаточных ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΈ прослойка для встраивания ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ², написанных Π½Π° языкС Π‘ΠΈ. По ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Bun Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ обгоняСт Deno ΠΈ Node.js (Π² тСстах Π½Π° Π±Π°Π·Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° React ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Bun Π² 2 Ρ€Π°Π·Π° ΠΎΠΏΠ΅Ρ€Π΅ΠΆΠ°Π΅Ρ‚ Deno ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ Π² 5 Ρ€Π°Π· Node.js). Для выполнСния JavaScript задСйствован JavaScript-Π΄Π²ΠΈΠΆΠΎΠΊ JavaScriptCore ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° WebKit с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ‚Ρ‡Π°ΠΌΠΈ.

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

ΠšΡƒΠΏΠΈΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ хостинг для сайтов с Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ ΠΎΡ‚ DDoS, VPS VDS сСрвСры πŸ”₯ ΠšΡƒΠΏΠΈΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ хостинг для сайтов с Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ ΠΎΡ‚ DDoS, VPS VDS сСрвСры | ProHoster