Oversettelsen av JavaScript-plattformen Bun til Rust-språket er bekreftet.

Jarred Sumner, skaperen og hovedutvikleren av server JavaScript-plattformen Bun, har anerkjent eksperimentet med å omskrive prosjektet fra Zig- og Rust-språkene ved hjelp av AI-assistenten Claude Code som vellykket, og har besluttet å overføre Bun til Rust-språket. Den omskrevne versjonen i Rust er allerede inkludert i hovedrepositoryet til prosjektet, mens koden i Zig er planlagt for fjerning. I tillegg har skaperen av Bun annonsert anskaffelse av ansatte for støtte til Bun, med mer enn 5 års erfaring med utvikling i C/C++ og Rust.

Per nå er det implementert en direkte port fra Zig til Rust, som inkluderer mange blokker med unsafe-kode, bruker den samme arkitekturen, de samme datavisningene og de tidligere eksterne biblioteker. Det bemerkes at porten til Rust har bestått testen med det eksisterende testsettet på alle plattformer. Samtidig ble flere minnelekkasjer og feil i testene utbedret.

Etter byggingen av versjonen på Rust ble den kjørbare filen 3-8 MB mindre enn ved byggingen av versjonen på Zig. I ytelsestester viste versjonen på Rust seg å være enten raskere eller på samme nivå. Ifølge Jarred var den viktigste fordelen med versjonen i Rust muligheten til å oppdage og forhindre feil i minnebehandlingen, noe som har tatt mye tid fra utviklerne av Bun de siste årene.

Som en grunn for omskrivningen til Rust ble det tidligere påpekt et ønske om å løse problemer i Bun forårsaket av minnelekkasjer, uenigheter med forfatterne av Zig når det gjelder bruken av AI til kodewriting, og en uakseptabel politikk fra Zig for store prosjekter angående endringer som bryter med kompatibiliteten.

JavaScript-plattformen Bun utvikles som en høyytelses-erstatning for plattformene Node.js og Deno. Prosjektet er utviklet med fokus på å sikre kompatibilitet med serverapplikasjoner for Node.js og støtter det meste av API-et til Node.js. Plattformen inkluderer et sett med verktøy for å lage og kjøre applikasjoner på JavaScript og TypeScript, samt et runtime-miljø for å kjøre JavaScript-applikasjoner uten nettleser, en pakkehåndterer (kompatibel med NPM), et verktøy for å utføre tester, et byggesystem for selvdrevne pakker og et lag for å integrere håndterere skrevet i C. Når det gjelder ytelse, overgår Bun Deno og Node.js betydelig (i tester basert på React-rammeverket overgår Bun Deno med to ganger og nesten Node.js med fem ganger). For å kjøre JavaScript benyttes JavaScript-motoren JavaScriptCore og komponenter fra WebKit-prosjektet med tilleggspatcher.

Kilde: opennet.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere | ProHoster