shen-ruby 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/HISTORY.md +10 -0
- data/README.md +19 -17
- data/lib/kl/primitives/streams.rb +7 -17
- data/lib/shen_ruby/version.rb +1 -1
- data/shen/README.txt +1 -1
- data/shen/release/k_lambda/core.kl +56 -56
- data/shen/release/k_lambda/declarations.kl +8 -8
- data/shen/release/k_lambda/load.kl +15 -15
- data/shen/release/k_lambda/macros.kl +30 -28
- data/shen/release/k_lambda/prolog.kl +97 -97
- data/shen/release/k_lambda/reader.kl +91 -69
- data/shen/release/k_lambda/sequent.kl +53 -53
- data/shen/release/k_lambda/sys.kl +92 -108
- data/shen/release/k_lambda/t-star.kl +50 -55
- data/shen/release/k_lambda/toplevel.kl +23 -23
- data/shen/release/k_lambda/types.kl +2 -2
- data/shen/release/k_lambda/writer.kl +28 -22
- data/shen/release/test_programs/interpreter.shen +4 -6
- data/shen/release/test_programs/proof_assistant.shen +3 -3
- data/shen/release/test_programs/whist.shen +2 -2
- data/shen-ruby.gemspec +2 -2
- metadata +9 -13
@@ -47,144 +47,166 @@
|
|
47
47
|
* explains this license in full. *
|
48
48
|
* *
|
49
49
|
*****************************************************************************************
|
50
|
-
"(defun
|
50
|
+
"(defun read-file-as-bytelist (V1307) (let Stream (open V1307 in) (let Byte (read-byte Stream) (let Bytes (shen.read-file-as-bytelist-help Stream Byte ()) (let Close (close Stream) (reverse Bytes))))))
|
51
51
|
|
52
|
-
(defun shen.
|
52
|
+
(defun shen.read-file-as-bytelist-help (V1308 V1309 V1310) (cond ((= -1 V1309) V1310) (true (shen.read-file-as-bytelist-help V1308 (read-byte V1308) (cons V1309 V1310)))))
|
53
53
|
|
54
|
-
(defun read-file (V1311) (let
|
54
|
+
(defun read-file-as-string (V1311) (let Stream (open V1311 in) (shen.rfas-h Stream (read-byte Stream) "")))
|
55
55
|
|
56
|
-
(defun shen.
|
56
|
+
(defun shen.rfas-h (V1312 V1313 V1314) (cond ((= -1 V1313) (do (close V1312) V1314)) (true (shen.rfas-h V1312 (read-byte V1312) (cn V1314 (n->string V1313))))))
|
57
57
|
|
58
|
-
|
58
|
+
(defun input (V1315) (eval-kl (read V1315)))
|
59
|
+
|
60
|
+
(defun input+ (V1316 V1317) (let Mono? (shen.monotype V1316) (let Input (read V1317) (if (= false (shen.typecheck Input V1316)) (simple-error (cn "type error: " (shen.app Input (cn " is not of type " (shen.app V1316 "
|
61
|
+
" shen.r)) shen.r))) (eval-kl Input)))))
|
62
|
+
|
63
|
+
(defun shen.monotype (V1318) (cond ((cons? V1318) (map shen.monotype V1318)) (true (if (variable? V1318) (simple-error (cn "input+ expects a monotype: not " (shen.app V1318 "
|
64
|
+
" shen.a))) V1318))))
|
65
|
+
|
66
|
+
(defun read (V1319) (hd (shen.read-loop V1319 (read-byte V1319) ())))
|
67
|
+
|
68
|
+
(defun shen.read-loop (V1322 V1323 V1324) (cond ((= -1 V1323) (if (empty? V1324) (simple-error "error: empty stream") (compile shen.<st_input> V1324 (lambda E E)))) ((shen.terminator? V1323) (let AllBytes (append V1324 (cons V1323 ())) (let Read (compile shen.<st_input> AllBytes (lambda E shen.nextbyte)) (if (or (= Read shen.nextbyte) (empty? Read)) (shen.read-loop V1322 (read-byte V1322) AllBytes) Read)))) (true (shen.read-loop V1322 (read-byte V1322) (append V1324 (cons V1323 ()))))))
|
69
|
+
|
70
|
+
(defun shen.terminator? (V1325) (element? V1325 (cons 9 (cons 10 (cons 13 (cons 32 (cons 34 (cons 41 (cons 93 ())))))))))
|
71
|
+
|
72
|
+
(defun lineread (V1326) (shen.lineread-loop (read-byte V1326) () V1326))
|
73
|
+
|
74
|
+
(defun shen.lineread-loop (V1328 V1329 V1330) (cond ((= -1 V1328) (if (empty? V1329) (simple-error "empty stream") (compile shen.<st_input> V1329 (lambda E E)))) ((= V1328 (shen.hat)) (simple-error "line read aborted")) ((element? V1328 (cons (shen.newline) (cons (shen.carriage-return) ()))) (let Line (compile shen.<st_input> V1329 (lambda E shen.nextline)) (if (or (= Line shen.nextline) (empty? Line)) (shen.lineread-loop (read-byte V1330) (append V1329 (cons V1328 ())) V1330) Line))) (true (shen.lineread-loop (read-byte V1330) (append V1329 (cons V1328 ())) V1330))))
|
75
|
+
|
76
|
+
(defun read-file (V1331) (let Bytelist (read-file-as-bytelist V1331) (compile shen.<st_input> Bytelist shen.read-error)))
|
77
|
+
|
78
|
+
(defun read-from-string (V1332) (let Ns (map (lambda V1306 (string->n V1306)) (explode V1332)) (compile shen.<st_input> Ns shen.read-error)))
|
79
|
+
|
80
|
+
(defun shen.read-error (V1339) (cond ((and (cons? V1339) (and (cons? (hd V1339)) (and (cons? (tl V1339)) (= () (tl (tl V1339)))))) (simple-error (cn "read error here:
|
81
|
+
|
82
|
+
" (shen.app (shen.compress-50 50 (hd V1339)) "
|
59
83
|
" shen.a)))) (true (simple-error "read error
|
60
84
|
"))))
|
61
85
|
|
62
|
-
(defun shen.compress-50 (
|
86
|
+
(defun shen.compress-50 (V1344 V1345) (cond ((= () V1345) "") ((= 0 V1344) "") ((cons? V1345) (cn (n->string (hd V1345)) (shen.compress-50 (- V1344 1) (tl V1345)))) (true (shen.sys-error shen.compress-50))))
|
63
87
|
|
64
|
-
(defun shen.<st_input> (
|
88
|
+
(defun shen.<st_input> (V1350) (let Result (let Parse_shen.<lsb> (shen.<lsb> V1350) (if (not (= (fail) Parse_shen.<lsb>)) (let Parse_shen.<st_input1> (shen.<st_input1> Parse_shen.<lsb>) (if (not (= (fail) Parse_shen.<st_input1>)) (let Parse_shen.<rsb> (shen.<rsb> Parse_shen.<st_input1>) (if (not (= (fail) Parse_shen.<rsb>)) (let Parse_shen.<st_input2> (shen.<st_input2> Parse_shen.<rsb>) (if (not (= (fail) Parse_shen.<st_input2>)) (shen.pair (hd Parse_shen.<st_input2>) (cons (macroexpand (shen.cons_form (shen.hdtl Parse_shen.<st_input1>))) (shen.hdtl Parse_shen.<st_input2>))) (fail))) (fail))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<lrb> (shen.<lrb> V1350) (if (not (= (fail) Parse_shen.<lrb>)) (let Parse_shen.<st_input1> (shen.<st_input1> Parse_shen.<lrb>) (if (not (= (fail) Parse_shen.<st_input1>)) (let Parse_shen.<rrb> (shen.<rrb> Parse_shen.<st_input1>) (if (not (= (fail) Parse_shen.<rrb>)) (let Parse_shen.<st_input2> (shen.<st_input2> Parse_shen.<rrb>) (if (not (= (fail) Parse_shen.<st_input2>)) (shen.pair (hd Parse_shen.<st_input2>) (shen.package-macro (macroexpand (shen.hdtl Parse_shen.<st_input1>)) (shen.hdtl Parse_shen.<st_input2>))) (fail))) (fail))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<lcurly> (shen.<lcurly> V1350) (if (not (= (fail) Parse_shen.<lcurly>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<lcurly>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons { (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<rcurly> (shen.<rcurly> V1350) (if (not (= (fail) Parse_shen.<rcurly>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<rcurly>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons } (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<bar> (shen.<bar> V1350) (if (not (= (fail) Parse_shen.<bar>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<bar>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons bar! (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<semicolon> (shen.<semicolon> V1350) (if (not (= (fail) Parse_shen.<semicolon>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<semicolon>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons ; (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<colon> (shen.<colon> V1350) (if (not (= (fail) Parse_shen.<colon>)) (let Parse_shen.<equal> (shen.<equal> Parse_shen.<colon>) (if (not (= (fail) Parse_shen.<equal>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<equal>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons := (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<colon> (shen.<colon> V1350) (if (not (= (fail) Parse_shen.<colon>)) (let Parse_shen.<minus> (shen.<minus> Parse_shen.<colon>) (if (not (= (fail) Parse_shen.<minus>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<minus>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons :- (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<colon> (shen.<colon> V1350) (if (not (= (fail) Parse_shen.<colon>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<colon>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons : (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<comma> (shen.<comma> V1350) (if (not (= (fail) Parse_shen.<comma>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<comma>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons (intern ",") (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<comment> (shen.<comment> V1350) (if (not (= (fail) Parse_shen.<comment>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<comment>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (shen.hdtl Parse_shen.<st_input>)) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<atom> (shen.<atom> V1350) (if (not (= (fail) Parse_shen.<atom>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<atom>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (cons (macroexpand (shen.hdtl Parse_shen.<atom>)) (shen.hdtl Parse_shen.<st_input>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<whitespaces> (shen.<whitespaces> V1350) (if (not (= (fail) Parse_shen.<whitespaces>)) (let Parse_shen.<st_input> (shen.<st_input> Parse_shen.<whitespaces>) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (shen.hdtl Parse_shen.<st_input>)) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_<e> (<e> V1350) (if (not (= (fail) Parse_<e>)) (shen.pair (hd Parse_<e>) ()) (fail))) (if (= Result (fail)) (fail) Result)) Result)) Result)) Result)) Result)) Result)) Result)) Result)) Result)) Result)) Result)) Result)) Result)) Result)))
|
65
89
|
|
66
|
-
(defun shen.<lsb> (
|
90
|
+
(defun shen.<lsb> (V1355) (let Result (if (and (cons? (hd V1355)) (= 91 (hd (hd V1355)))) (shen.pair (hd (shen.pair (tl (hd V1355)) (shen.hdtl V1355))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
67
91
|
|
68
|
-
(defun shen.<rsb> (
|
92
|
+
(defun shen.<rsb> (V1360) (let Result (if (and (cons? (hd V1360)) (= 93 (hd (hd V1360)))) (shen.pair (hd (shen.pair (tl (hd V1360)) (shen.hdtl V1360))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
69
93
|
|
70
|
-
(defun shen.<lcurly> (
|
94
|
+
(defun shen.<lcurly> (V1365) (let Result (if (and (cons? (hd V1365)) (= 123 (hd (hd V1365)))) (shen.pair (hd (shen.pair (tl (hd V1365)) (shen.hdtl V1365))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
71
95
|
|
72
|
-
(defun shen.<rcurly> (
|
96
|
+
(defun shen.<rcurly> (V1370) (let Result (if (and (cons? (hd V1370)) (= 125 (hd (hd V1370)))) (shen.pair (hd (shen.pair (tl (hd V1370)) (shen.hdtl V1370))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
73
97
|
|
74
|
-
(defun shen.<bar> (
|
98
|
+
(defun shen.<bar> (V1375) (let Result (if (and (cons? (hd V1375)) (= 124 (hd (hd V1375)))) (shen.pair (hd (shen.pair (tl (hd V1375)) (shen.hdtl V1375))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
75
99
|
|
76
|
-
(defun shen.<semicolon> (
|
100
|
+
(defun shen.<semicolon> (V1380) (let Result (if (and (cons? (hd V1380)) (= 59 (hd (hd V1380)))) (shen.pair (hd (shen.pair (tl (hd V1380)) (shen.hdtl V1380))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
77
101
|
|
78
|
-
(defun shen.<colon> (
|
102
|
+
(defun shen.<colon> (V1385) (let Result (if (and (cons? (hd V1385)) (= 58 (hd (hd V1385)))) (shen.pair (hd (shen.pair (tl (hd V1385)) (shen.hdtl V1385))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
79
103
|
|
80
|
-
(defun shen.<comma> (
|
104
|
+
(defun shen.<comma> (V1390) (let Result (if (and (cons? (hd V1390)) (= 44 (hd (hd V1390)))) (shen.pair (hd (shen.pair (tl (hd V1390)) (shen.hdtl V1390))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
81
105
|
|
82
|
-
(defun shen.<equal> (
|
106
|
+
(defun shen.<equal> (V1395) (let Result (if (and (cons? (hd V1395)) (= 61 (hd (hd V1395)))) (shen.pair (hd (shen.pair (tl (hd V1395)) (shen.hdtl V1395))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
83
107
|
|
84
|
-
(defun shen.<minus> (
|
108
|
+
(defun shen.<minus> (V1400) (let Result (if (and (cons? (hd V1400)) (= 45 (hd (hd V1400)))) (shen.pair (hd (shen.pair (tl (hd V1400)) (shen.hdtl V1400))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
85
109
|
|
86
|
-
(defun shen.<lrb> (
|
110
|
+
(defun shen.<lrb> (V1405) (let Result (if (and (cons? (hd V1405)) (= 40 (hd (hd V1405)))) (shen.pair (hd (shen.pair (tl (hd V1405)) (shen.hdtl V1405))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
87
111
|
|
88
|
-
(defun shen.<rrb> (
|
112
|
+
(defun shen.<rrb> (V1410) (let Result (if (and (cons? (hd V1410)) (= 41 (hd (hd V1410)))) (shen.pair (hd (shen.pair (tl (hd V1410)) (shen.hdtl V1410))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
89
113
|
|
90
|
-
(defun shen.<atom> (
|
114
|
+
(defun shen.<atom> (V1415) (let Result (let Parse_shen.<str> (shen.<str> V1415) (if (not (= (fail) Parse_shen.<str>)) (shen.pair (hd Parse_shen.<str>) (shen.control-chars (shen.hdtl Parse_shen.<str>))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<number> (shen.<number> V1415) (if (not (= (fail) Parse_shen.<number>)) (shen.pair (hd Parse_shen.<number>) (shen.hdtl Parse_shen.<number>)) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<sym> (shen.<sym> V1415) (if (not (= (fail) Parse_shen.<sym>)) (shen.pair (hd Parse_shen.<sym>) (if (= (shen.hdtl Parse_shen.<sym>) "<>") (cons vector (cons 0 ())) (intern (shen.hdtl Parse_shen.<sym>)))) (fail))) (if (= Result (fail)) (fail) Result)) Result)) Result)))
|
91
115
|
|
92
|
-
(defun shen.control-chars (
|
116
|
+
(defun shen.control-chars (V1416) (cond ((= () V1416) "") ((and (cons? V1416) (and (= "c" (hd V1416)) (and (cons? (tl V1416)) (= "#" (hd (tl V1416)))))) (let CodePoint (shen.code-point (tl (tl V1416))) (let AfterCodePoint (shen.after-codepoint (tl (tl V1416))) (@s (n->string (shen.decimalise CodePoint)) (shen.control-chars AfterCodePoint))))) ((cons? V1416) (@s (hd V1416) (shen.control-chars (tl V1416)))) (true (shen.sys-error shen.control-chars))))
|
93
117
|
|
94
|
-
(defun shen.code-point (
|
118
|
+
(defun shen.code-point (V1419) (cond ((and (cons? V1419) (= ";" (hd V1419))) "") ((and (cons? V1419) (element? (hd V1419) (cons "0" (cons "1" (cons "2" (cons "3" (cons "4" (cons "5" (cons "6" (cons "7" (cons "8" (cons "9" (cons "0" ()))))))))))))) (cons (hd V1419) (shen.code-point (tl V1419)))) (true (simple-error (cn "code point parse error " (shen.app V1419 "
|
95
119
|
" shen.a))))))
|
96
120
|
|
97
|
-
(defun shen.after-codepoint (
|
98
|
-
|
99
|
-
(defun shen.decimalise (V1404) (shen.pre (reverse (shen.digits->integers V1404)) 0))
|
121
|
+
(defun shen.after-codepoint (V1424) (cond ((= () V1424) ()) ((and (cons? V1424) (= ";" (hd V1424))) (tl V1424)) ((cons? V1424) (shen.after-codepoint (tl V1424))) (true (shen.sys-error shen.after-codepoint))))
|
100
122
|
|
101
|
-
(defun shen.
|
123
|
+
(defun shen.decimalise (V1425) (shen.pre (reverse (shen.digits->integers V1425)) 0))
|
102
124
|
|
103
|
-
(defun shen
|
125
|
+
(defun shen.digits->integers (V1430) (cond ((and (cons? V1430) (= "0" (hd V1430))) (cons 0 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "1" (hd V1430))) (cons 1 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "2" (hd V1430))) (cons 2 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "3" (hd V1430))) (cons 3 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "4" (hd V1430))) (cons 4 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "5" (hd V1430))) (cons 5 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "6" (hd V1430))) (cons 6 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "7" (hd V1430))) (cons 7 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "8" (hd V1430))) (cons 8 (shen.digits->integers (tl V1430)))) ((and (cons? V1430) (= "9" (hd V1430))) (cons 9 (shen.digits->integers (tl V1430)))) (true ())))
|
104
126
|
|
105
|
-
(defun shen.<
|
127
|
+
(defun shen.<sym> (V1435) (let Result (let Parse_shen.<alpha> (shen.<alpha> V1435) (if (not (= (fail) Parse_shen.<alpha>)) (let Parse_shen.<alphanums> (shen.<alphanums> Parse_shen.<alpha>) (if (not (= (fail) Parse_shen.<alphanums>)) (shen.pair (hd Parse_shen.<alphanums>) (@s (shen.hdtl Parse_shen.<alpha>) (shen.hdtl Parse_shen.<alphanums>))) (fail))) (fail))) (if (= Result (fail)) (fail) Result)))
|
106
128
|
|
107
|
-
(defun shen.<
|
129
|
+
(defun shen.<alphanums> (V1440) (let Result (let Parse_shen.<alphanum> (shen.<alphanum> V1440) (if (not (= (fail) Parse_shen.<alphanum>)) (let Parse_shen.<alphanums> (shen.<alphanums> Parse_shen.<alphanum>) (if (not (= (fail) Parse_shen.<alphanums>)) (shen.pair (hd Parse_shen.<alphanums>) (@s (shen.hdtl Parse_shen.<alphanum>) (shen.hdtl Parse_shen.<alphanums>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_<e> (<e> V1440) (if (not (= (fail) Parse_<e>)) (shen.pair (hd Parse_<e>) "") (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
108
130
|
|
109
|
-
(defun shen.<
|
131
|
+
(defun shen.<alphanum> (V1445) (let Result (let Parse_shen.<alpha> (shen.<alpha> V1445) (if (not (= (fail) Parse_shen.<alpha>)) (shen.pair (hd Parse_shen.<alpha>) (shen.hdtl Parse_shen.<alpha>)) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<num> (shen.<num> V1445) (if (not (= (fail) Parse_shen.<num>)) (shen.pair (hd Parse_shen.<num>) (shen.hdtl Parse_shen.<num>)) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
110
132
|
|
111
|
-
(defun shen
|
133
|
+
(defun shen.<num> (V1450) (let Result (if (cons? (hd V1450)) (let Parse_Byte (hd (hd V1450)) (if (shen.numbyte? Parse_Byte) (shen.pair (hd (shen.pair (tl (hd V1450)) (shen.hdtl V1450))) (n->string Parse_Byte)) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
112
134
|
|
113
|
-
(defun shen
|
135
|
+
(defun shen.numbyte? (V1455) (cond ((= 48 V1455) true) ((= 49 V1455) true) ((= 50 V1455) true) ((= 51 V1455) true) ((= 52 V1455) true) ((= 53 V1455) true) ((= 54 V1455) true) ((= 55 V1455) true) ((= 56 V1455) true) ((= 57 V1455) true) (true false)))
|
114
136
|
|
115
|
-
(defun shen
|
137
|
+
(defun shen.<alpha> (V1460) (let Result (if (cons? (hd V1460)) (let Parse_Byte (hd (hd V1460)) (if (shen.symbol-code? Parse_Byte) (shen.pair (hd (shen.pair (tl (hd V1460)) (shen.hdtl V1460))) (n->string Parse_Byte)) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
116
138
|
|
117
|
-
(defun shen
|
139
|
+
(defun shen.symbol-code? (V1461) (or (= V1461 126) (or (and (> V1461 94) (< V1461 123)) (or (and (> V1461 59) (< V1461 91)) (or (and (> V1461 41) (and (< V1461 58) (not (= V1461 44)))) (or (and (> V1461 34) (< V1461 40)) (= V1461 33)))))))
|
118
140
|
|
119
|
-
(defun shen.<
|
141
|
+
(defun shen.<str> (V1466) (let Result (let Parse_shen.<dbq> (shen.<dbq> V1466) (if (not (= (fail) Parse_shen.<dbq>)) (let Parse_shen.<strcontents> (shen.<strcontents> Parse_shen.<dbq>) (if (not (= (fail) Parse_shen.<strcontents>)) (let Parse_shen.<dbq> (shen.<dbq> Parse_shen.<strcontents>) (if (not (= (fail) Parse_shen.<dbq>)) (shen.pair (hd Parse_shen.<dbq>) (shen.hdtl Parse_shen.<strcontents>)) (fail))) (fail))) (fail))) (if (= Result (fail)) (fail) Result)))
|
120
142
|
|
121
|
-
(defun shen.<
|
143
|
+
(defun shen.<dbq> (V1471) (let Result (if (cons? (hd V1471)) (let Parse_Byte (hd (hd V1471)) (if (= Parse_Byte 34) (shen.pair (hd (shen.pair (tl (hd V1471)) (shen.hdtl V1471))) Parse_Byte) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
122
144
|
|
123
|
-
(defun shen.<
|
145
|
+
(defun shen.<strcontents> (V1476) (let Result (let Parse_shen.<strc> (shen.<strc> V1476) (if (not (= (fail) Parse_shen.<strc>)) (let Parse_shen.<strcontents> (shen.<strcontents> Parse_shen.<strc>) (if (not (= (fail) Parse_shen.<strcontents>)) (shen.pair (hd Parse_shen.<strcontents>) (cons (shen.hdtl Parse_shen.<strc>) (shen.hdtl Parse_shen.<strcontents>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_<e> (<e> V1476) (if (not (= (fail) Parse_<e>)) (shen.pair (hd Parse_<e>) ()) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
124
146
|
|
125
|
-
(defun shen.<
|
147
|
+
(defun shen.<byte> (V1481) (let Result (if (cons? (hd V1481)) (let Parse_Byte (hd (hd V1481)) (shen.pair (hd (shen.pair (tl (hd V1481)) (shen.hdtl V1481))) (n->string Parse_Byte))) (fail)) (if (= Result (fail)) (fail) Result)))
|
126
148
|
|
127
|
-
(defun shen.<
|
149
|
+
(defun shen.<strc> (V1486) (let Result (if (cons? (hd V1486)) (let Parse_Byte (hd (hd V1486)) (if (not (= Parse_Byte 34)) (shen.pair (hd (shen.pair (tl (hd V1486)) (shen.hdtl V1486))) (n->string Parse_Byte)) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
128
150
|
|
129
|
-
(defun shen.<
|
151
|
+
(defun shen.<number> (V1491) (let Result (let Parse_shen.<minus> (shen.<minus> V1491) (if (not (= (fail) Parse_shen.<minus>)) (let Parse_shen.<number> (shen.<number> Parse_shen.<minus>) (if (not (= (fail) Parse_shen.<number>)) (shen.pair (hd Parse_shen.<number>) (- 0 (shen.hdtl Parse_shen.<number>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<plus> (shen.<plus> V1491) (if (not (= (fail) Parse_shen.<plus>)) (let Parse_shen.<number> (shen.<number> Parse_shen.<plus>) (if (not (= (fail) Parse_shen.<number>)) (shen.pair (hd Parse_shen.<number>) (shen.hdtl Parse_shen.<number>)) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<predigits> (shen.<predigits> V1491) (if (not (= (fail) Parse_shen.<predigits>)) (let Parse_shen.<stop> (shen.<stop> Parse_shen.<predigits>) (if (not (= (fail) Parse_shen.<stop>)) (let Parse_shen.<postdigits> (shen.<postdigits> Parse_shen.<stop>) (if (not (= (fail) Parse_shen.<postdigits>)) (let Parse_shen.<E> (shen.<E> Parse_shen.<postdigits>) (if (not (= (fail) Parse_shen.<E>)) (let Parse_shen.<log10> (shen.<log10> Parse_shen.<E>) (if (not (= (fail) Parse_shen.<log10>)) (shen.pair (hd Parse_shen.<log10>) (* (shen.expt 10 (shen.hdtl Parse_shen.<log10>)) (+ (shen.pre (reverse (shen.hdtl Parse_shen.<predigits>)) 0) (shen.post (shen.hdtl Parse_shen.<postdigits>) 1)))) (fail))) (fail))) (fail))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<digits> (shen.<digits> V1491) (if (not (= (fail) Parse_shen.<digits>)) (let Parse_shen.<E> (shen.<E> Parse_shen.<digits>) (if (not (= (fail) Parse_shen.<E>)) (let Parse_shen.<log10> (shen.<log10> Parse_shen.<E>) (if (not (= (fail) Parse_shen.<log10>)) (shen.pair (hd Parse_shen.<log10>) (* (shen.expt 10 (shen.hdtl Parse_shen.<log10>)) (shen.pre (reverse (shen.hdtl Parse_shen.<digits>)) 0))) (fail))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<predigits> (shen.<predigits> V1491) (if (not (= (fail) Parse_shen.<predigits>)) (let Parse_shen.<stop> (shen.<stop> Parse_shen.<predigits>) (if (not (= (fail) Parse_shen.<stop>)) (let Parse_shen.<postdigits> (shen.<postdigits> Parse_shen.<stop>) (if (not (= (fail) Parse_shen.<postdigits>)) (shen.pair (hd Parse_shen.<postdigits>) (+ (shen.pre (reverse (shen.hdtl Parse_shen.<predigits>)) 0) (shen.post (shen.hdtl Parse_shen.<postdigits>) 1))) (fail))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<digits> (shen.<digits> V1491) (if (not (= (fail) Parse_shen.<digits>)) (shen.pair (hd Parse_shen.<digits>) (shen.pre (reverse (shen.hdtl Parse_shen.<digits>)) 0)) (fail))) (if (= Result (fail)) (fail) Result)) Result)) Result)) Result)) Result)) Result)))
|
130
152
|
|
131
|
-
(defun shen.<
|
153
|
+
(defun shen.<E> (V1496) (let Result (if (and (cons? (hd V1496)) (= 101 (hd (hd V1496)))) (shen.pair (hd (shen.pair (tl (hd V1496)) (shen.hdtl V1496))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
132
154
|
|
133
|
-
(defun shen.<
|
155
|
+
(defun shen.<log10> (V1501) (let Result (let Parse_shen.<minus> (shen.<minus> V1501) (if (not (= (fail) Parse_shen.<minus>)) (let Parse_shen.<digits> (shen.<digits> Parse_shen.<minus>) (if (not (= (fail) Parse_shen.<digits>)) (shen.pair (hd Parse_shen.<digits>) (- 0 (shen.pre (reverse (shen.hdtl Parse_shen.<digits>)) 0))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<digits> (shen.<digits> V1501) (if (not (= (fail) Parse_shen.<digits>)) (shen.pair (hd Parse_shen.<digits>) (shen.pre (reverse (shen.hdtl Parse_shen.<digits>)) 0)) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
134
156
|
|
135
|
-
(defun shen.<
|
157
|
+
(defun shen.<plus> (V1506) (let Result (if (cons? (hd V1506)) (let Parse_Byte (hd (hd V1506)) (if (= Parse_Byte 43) (shen.pair (hd (shen.pair (tl (hd V1506)) (shen.hdtl V1506))) Parse_Byte) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
136
158
|
|
137
|
-
(defun shen.<
|
159
|
+
(defun shen.<stop> (V1511) (let Result (if (cons? (hd V1511)) (let Parse_Byte (hd (hd V1511)) (if (= Parse_Byte 46) (shen.pair (hd (shen.pair (tl (hd V1511)) (shen.hdtl V1511))) Parse_Byte) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
138
160
|
|
139
|
-
(defun shen.<
|
161
|
+
(defun shen.<predigits> (V1516) (let Result (let Parse_shen.<digits> (shen.<digits> V1516) (if (not (= (fail) Parse_shen.<digits>)) (shen.pair (hd Parse_shen.<digits>) (shen.hdtl Parse_shen.<digits>)) (fail))) (if (= Result (fail)) (let Result (let Parse_<e> (<e> V1516) (if (not (= (fail) Parse_<e>)) (shen.pair (hd Parse_<e>) ()) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
140
162
|
|
141
|
-
(defun shen.<
|
163
|
+
(defun shen.<postdigits> (V1521) (let Result (let Parse_shen.<digits> (shen.<digits> V1521) (if (not (= (fail) Parse_shen.<digits>)) (shen.pair (hd Parse_shen.<digits>) (shen.hdtl Parse_shen.<digits>)) (fail))) (if (= Result (fail)) (fail) Result)))
|
142
164
|
|
143
|
-
(defun shen.<
|
165
|
+
(defun shen.<digits> (V1526) (let Result (let Parse_shen.<digit> (shen.<digit> V1526) (if (not (= (fail) Parse_shen.<digit>)) (let Parse_shen.<digits> (shen.<digits> Parse_shen.<digit>) (if (not (= (fail) Parse_shen.<digits>)) (shen.pair (hd Parse_shen.<digits>) (cons (shen.hdtl Parse_shen.<digit>) (shen.hdtl Parse_shen.<digits>))) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<digit> (shen.<digit> V1526) (if (not (= (fail) Parse_shen.<digit>)) (shen.pair (hd Parse_shen.<digit>) (cons (shen.hdtl Parse_shen.<digit>) ())) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
144
166
|
|
145
|
-
(defun shen
|
167
|
+
(defun shen.<digit> (V1531) (let Result (if (cons? (hd V1531)) (let Parse_X (hd (hd V1531)) (if (shen.numbyte? Parse_X) (shen.pair (hd (shen.pair (tl (hd V1531)) (shen.hdtl V1531))) (shen.byte->digit Parse_X)) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
146
168
|
|
147
|
-
(defun shen.
|
169
|
+
(defun shen.byte->digit (V1532) (cond ((= 48 V1532) 0) ((= 49 V1532) 1) ((= 50 V1532) 2) ((= 51 V1532) 3) ((= 52 V1532) 4) ((= 53 V1532) 5) ((= 54 V1532) 6) ((= 55 V1532) 7) ((= 56 V1532) 8) ((= 57 V1532) 9) (true (shen.sys-error shen.byte->digit))))
|
148
170
|
|
149
|
-
(defun shen.
|
171
|
+
(defun shen.pre (V1535 V1536) (cond ((= () V1535) 0) ((cons? V1535) (+ (* (shen.expt 10 V1536) (hd V1535)) (shen.pre (tl V1535) (+ V1536 1)))) (true (shen.sys-error shen.pre))))
|
150
172
|
|
151
|
-
(defun shen.
|
173
|
+
(defun shen.post (V1539 V1540) (cond ((= () V1539) 0) ((cons? V1539) (+ (* (shen.expt 10 (- 0 V1540)) (hd V1539)) (shen.post (tl V1539) (+ V1540 1)))) (true (shen.sys-error shen.post))))
|
152
174
|
|
153
|
-
(defun shen
|
175
|
+
(defun shen.expt (V1543 V1544) (cond ((= 0 V1544) 1) ((> V1544 0) (* V1543 (shen.expt V1543 (- V1544 1)))) (true (* 1 (/ (shen.expt V1543 (+ V1544 1)) V1543)))))
|
154
176
|
|
155
|
-
(defun shen.<
|
177
|
+
(defun shen.<st_input1> (V1549) (let Result (let Parse_shen.<st_input> (shen.<st_input> V1549) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (shen.hdtl Parse_shen.<st_input>)) (fail))) (if (= Result (fail)) (fail) Result)))
|
156
178
|
|
157
|
-
(defun shen.<
|
179
|
+
(defun shen.<st_input2> (V1554) (let Result (let Parse_shen.<st_input> (shen.<st_input> V1554) (if (not (= (fail) Parse_shen.<st_input>)) (shen.pair (hd Parse_shen.<st_input>) (shen.hdtl Parse_shen.<st_input>)) (fail))) (if (= Result (fail)) (fail) Result)))
|
158
180
|
|
159
|
-
(defun shen.<
|
181
|
+
(defun shen.<comment> (V1559) (let Result (let Parse_shen.<singleline> (shen.<singleline> V1559) (if (not (= (fail) Parse_shen.<singleline>)) (shen.pair (hd Parse_shen.<singleline>) shen.skip) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<multiline> (shen.<multiline> V1559) (if (not (= (fail) Parse_shen.<multiline>)) (shen.pair (hd Parse_shen.<multiline>) shen.skip) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
160
182
|
|
161
|
-
(defun shen.<
|
183
|
+
(defun shen.<singleline> (V1564) (let Result (let Parse_shen.<backslash> (shen.<backslash> V1564) (if (not (= (fail) Parse_shen.<backslash>)) (let Parse_shen.<backslash> (shen.<backslash> Parse_shen.<backslash>) (if (not (= (fail) Parse_shen.<backslash>)) (let Parse_shen.<anysingle> (shen.<anysingle> Parse_shen.<backslash>) (if (not (= (fail) Parse_shen.<anysingle>)) (let Parse_shen.<return> (shen.<return> Parse_shen.<anysingle>) (if (not (= (fail) Parse_shen.<return>)) (shen.pair (hd Parse_shen.<return>) shen.skip) (fail))) (fail))) (fail))) (fail))) (if (= Result (fail)) (fail) Result)))
|
162
184
|
|
163
|
-
(defun shen.<
|
185
|
+
(defun shen.<backslash> (V1569) (let Result (if (and (cons? (hd V1569)) (= 92 (hd (hd V1569)))) (shen.pair (hd (shen.pair (tl (hd V1569)) (shen.hdtl V1569))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
164
186
|
|
165
|
-
(defun shen.<
|
187
|
+
(defun shen.<anysingle> (V1574) (let Result (let Parse_shen.<non-return> (shen.<non-return> V1574) (if (not (= (fail) Parse_shen.<non-return>)) (let Parse_shen.<anysingle> (shen.<anysingle> Parse_shen.<non-return>) (if (not (= (fail) Parse_shen.<anysingle>)) (shen.pair (hd Parse_shen.<anysingle>) shen.skip) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_<e> (<e> V1574) (if (not (= (fail) Parse_<e>)) (shen.pair (hd Parse_<e>) shen.skip) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
166
188
|
|
167
|
-
(defun shen.<return> (
|
189
|
+
(defun shen.<non-return> (V1579) (let Result (if (cons? (hd V1579)) (let Parse_X (hd (hd V1579)) (if (not (element? Parse_X (cons 10 (cons 13 ())))) (shen.pair (hd (shen.pair (tl (hd V1579)) (shen.hdtl V1579))) shen.skip) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
168
190
|
|
169
|
-
(defun shen.<
|
191
|
+
(defun shen.<return> (V1584) (let Result (if (cons? (hd V1584)) (let Parse_X (hd (hd V1584)) (if (element? Parse_X (cons 10 (cons 13 ()))) (shen.pair (hd (shen.pair (tl (hd V1584)) (shen.hdtl V1584))) shen.skip) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
170
192
|
|
171
|
-
(defun shen.<
|
193
|
+
(defun shen.<multiline> (V1589) (let Result (let Parse_shen.<backslash> (shen.<backslash> V1589) (if (not (= (fail) Parse_shen.<backslash>)) (let Parse_shen.<times> (shen.<times> Parse_shen.<backslash>) (if (not (= (fail) Parse_shen.<times>)) (let Parse_shen.<anymulti> (shen.<anymulti> Parse_shen.<times>) (if (not (= (fail) Parse_shen.<anymulti>)) (shen.pair (hd Parse_shen.<anymulti>) shen.skip) (fail))) (fail))) (fail))) (if (= Result (fail)) (fail) Result)))
|
172
194
|
|
173
|
-
(defun shen.<
|
195
|
+
(defun shen.<times> (V1594) (let Result (if (and (cons? (hd V1594)) (= 42 (hd (hd V1594)))) (shen.pair (hd (shen.pair (tl (hd V1594)) (shen.hdtl V1594))) shen.skip) (fail)) (if (= Result (fail)) (fail) Result)))
|
174
196
|
|
175
|
-
(defun shen.<
|
197
|
+
(defun shen.<anymulti> (V1599) (let Result (let Parse_shen.<comment> (shen.<comment> V1599) (if (not (= (fail) Parse_shen.<comment>)) (let Parse_shen.<anymulti> (shen.<anymulti> Parse_shen.<comment>) (if (not (= (fail) Parse_shen.<anymulti>)) (shen.pair (hd Parse_shen.<anymulti>) shen.skip) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<times> (shen.<times> V1599) (if (not (= (fail) Parse_shen.<times>)) (let Parse_shen.<backslash> (shen.<backslash> Parse_shen.<times>) (if (not (= (fail) Parse_shen.<backslash>)) (shen.pair (hd Parse_shen.<backslash>) shen.skip) (fail))) (fail))) (if (= Result (fail)) (let Result (if (cons? (hd V1599)) (let Parse_X (hd (hd V1599)) (let Parse_shen.<anymulti> (shen.<anymulti> (shen.pair (tl (hd V1599)) (shen.hdtl V1599))) (if (not (= (fail) Parse_shen.<anymulti>)) (shen.pair (hd Parse_shen.<anymulti>) shen.skip) (fail)))) (fail)) (if (= Result (fail)) (fail) Result)) Result)) Result)))
|
176
198
|
|
177
|
-
(defun shen.<
|
199
|
+
(defun shen.<whitespaces> (V1604) (let Result (let Parse_shen.<whitespace> (shen.<whitespace> V1604) (if (not (= (fail) Parse_shen.<whitespace>)) (let Parse_shen.<whitespaces> (shen.<whitespaces> Parse_shen.<whitespace>) (if (not (= (fail) Parse_shen.<whitespaces>)) (shen.pair (hd Parse_shen.<whitespaces>) shen.skip) (fail))) (fail))) (if (= Result (fail)) (let Result (let Parse_shen.<whitespace> (shen.<whitespace> V1604) (if (not (= (fail) Parse_shen.<whitespace>)) (shen.pair (hd Parse_shen.<whitespace>) shen.skip) (fail))) (if (= Result (fail)) (fail) Result)) Result)))
|
178
200
|
|
179
|
-
(defun shen
|
201
|
+
(defun shen.<whitespace> (V1609) (let Result (if (cons? (hd V1609)) (let Parse_X (hd (hd V1609)) (if (let Parse_Case Parse_X (or (= Parse_Case 32) (or (= Parse_Case 13) (or (= Parse_Case 10) (= Parse_Case 9))))) (shen.pair (hd (shen.pair (tl (hd V1609)) (shen.hdtl V1609))) shen.skip) (fail))) (fail)) (if (= Result (fail)) (fail) Result)))
|
180
202
|
|
181
|
-
(defun shen.
|
203
|
+
(defun shen.cons_form (V1610) (cond ((= () V1610) ()) ((and (cons? V1610) (and (cons? (tl V1610)) (and (cons? (tl (tl V1610))) (and (= () (tl (tl (tl V1610)))) (= (hd (tl V1610)) bar!))))) (cons cons (cons (hd V1610) (tl (tl V1610))))) ((cons? V1610) (cons cons (cons (hd V1610) (cons (shen.cons_form (tl V1610)) ())))) (true (shen.sys-error shen.cons_form))))
|
182
204
|
|
183
|
-
(defun shen.
|
205
|
+
(defun shen.package-macro (V1613 V1614) (cond ((and (cons? V1613) (and (= $ (hd V1613)) (and (cons? (tl V1613)) (= () (tl (tl V1613)))))) (append (explode (hd (tl V1613))) V1614)) ((and (cons? V1613) (and (= package (hd V1613)) (and (cons? (tl V1613)) (and (= null (hd (tl V1613))) (cons? (tl (tl V1613))))))) (append (tl (tl (tl V1613))) V1614)) ((and (cons? V1613) (and (= package (hd V1613)) (and (cons? (tl V1613)) (cons? (tl (tl V1613)))))) (let ListofExceptions (shen.eval-without-macros (hd (tl (tl V1613)))) (let Record (shen.record-exceptions ListofExceptions (hd (tl V1613))) (let PackageNameDot (intern (cn (str (hd (tl V1613))) ".")) (append (shen.packageh PackageNameDot ListofExceptions (tl (tl (tl V1613)))) V1614))))) (true (cons V1613 V1614))))
|
184
206
|
|
185
|
-
(defun shen.
|
207
|
+
(defun shen.record-exceptions (V1615 V1616) (let CurrExceptions (trap-error (get V1616 shen.external-symbols (value *property-vector*)) (lambda E ())) (let AllExceptions (union V1615 CurrExceptions) (put V1616 shen.external-symbols AllExceptions (value *property-vector*)))))
|
186
208
|
|
187
|
-
(defun
|
209
|
+
(defun shen.packageh (V1625 V1626 V1627) (cond ((cons? V1627) (cons (shen.packageh V1625 V1626 (hd V1627)) (shen.packageh V1625 V1626 (tl V1627)))) ((or (shen.sysfunc? V1627) (or (variable? V1627) (or (element? V1627 V1626) (or (shen.doubleunderline? V1627) (shen.singleunderline? V1627))))) V1627) ((and (symbol? V1627) (not (shen.prefix? (cons "s" (cons "h" (cons "e" (cons "n" (cons "." ()))))) (explode V1627)))) (concat V1625 V1627)) (true V1627)))
|
188
210
|
|
189
211
|
|
190
212
|
|