О нездоровых сенсациях – как СМИ переписали Windows с С на Rust

252

Запись «известного разработчика Microsoft» Глена Ханта (Galen Hunt) на LinkedIn о намерении «объединить искусственный интеллект и алгоритмы, чтобы переписать крупнейшие массивы исходного кода Microsoft», породила массу публикаций в духе «посмотрите, что творится, Microsoft переписывает всё своё добро с С и С++ на Rust». Не удержался даже компетентный The Register с его вполне критичной редакцией.

Нас от написания этой «новости» остановило непонимание смысла заявления. Rust, конечно, герой, но зачем же стулья ломать. Зачем транслировать на другой язык миллионы строк работающего кода? Иногда такое бывает целесообразно, но только в порядке исключения и в разумном масштабе. А тут ещё ИИ, для которого изуродовать чужой код – милое дело.

И действительно. Глен Хант, увидев, что натворил, вынужден был объясниться с читающей публикой: Windows НЕ (капслок оригинала – ред.) переписывают ни на Rust, ни куда-либо ещё, ни с помощью ИИ, ни как-либо иначе. Речь о многолетнем проекте, цель которого, как можно понять, – универсальный транслятор исходных кодов «язык программирования 1 -> язык программирования 2».

Термин «трансляция» в своё время, т.е. в прошлом веке, IBM определила так: перевод с языка на язык без существенного искажения смысла.

Чтобы не пропустить самое интересное, читайте нас в Телеграм

Поделиться:

2 КОММЕНТАРИИ

  1. По моим наблюдениям, транслятор и интерпретатор языка имеют смысл противопоставления друг другу. Они уподоблены понятиям, описывающим разные профессии переводчиков: translator и interpreter. Первый перерабатывает большой текст. Последний переводит крайнее устное предложение или фразу. Это значит, что интерпретатор оперирует короткими кусками текста.
    Возможно, в ИТ эти понятия ввела IBM. Но они сохраняют преемственность с обычной лингвистикой.

    • у нас в кавалерии (транслятор ={компилятор | интерпретатор})

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь

Первая буква алфавита? (1-А, 2-Б)