Autorul platformei Bun desfășoară un experiment de rescriere din Zig în Rust

Jarred Sumner, creator and lead developer of the Bun server-side JavaScript platform, has created a Git branch to rewrite Bun from Zig to Rust. The rewriting is being done with the help of the AI assistant Claude, for which a separate porting guide has been created. According to Jarred, this is currently just an experiment and not an official port, with a high likelihood that the project may not progress beyond this stage and the rewritten code may not be utilized.

The porting process is not yet complete, and at this stage, all interest in the project is focused on evaluating how functional the port will be, whether it will pass the test suite of the main project, and how difficult it will be to maintain the new code. Ultimately, a comparative testing of the Bun versions in Zig and Rust is planned.

Last December, the Bun project was acquired by Anthropic, which gives Jarred resources to involve advanced AI models like Claude in the porting. The Bun platform is used in Claude Code and Claude Agent SDK products, and Anthropic is interested in improving its quality and development. Bun is one of the most successful projects in Zig, but opinions among Zig and Bun developers diverge regarding the use of AI in the development process. The Zig project has imposed a strict ban on using large language models when preparing pull requests, issues, and comments (even translating non-English comments through AI is prohibited).

The introduction of such restrictions is explained by the Zig developers’ negative experiences with reviewing AI-generated pull requests, which consume resources and time (for example, they often contain meaningless changes, AI hallucinations, and bloated commits of 10,000 lines). Furthermore, the Zig project positions itself as participant-oriented rather than focused on the contributions made by them in development—the primary goal of accepting pull requests is stated not to be the addition of new code but rather to assist in the development of new participants.

Autorul Bun nu este de acord cu interdicția AI în Zig și consideră că AI-slop va rămâne o nostalgie din anii 2025 și 2026, în timp ce dezvoltarea software-ului open-source va evolua spre interzicerea acceptării codului de la oameni. Oamenii vor discuta probleme, vor stabili sarcini și priorități, iar scrierea codului și trimiterea modificărilor în depozite va deveni apanajul AI. Ca motiv pentru experimentele de rescriere în Rust, se menționează și dorința de a rezolva problemele din Bun cauzate de scurgerile de memorie și politica neacceptabilă a Zig privind acceptarea modificărilor care afectează compatibilitatea în limbaj.

Din cauza interdicției aplicării AI, dezvoltatorii Bun sunt nevoiți să susțină propriul fork al instrumentarului Zig, în care, datorită utilizării AI, s-a reușit accelerarea compilației de 4 ori prin paralele semantică analizei și generarea codului. Totuși, conform comentariului unuia dintre dezvoltatorii Zig, cauza respingerii patch-urilor nu este AI, ci faptul că paralele semantică a analizei afectează nu doar compilatorul, ci și limbajul în sine - pentru a realiza funcționalitatea propusă fără erori și incompatibilități, sunt necesare modificări în limbajul Zig. În loc de paralele, dezvoltatorii Zig dezvoltă compilarea incrementală, ceea ce, în opinia lor, va permite o creștere semnificativă a vitezei de compilație.

Platforma JavaScript Bun se dezvoltă ca un echivalent de înaltă performanță al platformelor Node.js și Deno. Proiectul este dezvoltat având în vedere asigurarea compatibilității cu aplicațiile server pentru Node.js și susține cea mai mare parte a API-ului Node.js. Platforma include un set de instrumente pentru crearea și rularea aplicațiilor în limbajele JavaScript și TypeScript, precum și un runtime pentru executarea aplicațiilor JavaScript fără browser, un manager de pachete (compatibil cu NPM), un instrumentar pentru executarea testelor, un sistem de construire a pachetelor autonome și un strat pentru integrarea handler-elor scrise în limbajul C. În ceea ce privește performanța, Bun depășește semnificativ Deno și Node.js (în testele bazate pe framework-ul React, platforma Bun depășește Deno de 2 ori și aproape de 5 ori Node.js). Pentru a executa JavaScript, este utilizat motorul JavaScript JavaScriptCore și componentele proiectului WebKit cu patch-uri suplimentare.

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster