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
Sie 4, 2025

Epic Games ponownie wygrywa z Google w sądzie – Android czeka przełomowa zmiana

Sąd Apelacyjny Dziewiątego Okręgu w USA podtrzymał jednogłośny werdykt ławy przysięgłych z 25 roku w sprawie Epic Games przeciwko Google, uznając Google Play Store i system płatności Google za nielegalne monopole. Decyzja przywraca działanie stałego zakazu, który zmusi Google do otwarcia Androida na konkurencyjne sklepy z aplikacjami,
0
Mar 4, 2025

Nowe standardy bezpieczeństwa w C++ – Stroustrup chce zachować konkurencyjność języka

Bjarne Stroustrup, twórca języka C++, wezwał komitet WG21, odpowiedzialny za rozwój standardów C++, do podjęcia działań mających na celu utrzymanie konkurencyjności języka w kontekście rosnącej popularności języków zapewniających bezpieczne zarządzanie pamięcią. Według niego C++ już teraz oferuje wszystkie mechanizmy potrzebne do bezpieczeństwa pamięci, ale brakuje standaryzowanych narzędzi, które gwarantowałyby programowanie wyłącznie w bezpiecznym podzbiorze języka.
0
Kwi 22, 2025

NVIDIA może zacząć projektować chipy AI specjalnie dla Chin i DeepSeek

NVIDIA rozważa opracowanie nowych chipów AI dostosowanych do potrzeb rynku chińskiego. Według WccfTech firma prowadzi rozmowy z lokalnym podmiotem DeepSeek, by wspólnie projektować układy, które mogłyby zostać wyłączone spod amerykańskich ograniczeń eksportowych.
0

Ta strona używa plików cookie, aby zapewnić Ci lepsze wrażenia podczas przeglądania.

Dowiedz się więcej o tym, jak używamy plików cookie i jak zmienić preferencje dotyczące plików cookie w naszej Polityka plików cookie.

Zmień ustawienia
Zapisz Akceptuj wszystkie cookies