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

Mae platfform JavaScript Bun yn cael ei ddatblygu fel dewis arall perfformiad uchel i Node.js a Deno. Mae'r prosiect yn cael ei ddatblygu gyda chydnawsedd mewn golwg ar gyfer cymwysiadau gweinydd Node.js ac mae'n cefnogi'r rhan fwyaf o API Node.js. Mae'r platfform yn cynnwys set o offer ar gyfer creu a rhedeg cymwysiadau JavaScript a TypeScript, yn ogystal ag amser rhedeg ar gyfer gweithredu cymwysiadau JavaScript heb borwr, rheolwr pecynnau (sy'n gydnaws ag NPM), offer profi, adeiladwr pecynnau hunangynhwysol, a haen ar gyfer mewnosod trinwyr a ysgrifennwyd yn C. O ran perfformiad, mae Bun yn perfformio'n sylweddol well na Deno a Node.js (mewn profion yn seiliedig ar fframwaith React, mae Bun yn perfformio'n well na Deno o ffactor o 2 a Node.js o ffactor o bron i 5). Cefnogir gweithredu JavaScript gan yr injan JavaScript JavaScriptCore a chydrannau WebKit gyda chlytiau ychwanegol.

Ffynhonnell: opennet.ru

Prynu gwesteio dibynadwy ar gyfer gwefannau sydd â diogelwch DDoS, gweinyddwyr VPS VDS 🔥 Prynu cynnal gwefannau dibynadwy gyda diogelwch DDoS, gweinyddion VPS VDS | ProHoster