A Bun JavaScript keretrendszert jóváhagyták a Rust nyelvre való fordításhoz.

Jarred Sumner, a Bun szerveroldali JavaScript platform alkotója és vezető fejlesztője sikeresnek nyilvánította a Zig és Rust kódokból származó projekt átírására irányuló kísérletét Claude Code mesterséges intelligencia asszisztens segítségével, és úgy döntött, hogy a Bun kódját Rustba migrálja. A Rust átírását már elfogadták a projekt fő adattárában, és a Zig kódot törölni fogják. A Bun szerzője bejelentette, hogy több mint öt éves C/C++ és Rust fejlesztési tapasztalattal rendelkező támogató személyzetet vesz fel.

Jelenleg a Zig nyelv közvetlen portja implementálva van a Rustban. Számos nem biztonságos kódblokkot tartalmaz, és ugyanazt az architektúrát, adatszerkezeteket és meglévő külső könyvtárakat használja. A Rust portja sikeresen teljesítette a meglévő tesztcsomagot minden platformon. Számos memóriaszivárgást és teszthibát is kijavítottak.

A Rust verzió lefordítása után a futtatható fájl 3-8 MB-tal kisebb volt, mint a Zig verzió. A teljesítménytesztekben a Rust verzió vagy gyorsabb, vagy hasonló teljesítményt nyújtott. Jarred szerint azonban a Rust verzió legfontosabb előnye a memóriahibák észlelésének és megelőzésének képessége volt, ami az elmúlt években hatalmas időigényes feladat volt a Bun fejlesztői számára.

A Rust nyelvre való átírás okaként korábban a Bunban a memóriaszivárgások okozta problémák megoldásának vágyát, a Zig szerzőivel való nézeteltéréseket említették a mesterséges intelligencia kódíráshoz való használatával kapcsolatban, valamint a Zig azon politikáját, hogy elfogadja a kompatibilitást sértő nyelvi változtatásokat, ami nagy projektek esetében elfogadhatatlan.

A Bun JavaScript platformot a Node.js és a Deno nagy teljesítményű alternatívájaként fejlesztik. A projektet a Node.js szerveralkalmazásokkal való kompatibilitás szem előtt tartásával fejlesztik, és a Node.js API nagy részét támogatja. A platform tartalmaz egy eszközkészletet JavaScript és TypeScript alkalmazások létrehozásához és futtatásához, valamint egy futtatókörnyezetet JavaScript alkalmazások böngésző nélküli végrehajtásához, egy csomagkezelőt (NPM-mel kompatibilis), teszteszközöket, egy önálló csomagkészítőt és egy réteget a C nyelven írt kezelők beágyazásához. Teljesítmény tekintetében a Bun jelentősen felülmúlja a Deno-t és a Node.js-t (a React keretrendszeren alapuló tesztekben a Bun kétszeresére, a Node.js-t pedig majdnem ötszörösére teljesítette felül). A JavaScript végrehajtását a JavaScriptCore JavaScript motor és a WebKit komponensek támogatják további javításokkal.

Forrás: opennet.ru

Vásároljon megbízható tárhelyet DDoS védelemmel, VPS VDS szerverekkel rendelkező webhelyekhez 🔥 Vásároljon megbízható weboldal tárhelyet DDoS védelemmel, VPS VDS szerverekkel | ProHoster