Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

В чем отличие языка программирования от естественных языков (таких, как русский, английский, японский)?

ТехнологииПрограммированиеIt (информационные технологии)
Михаил Ребровский
  · 5,4 K
Веб-разработчик, авантюрист, диванный криптоаналитик  · 15 июн 2016

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

Признаться в любви на них будет сложновато.

Ну, почему же, вот псевдокод:

echo "I love you"

Программист, разработчик ПО.  · 7 июл 2016
Язык программирования определяется правилами порождения слов и выражений (можете почитать про БНФ). Естественные языки также подчиняются определенным правилам, однако они изобилуют множеством исключений, что для формальных языков (а ЯП - формальные языки) недопустимо. Если таковые имеются, то это свидетельствует о некорректности системы правил, по которой построен... Читать далее
Кроме описанного, отмечу, что человеческие языки служат разным целям, а программы только для формирования команд компьютеру. Поэтому они должны быть предельно формализованными, недопустима двусмысленность, столь частая в человеческих языках. Все возможные исходы всех ситуаций должны быть оговорены.  В связи с этим есть анекдоты о программистах, очень точно отражающие... Читать далее