Частите на Ladybird се пренаписват на Rust с помощта на LLM

Ladybird преминава на частично използване на Rust вместо C++. Разработчиците отдавна търсят memory-safe алтернатива: Swift не беше подходящ поради слабите възможности за взаимодействие с C++ и ограничената поддръжка извън Apple. Rust се оказа по-добър: зряла екосистема, много от контрибуторите вече знаят езика, а Firefox и Chromium вече го използват.

Първият порт се състоя в LibJS — JavaScript двигателят (лексер, парсер, AST, генератор на байт код). Работата беше управлявана от човек с помощта на Claude Code и Codex: ~25 000 реда Rust за две седмици вместо няколко месеца ръчно. Резултатът — пълна идентичност на изходните данни с C++ версията, нула регресии в тестовете (52 898 теста test262, 12 461 собствени теста).

Кодът е умишлено стилово близък до оригинала на C++ — идиоматичността ще дойде по-късно. Пълен преход към Rust не се планира: C++ и Rust ще съществуват заедно, а портироването ще бъде постепенно и управлявано от основния екип.

Източник: linux.org.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster