Песочница

История

История Lispex v1: от первого детерминированного runtime до точных изображений, проверенного байткода, Native Topaz AOT и суда четырёх маршрутов.

Как рассуждать

  • Начальная линия v1 создала детерминированный reader, гигиенический normalizer, trampoline evaluator, числовой профиль, модель управления, основу библиотеки, WASM и Playground до первого сводного тега v1.2.
  • v1.2 развил вторую проверяемую линию исполнения: canonical Core, Meaning Graph, галереи решений, differential receipts, offline verification, replay и проверенные мутациями границы свидетельств.
  • v1.3 превратил эту основу в процессы Lispex Vouch и Bridge; v1.4 обновил поверхности native, npm, WASM, Playground и загрузок.
  • v1.5 опубликовал ограниченные линии Lispex-in-Lispex и Lispex-in-Topaz, а затем ввёл первые типизированные границы аутентификации, повторного выполнения и локального gate в Vouch.
  • v1.6 собрал переносимые инструменты Vouch с авторизацией точного source; v1.7 привязал любое применение с полномочиями к отдельно переданному потребителем запросу source/input.
  • v1.8.0 добавил точные Lispex Images, не наделяя байты изображения полномочиями. v1.8.1 превратил Modern-документацию в систему обучения для новичка, v1.8.2 отделил нормативный профиль от поддержки интерпретаторов, последующие checkpoints завершили знаменатель возможностей LIL, v1.8.14 добавил инспекцию канонического разрешённого Core IR, v1.8.15 — проверенный Native-байткод и явную Rust VM, v1.8.16 — необязательное согласие compiled VM в Vouch с запросом, v1.8.17 — детерминированное форматирование и редактор, v1.8.18 — явное выполнение байткода в точной установленной Topaz 5.11 VM и сравнение Rust/Topaz, v1.8.19 — полно-профильный Native-маршрут Lispex-to-Topaz AOT, а v1.8.20 — единый неполномочный суд четырёх явных маршрутов.
  • v1.9.0 публикует всю эту линию v1.8.x как единый продукт переносимого исполнения, не меняя профиль языка или стандартный маршрут Rust tree.
  • Версии языка, пакета и контрактов артефактов связаны, но не обязаны меняться одновременно.
  • Профиль runtime задаёт поведение вычисления, а именованные контракты CSK и Vouch — схемы своих артефактов. Совпадение номера пакета само по себе не устанавливает совместимость артефактов.

Значимые этапы v1

