Projekt tmux-rs kompletně přepisuje původní 67 000 řádků C do ~81 000 řádků nebezpečného Rustu.
Automatický převod pomocí C2Rust byl funkční, ale neudržitelný, proto autor přešel na ruční překlad funkce po funkci.
Složitý build proces kombinuje autotools, Cargo a statické knihovny pomocí build.rs a cc crate.
Během překladu se objevily chyby jako implicitní deklarace funkcí a špatné odpovídání struktur kvůli chybějícím ukazatelům.
Běžné C vzory implementuje autor v Rustu pomocí surových ukazatelů, označených smyček místo goto a generických traitů pro intruzivní datové struktury.
Původní parser v Yacc autor přepsal do Rustu s využitím knihovny lalrpop, čímž odstranil zbylé části C kódu.
Vývoj probíhal ve Vimu s vlastními makry pro hromadné transformace a občas s AI nástroji, které ale často vnesly další chyby.
Dalším cílem je přepsat kód na bezpečný Rust a vydat verzi 0.0.1 pro komunitu.
Get notified when new stories are published for "🇨🇿 Hacker News Čeština "