Логотип

Создатель «Привет, мир » и гуру Си пробовал программировать на Rust: «На другом языке это заняло бы 5 минут, а Rust стоил мне нескольких дней»

Создатель "Привет, мир " и гуру Си пробовал программировать на Rust: "На другом языке это заняло бы 5 минут, а Rust стоил мне нескольких дней"

В свои 83 года Брайан Керниган — живая легенда информатики за его основополагающую роль в создании Unix в Bell Laboratories и соавтор вместе с Деннисом Ричи знаменитого справочника «Язык программирования на Си» (1978) — продолжает преподавать в Принстоне и участвовать в конференциях, где делится воспоминаниями, мнениями и идеями. предостережения о мире программного обеспечения.

Одно из его последних выступлений было посвящено двум темам, тесно связанным с его творениями: противоречивым отношениям между языками C и Rust, а также об изменениях, произошедших в экосистеме Unix за последние десятилетия.

 

Rust против C: смена поколений или преходящая шумиха?

Одной из наиболее часто повторяющихся тем в интервью и беседах с Керниганом является растущая популярность Rust, языка, разработанного с учетом безопасности в памяти в качестве флага и который некоторые рассматривают как естественную замену C. Однако его личный опыт работы с Rust далек от положительного.

В ходе вопросов и ответов во время фестиваля Vintage Computer East Керниган признался, что написал единственную программу на Rust … и пережил это как настоящую пытку.

«Ооо, Руст. […] Я не мог понять механизмы, необходимые для обеспечения безопасности памяти, в программе, где память даже не была проблемой».

 

По его словам, то, что на C или других языках заняло бы у него пять минут, в Rust превратилось в рабочие дни. Его критика была ясна:

  • Ненужная сложность: механизмы владения, заимствования и времени жизни показались ему запутанными и неоправданными в контекстах, где память не была проблемой.
  • Разочаровывающая производительность: компилятор был медленным, сгенерированный код тоже, а инфраструктура пакетов показалась ему «непостижимо большой и тяжелой».
  • Нестабильная эволюция: было обнаружено, что синтаксис изменился по сравнению с последней опубликованной документацией.
Читать  Как создать отзывчивую контактную форму с помощью PHP

 

Хотя он признает свою скудную практику работы с Rust и допускает определенный»цинизм» со своей стороны, он убежден, что этот язык не заменит C в ближайшее время. Причина, объясняет он, двоякая: C остается зрелым инструментом с десятилетиями эволюции, и Rust все еще нуждается в консолидации.

 

Unix, Linux и мир дистрибутивов

На всякий случай, если вы не поняли этого из его исследования Rust, Керниган не зациклился на ностальгии. Хотя в своих выступлениях он с любовью вспоминает кооперативную и творческую атмосферу Bell Labs, но также признает, что Microsoft выиграла у Unix битву в 80-х и 90-х годах.

Однако сегодня он с некоторой иронией наблюдает, как Unix скрыто живет практически на всех современных устройствах: от macOS и iOS до Android. Что его расстраивает, так это то, что, в отличие от старых добрых времен, эти системы уже не так открыты для технических пользователей:

> “Меня раздражает, что под моим телефоном есть система, с помощью которой я мог бы что-то делать… но у меня нет к нему доступа!”

 

Это была не единственная тема, по которой он высказал свое мнение: что касается дистрибутивов Linux, он признает, что косвенно использовал их в своей работе в Принстоне, хотя признается, что у него нет любимого.

Когда его спросили о NixOS (популярном» неизменяемом дистрибутиве «Linux) или о HolyC (экзотическом варианте C, созданном удивительный Терри Дэвис), его ответ был честным: он просто понятия не имеет, что это такое.

Читать  Основы YAML, которые должен знать каждый инженер DevOps

 

Критический взгляд на текущее программное обеспечение

Но, хотя он не фанат ностальгии, он также не впадает в противоположный порок и, далекий от благоговения перед прогрессом, Керниган, не колеблясь, предлагает скептический взгляд на состояние современного программного обеспечения. На просьбу изложить в десяти словах или меньше свое мнение об отрасли, он, не колеблясь, выпалил:

> «Многое из этого отстой».

 

Он указывает на чрезмерную сложность, отсутствие стабильности и чрезмерную ориентацию на потребительские товары, далекие от открытого и экспериментального духа, который был характерен для происхождение Unix. И хотя он ценит такие достижения, как Linux или появляющиеся новые инструменты, он утверждает, что коммерциализация ослабила часть совместной сущности вычислений.

 

Между искусственным интеллектом и советами новым поколениям

Еще одной темой, затронутой в его выступлении, была роль языковых моделей и искусственного интеллекта в программировании. Керниган с иронией признал, что его тесты с ИИ были не совсем удовлетворительными и что они опровергают принцип, который он сам отстаивал, что «программы, которые пишут программы, обычно работают лучше, чем люди».

Тем не менее, далеко не впадая в пессимизм, он дал обнадеживающий совет молодым программистам:

  • Вычисления будут оставаться фундаментальными еще долгое время.
  • Важно посвятить себя тому, что кажется интригующим и увлекательным, потому что такая мотивация обеспечивает как обучение, так и возможность трудоустройства.
  • Энтузиазм, а не увлечение языком — вот что гарантирует полноценную карьеру.

Редактор: AndreyEx

Рейтинг: 4.4 (5 голосов)
Если статья понравилась, то поделитесь ей в социальных сетях:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Это может быть вам интересно


Загрузка...

Спасибо!

Теперь редакторы в курсе.

Прокрутить страницу до начала