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
Feb 3, 2025

Tysiące stron rządowych w USA usuniętych w związku z ustawą Trumpa przeciwko różnorodności i „ideologii gender”

Tysiące stron internetowych na rządowych portalach w USA zostało usuniętych lub zmodyfikowanych w związku z nowym prawem podpisanym przez Donalda Trumpa, które uderza w inicjatywy na rzecz różnorodności oraz „ideologii gender” – informuje The New York Times.
0
Aug 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
May 20, 2025

Red Hat wprowadza RHEL 10 z inteligencją i bezpieczeństwem dla chmurowych środowisk hybrydowych

Firma Red Hat zaprezentowała wersję 10 systemu Red Hat Enterprise Linux (RHEL), która oferuje przedsiębiorstwom inteligentną i bezpieczną podstawę dla środowisk chmurowych hybrydowych oraz obciążeń związanych z sztuczną inteligencją.
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