Выберите вычислитель
lispex embed выполняет профиль решений
lispex/r7rs-rule-embedded-core/1. lispex embed full выполняет все 205 строк
примитивов в lispex/r7rs-rule-current-profile-bounded/1. Оба продукта создают
новый экземпляр для каждой операции и разделяют ресурсы подготовки и
вычисления.
Полный профиль использует ту же форму команд.
lispex embed full prepare --source policy.lspx --limits prepare-limits.json --out policy.lpxfull
lispex embed full evaluate --prepared policy.lpxfull --input input.lpxvalue --limits evaluation-limits.json --out result.lpxfull
lispex embed full inspect --artifact result.lpxfull
lispex embed full verify --artifact result.lpxfull
lispex embed full replay --artifact result.lpxfull1. Подготовьте правило
Создайте prepare-limits.json.
{
"raw_source_bytes": 4096,
"prepare_work": 1000000,
"logical_allocation": 1000000,
"syntax_depth": 64
}Подготовьте исходный код.
lispex embed prepare \
--source policy.lspx \
--limits prepare-limits.json \
--out policy.lpxembedПодготовка читает UTF-8, нормализует программу, строит и проверяет канонический байткод, проверяет выбранный профиль и записывает идентификаторы исходника, семантического правила, набора функций, байткода, вычислителя и ресурсов.
2. Выполните подготовленное правило
Ввод представляет собой одно каноническое значение
lispex.embed-value/v1. Создайте evaluation-limits.json.
{
"canonical_input_bytes": 4096,
"eval_work": 1000000,
"logical_allocation": 1000000,
"semantic_frames": 1000,
"traversal_depth": 256,
"output_bytes": 1000000,
"diagnostic_bytes": 1000000,
"transcript_bytes": 1000000,
"transcript_events": 100,
"result_bytes": 1000000
}Выполните подготовленный артефакт.
lispex embed evaluate \
--prepared policy.lpxembed \
--input input.lpxvalue \
--limits evaluation-limits.json \
--out result.lpxembedРезультат хранит расход подготовки и вычисления раздельно. Portable core связывает правило, ввод, выбранные ресурсы, артефакт вычислителя, transcript и результат.
3. Изучите, проверьте и повторите
lispex embed inspect --artifact result.lpxembed
lispex embed verify --artifact result.lpxembed
lispex embed replay --artifact result.lpxembedinspect печатает стабильную JSON-проекцию. verify заново вычисляет конверт,
хэши, категорию, значения и portable core. replay вычисляет записанный запрос
в новом экземпляре и сопоставляет результат и portable core.
Роли продуктов
Артефакт embed записывает детерминированные семантические исходы, отказы запросов и статус движка. Обмен решениями добавляет конверты издателя и политику получателя. Ваучер аутентифицирует подписанное свидетельство и вычисляет локальный шлюз решения. Хост-приложение владеет сетевым доступом и деловыми действиями.
Куда дальше
Точные идентификаторы и конечные классы описаны в контракте вычислителя с управлением ресурсами.