Commit | Line | Data |
---|---|---|
31690700 JM |
1 | ;; Testing REPL_ENV |
2 | (+ 1 2) | |
3 | ;=>3 | |
4 | (/ (- (+ 5 (* 2 3)) 3) 4) | |
5 | ;=>2 | |
6 | ||
7 | ||
8 | ;; Testing def! | |
9 | (def! x 3) | |
10 | ;=>3 | |
11 | x | |
12 | ;=>3 | |
13 | (def! x 4) | |
14 | ;=>4 | |
15 | x | |
16 | ;=>4 | |
17 | (def! y (+ 1 7)) | |
18 | ;=>8 | |
19 | y | |
20 | ;=>8 | |
21 | ||
eb63e565 DM |
22 | ;; Verifying symbols are case-sensitive |
23 | (def! mynum 111) | |
24 | ;=>111 | |
25 | (def! MYNUM 222) | |
26 | ;=>222 | |
27 | mynum | |
28 | ;=>111 | |
29 | MYNUM | |
30 | ;=>222 | |
31 | ||
9e8f5211 JM |
32 | ;; Check env lookup non-fatal error |
33 | (abc 1 2 3) | |
f6f5d4f2 | 34 | ;/.*\'?abc\'? not found.* |
70f29a2b JM |
35 | ;; Check that error aborts def! |
36 | (def! w 123) | |
37 | (def! w (abc)) | |
38 | w | |
39 | ;=>123 | |
31690700 JM |
40 | |
41 | ;; Testing let* | |
42 | (let* (z 9) z) | |
43 | ;=>9 | |
44 | (let* (x 9) x) | |
45 | ;=>9 | |
46 | x | |
47 | ;=>4 | |
48 | (let* (z (+ 2 3)) (+ 1 z)) | |
49 | ;=>6 | |
50 | (let* (p (+ 2 3) q (+ 2 p)) (+ p q)) | |
51 | ;=>12 | |
9e8f5211 JM |
52 | (def! y (let* (z 7) z)) |
53 | y | |
54 | ;=>7 | |
31690700 | 55 | |
6f58a926 GL |
56 | ;; Testing outer environment |
57 | (def! a 4) | |
58 | ;=>4 | |
59 | (let* (q 9) q) | |
60 | ;=>9 | |
61 | (let* (q 9) a) | |
62 | ;=>4 | |
63 | (let* (z 2) (let* (q 9) a)) | |
64 | ;=>4 | |
65 | ||
a1eb30fc | 66 | ;>>> deferrable=True |
9af8aee6 | 67 | ;; |
77fd710c | 68 | ;; -------- Deferrable Functionality -------- |
31690700 | 69 | |
f5223195 JM |
70 | ;; Testing let* with vector bindings |
71 | (let* [z 9] z) | |
72 | ;=>9 | |
73 | (let* [p (+ 2 3) q (+ 2 p)] (+ p q)) | |
74 | ;=>12 | |
75 | ||
31690700 JM |
76 | ;; Testing vector evaluation |
77 | (let* (a 5 b 6) [3 4 a [b 7] 8]) | |
78 | ;=>[3 4 5 [6 7] 8] |