-
Notifications
You must be signed in to change notification settings - Fork 0
/
lib.array.fly
86 lines (72 loc) · 1.35 KB
/
lib.array.fly
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
def "slice" value
(arr start finish)
fn
array.filter arr
(el i)
fn
def "result" value
and
when i >= start then true end
when i < finish then true end
end
end
result == true
end
end
end
end
def "length" value
(arr)
fn
def "result" value 0 end
array.for arr
(e i)
fn
let "result" value i end
end
end
result + 1
end
end
def "includes" value
(arr e)
fn
def "includes" value false end
array.for arr
(test i)
fn
when test == e then
let "includes" value true end
end
end
end
includes
end
end
def "equal" value
(arr_a arr_b)
fn
def "result" value true end
def "arr_a_length" value
.length arr_a end
end
def "arr_b_length" value
.length arr_b end
end
when arr_a_length != arr_b_length then
let "result" value false end
end
array.for arr_a
(e i)
fn
def "b" value
array.read arr_b i end
end
when e != b then
let "result" value false end
end
end
end
result
end
end