Интеграция

Интеграция с Lena Code

Использование Топаза в качестве исходного или целевого языка в преобразованиях Lena Code.

Lena Code — отдельный продукт для преобразования исходного кода. Топаз можно выбрать исходным или целевым языком только в том случае, если опубликованный список Lena Code содержит именно эту пару языков. Продукты обмениваются исходным кодом без использования общей среды выполнения, и такое преобразование не расширяет грамматику Топаза.

Перед преобразованием

Сначала проверьте актуальный список поддерживаемых пар на сайте Lena Code. Поддержка одной пары или одной формы программы не означает возможность преобразовать любую программу. Зафиксируйте используемую версию Lena Code, чтобы результат можно было воспроизвести.

Если Топаз — целевой язык

Сгенерированный файл .tpz — исходный код-кандидат, а не заверенный результат. Просмотрите его содержимое и изменения, затем проверьте файл текущим инструментарием Топаза:

BASH
topaz parse converted.tpz
topaz check converted.tpz
topaz run converted.tpz
topaz build converted.tpz --out-dir converted-build --run

Эти команды показывают, что Топаз способен разобрать, проверить, выполнить и собрать полученный код. Они не доказывают, что преобразование сохранило смысл исходной программы. Сравните значимые для приложения результаты: вывод, ошибки, изменения данных и другое наблюдаемое поведение.

Если Топаз — исходный язык

За перенос конструкций Топаза в целевой язык и его среду отвечает Lena Code. Проверьте API, представление данных, побочные эффекты и обработку ошибок в полученной программе. Успешное выполнение команды topaz check для исходного файла не проверяет программу на целевом языке.

Границы продуктов и синтаксиса

Топаз и Lena Code не получают автоматически общий ABI, менеджер пакетов, среду выполнения или комплект развёртывания. Код на других языках допустим только в явно обозначенных примерах интеграции и не определяет канонический синтаксис Топаза. Если преобразователь создаст неподдерживаемую конструкцию, команда topaz check отклонит её.

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