리크스크립트 4

리크스크립트 4

> 리크스크립트

LeekScript 4는 2022년 7월 1일에 출시된 LeekScript 언어의 네 번째 버전입니다. 이 페이지에는 이 버전에서 가져온 모든 새로운 기능이 요약되어 있습니다.

배열과 맵 분리

LeekScript 버전 1~3에서 배열은 목록([1, 2, 3, 4]) 및 연관 테이블(['a': 5, 'b': 12]) 모두였습니다. LeekScript 4부터 두 측면은 목록(Array)과 테이블(Map)의 두 가지 유형으로 분리됩니다. 이 두 가지 새로운 유형은 이전의 일반 유형보다 더 효율적이며 사용이 더 명확합니다.

Array 목록은 인덱스 0에서 시작하는 연속적인 요소 시퀀스입니다. Java의 ArrayList 또는 C++의 vector와 동일합니다. 해당 위치로 요소에 빠르게 액세스할 수 있으며 임의의 위치에서 요소를 삽입/삭제할 수 있습니다.

'맵' 테이블은 키와 값을 연결하는 객체입니다. Java의 HashMap 또는 C++의 unordered_map과 동일하며 (키, 값)의 쌍은 순서가 지정되지 않습니다. 키는 숫자(정수 또는 실수), 문자열, 객체 등 모든 유형이 될 수 있습니다. 주어진 키와 관련된 값을 빠르게 검색할 수 있습니다. 이 새로운 유형은 이전 배열의 "연관" 측면을 대체합니다.

목록을 위한 새로운 기능

RAM 제한 피드백

새로운 목록과 카드는 작업이 훨씬 더 효율적이고 가볍기 때문에 RAM(프로그램의 작업 메모리) 수준에서 제한을 다시 설정해야 했습니다. 실제로, 아주 적은 조작으로 기가바이트의 RAM을 쉽게 채울 수 있습니다.

RAM 제한은 전투당 각 AI(엔티티 + 소환)에 대해 100MB로 설정되며, 이는 12,500,000개의 목록, 테이블 또는 개체 항목에 해당합니다. 이 제한은 이전 테이블이 이 RAM 시스템을 사용하지 않기 때문에 LS4에서 유효하며 작업 소비가 충분히 크기 때문에 필요하지 않습니다.

RAM 소비를 실시간으로 모니터링하기 위해 getMaxRAM()getUsedRAM() 기능이 추가되었습니다.

32 대신 64비트 정수

정수는 이제 이전의 32비트 대신 64비트로 표시됩니다(모든 버전의 LeekScript에서). 증가로 인해 더 큰 숫자로 계산할 수 있고 이진 조작을 위해 더 많은 비트를 가질 수 있습니다.

화살표 함수

이제 "화살표 함수" 구문을 사용하여 익명 함수를 보다 쉽게 작성할 수 있습니다.

기본 설정

생성자, 메소드 및 정적 메소드에서 이제 각 매개변수에 대한 기본값을 사용할 수 있습니다.

목록 범위 액세스 및 음수 인덱스

액세스 목록에 두 가지 새로운 가능성이 추가되었습니다.

##찬