Category talk:EasyLang
Here are some common code snippets for implementing tasks in EasyLang.
Associative arrays
The syntax for an associative arrays in EasyLang should look like this:
associative$[][] = [ [ 1 "associative" ] [ 2 "arrays" ] ]
Indexing associative arrays
For associative number arrays:
func indexAssoc index . array[][] item .
for i = 1 to len array[][]
if array[i][1] = index
item = array[i][2]
break 2
.
.
item = number "nan"
.
Foor associative string arrays:
func indexStrAssoc index$ . array$[][] item$ .
for i = 1 to len array$[][]
if array$[i][1] = index$
item$ = array$[i][2]
break 2
.
.
item$ = ""
.
Case conversion
These functions only work with ASCII characters.
Lowercase
func toLowercase string$ . result$ .
for i = 1 to len string$
code = strcode substr string$ i 1
if code >= 65 and code <= 90
code += 32
.
result$ &= strchar code
.
.
Uppercase
func toUppercase string$ . result$ .
for i = 1 to len string$
code = strcode substr string$ i 1
if code >= 97 and code <= 122
code -= 32
.
result$ &= strchar code
.
.
Find in array
This function is for number arrays:
func findInArray array[] item . index .
for i = 1 to len array[]
if array[i] = item
index = i
break 2
.
.
index = 0
.
This function is for string arrays:
func findInStrArray array$[] item$ . index .
for i = 1 to len array$[]
if array$[i] = item$
index = i
break 2
.
.
index = 0
.
Sum and product of arrays
func sum array[] . sum .
for item in array[]
sum += item
.
.
func product array[] . product .
product = 1
for item in array[]
product *= item
.
.