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

Платформата Bun JavaScript се развива како високо-перформансна алтернатива на Node.js и Deno. Проектот се развива имајќи ја предвид компатибилноста со Node.js серверските апликации и поддржува поголем дел од Node.js API. Платформата вклучува сет алатки за креирање и извршување JavaScript и TypeScript апликации, како и време на извршување за извршување JavaScript апликации без прелистувач, менаџер на пакети (компатибилен со NPM), алатки за тестирање, самостоен креатор на пакети и слој за вградување обработувачи напишани во C. Во однос на перформансите, Bun значително ги надминува Deno и Node.js (во тестовите базирани на React framework, Bun го надминува Deno за фактор од 2, а Node.js за фактор од речиси 5). Извршувањето на JavaScript е поддржано од JavaScript engine JavaScriptCore и компонентите WebKit со дополнителни закрпи.

Извор: opennet.ru

Купете доверлив хостинг за сајтови со DDoS заштита, VPS VDS сервери 🔥 Купете сигурен веб-хостинг со DDoS заштита, VPS VDS сервери | ProHoster