Moralo oa JavaScript oa Bun o amohetsoe hore o fetoleloe ho 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 в отношении принятия в язык изменений, нарушающих совместимость.

Sethala sa Bun JavaScript se ntse se ntlafatsoa e le mokhoa o mong oa ts'ebetso e phahameng ho feta Node.js le Deno. Morero ona o ntse o ntlafatsoa ho nahanoa ka ho lumellana ha lits'ebetso tsa seva sa Node.js mme o tšehetsa boholo ba Node.js API. Sethala sena se kenyelletsa sete ea lisebelisoa tsa ho theha le ho tsamaisa lits'ebetso tsa JavaScript le TypeScript, hammoho le nako ea ho sebetsa bakeng sa ho etsa lits'ebetso tsa JavaScript ntle le sebatli, molaoli oa sephutheloana (o lumellanang le NPM), lisebelisoa tsa liteko, mohahi oa sephutheloana o ikemetseng, le lera la bahlokomeli ba ho kenya tse ngotsoeng ka C. Mabapi le ts'ebetso, Bun e sebetsa hantle ho feta Deno le Node.js (litekong tse ipapisitseng le moralo oa React, Bun e sebetsa hantle ho feta Deno ka ntlha ea 2 le Node.js ka ntlha ea hoo e ka bang 5). Ts'ebetso ea JavaScript e tšehetsoa ke enjene ea JavaScriptCore JavaScript le likarolo tsa WebKit tse nang le li-patches tse ling.

Source: opennet.ru

Reka sebaka se tšepahalang sa libaka tse nang le ts'ireletso ea DDoS, li-server tsa VPS VDS 🔥 Reka sebaka se tšepahalang sa ho amohela webosaete ka tšireletso ea DDoS, li-server tsa VPS VDS | ProHoster