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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
|
(fate_version 1)
(global string test_name)
(set test_name ( MERGE ))
(global (list int) li0)
(global (list int) li1)
(global (list int) li2)
(global (list int) li3)
(global (set int) si0)
(global (set int) si1)
(global (set int) si2)
(global (set int) si3)
(set li0
(merge_to_list
(lambda
(
(int a)
(int b)
)
(- a b)
)
(range 10 40 1)
(range 0 60 2)
)
)
(set li1 (range 10 40 1))
(merge!
(lambda
(
(int a)
(int b)
)
(- a b)
)
li1
(range 0 60 2)
)
(set li2
(map
(lambda ((int i) (int mod)) (* i mod))
(range 0 10 1)
2
)
)
(set li3 (range 0 10 1))
(map!
(lambda ((int i) (int mod)) (* i mod))
li3
2
)
(assert
(= (var li1) (var li0) (var li2) (var li3))
[FAILED] (var test_name) Equality test 0.
)
(assert
(= 0 (var li1.0) (var li0.0))
[FAILED] (var test_name) Test for 0: (var li1.0), (var li0.0).
)
(assert
(= 2 (var li1.1) (var li0.1))
[FAILED] (var test_name) Test for 2: (var li1.1), (var li0.1).
)
(assert
(= 4 (var li1.2) (var li0.2))
[FAILED] (var test_name) Test for 4: (var li1.2), (var li0.2).
)
(assert
(= 6 (var li1.3) (var li0.3))
[FAILED] (var test_name) Test for 6: (var li1.3), (var li0.3).
)
(assert
(= 8 (var li1.4) (var li0.4))
[FAILED] (var test_name) Test for 8: (var li1.4), (var li0.4).
)
(assert
(= 10 (var li1.5) (var li0.5))
[FAILED] (var test_name) Test for 10: (var li1.5), (var li0.5).
)
(assert
(= 12 (var li1.6) (var li0.6))
[FAILED] (var test_name) Test for 12: (var li1.6), (var li0.6).
)
(assert
(= 14 (var li1.7) (var li0.7))
[FAILED] (var test_name) Test for 14: (var li1.7), (var li0.7).
)
(assert
(= 16 (var li1.8) (var li0.8))
[FAILED] (var test_name) Test for 16: (var li1.8), (var li0.8).
)
(assert
(= 18 (var li1.9) (var li0.9))
[FAILED] (var test_name) Test for 18: (var li1.9), (var li0.9).
)
(assert
(= 20 (var li1.10) (var li0.10))
[FAILED] (var test_name) Test for 20: (var li1.10), (var li0.10).
)
(clear li0)
(clear li1)
(clear li2)
(clear li3)
(set li0
(indexed_map
(lambda ((int ix) (int i)) (+ (* i ix) 1000))
(range 10 20 1)
)
)
(set li1 (range 10 20 1))
(indexed_map!
(lambda ((int ix) (int i)) (+ (* i ix) 1000))
li1
)
(set li2
(indexed_map
(lambda ((int ix) (int i) (int mod)) (+ (* i ix) mod))
(range 10 20 1)
1000
)
)
(set li3 (range 10 20 1))
(indexed_map!
(lambda ((int ix) (int i) (int mod)) (+ (* i ix) mod))
li3
1000
)
(assert
(= (var li1) (var li0) (var li2) (var li3))
[FAILED] (var test_name) Equality test 1.
)
(global int i)
(for (set i 0) (=< i 10) (set i (+ i 1))
(assert
(=
(access li1 i) (access li0 i) (access li2 i) (access li3 i)
(+ (* i (+ 10 i)) 1000)
)
[FAILED] (var test_name) Indexed map at (var i):
(access li1 i), (access li0 i), (access li2 i), (access li3 i)
)
)
[COMPLETED] (var test_name)
(end)
|