Delar av Ladybird skrivs om i Rust med hjälp av LLM

Ladybird byter till delvis användning av Rust istället för C++. Utvecklarna har länge letat efter ett minnessäkert alternativ: Swift var inte lämpligt på grund av dess svaga interoperabilitet med C++ och begränsade stöd utanför Apple. Rust visade sig vara överlägset: det har ett moget ekosystem, många bidragsgivare kan redan språket, och Firefox och Chromium använder det redan.

Den första som portades var LibJS, en JavaScript-motor (lexer, parser, AST, bytecode-generator). Arbetet utfördes av en människa med hjälp av Claude Code och Codex: ~25 000 rader Rust portades på två veckor, jämfört med flera månaders manuellt arbete. Resultatet blev en helt identisk utdata med C++-versionen, med noll regressioner i tester (52 898 test262-tester, 12 461 anpassade tester).

Koden är avsiktligt stilmässigt nära C++-originalet – idiomatiska detaljer kommer senare. En fullständig övergång till Rust är inte planerad: C++ och Rust kommer att samexistera, och porteringen kommer att ske gradvis och hanteras av kärnteamet.

Källa: linux.org.ru

Lägg en kommentar