Утверждён перевод 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 в отношении принятия в язык изменений, нарушающих совместимость.

Novolavolaina ho solon'ny Node.js sy Deno ny sehatra Bun JavaScript. Novolavolaina miaraka amin'ny fiheverana ny fifanarahana amin'ny fampiharana mpizara Node.js ity tetikasa ity ary manohana ny ankamaroan'ny Node.js API. Ahitana andiana fitaovana hamoronana sy hampandehanana fampiharana JavaScript sy TypeScript ity sehatra ity, ary koa fotoana fanatanterahana fampiharana JavaScript tsy misy navigateur, mpitantana fonosana (mifanaraka amin'ny NPM), fitaovana fitsapana, mpamorona fonosana mitokana, ary sosona ho an'ny fampidirana ireo mpitantana voasoratra amin'ny C. Raha ny momba ny fahombiazana, dia mihoatra lavitra noho ny Deno sy Node.js ny Bun (amin'ny fitsapana mifototra amin'ny rafitra React, mihoatra lavitra noho ny Deno ny Bun amin'ny 2 heny ary ny Node.js amin'ny 5 heny eo ho eo). Ny fanatanterahana JavaScript dia tohanan'ny motera JavaScriptCore JavaScript sy ny singa WebKit miaraka amin'ny patch fanampiny.

Source: opennet.ru

Mividiana fampiantranoana azo antoka ho an'ny tranokala misy fiarovana DDoS, mpizara VPS VDS 🔥 Mividiana fampiantranoana tranonkala azo antoka miaraka amin'ny fiarovana DDoS, mpizara VPS VDS | ProHoster