- BrainTools - https://www.braintools.ru -
Компания Canonical совместно с Бристольским университетом будет развивать [1] новый проект, нацеленный на разработку инструментария для автоматической трансляции кода с языка Си на Rust.

Цель проекта — перевести большие репозитории с сотнями тысяч строк кода на безопасное и легко сопровождаемое представление на Rust.
Canonical будет поддерживать работу исследователей в течение трёх лет. Технологию опробуют для перевода на Rust пакетов AppArmor и snap‑confine.
Планируется задействовать гибридную модель, которая будет включать технологии на основе машинного обучения [2] и классические методы анализа, тестирования и формальной верификации. В процессе крупные кодовые базы будут разделяться на отдельные фрагменты, транслируемые независимо без потери общего контекста, необходимого для учёта типов, зависимостей и поведения [3].
Инструменты будут обучать на коде существующих проектов, уже переведённых с Си на Rust, чтобы задействовать в результирующем коде корректные Rust‑абстракции вместо переписывания Си‑конструкций.
Одновременно исследователи выпустят инструментарий для проверки результирующего кода с использованием fuzzing‑тестирования и элементов формальной верификации, а также средств для отладки и анализа проблем.
Проект позиционируется как исследовательский и подразумевает разработку новых методов, обрабатывающих ситуации с неопределённым поведением [4] в коде на Си, указателями и конкурирующими блокировками. Разработчики пояснили, что ручное переписывание с Си на Rust требует объёмной работы и приводит к потере накопленных исправлений и оптимизаций.
Ранее в Canonical опубликовали [5] планы по развитию с внедрением множества функций искусственного интеллекта [6]. Ожидается, что в течение следующего года в Ubuntu Linux появятся различные функции ИИ с упором на локальный вывод по умолчанию. Инженеры Canonical будут работать над интеграцией агентных рабочих процессов в Ubuntu для всех желающих. Изучаются области использования ИИ в Ubuntu как для настольных компьютеров, так и для серверов, например, для помощи в интерпретации системных журналов. Что касается запланированных функций, пока они всё ещё находятся в стадии разработки для создания контекстно‑ориентированной операционной системы.
Автор: maybe_elf
Источник [7]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/34692
URLs in this post:
[1] будет развивать: https://discourse.ubuntu.com/t/investing-in-automated-c-to-rust-translation/86369
[2] обучения: http://www.braintools.ru/article/5125
[3] поведения: http://www.braintools.ru/article/9372
[4] поведением: http://www.braintools.ru/article/5593
[5] опубликовали: https://habr.com/ru/news/1029476/
[6] интеллекта: http://www.braintools.ru/article/7605
[7] Источник: https://habr.com/ru/news/1072792/?utm_source=habrahabr&utm_medium=rss&utm_campaign=1072792
Нажмите здесь для печати.