Jarred Sumner, Bun'i yaratuja ja peamine arendaja, tunnustas edukat katset kirjutada projekt Zig ja Rust keeles ĂŒmber AI-abilise Claude Code'i kaasabil ning otsustas viia Bun Rust keelele. Ămber kirjutatud versioon Rust keeles on juba aktsepteeritud projekti pĂ”hirepositooriumisse, samas kui Zig keeles kirjutatud kood on plaanis eemaldada. Samuti teatas Bun'i autor töötajate vĂ€rbamisest, kellel on rohkem kui 5 aastat kogemust C/C++ ja Rust keeles arendamisel.
Praeguseks on Rustis rakendatud otseport Zig keelelt, mis sisaldab mitmeid unsafe koodi plokke, kasutab sama arhitektuuri, samu andmestruktuure ja varasemaid vÀlist nettiteeke. MÀrgitakse, et Rusti port on edukalt lÀbinud olemasolevate testide komplekti kontrolli kÔikidel platvormidel. Samuti on kÔrvaldatud mitmed mÀlulekke ja testide tÔrge.
PĂ€rast Rusti versiooni koostamist on tĂ€itefail 3â8 MB vĂ€iksem kui Zig'i versioon. Tulemuslikkuse testides on Rusti versioon olnud kas kiirem vĂ”i samal tasemel. Jarred'i arvates on Rusti variandi kĂ”ige olulisemaks eeliseks saanud vĂ”imalus tuvastada ja ennetada mĂ€luhalduse vigu, mille diagnoosimine on viimastel aastatel Bun'i arendajatelt palju aega röövinud.
Rust keelele ĂŒmber kirjutamise pĂ”hjuseks on varem mainitud soov lahendada Bun'is esinevad mĂ€lulekke probleemid, lahkarvamused Zig autoritega AI kasutamise osas koodi kirjutamiseks ning suurtel projektidel vastuvĂ”etamatuks osutuv Zig poliitika keele muudatuste kohta, mis rikuvad ĂŒhilduvust.
JavaScript'i platvorm Bun areneb kĂ”rge jĂ”udlusega analoogina Node.js ja Deno platvormidele. Projekt on vĂ€lja töötatud silmas pidades ĂŒhilduvust Node.js serverirakendustega ja toetab enamikku Node.js API-dest. Platvorm koosneb tööriistade komplektist JavaScripti ja TypeScripti rakenduste loomiseks ja kĂ€itamiseks, samuti JavaScripti rakenduste kĂ€itamisest ilma brauserita, NPM-iga ĂŒhilduvast paketihaldurist, testimise tööriistade komplektist, iseseisvate pakettide koostamise sĂŒsteemist ja C keeles kirjutatud kĂ€itlejate integreerimisest. JĂ”udluses ĂŒletab Bun mĂ€rkimisvÀÀrselt Deno ja Node.js (Reacti raamistikul pĂ”hinevates testides edestab Bun Deno kaks korda ja Node.js-i peaaegu viis korda). JavaScripti tĂ€itmiseks kasutatakse JavaScripti mootorsĂŒsteemi JavaScriptCore ja WebKiti projekti komponente koos tĂ€iendavate plaastritega.
Allikas: opennet.ru
