О Топазе

План развития

Путь от текущей команды Лиспекса к полноценным приложениям, интеграции полного профиля и совершенствованию компилятора.

Этот план показывает порядок зависимостей и границы продукта, а не обещанные даты.

Сейчас

  • Это руководство описывает Топаз 5.19.0 / topaz-5.19. Установленный самокомпилируемый компилятор по-прежнему используется по умолчанию для поддерживаемых маршрутов текущего языка.
  • Установленная команда topaz lispex embed run выполняет один запрос Лиспекса через точный компонент внутри бинарного файла Топаза. Лимиты конечны, отказы явны, а выбор, поиск, загрузка, callback, импорт и fallback отсутствуют.
  • Компилятор на Rust остаётся явно доступным для сравнения, восстановления и совместимости. Самокомпиляция по умолчанию не означает исчезновения цепочки восстановления на Rust.
  • Компилятор, среда выполнения, пакет npm, артефакты, документация и песочница по-прежнему обозначают один продукт. Поддержка нативных, Python-, браузерных, HTTP-, локальных и двоичных прикладных маршрутов сохраняется.
  • Неподдерживаемый выбор компилятора завершается ошибкой, а не скрытой заменой движка. Полные платформенные и дифференциальные проверки выполняются для кандидата выпуска. Обычные изменения проходят целевые проверки.
  • Установленный нативный файл topaz включает локальный stdio-сервер MCP topaz mcp serve и новый рабочий процесс без полномочий для каждого вызова.

Следующие приоритеты

  1. Топаз 5.19 предоставляет приложения полного текущего профиля. Интерпретатор и пять утверждённых нативных платформ используют одинаковые профиль, компонент, подготовленные артефакты и идентичности файла блокировки. Нативные продукты работают без исходного кода и удалённого сервиса поставщика. Маршруты Python, Web и HTTP отклоняются до вывода, а ограниченный профиль 5.18 остаётся неизменяемым маршрутом совместимости.
  2. Переходить к 5.20 только после точной публичной квитанции 5.19.0. Всё актуальное на тот момент дерево компилятора, написанное на Топазе, проходит повторяющиеся полные аудиты и волны рефакторинга без верхней границы номера патча. Подготовка кандидата запрещена, пока остаётся исполнимый, отложенный, неизвестный или непроверенный пункт либо сохранённый пункт без решения владельца, конкретного инварианта и точной защиты от регрессии. Топаз 5.20 становится допустим только после двух последовательных аудитов без новых находок на идентичных байтах компилятора.
  3. Сохранять точную связь между продуктом и свидетельствами. Каждый выпуск получает новую запись допуска и проверку отзыва. Повторно использованный результат отмечается как повторно использованный, а восстановление, доступность инструментария и платформенная работоспособность регулярно проверяются заново.

Границы свидетельств

Число строк с примитивами не является знаменателем соответствия всему языку. Специальные формы, управление, значения, ошибки, транскрипты и вывод, диагностика, ресурсы, граница хоста и квитанции учитываются отдельно.

Установленный вычислитель подтверждает только описанные команду, компонент, профиль, входы, лимиты, результаты и поддерживаемые платформы. Он не доказывает эквивалентность всего Лиспекса и не добавляет независимого семантического свидетеля. LIT, сокращение от Lispex-in-Topaz, остаётся полезным свидетельством регрессий и интеграции внутри общего происхождения, но не является бэкендом Топаза.

Готовность прикладной интеграции, семантический охват Лиспекса и охват целей Топаза учитываются отдельно. Первоклассное нативное приложение само по себе не закрывает строки выполнения для полного профиля Лиспекса, созданного Python, браузера и MCP. Завершённые этапы перечислены в Истории.

Исследования

  • Расширять дифференциальное тестирование и фаззинг, которые находят неверное понимание языка генераторами кода.
  • Рассматривать проверку моделей и механизированные доказательства только для конкретных и воспроизводимых результатов.
  • Возвращаться к прямой компиляции в WebAssembly только при измеренной проблеме продукта. Широкая оптимизация, асинхронный синтаксис, перехват ошибок выполнения, API графем, пользовательские шаблоны, общий FFI хоста и новый синтаксис не входят в текущий план.

Связанная документация