|
|
@@ -77,15 +77,14 @@
|
|
|
```prolet
|
|
|
(// Внутри — следует использовать байтовый поток,
|
|
|
тип на выходе -- `нечто`)
|
|
|
-(ВебЗапросить "/data" @вход
|
|
|
+(Веб Запросить "/data" @вход
|
|
|
@требует_ревью)(уст нечто)
|
|
|
(// тип: фиксированный срез байтов)
|
|
|
|
|
|
(// Обратный переход — только через проверку)
|
|
|
(ЕслиНечто нечто как Пользователь
|
|
|
- тогда (
|
|
|
- (Привести нечто к Пользователь)
|
|
|
- (уст пользователь))
|
|
|
+ тогда ((Привести нечто к Пользователь)
|
|
|
+ (уст пользователь))
|
|
|
иначе (ПечатьОшибка "неверный формат")
|
|
|
)
|
|
|
```
|
|
|
@@ -103,12 +102,12 @@
|
|
|
|
|
|
🌍 Два мира:
|
|
|
|
|
|
-| МИР PROLET | ВНЕШНИЙ МИР |
|
|
|
-|-----------------------------|-------------------------------|
|
|
|
-| Типы — первичны | Типы — отсутствуют или скрыты |
|
|
|
-| Данные — структурированы | Данные — байтовый поток |
|
|
|
-| Порядок — внутренний | Хаос — норма |
|
|
|
-| @конст, @фикс, @изм — везде | Никаких категорий |
|
|
|
+| МИР PROLET | ВНЕШНИЙ МИР |
|
|
|
+| ---------------------------------------------- | ------------------------------------------------------ |
|
|
|
+| Типы — первичны | Типы — отсутствуют или скрыты |
|
|
|
+| Данные — структурированы | Данные — байтовый поток |
|
|
|
+| Порядок — внутренний | Хаос — норма |
|
|
|
+| @конст, @фикс, @изм — везде | Никаких категорий |
|
|
|
|
|
|
`@вход` — это не свойство, это — онтологическая граница, где байт становится сущим, а хаос — формой порядка.
|
|
|
|
|
|
@@ -121,7 +120,7 @@
|
|
|
```prolet
|
|
|
(// по умолчанию статичность на выходе @фикс,
|
|
|
параметр контакта с внешним миром -- @вход)
|
|
|
-(ПолучитьИзApi)(уст x)
|
|
|
+(Api ПолучитьИз)(уст x)
|
|
|
|
|
|
(// Ошибка: (x + 1) — запрещено)
|
|
|
(ЕслиНечто x как Целое
|
|
|
@@ -157,7 +156,7 @@
|
|
|
)
|
|
|
```
|
|
|
|
|
|
-Приведение с проверкой `(ТипКонверт х к Пользователь)(уст х @изм)` падает, если не подходит.
|
|
|
+Приведение с проверкой `(Привести х к Пользователь)(уст х @изм)` падает, если не подходит.
|
|
|
|
|
|
### Функциональный стиль
|
|
|
|
|
|
@@ -165,9 +164,8 @@
|
|
|
|
|
|
```prolet
|
|
|
(ЕслиНечто байты к Пользователь
|
|
|
- тогда (
|
|
|
- (Привести байты в Пользователь)
|
|
|
- (уст х))
|
|
|
+ тогда ((Привести байты в Пользователь)
|
|
|
+ (уст х))
|
|
|
иначе (ПечатьОшибка "ожидалось число")
|
|
|
)
|
|
|
```
|
|
|
@@ -189,7 +187,7 @@
|
|
|
```prolet
|
|
|
(// Сначала — динамически,
|
|
|
"ЗапросАпи" определён как @вход, и данные как @фикс)
|
|
|
-(прц ЗапросАпи @вход(): нечто(
|
|
|
+(прц ЗапросАпи @вход() нечто(
|
|
|
....)
|
|
|
)
|
|
|
(ЕслиНечто нечто как ФорматV1
|
|
|
@@ -197,16 +195,15 @@
|
|
|
иначе (...)
|
|
|
)
|
|
|
|
|
|
-(// Через месяц практики — выносим в структур)
|
|
|
+(// Через месяц практики — выносим в структуру)
|
|
|
(структ ФорматV1
|
|
|
@поле1 НакладнаяНазвание
|
|
|
@поле2 СписокЦелое)
|
|
|
|
|
|
(// Использование через приведение, результат определён как @фикс)
|
|
|
(ЕслиНечто х как ФорматV1
|
|
|
- тогда (
|
|
|
- (ЧитатьИз "data/sample.json")
|
|
|
- (уст конфигТекст))
|
|
|
+ тогда ((ЧитатьИз "data/sample.json")
|
|
|
+ (уст конфигТекст))
|
|
|
)
|
|
|
```
|
|
|
|
|
|
@@ -280,15 +277,14 @@
|
|
|
|
|
|
```prolet
|
|
|
(// Внешний API — неизвестная структура)
|
|
|
-(ВебЗапросить "https://api.partner/data" @вход)
|
|
|
+(Веб Запросить "https://api.partner/data" @вход)
|
|
|
(уст нечто)
|
|
|
|
|
|
(// Проверка и переход к статике)
|
|
|
(ЕслиНечто нечто как АнализДанных)
|
|
|
- тогда (
|
|
|
- (Привести нечто в АнализДанных)
|
|
|
- (уст отчёт @изм)
|
|
|
- (ОтправитьОтчёт отчёт))
|
|
|
+ тогда ((Привести нечто в АнализДанных)
|
|
|
+ (уст отчёт @изм)
|
|
|
+ (ОтправитьОтчёт отчёт))
|
|
|
иначе (ПечататьОшибку "некорректные данные"))
|
|
|
|
|
|
(// Определение типа на основе практики)
|