Lua 5.4 е тук и това са промените и новините

След пет години развитие, преди няколко дни беше представено стартирането на новата версия на Lua 5.4, който е компактен и бърз език за програмиране на скриптове, който се използва широко като вграден език.

Lua комбинира прост процедурен синтаксис с мощни възможности на описание на данни чрез използване на асоциативни масиви и разширяема езикова семантика. Lua използва динамично писане; езикови конструкции се преобразуват в байт код, който се изпълнява върху виртуална машина на лог с автоматичен събирач на боклук.

Какво е новото в Lua 5.4?

В тази нова версия на езика можем да открием, че той се откроява нов режим на работа на сметосъбирача, който допълва предишния наличен режим на допълнително събиране на боклука.

Новият начин предполага по-често пускане на по-къса следа, който обхваща само наскоро създадени обекти. Пълно сканиране на всички обекти се извършва само ако след кратко сканиране не могат да бъдат постигнати желаните индикатори за разход на памет. Този подход позволява по-висока производителност и по-ниска консумация на памет в ситуация на съхранение на голям брой обекти, които живеят за кратко време.

Друга промяна, която се откроява от Lua 5.4, е възможност за дефиниране на константи, дефинирани с атрибута "const". Такива променливи могат да бъдат присвоени само веднъж и след инициализация те вече не могат да бъдат променяни.

Също така това новата поддръжка за променливи също е подчертана «To be closed», които се присвояват с помощта на атрибута «closed» и приличат на постоянни локални променливи (с атрибут const), които се различават от тях по това, че стойността е затворена (извиква се методът "__close") във всеки изход на областта на видимост.

Видът на "Потребителски данни", което предоставя възможност за съхраняване на всякакви C данни в променливи Lua (представлява блок данни в паметта или съдържа C указател), вече може да съдържа множество стойности (има няколко метатаблици).

Освен това, нова семантика е предложена в Lua 5.4 за изброяване на цели числа в цикли »за«. Броят на итерациите се изчислява преди началото на цикъла, което предотвратява преливането на променливата и цикъла. Ако първоначалната стойност е по-голяма от граничната стойност, се генерира грешка.

Добавена е система за предупреждение, което се определя с помощта на предупредителния израз и за разлика от грешките не засяга последващото изпълнение на програмата.

От останалите промени, които се открояват:

  • В оператора "return" е добавена информация за отстраняване на грешки по аргументи на функции и връщани стойности.
  • Функциите за преобразуване на низове в числа са преместени в библиотеката "низове".
  • Извикването на функцията за разпределение на паметта сега може да се провали, ако размерът на блока памет се намали.
  • Добавена е поддръжка за нов спецификатор на формат „% p“ към функцията „string.format“
  • Библиотеката utf8 осигурява поддръжка на символни кодове с числа до 2 ^ 31.
  • Към функцията „string.gmatch“ е добавен нов незадължителен аргумент „init“, който определя от коя позиция да започне търсенето (по подразбиране, като се започне с 1 символ).
  • Добавени са нови функции „lua_resetthread“ (нулиране на нишката, изчистване на целия стек повиквания и затваряне на всички променливи „за затваряне“) и „coroutine.close“

Как да инсталирам Lua на Linux?

Поради голямата си популярност на езика неговият интерпретатор се намира в повечето дистрибуции на Linux.

за тези, които са потребители на Debian, Ubuntu, Linux Mint или която и да е система, получена от тях, трябва само да отворим терминал и да изпълним следната команда в него:

sudo apt install lua5.4

Ако са потребители на Arch Linux, Manjaro, Antergos или каквато и да е дистрибуция, получена от Arch Linux, можем да инсталираме интерпретатора от хранилищата AUR, за това трябва само да напишем:

yay -S lua

Докато за Тези, които са потребители на CentOS, RHEL, Fedora или произволна дистрибуция, получена от тях, можем да го инсталираме с:

sudo dnf install lua

И готов с него, вече съм инсталиран.


Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.