OpenComputers/Стандартные библиотеки Lua

В OpenComputers доступны многие функции стандартных библиотек Lua. Однако некоторые из них могут быть ограничены, или переопределены.

Подробнее о стандартных библиотеках Lua вы можете узнать в официальной документации здесь.


Различия

Базовые функции

Функции базовой библиотеки Lua:


Сопрограммы (Coroutine)

Набор функций по управлению сопрограммами coroutine доступен в моде без особенных изменений.


Примечание: функции coroutine.resume и coroutine.yield переопределены в моде с учетом того, что программа прерывает свое выполнение, если она не отвечает долгое время (точное значение смотрите в настройках мода).


Модули

Функции работы с модулями package переопределены в моде OpenComputer. Однако должны работать аналогично, за исключением следующих функций:

Последние две не используются в связи с тем, что невозможна загрузка кода C из OpenComputers.


Операции со строками

Оригинальная библиотека для работы со строками string доступна без изменений.

Примечание: функции GPU API (а также term.write и print) полностью совместимы со строками в формате UTF-8. Кроме того, для облегчения работы с форматом Unicode, OpenComputers предоставляет библиотеку Unicode API.


Операции с таблицами

Оригинальная библиотека для работы с таблицами table доступна без изменений.


Математические функции

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


Битовые операции

Оригинальная библиотека битовых операций bit32 доступна без изменений.


Операции ввода/вывода

Функции библиотеки io переопределены для работы с консолью и файловой системой OpenComputers.

Для стандартного ввода/вывода используются функции term.read / term.write.

Функции по большей части функционально эквивалентны оригинальным. Они могут возвращать отличающиеся сообщения ошибки.


Функции операционной системы

Функции библиотеки os частично переопределены.


Кроме того добавлена одна новая функция:

См. также функции Computer API.


Отладка

Доступна только функция debug.traceback.

В данной статье используются материалы из статьи «OpenComputers/Стандартные библиотеки Lua» с вики-сайта Minecraft Wiki, расположенного на Фэндоме, и они распространяются согласно лицензии Creative Commons Attribution-Share Alike. Авторы статьи.