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)
(require local_variables2.fate)
(assert (= (var other_file_var) 1) FAILED: local from other file)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(local int i)
(set_value i 3)
(assert (= (var i) 3) FAILED: local A)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(global int j)
(set_value j 4)
(local int j)
(set_value j 16)
(local (lambda int ()) global_j)
(set_value global_j (lambda () (var j)))
(assert (= (var j) 16) FAILED: local B, local j: (var j))
(assert (= (eval global_j) 4) FAILED: local C, global_j: (eval global_j))
(if (true)
(
(local int k)
(set k 11)
(assert (= (var k) 11) FAILED: local D, k: (var k))
(assert (= (var j) 16) FAILED: local E, j: (var j))
)
)
(local int k)
(set k 12)
(assert (= (var k) 12) FAILED: local F, k: (var k))
(if_else (true)
(
(local int l)
(set l 13)
(assert (= (var l) 13) FAILED: local G, k: (var l))
)
(
(local int l)
(set l 14)
)
)
(if_else (false)
(
(local int l)
(set l 13)
(assert (= (var l) 13) FAILED: local H, k: (var l))
)
(
(local int l)
(set l 14)
(assert (= (var l) 14) FAILED: local I, k: (var l))
)
)
(define_sequence test0 ()
(assert (= (var j) 4) FAILED: local J, j from seq: (var j))
)
(call test0)
(define_sequence test1 ()
(local int j)
(set j 634)
(assert (= (var j) 634) FAILED: local K, j from seq: (var j))
)
(call test1)
(assert (= (var j) 16) FAILED: local L, local j: (var j))
(define_sequence test2 ()
(local int j)
(set j 635)
(assert (= (var j) 635) FAILED: local K, j from seq: (var j))
(local (lambda int ()) global_j)
(set_value global_j (lambda () (var j)))
(assert (= (eval global_j) 4) FAILED: local L, global_j: (eval global_j))
)
(call test2)
(assert
(=
(let
(
(a_one 1)
(a_two 2)
(a_three (+ (var a_one) (var a_two)))
)
(+ (var a_one) (var a_two) (var a_three))
)
6
)
FAILED: local M
)
(end)
|