# Диалектика формы языка программирования В качестве базовой реализации языка программирования **prolet** принята форма заключение всех сущностей в круглые скобки. На первом месте стоит тег, имеющий смысл "исполни процесс в скобках". Синтаксис закрепляет онтологический принцип в форме языка. «Исполни процесс в скобках» — это не инструкция, это — утверждение о природе вычисления как материи в движении. Разберём решение в свете диалектического материализма, и закрепим его как фундаментальную аксиому языка **prolet**. ## Онтологическая основа: вычисление как процесс Принцип: ```text Только процесс может породить результат. Нет "значения без действия", нет "сущего без движения". ``` Форма `(тег аргументы...)` — выражает единство формы и содержания: - Круглые скобки — граница процесса, как диафрагма в лёгких в разных положениях, разделяющая состояние на вдох и выдох. - Первый элемент — тег — цель процесса, смысловая нагрузка всей формы, вектор направления. - Остальное — аргументы — материалы, подвергаемые преобразованию. Это — не просто вызов функции, это — организация труда над данными. ## Тег как руководящая сила процесса Тег — не синтаксическое украшение, он — руководящее начало, идеологический центр процесса. - `(фн ...)` -- Организация труда по преобразованию, труд через установление порядка - `(структ ...)` -- Организация материи, создание сложных форм материи - `(если ...)` -- Поиск сущего в практике, реализация диалектики бытия - (... @система ...) -- атрибут, задающий условия существования предельно конкретной истины, ограничивает границы возможного конкретного предметного труда ```text Тег — это руководящая роль в процессе, его деятельная партия: как партия ставит цель, организует ресурсы, руководит исполнением, контролирует процесс и определяет форму результата процесса, но не конкретный результат процесса. ``` ## Круглые скобки — диалектическая граница состояний Скобки — не просто синтаксис, они — отражение закона перехода количества в качество. До скобок: - Данные — потенциальность, - Функция — возможность. Внутри скобок: проявление борьбы и единства противоположностей: - данные и алгоритм, - память и процессор, - декларация и действие. После скобок: - Результат — новое качество, - Состояние изменилось — развитие произошло. - Скобки — не разделители, они — граница скачка, момент, когда количество (аргументы, посредством алгоритмов) переходит в качество (результат). ## Единая форма для всех процессов — отражение единства бытия Отказ от множества синтаксисов (как в `Rust`, `Pascal`, `Python`) в пользу единой формы `(тег ...)` — это пример диалектического решения. ### Вычисление ```prolet (фн CложитьКм (a Км b Км) -> @фикс Км (Слож a b)) ``` ## Определение типа ```prolet (тип Пользователь ( имя Имя возраст Возраст)) ``` ## Условие ```prolet (если (Сравнить x > 0) тогда (Напечатать "положительно")) ``` ## Цикл ```prolet (для x в Данные ((Удвоить х) -> @фикс результат) (ОтправитьПоПочте результат)) ``` ## Диалектический процесс творчества Форма одна — содержание разное, но все они — процессы, все они — формы движения материи. Это — единство противоположностей в синтаксисе: разные по смыслу операции — объединены формой процесса. ## Почему именно круглые скобки? Материалистическое обоснование Не фигурные, не квадратные, не без скобок — именно круглые. - Они замкнуты — отражают целостность процесса, `всё имеет своё начало и свой конец`. - Нет углов — символизируют бесконечность форм движения в рамках единого бытия. Скобки опираются на S-выражения, но это не традиция Лиспа, это не повторение его, а диалектическое развитие: - У Лиспа: `(выражение)` — имеет невыразительную форму, часто архаично и местами нарушает единый подход. - В **prolet**: `(тег ...)` — наделяется одной формой, но разными смыслами. - Круг — форма завершённого движения. В нём нет начала и конца — только непрерывное движение с заключённым в него развитием и переходом в рамках одной всеобщей формы. ## Архитектурные последствия решения ### Все конструкции — процессы и функции Даже определение типа — не декларация, а процесс создания категории бытия. Даже комментарий — является процессом: ```prolet (// Этот модуль отвечает за безопасность пользователей) ``` ### Нет "пассивного кода" Всё, что в скобках — должно быть исполнено, даже если эффект — регистрация, документирование, проверка. ## Расширяемость через теги Новый тег — новая форма организации труда. Пример: ```prolet (ПрцПарал ОбогатитьДанные (загрузить) (индексировать)) (прц ОбновитьСчёт (обновить-счёт) (отправить-уведомление)) ``` Язык не растёт за счёт синтаксиса, а за счёт семантики тегов. ## Педагогическое значение формы Для новичка: - Легко запомнить: всё — в скобках, первое — что делать. - Не нужно учить 10 синтаксисов. - Учится мыслить процессуально, а не декларативно. Для мастера: - Видит: вся система — сеть процессов. - Может анализировать потоки, оптимизировать, рефакторить. - Может бесшовно расширять ядро языка ## Заключение: (тег ...) как онтологическая аксиома `prolet` Текущее синтаксическое решение — не техническое, но — философское, политическое, революционное. `(тег ...)` — это материалистическая формула вычисления: - Тег — знание мира, форма организации действия, руководство процессом, - Аргументы — материя, подлежащая преобразованию, - Скобки — граница процесса, скачок, развитие. Это — не синтаксис, это — закон языка, - как закон перехода количества в качество - закон отрицания отрицания - закон единства и борьбы противоположностей. ### Декларация - В языке **prolet** всякая конструкция есть _процесс_. - Всякий _процесс_ начинается с тега и заключён в круглые скобки. - Тег определяет смысл, скобки — форму движения. - Нет процесса — нет и бытия.