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
Paz 4, 2023

Wydarzenie „Microsoft Surface Event”: 6 najważniejszych przekazów

Poniżej dowiesz się o wszystkich aktualnościach z tego wydarzenia.
0
Lut 16

Twórca OpenClaw dołącza do OpenAI. Projekt ma działać dalej jako open-source

Austriacki deweloper Peter Steinberger, twórca personalnego asystenta AI OpenClaw, ogłosił, że dołącza do OpenAI. Zaledwie kilka tygodni temu był to tylko ciekawy projekt rozwijany po godzinach, a dziś mówi o nim całe technologiczne środowisko. Wszystko za sprawą pomysłu na agenta, który nie zatrzymuje się na generowaniu odpowiedzi, ale potrafi w imieniu użytkownika naprawdę działać – podejmować decyzje, wykonywać zadania i załatwiać sprawy poza samym czatem.
0
Sie 2, 2023

Współzałożyciel PayPal płacił 1 tys. dolarów ekstra pracownikom, którzy mieszkali w pobliżu biura

Thiel dawał swoim pracownikom premię, aby "byli bardziej skłonni zostać do późna" i mogli być w pobliżu na "niespodziewane spotkanie weekendowe".
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