Лук Скрипт 4

ЛикСкрипт 4

> ЛукСкрипт

LeekScript 4 — четвертая версия языка LeekScript, выпущенная 1 июля 2022 года. На этой странице собраны все новые функции, представленные в этой версии.

Массив и карта разделены

В версиях LeekScript с 1 по 3 массивы представляли собой как списки ([1, 2, 3, 4]), так и ассоциативные таблицы (['a': 5, 'b': 12]). Начиная с LeekScript 4, эти два аспекта разделены на два разных типа: списки (Array) и таблицы (Map). Эти два новых типа более эффективны, чем старый общий тип, и дают большую ясность в использовании.

Список Array представляет собой непрерывную последовательность элементов, начиная с индекса 0. Они эквивалентны ArrayList в Java или vector в C++. Вы можете быстро получить доступ к элементу с его позицией, вставить/удалить элемент в любой позиции.

Таблица «Map» — это объект, который связывает ключ со значением. Они эквивалентны HashMap из Java или unordered_map из C++, пары (ключ, значение) не упорядочены. Ключи могут быть любого типа: число (целое или вещественное), строка символов, объект и т. д. Мы можем быстро получить значение, связанное с данным ключом. Этот новый тип заменяет «ассоциативный» аспект старых массивов.

Новые функции для списков

Обратная связь об ограничении ОЗУ

Новые списки и карты, будучи гораздо более эффективными и легкими в работе, потребовали переустановки лимита на уровне оперативной памяти (оперативной памяти программы). Действительно, с очень небольшой операцией можно легко заполнить гигабайты оперативной памяти.

Ограничение ОЗУ установлено на уровне 100 МБ для каждого ИИ (сущность + призыв) за бой, что соответствует 12 500 000 элементов списка, таблицы или объекта. Это ограничение действует в LS4, потому что старые таблицы не используют эту систему оперативной памяти, она им не нужна, потому что их потребление операций достаточно велико.

Добавлены функции getMaxRAM() и getUsedRAM() для мониторинга потребления оперативной памяти в режиме реального времени.

64-битные целые числа вместо 32

Целые числа теперь представлены 64 битами вместо 32 (во всех версиях LeekScript). Увеличение позволяет выполнять вычисления с большими числами и позволяет иметь больше битов для бинарных манипуляций.

Стрелочные функции

Синтаксис «стрелочной функции» теперь доступен для более удобного написания анонимных функций:

Настройки по умолчанию

В конструкторах, методах и статических методах теперь можно использовать значения по умолчанию для каждого параметра:

Список доступа к диапазону и отрицательные индексы

В списки доступа добавлены две новые возможности:

Чан