Canonical запустила проект инструментария для автоматической трансляции кода с языка C на Rust. canonical.. canonical. rust.. canonical. rust. инструментарий.. canonical. rust. инструментарий. кодовая база.. canonical. rust. инструментарий. кодовая база. Программирование.. canonical. rust. инструментарий. кодовая база. Программирование. проект.. canonical. rust. инструментарий. кодовая база. Программирование. проект. Управление разработкой.. canonical. rust. инструментарий. кодовая база. Программирование. проект. Управление разработкой. языки программирования.

Компания Canonical совместно с Бристольским университетом будет развивать новый проект, нацеленный на разработку инструментария для автоматической трансляции кода с языка Си на Rust.

Canonical запустила проект инструментария для автоматической трансляции кода с языка C на Rust - 1

Цель проекта — перевести большие репозитории с сотнями тысяч строк кода на безопасное и легко сопровождаемое представление на Rust.

Canonical будет поддерживать работу исследователей в течение трёх лет. Технологию опробуют для перевода на Rust пакетов AppArmor и snap‑confine.

Планируется задействовать гибридную модель, которая будет включать технологии на основе машинного обучения и классические методы анализа, тестирования и формальной верификации. В процессе крупные кодовые базы будут разделяться на отдельные фрагменты, транслируемые независимо без потери общего контекста, необходимого для учёта типов, зависимостей и поведения.

Инструменты будут обучать на коде существующих проектов, уже переведённых с Си на Rust, чтобы задействовать в результирующем коде корректные Rust‑абстракции вместо переписывания Си‑конструкций.

Одновременно исследователи выпустят инструментарий для проверки результирующего кода с использованием fuzzing‑тестирования и элементов формальной верификации, а также средств для отладки и анализа проблем.

Проект позиционируется как исследовательский и подразумевает разработку новых методов, обрабатывающих ситуации с неопределённым поведением в коде на Си, указателями и конкурирующими блокировками. Разработчики пояснили, что ручное переписывание с Си на Rust требует объёмной работы и приводит к потере накопленных исправлений и оптимизаций.

Ранее в Canonical опубликовали планы по развитию с внедрением множества функций искусственного интеллекта. Ожидается, что в течение следующего года в Ubuntu Linux появятся различные функции ИИ с упором на локальный вывод по умолчанию. Инженеры Canonical будут работать над интеграцией агентных рабочих процессов в Ubuntu для всех желающих. Изучаются области использования ИИ в Ubuntu как для настольных компьютеров, так и для серверов, например, для помощи в интерпретации системных журналов. Что касается запланированных функций, пока они всё ещё находятся в стадии разработки для создания контекстно‑ориентированной операционной системы.

Автор: maybe_elf

Источник