Teile von Ladybird werden mit LLM auf Rust umgeschrieben

Ladybird wechselt zu einer teilweisen Nutzung von Rust anstelle von C++. Die Entwickler haben lange nach einer speichersicheren Alternative gesucht: Swift war wegen der schwachen Interaktionsmöglichkeiten mit C++ und der begrenzten Unterstützung außerhalb von Apple nicht geeignet. Rust hat sich als besser herausgestellt: reife Ökosystem, viele Mitwirkende kennen die Sprache bereits, und Firefox und Chromium verwenden sie bereits.

Zuerst wurde LibJS portiert - die JavaScript-Engine (Lexer, Parser, AST, Bytecode-Generator). Die Arbeit wurde von einer Person mit Hilfe von Claude Code und Codex durchgeführt: ~25.000 Zeilen Rust in zwei Wochen anstelle von mehreren Monaten manuell. Das Ergebnis - vollständige Identität der Ausgabewerte mit der C++-Version, null Regressionen in den Tests (52.898 Tests test262, 12.461 eigene Tests).

Der Code ist absichtlich stilistisch nah am C++-Original – die Idiomatizität wird später kommen. Ein vollständiger Wechsel zu Rust ist nicht geplant: C++ und Rust werden koexistieren, und die Portierung wird schrittweise und unter der Leitung des Hauptteams erfolgen.

Quelle: linux.org.ru

60GB SSD 8Gb DDR4