LeekScript 4

LeekScript 4

> LeekScript

LeekScript 4 är den fjärde versionen av LeekScript-språket, släppt den 1 juli 2022. Den här sidan sammanfattar alla nya funktioner som denna version ger.

Array och Map separerade

I LeekScript version 1 till 3 var arrayer både listor ([1, 2, 3, 4]) och associativa tabeller (['a': 5, 'b': 12]) . Från och med LeekScript 4 är de två aspekterna uppdelade i två olika typer: listor ('Array') och tabeller ('Map'). Dessa två nya typer är mer effektiva än den gamla vanliga typen och ger större klarhet i användningen.

En Array-lista är en kontinuerlig sekvens av element som börjar vid index 0. De är ekvivalenta med ArrayList av Java eller vektor av C++. Du kan snabbt komma åt ett element med dess position, infoga/ta bort ett element på valfri position.

En "Map"-tabell är ett objekt som relaterar en nyckel till ett värde. De är likvärdiga med HashMap av Java eller unordered_map av C++, paren av (nyckel, värde) är inte ordnade. Nycklar kan vara av vilken typ som helst: tal (heltal eller reellt), teckensträng, objekt, etc. Vi kan snabbt hämta ett värde kopplat till en given nyckel. Denna nya typ ersätter den "associativa" aspekten av de gamla arrayerna

Nya funktioner för listor

RAM-gränsåterkoppling

Eftersom de nya listorna och korten var mycket mer effektiva och lätta i drift var det nödvändigt att återupprätta en gräns på nivån för RAM (programmets arbetsminne). Med väldigt lite drift är det faktiskt möjligt att fylla gigabyte RAM-minne lätt.

RAM-gränsen är satt till 100 MB för varje AI (entitet + kallelse) per kamp, vilket motsvarar 12 500 000 list-, tabell- eller objektobjekt. Denna gräns är effektiv i LS4 eftersom de gamla tabellerna inte använder detta RAM-system, de behöver det inte eftersom deras driftförbrukning är tillräckligt stor.

Funktionerna getMaxRAM() och getUsedRAM() läggs till för att övervaka dess RAM-förbrukning i realtid.

64-bitars heltal istället för 32

Heltal representeras nu på 64 bitar istället för 32 tidigare (i alla versioner av LeekScript). Ökningen gör det möjligt att göra beräkningar med större siffror och gör det möjligt att ha fler bitar för binära manipulationer.

Pilfunktioner

Syntaxen "Pilfunktion" är nu tillgänglig för att lättare skriva anonyma funktioner:

Standardinställningar

I konstruktörer, metoder och statiska metoder är det nu möjligt att använda standardvärden för varje parameter:

Lista intervallåtkomst och negativa index

Två nya möjligheter läggs till i åtkomstlistor:

##Chan