summaryrefslogtreecommitdiff
blob: 13a10539ed0ed90d5de019ded8e525baf1efc4fc (plain)
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
(fate_version 1)

(global string test_name)

(set! test_name ( MAP ))

(global (list int) li0)
(global (list int) li2)

(set! li0
   (list:map
      (lambda ((int i)) (* i 2))
      (list:range 0 10 1)
   )
)

(set! li2
   (list:map
      (partial (lambda ((int mod) (int i)) (* i mod)) 2)
      (list:range 0 10 1)
   )
)

(assert!
   (= (var li0) (var li2))
   [FAILED] (var test_name) Equality test 0.
)

(assert!
   (= 0 (var li2.0) (var li0.0))
   [FAILED] (var test_name) Test for 0: (var li2.0), (var li0.0).
)

(assert!
   (= 2 (var li2.1) (var li0.1))
   [FAILED] (var test_name) Test for 2: (var li2.1), (var li0.1).
)

(assert!
   (= 4 (var li2.2) (var li0.2))
   [FAILED] (var test_name) Test for 4: (var li2.2), (var li0.2).
)
(assert!
   (= 6 (var li2.3) (var li0.3))
   [FAILED] (var test_name) Test for 6: (var li2.3), (var li0.3).
)
(assert!
   (= 8 (var li2.4) (var li0.4))
   [FAILED] (var test_name) Test for 8: (var li2.4), (var li0.4).
)
(assert!
   (= 10 (var li2.5) (var li0.5))
   [FAILED] (var test_name) Test for 10: (var li2.5), (var li0.5).
)
(assert!
   (= 12 (var li2.6) (var li0.6))
   [FAILED] (var test_name) Test for 12: (var li2.6), (var li0.6).
)
(assert!
   (= 14 (var li2.7) (var li0.7))
   [FAILED] (var test_name) Test for 14: (var li2.7), (var li0.7).
)
(assert!
   (= 16 (var li2.8) (var li0.8))
   [FAILED] (var test_name) Test for 16: (var li2.8), (var li0.8).
)
(assert!
   (= 18 (var li2.9) (var li0.9))
   [FAILED] (var test_name) Test for 18: (var li2.9), (var li0.9).
)
(assert!
   (= 20 (var li2.10) (var li0.10))
   [FAILED] (var test_name) Test for 20: (var li2.10), (var li0.10).
)

(list:clear! li0)
(list:clear! li2)

(set! li0
   (list:indexed_map
      (lambda ((int ix) (int i)) (+ (* i ix) 1000))
      (list:range 10 20 1)
   )
)

(set! li2
   (list:indexed_map
      (partial (lambda ((int mod) (int ix) (int i)) (+ (* i ix) mod)) 1000)
      (list:range 10 20 1)
   )
)

(assert!
   (= (var li0) (var li2))
   [FAILED] (var test_name) Equality test 1.
)

(global int i)

(for (set! i 0) (=< i 10) (set! i (+ i 1))
   (assert!
      (=
         (list:access i li0)
         (list:access i li2)
         (+ (* i (+ 10 i)) 1000)
      )
      [FAILED] (var test_name) Indexed map at (var i):
      (list:access i li0), (list:access i li2)
   )
)

[COMPLETED] (var test_name)

(end!)