XNUMX 년의 개발 끝에 며칠 전 Lua 5.4의 새 버전 출시가 발표되었습니다., 임베디드 언어로 널리 사용되는 작고 빠른 스크립팅 프로그래밍 언어입니다.
Lua는 간단한 절차 적 구문과 강력한 기능을 결합합니다. 연관 배열 및 확장 가능한 언어 의미론을 사용하여 데이터 설명의. Lua는 동적 쓰기를 사용합니다. 언어 구조는 자동 가비지 수집기가있는 로그 가상 머신 위에서 실행되는 바이트 코드로 변환됩니다.
Lua 5.4의 새로운 기능은 무엇입니까?
이 새로운 버전의 언어에서 눈에 띄는 것을 알 수 있습니다. 가비지 수집기의 새로운 작동 모드, 이전에 사용 가능한 증분 가비지 수집 모드를 보완합니다.
새로운 방법 더 짧은 추적이 더 자주 시작됨을 의미합니다., 최근 생성 된 개체 만 다룹니다. 모든 개체의 전체 크롤링은 짧은 크롤링 후 원하는 메모리 소비 표시기를 얻을 수없는 경우에만 수행됩니다. 이 접근 방식은 더 높은 성능과 더 낮은 메모리 소비를 가능하게합니다. 짧은 시간 동안 살아가는 많은 수의 개체를 저장하는 상황에서.
Lua 5.4에서 눈에 띄는 또 다른 변경 사항은 "const"속성으로 정의 된 상수를 정의하는 기능. 이러한 변수는 한 번만 할당 할 수 있으며 초기화 후에는 더 이상 변경할 수 없습니다.
또한 변수에 대한 새로운 지원도 강조 표시됩니다. «closed»속성을 사용하여 할당되는«폐쇄 예정» 상수 지역 변수와 유사 (const 속성 사용), 가시성 영역의 모든 출력에서 값이 닫혀 있다는 점 ( "__close"메소드가 호출 됨)과 다릅니다.
유형 "사용자 데이터", Lua 변수에 C 데이터를 저장할 수있는 기능을 제공합니다 (메모리의 데이터 블록을 나타내거나 C 포인터를 포함 함). 이제 여러 값을 포함 할 수 있습니다. (여러 개의 메타 테이블이 있습니다).
또한, »for«루프에서 정수를 열거하기위한 새로운 의미론이 Lua 5.4에서 제안되었습니다. 반복 횟수는 루프가 시작되기 전에 계산되므로 변수 오버플로 및 반복을 방지합니다. 초기 값이 한계 값보다 크면 오류가 발생합니다.
경고 시스템이 추가되었습니다. 이는 경고 표현식을 사용하여 결정되며 오류와 달리 후속 프로그램 실행에 영향을주지 않습니다.
눈에 띄는 다른 변경 사항 중 :
- 함수 인수 및 반환 값에 대한 디버깅 정보가 "return"연산자에 추가되었습니다.
- 문자열을 숫자로 변환하는 기능이 "문자열"라이브러리로 이동되었습니다.
- 메모리 블록 크기가 줄어들면 메모리 할당 함수 호출이 실패 할 수 있습니다.
- 'string.format'함수에 새로운 '% p'형식 지정자 지원 추가
- utf8 라이브러리는 최대 2 ^ 31의 숫자로 된 문자 코드를 지원합니다.
- 새로운 선택적 인수 'init'가 'string.gmatch'함수에 추가되어 검색을 시작할 위치를 결정합니다 (기본적으로 1 문자로 시작).
- 새로운 기능 'lua_resetthread'(스레드 재설정, 전체 호출 스택 지우기 및 "닫기"모든 변수 닫기) 및 'coroutine.close'추가
Linux에 Lua를 설치하는 방법은 무엇입니까?
언어의 큰 인기 때문에 그 인터프리터는 대부분의 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
그리고 준비가 되었으니 이미 설치되었습니다.