Джарред Самнер (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 в отношении принятия в язык изменений, нарушающих совместимость.
د بن جاواسکریپټ پلیټ فارم د Node.js او Deno لپاره د لوړ فعالیت بدیل په توګه رامینځته کیږي. دا پروژه د Node.js سرور غوښتنلیکونو لپاره مطابقت په پام کې نیولو سره رامینځته کیږي او د Node.js API ډیری ملاتړ کوي. پلیټ فارم کې د جاواسکریپټ او ټایپ سکریپټ غوښتنلیکونو رامینځته کولو او چلولو لپاره د وسیلو سیټ شامل دی، او همدارنګه د براوزر پرته د جاواسکریپټ غوښتنلیکونو اجرا کولو لپاره د رن ټایم، د پیکج مدیر (د NPM سره مطابقت لري)، د ازموینې وسیلې، یو ځان لرونکی پیکج جوړونکی، او په C کې لیکل شوي هینډلرونو د ځای پرځای کولو لپاره یو پرت شامل دی. د فعالیت له مخې، بن د ډینو او نوډ.js څخه د پام وړ غوره فعالیت کوي (د عکس العمل چوکاټ پراساس ازموینو کې، بن د ډینو څخه د 2 فکتور او Node.js څخه د نږدې 5 فکتور لخوا غوره فعالیت کوي). د جاواسکریپټ اجرا کول د جاواسکریپټ کور جاواسکریپټ انجن او ویب کیټ اجزاو لخوا د اضافي پیچونو سره ملاتړ کیږي.
سرچینه: opennet.ru
