01_55.md 12 KB

pro.01_55 Диалектика формы языка программирования

В качестве базовой реализации языка программирования prolet принята форма заключение всех сущностей в круглые скобки. На первом месте стоит контекст, имеющий смысл "в заданных границах исполни действие в скобках". Единственная форма, не имеющая контекста -- пара круглых скобок: контекст отменяющий результат (см. далее).

Синтаксис закрепляет онтологический принцип в форме языка.

💡 «Исполни контекст в скобках» — это не инструкция, это — утверждение о природе конкретного вычисления как материи в движении.

Разберём решение в свете диалектического материализма, и закрепим его как фундаментальную аксиому языка prolet.

Онтологическая основа: вычисление как процесс

Принцип:

Только процесс может породить результат. Нет "значения без действия", нет "сущего без движения".

Форма (%контекст %возможно_действие %возможно_аргументы...) — выражает единство формы и содержания:

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

Это — не просто вызов функции, это — организация труда над данными.

Контекст как руководящая сила процесса

Контекст — не синтаксическое украшение, он — руководящее начало, идеологический центр процесса.

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

💡 Контекст — это границы процесса и руководящая роль в процессе, его пространство возможного: как управляющий центр организует ресурсы, руководит исполнением, контролирует процесс и определяет форму результата процесса, но не конкретный результат процесса.

Круглые скобки — диалектическая граница состояний

Скобки — не просто синтаксис, они — отражение закона перехода количества в качество.

До скобок:

  • Данные — потенциальность,
  • Функция — возможность.

Внутри скобок: проявление борьбы и единства противоположностей:

  • данные и алгоритм,
  • память и процессор,
  • декларация и действие.

После скобок:

  • Результат — новое качество,
  • Состояние изменилось — развитие произошло.
  • Скобки — не разделители, они — граница скачка, момент, когда количество (аргументы, посредством алгоритмов) переходит в качество (результат).

Единая форма для всех процессов — отражение единства бытия

Отказ от множества синтаксисов (как в Rust, Pascal, Python) в пользу единой формы (%контекст ...) — это пример диалектического решения.

Вычисление

(фн CложитьКм (Км a Км b) Км(
    (Слож a b)
    (вернуть рез)
    )
)

Определение атома (структуры)

(атом Пользователь
    @имя     Имя
    @возраст Возраст)

Условие

(если (Сравнить x > 0)
    тогда (Напечатать "положительно"))

Цикл

(для x в Данные
    (Удвоить х)(уст результат)
    (ОтправитьПоПочте результат))

Диалектический процесс творчества

Форма одна — содержание разное, но все они — процессы в рамках конкретного контекста, все они — формы движения материи.

💡 Это — единство противоположностей в синтаксисе: разные по смыслу операции — объединены границей конкретного контекста.

Почему именно круглые скобки? Материалистическое обоснование

Не фигурные, не квадратные, не без скобок — именно круглые.

  • Они замкнуты — отражают целостность процесса, всё имеет своё начало и свой конец.
  • Нет углов — символизируют бесконечность форм движения в рамках единого бытия.

Скобки опираются на S-выражения, но это не традиция Лиспа, это не повторение его, а диалектическое развитие:

  • У Лиспа: (выражение) — имеет невыразительную форму, часто архаично и местами нарушает единый подход.
  • В prolet: (%контекст ...) — наделяется одной формой, но разными смыслами.
  • Круг — форма завершённого движения. В нём нет начала и конца — только непрерывное движение с заключённым в него развитием и переходом в рамках одной всеобщей формы.

Архитектурные последствия решения

Все конструкции — процессы и функции

Даже определение протонов и нейтронов — не декларация, а процесс создания категории бытия.

Даже комментарий — является процессом:

(// Этот модуль отвечает за безопасность пользователей)

В данном случае, комментарий -- это не физически выполняемый контекст, а контекст на этапе компиляции, который при оптимизированный сборке может быть полностью исключён после итоговой сборки программы.

Также определение протонов и нейтронов, атомов и типажей -- это процессы на этапе компиляции, которые могут быть оптимизированы и исключены в финальной сборке.

Элемент Этап компиляции Этап выполнения Влияние на бинарный файл
Комментарий Генерация документации ❌ Не выполняется ❌ Исключается
Атом Статическая проверка, оптимизация ❌ Не выполняется ✅ Оптимизирован
Код Генерация бинарного файла ✅ Выполняется ✅ Сохраняется

Нет "пассивного кода"

Всё, что в скобках — должно быть исполнено, даже если эффект — регистрация, документирование, проверка.

Расширяемость через контексты

Новый тип контекста — новая форма организации труда. Пример:

(ПрцПарал ОбогатитьДанные
    (загрузить)
    (индексировать))

(прц ОбновитьСчёт(
    (обновить-счёт)
    (отправить-уведомление))
)

Язык не растёт за счёт синтаксиса, а за счёт семантики контекстов.

💡 Педагогическое значение формы

Для новичка:

  • Легко запомнить: всё — в скобках, первое — что возможно сделать.
  • Не нужно учить 10 синтаксисов.
  • Учится мыслить процессуально, а не декларативно. В конкретных материальных условиях.

Для мастера:

  • Видит: вся система — сеть процессов;
  • Может анализировать потоки, оптимизировать, рефакторить;
  • Может бесшовно расширять ядро языка.

🎯 Заключение: (%контекст ...) как онтологическая аксиома prolet

✅ Текущее синтаксическое решение — не техническое, но — философское, политическое, революционное.

(%контекст ...) — это материалистическая формула вычисления:

  • Контекст — знание мира, форма организации действия, руководство процессом,
  • Аргументы — материя, подлежащая преобразованию,
  • Скобки — граница процесса, скачок, развитие.

💡 Это — не синтаксис, это — закон языка,

  • как закон перехода количества в качество,
  • закон отрицания отрицания,
  • закон единства и борьбы противоположностей.

Декларация

  • В языке prolet всякая конструкция есть контекст.
  • Всякий контекст начинается с имени и заключён в круглые скобки.
  • Контекст определяет границы и смысл, скобки — форму движения.
  • Нет контекста — нет и конкретного бытия.