"Без"-ость. К эзотеричности языков программирования.

Aug 17, 2011 15:43

В нормальных языках программирования, как я писал, на самом деле есть три языка: язык выражений, язык вызова функций и язык конструкций языка.

В ассемблере же язык один - язык конструкций языка. В Лиспе тоже язык один - язык вызова функций. В Форте язык также один - язык конструкций языка с претензией на язык выражений.

На самом деле в Форте грань между языком конструкций языка и языком выражений зыбка - всё зависит от парсера. Можно поставить задачу создать стековый язык, на которм программа занимает как можно меньше места - и тогда он будет состоять только из языка выражений. Типа этого - http://en.wikipedia.org/wiki/FALSE .

Что же проще понимать - выражение в три строки из 200 знаков препинания или два-три экрана текста в IDE - еще вопрос. Про выражение в 2000 знаков препинания в 30 строках и 20-30 экранов текста в IDE - тоже вопрос. Насчет того, можно ли понять более 30 строк знаков препинания - уже не вопрос...

Анализаторы кода с автоподстановкой для нормальных языков программирования существуют. Для языка выражений - насколько я помню, нет (нужды нет разбирать больше 20 букаф). Для стекового языка выражений с подключаемыми на лету библиотеками операторов с неопределенной арностью, зависящей в общем случае от типа (в явовском смысле!) операндов (именно такой я и разработал, бля) - думаю, по определению нереально.

Да, без синтаксиса можно обойтись... но трудно...
Previous post Next post
Up