Создатель «Привет, мир » и гуру Си пробовал программировать на 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 превратилось в рабочие дни. Его критика была ясна:

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

 

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

 

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

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

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

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

 

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

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

Читать  Криптография с Python

 

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

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

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

 

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

 

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

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

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

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Редактор: AndreyEx

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

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

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


Загрузка...

Спасибо!

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

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