Topazdocs
Проект

История

Как Topaz менялся после базовой линии v5, включая внутренние интеграционные печати, отделённые от публичных выпусков.

Topaz v5 начался с компактного языка, ориентированного на выражения, явных восстанавливаемых ошибок через Result и обычной поддержки Unicode-идентификаторов. Здесь описаны изменения, важные для пользователей; внутренние файлы разработки в публичное руководство не входят.

Краткая хронология

ВерсияИзменения языкаИзменения инструментов
v5.0Задана база: выражения, Result и Unicode-идентификаторы.Зафиксированы общее направление языка и стиль примеров.
v5.1Добавлены while, break, continue; уточнены разметка, операторы, шаблоны, параллельность и строковые шаблоны.Усилены проверки грамматики и поведения на основе интерпретатора.
v5.2Закреплены модули import/export и правила видимости.Язык, компилятор, среда выполнения и дистрибутивы объединены в первую публичную линию v5.2.
v5.3Сохранена модульная основа v5.2, расширена библиотека.Бинарные файлы, playground, документация и npm-пакет выходили в разное время из-за быстрого цикла разработки; семантика языка не расходилась.
v5.4Сохранён сложившийся синтаксис v5.Упорядочены бинарные файлы и установка; в v5.4.1 появилась экспериментальная генерация Python.
v5.5Без ломки старых программ расширялись библиотека и среда выполнения.Python стал поддерживаемым бэкендом; расширилось сравнение результатов интерпретатора, Rust и Python.
v5.6Объединяет текущие обобщённые функции, номинальные данные, обновление записей, шаблоны, конвейеры и расширенную стандартную библиотеку.Выпускает интерпретатор, Rust, Python, WASM-песочницу и пакетные инструменты в одной линии v5.6.
v5.6.1Не меняет закреплённую семантику языка v5.6.Переносит Cargo во временное хранилище, исключает рост кэша Python, добавляет identity артефактов и согласует лицензии и пакеты.
v5.6.2Не меняет закреплённую семантику языка v5.6 и поведение инструментов.Обновляет формулировки документации и npm-пакета; функциональных изменений нет.
v5.6.3Не меняет закреплённую семантику языка v5.6 и поведение инструментов.Удаляет адрес закрытого репозитория из списка пакета npm; изменяются только метаданные.
v5.6.4Сохраняет каноническую грамматику и семантику v5.6 без изменений.Добавляет основу установленного многомодульного Application Loop, автономные сборки пакетов native/Python и машиночитаемую проверку agent-pack.
v5.6.5Сохраняет каноническую грамматику и семантику v5.6 без изменений.Завершает установленный Application Loop, fmt --check, локализованные руководства, прямую публикацию npm и ограниченную полевую проверку.
v5.6.6Сохраняет каноническую грамматику и семантику v5.6 без изменений.Добавляет изменяемый ByteBuffer фиксированной длины и исправляет владение памятью при выделении и возврате крупных Web-результатов.
v5.6.7Сохраняет режим языка topaz-5.6 и его каноническую грамматику и семантику.Добавляет проверяемый жизненный цикл Web Application, безопасный браузерный хост, шаблон web-app, loopback-разработку и полный статический комплект.
v5.7.0Наследует всю грамматику и семантику v5.6 в отдельном текущем режиме topaz-5.7.Объединяет компилятор, runtime, пакеты, артефакты, npm, WASM, Playground и документацию на линии 5.7; добавляет Data Lens и Markdown Live в установленный автономный Web Application Loop.

Текущая версия

Это руководство описывает текущую языковую линию v5.7 и Topaz 5.7.0. Явный режим v5.6 остаётся поддерживаемым входом совместимости. Сведения об установке, совместимости и целях находятся в разделе Состояние инструментария. Для переноса старого кода откройте Переход с до-v5.

Внутренние свидетельства интеграции LIT

Внутренние свидетельства интеграции охватывают один канонический исходник Lispex-in-Topaz для интерпретатора, generated Rust, generated Python и Web на ограниченной четырёххостовой поверхности проверки. LIT поддерживает 84 из 205 строк primitive capabilities и шесть из 18 guest-calling; неподдерживаемые строки завершаются явно.

Эти свидетельства не меняют язык v5.7 или публичную границу продукта. Четыре маршрута — варианты host одного исходника LIT, а не независимые реализации; независимость исходного кода и эквивалентность всего языка не заявляются. LIT не входит в публичные бэкенды.

Далее