Canonical chce automatycznie tłumaczyć kod z C na Rust. Projekt ma pomóc modernizować Ubuntu

Canonical chce automatycznie tłumaczyć kod z C na Rust. Projekt ma pomóc modernizować Ubuntu

Canonical finansuje trzyletni projekt badawczy, którego celem jest stworzenie narzędzi do automatycznej migracji dużych baz kodu z języka C do Rust. Badania będą prowadzone we współpracy z University of Bristol.

Firma chce sprawdzić, czy możliwe jest automatyczne tłumaczenie nawet repozytoriów zawierających setki tysięcy linii kodu przy zachowaniu zgodności zachowania programu i ograniczeniu ręcznej pracy deweloperów.

Problem jest istotny m.in. ze względu na ogromną ilość dojrzałego kodu napisanego w C. Canonical zwraca uwagę, że jego ręczne przepisywanie jest kosztowne i ryzykowne: istniejące projekty zawierają lata poprawek, optymalizacji i decyzji związanych z kompatybilnością.

Rust ma przy tym jedną kluczową przewagę w przypadku oprogramowania systemowego — pozwala wyeliminować wiele klas błędów związanych z bezpieczeństwem pamięci.

Projekt nie sprowadza się jednak do prostego konwertera składni. Badacze chcą rozwiązać m.in. problem dzielenia dużych repozytoriów bez utraty kontekstu, obsługi wskaźników, współbieżności i interfejsów systemowych oraz sprawdzania, czy program w Rust zachowuje się tak samo jak oryginalny kod C.

Badania poprowadzi grupa Programming Languages z University of Bristol. Nad projektem będzie pracował doktorant Alex Wood, którego doświadczenie obejmuje m.in. kompilatory, Rust, bezpieczeństwo niskopoziomowe i protokoły kryptograficzne.

Canonical zaznacza, że najbardziej ambitnym rezultatem byłby system potrafiący tłumaczyć znaczną część dużych repozytoriów C na Rust przy niewielkiej ingerencji człowieka. Firma nie deklaruje jednak, że taki poziom automatyzacji na pewno uda się osiągnąć — projekt ma właśnie zbadać granice tej technologii.

To kolejny element szerszej strategii Canonical związanej z Rustem. Firma deklaruje, że stopniowo zastępuje legacy code napisany w C rozwiązaniami w Rust, szczególnie w komponentach systemowych, gdzie bezpieczeństwo pamięci ma duże znaczenie.

Źródło: Canonical / Ubuntu — Investing in automated C to Rust translation

Avatar
Jun 27, 2025

Microsoft rezygnuje z niebieskiego ekranu śmierci w Windows 11

Aktualizacja Windows 11 w wersji 24H2 wprowadzi nowy wariant BSOD — tło błędu systemowego zostanie zmienione z niebieskiego na czarne, – informuje The Verge. Zmiana jest elementem szerszej modernizacji warstwy odzyskiwania systemu i diagnostyki błędów jądra.
0
Mar 11, 2025

Akcje Tesli spadły o 15% – największy jednodniowy spadek od 2020 roku

Tesla przeżyła najgorszy dzień handlowy od ponad czterech lat, gdy w poniedziałek jej akcje spadły o 15% z powodu rosnących obaw o spowolnienie popytu na samochody elektryczne firmy. To załamanie jest kontynuacją trudnego 2025 roku dla Tesli, która od początku roku straciła już 45% swojej wartości, informuje Bloomberg.
0
May 21, 2025

Google Translate dostępny jako domyślna aplikacja tłumaczeniowa na iPhone i iPad

Użytkownicy iPhone’ów i iPadów mogą ustawić aplikację Google Translate jako domyślną aplikację tłumaczeniową, zastępując wbudowaną aplikację Apple Translate. Funkcja ta jest dostępna w systemach iOS 18.4 oraz iPadOS 18.4 i późniejszych.
0

This site uses cookies to offer you a better browsing experience.

Find out more on how we use cookies and how to change cookie preferences in our Cookies Policy.

Customize
Save Accept all cookies