|
@@ -23,11 +23,27 @@
|
|
|
|
|
|
|
|
В язык вводятся не просто абстрактные свойства, а семантическая система, отражающую реальные законы макромира, в котором действует диалектический материализм.
|
|
В язык вводятся не просто абстрактные свойства, а семантическая система, отражающую реальные законы макромира, в котором действует диалектический материализм.
|
|
|
|
|
|
|
|
|
|
+| Модификатор | фикс? | изм? |
|
|
|
|
|
+| ---------------------- | ------------------------ | -------------------------- |
|
|
|
|
|
+| Наблюдение | Одолжение, да | Одолжение, нет |
|
|
|
|
|
+| Передача | Владение, да | Владение, нет |
|
|
|
|
|
+| Изменение | Владение, нет | Владение, да |
|
|
|
|
|
+
|
|
|
## Наблюдение
|
|
## Наблюдение
|
|
|
|
|
|
|
|
-`(фн Посчитать (Яблоко x): Яблоко)`
|
|
|
|
|
|
|
+`(фн Посчитать (Яблоко x) Яблоко)`
|
|
|
|
|
+
|
|
|
|
|
+Наблюдение — ссылка без передачи владения. Поскольку объект не помечен как изменяемый — он одаливается в качестве наблюдения.
|
|
|
|
|
+
|
|
|
|
|
+## Изменение
|
|
|
|
|
+
|
|
|
|
|
+`(прц Проверить(Яблоко х1 @изм Яблоко х2) Рез.Ок)`
|
|
|
|
|
|
|
|
-Наблюдение — ссылка без передачи владения. Поскольку объект не помечен как изменяемый — он передаётся в качестве наблюдения.
|
|
|
|
|
|
|
+При изменении, если аргумент сопровождается `@изм` -- аргумент можно изменять и владение на верхнем контексте потеряно в любом случае. Второй аргумент фиксированный, а значит владение им передано не будет.
|
|
|
|
|
+
|
|
|
|
|
+**ВАЖНО!**
|
|
|
|
|
+
|
|
|
|
|
+В функцию нельзя передавать изменение. Функция -- это идемпотентный закон!
|
|
|
|
|
|
|
|
## Передача владения
|
|
## Передача владения
|
|
|
|
|
|
|
@@ -35,7 +51,11 @@
|
|
|
|
|
|
|
|
Субъект передаёт — в текущий контекст два объекта — сущность исчезает в верхнем контексте, а в нижнем появляется. При встрече признака `@изм` в любом случае владение передаётся. Во втором случае — объект неизменяемый, и для передачи владения в нижний контекст необходимо добавить свойство `@дать` .
|
|
Субъект передаёт — в текущий контекст два объекта — сущность исчезает в верхнем контексте, а в нижнем появляется. При встрече признака `@изм` в любом случае владение передаётся. Во втором случае — объект неизменяемый, и для передачи владения в нижний контекст необходимо добавить свойство `@дать` .
|
|
|
|
|
|
|
|
-Все объекты, объявленные по умолчанию (`@фикс`) не передаются во владение, и поскольку объект неизменяемый -- это является безопасной операцией.
|
|
|
|
|
|
|
+Все неизменяемые объекты не передаются во владение, и поскольку объект неизменяемый -- это является безопасной операцией.
|
|
|
|
|
+
|
|
|
|
|
+**ВАЖНО!**
|
|
|
|
|
+
|
|
|
|
|
+В функцию нельзя передавать владение. Функция -- это идемпотентный закон!
|
|
|
|
|
|
|
|
Всё это — не сокращения ради краткости, это — диалектическое снятие избыточности, движение от длинного слова к точному действию.
|
|
Всё это — не сокращения ради краткости, это — диалектическое снятие избыточности, движение от длинного слова к точному действию.
|
|
|
|
|
|
|
@@ -67,7 +87,7 @@
|
|
|
(//сообщение больше не доступно здесь)
|
|
(//сообщение больше не доступно здесь)
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
-Семантика: после `@дать`— переменная `сообщение` больше не доступна в верхнем контексте. Но не уничтожена — она существует в другом процессе.
|
|
|
|
|
|
|
+Семантика: после `@дать`— переменная `сообщение` больше не доступна в верхнем контексте. Но не уничтожена — она существует в другом контексте.
|
|
|
|
|
|
|
|
> 💡 Это — не смерть, а переход в иное бытие. Это — аналог передачи детали от рабочего к рабочему: рабочий не "теряет" деталь, он передаёт деталь новому рабочему.
|
|
> 💡 Это — не смерть, а переход в иное бытие. Это — аналог передачи детали от рабочего к рабочему: рабочий не "теряет" деталь, он передаёт деталь новому рабочему.
|
|
|
|
|
|
|
@@ -77,23 +97,21 @@
|
|
|
|
|
|
|
|
```prolet
|
|
```prolet
|
|
|
(прц СтальНов(Руда руда @дать Уголь уголь @дать)Сталь(
|
|
(прц СтальНов(Руда руда @дать Уголь уголь @дать)Сталь(
|
|
|
- (Целое руда)(уст _руда)
|
|
|
|
|
- (Целое уголь)(уст _уголь)
|
|
|
|
|
- (Сталь сделать _руда _уголь)(уст сталь) (// Внутри уже содержится сталь)
|
|
|
|
|
- (Сталь шлак _руда _уголь сталь) (// Внутри сталь устанавливает шлак)
|
|
|
|
|
|
|
+ (Сталь Нов(руда уголь))(уст сталь) (// Внутри уже содержится сталь, сигнатура аргументов помечена как @дать)
|
|
|
|
|
+ (Сталь Шлак(сталь))(уст шлак)) (// Внутри сталь содержит шлак, как резхультат переплавки)
|
|
|
(вернуть сталь)
|
|
(вернуть сталь)
|
|
|
)
|
|
)
|
|
|
(Руда 1000)(уст руда)
|
|
(Руда 1000)(уст руда)
|
|
|
(Уголь 2000)(уст уголь)
|
|
(Уголь 2000)(уст уголь)
|
|
|
(СтальНов руда уголь)
|
|
(СтальНов руда уголь)
|
|
|
(уст стальРез)
|
|
(уст стальРез)
|
|
|
-(СтальРез стальПолуч стальРез)(уст сталь)(// Извлечение из стальРез)
|
|
|
|
|
-(СтальРез шлакПолуч стальРез)(уст шлак) (// Извлечение из стальРез)
|
|
|
|
|
|
|
+(СтальРез СтальПолуч(стальРез))(уст сталь)(// Извлечение из стальРез)
|
|
|
|
|
+(СтальРез ШлакПолуч(стальРез))(уст шлак) (// Извлечение из стальРез)
|
|
|
```
|
|
```
|
|
|
|
|
|
|
|
Семантика:
|
|
Семантика:
|
|
|
|
|
|
|
|
-Рудa и уголь — перестают существовать как таковые, но порождает новое качество: металл и шлак.
|
|
|
|
|
|
|
+Рудa и уголь — перестают существовать как таковые, но порождает новое качество: металл и шлак. При это оба аргумента изменять нельзя
|
|
|
|
|
|
|
|
- Это — не уничтожение,
|
|
- Это — не уничтожение,
|
|
|
- Это — производство,
|
|
- Это — производство,
|
|
@@ -135,7 +153,7 @@
|
|
|
- Нет хаотичного уничтожения,
|
|
- Нет хаотичного уничтожения,
|
|
|
- Нет метафизического "владения".
|
|
- Нет метафизического "владения".
|
|
|
|
|
|
|
|
-Есть сознательное действие: наблюдать, передавать, трансформировать. Это — не просто семантика, это — модель материального отношения к ресурсам, где:
|
|
|
|
|
|
|
+Есть сознательное действие: наблюдать, изменять, передавать. Это — не просто семантика, это — модель материального отношения к ресурсам, где:
|
|
|
|
|
|
|
|
- Ничто не пропадает,
|
|
- Ничто не пропадает,
|
|
|
- Всё передаётся,
|
|
- Всё передаётся,
|