-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexample.amta
More file actions
58 lines (54 loc) · 1.12 KB
/
example.amta
File metadata and controls
58 lines (54 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
$:natural_power = fun($base number, $exp number)
$res = 1
while $exp > 0
$res = $res * $base
$exp = $exp - 1
ewhil
return $res
nfu
$:print($:natural_power(2, 3))
# array utils methods
$:array_make_emtpy = fun()
$array = {}
$array:length = 0
return $array
nfu
$:array_make_size = fun($length number, $default)
$array = {}
for $i $:range($length)
$array[$i] = $default
rfo
$array:length = $length
return $array
nfu
$:array_push = fun($array object, $value)
if (!$:isarray($array))
return nil
fi
$array[$array:length] = $value
$array:length = $array:length + 1
nfu
$:array_pop = fun($array object)
if(!$:isarray($array))
return nil
fi
$val = $array[$array:length - 1]
$array[$array:length - 1] = nil
$array:length = $array:length - 1
return $val
nfu
# simple example
$my_arr = $:array_make_empty()
$:array_push($my_arr, 1)
$:array_push($my_arr, 2)
$:array_push($my_arr, 3)
$:print($my_arr)
$:array_pop($my_arr)
$:print($:array_pop($my_arr))
$a = fun()
$:print("hello!")
nfu
$a()
$:print(fun()
return "hello"
nfu())