OwnLang 2.0.0Критические изменения • Минимальная версия Java — 17.
• Упрощён оператор use.
use std, math вместо
use ["std", "math"].
•
case [x] при сопоставлении списков теперь соответствует лишь одному элементу.
• Более строгий лексер. Исправлено экранирование обратного слэша в строках. Исправлены HEX числа println 0x0123456789, 0x०१२३४५६७८९.
Изменения • Добавлены константы. Константа может быть импортирована только при подключении модуля.
• Возможность задать числа типа long:
700L,
0xABL • Исправлена область видимости переменных при шедоуинге.
• Улучшена визуализация ошибок. Ошибки парсинга показывают конкретное место, где возникла ошибка. То же самое с линтером и ошибками времени исполнения.
• Семантический линтер как обязательный этап работы интерпретатора.
• Сохранение порядка элементов в Map по умолчанию.
• Возможность запускать программы из ресурсов, указав "resource:" в качестве префикса пути.
• Добавлены внутренние скрипты и команда
ownlang run для их запуска. Добавлен скрипт
checkUpdate для проверки новых версий.
• Обновлена
документация. Новый движок документации, основанный на vuepress.
Модули • [std] Добавлены функции parseDouble, nanotime, exit, getenv, getprop.
• [http] Добавлена функция httpSync.
• [functional] Добавлены функции groupby, tomap и операторы Stream.groupBy, Stream.filterNot, Stream.forEachIndexed, Stream::toMap, Stream.anyMatch, Stream.allMatch, Stream.noneMatch
• [canvasfx] Исправлено для Java 17+ с Java FX 17 (только Windows)
• [server] Новый модуль сервера
Скачать __________________