ВерсияГлавное изменениеГраница
v1.9.0публикует как единый продукт систему обучения, сходимость LIL 205/205, канонический Core IR, проверенный байткод и Rust VM, request-bound compiled Vouch, форматирование исходника, явные exact Topaz VM/AOT и суд четырёх маршрутовсохраняет lispex-profile-1.5, Rust tree как reference/default, различия поддержки и ресурсов маршрутов, нулевой fallback и typed-неповышение Vouch. Не заявляет доказательство всего профиля или независимого свидетеля, не меняет defaults F7 и не выдумывает compiled-маршруты npm/браузера/Песочницы
v1.8.20добавляет Native compare-routes: одно выведение frontend для исходника/входа, допуск точно соответствующего AOT, явное выполнение tree/Rust VM/Topaz VM/AOT и неперезаписываемую квитанцию lispex.route-comparison/v1 с семантическими и сопоставимыми ресурсными осями. Исправляет charge примитива и структурированные resource-fault AOT, детерминированно финализирует macOS executable с точными identity strip/sign и повторно связывает артефакт Topazсохраняет маршруты и default независимо, оставляет отсутствующие счётчики tree и реальные различия ресурсной диагностики видимыми, не повторяет ошибку через другой маршрут и не создаёт семейство, доказательство, evidence Vouch или gate. npm явно отклоняет команду; открытый WASM, браузер и Песочница не имеют замены
v1.8.19добавляет для Native macOS ARM64 полно-профильный Lispex-to-Topaz AOT: детерминированные читаемые Topaz и source map, допуск точных установленных инструментов сборки Topaz/Rust, строгие build, inspect, validate и run продукта без исходника, канонические полноразрядные ресурсы u64, диагностики, предупреждения и пять видимых нулевых fallbackсохраняет lispex-profile-1.5, восстановительные маршруты Rust tree/VM, отдельную Topaz VM, поведение npm/WASM/браузера/Песочницы и все typed-границы полномочий Vouch. AOT с приоритетом корректности — проверяемый исполняемый материал, а не межлинейная квитанция, доказательство эквивалентности, доверие производителю или вход gate
v1.8.18добавляет в Native для macOS ARM64 явный маршрут bytecode run --engine topaz --topaz-vm через точный установленный продукт Topaz 5.11 lispex-topaz-vm/v1, квитанции compare-vms над одним проверенным байткодом и сохраняет все операции компиляции Core IR/байткода в оптимизированном NativeRust остаётся движком по умолчанию. Лиспекс строго связывает продукт, запрос, результат, identity байткода/входа, канонические полноразрядные ресурсы u64 и нулевой fallback; ошибка не запускает другой движок. Транспорт и сравнение Topaz диагностические, не входят в Vouch, не создают полномочий и не доказывают независимую эквивалентность всего языка. В npm, открытом WASM, Песочнице, других целях и AOT маршрута Topaz VM нет
v1.8.17добавляет детерминированный Native lispex fmt, тихий --check, безопасный --write и Format Document в VS Code/Open VSX с сохранением комментариев, pragma, tokens и исходного написания литераловформаттер проверяет до вывода или замены и меняет только пробельное окружение; нет выполнения, изменения lispex-profile-1.5, канонизации значений, evidence или fallback в npm/WASM/Песочницу. Публикация в marketplaces и production-выпуск требуют отдельных полномочий
v1.8.16добавляет канонический lispex.vouch-compiled-artifact/v1, Native-команды vouch compiled build/inspect/validate, явный vouch verify --reexecute --compiled-artifact и compiled gate, требующий точного повторного выведения из исходника и совпадения протоколов текущих tree/Meaning и проверенной Rust VMпотребитель по-прежнему передаёт точные исходник и вход, аутентификация и текущий tree/Meaning остаются обязательными, fallback отсутствует. Обычный байткод, контейнер, хэш, отчёт, вывод VM или происхождение compiler не создают свидетельство или полномочие. VM относится к той же линии Rust, а не к независимому свидетелю; npm, открытый WASM и Песочница не предоставляют compiled Vouch
v1.8.15добавляет канонический бинарный lispex.bytecode/v1, строгий предисполнительный lispex.bytecode-verifier/v1, полный lispex-rust-vm/v1, команды Native bytecode build/inspect/validate/run, явный --engine vm для исходника и точные неперезаписываемые отчёты tree/VMtree остаётся эталоном и стандартным движком, а выбранная VM не имеет fallback. Tree и VM разделяют Rust-значения и листья примитивов, поэтому сравнение — свидетельство одной линии, а не независимый бэкенд или доказательство. npm, открытый WASM и Песочница не предоставляют bytecode/VM; байткод, результат verifier, VM или сравнение не входят в цепочку полномочий Vouch
v1.8.14добавляет канонический lispex.core-ir/v1 для всего профиля со стабильными ID 205 примитивов, разрешёнными лексическими и глобальными ячейками, точными захватами замыканий и хвостовыми позициями, координатами исходника, аудиторской проекцией Canonical Core и командами Native core-ir build, validate, inspectCore IR — невыполняемый материал integrity-only той же линии Rust: он не заменяет Meaning Graph, не аутентифицирует происхождение, не связывает запрос, не доказывает независимое согласие и не даёт полномочий Vouch; npm, открытый WASM и Песочница не предоставляют reader или команды Core IR
v1.8.13реализует в LIL %, list-first и list-rest с точными совместимыми предупреждениями W330/W331, повышая текущее покрытие возможностей с 202/205 до 205/205предупреждение возникает только при запуске настоящего deprecated-примитива, сохраняет порядок, выдаётся один раз на место исходника, остаётся при последующей ошибке и отделено от stdout, значений и диагностики; полное покрытие возможностей не утверждает эквивалентность всего языка, не меняет Rust или LIT, историческую квитанцию, полномочия Vouch и не разрешает production-выпуск
v1.8.12реализует в LIL display, write, newline и println через ограниченный private effect sink, повышая текущее покрытие с 198/205 до 202/205явный вывод и автопечать корневых результатов сохраняют точный порядок stdout, а завершённые значения получают отдельную typed-проекцию; rendering, возврат нуля значений, частичный вывод и arity совпадают с профилем без stdout host или fallback Rust. Deprecated-псевдонимы с предупреждениями, изменения Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch и разрешение production-выпуска остаются вне границы
v1.8.11реализует в LIL все 12 оставшихся процедур высшего порядка для коллекций через явные кадры продолжения гостевой машины, повышая текущее покрытие с 186/205 до 198/205, а guest-calling — с 6/18 до 18/18порядок callback, строгое boolean-короткое замыкание, контексты одного/отбрасываемых значений, символьный результат строки, снимок вектора, ошибки и одноразовые выходы остаются внутри LIL без callback host или fallback Rust; output-строки, deprecated-псевдонимы, изменения Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch и разрешение production-выпуска остаются вне границы
v1.8.10реализует в LIL девять операций деления с точными промежуточными значениями и свёртки gcd/lcm, а exact-integer expt и двухзначный exact-integer-sqrt допускает через записанное числовое ядро, повышая покрытие с 173/205 до 186/205знаки floor/truncate, contagion exactness, domain-ошибки и несколько значений совпадают с профилем; deprecated %, guest-calling и output-строки, изменения Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch и разрешение production-выпуска остаются вне границы
v1.8.9допускает сохраняющие exactness floor, ceiling, round, truncate, преобразование exact/inexact и проверку чётности через записанное числовое ядро host, а также реализует в LIL свёртки mixed-tower min/max, повышая покрытие с 161/205 до 173/205round остаётся half-even, а exact восстанавливает конечное двоичное значение; происхождение числового ядра явно, без % и семейства целочисленного деления, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска
v1.8.8допускает 18 предикатов, преобразований и сравнений без учёта регистра для символов и строк через явно записанное Unicode-ядро host LIL, повышая покрытие с 143/205 до 161/205происхождение ядра host остаётся явным; нет перехода к полной Unicode CaseFolding, locale collation, нормализации, скрытого fallback, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска
v1.8.7реализует внутри LIL копирование и навигацию по спискам, общий хвост, детерминированные конструкторы списков и строк, а также преобразование строк и векторов по индексам символов, повышая покрытие с 135/205 до 143/205нет устаревших alias с предупреждениями, нового делегирования или fallback в host, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска
v1.8.6реализует внутри LIL чувствительные к регистру цепочки порядка символов и строк по Unicode scalar и лексикографическому порядку, повышая покрытие с 127/205 до 135/205нет locale collation, нормализации, case folding, нового делегирования или fallback в host, изменений Rust или семантики языка, LIT, исторической квитанции, полномочий Vouch или разрешения production-выпуска
v1.8.5реализует внутри LIL три предиката башни конечных вещественных, структурный !=, memv, assoc, assq и assv, повышая текущее покрытие с 119/205 до 127/205нет нового делегирования или fallback в host, изменений Rust или семантики языка, изменений LIT, переписывания исторической квитанции, полномочий Vouch или разрешения production-выпуска
v1.8.4составляет внутри LIL abs, square, три предиката знака/нуля, boolean=? и symbol=?, повышая текущее покрытие с 112/205 до 119/205нет нового делегирования или fallback в host, изменений Rust или семантики языка, изменений LIT, переписывания исторической квитанции, полномочий Vouch или разрешения production-выпуска
v1.8.3реализует внутри написанного на Lispex ядра LIL все 27 недостающих составных селекторов пар от caar до cddddr, повышая текущее покрытие LIL с 85/205 до 112/205нет fallback в host, изменений Rust или семантики языка, изменений LIT, переписывания исторической квитанции, полномочий Vouch или разрешения production-выпуска
v1.8.2помечает все 205 текущих возможностей как нормативные profile-required, отдельно классифицирует решения host-only и future-profile и даёт каждому из 179 исторических расхождений пар одну проверяемую машиной основную причинусемантика языка, числа поддержки Rust/LIL/LIT, байты исторической квитанции, полномочия Vouch, изображения и граница production-выпуска не меняются; классификация не означает принятие или исправление
v1.8.1перестраивает Modern-документацию в курс для новичка из четырёх шагов, обзор синтаксиса, десять групп со сквозной нумерацией и 53 полноценные поверхности на английском, корейском и русском; в Загрузках появляются точная проверка версии, восстановление команд и официальные ссылки VS Code/Open VSXменяются только документация и представление продукта; Classic сохранён побайтно, а lispex-profile-1.5, возможности Rust/LIL/LIT, формат изображений, схемы Vouch и типизированные полномочия не меняются
v1.8.0публикует точные Lispex Images как единый продукт на том же Rust для Native, npm, Node/browser WASM и локального Playground, а полностью доказанное изображение передаёт точные байты source в существующий Request-Bound Vouchизображение сохраняет точные открытые байты source и commitments целостности, но не даёт секретности, подписи, provenance, независимого свидетеля, trust, свежести, выбора запроса, корректности решения или полномочия исполнения
v1.7.3полностью доказанное Lispex Image передаёт точные байты source в Native Vouch identity, policy, issue, inspect, authentication, re-execution и gate, а также в npm identity, policy и authenticated verify; поддерживаемый refund-window использует image-ingress по всей цепочкеизображение выбирает только представление source; обязательны consumer-owned binding source/input и прежняя typed-цепочка полномочий, а PNG/ZIP, inspection JSON, bundle и report не создают полномочия
v1.7.2расширяет единое Rust-ядро изображений на npm CLI, Node/browser WASM и полностью локальный Playground: создание/открытие, навигация по доказанным страницам, точное восстановление, скачивание и отдельный явный run; single/multipage bytes всех поверхностей совпадают с фиксированными C1 goldensame-core byte parity означает parity поставки, а не независимого свидетеля; локальные preview, inspection JSON, восстановленный source и download не являются Vouch evidence или полномочием
v1.7.1добавляет канонические изображения Lispex в Native: точное кодирование source в PNG/ZIP, inspection открытых commitments, побайтное декодирование и явное выполнение только после полного доказательства каноничностиканоничность изображения — это целостность, а не секретность, подпись, provenance, trust, request binding, Vouch evidence или полномочие исполнения; npm, public WASM и Playground пока не предоставляют image-операции
v1.7.0публикует Request-Bound Vouch как единый потребительский процесс: вывести exact identity, создать и проверить policy, выпустить bundle, аутентифицировать его в Native или npm с необязательным внешним запросом source/input, затем повторно выполнить и применить gate только к этому live-запросу в Nativeunpinned-проверка bundle остаётся только аутентификацией; равенство запроса не означает свежесть, защиту от replay, identity, provenance, корректность policy или полномочие внешнего действия
v1.6.4делает verification-only npm Vouch WASM воспроизводимым до тех же отслеживаемых байтов из чистого, изменённого или перемещённого checkout и позволяет автономному аудиту export-поверхности работать из чистого checkoutфиксированные неаттестующие build placeholder и виртуальный путь исходников не являются Git provenance или заявлением о воспроизводимой сборке Native, browser WASM либо других платформ
v1.6.3Native re-execution и gate bundle требуют совпадающие внешние source/input и проводят к grant только live request-bound evidence; обновление локализованной документации добавляет пространство /v1.6 публичной minor-версии, Загрузки, нумерацию current/Classic, выровненные поверхности, краткие заголовки браузера, сбалансированный responsive hero, корейский wordmark 리스펙스 и единую читаемую locale-aware систему подписей для landing, форм/данных, результатов, pager и категорий менюunpinned verify bundle остаётся только аутентификацией; равенство запроса не является свежестью, намерением или внешним полномочием
v1.6.2Pinned bundle verify в Native/npm сначала аутентифицирует, затем сравнивает отдельные точные байты source/inputточное равенство запроса не является свежестью, replay prevention, намерением человека или внешними полномочиями
v1.6.1Native/npm vouch key-id, engine-id и input-id вместе с source-id завершают публичный вывод identity общим Rustidentity не является происхождением, trust, проверкой input, аутентификацией, evidence или полномочием исполнения
v1.6.0объединяет portable bundle v0, key-local exact-source policy v1, общие Rust source-id/policy и raw/bundle-аутентификацию в один потребительский процесс Vouchсемантический профиль и схемы artifacts заморожены; только Native выдаёт, повторно выполняет или применяет gate
v1.5.8Native/npm vouch policy create/check составляет и проверяет каноническую потребительскую trust policy v1 общим Rustкорректная конфигурация не является выбором доверия, аутентификацией, evidence, re-execution, grant решения или внешними полномочиями
v1.5.7Native/npm vouch source-id --source выводит identity точных ограниченных байтов общим ядром Rustвывод не является одобрением исходника, созданием policy, доверием к artifact, аутентификацией или evidence
v1.5.6trust policy v1 отклоняет полностью корректное подписанное правило, если точная identity исходника не разрешена выбранным ключомv0 остаётся без ограничения исходника; нет одобрения input/request, свежести, защиты от replay или переносимых полномочий
v1.5.5ограниченный канонический bundle envelope/source/input; выдача/приём Native и приём npm только для аутентификацииtrust/profile/decision снаружи; WASM и Playground не предоставляют аутентификацию Vouch
v1.5.4npm vouch verify аутентифицирует подписанные конверты Native и точные source/input/profile проверочной сборкой общего ядра Rust, совпадая с байтами отчёта v0 Native и результатами C-VN-06паритет упаковки одного ядра, а не независимый свидетель; npm не может выдавать, повторно выполнять, применять gate, раскрывать живое evidence или повышать сериализованный отчёт; public WASM и Playground не экспортируют аутентификацию
v1.5.3Native vouch gate --require-decision требует аутентификацию, текущее согласие полного transcript и точное совпадение решения до возврата локального grantлокальный результат процесса только для Native; сериализованные отчёты, Bridge и evidence только аутентификации не дают grant; нет утверждений о свежести, предотвращении replay, identity, корректности политики, развёртывании или разрешении внешнего действия
v1.5.2namespaced-процесс Vouch, поддерживаемый сценарий окна возврата, граница capabilities LIL 85/205 и нативный vouch verify --reexecute с раздельными результатами аутентификации и согласия текущего выполненияповторное выполнение доступно только в native и остаётся наблюдением одной линии Rust; нет утверждений об историческом выполнении, свежести, независимом свидетеле, авторизации, корректности политики или эквивалентности всего языка
v1.5.1нативная выдача Vouch: допустимые проверенные решения формируются и подписываются как конверты DSSE, затем аутентифицируются по политике доверия потребителятолько нативные release-бинарники; действительная подпись разрешает ключ для точных проверенных байтов, но не доказывает личность, время, честность развёртывания, корректность политики или более широкую семантическую эквивалентность
v1.5.0ограниченные линии LIL и LIT, реестры capabilities 84 из 205, общая квитанция трёх семейств и согласованная поставка native/npm/WASM/Playgroundвсе три семейства совпадают в 59 из 144 случаев; 179 попарных расхождений раскрыты; нет утверждений о всём языке или независимости исходника LIT
v1.4.0обновление runtime и поставки: apply и multiple values в проверяемом evaluator, ограниченный receipt fuel, согласование native/npm/WASM/Playground и закреплённые native downloadsпредыдущий публичный выпуск; native и WASM остаются одной линией Rust
v1.3.11канонический read-side Bridge, closed-world nested checks, проверка связанных артефактов и optional contextусиление native canonical reader осталось отложенным
v1.3.10adversarial-проверки классов артефактов и явные non-goals подлинностибез подписей, issuer binding, timestamping и non-repudiation
v1.3.9корпус welfare-style replay из 12 случаевпример evaluation artifact, не юридическая или policy-модель
v1.3.8форма отчёта Vouch Bridge, offline checker и пример внешнего движкаchecker не запускает и не доказывает внешний движок
v1.3.1-v1.3.7замкнут практический цикл Vouch: native receipt generation, identity release-build движка, offline verify, versioned replay corpus и явная граница подлинностиVouch записывает объявленное исполнение и связи байтов; не добавляет подпись или доверие издателю
v1.3.0decision receipts проверяемого профиля, offline verify, replay и release gatesограниченный профиль, не утверждение корректности всего языка
v1.2.15-v1.2.19реестр внешних Scheme-oracle, авторские semantic vectors, строгие readers артефактов, tamper fixtures и mutation drillsусиление и измеренные свидетельства, не доказательство полной совместимости Scheme
v1.2.14расширен проверяемый профиль решений и галерея: search, rounding, обход any/all, строгие faults и более ясный replayисполнение профиля, не вся поверхность языка Lispex
v1.2.9-v1.2.13граница проверяемого профиля, intrinsic binding, галерея control/arithmetic, closures и обходы, host-input binding, npm offline verify и replay UXвошло единым baseline; промежуточные номера были этапами контрактов, а не отдельными тегами
v1.2.2-v1.2.8версионированные canonical Core, execution receipt, conformance manifest, Meaning Graph и lowering, отдельный evaluator Meaning Environment и differential receipt contractпроверяемое подмножество и линия артефактов рядом с reference interpreter, а не его замена
v1.2.0первый сводный тег v1; добавлены восстанавливаемые raise, guard и with-exception-handler, а также native, Node/WASM, Playground и downloadshandlers используют закреплённую модель управления Lispex, а не исключения host
Начальная линия v1 (2026-06-28/29)детерминированный reader, гигиенический normalizer, trampoline evaluator, exact integer/rational и finite-real профиль, закреплённый rendering, one-shot upward call/cc, dynamic-wind, multiple values, proper-tail apply, широкие R7RS-shaped процедуры, WASM и Playgroundне выпуск v1.0 или v1.1; это датированные коммиты, позже объединённые в v1.2

Частая ошибка

В репозитории нет release-тегов v1.0 или v1.1. Поэтому «начальная линия v1» — датированный этап реализации, а не выдуманный выпуск.

Текущие границы

  • Утверждения о backend ограничены именованными строками capabilities, маршрутами hosts, корпусами и квитанциями.
  • Хронология опускает правки только текста, CI-churn, обновления хэшей, механику ревью и репетиции выпуска, если они не меняли пользовательскую возможность или существенную границу проверки.
  • Исторические изменения receipt и Bridge не означают новую семантику языка, если это не сказано явно.

Куда дальше

Практический вход находится во введении, а точная история каждого выпуска — в разделе «История».

Введение · История