Выберите подходящий отчёт сравнения и выясните, какие результаты совпали. Реализация среды выполнения — это программа, которая выполняет исходник Лиспекса или скомпилированные инструкции.
Прочитайте сравнение движков Лиспекса
Сохраните полный пример из руководства по байткоду как rule.lspx.
Он печатает refund с помощью display и newline.
Выполните команду в Native CLI.
lispex compare-engines --receipt tree-vm.json rule.lspxNative сохраняет отчёт, печатает эту сводку и завершается с кодом 0.
{
"all_agree": true,
"receipt": "tree-vm.json",
"schema": "lispex.compare-engines-summary/v1",
"semantic_mismatch_axes": []
}Оба движка записали refund\n в stdout и успешно завершились.
Поле all_agree относится к проверенным семантическим результатам этого исходника.
Откройте tree-vm.json, чтобы прочитать отдельные результаты и идентификаторы.
Выберите новый путь отчёта. Если файл уже существует, команда оставит его без изменений и вернёт код 3.
Выберите формат записи
| Формат записи | Что сравнивается или записывается | С чего начать |
|---|---|---|
lispex.rust-engine-comparison/v1 | интерпретатор Лиспекса и ВМ Лиспекса с одним полученным Core IR и файлом байткода | compare-engines в руководстве по байткоду |
csk.meaning-differential-report/v1 | Поведение интерпретатора Лиспекса и Среды смысла v1 для выбранного исходника | meaning-diff в справочнике CLI |
csk.differential-receipt/v0 | Записанные примеры из исторического корпуса Rust, LIL и LIT | Квитанции Ваучера |
sicp-observation/v1 | Завершение одного запуска SICP, значение, stdout, диагностика, предупреждения и идентификатор артефакта | Руководство по SICP |
Корпус — именованный набор программ для сравнения.
Наблюдение SICP описывает один запуск. Трасса lispex-trace/v1 записывает шаги выполнения.
Читайте поля согласно формату записи.
Разделяйте семантические результаты и расход ресурсов
Сначала проверьте завершение, затем прочитайте обнаруженные различия. Учитывайте указанные в отчёте исходник, вход, идентификаторы исполнителей, профили и каналы вывода.
Читайте семантические различия отдельно от различий в расходе ресурсов. ВМ Лиспекса использует модель стоимости байткода, а интерпретатор Лиспекса использует собственную модель глубины. Сопоставимые наблюдения ресурсов для каждого сравнения перечислены в Реализациях среды выполнения.
Найдите реализацию
| Реализация | Способ выполнения | Записанная информация |
|---|---|---|
| интерпретатор Лиспекса | Интерпретатор Лиспекса в Native и WASM | Результаты поддержки 205 из 205 отслеживаемых строк базовых операций |
| ВМ Лиспекса | Выполняет проверенный байткод, полученный из Core IR | Исходник, Core IR, байткод, результат, диагностика и ресурсы |
| SICP | Явный профиль в Native и WASM @lispex/sicp | sicp-observation/v1 и lispex-trace/v1 |
Строка базовой операции обозначает одну операцию в реестре возможностей. Результат поддержки показывает, предоставляет ли реализация эту операцию. Числа выше относятся к строкам реестра. Число примеров корпуса обозначает количество выполненных программ. Сравнение движков записывает результаты для точно указанных файлов и исполнителей.
LIL и LIT выполнили свою задачу внутренней перекрёстной проверки. В Лиспексе 1.21 они выведены из эксплуатации, чтобы снизить дальнейшие затраты на сопровождение. Числа LIL 205/205 и начальной LIT 84/205 относятся к историческим таблицам процедур. Читайте их вместе с объяснением завершения поддержки и записями версий.
Отдельные операции перечислены в каталоге текущих возможностей. Различия продуктов и реализаций описаны в реализациях среды выполнения.