LeekScript 4

LeekScript 4

> LeekScript

LeekScript 4 to czwarta wersja języka LeekScript, wydana 1 lipca 2022 r. Ta strona podsumowuje wszystkie nowe funkcje wprowadzone przez tę wersję.

Tablica i mapa rozdzielone

W wersjach LeekScript od 1 do 3 tablice były zarówno listami ([1, 2, 3, 4]), jak i tabelami asocjacyjnymi (['a': 5, 'b': 12]). Od LeekScript 4 te dwa aspekty są podzielone na dwa różne typy: listy (Array) i tabele (Map). Te dwa nowe typy są bardziej wydajne niż stary popularny typ i zapewniają większą przejrzystość w użyciu.

Lista Array to ciągła sekwencja elementów, rozpoczynająca się od indeksu 0. Są one równoważne z ArrayList w Javie lub vector w C++. Możesz szybko uzyskać dostęp do elementu wraz z jego pozycją, wstawić/usunąć element w dowolnej pozycji.

Tabela Map jest obiektem, który wiąże klucz z wartością. Są one odpowiednikiem HashMap w Javie lub unordered_map w C++, pary (klucz, wartość) nie są uporządkowane. Klucze mogą być dowolnego typu: liczbowe (całkowite lub rzeczywiste), łańcuch znaków, obiekt itp. Możemy szybko pobrać wartość powiązaną z danym kluczem. Ten nowy typ zastępuje aspekt „asocjacyjny” starych tablic

Nowe funkcje dla list

Informacja zwrotna o limicie pamięci RAM

Ponieważ nowe listy i karty były znacznie wydajniejsze i lżejsze w działaniu, konieczne było ponowne ustalenie limitu na poziomie pamięci RAM (pamięć robocza programu). Rzeczywiście, przy bardzo niewielkiej operacji można łatwo wypełnić gigabajty pamięci RAM.

Limit pamięci RAM jest ustalony na 100 MB dla każdej sztucznej inteligencji (podmiotu + wezwania) na walkę, co odpowiada 12 500 000 pozycji listy, tabeli lub obiektów. To ograniczenie obowiązuje w LS4, ponieważ stare tablice nie korzystają z tego systemu RAM, nie potrzebują go, ponieważ ich zużycie operacyjne jest wystarczająco duże.

Dodano funkcje getMaxRAM() i getUsedRAM() w celu monitorowania zużycia pamięci RAM w czasie rzeczywistym.

64-bitowe liczby całkowite zamiast 32

Liczby całkowite są teraz reprezentowane na 64 bitach zamiast 32 wcześniej (we wszystkich wersjach LeekScript). Zwiększenie pozwala wykonywać obliczenia z większymi liczbami i pozwala mieć więcej bitów do manipulacji binarnych.

Funkcje strzałek

Dostępna jest teraz składnia „Funkcja strzałki”, która ułatwia pisanie funkcji anonimowych:

Ustawienia domyślne

W konstruktorach, metodach i metodach statycznych możliwe jest teraz użycie wartości domyślnych dla każdego parametru:

Dostęp do zakresu listy i indeksy ujemne

Do list dostępu dodano dwie nowe możliwości:

##Chan