С самых ранних дней вычислений некоторые считали формальность программирования недостатком, обвиняя машины в их строгом подчинении инструкциям. Они надеялись на более «разумные» машины, которые бы отвергали бессмысленные действия. Языки высокого уровня появились как улучшение, ловя глупые ошибки с помощью сообщений об ошибках вместо ошибочных результатов. Однако абстрактная машина осталась верным рабом, полностью способным выполнять бессмысленные инструкции. Программирование по-прежнему требовало формальной символики и той аккуратности, которую оно требует.
Предложение спроектировать машины, управляемые на родном языке, значительно увеличит нагрузку на машину, но сторонники утверждают, что это упростит человеческую жизнь. Это предполагает, что обязанность использовать формальную символику является источником трудности. Автор сомневается в этом аргументе, отмечая, что выбор интерфейса — это не просто разделение труда: работа по общению через интерфейсы должна быть добавлена.
История показывает, что формальные символы обеспечили прогресс. Греческая математика застоялась в устной форме, и современный мир появился, когда Западная Европа освободилась от устной точности через тщательно разработанные формализмы Виета, Декарта, Лейбница и Буля. Формальные тексты требуют только простых правил законной манипуляции, эффективно исключая бессмысленность, которую родные языки почти неизбежно производят.
Источник: Hacker News · Сводку подготовил HeadlinesBriefing