(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec* ((#{make-void 203}# (lambda (#{src 774}#) (make-struct/no-tail (vector-ref %expanded-vtables 0) #{src 774}#))) (#{make-const 205}# (lambda (#{src 776}# #{exp 777}#) (make-struct/no-tail (vector-ref %expanded-vtables 1) #{src 776}# #{exp 777}#))) (#{make-lexical-ref 209}# (lambda (#{src 784}# #{name 785}# #{gensym 786}#) (make-struct/no-tail (vector-ref %expanded-vtables 3) #{src 784}# #{name 785}# #{gensym 786}#))) (#{make-lexical-set 211}# (lambda (#{src 790}# #{name 791}# #{gensym 792}# #{exp 793}#) (make-struct/no-tail (vector-ref %expanded-vtables 4) #{src 790}# #{name 791}# #{gensym 792}# #{exp 793}#))) (#{make-module-ref 213}# (lambda (#{src 798}# #{mod 799}# #{name 800}# #{public? 801}#) (make-struct/no-tail (vector-ref %expanded-vtables 5) #{src 798}# #{mod 799}# #{name 800}# #{public? 801}#))) (#{make-module-set 215}# (lambda (#{src 806}# #{mod 807}# #{name 808}# #{public? 809}# #{exp 810}#) (make-struct/no-tail (vector-ref %expanded-vtables 6) #{src 806}# #{mod 807}# #{name 808}# #{public? 809}# #{exp 810}#))) (#{make-toplevel-ref 217}# (lambda (#{src 816}# #{name 817}#) (make-struct/no-tail (vector-ref %expanded-vtables 7) #{src 816}# #{name 817}#))) (#{make-toplevel-set 219}# (lambda (#{src 820}# #{name 821}# #{exp 822}#) (make-struct/no-tail (vector-ref %expanded-vtables 8) #{src 820}# #{name 821}# #{exp 822}#))) (#{make-toplevel-define 221}# (lambda (#{src 826}# #{name 827}# #{exp 828}#) (make-struct/no-tail (vector-ref %expanded-vtables 9) #{src 826}# #{name 827}# #{exp 828}#))) (#{make-conditional 223}# (lambda (#{src 832}# #{test 833}# #{consequent 834}# #{alternate 835}#) (make-struct/no-tail (vector-ref %expanded-vtables 10) #{src 832}# #{test 833}# #{consequent 834}# #{alternate 835}#))) (#{make-application 225}# (lambda (#{src 840}# #{proc 841}# #{args 842}#) (make-struct/no-tail (vector-ref %expanded-vtables 11) #{src 840}# #{proc 841}# #{args 842}#))) (#{make-sequence 227}# (lambda (#{src 846}# #{exps 847}#) (make-struct/no-tail (vector-ref %expanded-vtables 12) #{src 846}# #{exps 847}#))) (#{make-lambda 229}# (lambda (#{src 850}# #{meta 851}# #{body 852}#) (make-struct/no-tail (vector-ref %expanded-vtables 13) #{src 850}# #{meta 851}# #{body 852}#))) (#{make-lambda-case 231}# (lambda (#{src 856}# #{req 857}# #{opt 858}# #{rest 859}# #{kw 860}# #{inits 861}# #{gensyms 862}# #{body 863}# #{alternate 864}#) (make-struct/no-tail (vector-ref %expanded-vtables 14) #{src 856}# #{req 857}# #{opt 858}# #{rest 859}# #{kw 860}# #{inits 861}# #{gensyms 862}# #{body 863}# #{alternate 864}#))) (#{make-let 233}# (lambda (#{src 874}# #{names 875}# #{gensyms 876}# #{vals 877}# #{body 878}#) (make-struct/no-tail (vector-ref %expanded-vtables 15) #{src 874}# #{names 875}# #{gensyms 876}# #{vals 877}# #{body 878}#))) (#{make-letrec 235}# (lambda (#{src 884}# #{in-order? 885}# #{names 886}# #{gensyms 887}# #{vals 888}# #{body 889}#) (make-struct/no-tail (vector-ref %expanded-vtables 16) #{src 884}# #{in-order? 885}# #{names 886}# #{gensyms 887}# #{vals 888}# #{body 889}#))) (#{make-dynlet 237}# (lambda (#{src 896}# #{fluids 897}# #{vals 898}# #{body 899}#) (make-struct/no-tail (vector-ref %expanded-vtables 17) #{src 896}# #{fluids 897}# #{vals 898}# #{body 899}#))) (#{lambda? 240}# (lambda (#{x 904}#) (if (struct? #{x 904}#) (eq? (struct-vtable #{x 904}#) (vector-ref %expanded-vtables 13)) #f))) (#{lambda-meta 242}# (lambda (#{x 908}#) (struct-ref #{x 908}# 1))) (#{set-lambda-meta! 244}# (lambda (#{x 910}# #{v 911}#) (struct-set! #{x 910}# 1 #{v 911}#))) (#{top-level-eval-hook 250}# (lambda (#{x 914}# #{mod 915}#) (primitive-eval #{x 914}#))) (#{local-eval-hook 252}# (lambda (#{x 918}# #{mod 919}#) (primitive-eval #{x 918}#))) (#{put-global-definition-hook 256}# (lambda (#{symbol 922}# #{type 923}# #{val 924}#) (module-define! (current-module) #{symbol 922}# (make-syntax-transformer #{symbol 922}# #{type 923}# #{val 924}#)))) (#{get-global-definition-hook 258}# (lambda (#{symbol 928}# #{module 929}#) (begin (if (if (not #{module 929}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol 928}#)) (begin (let ((#{v 935}# (module-variable (if #{module 929}# (resolve-module (cdr #{module 929}#)) (current-module)) #{symbol 928}#))) (if #{v 935}# (if (variable-bound? #{v 935}#) (begin (let ((#{val 940}# (variable-ref #{v 935}#))) (if (macro? #{val 940}#) (if (macro-type #{val 940}#) (cons (macro-type #{val 940}#) (macro-binding #{val 940}#)) #f) #f))) #f) #f)))))) (#{decorate-source 260}# (lambda (#{e 944}# #{s 945}#) (begin (if (if (pair? #{e 944}#) #{s 945}# #f) (set-source-properties! #{e 944}# #{s 945}#)) #{e 944}#))) (#{maybe-name-value! 262}# (lambda (#{name 950}# #{val 951}#) (if (#{lambda? 240}# #{val 951}#) (begin (let ((#{meta 955}# (#{lambda-meta 242}# #{val 951}#))) (if (not (assq 'name #{meta 955}#)) (#{set-lambda-meta! 244}# #{val 951}# (cons (cons 'name #{name 950}#) #{meta 955}#)))))))) (#{build-void 264}# (lambda (#{source 956}#) (#{make-void 203}# #{source 956}#))) (#{build-application 266}# (lambda (#{source 958}# #{fun-exp 959}# #{arg-exps 960}#) (#{make-application 225}# #{source 958}# #{fun-exp 959}# #{arg-exps 960}#))) (#{build-conditional 268}# (lambda (#{source 964}# #{test-exp 965}# #{then-exp 966}# #{else-exp 967}#) (#{make-conditional 223}# #{source 964}# #{test-exp 965}# #{then-exp 966}# #{else-exp 967}#))) (#{build-dynlet 270}# (lambda (#{source 972}# #{fluids 973}# #{vals 974}# #{body 975}#) (#{make-dynlet 237}# #{source 972}# #{fluids 973}# #{vals 974}# #{body 975}#))) (#{build-lexical-reference 272}# (lambda (#{type 980}# #{source 981}# #{name 982}# #{var 983}#) (#{make-lexical-ref 209}# #{source 981}# #{name 982}# #{var 983}#))) (#{build-lexical-assignment 274}# (lambda (#{source 988}# #{name 989}# #{var 990}# #{exp 991}#) (begin (#{maybe-name-value! 262}# #{name 989}# #{exp 991}#) (#{make-lexical-set 211}# #{source 988}# #{name 989}# #{var 990}# #{exp 991}#)))) (#{analyze-variable 276}# (lambda (#{mod 996}# #{var 997}# #{modref-cont 998}# #{bare-cont 999}#) (if (not #{mod 996}#) (#{bare-cont 999}# #{var 997}#) (begin (let ((#{kind 1006}# (car #{mod 996}#)) (#{mod 1007}# (cdr #{mod 996}#))) (if (eqv? #{kind 1006}# 'public) (#{modref-cont 998}# #{mod 1007}# #{var 997}# #t) (if (eqv? #{kind 1006}# 'private) (if (not (equal? #{mod 1007}# (module-name (current-module)))) (#{modref-cont 998}# #{mod 1007}# #{var 997}# #f) (#{bare-cont 999}# #{var 997}#)) (if (eqv? #{kind 1006}# 'bare) (#{bare-cont 999}# #{var 997}#) (if (eqv? #{kind 1006}# 'hygiene) (if (if (not (equal? #{mod 1007}# (module-name (current-module)))) (module-variable (resolve-module #{mod 1007}#) #{var 997}#) #f) (#{modref-cont 998}# #{mod 1007}# #{var 997}# #f) (#{bare-cont 999}# #{var 997}#)) (syntax-violation #f "bad module kind" #{var 997}# #{mod 1007}#)))))))))) (#{build-global-reference 278}# (lambda (#{source 1015}# #{var 1016}# #{mod 1017}#) (#{analyze-variable 276}# #{mod 1017}# #{var 1016}# (lambda (#{mod 1021}# #{var 1022}# #{public? 1023}#) (#{make-module-ref 213}# #{source 1015}# #{mod 1021}# #{var 1022}# #{public? 1023}#)) (lambda (#{var 1027}#) (#{make-toplevel-ref 217}# #{source 1015}# #{var 1027}#))))) (#{build-global-assignment 280}# (lambda (#{source 1029}# #{var 1030}# #{exp 1031}# #{mod 1032}#) (begin (#{maybe-name-value! 262}# #{var 1030}# #{exp 1031}#) (#{analyze-variable 276}# #{mod 1032}# #{var 1030}# (lambda (#{mod 1037}# #{var 1038}# #{public? 1039}#) (#{make-module-set 215}# #{source 1029}# #{mod 1037}# #{var 1038}# #{public? 1039}# #{exp 1031}#)) (lambda (#{var 1043}#) (#{make-toplevel-set 219}# #{source 1029}# #{var 1043}# #{exp 1031}#)))))) (#{build-global-definition 282}# (lambda (#{source 1045}# #{var 1046}# #{exp 1047}#) (begin (#{maybe-name-value! 262}# #{var 1046}# #{exp 1047}#) (#{make-toplevel-define 221}# #{source 1045}# #{var 1046}# #{exp 1047}#)))) (#{build-simple-lambda 284}# (lambda (#{src 1051}# #{req 1052}# #{rest 1053}# #{vars 1054}# #{meta 1055}# #{exp 1056}#) (#{make-lambda 229}# #{src 1051}# #{meta 1055}# (#{make-lambda-case 231}# #{src 1051}# #{req 1052}# #f #{rest 1053}# #f '() #{vars 1054}# #{exp 1056}# #f)))) (#{build-case-lambda 286}# (lambda (#{src 1063}# #{meta 1064}# #{body 1065}#) (#{make-lambda 229}# #{src 1063}# #{meta 1064}# #{body 1065}#))) (#{build-lambda-case 288}# (lambda (#{src 1069}# #{req 1070}# #{opt 1071}# #{rest 1072}# #{kw 1073}# #{inits 1074}# #{vars 1075}# #{body 1076}# #{else-case 1077}#) (#{make-lambda-case 231}# #{src 1069}# #{req 1070}# #{opt 1071}# #{rest 1072}# #{kw 1073}# #{inits 1074}# #{vars 1075}# #{body 1076}# #{else-case 1077}#))) (#{build-primref 290}# (lambda (#{src 1087}# #{name 1088}#) (if (equal? (module-name (current-module)) '(guile)) (#{make-toplevel-ref 217}# #{src 1087}# #{name 1088}#) (#{make-module-ref 213}# #{src 1087}# '(guile) #{name 1088}# #f)))) (#{build-data 292}# (lambda (#{src 1091}# #{exp 1092}#) (#{make-const 205}# #{src 1091}# #{exp 1092}#))) (#{build-sequence 294}# (lambda (#{src 1095}# #{exps 1096}#) (if (null? (cdr #{exps 1096}#)) (car #{exps 1096}#) (#{make-sequence 227}# #{src 1095}# #{exps 1096}#)))) (#{build-let 296}# (lambda (#{src 1099}# #{ids 1100}# #{vars 1101}# #{val-exps 1102}# #{body-exp 1103}#) (begin (for-each #{maybe-name-value! 262}# #{ids 1100}# #{val-exps 1102}#) (if (null? #{vars 1101}#) #{body-exp 1103}# (#{make-let 233}# #{src 1099}# #{ids 1100}# #{vars 1101}# #{val-exps 1102}# #{body-exp 1103}#))))) (#{build-named-let 298}# (lambda (#{src 1109}# #{ids 1110}# #{vars 1111}# #{val-exps 1112}# #{body-exp 1113}#) (begin (let ((#{f 1123}# (car #{vars 1111}#)) (#{f-name 1124}# (car #{ids 1110}#)) (#{vars 1125}# (cdr #{vars 1111}#)) (#{ids 1126}# (cdr #{ids 1110}#))) (begin (let ((#{proc 1128}# (#{build-simple-lambda 284}# #{src 1109}# #{ids 1126}# #f #{vars 1125}# '() #{body-exp 1113}#))) (begin (#{maybe-name-value! 262}# #{f-name 1124}# #{proc 1128}#) (for-each #{maybe-name-value! 262}# #{ids 1126}# #{val-exps 1112}#) (#{make-letrec 235}# #{src 1109}# #f (list #{f-name 1124}#) (list #{f 1123}#) (list #{proc 1128}#) (#{build-application 266}# #{src 1109}# (#{build-lexical-reference 272}# 'fun #{src 1109}# #{f-name 1124}# #{f 1123}#) #{val-exps 1112}#))))))))) (#{build-letrec 300}# (lambda (#{src 1129}# #{in-order? 1130}# #{ids 1131}# #{vars 1132}# #{val-exps 1133}# #{body-exp 1134}#) (if (null? #{vars 1132}#) #{body-exp 1134}# (begin (for-each #{maybe-name-value! 262}# #{ids 1131}# #{val-exps 1133}#) (#{make-letrec 235}# #{src 1129}# #{in-order? 1130}# #{ids 1131}# #{vars 1132}# #{val-exps 1133}# #{body-exp 1134}#))))) (#{make-syntax-object 305}# (lambda (#{expression 1141}# #{wrap 1142}# #{module 1143}#) (vector 'syntax-object #{expression 1141}# #{wrap 1142}# #{module 1143}#))) (#{syntax-object? 307}# (lambda (#{x 1147}#) (if (vector? #{x 1147}#) (if (= (vector-length #{x 1147}#) 4) (eq? (vector-ref #{x 1147}# 0) 'syntax-object) #f) #f))) (#{syntax-object-expression 309}# (lambda (#{x 1152}#) (vector-ref #{x 1152}# 1))) (#{syntax-object-wrap 311}# (lambda (#{x 1154}#) (vector-ref #{x 1154}# 2))) (#{syntax-object-module 313}# (lambda (#{x 1156}#) (vector-ref #{x 1156}# 3))) (#{source-annotation 322}# (lambda (#{x 1170}#) (if (#{syntax-object? 307}# #{x 1170}#) (#{source-annotation 322}# (#{syntax-object-expression 309}# #{x 1170}#)) (if (pair? #{x 1170}#) (begin (let ((#{props 1177}# (source-properties #{x 1170}#))) (if (pair? #{props 1177}#) #{props 1177}# #f))) #f)))) (#{extend-env 332}# (lambda (#{labels 1179}# #{bindings 1180}# #{r 1181}#) (if (null? #{labels 1179}#) #{r 1181}# (#{extend-env 332}# (cdr #{labels 1179}#) (cdr #{bindings 1180}#) (cons (cons (car #{labels 1179}#) (car #{bindings 1180}#)) #{r 1181}#))))) (#{extend-var-env 334}# (lambda (#{labels 1185}# #{vars 1186}# #{r 1187}#) (if (null? #{labels 1185}#) #{r 1187}# (#{extend-var-env 334}# (cdr #{labels 1185}#) (cdr #{vars 1186}#) (cons (cons (car #{labels 1185}#) (cons 'lexical (car #{vars 1186}#))) #{r 1187}#))))) (#{macros-only-env 336}# (lambda (#{r 1192}#) (if (null? #{r 1192}#) '() (begin (let ((#{a 1195}# (car #{r 1192}#))) (if (eq? (car (cdr #{a 1195}#)) 'macro) (cons #{a 1195}# (#{macros-only-env 336}# (cdr #{r 1192}#))) (#{macros-only-env 336}# (cdr #{r 1192}#)))))))) (#{lookup 338}# (lambda (#{x 1196}# #{r 1197}# #{mod 1198}#) (begin (let ((#{t 1204}# (assq #{x 1196}# #{r 1197}#))) (if #{t 1204}# (cdr #{t 1204}#) (if (symbol? #{x 1196}#) (begin (let ((#{t 1210}# (#{get-global-definition-hook 258}# #{x 1196}# #{mod 1198}#))) (if #{t 1210}# #{t 1210}# '(global)))) '(displaced-lexical))))))) (#{global-extend 340}# (lambda (#{type 1215}# #{sym 1216}# #{val 1217}#) (#{put-global-definition-hook 256}# #{sym 1216}# #{type 1215}# #{val 1217}#))) (#{nonsymbol-id? 342}# (lambda (#{x 1221}#) (if (#{syntax-object? 307}# #{x 1221}#) (symbol? (#{syntax-object-expression 309}# #{x 1221}#)) #f))) (#{id? 344}# (lambda (#{x 1225}#) (if (symbol? #{x 1225}#) #t (if (#{syntax-object? 307}# #{x 1225}#) (symbol? (#{syntax-object-expression 309}# #{x 1225}#)) #f)))) (#{id-sym-name&marks 348}# (lambda (#{x 1232}# #{w 1233}#) (if (#{syntax-object? 307}# #{x 1232}#) (values (#{syntax-object-expression 309}# #{x 1232}#) (#{join-marks 402}# (car #{w 1233}#) (car (#{syntax-object-wrap 311}# #{x 1232}#)))) (values #{x 1232}# (car #{w 1233}#))))) (#{gen-label 362}# (lambda () (symbol->string (gensym "i")))) (#{gen-labels 364}# (lambda (#{ls 1239}#) (if (null? #{ls 1239}#) '() (cons (#{gen-label 362}#) (#{gen-labels 364}# (cdr #{ls 1239}#)))))) (#{make-ribcage 367}# (lambda (#{symnames 1241}# #{marks 1242}# #{labels 1243}#) (vector 'ribcage #{symnames 1241}# #{marks 1242}# #{labels 1243}#))) (#{ribcage-symnames 371}# (lambda (#{x 1252}#) (vector-ref #{x 1252}# 1))) (#{ribcage-marks 373}# (lambda (#{x 1254}#) (vector-ref #{x 1254}# 2))) (#{ribcage-labels 375}# (lambda (#{x 1256}#) (vector-ref #{x 1256}# 3))) (#{set-ribcage-symnames! 377}# (lambda (#{x 1258}# #{update 1259}#) (vector-set! #{x 1258}# 1 #{update 1259}#))) (#{set-ribcage-marks! 379}# (lambda (#{x 1262}# #{update 1263}#) (vector-set! #{x 1262}# 2 #{update 1263}#))) (#{set-ribcage-labels! 381}# (lambda (#{x 1266}# #{update 1267}#) (vector-set! #{x 1266}# 3 #{update 1267}#))) (#{anti-mark 388}# (lambda (#{w 1270}#) (cons (cons #f (car #{w 1270}#)) (cons 'shift (cdr #{w 1270}#))))) (#{extend-ribcage! 394}# (lambda (#{ribcage 1276}# #{id 1277}# #{label 1278}#) (begin (#{set-ribcage-symnames! 377}# #{ribcage 1276}# (cons (#{syntax-object-expression 309}# #{id 1277}#) (#{ribcage-symnames 371}# #{ribcage 1276}#))) (#{set-ribcage-marks! 379}# #{ribcage 1276}# (cons (car (#{syntax-object-wrap 311}# #{id 1277}#)) (#{ribcage-marks 373}# #{ribcage 1276}#))) (#{set-ribcage-labels! 381}# #{ribcage 1276}# (cons #{label 1278}# (#{ribcage-labels 375}# #{ribcage 1276}#)))))) (#{make-binding-wrap 396}# (lambda (#{ids 1283}# #{labels 1284}# #{w 1285}#) (if (null? #{ids 1283}#) #{w 1285}# (cons (car #{w 1285}#) (cons (begin (let ((#{labelvec 1292}# (list->vector #{labels 1284}#))) (begin (let ((#{n 1294}# (vector-length #{labelvec 1292}#))) (begin (let ((#{symnamevec 1297}# (make-vector #{n 1294}#)) (#{marksvec 1298}# (make-vector #{n 1294}#))) (begin (letrec* ((#{f 1302}# (lambda (#{ids 1303}# #{i 1304}#) (if (not (null? #{ids 1303}#)) (call-with-values (lambda () (#{id-sym-name&marks 348}# (car #{ids 1303}#) #{w 1285}#)) (lambda (#{symname 1305}# #{marks 1306}#) (begin (vector-set! #{symnamevec 1297}# #{i 1304}# #{symname 1305}#) (vector-set! #{marksvec 1298}# #{i 1304}# #{marks 1306}#) (#{f 1302}# (cdr #{ids 1303}#) (#{1+}# #{i 1304}#))))))))) (begin (#{f 1302}# #{ids 1283}# 0))) (#{make-ribcage 367}# #{symnamevec 1297}# #{marksvec 1298}# #{labelvec 1292}#)))))))) (cdr #{w 1285}#)))))) (#{smart-append 398}# (lambda (#{m1 1311}# #{m2 1312}#) (if (null? #{m2 1312}#) #{m1 1311}# (append #{m1 1311}# #{m2 1312}#)))) (#{join-wraps 400}# (lambda (#{w1 1315}# #{w2 1316}#) (begin (let ((#{m1 1321}# (car #{w1 1315}#)) (#{s1 1322}# (cdr #{w1 1315}#))) (if (null? #{m1 1321}#) (if (null? #{s1 1322}#) #{w2 1316}# (cons (car #{w2 1316}#) (#{smart-append 398}# #{s1 1322}# (cdr #{w2 1316}#)))) (cons (#{smart-append 398}# #{m1 1321}# (car #{w2 1316}#)) (#{smart-append 398}# #{s1 1322}# (cdr #{w2 1316}#)))))))) (#{join-marks 402}# (lambda (#{m1 1331}# #{m2 1332}#) (#{smart-append 398}# #{m1 1331}# #{m2 1332}#))) (#{same-marks? 404}# (lambda (#{x 1335}# #{y 1336}#) (begin (let ((#{t 1341}# (eq? #{x 1335}# #{y 1336}#))) (if #{t 1341}# #{t 1341}# (if (not (null? #{x 1335}#)) (if (not (null? #{y 1336}#)) (if (eq? (car #{x 1335}#) (car #{y 1336}#)) (#{same-marks? 404}# (cdr #{x 1335}#) (cdr #{y 1336}#)) #f) #f) #f)))))) (#{id-var-name 406}# (lambda (#{id 1347}# #{w 1348}#) (letrec* ((#{search 1354}# (lambda (#{sym 1370}# #{subst 1371}# #{marks 1372}#) (if (null? #{subst 1371}#) (values #f #{marks 1372}#) (begin (let ((#{fst 1377}# (car #{subst 1371}#))) (if (eq? #{fst 1377}# 'shift) (#{search 1354}# #{sym 1370}# (cdr #{subst 1371}#) (cdr #{marks 1372}#)) (begin (let ((#{symnames 1379}# (#{ribcage-symnames 371}# #{fst 1377}#))) (if (vector? #{symnames 1379}#) (#{search-vector-rib 1358}# #{sym 1370}# #{subst 1371}# #{marks 1372}# #{symnames 1379}# #{fst 1377}#) (#{search-list-rib 1356}# #{sym 1370}# #{subst 1371}# #{marks 1372}# #{symnames 1379}# #{fst 1377}#)))))))))) (#{search-list-rib 1356}# (lambda (#{sym 1380}# #{subst 1381}# #{marks 1382}# #{symnames 1383}# #{ribcage 1384}#) (letrec* ((#{f 1393}# (lambda (#{symnames 1394}# #{i 1395}#) (if (null? #{symnames 1394}#) (#{search 1354}# #{sym 1380}# (cdr #{subst 1381}#) #{marks 1382}#) (if (if (eq? (car #{symnames 1394}#) #{sym 1380}#) (#{same-marks? 404}# #{marks 1382}# (list-ref (#{ribcage-marks 373}# #{ribcage 1384}#) #{i 1395}#)) #f) (values (list-ref (#{ribcage-labels 375}# #{ribcage 1384}#) #{i 1395}#) #{marks 1382}#) (#{f 1393}# (cdr #{symnames 1394}#) (#{1+}# #{i 1395}#))))))) (begin (#{f 1393}# #{symnames 1383}# 0))))) (#{search-vector-rib 1358}# (lambda (#{sym 1404}# #{subst 1405}# #{marks 1406}# #{symnames 1407}# #{ribcage 1408}#) (begin (let ((#{n 1415}# (vector-length #{symnames 1407}#))) (letrec* ((#{f 1418}# (lambda (#{i 1419}#) (if (= #{i 1419}# #{n 1415}#) (#{search 1354}# #{sym 1404}# (cdr #{subst 1405}#) #{marks 1406}#) (if (if (eq? (vector-ref #{symnames 1407}# #{i 1419}#) #{sym 1404}#) (#{same-marks? 404}# #{marks 1406}# (vector-ref (#{ribcage-marks 373}# #{ribcage 1408}#) #{i 1419}#)) #f) (values (vector-ref (#{ribcage-labels 375}# #{ribcage 1408}#) #{i 1419}#) #{marks 1406}#) (#{f 1418}# (#{1+}# #{i 1419}#))))))) (begin (#{f 1418}# 0)))))))) (begin (if (symbol? #{id 1347}#) (begin (let ((#{t 1431}# (#{search 1354}# #{id 1347}# (cdr #{w 1348}#) (car #{w 1348}#)))) (if #{t 1431}# #{t 1431}# #{id 1347}#))) (if (#{syntax-object? 307}# #{id 1347}#) (begin (let ((#{id 1440}# (#{syntax-object-expression 309}# #{id 1347}#)) (#{w1 1441}# (#{syntax-object-wrap 311}# #{id 1347}#))) (begin (let ((#{marks 1443}# (#{join-marks 402}# (car #{w 1348}#) (car #{w1 1441}#)))) (call-with-values (lambda () (#{search 1354}# #{id 1440}# (cdr #{w 1348}#) #{marks 1443}#)) (lambda (#{new-id 1447}# #{marks 1448}#) (begin (let ((#{t 1453}# #{new-id 1447}#)) (if #{t 1453}# #{t 1453}# (begin (let ((#{t 1456}# (#{search 1354}# #{id 1440}# (cdr #{w1 1441}#) #{marks 1448}#))) (if #{t 1456}# #{t 1456}# #{id 1440}#)))))))))))) (syntax-violation 'id-var-name "invalid id" #{id 1347}#))))))) (#{free-id=? 408}# (lambda (#{i 1461}# #{j 1462}#) (if (eq? (begin (let ((#{x 1468}# #{i 1461}#)) (if (#{syntax-object? 307}# #{x 1468}#) (#{syntax-object-expression 309}# #{x 1468}#) #{x 1468}#))) (begin (let ((#{x 1471}# #{j 1462}#)) (if (#{syntax-object? 307}# #{x 1471}#) (#{syntax-object-expression 309}# #{x 1471}#) #{x 1471}#)))) (eq? (#{id-var-name 406}# #{i 1461}# '(())) (#{id-var-name 406}# #{j 1462}# '(()))) #f))) (#{bound-id=? 410}# (lambda (#{i 1475}# #{j 1476}#) (if (if (#{syntax-object? 307}# #{i 1475}#) (#{syntax-object? 307}# #{j 1476}#) #f) (if (eq? (#{syntax-object-expression 309}# #{i 1475}#) (#{syntax-object-expression 309}# #{j 1476}#)) (#{same-marks? 404}# (car (#{syntax-object-wrap 311}# #{i 1475}#)) (car (#{syntax-object-wrap 311}# #{j 1476}#))) #f) (eq? #{i 1475}# #{j 1476}#)))) (#{valid-bound-ids? 412}# (lambda (#{ids 1485}#) (if (letrec* ((#{all-ids? 1490}# (lambda (#{ids 1491}#) (begin (let ((#{t 1494}# (null? #{ids 1491}#))) (if #{t 1494}# #{t 1494}# (if (#{id? 344}# (car #{ids 1491}#)) (#{all-ids? 1490}# (cdr #{ids 1491}#)) #f))))))) (begin (#{all-ids? 1490}# #{ids 1485}#))) (#{distinct-bound-ids? 414}# #{ids 1485}#) #f))) (#{distinct-bound-ids? 414}# (lambda (#{ids 1499}#) (letrec* ((#{distinct? 1503}# (lambda (#{ids 1504}#) (begin (let ((#{t 1507}# (null? #{ids 1504}#))) (if #{t 1507}# #{t 1507}# (if (not (#{bound-id-member? 416}# (car #{ids 1504}#) (cdr #{ids 1504}#))) (#{distinct? 1503}# (cdr #{ids 1504}#)) #f))))))) (begin (#{distinct? 1503}# #{ids 1499}#))))) (#{bound-id-member? 416}# (lambda (#{x 1511}# #{list 1512}#) (if (not (null? #{list 1512}#)) (begin (let ((#{t 1519}# (#{bound-id=? 410}# #{x 1511}# (car #{list 1512}#)))) (if #{t 1519}# #{t 1519}# (#{bound-id-member? 416}# #{x 1511}# (cdr #{list 1512}#))))) #f))) (#{wrap 418}# (lambda (#{x 1521}# #{w 1522}# #{defmod 1523}#) (if (if (null? (car #{w 1522}#)) (null? (cdr #{w 1522}#)) #f) #{x 1521}# (if (#{syntax-object? 307}# #{x 1521}#) (#{make-syntax-object 305}# (#{syntax-object-expression 309}# #{x 1521}#) (#{join-wraps 400}# #{w 1522}# (#{syntax-object-wrap 311}# #{x 1521}#)) (#{syntax-object-module 313}# #{x 1521}#)) (if (null? #{x 1521}#) #{x 1521}# (#{make-syntax-object 305}# #{x 1521}# #{w 1522}# #{defmod 1523}#)))))) (#{source-wrap 420}# (lambda (#{x 1538}# #{w 1539}# #{s 1540}# #{defmod 1541}#) (#{wrap 418}# (#{decorate-source 260}# #{x 1538}# #{s 1540}#) #{w 1539}# #{defmod 1541}#))) (#{chi-sequence 422}# (lambda (#{body 1546}# #{r 1547}# #{w 1548}# #{s 1549}# #{mod 1550}#) (#{build-sequence 294}# #{s 1549}# (letrec* ((#{dobody 1561}# (lambda (#{body 1562}# #{r 1563}# #{w 1564}# #{mod 1565}#) (if (null? #{body 1562}#) '() (begin (let ((#{first 1567}# (#{chi 432}# (car #{body 1562}#) #{r 1563}# #{w 1564}# #{mod 1565}#))) (cons #{first 1567}# (#{dobody 1561}# (cdr #{body 1562}#) #{r 1563}# #{w 1564}# #{mod 1565}#)))))))) (begin (#{dobody 1561}# #{body 1546}# #{r 1547}# #{w 1548}# #{mod 1550}#)))))) (#{chi-top-sequence 424}# (lambda (#{body 1568}# #{r 1569}# #{w 1570}# #{s 1571}# #{m 1572}# #{esew 1573}# #{mod 1574}#) (letrec* ((#{scan 1583}# (lambda (#{body 1584}# #{r 1585}# #{w 1586}# #{s 1587}# #{m 1588}# #{esew 1589}# #{mod 1590}# #{exps 1591}#) (if (null? #{body 1584}#) #{exps 1591}# (call-with-values (lambda () (call-with-values (lambda () (begin (let ((#{e 1604}# (car #{body 1584}#))) (#{syntax-type 430}# #{e 1604}# #{r 1585}# #{w 1586}# (begin (let ((#{t 1607}# (#{source-annotation 322}# #{e 1604}#))) (if #{t 1607}# #{t 1607}# #{s 1587}#))) #f #{mod 1590}# #f)))) (lambda (#{type 1609}# #{value 1610}# #{e 1611}# #{w 1612}# #{s 1613}# #{mod 1614}#) (if (eqv? #{type 1609}# 'begin-form) (let ((#{tmp 1622}# #{e 1611}#)) (let ((#{tmp 1623}# ($sc-dispatch #{tmp 1622}# '(_)))) (if #{tmp 1623}# (@apply (lambda () #{exps 1591}#) #{tmp 1623}#) (let ((#{tmp 1624}# ($sc-dispatch #{tmp 1622}# '(_ any . each-any)))) (if #{tmp 1624}# (@apply (lambda (#{e1 1627}# #{e2 1628}#) (#{scan 1583}# (cons #{e1 1627}# #{e2 1628}#) #{r 1585}# #{w 1612}# #{s 1613}# #{m 1588}# #{esew 1589}# #{mod 1614}# #{exps 1591}#)) #{tmp 1624}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1622}#)))))) (if (eqv? #{type 1609}# 'local-syntax-form) (#{chi-local-syntax 442}# #{value 1610}# #{e 1611}# #{r 1585}# #{w 1612}# #{s 1613}# #{mod 1614}# (lambda (#{body 1631}# #{r 1632}# #{w 1633}# #{s 1634}# #{mod 1635}#) (#{scan 1583}# #{body 1631}# #{r 1632}# #{w 1633}# #{s 1634}# #{m 1588}# #{esew 1589}# #{mod 1635}# #{exps 1591}#))) (if (eqv? #{type 1609}# 'eval-when-form) (let ((#{tmp 1642}# #{e 1611}#)) (let ((#{tmp 1643}# ($sc-dispatch #{tmp 1642}# '(_ each-any any . each-any)))) (if #{tmp 1643}# (@apply (lambda (#{x 1647}# #{e1 1648}# #{e2 1649}#) (begin (let ((#{when-list 1652}# (#{chi-when-list 428}# #{e 1611}# #{x 1647}# #{w 1612}#)) (#{body 1653}# (cons #{e1 1648}# #{e2 1649}#))) (if (eq? #{m 1588}# 'e) (if (memq 'eval #{when-list 1652}#) (#{scan 1583}# #{body 1653}# #{r 1585}# #{w 1612}# #{s 1613}# (if (memq 'expand #{when-list 1652}#) 'c&e 'e) '(eval) #{mod 1614}# #{exps 1591}#) (begin (if (memq 'expand #{when-list 1652}#) (#{top-level-eval-hook 250}# (#{chi-top-sequence 424}# #{body 1653}# #{r 1585}# #{w 1612}# #{s 1613}# 'e '(eval) #{mod 1614}#) #{mod 1614}#)) (values #{exps 1591}#))) (if (memq 'load #{when-list 1652}#) (if (begin (let ((#{t 1662}# (memq 'compile #{when-list 1652}#))) (if #{t 1662}# #{t 1662}# (begin (let ((#{t 1665}# (memq 'expand #{when-list 1652}#))) (if #{t 1665}# #{t 1665}# (if (eq? #{m 1588}# 'c&e) (memq 'eval #{when-list 1652}#) #f))))))) (#{scan 1583}# #{body 1653}# #{r 1585}# #{w 1612}# #{s 1613}# 'c&e '(compile load) #{mod 1614}# #{exps 1591}#) (if (if (eq? #{m 1588}# 'c) #t (eq? #{m 1588}# 'c&e)) (#{scan 1583}# #{body 1653}# #{r 1585}# #{w 1612}# #{s 1613}# 'c '(load) #{mod 1614}# #{exps 1591}#) (values #{exps 1591}#))) (if (begin (let ((#{t 1673}# (memq 'compile #{when-list 1652}#))) (if #{t 1673}# #{t 1673}# (begin (let ((#{t 1676}# (memq 'expand #{when-list 1652}#))) (if #{t 1676}# #{t 1676}# (if (eq? #{m 1588}# 'c&e) (memq 'eval #{when-list 1652}#) #f))))))) (begin (#{top-level-eval-hook 250}# (#{chi-top-sequence 424}# #{body 1653}# #{r 1585}# #{w 1612}# #{s 1613}# 'e '(eval) #{mod 1614}#) #{mod 1614}#) (values #{exps 1591}#)) (values #{exps 1591}#))))))) #{tmp 1643}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1642}#)))) (if (eqv? #{type 1609}# 'define-syntax-form) (begin (let ((#{n 1684}# (#{id-var-name 406}# #{value 1610}# #{w 1612}#)) (#{r 1685}# (#{macros-only-env 336}# #{r 1585}#))) (if (eqv? #{m 1588}# 'c) (if (memq 'compile #{esew 1589}#) (begin (let ((#{e 1688}# (#{chi-install-global 426}# #{n 1684}# (#{chi 432}# #{e 1611}# #{r 1685}# #{w 1612}# #{mod 1614}#)))) (begin (#{top-level-eval-hook 250}# #{e 1688}# #{mod 1614}#) (if (memq 'load #{esew 1589}#) (values (cons #{e 1688}# #{exps 1591}#)) (values #{exps 1591}#))))) (if (memq 'load #{esew 1589}#) (values (cons (#{chi-install-global 426}# #{n 1684}# (#{chi 432}# #{e 1611}# #{r 1685}# #{w 1612}# #{mod 1614}#)) #{exps 1591}#)) (values #{exps 1591}#))) (if (eqv? #{m 1588}# 'c&e) (begin (let ((#{e 1691}# (#{chi-install-global 426}# #{n 1684}# (#{chi 432}# #{e 1611}# #{r 1685}# #{w 1612}# #{mod 1614}#)))) (begin (#{top-level-eval-hook 250}# #{e 1691}# #{mod 1614}#) (values (cons #{e 1691}# #{exps 1591}#))))) (begin (if (memq 'eval #{esew 1589}#) (#{top-level-eval-hook 250}# (#{chi-install-global 426}# #{n 1684}# (#{chi 432}# #{e 1611}# #{r 1685}# #{w 1612}# #{mod 1614}#)) #{mod 1614}#)) (values #{exps 1591}#)))))) (if (eqv? #{type 1609}# 'define-form) (begin (let ((#{n 1696}# (#{id-var-name 406}# #{value 1610}# #{w 1612}#))) (begin (let ((#{type 1698}# (car (#{lookup 338}# #{n 1696}# #{r 1585}# #{mod 1614}#)))) (if (if (eqv? #{type 1698}# 'global) #t (if (eqv? #{type 1698}# 'core) #t (if (eqv? #{type 1698}# 'macro) #t (eqv? #{type 1698}# 'module-ref)))) (begin (if (if (if (eq? #{m 1588}# 'c) #t (eq? #{m 1588}# 'c&e)) (if (not (module-local-variable (current-module) #{n 1696}#)) (current-module) #f) #f) (begin (let ((#{old 1705}# (module-variable (current-module) #{n 1696}#))) (if (if (variable? #{old 1705}#) (variable-bound? #{old 1705}#) #f) (module-define! (current-module) #{n 1696}# (variable-ref #{old 1705}#)) (module-add! (current-module) #{n 1696}# (make-undefined-variable)))))) (values (cons (if (eq? #{m 1588}# 'c&e) (begin (let ((#{x 1709}# (#{build-global-definition 282}# #{s 1613}# #{n 1696}# (#{chi 432}# #{e 1611}# #{r 1585}# #{w 1612}# #{mod 1614}#)))) (begin (#{top-level-eval-hook 250}# #{x 1709}# #{mod 1614}#) #{x 1709}#))) (lambda () (#{build-global-definition 282}# #{s 1613}# #{n 1696}# (#{chi 432}# #{e 1611}# #{r 1585}# #{w 1612}# #{mod 1614}#)))) #{exps 1591}#))) (if (eqv? #{type 1698}# 'displaced-lexical) (syntax-violation #f "identifier out of context" #{e 1611}# (#{wrap 418}# #{value 1610}# #{w 1612}# #{mod 1614}#)) (syntax-violation #f "cannot define keyword at top level" #{e 1611}# (#{wrap 418}# #{value 1610}# #{w 1612}# #{mod 1614}#)))))))) (values (cons (if (eq? #{m 1588}# 'c&e) (begin (let ((#{x 1714}# (#{chi-expr 434}# #{type 1609}# #{value 1610}# #{e 1611}# #{r 1585}# #{w 1612}# #{s 1613}# #{mod 1614}#))) (begin (#{top-level-eval-hook 250}# #{x 1714}# #{mod 1614}#) #{x 1714}#))) (lambda () (#{chi-expr 434}# #{type 1609}# #{value 1610}# #{e 1611}# #{r 1585}# #{w 1612}# #{s 1613}# #{mod 1614}#))) #{exps 1591}#)))))))))) (lambda (#{exps 1715}#) (#{scan 1583}# (cdr #{body 1584}#) #{r 1585}# #{w 1586}# #{s 1587}# #{m 1588}# #{esew 1589}# #{mod 1590}# #{exps 1715}#))))))) (begin (call-with-values (lambda () (#{scan 1583}# #{body 1568}# #{r 1569}# #{w 1570}# #{s 1571}# #{m 1572}# #{esew 1573}# #{mod 1574}# '())) (lambda (#{exps 1717}#) (if (null? #{exps 1717}#) (#{build-void 264}# #{s 1571}#) (#{build-sequence 294}# #{s 1571}# (letrec* ((#{lp 1722}# (lambda (#{in 1723}# #{out 1724}#) (if (null? #{in 1723}#) #{out 1724}# (begin (let ((#{e 1726}# (car #{in 1723}#))) (#{lp 1722}# (cdr #{in 1723}#) (cons (if (procedure? #{e 1726}#) (#{e 1726}#) #{e 1726}#) #{out 1724}#)))))))) (begin (#{lp 1722}# #{exps 1717}# '()))))))))))) (#{chi-install-global 426}# (lambda (#{name 1727}# #{e 1728}#) (#{build-global-definition 282}# #f #{name 1727}# (#{build-application 266}# #f (#{build-primref 290}# #f 'make-syntax-transformer) (list (#{build-data 292}# #f #{name 1727}#) (#{build-data 292}# #f 'macro) #{e 1728}#))))) (#{chi-when-list 428}# (lambda (#{e 1736}# #{when-list 1737}# #{w 1738}#) (letrec* ((#{f 1745}# (lambda (#{when-list 1746}# #{situations 1747}#) (if (null? #{when-list 1746}#) #{situations 1747}# (#{f 1745}# (cdr #{when-list 1746}#) (cons (begin (let ((#{x 1749}# (car #{when-list 1746}#))) (if (#{free-id=? 408}# #{x 1749}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1748")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1742" "i1743" "i1744")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1739" "i1740" "i1741")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'compile (if (#{free-id=? 408}# #{x 1749}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1748")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1742" "i1743" "i1744")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1739" "i1740" "i1741")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'load (if (#{free-id=? 408}# #{x 1749}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1748")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1742" "i1743" "i1744")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1739" "i1740" "i1741")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'eval (if (#{free-id=? 408}# #{x 1749}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1748")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1742" "i1743" "i1744")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1739" "i1740" "i1741")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e 1736}# (#{wrap 418}# #{x 1749}# #{w 1738}# #f)))))))) #{situations 1747}#)))))) (begin (#{f 1745}# #{when-list 1737}# '()))))) (#{syntax-type 430}# (lambda (#{e 1759}# #{r 1760}# #{w 1761}# #{s 1762}# #{rib 1763}# #{mod 1764}# #{for-car? 1765}#) (if (symbol? #{e 1759}#) (begin (let ((#{n 1777}# (#{id-var-name 406}# #{e 1759}# #{w 1761}#))) (begin (let ((#{b 1779}# (#{lookup 338}# #{n 1777}# #{r 1760}# #{mod 1764}#))) (begin (let ((#{type 1781}# (car #{b 1779}#))) (if (eqv? #{type 1781}# 'lexical) (values #{type 1781}# (cdr #{b 1779}#) #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{type 1781}# 'global) (values #{type 1781}# #{n 1777}# #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{type 1781}# 'macro) (if #{for-car? 1765}# (values #{type 1781}# (cdr #{b 1779}#) #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (#{syntax-type 430}# (#{chi-macro 438}# (cdr #{b 1779}#) #{e 1759}# #{r 1760}# #{w 1761}# #{s 1762}# #{rib 1763}# #{mod 1764}#) #{r 1760}# '(()) #{s 1762}# #{rib 1763}# #{mod 1764}# #f)) (values #{type 1781}# (cdr #{b 1779}#) #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#)))))))))) (if (pair? #{e 1759}#) (begin (let ((#{first 1795}# (car #{e 1759}#))) (call-with-values (lambda () (#{syntax-type 430}# #{first 1795}# #{r 1760}# #{w 1761}# #{s 1762}# #{rib 1763}# #{mod 1764}# #t)) (lambda (#{ftype 1796}# #{fval 1797}# #{fe 1798}# #{fw 1799}# #{fs 1800}# #{fmod 1801}#) (if (eqv? #{ftype 1796}# 'lexical) (values 'lexical-call #{fval 1797}# #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{ftype 1796}# 'global) (values 'global-call (#{make-syntax-object 305}# #{fval 1797}# #{w 1761}# #{fmod 1801}#) #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{ftype 1796}# 'macro) (#{syntax-type 430}# (#{chi-macro 438}# #{fval 1797}# #{e 1759}# #{r 1760}# #{w 1761}# #{s 1762}# #{rib 1763}# #{mod 1764}#) #{r 1760}# '(()) #{s 1762}# #{rib 1763}# #{mod 1764}# #{for-car? 1765}#) (if (eqv? #{ftype 1796}# 'module-ref) (call-with-values (lambda () (#{fval 1797}# #{e 1759}# #{r 1760}# #{w 1761}#)) (lambda (#{e 1813}# #{r 1814}# #{w 1815}# #{s 1816}# #{mod 1817}#) (#{syntax-type 430}# #{e 1813}# #{r 1814}# #{w 1815}# #{s 1816}# #{rib 1763}# #{mod 1817}# #{for-car? 1765}#))) (if (eqv? #{ftype 1796}# 'core) (values 'core-form #{fval 1797}# #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{ftype 1796}# 'local-syntax) (values 'local-syntax-form #{fval 1797}# #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{ftype 1796}# 'begin) (values 'begin-form #f #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{ftype 1796}# 'eval-when) (values 'eval-when-form #f #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (if (eqv? #{ftype 1796}# 'define) (let ((#{tmp 1828}# #{e 1759}#)) (let ((#{tmp 1829}# ($sc-dispatch #{tmp 1828}# '(_ any any)))) (if (if #{tmp 1829}# (@apply (lambda (#{name 1832}# #{val 1833}#) (#{id? 344}# #{name 1832}#)) #{tmp 1829}#) #f) (@apply (lambda (#{name 1836}# #{val 1837}#) (values 'define-form #{name 1836}# #{val 1837}# #{w 1761}# #{s 1762}# #{mod 1764}#)) #{tmp 1829}#) (let ((#{tmp 1838}# ($sc-dispatch #{tmp 1828}# '(_ (any . any) any . each-any)))) (if (if #{tmp 1838}# (@apply (lambda (#{name 1843}# #{args 1844}# #{e1 1845}# #{e2 1846}#) (if (#{id? 344}# #{name 1843}#) (#{valid-bound-ids? 412}# (#{lambda-var-list 462}# #{args 1844}#)) #f)) #{tmp 1838}#) #f) (@apply (lambda (#{name 1853}# #{args 1854}# #{e1 1855}# #{e2 1856}#) (values 'define-form (#{wrap 418}# #{name 1853}# #{w 1761}# #{mod 1764}#) (#{decorate-source 260}# (cons '#(syntax-object lambda ((top) #(ribcage #(name args e1 e2) #((top) (top) (top) (top)) #("i1849" "i1850" "i1851" "i1852")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1802" "i1803" "i1804" "i1805" "i1806" "i1807")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1794")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1766" "i1767" "i1768" "i1769" "i1770" "i1771" "i1772")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) (#{wrap 418}# (cons #{args 1854}# (cons #{e1 1855}# #{e2 1856}#)) #{w 1761}# #{mod 1764}#)) #{s 1762}#) '(()) #{s 1762}# #{mod 1764}#)) #{tmp 1838}#) (let ((#{tmp 1859}# ($sc-dispatch #{tmp 1828}# '(_ any)))) (if (if #{tmp 1859}# (@apply (lambda (#{name 1861}#) (#{id? 344}# #{name 1861}#)) #{tmp 1859}#) #f) (@apply (lambda (#{name 1863}#) (values 'define-form (#{wrap 418}# #{name 1863}# #{w 1761}# #{mod 1764}#) '(#(syntax-object if ((top) #(ribcage #(name) #((top)) #("i1862")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1802" "i1803" "i1804" "i1805" "i1806" "i1807")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1794")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1766" "i1767" "i1768" "i1769" "i1770" "i1771" "i1772")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1862")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1802" "i1803" "i1804" "i1805" "i1806" "i1807")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1794")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1766" "i1767" "i1768" "i1769" "i1770" "i1771" "i1772")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1862")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1802" "i1803" "i1804" "i1805" "i1806" "i1807")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1794")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1766" "i1767" "i1768" "i1769" "i1770" "i1771" "i1772")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) '(()) #{s 1762}# #{mod 1764}#)) #{tmp 1859}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1828}#)))))))) (if (eqv? #{ftype 1796}# 'define-syntax) (let ((#{tmp 1866}# #{e 1759}#)) (let ((#{tmp 1867}# ($sc-dispatch #{tmp 1866}# '(_ any any)))) (if (if #{tmp 1867}# (@apply (lambda (#{name 1870}# #{val 1871}#) (#{id? 344}# #{name 1870}#)) #{tmp 1867}#) #f) (@apply (lambda (#{name 1874}# #{val 1875}#) (values 'define-syntax-form #{name 1874}# #{val 1875}# #{w 1761}# #{s 1762}# #{mod 1764}#)) #{tmp 1867}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1866}#)))) (values 'call #f #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#))))))))))))))) (if (#{syntax-object? 307}# #{e 1759}#) (#{syntax-type 430}# (#{syntax-object-expression 309}# #{e 1759}#) #{r 1760}# (#{join-wraps 400}# #{w 1761}# (#{syntax-object-wrap 311}# #{e 1759}#)) (begin (let ((#{t 1881}# (#{source-annotation 322}# #{e 1759}#))) (if #{t 1881}# #{t 1881}# #{s 1762}#))) #{rib 1763}# (begin (let ((#{t 1885}# (#{syntax-object-module 313}# #{e 1759}#))) (if #{t 1885}# #{t 1885}# #{mod 1764}#))) #{for-car? 1765}#) (if (self-evaluating? #{e 1759}#) (values 'constant #f #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#) (values 'other #f #{e 1759}# #{w 1761}# #{s 1762}# #{mod 1764}#))))))) (#{chi 432}# (lambda (#{e 1890}# #{r 1891}# #{w 1892}# #{mod 1893}#) (call-with-values (lambda () (#{syntax-type 430}# #{e 1890}# #{r 1891}# #{w 1892}# (#{source-annotation 322}# #{e 1890}#) #f #{mod 1893}# #f)) (lambda (#{type 1898}# #{value 1899}# #{e 1900}# #{w 1901}# #{s 1902}# #{mod 1903}#) (#{chi-expr 434}# #{type 1898}# #{value 1899}# #{e 1900}# #{r 1891}# #{w 1901}# #{s 1902}# #{mod 1903}#))))) (#{chi-expr 434}# (lambda (#{type 1910}# #{value 1911}# #{e 1912}# #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}#) (if (eqv? #{type 1910}# 'lexical) (#{build-lexical-reference 272}# 'value #{s 1915}# #{e 1912}# #{value 1911}#) (if (if (eqv? #{type 1910}# 'core) #t (eqv? #{type 1910}# 'core-form)) (#{value 1911}# #{e 1912}# #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}#) (if (eqv? #{type 1910}# 'module-ref) (call-with-values (lambda () (#{value 1911}# #{e 1912}# #{r 1913}# #{w 1914}#)) (lambda (#{e 1927}# #{r 1928}# #{w 1929}# #{s 1930}# #{mod 1931}#) (#{chi 432}# #{e 1927}# #{r 1928}# #{w 1929}# #{mod 1931}#))) (if (eqv? #{type 1910}# 'lexical-call) (#{chi-application 436}# (begin (let ((#{id 1939}# (car #{e 1912}#))) (#{build-lexical-reference 272}# 'fun (#{source-annotation 322}# #{id 1939}#) (if (#{syntax-object? 307}# #{id 1939}#) (syntax->datum #{id 1939}#) #{id 1939}#) #{value 1911}#))) #{e 1912}# #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}#) (if (eqv? #{type 1910}# 'global-call) (#{chi-application 436}# (#{build-global-reference 278}# (#{source-annotation 322}# (car #{e 1912}#)) (if (#{syntax-object? 307}# #{value 1911}#) (#{syntax-object-expression 309}# #{value 1911}#) #{value 1911}#) (if (#{syntax-object? 307}# #{value 1911}#) (#{syntax-object-module 313}# #{value 1911}#) #{mod 1916}#)) #{e 1912}# #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}#) (if (eqv? #{type 1910}# 'constant) (#{build-data 292}# #{s 1915}# (#{strip 458}# (#{source-wrap 420}# #{e 1912}# #{w 1914}# #{s 1915}# #{mod 1916}#) '(()))) (if (eqv? #{type 1910}# 'global) (#{build-global-reference 278}# #{s 1915}# #{value 1911}# #{mod 1916}#) (if (eqv? #{type 1910}# 'call) (#{chi-application 436}# (#{chi 432}# (car #{e 1912}#) #{r 1913}# #{w 1914}# #{mod 1916}#) #{e 1912}# #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}#) (if (eqv? #{type 1910}# 'begin-form) (let ((#{tmp 1946}# #{e 1912}#)) (let ((#{tmp 1947}# ($sc-dispatch #{tmp 1946}# '(_ any . each-any)))) (if #{tmp 1947}# (@apply (lambda (#{e1 1950}# #{e2 1951}#) (#{chi-sequence 422}# (cons #{e1 1950}# #{e2 1951}#) #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}#)) #{tmp 1947}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1946}#)))) (if (eqv? #{type 1910}# 'local-syntax-form) (#{chi-local-syntax 442}# #{value 1911}# #{e 1912}# #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}# #{chi-sequence 422}#) (if (eqv? #{type 1910}# 'eval-when-form) (let ((#{tmp 1955}# #{e 1912}#)) (let ((#{tmp 1956}# ($sc-dispatch #{tmp 1955}# '(_ each-any any . each-any)))) (if #{tmp 1956}# (@apply (lambda (#{x 1960}# #{e1 1961}# #{e2 1962}#) (begin (let ((#{when-list 1964}# (#{chi-when-list 428}# #{e 1912}# #{x 1960}# #{w 1914}#))) (if (memq 'eval #{when-list 1964}#) (#{chi-sequence 422}# (cons #{e1 1961}# #{e2 1962}#) #{r 1913}# #{w 1914}# #{s 1915}# #{mod 1916}#) (#{chi-void 446}#))))) #{tmp 1956}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1955}#)))) (if (if (eqv? #{type 1910}# 'define-form) #t (eqv? #{type 1910}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" #{e 1912}# (#{wrap 418}# #{value 1911}# #{w 1914}# #{mod 1916}#)) (if (eqv? #{type 1910}# 'syntax) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap 420}# #{e 1912}# #{w 1914}# #{s 1915}# #{mod 1916}#)) (if (eqv? #{type 1910}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap 420}# #{e 1912}# #{w 1914}# #{s 1915}# #{mod 1916}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap 420}# #{e 1912}# #{w 1914}# #{s 1915}# #{mod 1916}#)))))))))))))))))) (#{chi-application 436}# (lambda (#{x 1971}# #{e 1972}# #{r 1973}# #{w 1974}# #{s 1975}# #{mod 1976}#) (let ((#{tmp 1983}# #{e 1972}#)) (let ((#{tmp 1984}# ($sc-dispatch #{tmp 1983}# '(any . each-any)))) (if #{tmp 1984}# (@apply (lambda (#{e0 1987}# #{e1 1988}#) (#{build-application 266}# #{s 1975}# #{x 1971}# (map (lambda (#{e 1989}#) (#{chi 432}# #{e 1989}# #{r 1973}# #{w 1974}# #{mod 1976}#)) #{e1 1988}#))) #{tmp 1984}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1983}#)))))) (#{chi-macro 438}# (lambda (#{p 1992}# #{e 1993}# #{r 1994}# #{w 1995}# #{s 1996}# #{rib 1997}# #{mod 1998}#) (letrec* ((#{rebuild-macro-output 2007}# (lambda (#{x 2008}# #{m 2009}#) (if (pair? #{x 2008}#) (#{decorate-source 260}# (cons (#{rebuild-macro-output 2007}# (car #{x 2008}#) #{m 2009}#) (#{rebuild-macro-output 2007}# (cdr #{x 2008}#) #{m 2009}#)) #{s 1996}#) (if (#{syntax-object? 307}# #{x 2008}#) (begin (let ((#{w 2017}# (#{syntax-object-wrap 311}# #{x 2008}#))) (begin (let ((#{ms 2020}# (car #{w 2017}#)) (#{s 2021}# (cdr #{w 2017}#))) (if (if (pair? #{ms 2020}#) (eq? (car #{ms 2020}#) #f) #f) (#{make-syntax-object 305}# (#{syntax-object-expression 309}# #{x 2008}#) (cons (cdr #{ms 2020}#) (if #{rib 1997}# (cons #{rib 1997}# (cdr #{s 2021}#)) (cdr #{s 2021}#))) (#{syntax-object-module 313}# #{x 2008}#)) (#{make-syntax-object 305}# (#{decorate-source 260}# (#{syntax-object-expression 309}# #{x 2008}#) #{s 2021}#) (cons (cons #{m 2009}# #{ms 2020}#) (if #{rib 1997}# (cons #{rib 1997}# (cons 'shift #{s 2021}#)) (cons 'shift #{s 2021}#))) (#{syntax-object-module 313}# #{x 2008}#))))))) (if (vector? #{x 2008}#) (begin (let ((#{n 2033}# (vector-length #{x 2008}#))) (begin (let ((#{v 2035}# (#{decorate-source 260}# (make-vector #{n 2033}#) #{x 2008}#))) (letrec* ((#{loop 2038}# (lambda (#{i 2039}#) (if (= #{i 2039}# #{n 2033}#) (begin (if #f #f) #{v 2035}#) (begin (vector-set! #{v 2035}# #{i 2039}# (#{rebuild-macro-output 2007}# (vector-ref #{x 2008}# #{i 2039}#) #{m 2009}#)) (#{loop 2038}# (#{1+}# #{i 2039}#))))))) (begin (#{loop 2038}# 0))))))) (if (symbol? #{x 2008}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap 420}# #{e 1993}# #{w 1995}# (cdr #{w 1995}#) #{mod 1998}#) #{x 2008}#) (#{decorate-source 260}# #{x 2008}# #{s 1996}#)))))))) (begin (#{rebuild-macro-output 2007}# (#{p 1992}# (#{source-wrap 420}# #{e 1993}# (#{anti-mark 388}# #{w 1995}#) #{s 1996}# #{mod 1998}#)) (gensym "m")))))) (#{chi-body 440}# (lambda (#{body 2049}# #{outer-form 2050}# #{r 2051}# #{w 2052}# #{mod 2053}#) (begin (let ((#{r 2061}# (cons '("placeholder" placeholder) #{r 2051}#))) (begin (let ((#{ribcage 2063}# (#{make-ribcage 367}# '() '() '()))) (begin (let ((#{w 2066}# (cons (car #{w 2052}#) (cons #{ribcage 2063}# (cdr #{w 2052}#))))) (letrec* ((#{parse 2078}# (lambda (#{body 2079}# #{ids 2080}# #{labels 2081}# #{var-ids 2082}# #{vars 2083}# #{vals 2084}# #{bindings 2085}#) (if (null? #{body 2079}#) (syntax-violation #f "no expressions in body" #{outer-form 2050}#) (begin (let ((#{e 2090}# (cdr (car #{body 2079}#))) (#{er 2091}# (car (car #{body 2079}#)))) (call-with-values (lambda () (#{syntax-type 430}# #{e 2090}# #{er 2091}# '(()) (#{source-annotation 322}# #{er 2091}#) #{ribcage 2063}# #{mod 2053}# #f)) (lambda (#{type 2093}# #{value 2094}# #{e 2095}# #{w 2096}# #{s 2097}# #{mod 2098}#) (if (eqv? #{type 2093}# 'define-form) (begin (let ((#{id 2108}# (#{wrap 418}# #{value 2094}# #{w 2096}# #{mod 2098}#)) (#{label 2109}# (#{gen-label 362}#))) (begin (let ((#{var 2111}# (#{gen-var 460}# #{id 2108}#))) (begin (#{extend-ribcage! 394}# #{ribcage 2063}# #{id 2108}# #{label 2109}#) (#{parse 2078}# (cdr #{body 2079}#) (cons #{id 2108}# #{ids 2080}#) (cons #{label 2109}# #{labels 2081}#) (cons #{id 2108}# #{var-ids 2082}#) (cons #{var 2111}# #{vars 2083}#) (cons (cons #{er 2091}# (#{wrap 418}# #{e 2095}# #{w 2096}# #{mod 2098}#)) #{vals 2084}#) (cons (cons 'lexical #{var 2111}#) #{bindings 2085}#))))))) (if (eqv? #{type 2093}# 'define-syntax-form) (begin (let ((#{id 2116}# (#{wrap 418}# #{value 2094}# #{w 2096}# #{mod 2098}#)) (#{label 2117}# (#{gen-label 362}#))) (begin (#{extend-ribcage! 394}# #{ribcage 2063}# #{id 2116}# #{label 2117}#) (#{parse 2078}# (cdr #{body 2079}#) (cons #{id 2116}# #{ids 2080}#) (cons #{label 2117}# #{labels 2081}#) #{var-ids 2082}# #{vars 2083}# #{vals 2084}# (cons (cons 'macro (cons #{er 2091}# (#{wrap 418}# #{e 2095}# #{w 2096}# #{mod 2098}#))) #{bindings 2085}#))))) (if (eqv? #{type 2093}# 'begin-form) (let ((#{tmp 2120}# #{e 2095}#)) (let ((#{tmp 2121}# ($sc-dispatch #{tmp 2120}# '(_ . each-any)))) (if #{tmp 2121}# (@apply (lambda (#{e1 2123}#) (#{parse 2078}# (letrec* ((#{f 2126}# (lambda (#{forms 2127}#) (if (null? #{forms 2127}#) (cdr #{body 2079}#) (cons (cons #{er 2091}# (#{wrap 418}# (car #{forms 2127}#) #{w 2096}# #{mod 2098}#)) (#{f 2126}# (cdr #{forms 2127}#))))))) (begin (#{f 2126}# #{e1 2123}#))) #{ids 2080}# #{labels 2081}# #{var-ids 2082}# #{vars 2083}# #{vals 2084}# #{bindings 2085}#)) #{tmp 2121}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2120}#)))) (if (eqv? #{type 2093}# 'local-syntax-form) (#{chi-local-syntax 442}# #{value 2094}# #{e 2095}# #{er 2091}# #{w 2096}# #{s 2097}# #{mod 2098}# (lambda (#{forms 2130}# #{er 2131}# #{w 2132}# #{s 2133}# #{mod 2134}#) (#{parse 2078}# (letrec* ((#{f 2142}# (lambda (#{forms 2143}#) (if (null? #{forms 2143}#) (cdr #{body 2079}#) (cons (cons #{er 2131}# (#{wrap 418}# (car #{forms 2143}#) #{w 2132}# #{mod 2134}#)) (#{f 2142}# (cdr #{forms 2143}#))))))) (begin (#{f 2142}# #{forms 2130}#))) #{ids 2080}# #{labels 2081}# #{var-ids 2082}# #{vars 2083}# #{vals 2084}# #{bindings 2085}#))) (if (null? #{ids 2080}#) (#{build-sequence 294}# #f (map (lambda (#{x 2146}#) (#{chi 432}# (cdr #{x 2146}#) (car #{x 2146}#) '(()) #{mod 2098}#)) (cons (cons #{er 2091}# (#{source-wrap 420}# #{e 2095}# #{w 2096}# #{s 2097}# #{mod 2098}#)) (cdr #{body 2079}#)))) (begin (if (not (#{valid-bound-ids? 412}# #{ids 2080}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form 2050}#)) (letrec* ((#{loop 2153}# (lambda (#{bs 2154}# #{er-cache 2155}# #{r-cache 2156}#) (if (not (null? #{bs 2154}#)) (begin (let ((#{b 2159}# (car #{bs 2154}#))) (if (eq? (car #{b 2159}#) 'macro) (begin (let ((#{er 2162}# (car (cdr #{b 2159}#)))) (begin (let ((#{r-cache 2164}# (if (eq? #{er 2162}# #{er-cache 2155}#) #{r-cache 2156}# (#{macros-only-env 336}# #{er 2162}#)))) (begin (set-cdr! #{b 2159}# (#{eval-local-transformer 444}# (#{chi 432}# (cdr (cdr #{b 2159}#)) #{r-cache 2164}# '(()) #{mod 2098}#) #{mod 2098}#)) (#{loop 2153}# (cdr #{bs 2154}#) #{er 2162}# #{r-cache 2164}#)))))) (#{loop 2153}# (cdr #{bs 2154}#) #{er-cache 2155}# #{r-cache 2156}#)))))))) (begin (#{loop 2153}# #{bindings 2085}# #f #f))) (set-cdr! #{r 2061}# (#{extend-env 332}# #{labels 2081}# #{bindings 2085}# (cdr #{r 2061}#))) (#{build-letrec 300}# #f #t (reverse (map syntax->datum #{var-ids 2082}#)) (reverse #{vars 2083}#) (map (lambda (#{x 2167}#) (#{chi 432}# (cdr #{x 2167}#) (car #{x 2167}#) '(()) #{mod 2098}#)) (reverse #{vals 2084}#)) (#{build-sequence 294}# #f (map (lambda (#{x 2171}#) (#{chi 432}# (cdr #{x 2171}#) (car #{x 2171}#) '(()) #{mod 2098}#)) (cons (cons #{er 2091}# (#{source-wrap 420}# #{e 2095}# #{w 2096}# #{s 2097}# #{mod 2098}#)) (cdr #{body 2079}#))))))))))))))))))) (begin (#{parse 2078}# (map (lambda (#{x 2086}#) (cons #{r 2061}# (#{wrap 418}# #{x 2086}# #{w 2066}# #{mod 2053}#))) #{body 2049}#) '() '() '() '() '() '()))))))))))) (#{chi-local-syntax 442}# (lambda (#{rec? 2174}# #{e 2175}# #{r 2176}# #{w 2177}# #{s 2178}# #{mod 2179}# #{k 2180}#) (let ((#{tmp 2188}# #{e 2175}#)) (let ((#{tmp 2189}# ($sc-dispatch #{tmp 2188}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 2189}# (@apply (lambda (#{id 2194}# #{val 2195}# #{e1 2196}# #{e2 2197}#) (begin (let ((#{ids 2199}# #{id 2194}#)) (if (not (#{valid-bound-ids? 412}# #{ids 2199}#)) (syntax-violation #f "duplicate bound keyword" #{e 2175}#) (begin (let ((#{labels 2202}# (#{gen-labels 364}# #{ids 2199}#))) (begin (let ((#{new-w 2204}# (#{make-binding-wrap 396}# #{ids 2199}# #{labels 2202}# #{w 2177}#))) (#{k 2180}# (cons #{e1 2196}# #{e2 2197}#) (#{extend-env 332}# #{labels 2202}# (begin (let ((#{w 2208}# (if #{rec? 2174}# #{new-w 2204}# #{w 2177}#)) (#{trans-r 2209}# (#{macros-only-env 336}# #{r 2176}#))) (map (lambda (#{x 2210}#) (cons 'macro (#{eval-local-transformer 444}# (#{chi 432}# #{x 2210}# #{trans-r 2209}# #{w 2208}# #{mod 2179}#) #{mod 2179}#))) #{val 2195}#))) #{r 2176}#) #{new-w 2204}# #{s 2178}# #{mod 2179}#))))))))) #{tmp 2189}#) (let ((#{_ 2215}# #{tmp 2188}#)) (syntax-violation #f "bad local syntax definition" (#{source-wrap 420}# #{e 2175}# #{w 2177}# #{s 2178}# #{mod 2179}#)))))))) (#{eval-local-transformer 444}# (lambda (#{expanded 2216}# #{mod 2217}#) (begin (let ((#{p 2221}# (#{local-eval-hook 252}# #{expanded 2216}# #{mod 2217}#))) (if (procedure? #{p 2221}#) #{p 2221}# (syntax-violation #f "nonprocedure transformer" #{p 2221}#)))))) (#{chi-void 446}# (lambda () (#{build-void 264}# #f))) (#{ellipsis? 448}# (lambda (#{x 2223}#) (if (#{nonsymbol-id? 342}# #{x 2223}#) (#{free-id=? 408}# #{x 2223}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i2224")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) #f))) (#{lambda-formals 450}# (lambda (#{orig-args 2227}#) (letrec* ((#{req 2230}# (lambda (#{args 2233}# #{rreq 2234}#) (let ((#{tmp 2237}# #{args 2233}#)) (let ((#{tmp 2238}# ($sc-dispatch #{tmp 2237}# '()))) (if #{tmp 2238}# (@apply (lambda () (#{check 2232}# (reverse #{rreq 2234}#) #f)) #{tmp 2238}#) (let ((#{tmp 2239}# ($sc-dispatch #{tmp 2237}# '(any . any)))) (if (if #{tmp 2239}# (@apply (lambda (#{a 2242}# #{b 2243}#) (#{id? 344}# #{a 2242}#)) #{tmp 2239}#) #f) (@apply (lambda (#{a 2246}# #{b 2247}#) (#{req 2230}# #{b 2247}# (cons #{a 2246}# #{rreq 2234}#))) #{tmp 2239}#) (let ((#{tmp 2248}# (list #{tmp 2237}#))) (if (if #{tmp 2248}# (@apply (lambda (#{r 2250}#) (#{id? 344}# #{r 2250}#)) #{tmp 2248}#) #f) (@apply (lambda (#{r 2252}#) (#{check 2232}# (reverse #{rreq 2234}#) #{r 2252}#)) #{tmp 2248}#) (let ((#{else 2254}# #{tmp 2237}#)) (syntax-violation 'lambda "invalid argument list" #{orig-args 2227}# #{args 2233}#))))))))))) (#{check 2232}# (lambda (#{req 2255}# #{rest 2256}#) (if (#{distinct-bound-ids? 414}# (if #{rest 2256}# (cons #{rest 2256}# #{req 2255}#) #{req 2255}#)) (values #{req 2255}# #f #{rest 2256}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args 2227}#))))) (begin (#{req 2230}# #{orig-args 2227}# '()))))) (#{chi-simple-lambda 452}# (lambda (#{e 2262}# #{r 2263}# #{w 2264}# #{s 2265}# #{mod 2266}# #{req 2267}# #{rest 2268}# #{meta 2269}# #{body 2270}#) (begin (let ((#{ids 2282}# (if #{rest 2268}# (append #{req 2267}# (list #{rest 2268}#)) #{req 2267}#))) (begin (let ((#{vars 2284}# (map #{gen-var 460}# #{ids 2282}#))) (begin (let ((#{labels 2286}# (#{gen-labels 364}# #{ids 2282}#))) (#{build-simple-lambda 284}# #{s 2265}# (map syntax->datum #{req 2267}#) (if #{rest 2268}# (syntax->datum #{rest 2268}#) #f) #{vars 2284}# #{meta 2269}# (#{chi-body 440}# #{body 2270}# (#{source-wrap 420}# #{e 2262}# #{w 2264}# #{s 2265}# #{mod 2266}#) (#{extend-var-env 334}# #{labels 2286}# #{vars 2284}# #{r 2263}#) (#{make-binding-wrap 396}# #{ids 2282}# #{labels 2286}# #{w 2264}#) #{mod 2266}#)))))))))) (#{lambda*-formals 454}# (lambda (#{orig-args 2289}#) (letrec* ((#{req 2292}# (lambda (#{args 2301}# #{rreq 2302}#) (let ((#{tmp 2305}# #{args 2301}#)) (let ((#{tmp 2306}# ($sc-dispatch #{tmp 2305}# '()))) (if #{tmp 2306}# (@apply (lambda () (#{check 2300}# (reverse #{rreq 2302}#) '() #f '())) #{tmp 2306}#) (let ((#{tmp 2307}# ($sc-dispatch #{tmp 2305}# '(any . any)))) (if (if #{tmp 2307}# (@apply (lambda (#{a 2310}# #{b 2311}#) (#{id? 344}# #{a 2310}#)) #{tmp 2307}#) #f) (@apply (lambda (#{a 2314}# #{b 2315}#) (#{req 2292}# #{b 2315}# (cons #{a 2314}# #{rreq 2302}#))) #{tmp 2307}#) (let ((#{tmp 2316}# ($sc-dispatch #{tmp 2305}# '(any . any)))) (if (if #{tmp 2316}# (@apply (lambda (#{a 2319}# #{b 2320}#) (eq? (syntax->datum #{a 2319}#) #:optional)) #{tmp 2316}#) #f) (@apply (lambda (#{a 2323}# #{b 2324}#) (#{opt 2294}# #{b 2324}# (reverse #{rreq 2302}#) '())) #{tmp 2316}#) (let ((#{tmp 2325}# ($sc-dispatch #{tmp 2305}# '(any . any)))) (if (if #{tmp 2325}# (@apply (lambda (#{a 2328}# #{b 2329}#) (eq? (syntax->datum #{a 2328}#) #:key)) #{tmp 2325}#) #f) (@apply (lambda (#{a 2332}# #{b 2333}#) (#{key 2296}# #{b 2333}# (reverse #{rreq 2302}#) '() '())) #{tmp 2325}#) (let ((#{tmp 2334}# ($sc-dispatch #{tmp 2305}# '(any any)))) (if (if #{tmp 2334}# (@apply (lambda (#{a 2337}# #{b 2338}#) (eq? (syntax->datum #{a 2337}#) #:rest)) #{tmp 2334}#) #f) (@apply (lambda (#{a 2341}# #{b 2342}#) (#{rest 2298}# #{b 2342}# (reverse #{rreq 2302}#) '() '())) #{tmp 2334}#) (let ((#{tmp 2343}# (list #{tmp 2305}#))) (if (if #{tmp 2343}# (@apply (lambda (#{r 2345}#) (#{id? 344}# #{r 2345}#)) #{tmp 2343}#) #f) (@apply (lambda (#{r 2347}#) (#{rest 2298}# #{r 2347}# (reverse #{rreq 2302}#) '() '())) #{tmp 2343}#) (let ((#{else 2349}# #{tmp 2305}#)) (syntax-violation 'lambda* "invalid argument list" #{orig-args 2289}# #{args 2301}#))))))))))))))))) (#{opt 2294}# (lambda (#{args 2350}# #{req 2351}# #{ropt 2352}#) (let ((#{tmp 2356}# #{args 2350}#)) (let ((#{tmp 2357}# ($sc-dispatch #{tmp 2356}# '()))) (if #{tmp 2357}# (@apply (lambda () (#{check 2300}# #{req 2351}# (reverse #{ropt 2352}#) #f '())) #{tmp 2357}#) (let ((#{tmp 2358}# ($sc-dispatch #{tmp 2356}# '(any . any)))) (if (if #{tmp 2358}# (@apply (lambda (#{a 2361}# #{b 2362}#) (#{id? 344}# #{a 2361}#)) #{tmp 2358}#) #f) (@apply (lambda (#{a 2365}# #{b 2366}#) (#{opt 2294}# #{b 2366}# #{req 2351}# (cons (cons #{a 2365}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i2363" "i2364")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i2353" "i2354" "i2355")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2299" "i2297" "i2295" "i2293" "i2291")) #(ribcage #(orig-args) #((top)) #("i2290")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)))) #{ropt 2352}#))) #{tmp 2358}#) (let ((#{tmp 2367}# ($sc-dispatch #{tmp 2356}# '((any any) . any)))) (if (if #{tmp 2367}# (@apply (lambda (#{a 2371}# #{init 2372}# #{b 2373}#) (#{id? 344}# #{a 2371}#)) #{tmp 2367}#) #f) (@apply (lambda (#{a 2377}# #{init 2378}# #{b 2379}#) (#{opt 2294}# #{b 2379}# #{req 2351}# (cons (list #{a 2377}# #{init 2378}#) #{ropt 2352}#))) #{tmp 2367}#) (let ((#{tmp 2380}# ($sc-dispatch #{tmp 2356}# '(any . any)))) (if (if #{tmp 2380}# (@apply (lambda (#{a 2383}# #{b 2384}#) (eq? (syntax->datum #{a 2383}#) #:key)) #{tmp 2380}#) #f) (@apply (lambda (#{a 2387}# #{b 2388}#) (#{key 2296}# #{b 2388}# #{req 2351}# (reverse #{ropt 2352}#) '())) #{tmp 2380}#) (let ((#{tmp 2389}# ($sc-dispatch #{tmp 2356}# '(any any)))) (if (if #{tmp 2389}# (@apply (lambda (#{a 2392}# #{b 2393}#) (eq? (syntax->datum #{a 2392}#) #:rest)) #{tmp 2389}#) #f) (@apply (lambda (#{a 2396}# #{b 2397}#) (#{rest 2298}# #{b 2397}# #{req 2351}# (reverse #{ropt 2352}#) '())) #{tmp 2389}#) (let ((#{tmp 2398}# (list #{tmp 2356}#))) (if (if #{tmp 2398}# (@apply (lambda (#{r 2400}#) (#{id? 344}# #{r 2400}#)) #{tmp 2398}#) #f) (@apply (lambda (#{r 2402}#) (#{rest 2298}# #{r 2402}# #{req 2351}# (reverse #{ropt 2352}#) '())) #{tmp 2398}#) (let ((#{else 2404}# #{tmp 2356}#)) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args 2289}# #{args 2350}#))))))))))))))))) (#{key 2296}# (lambda (#{args 2405}# #{req 2406}# #{opt 2407}# #{rkey 2408}#) (let ((#{tmp 2413}# #{args 2405}#)) (let ((#{tmp 2414}# ($sc-dispatch #{tmp 2413}# '()))) (if #{tmp 2414}# (@apply (lambda () (#{check 2300}# #{req 2406}# #{opt 2407}# #f (cons #f (reverse #{rkey 2408}#)))) #{tmp 2414}#) (let ((#{tmp 2415}# ($sc-dispatch #{tmp 2413}# '(any . any)))) (if (if #{tmp 2415}# (@apply (lambda (#{a 2418}# #{b 2419}#) (#{id? 344}# #{a 2418}#)) #{tmp 2415}#) #f) (@apply (lambda (#{a 2422}# #{b 2423}#) (let ((#{tmp 2425}# (symbol->keyword (syntax->datum #{a 2422}#)))) (let ((#{k 2427}# #{tmp 2425}#)) (#{key 2296}# #{b 2423}# #{req 2406}# #{opt 2407}# (cons (cons #{k 2427}# (cons #{a 2422}# '(#(syntax-object #f ((top) #(ribcage () () ()) #(ribcage #(k) #((top)) #("i2426")) #(ribcage #(a b) #((top) (top)) #("i2420" "i2421")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i2409" "i2410" "i2411" "i2412")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2299" "i2297" "i2295" "i2293" "i2291")) #(ribcage #(orig-args) #((top)) #("i2290")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))))) #{rkey 2408}#))))) #{tmp 2415}#) (let ((#{tmp 2428}# ($sc-dispatch #{tmp 2413}# '((any any) . any)))) (if (if #{tmp 2428}# (@apply (lambda (#{a 2432}# #{init 2433}# #{b 2434}#) (#{id? 344}# #{a 2432}#)) #{tmp 2428}#) #f) (@apply (lambda (#{a 2438}# #{init 2439}# #{b 2440}#) (let ((#{tmp 2442}# (symbol->keyword (syntax->datum #{a 2438}#)))) (let ((#{k 2444}# #{tmp 2442}#)) (#{key 2296}# #{b 2440}# #{req 2406}# #{opt 2407}# (cons (list #{k 2444}# #{a 2438}# #{init 2439}#) #{rkey 2408}#))))) #{tmp 2428}#) (let ((#{tmp 2445}# ($sc-dispatch #{tmp 2413}# '((any any any) . any)))) (if (if #{tmp 2445}# (@apply (lambda (#{a 2450}# #{init 2451}# #{k 2452}# #{b 2453}#) (if (#{id? 344}# #{a 2450}#) (keyword? (syntax->datum #{k 2452}#)) #f)) #{tmp 2445}#) #f) (@apply (lambda (#{a 2460}# #{init 2461}# #{k 2462}# #{b 2463}#) (#{key 2296}# #{b 2463}# #{req 2406}# #{opt 2407}# (cons (list #{k 2462}# #{a 2460}# #{init 2461}#) #{rkey 2408}#))) #{tmp 2445}#) (let ((#{tmp 2464}# ($sc-dispatch #{tmp 2413}# '(any)))) (if (if #{tmp 2464}# (@apply (lambda (#{aok 2466}#) (eq? (syntax->datum #{aok 2466}#) #:allow-other-keys)) #{tmp 2464}#) #f) (@apply (lambda (#{aok 2468}#) (#{check 2300}# #{req 2406}# #{opt 2407}# #f (cons #t (reverse #{rkey 2408}#)))) #{tmp 2464}#) (let ((#{tmp 2469}# ($sc-dispatch #{tmp 2413}# '(any any any)))) (if (if #{tmp 2469}# (@apply (lambda (#{aok 2473}# #{a 2474}# #{b 2475}#) (if (eq? (syntax->datum #{aok 2473}#) #:allow-other-keys) (eq? (syntax->datum #{a 2474}#) #:rest) #f)) #{tmp 2469}#) #f) (@apply (lambda (#{aok 2481}# #{a 2482}# #{b 2483}#) (#{rest 2298}# #{b 2483}# #{req 2406}# #{opt 2407}# (cons #t (reverse #{rkey 2408}#)))) #{tmp 2469}#) (let ((#{tmp 2484}# ($sc-dispatch #{tmp 2413}# '(any . any)))) (if (if #{tmp 2484}# (@apply (lambda (#{aok 2487}# #{r 2488}#) (if (eq? (syntax->datum #{aok 2487}#) #:allow-other-keys) (#{id? 344}# #{r 2488}#) #f)) #{tmp 2484}#) #f) (@apply (lambda (#{aok 2493}# #{r 2494}#) (#{rest 2298}# #{r 2494}# #{req 2406}# #{opt 2407}# (cons #t (reverse #{rkey 2408}#)))) #{tmp 2484}#) (let ((#{tmp 2495}# ($sc-dispatch #{tmp 2413}# '(any any)))) (if (if #{tmp 2495}# (@apply (lambda (#{a 2498}# #{b 2499}#) (eq? (syntax->datum #{a 2498}#) #:rest)) #{tmp 2495}#) #f) (@apply (lambda (#{a 2502}# #{b 2503}#) (#{rest 2298}# #{b 2503}# #{req 2406}# #{opt 2407}# (cons #f (reverse #{rkey 2408}#)))) #{tmp 2495}#) (let ((#{tmp 2504}# (list #{tmp 2413}#))) (if (if #{tmp 2504}# (@apply (lambda (#{r 2506}#) (#{id? 344}# #{r 2506}#)) #{tmp 2504}#) #f) (@apply (lambda (#{r 2508}#) (#{rest 2298}# #{r 2508}# #{req 2406}# #{opt 2407}# (cons #f (reverse #{rkey 2408}#)))) #{tmp 2504}#) (let ((#{else 2510}# #{tmp 2413}#)) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args 2289}# #{args 2405}#))))))))))))))))))))))) (#{rest 2298}# (lambda (#{args 2511}# #{req 2512}# #{opt 2513}# #{kw 2514}#) (let ((#{tmp 2519}# #{args 2511}#)) (let ((#{tmp 2520}# (list #{tmp 2519}#))) (if (if #{tmp 2520}# (@apply (lambda (#{r 2522}#) (#{id? 344}# #{r 2522}#)) #{tmp 2520}#) #f) (@apply (lambda (#{r 2524}#) (#{check 2300}# #{req 2512}# #{opt 2513}# #{r 2524}# #{kw 2514}#)) #{tmp 2520}#) (let ((#{else 2526}# #{tmp 2519}#)) (syntax-violation 'lambda* "invalid rest argument" #{orig-args 2289}# #{args 2511}#))))))) (#{check 2300}# (lambda (#{req 2527}# #{opt 2528}# #{rest 2529}# #{kw 2530}#) (if (#{distinct-bound-ids? 414}# (append #{req 2527}# (map car #{opt 2528}#) (if #{rest 2529}# (list #{rest 2529}#) '()) (if (pair? #{kw 2530}#) (map cadr (cdr #{kw 2530}#)) '()))) (values #{req 2527}# #{opt 2528}# #{rest 2529}# #{kw 2530}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args 2289}#))))) (begin (#{req 2292}# #{orig-args 2289}# '()))))) (#{chi-lambda-case 456}# (lambda (#{e 2538}# #{r 2539}# #{w 2540}# #{s 2541}# #{mod 2542}# #{get-formals 2543}# #{clauses 2544}#) (letrec* ((#{expand-req 2553}# (lambda (#{req 2560}# #{opt 2561}# #{rest 2562}# #{kw 2563}# #{body 2564}#) (begin (let ((#{vars 2572}# (map #{gen-var 460}# #{req 2560}#)) (#{labels 2573}# (#{gen-labels 364}# #{req 2560}#))) (begin (let ((#{r* 2576}# (#{extend-var-env 334}# #{labels 2573}# #{vars 2572}# #{r 2539}#)) (#{w* 2577}# (#{make-binding-wrap 396}# #{req 2560}# #{labels 2573}# #{w 2540}#))) (#{expand-opt 2555}# (map syntax->datum #{req 2560}#) #{opt 2561}# #{rest 2562}# #{kw 2563}# #{body 2564}# (reverse #{vars 2572}#) #{r* 2576}# #{w* 2577}# '() '()))))))) (#{expand-opt 2555}# (lambda (#{req 2578}# #{opt 2579}# #{rest 2580}# #{kw 2581}# #{body 2582}# #{vars 2583}# #{r* 2584}# #{w* 2585}# #{out 2586}# #{inits 2587}#) (if (pair? #{opt 2579}#) (let ((#{tmp 2600}# (car #{opt 2579}#))) (let ((#{tmp 2601}# ($sc-dispatch #{tmp 2600}# '(any any)))) (if #{tmp 2601}# (@apply (lambda (#{id 2604}# #{i 2605}#) (begin (let ((#{v 2608}# (#{gen-var 460}# #{id 2604}#))) (begin (let ((#{l 2610}# (#{gen-labels 364}# (list #{v 2608}#)))) (begin (let ((#{r** 2612}# (#{extend-var-env 334}# #{l 2610}# (list #{v 2608}#) #{r* 2584}#))) (begin (let ((#{w** 2614}# (#{make-binding-wrap 396}# (list #{id 2604}#) #{l 2610}# #{w* 2585}#))) (#{expand-opt 2555}# #{req 2578}# (cdr #{opt 2579}#) #{rest 2580}# #{kw 2581}# #{body 2582}# (cons #{v 2608}# #{vars 2583}#) #{r** 2612}# #{w** 2614}# (cons (syntax->datum #{id 2604}#) #{out 2586}#) (cons (#{chi 432}# #{i 2605}# #{r* 2584}# #{w* 2585}# #{mod 2542}#) #{inits 2587}#))))))))))) #{tmp 2601}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2600}#)))) (if #{rest 2580}# (begin (let ((#{v 2619}# (#{gen-var 460}# #{rest 2580}#))) (begin (let ((#{l 2621}# (#{gen-labels 364}# (list #{v 2619}#)))) (begin (let ((#{r* 2623}# (#{extend-var-env 334}# #{l 2621}# (list #{v 2619}#) #{r* 2584}#))) (begin (let ((#{w* 2625}# (#{make-binding-wrap 396}# (list #{rest 2580}#) #{l 2621}# #{w* 2585}#))) (#{expand-kw 2557}# #{req 2578}# (if (pair? #{out 2586}#) (reverse #{out 2586}#) #f) (syntax->datum #{rest 2580}#) (if (pair? #{kw 2581}#) (cdr #{kw 2581}#) #{kw 2581}#) #{body 2582}# (cons #{v 2619}# #{vars 2583}#) #{r* 2623}# #{w* 2625}# (if (pair? #{kw 2581}#) (car #{kw 2581}#) #f) '() #{inits 2587}#))))))))) (#{expand-kw 2557}# #{req 2578}# (if (pair? #{out 2586}#) (reverse #{out 2586}#) #f) #f (if (pair? #{kw 2581}#) (cdr #{kw 2581}#) #{kw 2581}#) #{body 2582}# #{vars 2583}# #{r* 2584}# #{w* 2585}# (if (pair? #{kw 2581}#) (car #{kw 2581}#) #f) '() #{inits 2587}#))))) (#{expand-kw 2557}# (lambda (#{req 2627}# #{opt 2628}# #{rest 2629}# #{kw 2630}# #{body 2631}# #{vars 2632}# #{r* 2633}# #{w* 2634}# #{aok 2635}# #{out 2636}# #{inits 2637}#) (if (pair? #{kw 2630}#) (let ((#{tmp 2651}# (car #{kw 2630}#))) (let ((#{tmp 2652}# ($sc-dispatch #{tmp 2651}# '(any any any)))) (if #{tmp 2652}# (@apply (lambda (#{k 2656}# #{id 2657}# #{i 2658}#) (begin (let ((#{v 2661}# (#{gen-var 460}# #{id 2657}#))) (begin (let ((#{l 2663}# (#{gen-labels 364}# (list #{v 2661}#)))) (begin (let ((#{r** 2665}# (#{extend-var-env 334}# #{l 2663}# (list #{v 2661}#) #{r* 2633}#))) (begin (let ((#{w** 2667}# (#{make-binding-wrap 396}# (list #{id 2657}#) #{l 2663}# #{w* 2634}#))) (#{expand-kw 2557}# #{req 2627}# #{opt 2628}# #{rest 2629}# (cdr #{kw 2630}#) #{body 2631}# (cons #{v 2661}# #{vars 2632}#) #{r** 2665}# #{w** 2667}# #{aok 2635}# (cons (list (syntax->datum #{k 2656}#) (syntax->datum #{id 2657}#) #{v 2661}#) #{out 2636}#) (cons (#{chi 432}# #{i 2658}# #{r* 2633}# #{w* 2634}# #{mod 2542}#) #{inits 2637}#))))))))))) #{tmp 2652}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2651}#)))) (#{expand-body 2559}# #{req 2627}# #{opt 2628}# #{rest 2629}# (if (begin (let ((#{t 2671}# #{aok 2635}#)) (if #{t 2671}# #{t 2671}# (pair? #{out 2636}#)))) (cons #{aok 2635}# (reverse #{out 2636}#)) #f) #{body 2631}# (reverse #{vars 2632}#) #{r* 2633}# #{w* 2634}# (reverse #{inits 2637}#) '())))) (#{expand-body 2559}# (lambda (#{req 2673}# #{opt 2674}# #{rest 2675}# #{kw 2676}# #{body 2677}# #{vars 2678}# #{r* 2679}# #{w* 2680}# #{inits 2681}# #{meta 2682}#) (let ((#{tmp 2693}# #{body 2677}#)) (let ((#{tmp 2694}# ($sc-dispatch #{tmp 2693}# '(any any . each-any)))) (if (if #{tmp 2694}# (@apply (lambda (#{docstring 2698}# #{e1 2699}# #{e2 2700}#) (string? (syntax->datum #{docstring 2698}#))) #{tmp 2694}#) #f) (@apply (lambda (#{docstring 2704}# #{e1 2705}# #{e2 2706}#) (#{expand-body 2559}# #{req 2673}# #{opt 2674}# #{rest 2675}# #{kw 2676}# (cons #{e1 2705}# #{e2 2706}#) #{vars 2678}# #{r* 2679}# #{w* 2680}# #{inits 2681}# (append #{meta 2682}# (list (cons 'documentation (syntax->datum #{docstring 2704}#)))))) #{tmp 2694}#) (let ((#{tmp 2709}# ($sc-dispatch #{tmp 2693}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp 2709}# (@apply (lambda (#{k 2714}# #{v 2715}# #{e1 2716}# #{e2 2717}#) (#{expand-body 2559}# #{req 2673}# #{opt 2674}# #{rest 2675}# #{kw 2676}# (cons #{e1 2716}# #{e2 2717}#) #{vars 2678}# #{r* 2679}# #{w* 2680}# #{inits 2681}# (append #{meta 2682}# (syntax->datum (map cons #{k 2714}# #{v 2715}#))))) #{tmp 2709}#) (let ((#{tmp 2721}# ($sc-dispatch #{tmp 2693}# '(any . each-any)))) (if #{tmp 2721}# (@apply (lambda (#{e1 2724}# #{e2 2725}#) (values #{meta 2682}# #{req 2673}# #{opt 2674}# #{rest 2675}# #{kw 2676}# #{inits 2681}# #{vars 2678}# (#{chi-body 440}# (cons #{e1 2724}# #{e2 2725}#) (#{source-wrap 420}# #{e 2538}# #{w 2540}# #{s 2541}# #{mod 2542}#) #{r* 2679}# #{w* 2680}# #{mod 2542}#))) #{tmp 2721}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2693}#))))))))))) (begin (let ((#{tmp 2727}# #{clauses 2544}#)) (let ((#{tmp 2728}# ($sc-dispatch #{tmp 2727}# '()))) (if #{tmp 2728}# (@apply (lambda () (values '() #f)) #{tmp 2728}#) (let ((#{tmp 2729}# ($sc-dispatch #{tmp 2727}# '((any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 2729}# (@apply (lambda (#{args 2736}# #{e1 2737}# #{e2 2738}# #{args* 2739}# #{e1* 2740}# #{e2* 2741}#) (call-with-values (lambda () (#{get-formals 2543}# #{args 2736}#)) (lambda (#{req 2742}# #{opt 2743}# #{rest 2744}# #{kw 2745}#) (call-with-values (lambda () (#{expand-req 2553}# #{req 2742}# #{opt 2743}# #{rest 2744}# #{kw 2745}# (cons #{e1 2737}# #{e2 2738}#))) (lambda (#{meta 2751}# #{req 2752}# #{opt 2753}# #{rest 2754}# #{kw 2755}# #{inits 2756}# #{vars 2757}# #{body 2758}#) (call-with-values (lambda () (#{chi-lambda-case 456}# #{e 2538}# #{r 2539}# #{w 2540}# #{s 2541}# #{mod 2542}# #{get-formals 2543}# (map (lambda (#{tmp 2769}# #{tmp 2768}# #{tmp 2767}#) (cons #{tmp 2767}# (cons #{tmp 2768}# #{tmp 2769}#))) #{e2* 2741}# #{e1* 2740}# #{args* 2739}#))) (lambda (#{meta* 2771}# #{else* 2772}#) (values (append #{meta 2751}# #{meta* 2771}#) (#{build-lambda-case 288}# #{s 2541}# #{req 2752}# #{opt 2753}# #{rest 2754}# #{kw 2755}# #{inits 2756}# #{vars 2757}# #{body 2758}# #{else* 2772}#))))))))) #{tmp 2729}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2727}#)))))))))) (#{strip 458}# (lambda (#{x 2775}# #{w 2776}#) (if (memq 'top (car #{w 2776}#)) #{x 2775}# (letrec* ((#{f 2783}# (lambda (#{x 2784}#) (if (#{syntax-object? 307}# #{x 2784}#) (#{strip 458}# (#{syntax-object-expression 309}# #{x 2784}#) (#{syntax-object-wrap 311}# #{x 2784}#)) (if (pair? #{x 2784}#) (begin (let ((#{a 2791}# (#{f 2783}# (car #{x 2784}#))) (#{d 2792}# (#{f 2783}# (cdr #{x 2784}#)))) (if (if (eq? #{a 2791}# (car #{x 2784}#)) (eq? #{d 2792}# (cdr #{x 2784}#)) #f) #{x 2784}# (cons #{a 2791}# #{d 2792}#)))) (if (vector? #{x 2784}#) (begin (let ((#{old 2798}# (vector->list #{x 2784}#))) (begin (let ((#{new 2800}# (map #{f 2783}# #{old 2798}#))) (letrec* ((#{lp 2804}# (lambda (#{l1 2805}# #{l2 2806}#) (if (null? #{l1 2805}#) #{x 2784}# (if (eq? (car #{l1 2805}#) (car #{l2 2806}#)) (#{lp 2804}# (cdr #{l1 2805}#) (cdr #{l2 2806}#)) (list->vector #{new 2800}#)))))) (begin (#{lp 2804}# #{old 2798}# #{new 2800}#))))))) #{x 2784}#)))))) (begin (#{f 2783}# #{x 2775}#)))))) (#{gen-var 460}# (lambda (#{id 2808}#) (begin (let ((#{id 2811}# (if (#{syntax-object? 307}# #{id 2808}#) (#{syntax-object-expression 309}# #{id 2808}#) #{id 2808}#))) (gensym (string-append (symbol->string #{id 2811}#) " ")))))) (#{lambda-var-list 462}# (lambda (#{vars 2813}#) (letrec* ((#{lvl 2819}# (lambda (#{vars 2820}# #{ls 2821}# #{w 2822}#) (if (pair? #{vars 2820}#) (#{lvl 2819}# (cdr #{vars 2820}#) (cons (#{wrap 418}# (car #{vars 2820}#) #{w 2822}# #f) #{ls 2821}#) #{w 2822}#) (if (#{id? 344}# #{vars 2820}#) (cons (#{wrap 418}# #{vars 2820}# #{w 2822}# #f) #{ls 2821}#) (if (null? #{vars 2820}#) #{ls 2821}# (if (#{syntax-object? 307}# #{vars 2820}#) (#{lvl 2819}# (#{syntax-object-expression 309}# #{vars 2820}#) #{ls 2821}# (#{join-wraps 400}# #{w 2822}# (#{syntax-object-wrap 311}# #{vars 2820}#))) (cons #{vars 2820}# #{ls 2821}#)))))))) (begin (#{lvl 2819}# #{vars 2813}# '() '(()))))))) (begin (lambda (#{src 780}# #{name 781}#) (make-struct/no-tail (vector-ref %expanded-vtables 2) #{src 780}# #{name 781}#)) (lambda (#{x 1158}# #{update 1159}#) (vector-set! #{x 1158}# 1 #{update 1159}#)) (lambda (#{x 1162}# #{update 1163}#) (vector-set! #{x 1162}# 2 #{update 1163}#)) (lambda (#{x 1166}# #{update 1167}#) (vector-set! #{x 1166}# 3 #{update 1167}#)) (lambda (#{x 1247}#) (if (vector? #{x 1247}#) (if (= (vector-length #{x 1247}#) 4) (eq? (vector-ref #{x 1247}# 0) 'ribcage) #f) #f)) (begin (#{global-extend 340}# 'local-syntax 'letrec-syntax #t) (#{global-extend 340}# 'local-syntax 'let-syntax #f) (#{global-extend 340}# 'core 'fluid-let-syntax (lambda (#{e 2833}# #{r 2834}# #{w 2835}# #{s 2836}# #{mod 2837}#) (let ((#{tmp 2843}# #{e 2833}#)) (let ((#{tmp 2844}# ($sc-dispatch #{tmp 2843}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 2844}# (@apply (lambda (#{var 2849}# #{val 2850}# #{e1 2851}# #{e2 2852}#) (#{valid-bound-ids? 412}# #{var 2849}#)) #{tmp 2844}#) #f) (@apply (lambda (#{var 2858}# #{val 2859}# #{e1 2860}# #{e2 2861}#) (begin (let ((#{names 2863}# (map (lambda (#{x 2864}#) (#{id-var-name 406}# #{x 2864}# #{w 2835}#)) #{var 2858}#))) (begin (for-each (lambda (#{id 2867}# #{n 2868}#) (begin (let ((#{atom-key 2873}# (car (#{lookup 338}# #{n 2868}# #{r 2834}# #{mod 2837}#)))) (if (eqv? #{atom-key 2873}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e 2833}# (#{source-wrap 420}# #{id 2867}# #{w 2835}# #{s 2836}# #{mod 2837}#)))))) #{var 2858}# #{names 2863}#) (#{chi-body 440}# (cons #{e1 2860}# #{e2 2861}#) (#{source-wrap 420}# #{e 2833}# #{w 2835}# #{s 2836}# #{mod 2837}#) (#{extend-env 332}# #{names 2863}# (begin (let ((#{trans-r 2879}# (#{macros-only-env 336}# #{r 2834}#))) (map (lambda (#{x 2880}#) (cons 'macro (#{eval-local-transformer 444}# (#{chi 432}# #{x 2880}# #{trans-r 2879}# #{w 2835}# #{mod 2837}#) #{mod 2837}#))) #{val 2859}#))) #{r 2834}#) #{w 2835}# #{mod 2837}#))))) #{tmp 2844}#) (let ((#{_ 2885}# #{tmp 2843}#)) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap 420}# #{e 2833}# #{w 2835}# #{s 2836}# #{mod 2837}#)))))))) (#{global-extend 340}# 'core 'quote (lambda (#{e 2886}# #{r 2887}# #{w 2888}# #{s 2889}# #{mod 2890}#) (let ((#{tmp 2896}# #{e 2886}#)) (let ((#{tmp 2897}# ($sc-dispatch #{tmp 2896}# '(_ any)))) (if #{tmp 2897}# (@apply (lambda (#{e 2899}#) (#{build-data 292}# #{s 2889}# (#{strip 458}# #{e 2899}# #{w 2888}#))) #{tmp 2897}#) (let ((#{_ 2901}# #{tmp 2896}#)) (syntax-violation 'quote "bad syntax" (#{source-wrap 420}# #{e 2886}# #{w 2888}# #{s 2889}# #{mod 2890}#)))))))) (#{global-extend 340}# 'core 'syntax (letrec* ((#{gen-syntax 2903}# (lambda (#{src 2918}# #{e 2919}# #{r 2920}# #{maps 2921}# #{ellipsis? 2922}# #{mod 2923}#) (if (#{id? 344}# #{e 2919}#) (begin (let ((#{label 2931}# (#{id-var-name 406}# #{e 2919}# '(())))) (begin (let ((#{b 2934}# (#{lookup 338}# #{label 2931}# #{r 2920}# #{mod 2923}#))) (if (eq? (car #{b 2934}#) 'syntax) (call-with-values (lambda () (begin (let ((#{var.lev 2937}# (cdr #{b 2934}#))) (#{gen-ref 2905}# #{src 2918}# (car #{var.lev 2937}#) (cdr #{var.lev 2937}#) #{maps 2921}#)))) (lambda (#{var 2939}# #{maps 2940}#) (values (list 'ref #{var 2939}#) #{maps 2940}#))) (if (#{ellipsis? 2922}# #{e 2919}#) (syntax-violation 'syntax "misplaced ellipsis" #{src 2918}#) (values (list 'quote #{e 2919}#) #{maps 2921}#))))))) (let ((#{tmp 2945}# #{e 2919}#)) (let ((#{tmp 2946}# ($sc-dispatch #{tmp 2945}# '(any any)))) (if (if #{tmp 2946}# (@apply (lambda (#{dots 2949}# #{e 2950}#) (#{ellipsis? 2922}# #{dots 2949}#)) #{tmp 2946}#) #f) (@apply (lambda (#{dots 2953}# #{e 2954}#) (#{gen-syntax 2903}# #{src 2918}# #{e 2954}# #{r 2920}# #{maps 2921}# (lambda (#{x 2955}#) #f) #{mod 2923}#)) #{tmp 2946}#) (let ((#{tmp 2957}# ($sc-dispatch #{tmp 2945}# '(any any . any)))) (if (if #{tmp 2957}# (@apply (lambda (#{x 2961}# #{dots 2962}# #{y 2963}#) (#{ellipsis? 2922}# #{dots 2962}#)) #{tmp 2957}#) #f) (@apply (lambda (#{x 2967}# #{dots 2968}# #{y 2969}#) (letrec* ((#{f 2973}# (lambda (#{y 2974}# #{k 2975}#) (let ((#{tmp 2982}# #{y 2974}#)) (let ((#{tmp 2983}# ($sc-dispatch #{tmp 2982}# '(any . any)))) (if (if #{tmp 2983}# (@apply (lambda (#{dots 2986}# #{y 2987}#) (#{ellipsis? 2922}# #{dots 2986}#)) #{tmp 2983}#) #f) (@apply (lambda (#{dots 2990}# #{y 2991}#) (#{f 2973}# #{y 2991}# (lambda (#{maps 2992}#) (call-with-values (lambda () (#{k 2975}# (cons '() #{maps 2992}#))) (lambda (#{x 2994}# #{maps 2995}#) (if (null? (car #{maps 2995}#)) (syntax-violation 'syntax "extra ellipsis" #{src 2918}#) (values (#{gen-mappend 2907}# #{x 2994}# (car #{maps 2995}#)) (cdr #{maps 2995}#)))))))) #{tmp 2983}#) (let ((#{_ 2999}# #{tmp 2982}#)) (call-with-values (lambda () (#{gen-syntax 2903}# #{src 2918}# #{y 2974}# #{r 2920}# #{maps 2921}# #{ellipsis? 2922}# #{mod 2923}#)) (lambda (#{y 3000}# #{maps 3001}#) (call-with-values (lambda () (#{k 2975}# #{maps 3001}#)) (lambda (#{x 3004}# #{maps 3005}#) (values (#{gen-append 2913}# #{x 3004}# #{y 3000}#) #{maps 3005}#)))))))))))) (begin (#{f 2973}# #{y 2969}# (lambda (#{maps 2976}#) (call-with-values (lambda () (#{gen-syntax 2903}# #{src 2918}# #{x 2967}# #{r 2920}# (cons '() #{maps 2976}#) #{ellipsis? 2922}# #{mod 2923}#)) (lambda (#{x 2978}# #{maps 2979}#) (if (null? (car #{maps 2979}#)) (syntax-violation 'syntax "extra ellipsis" #{src 2918}#) (values (#{gen-map 2909}# #{x 2978}# (car #{maps 2979}#)) (cdr #{maps 2979}#)))))))))) #{tmp 2957}#) (let ((#{tmp 3008}# ($sc-dispatch #{tmp 2945}# '(any . any)))) (if #{tmp 3008}# (@apply (lambda (#{x 3011}# #{y 3012}#) (call-with-values (lambda () (#{gen-syntax 2903}# #{src 2918}# #{x 3011}# #{r 2920}# #{maps 2921}# #{ellipsis? 2922}# #{mod 2923}#)) (lambda (#{x 3013}# #{maps 3014}#) (call-with-values (lambda () (#{gen-syntax 2903}# #{src 2918}# #{y 3012}# #{r 2920}# #{maps 3014}# #{ellipsis? 2922}# #{mod 2923}#)) (lambda (#{y 3017}# #{maps 3018}#) (values (#{gen-cons 2911}# #{x 3013}# #{y 3017}#) #{maps 3018}#)))))) #{tmp 3008}#) (let ((#{tmp 3021}# ($sc-dispatch #{tmp 2945}# '#(vector (any . each-any))))) (if #{tmp 3021}# (@apply (lambda (#{e1 3024}# #{e2 3025}#) (call-with-values (lambda () (#{gen-syntax 2903}# #{src 2918}# (cons #{e1 3024}# #{e2 3025}#) #{r 2920}# #{maps 2921}# #{ellipsis? 2922}# #{mod 2923}#)) (lambda (#{e 3027}# #{maps 3028}#) (values (#{gen-vector 2915}# #{e 3027}#) #{maps 3028}#)))) #{tmp 3021}#) (let ((#{_ 3032}# #{tmp 2945}#)) (values (list 'quote #{e 2919}#) #{maps 2921}#)))))))))))))) (#{gen-ref 2905}# (lambda (#{src 3034}# #{var 3035}# #{level 3036}# #{maps 3037}#) (if (= #{level 3036}# 0) (values #{var 3035}# #{maps 3037}#) (if (null? #{maps 3037}#) (syntax-violation 'syntax "missing ellipsis" #{src 3034}#) (call-with-values (lambda () (#{gen-ref 2905}# #{src 3034}# #{var 3035}# (#{1-}# #{level 3036}#) (cdr #{maps 3037}#))) (lambda (#{outer-var 3044}# #{outer-maps 3045}#) (begin (let ((#{b 3049}# (assq #{outer-var 3044}# (car #{maps 3037}#)))) (if #{b 3049}# (values (cdr #{b 3049}#) #{maps 3037}#) (begin (let ((#{inner-var 3051}# (#{gen-var 460}# 'tmp))) (values #{inner-var 3051}# (cons (cons (cons #{outer-var 3044}# #{inner-var 3051}#) (car #{maps 3037}#)) #{outer-maps 3045}#))))))))))))) (#{gen-mappend 2907}# (lambda (#{e 3052}# #{map-env 3053}#) (list 'apply '(primitive append) (#{gen-map 2909}# #{e 3052}# #{map-env 3053}#)))) (#{gen-map 2909}# (lambda (#{e 3057}# #{map-env 3058}#) (begin (let ((#{formals 3063}# (map cdr #{map-env 3058}#)) (#{actuals 3064}# (map (lambda (#{x 3065}#) (list 'ref (car #{x 3065}#))) #{map-env 3058}#))) (if (eq? (car #{e 3057}#) 'ref) (car #{actuals 3064}#) (if (and-map (lambda (#{x 3072}#) (if (eq? (car #{x 3072}#) 'ref) (memq (car (cdr #{x 3072}#)) #{formals 3063}#) #f)) (cdr #{e 3057}#)) (cons 'map (cons (list 'primitive (car #{e 3057}#)) (map (begin (let ((#{r 3078}# (map cons #{formals 3063}# #{actuals 3064}#))) (lambda (#{x 3079}#) (cdr (assq (car (cdr #{x 3079}#)) #{r 3078}#))))) (cdr #{e 3057}#)))) (cons 'map (cons (list 'lambda #{formals 3063}# #{e 3057}#) #{actuals 3064}#)))))))) (#{gen-cons 2911}# (lambda (#{x 3083}# #{y 3084}#) (begin (let ((#{atom-key 3089}# (car #{y 3084}#))) (if (eqv? #{atom-key 3089}# 'quote) (if (eq? (car #{x 3083}#) 'quote) (list 'quote (cons (car (cdr #{x 3083}#)) (car (cdr #{y 3084}#)))) (if (eq? (car (cdr #{y 3084}#)) '()) (list 'list #{x 3083}#) (list 'cons #{x 3083}# #{y 3084}#))) (if (eqv? #{atom-key 3089}# 'list) (cons 'list (cons #{x 3083}# (cdr #{y 3084}#))) (list 'cons #{x 3083}# #{y 3084}#))))))) (#{gen-append 2913}# (lambda (#{x 3098}# #{y 3099}#) (if (equal? #{y 3099}# ''()) #{x 3098}# (list 'append #{x 3098}# #{y 3099}#)))) (#{gen-vector 2915}# (lambda (#{x 3103}#) (if (eq? (car #{x 3103}#) 'list) (cons 'vector (cdr #{x 3103}#)) (if (eq? (car #{x 3103}#) 'quote) (list 'quote (list->vector (car (cdr #{x 3103}#)))) (list 'list->vector #{x 3103}#))))) (#{regen 2917}# (lambda (#{x 3113}#) (begin (let ((#{atom-key 3117}# (car #{x 3113}#))) (if (eqv? #{atom-key 3117}# 'ref) (#{build-lexical-reference 272}# 'value #f (car (cdr #{x 3113}#)) (car (cdr #{x 3113}#))) (if (eqv? #{atom-key 3117}# 'primitive) (#{build-primref 290}# #f (car (cdr #{x 3113}#))) (if (eqv? #{atom-key 3117}# 'quote) (#{build-data 292}# #f (car (cdr #{x 3113}#))) (if (eqv? #{atom-key 3117}# 'lambda) (if (list? (car (cdr #{x 3113}#))) (#{build-simple-lambda 284}# #f (car (cdr #{x 3113}#)) #f (car (cdr #{x 3113}#)) '() (#{regen 2917}# (car (cdr (cdr #{x 3113}#))))) (error "how did we get here" #{x 3113}#)) (#{build-application 266}# #f (#{build-primref 290}# #f (car #{x 3113}#)) (map #{regen 2917}# (cdr #{x 3113}#)))))))))))) (begin (lambda (#{e 3129}# #{r 3130}# #{w 3131}# #{s 3132}# #{mod 3133}#) (begin (let ((#{e 3140}# (#{source-wrap 420}# #{e 3129}# #{w 3131}# #{s 3132}# #{mod 3133}#))) (let ((#{tmp 3141}# #{e 3140}#)) (let ((#{tmp 3142}# ($sc-dispatch #{tmp 3141}# '(_ any)))) (if #{tmp 3142}# (@apply (lambda (#{x 3144}#) (call-with-values (lambda () (#{gen-syntax 2903}# #{e 3140}# #{x 3144}# #{r 3130}# '() #{ellipsis? 448}# #{mod 3133}#)) (lambda (#{e 3145}# #{maps 3146}#) (#{regen 2917}# #{e 3145}#)))) #{tmp 3142}#) (let ((#{_ 3150}# #{tmp 3141}#)) (syntax-violation 'syntax "bad `syntax' form" #{e 3140}#))))))))))) (#{global-extend 340}# 'core 'lambda (lambda (#{e 3151}# #{r 3152}# #{w 3153}# #{s 3154}# #{mod 3155}#) (let ((#{tmp 3161}# #{e 3151}#)) (let ((#{tmp 3162}# ($sc-dispatch #{tmp 3161}# '(_ any any . each-any)))) (if #{tmp 3162}# (@apply (lambda (#{args 3166}# #{e1 3167}# #{e2 3168}#) (call-with-values (lambda () (#{lambda-formals 450}# #{args 3166}#)) (lambda (#{req 3169}# #{opt 3170}# #{rest 3171}# #{kw 3172}#) (letrec* ((#{lp 3180}# (lambda (#{body 3181}# #{meta 3182}#) (let ((#{tmp 3184}# #{body 3181}#)) (let ((#{tmp 3185}# ($sc-dispatch #{tmp 3184}# '(any any . each-any)))) (if (if #{tmp 3185}# (@apply (lambda (#{docstring 3189}# #{e1 3190}# #{e2 3191}#) (string? (syntax->datum #{docstring 3189}#))) #{tmp 3185}#) #f) (@apply (lambda (#{docstring 3195}# #{e1 3196}# #{e2 3197}#) (#{lp 3180}# (cons #{e1 3196}# #{e2 3197}#) (append #{meta 3182}# (list (cons 'documentation (syntax->datum #{docstring 3195}#)))))) #{tmp 3185}#) (let ((#{tmp 3200}# ($sc-dispatch #{tmp 3184}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp 3200}# (@apply (lambda (#{k 3205}# #{v 3206}# #{e1 3207}# #{e2 3208}#) (#{lp 3180}# (cons #{e1 3207}# #{e2 3208}#) (append #{meta 3182}# (syntax->datum (map cons #{k 3205}# #{v 3206}#))))) #{tmp 3200}#) (let ((#{_ 3213}# #{tmp 3184}#)) (#{chi-simple-lambda 452}# #{e 3151}# #{r 3152}# #{w 3153}# #{s 3154}# #{mod 3155}# #{req 3169}# #{rest 3171}# #{meta 3182}# #{body 3181}#)))))))))) (begin (#{lp 3180}# (cons #{e1 3167}# #{e2 3168}#) '())))))) #{tmp 3162}#) (let ((#{_ 3215}# #{tmp 3161}#)) (syntax-violation 'lambda "bad lambda" #{e 3151}#))))))) (#{global-extend 340}# 'core 'lambda* (lambda (#{e 3216}# #{r 3217}# #{w 3218}# #{s 3219}# #{mod 3220}#) (let ((#{tmp 3226}# #{e 3216}#)) (let ((#{tmp 3227}# ($sc-dispatch #{tmp 3226}# '(_ any any . each-any)))) (if #{tmp 3227}# (@apply (lambda (#{args 3231}# #{e1 3232}# #{e2 3233}#) (call-with-values (lambda () (#{chi-lambda-case 456}# #{e 3216}# #{r 3217}# #{w 3218}# #{s 3219}# #{mod 3220}# #{lambda*-formals 454}# (list (cons #{args 3231}# (cons #{e1 3232}# #{e2 3233}#))))) (lambda (#{meta 3235}# #{lcase 3236}#) (#{build-case-lambda 286}# #{s 3219}# #{meta 3235}# #{lcase 3236}#)))) #{tmp 3227}#) (let ((#{_ 3240}# #{tmp 3226}#)) (syntax-violation 'lambda "bad lambda*" #{e 3216}#))))))) (#{global-extend 340}# 'core 'case-lambda (lambda (#{e 3241}# #{r 3242}# #{w 3243}# #{s 3244}# #{mod 3245}#) (let ((#{tmp 3251}# #{e 3241}#)) (let ((#{tmp 3252}# ($sc-dispatch #{tmp 3251}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 3252}# (@apply (lambda (#{args 3259}# #{e1 3260}# #{e2 3261}# #{args* 3262}# #{e1* 3263}# #{e2* 3264}#) (call-with-values (lambda () (#{chi-lambda-case 456}# #{e 3241}# #{r 3242}# #{w 3243}# #{s 3244}# #{mod 3245}# #{lambda-formals 450}# (cons (cons #{args 3259}# (cons #{e1 3260}# #{e2 3261}#)) (map (lambda (#{tmp 3268}# #{tmp 3267}# #{tmp 3266}#) (cons #{tmp 3266}# (cons #{tmp 3267}# #{tmp 3268}#))) #{e2* 3264}# #{e1* 3263}# #{args* 3262}#)))) (lambda (#{meta 3270}# #{lcase 3271}#) (#{build-case-lambda 286}# #{s 3244}# #{meta 3270}# #{lcase 3271}#)))) #{tmp 3252}#) (let ((#{_ 3275}# #{tmp 3251}#)) (syntax-violation 'case-lambda "bad case-lambda" #{e 3241}#))))))) (#{global-extend 340}# 'core 'case-lambda* (lambda (#{e 3276}# #{r 3277}# #{w 3278}# #{s 3279}# #{mod 3280}#) (let ((#{tmp 3286}# #{e 3276}#)) (let ((#{tmp 3287}# ($sc-dispatch #{tmp 3286}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 3287}# (@apply (lambda (#{args 3294}# #{e1 3295}# #{e2 3296}# #{args* 3297}# #{e1* 3298}# #{e2* 3299}#) (call-with-values (lambda () (#{chi-lambda-case 456}# #{e 3276}# #{r 3277}# #{w 3278}# #{s 3279}# #{mod 3280}# #{lambda*-formals 454}# (cons (cons #{args 3294}# (cons #{e1 3295}# #{e2 3296}#)) (map (lambda (#{tmp 3303}# #{tmp 3302}# #{tmp 3301}#) (cons #{tmp 3301}# (cons #{tmp 3302}# #{tmp 3303}#))) #{e2* 3299}# #{e1* 3298}# #{args* 3297}#)))) (lambda (#{meta 3305}# #{lcase 3306}#) (#{build-case-lambda 286}# #{s 3279}# #{meta 3305}# #{lcase 3306}#)))) #{tmp 3287}#) (let ((#{_ 3310}# #{tmp 3286}#)) (syntax-violation 'case-lambda "bad case-lambda*" #{e 3276}#))))))) (#{global-extend 340}# 'core 'let (letrec* ((#{chi-let 3312}# (lambda (#{e 3313}# #{r 3314}# #{w 3315}# #{s 3316}# #{mod 3317}# #{constructor 3318}# #{ids 3319}# #{vals 3320}# #{exps 3321}#) (if (not (#{valid-bound-ids? 412}# #{ids 3319}#)) (syntax-violation 'let "duplicate bound variable" #{e 3313}#) (begin (let ((#{labels 3333}# (#{gen-labels 364}# #{ids 3319}#)) (#{new-vars 3334}# (map #{gen-var 460}# #{ids 3319}#))) (begin (let ((#{nw 3337}# (#{make-binding-wrap 396}# #{ids 3319}# #{labels 3333}# #{w 3315}#)) (#{nr 3338}# (#{extend-var-env 334}# #{labels 3333}# #{new-vars 3334}# #{r 3314}#))) (#{constructor 3318}# #{s 3316}# (map syntax->datum #{ids 3319}#) #{new-vars 3334}# (map (lambda (#{x 3339}#) (#{chi 432}# #{x 3339}# #{r 3314}# #{w 3315}# #{mod 3317}#)) #{vals 3320}#) (#{chi-body 440}# #{exps 3321}# (#{source-wrap 420}# #{e 3313}# #{nw 3337}# #{s 3316}# #{mod 3317}#) #{nr 3338}# #{nw 3337}# #{mod 3317}#)))))))))) (begin (lambda (#{e 3341}# #{r 3342}# #{w 3343}# #{s 3344}# #{mod 3345}#) (let ((#{tmp 3351}# #{e 3341}#)) (let ((#{tmp 3352}# ($sc-dispatch #{tmp 3351}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3352}# (@apply (lambda (#{id 3357}# #{val 3358}# #{e1 3359}# #{e2 3360}#) (and-map #{id? 344}# #{id 3357}#)) #{tmp 3352}#) #f) (@apply (lambda (#{id 3366}# #{val 3367}# #{e1 3368}# #{e2 3369}#) (#{chi-let 3312}# #{e 3341}# #{r 3342}# #{w 3343}# #{s 3344}# #{mod 3345}# #{build-let 296}# #{id 3366}# #{val 3367}# (cons #{e1 3368}# #{e2 3369}#))) #{tmp 3352}#) (let ((#{tmp 3373}# ($sc-dispatch #{tmp 3351}# '(_ any #(each (any any)) any . each-any)))) (if (if #{tmp 3373}# (@apply (lambda (#{f 3379}# #{id 3380}# #{val 3381}# #{e1 3382}# #{e2 3383}#) (if (#{id? 344}# #{f 3379}#) (and-map #{id? 344}# #{id 3380}#) #f)) #{tmp 3373}#) #f) (@apply (lambda (#{f 3392}# #{id 3393}# #{val 3394}# #{e1 3395}# #{e2 3396}#) (#{chi-let 3312}# #{e 3341}# #{r 3342}# #{w 3343}# #{s 3344}# #{mod 3345}# #{build-named-let 298}# (cons #{f 3392}# #{id 3393}#) #{val 3394}# (cons #{e1 3395}# #{e2 3396}#))) #{tmp 3373}#) (let ((#{_ 3401}# #{tmp 3351}#)) (syntax-violation 'let "bad let" (#{source-wrap 420}# #{e 3341}# #{w 3343}# #{s 3344}# #{mod 3345}#)))))))))))) (#{global-extend 340}# 'core 'letrec (lambda (#{e 3402}# #{r 3403}# #{w 3404}# #{s 3405}# #{mod 3406}#) (let ((#{tmp 3412}# #{e 3402}#)) (let ((#{tmp 3413}# ($sc-dispatch #{tmp 3412}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3413}# (@apply (lambda (#{id 3418}# #{val 3419}# #{e1 3420}# #{e2 3421}#) (and-map #{id? 344}# #{id 3418}#)) #{tmp 3413}#) #f) (@apply (lambda (#{id 3427}# #{val 3428}# #{e1 3429}# #{e2 3430}#) (begin (let ((#{ids 3432}# #{id 3427}#)) (if (not (#{valid-bound-ids? 412}# #{ids 3432}#)) (syntax-violation 'letrec "duplicate bound variable" #{e 3402}#) (begin (let ((#{labels 3436}# (#{gen-labels 364}# #{ids 3432}#)) (#{new-vars 3437}# (map #{gen-var 460}# #{ids 3432}#))) (begin (let ((#{w 3440}# (#{make-binding-wrap 396}# #{ids 3432}# #{labels 3436}# #{w 3404}#)) (#{r 3441}# (#{extend-var-env 334}# #{labels 3436}# #{new-vars 3437}# #{r 3403}#))) (#{build-letrec 300}# #{s 3405}# #f (map syntax->datum #{ids 3432}#) #{new-vars 3437}# (map (lambda (#{x 3442}#) (#{chi 432}# #{x 3442}# #{r 3441}# #{w 3440}# #{mod 3406}#)) #{val 3428}#) (#{chi-body 440}# (cons #{e1 3429}# #{e2 3430}#) (#{source-wrap 420}# #{e 3402}# #{w 3440}# #{s 3405}# #{mod 3406}#) #{r 3441}# #{w 3440}# #{mod 3406}#)))))))))) #{tmp 3413}#) (let ((#{_ 3447}# #{tmp 3412}#)) (syntax-violation 'letrec "bad letrec" (#{source-wrap 420}# #{e 3402}# #{w 3404}# #{s 3405}# #{mod 3406}#)))))))) (#{global-extend 340}# 'core 'letrec* (lambda (#{e 3448}# #{r 3449}# #{w 3450}# #{s 3451}# #{mod 3452}#) (let ((#{tmp 3458}# #{e 3448}#)) (let ((#{tmp 3459}# ($sc-dispatch #{tmp 3458}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3459}# (@apply (lambda (#{id 3464}# #{val 3465}# #{e1 3466}# #{e2 3467}#) (and-map #{id? 344}# #{id 3464}#)) #{tmp 3459}#) #f) (@apply (lambda (#{id 3473}# #{val 3474}# #{e1 3475}# #{e2 3476}#) (begin (let ((#{ids 3478}# #{id 3473}#)) (if (not (#{valid-bound-ids? 412}# #{ids 3478}#)) (syntax-violation 'letrec* "duplicate bound variable" #{e 3448}#) (begin (let ((#{labels 3482}# (#{gen-labels 364}# #{ids 3478}#)) (#{new-vars 3483}# (map #{gen-var 460}# #{ids 3478}#))) (begin (let ((#{w 3486}# (#{make-binding-wrap 396}# #{ids 3478}# #{labels 3482}# #{w 3450}#)) (#{r 3487}# (#{extend-var-env 334}# #{labels 3482}# #{new-vars 3483}# #{r 3449}#))) (#{build-letrec 300}# #{s 3451}# #t (map syntax->datum #{ids 3478}#) #{new-vars 3483}# (map (lambda (#{x 3488}#) (#{chi 432}# #{x 3488}# #{r 3487}# #{w 3486}# #{mod 3452}#)) #{val 3474}#) (#{chi-body 440}# (cons #{e1 3475}# #{e2 3476}#) (#{source-wrap 420}# #{e 3448}# #{w 3486}# #{s 3451}# #{mod 3452}#) #{r 3487}# #{w 3486}# #{mod 3452}#)))))))))) #{tmp 3459}#) (let ((#{_ 3493}# #{tmp 3458}#)) (syntax-violation 'letrec* "bad letrec*" (#{source-wrap 420}# #{e 3448}# #{w 3450}# #{s 3451}# #{mod 3452}#)))))))) (#{global-extend 340}# 'core 'set! (lambda (#{e 3494}# #{r 3495}# #{w 3496}# #{s 3497}# #{mod 3498}#) (let ((#{tmp 3504}# #{e 3494}#)) (let ((#{tmp 3505}# ($sc-dispatch #{tmp 3504}# '(_ any any)))) (if (if #{tmp 3505}# (@apply (lambda (#{id 3508}# #{val 3509}#) (#{id? 344}# #{id 3508}#)) #{tmp 3505}#) #f) (@apply (lambda (#{id 3512}# #{val 3513}#) (begin (let ((#{n 3516}# (#{id-var-name 406}# #{id 3512}# #{w 3496}#)) (#{id-mod 3517}# (if (#{syntax-object? 307}# #{id 3512}#) (#{syntax-object-module 313}# #{id 3512}#) #{mod 3498}#))) (begin (let ((#{b 3519}# (#{lookup 338}# #{n 3516}# #{r 3495}# #{id-mod 3517}#))) (begin (let ((#{atom-key 3522}# (car #{b 3519}#))) (if (eqv? #{atom-key 3522}# 'lexical) (#{build-lexical-assignment 274}# #{s 3497}# (syntax->datum #{id 3512}#) (cdr #{b 3519}#) (#{chi 432}# #{val 3513}# #{r 3495}# #{w 3496}# #{mod 3498}#)) (if (eqv? #{atom-key 3522}# 'global) (#{build-global-assignment 280}# #{s 3497}# #{n 3516}# (#{chi 432}# #{val 3513}# #{r 3495}# #{w 3496}# #{mod 3498}#) #{id-mod 3517}#) (if (eqv? #{atom-key 3522}# 'macro) (begin (let ((#{p 3529}# (cdr #{b 3519}#))) (if (procedure-property #{p 3529}# 'variable-transformer) (#{chi 432}# (#{chi-macro 438}# #{p 3529}# #{e 3494}# #{r 3495}# #{w 3496}# #{s 3497}# #f #{mod 3498}#) #{r 3495}# '(()) #{mod 3498}#) (syntax-violation 'set! "not a variable transformer" (#{wrap 418}# #{e 3494}# #{w 3496}# #{mod 3498}#) (#{wrap 418}# #{id 3512}# #{w 3496}# #{id-mod 3517}#))))) (if (eqv? #{atom-key 3522}# 'displaced-lexical) (syntax-violation 'set! "identifier out of context" (#{wrap 418}# #{id 3512}# #{w 3496}# #{mod 3498}#)) (syntax-violation 'set! "bad set!" (#{source-wrap 420}# #{e 3494}# #{w 3496}# #{s 3497}# #{mod 3498}#))))))))))))) #{tmp 3505}#) (let ((#{tmp 3534}# ($sc-dispatch #{tmp 3504}# '(_ (any . each-any) any)))) (if #{tmp 3534}# (@apply (lambda (#{head 3538}# #{tail 3539}# #{val 3540}#) (call-with-values (lambda () (#{syntax-type 430}# #{head 3538}# #{r 3495}# '(()) #f #f #{mod 3498}# #t)) (lambda (#{type 3543}# #{value 3544}# #{ee 3545}# #{ww 3546}# #{ss 3547}# #{modmod 3548}#) (if (eqv? #{type 3543}# 'module-ref) (begin (let ((#{val 3557}# (#{chi 432}# #{val 3540}# #{r 3495}# #{w 3496}# #{mod 3498}#))) (call-with-values (lambda () (#{value 3544}# (cons #{head 3538}# #{tail 3539}#) #{r 3495}# #{w 3496}#)) (lambda (#{e 3559}# #{r 3560}# #{w 3561}# #{s* 3562}# #{mod 3563}#) (let ((#{tmp 3569}# #{e 3559}#)) (let ((#{tmp 3570}# (list #{tmp 3569}#))) (if (if #{tmp 3570}# (@apply (lambda (#{e 3572}#) (#{id? 344}# #{e 3572}#)) #{tmp 3570}#) #f) (@apply (lambda (#{e 3574}#) (#{build-global-assignment 280}# #{s 3497}# (syntax->datum #{e 3574}#) #{val 3557}# #{mod 3563}#)) #{tmp 3570}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3569}#)))))))) (#{build-application 266}# #{s 3497}# (#{chi 432}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3549" "i3550" "i3551" "i3552" "i3553" "i3554")) #(ribcage #(head tail val) #((top) (top) (top)) #("i3535" "i3536" "i3537")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3499" "i3500" "i3501" "i3502" "i3503")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{head 3538}#) #{r 3495}# #{w 3496}# #{mod 3498}#) (map (lambda (#{e 3576}#) (#{chi 432}# #{e 3576}# #{r 3495}# #{w 3496}# #{mod 3498}#)) (append #{tail 3539}# (list #{val 3540}#)))))))) #{tmp 3534}#) (let ((#{_ 3580}# #{tmp 3504}#)) (syntax-violation 'set! "bad set!" (#{source-wrap 420}# #{e 3494}# #{w 3496}# #{s 3497}# #{mod 3498}#)))))))))) (#{global-extend 340}# 'module-ref '@ (lambda (#{e 3581}# #{r 3582}# #{w 3583}#) (let ((#{tmp 3587}# #{e 3581}#)) (let ((#{tmp 3588}# ($sc-dispatch #{tmp 3587}# '(_ each-any any)))) (if (if #{tmp 3588}# (@apply (lambda (#{mod 3591}# #{id 3592}#) (if (and-map #{id? 344}# #{mod 3591}#) (#{id? 344}# #{id 3592}#) #f)) #{tmp 3588}#) #f) (@apply (lambda (#{mod 3598}# #{id 3599}#) (values (syntax->datum #{id 3599}#) #{r 3582}# #{w 3583}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(mod id) #((top) (top)) #("i3596" "i3597")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3584" "i3585" "i3586")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{mod 3598}#)))) #{tmp 3588}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3587}#)))))) (#{global-extend 340}# 'module-ref '@@ (lambda (#{e 3601}# #{r 3602}# #{w 3603}#) (letrec* ((#{remodulate 3608}# (lambda (#{x 3609}# #{mod 3610}#) (if (pair? #{x 3609}#) (cons (#{remodulate 3608}# (car #{x 3609}#) #{mod 3610}#) (#{remodulate 3608}# (cdr #{x 3609}#) #{mod 3610}#)) (if (#{syntax-object? 307}# #{x 3609}#) (#{make-syntax-object 305}# (#{remodulate 3608}# (#{syntax-object-expression 309}# #{x 3609}#) #{mod 3610}#) (#{syntax-object-wrap 311}# #{x 3609}#) #{mod 3610}#) (if (vector? #{x 3609}#) (begin (let ((#{n 3621}# (vector-length #{x 3609}#))) (begin (let ((#{v 3623}# (make-vector #{n 3621}#))) (letrec* ((#{loop 3626}# (lambda (#{i 3627}#) (if (= #{i 3627}# #{n 3621}#) (begin (if #f #f) #{v 3623}#) (begin (vector-set! #{v 3623}# #{i 3627}# (#{remodulate 3608}# (vector-ref #{x 3609}# #{i 3627}#) #{mod 3610}#)) (#{loop 3626}# (#{1+}# #{i 3627}#))))))) (begin (#{loop 3626}# 0))))))) #{x 3609}#)))))) (begin (let ((#{tmp 3633}# #{e 3601}#)) (let ((#{tmp 3634}# ($sc-dispatch #{tmp 3633}# '(_ each-any any)))) (if (if #{tmp 3634}# (@apply (lambda (#{mod 3637}# #{exp 3638}#) (and-map #{id? 344}# #{mod 3637}#)) #{tmp 3634}#) #f) (@apply (lambda (#{mod 3642}# #{exp 3643}#) (begin (let ((#{mod 3645}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(mod exp) #((top) (top)) #("i3640" "i3641")) #(ribcage (remodulate) ((top)) ("i3607")) #(ribcage #(e r w) #((top) (top) (top)) #("i3604" "i3605" "i3606")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{mod 3642}#)))) (values (#{remodulate 3608}# #{exp 3643}# #{mod 3645}#) #{r 3602}# #{w 3603}# (#{source-annotation 322}# #{exp 3643}#) #{mod 3645}#)))) #{tmp 3634}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3633}#)))))))) (#{global-extend 340}# 'core 'if (lambda (#{e 3647}# #{r 3648}# #{w 3649}# #{s 3650}# #{mod 3651}#) (let ((#{tmp 3657}# #{e 3647}#)) (let ((#{tmp 3658}# ($sc-dispatch #{tmp 3657}# '(_ any any)))) (if #{tmp 3658}# (@apply (lambda (#{test 3661}# #{then 3662}#) (#{build-conditional 268}# #{s 3650}# (#{chi 432}# #{test 3661}# #{r 3648}# #{w 3649}# #{mod 3651}#) (#{chi 432}# #{then 3662}# #{r 3648}# #{w 3649}# #{mod 3651}#) (#{build-void 264}# #f))) #{tmp 3658}#) (let ((#{tmp 3664}# ($sc-dispatch #{tmp 3657}# '(_ any any any)))) (if #{tmp 3664}# (@apply (lambda (#{test 3668}# #{then 3669}# #{else 3670}#) (#{build-conditional 268}# #{s 3650}# (#{chi 432}# #{test 3668}# #{r 3648}# #{w 3649}# #{mod 3651}#) (#{chi 432}# #{then 3669}# #{r 3648}# #{w 3649}# #{mod 3651}#) (#{chi 432}# #{else 3670}# #{r 3648}# #{w 3649}# #{mod 3651}#))) #{tmp 3664}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3657}#)))))))) (#{global-extend 340}# 'core 'with-fluids (lambda (#{e 3671}# #{r 3672}# #{w 3673}# #{s 3674}# #{mod 3675}#) (let ((#{tmp 3681}# #{e 3671}#)) (let ((#{tmp 3682}# ($sc-dispatch #{tmp 3681}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 3682}# (@apply (lambda (#{fluid 3687}# #{val 3688}# #{b 3689}# #{b* 3690}#) (#{build-dynlet 270}# #{s 3674}# (map (lambda (#{x 3691}#) (#{chi 432}# #{x 3691}# #{r 3672}# #{w 3673}# #{mod 3675}#)) #{fluid 3687}#) (map (lambda (#{x 3694}#) (#{chi 432}# #{x 3694}# #{r 3672}# #{w 3673}# #{mod 3675}#)) #{val 3688}#) (#{chi-body 440}# (cons #{b 3689}# #{b* 3690}#) (#{source-wrap 420}# #{e 3671}# #{w 3673}# #{s 3674}# #{mod 3675}#) #{r 3672}# #{w 3673}# #{mod 3675}#))) #{tmp 3682}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3681}#)))))) (#{global-extend 340}# 'begin 'begin '()) (#{global-extend 340}# 'define 'define '()) (#{global-extend 340}# 'define-syntax 'define-syntax '()) (#{global-extend 340}# 'eval-when 'eval-when '()) (#{global-extend 340}# 'core 'syntax-case (letrec* ((#{convert-pattern 3699}# (lambda (#{pattern 3706}# #{keys 3707}#) (letrec* ((#{cvt* 3711}# (lambda (#{p* 3716}# #{n 3717}# #{ids 3718}#) (if (not (pair? #{p* 3716}#)) (#{cvt 3715}# #{p* 3716}# #{n 3717}# #{ids 3718}#) (call-with-values (lambda () (#{cvt* 3711}# (cdr #{p* 3716}#) #{n 3717}# #{ids 3718}#)) (lambda (#{y 3722}# #{ids 3723}#) (call-with-values (lambda () (#{cvt 3715}# (car #{p* 3716}#) #{n 3717}# #{ids 3723}#)) (lambda (#{x 3726}# #{ids 3727}#) (values (cons #{x 3726}# #{y 3722}#) #{ids 3727}#)))))))) (#{v-reverse 3713}# (lambda (#{x 3730}#) (letrec* ((#{loop 3735}# (lambda (#{r 3736}# #{x 3737}#) (if (not (pair? #{x 3737}#)) (values #{r 3736}# #{x 3737}#) (#{loop 3735}# (cons (car #{x 3737}#) #{r 3736}#) (cdr #{x 3737}#)))))) (begin (#{loop 3735}# '() #{x 3730}#))))) (#{cvt 3715}# (lambda (#{p 3738}# #{n 3739}# #{ids 3740}#) (if (#{id? 344}# #{p 3738}#) (if (#{bound-id-member? 416}# #{p 3738}# #{keys 3707}#) (values (vector 'free-id #{p 3738}#) #{ids 3740}#) (if (#{free-id=? 408}# #{p 3738}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3741" "i3742" "i3743")) #(ribcage (cvt v-reverse cvt*) ((top) (top) (top)) ("i3714" "i3712" "i3710")) #(ribcage #(pattern keys) #((top) (top)) #("i3708" "i3709")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3704" "i3702" "i3700" "i3698")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) (values '_ #{ids 3740}#) (values 'any (cons (cons #{p 3738}# #{n 3739}#) #{ids 3740}#)))) (let ((#{tmp 3749}# #{p 3738}#)) (let ((#{tmp 3750}# ($sc-dispatch #{tmp 3749}# '(any any)))) (if (if #{tmp 3750}# (@apply (lambda (#{x 3753}# #{dots 3754}#) (#{ellipsis? 448}# #{dots 3754}#)) #{tmp 3750}#) #f) (@apply (lambda (#{x 3757}# #{dots 3758}#) (call-with-values (lambda () (#{cvt 3715}# #{x 3757}# (#{1+}# #{n 3739}#) #{ids 3740}#)) (lambda (#{p 3760}# #{ids 3761}#) (values (if (eq? #{p 3760}# 'any) 'each-any (vector 'each #{p 3760}#)) #{ids 3761}#)))) #{tmp 3750}#) (let ((#{tmp 3764}# ($sc-dispatch #{tmp 3749}# '(any any . any)))) (if (if #{tmp 3764}# (@apply (lambda (#{x 3768}# #{dots 3769}# #{ys 3770}#) (#{ellipsis? 448}# #{dots 3769}#)) #{tmp 3764}#) #f) (@apply (lambda (#{x 3774}# #{dots 3775}# #{ys 3776}#) (call-with-values (lambda () (#{cvt* 3711}# #{ys 3776}# #{n 3739}# #{ids 3740}#)) (lambda (#{ys 3777}# #{ids 3778}#) (call-with-values (lambda () (#{cvt 3715}# #{x 3774}# (#{1+}# #{n 3739}#) #{ids 3778}#)) (lambda (#{x 3781}# #{ids 3782}#) (call-with-values (lambda () (#{v-reverse 3713}# #{ys 3777}#)) (lambda (#{ys 3785}# #{e 3786}#) (values (vector 'each+ #{x 3781}# #{ys 3785}# #{e 3786}#) #{ids 3782}#)))))))) #{tmp 3764}#) (let ((#{tmp 3790}# ($sc-dispatch #{tmp 3749}# '(any . any)))) (if #{tmp 3790}# (@apply (lambda (#{x 3793}# #{y 3794}#) (call-with-values (lambda () (#{cvt 3715}# #{y 3794}# #{n 3739}# #{ids 3740}#)) (lambda (#{y 3795}# #{ids 3796}#) (call-with-values (lambda () (#{cvt 3715}# #{x 3793}# #{n 3739}# #{ids 3796}#)) (lambda (#{x 3799}# #{ids 3800}#) (values (cons #{x 3799}# #{y 3795}#) #{ids 3800}#)))))) #{tmp 3790}#) (let ((#{tmp 3803}# ($sc-dispatch #{tmp 3749}# '()))) (if #{tmp 3803}# (@apply (lambda () (values '() #{ids 3740}#)) #{tmp 3803}#) (let ((#{tmp 3804}# ($sc-dispatch #{tmp 3749}# '#(vector each-any)))) (if #{tmp 3804}# (@apply (lambda (#{x 3806}#) (call-with-values (lambda () (#{cvt 3715}# #{x 3806}# #{n 3739}# #{ids 3740}#)) (lambda (#{p 3808}# #{ids 3809}#) (values (vector 'vector #{p 3808}#) #{ids 3809}#)))) #{tmp 3804}#) (let ((#{x 3813}# #{tmp 3749}#)) (values (vector 'atom (#{strip 458}# #{p 3738}# '(()))) #{ids 3740}#))))))))))))))))) (begin (#{cvt 3715}# #{pattern 3706}# 0 '()))))) (#{build-dispatch-call 3701}# (lambda (#{pvars 3815}# #{exp 3816}# #{y 3817}# #{r 3818}# #{mod 3819}#) (begin (map cdr #{pvars 3815}#) (let ((#{ids 3827}# (map car #{pvars 3815}#))) (begin (let ((#{labels 3831}# (#{gen-labels 364}# #{ids 3827}#)) (#{new-vars 3832}# (map #{gen-var 460}# #{ids 3827}#))) (#{build-application 266}# #f (#{build-primref 290}# #f 'apply) (list (#{build-simple-lambda 284}# #f (map syntax->datum #{ids 3827}#) #f #{new-vars 3832}# '() (#{chi 432}# #{exp 3816}# (#{extend-env 332}# #{labels 3831}# (map (lambda (#{var 3836}# #{level 3837}#) (cons 'syntax (cons #{var 3836}# #{level 3837}#))) #{new-vars 3832}# (map cdr #{pvars 3815}#)) #{r 3818}#) (#{make-binding-wrap 396}# #{ids 3827}# #{labels 3831}# '(())) #{mod 3819}#)) #{y 3817}#)))))))) (#{gen-clause 3703}# (lambda (#{x 3843}# #{keys 3844}# #{clauses 3845}# #{r 3846}# #{pat 3847}# #{fender 3848}# #{exp 3849}# #{mod 3850}#) (call-with-values (lambda () (#{convert-pattern 3699}# #{pat 3847}# #{keys 3844}#)) (lambda (#{p 3859}# #{pvars 3860}#) (if (not (#{distinct-bound-ids? 414}# (map car #{pvars 3860}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat 3847}#) (if (not (and-map (lambda (#{x 3867}#) (not (#{ellipsis? 448}# (car #{x 3867}#)))) #{pvars 3860}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat 3847}#) (begin (let ((#{y 3871}# (#{gen-var 460}# 'tmp))) (#{build-application 266}# #f (#{build-simple-lambda 284}# #f (list 'tmp) #f (list #{y 3871}#) '() (begin (let ((#{y 3875}# (#{build-lexical-reference 272}# 'value #f 'tmp #{y 3871}#))) (#{build-conditional 268}# #f (let ((#{tmp 3878}# #{fender 3848}#)) (let ((#{tmp 3879}# ($sc-dispatch #{tmp 3878}# '#(atom #t)))) (if #{tmp 3879}# (@apply (lambda () #{y 3875}#) #{tmp 3879}#) (let ((#{_ 3881}# #{tmp 3878}#)) (#{build-conditional 268}# #f #{y 3875}# (#{build-dispatch-call 3701}# #{pvars 3860}# #{fender 3848}# #{y 3875}# #{r 3846}# #{mod 3850}#) (#{build-data 292}# #f #f)))))) (#{build-dispatch-call 3701}# #{pvars 3860}# #{exp 3849}# #{y 3875}# #{r 3846}# #{mod 3850}#) (#{gen-syntax-case 3705}# #{x 3843}# #{keys 3844}# #{clauses 3845}# #{r 3846}# #{mod 3850}#))))) (list (if (eq? #{p 3859}# 'any) (#{build-application 266}# #f (#{build-primref 290}# #f 'list) (list #{x 3843}#)) (#{build-application 266}# #f (#{build-primref 290}# #f '$sc-dispatch) (list #{x 3843}# (#{build-data 292}# #f #{p 3859}#)))))))))))))) (#{gen-syntax-case 3705}# (lambda (#{x 3889}# #{keys 3890}# #{clauses 3891}# #{r 3892}# #{mod 3893}#) (if (null? #{clauses 3891}#) (#{build-application 266}# #f (#{build-primref 290}# #f 'syntax-violation) (list (#{build-data 292}# #f #f) (#{build-data 292}# #f "source expression failed to match any pattern") #{x 3889}#)) (let ((#{tmp 3903}# (car #{clauses 3891}#))) (let ((#{tmp 3904}# ($sc-dispatch #{tmp 3903}# '(any any)))) (if #{tmp 3904}# (@apply (lambda (#{pat 3907}# #{exp 3908}#) (if (if (#{id? 344}# #{pat 3907}#) (and-map (lambda (#{x 3911}#) (not (#{free-id=? 408}# #{pat 3907}# #{x 3911}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3905" "i3906")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3894" "i3895" "i3896" "i3897" "i3898")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3704" "i3702" "i3700" "i3698")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{keys 3890}#)) #f) (if (#{free-id=? 408}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3905" "i3906")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3894" "i3895" "i3896" "i3897" "i3898")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3704" "i3702" "i3700" "i3698")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) '#(syntax-object _ ((top) #(ribcage #(pat exp) #((top) (top)) #("i3905" "i3906")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3894" "i3895" "i3896" "i3897" "i3898")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3704" "i3702" "i3700" "i3698")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i392" "i390" "i387" "i386" "i385" "i383" "i382" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i363" "i361" "i360" "i358" "i356" "i354" "i352" "i351" "i350" "i349" "i347" "i346" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i330" "i329" "i327" "i325" "i324" "i321" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i254" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) (#{chi 432}# #{exp 3908}# #{r 3892}# '(()) #{mod 3893}#) (begin (let ((#{labels 3916}# (list (#{gen-label 362}#))) (#{var 3917}# (#{gen-var 460}# #{pat 3907}#))) (#{build-application 266}# #f (#{build-simple-lambda 284}# #f (list (syntax->datum #{pat 3907}#)) #f (list #{var 3917}#) '() (#{chi 432}# #{exp 3908}# (#{extend-env 332}# #{labels 3916}# (list (cons 'syntax (cons #{var 3917}# 0))) #{r 3892}#) (#{make-binding-wrap 396}# (list #{pat 3907}#) #{labels 3916}# '(())) #{mod 3893}#)) (list #{x 3889}#))))) (#{gen-clause 3703}# #{x 3889}# #{keys 3890}# (cdr #{clauses 3891}#) #{r 3892}# #{pat 3907}# #t #{exp 3908}# #{mod 3893}#))) #{tmp 3904}#) (let ((#{tmp 3923}# ($sc-dispatch #{tmp 3903}# '(any any any)))) (if #{tmp 3923}# (@apply (lambda (#{pat 3927}# #{fender 3928}# #{exp 3929}#) (#{gen-clause 3703}# #{x 3889}# #{keys 3890}# (cdr #{clauses 3891}#) #{r 3892}# #{pat 3927}# #{fender 3928}# #{exp 3929}# #{mod 3893}#)) #{tmp 3923}#) (let ((#{_ 3931}# #{tmp 3903}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses 3891}#)))))))))))) (begin (lambda (#{e 3932}# #{r 3933}# #{w 3934}# #{s 3935}# #{mod 3936}#) (begin (let ((#{e 3943}# (#{source-wrap 420}# #{e 3932}# #{w 3934}# #{s 3935}# #{mod 3936}#))) (let ((#{tmp 3944}# #{e 3943}#)) (let ((#{tmp 3945}# ($sc-dispatch #{tmp 3944}# '(_ any each-any . each-any)))) (if #{tmp 3945}# (@apply (lambda (#{val 3949}# #{key 3950}# #{m 3951}#) (if (and-map (lambda (#{x 3952}#) (if (#{id? 344}# #{x 3952}#) (not (#{ellipsis? 448}# #{x 3952}#)) #f)) #{key 3950}#) (begin (let ((#{x 3958}# (#{gen-var 460}# 'tmp))) (#{build-application 266}# #{s 3935}# (#{build-simple-lambda 284}# #f (list 'tmp) #f (list #{x 3958}#) '() (#{gen-syntax-case 3705}# (#{build-lexical-reference 272}# 'value #f 'tmp #{x 3958}#) #{key 3950}# #{m 3951}# #{r 3933}# #{mod 3936}#)) (list (#{chi 432}# #{val 3949}# #{r 3933}# '(()) #{mod 3936}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e 3943}#))) #{tmp 3945}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3944}#)))))))))) (set! macroexpand (lambda* (#{x 3964}# #:optional (#{m 3966}# 'e) (#{esew 3968}# '(eval))) (#{chi-top-sequence 424}# (list #{x 3964}#) '() '((top)) #f #{m 3966}# #{esew 3968}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x 3972}#) (#{nonsymbol-id? 342}# #{x 3972}#))) (set! datum->syntax (lambda (#{id 3974}# #{datum 3975}#) (#{make-syntax-object 305}# #{datum 3975}# (#{syntax-object-wrap 311}# #{id 3974}#) (#{syntax-object-module 313}# #{id 3974}#)))) (set! syntax->datum (lambda (#{x 3978}#) (#{strip 458}# #{x 3978}# '(())))) (set! syntax-source (lambda (#{x 3981}#) (#{source-annotation 322}# #{x 3981}#))) (set! generate-temporaries (lambda (#{ls 3983}#) (begin (begin (let ((#{x 3987}# #{ls 3983}#)) (if (not (list? #{x 3987}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x 3987}#)))) (begin (let ((#{mod 3989}# (cons 'hygiene (module-name (current-module))))) (map (lambda (#{x 3990}#) (#{wrap 418}# (gensym) '((top)) #{mod 3989}#)) #{ls 3983}#)))))) (set! free-identifier=? (lambda (#{x 3994}# #{y 3995}#) (begin (begin (let ((#{x 4000}# #{x 3994}#)) (if (not (#{nonsymbol-id? 342}# #{x 4000}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 4000}#)))) (begin (let ((#{x 4003}# #{y 3995}#)) (if (not (#{nonsymbol-id? 342}# #{x 4003}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 4003}#)))) (#{free-id=? 408}# #{x 3994}# #{y 3995}#)))) (set! bound-identifier=? (lambda (#{x 4004}# #{y 4005}#) (begin (begin (let ((#{x 4010}# #{x 4004}#)) (if (not (#{nonsymbol-id? 342}# #{x 4010}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 4010}#)))) (begin (let ((#{x 4013}# #{y 4005}#)) (if (not (#{nonsymbol-id? 342}# #{x 4013}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 4013}#)))) (#{bound-id=? 410}# #{x 4004}# #{y 4005}#)))) (set! syntax-violation (lambda* (#{who 4014}# #{message 4015}# #{form 4016}# #:optional (#{subform 4020}# #f)) (begin (begin (let ((#{x 4024}# #{who 4014}#)) (if (not (let ((#{x 4025}# #{x 4024}#)) (begin (let ((#{t 4029}# (not #{x 4025}#))) (if #{t 4029}# #{t 4029}# (begin (let ((#{t 4032}# (string? #{x 4025}#))) (if #{t 4032}# #{t 4032}# (symbol? #{x 4025}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x 4024}#)))) (begin (let ((#{x 4036}# #{message 4015}#)) (if (not (string? #{x 4036}#)) (syntax-violation 'syntax-violation "invalid argument" #{x 4036}#)))) (throw 'syntax-error #{who 4014}# #{message 4015}# (#{source-annotation 322}# (begin (let ((#{t 4039}# #{form 4016}#)) (if #{t 4039}# #{t 4039}# #{subform 4020}#)))) (#{strip 458}# #{form 4016}# '(())) (if #{subform 4020}# (#{strip 458}# #{subform 4020}# '(())) #f))))) (letrec* ((#{match-each 4046}# (lambda (#{e 4059}# #{p 4060}# #{w 4061}# #{mod 4062}#) (if (pair? #{e 4059}#) (begin (let ((#{first 4070}# (#{match 4058}# (car #{e 4059}#) #{p 4060}# #{w 4061}# '() #{mod 4062}#))) (if #{first 4070}# (begin (let ((#{rest 4074}# (#{match-each 4046}# (cdr #{e 4059}#) #{p 4060}# #{w 4061}# #{mod 4062}#))) (if #{rest 4074}# (cons #{first 4070}# #{rest 4074}#) #f))) #f))) (if (null? #{e 4059}#) '() (if (#{syntax-object? 307}# #{e 4059}#) (#{match-each 4046}# (#{syntax-object-expression 309}# #{e 4059}#) #{p 4060}# (#{join-wraps 400}# #{w 4061}# (#{syntax-object-wrap 311}# #{e 4059}#)) (#{syntax-object-module 313}# #{e 4059}#)) #f))))) (#{match-each+ 4048}# (lambda (#{e 4082}# #{x-pat 4083}# #{y-pat 4084}# #{z-pat 4085}# #{w 4086}# #{r 4087}# #{mod 4088}#) (letrec* ((#{f 4099}# (lambda (#{e 4100}# #{w 4101}#) (if (pair? #{e 4100}#) (call-with-values (lambda () (#{f 4099}# (cdr #{e 4100}#) #{w 4101}#)) (lambda (#{xr* 4104}# #{y-pat 4105}# #{r 4106}#) (if #{r 4106}# (if (null? #{y-pat 4105}#) (begin (let ((#{xr 4111}# (#{match 4058}# (car #{e 4100}#) #{x-pat 4083}# #{w 4101}# '() #{mod 4088}#))) (if #{xr 4111}# (values (cons #{xr 4111}# #{xr* 4104}#) #{y-pat 4105}# #{r 4106}#) (values #f #f #f)))) (values '() (cdr #{y-pat 4105}#) (#{match 4058}# (car #{e 4100}#) (car #{y-pat 4105}#) #{w 4101}# #{r 4106}# #{mod 4088}#))) (values #f #f #f)))) (if (#{syntax-object? 307}# #{e 4100}#) (#{f 4099}# (#{syntax-object-expression 309}# #{e 4100}#) (#{join-wraps 400}# #{w 4101}# #{e 4100}#)) (values '() #{y-pat 4084}# (#{match 4058}# #{e 4100}# #{z-pat 4085}# #{w 4101}# #{r 4087}# #{mod 4088}#))))))) (begin (#{f 4099}# #{e 4082}# #{w 4086}#))))) (#{match-each-any 4050}# (lambda (#{e 4115}# #{w 4116}# #{mod 4117}#) (if (pair? #{e 4115}#) (begin (let ((#{l 4124}# (#{match-each-any 4050}# (cdr #{e 4115}#) #{w 4116}# #{mod 4117}#))) (if #{l 4124}# (cons (#{wrap 418}# (car #{e 4115}#) #{w 4116}# #{mod 4117}#) #{l 4124}#) #f))) (if (null? #{e 4115}#) '() (if (#{syntax-object? 307}# #{e 4115}#) (#{match-each-any 4050}# (#{syntax-object-expression 309}# #{e 4115}#) (#{join-wraps 400}# #{w 4116}# (#{syntax-object-wrap 311}# #{e 4115}#)) #{mod 4117}#) #f))))) (#{match-empty 4052}# (lambda (#{p 4132}# #{r 4133}#) (if (null? #{p 4132}#) #{r 4133}# (if (eq? #{p 4132}# '_) #{r 4133}# (if (eq? #{p 4132}# 'any) (cons '() #{r 4133}#) (if (pair? #{p 4132}#) (#{match-empty 4052}# (car #{p 4132}#) (#{match-empty 4052}# (cdr #{p 4132}#) #{r 4133}#)) (if (eq? #{p 4132}# 'each-any) (cons '() #{r 4133}#) (begin (let ((#{atom-key 4149}# (vector-ref #{p 4132}# 0))) (if (eqv? #{atom-key 4149}# 'each) (#{match-empty 4052}# (vector-ref #{p 4132}# 1) #{r 4133}#) (if (eqv? #{atom-key 4149}# 'each+) (#{match-empty 4052}# (vector-ref #{p 4132}# 1) (#{match-empty 4052}# (reverse (vector-ref #{p 4132}# 2)) (#{match-empty 4052}# (vector-ref #{p 4132}# 3) #{r 4133}#))) (if (if (eqv? #{atom-key 4149}# 'free-id) #t (eqv? #{atom-key 4149}# 'atom)) #{r 4133}# (if (eqv? #{atom-key 4149}# 'vector) (#{match-empty 4052}# (vector-ref #{p 4132}# 1) #{r 4133}#)))))))))))))) (#{combine 4054}# (lambda (#{r* 4154}# #{r 4155}#) (if (null? (car #{r* 4154}#)) #{r 4155}# (cons (map car #{r* 4154}#) (#{combine 4054}# (map cdr #{r* 4154}#) #{r 4155}#))))) (#{match* 4056}# (lambda (#{e 4158}# #{p 4159}# #{w 4160}# #{r 4161}# #{mod 4162}#) (if (null? #{p 4159}#) (if (null? #{e 4158}#) #{r 4161}# #f) (if (pair? #{p 4159}#) (if (pair? #{e 4158}#) (#{match 4058}# (car #{e 4158}#) (car #{p 4159}#) #{w 4160}# (#{match 4058}# (cdr #{e 4158}#) (cdr #{p 4159}#) #{w 4160}# #{r 4161}# #{mod 4162}#) #{mod 4162}#) #f) (if (eq? #{p 4159}# 'each-any) (begin (let ((#{l 4179}# (#{match-each-any 4050}# #{e 4158}# #{w 4160}# #{mod 4162}#))) (if #{l 4179}# (cons #{l 4179}# #{r 4161}#) #f))) (begin (let ((#{atom-key 4185}# (vector-ref #{p 4159}# 0))) (if (eqv? #{atom-key 4185}# 'each) (if (null? #{e 4158}#) (#{match-empty 4052}# (vector-ref #{p 4159}# 1) #{r 4161}#) (begin (let ((#{l 4188}# (#{match-each 4046}# #{e 4158}# (vector-ref #{p 4159}# 1) #{w 4160}# #{mod 4162}#))) (if #{l 4188}# (letrec* ((#{collect 4193}# (lambda (#{l 4194}#) (if (null? (car #{l 4194}#)) #{r 4161}# (cons (map car #{l 4194}#) (#{collect 4193}# (map cdr #{l 4194}#))))))) (begin (#{collect 4193}# #{l 4188}#))) #f)))) (if (eqv? #{atom-key 4185}# 'each+) (call-with-values (lambda () (#{match-each+ 4048}# #{e 4158}# (vector-ref #{p 4159}# 1) (vector-ref #{p 4159}# 2) (vector-ref #{p 4159}# 3) #{w 4160}# #{r 4161}# #{mod 4162}#)) (lambda (#{xr* 4196}# #{y-pat 4197}# #{r 4198}#) (if #{r 4198}# (if (null? #{y-pat 4197}#) (if (null? #{xr* 4196}#) (#{match-empty 4052}# (vector-ref #{p 4159}# 1) #{r 4198}#) (#{combine 4054}# #{xr* 4196}# #{r 4198}#)) #f) #f))) (if (eqv? #{atom-key 4185}# 'free-id) (if (#{id? 344}# #{e 4158}#) (if (#{free-id=? 408}# (#{wrap 418}# #{e 4158}# #{w 4160}# #{mod 4162}#) (vector-ref #{p 4159}# 1)) #{r 4161}# #f) #f) (if (eqv? #{atom-key 4185}# 'atom) (if (equal? (vector-ref #{p 4159}# 1) (#{strip 458}# #{e 4158}# #{w 4160}#)) #{r 4161}# #f) (if (eqv? #{atom-key 4185}# 'vector) (if (vector? #{e 4158}#) (#{match 4058}# (vector->list #{e 4158}#) (vector-ref #{p 4159}# 1) #{w 4160}# #{r 4161}# #{mod 4162}#) #f))))))))))))) (#{match 4058}# (lambda (#{e 4215}# #{p 4216}# #{w 4217}# #{r 4218}# #{mod 4219}#) (if (not #{r 4218}#) #f (if (eq? #{p 4216}# '_) #{r 4218}# (if (eq? #{p 4216}# 'any) (cons (#{wrap 418}# #{e 4215}# #{w 4217}# #{mod 4219}#) #{r 4218}#) (if (#{syntax-object? 307}# #{e 4215}#) (#{match* 4056}# (#{syntax-object-expression 309}# #{e 4215}#) #{p 4216}# (#{join-wraps 400}# #{w 4217}# (#{syntax-object-wrap 311}# #{e 4215}#)) #{r 4218}# (#{syntax-object-module 313}# #{e 4215}#)) (#{match* 4056}# #{e 4215}# #{p 4216}# #{w 4217}# #{r 4218}# #{mod 4219}#)))))))) (begin (set! $sc-dispatch (lambda (#{e 4234}# #{p 4235}#) (if (eq? #{p 4235}# 'any) (list #{e 4234}#) (if (eq? #{p 4235}# '_) '() (if (#{syntax-object? 307}# #{e 4234}#) (#{match* 4056}# (#{syntax-object-expression 309}# #{e 4234}#) #{p 4235}# (#{syntax-object-wrap 311}# #{e 4234}#) '() (#{syntax-object-module 313}# #{e 4234}#)) (#{match* 4056}# #{e 4234}# #{p 4235}# '(()) '() #f))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x 4246}#) (let ((#{tmp 4248}# #{x 4246}#)) (let ((#{tmp 4249}# ($sc-dispatch #{tmp 4248}# '(_ () any . each-any)))) (if #{tmp 4249}# (@apply (lambda (#{e1 4252}# #{e2 4253}#) (cons '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4250" "i4251")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4247"))) (hygiene guile)) (cons '() (cons #{e1 4252}# #{e2 4253}#)))) #{tmp 4249}#) (let ((#{tmp 4255}# ($sc-dispatch #{tmp 4248}# '(_ ((any any)) any . each-any)))) (if #{tmp 4255}# (@apply (lambda (#{out 4260}# #{in 4261}# #{e1 4262}# #{e2 4263}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4247"))) (hygiene guile)) #{in 4261}# '() (list #{out 4260}# (cons '#(syntax-object let ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4247"))) (hygiene guile)) (cons '() (cons #{e1 4262}# #{e2 4263}#)))))) #{tmp 4255}#) (let ((#{tmp 4265}# ($sc-dispatch #{tmp 4248}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 4265}# (@apply (lambda (#{out 4270}# #{in 4271}# #{e1 4272}# #{e2 4273}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4266" "i4267" "i4268" "i4269")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4247"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4266" "i4267" "i4268" "i4269")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4247"))) (hygiene guile)) #{in 4271}#) '() (list #{out 4270}# (cons '#(syntax-object let ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4266" "i4267" "i4268" "i4269")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4247"))) (hygiene guile)) (cons '() (cons #{e1 4272}# #{e2 4273}#)))))) #{tmp 4265}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4248}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x 4277}#) (let ((#{tmp 4279}# #{x 4277}#)) (let ((#{tmp 4280}# ($sc-dispatch #{tmp 4279}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp 4280}# (@apply (lambda (#{k 4285}# #{keyword 4286}# #{pattern 4287}# #{template 4288}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) #{pattern 4287}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) (cons #{k 4285}# (map (lambda (#{tmp 4292}# #{tmp 4291}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) #{tmp 4291}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4281" "i4282" "i4283" "i4284")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) #{tmp 4292}#))) #{template 4288}# #{pattern 4287}#)))))) #{tmp 4280}#) (let ((#{tmp 4293}# ($sc-dispatch #{tmp 4279}# '(_ each-any any . #(each ((any . any) any)))))) (if (if #{tmp 4293}# (@apply (lambda (#{k 4299}# #{docstring 4300}# #{keyword 4301}# #{pattern 4302}# #{template 4303}#) (string? (syntax->datum #{docstring 4300}#))) #{tmp 4293}#) #f) (@apply (lambda (#{k 4309}# #{docstring 4310}# #{keyword 4311}# #{pattern 4312}# #{template 4313}#) (list '#(syntax-object lambda ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile))) #{docstring 4310}# (vector '(#(syntax-object macro-type ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) #{pattern 4312}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) (cons #{k 4309}# (map (lambda (#{tmp 4317}# #{tmp 4316}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) #{tmp 4316}#) (list '#(syntax-object syntax ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4278"))) (hygiene guile)) #{tmp 4317}#))) #{template 4313}# #{pattern 4312}#)))))) #{tmp 4293}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4279}#))))))))) (define define-syntax-rule (make-syntax-transformer 'define-syntax-rule 'macro (lambda (#{x 4318}#) (let ((#{tmp 4320}# #{x 4318}#)) (let ((#{tmp 4321}# ($sc-dispatch #{tmp 4320}# '(_ (any . any) any)))) (if #{tmp 4321}# (@apply (lambda (#{name 4325}# #{pattern 4326}# #{template 4327}#) (list '#(syntax-object define-syntax ((top) #(ribcage #(name pattern template) #((top) (top) (top)) #("i4322" "i4323" "i4324")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4319"))) (hygiene guile)) #{name 4325}# (list '#(syntax-object syntax-rules ((top) #(ribcage #(name pattern template) #((top) (top) (top)) #("i4322" "i4323" "i4324")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4319"))) (hygiene guile)) '() (list (cons '#(syntax-object _ ((top) #(ribcage #(name pattern template) #((top) (top) (top)) #("i4322" "i4323" "i4324")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4319"))) (hygiene guile)) #{pattern 4326}#) #{template 4327}#)))) #{tmp 4321}#) (let ((#{tmp 4328}# ($sc-dispatch #{tmp 4320}# '(_ (any . any) any any)))) (if (if #{tmp 4328}# (@apply (lambda (#{name 4333}# #{pattern 4334}# #{docstring 4335}# #{template 4336}#) (string? (syntax->datum #{docstring 4335}#))) #{tmp 4328}#) #f) (@apply (lambda (#{name 4341}# #{pattern 4342}# #{docstring 4343}# #{template 4344}#) (list '#(syntax-object define-syntax ((top) #(ribcage #(name pattern docstring template) #((top) (top) (top) (top)) #("i4337" "i4338" "i4339" "i4340")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4319"))) (hygiene guile)) #{name 4341}# (list '#(syntax-object syntax-rules ((top) #(ribcage #(name pattern docstring template) #((top) (top) (top) (top)) #("i4337" "i4338" "i4339" "i4340")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4319"))) (hygiene guile)) '() #{docstring 4343}# (list (cons '#(syntax-object _ ((top) #(ribcage #(name pattern docstring template) #((top) (top) (top) (top)) #("i4337" "i4338" "i4339" "i4340")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4319"))) (hygiene guile)) #{pattern 4342}#) #{template 4344}#)))) #{tmp 4328}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4320}#))))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x 4345}#) (let ((#{tmp 4347}# #{x 4345}#)) (let ((#{tmp 4348}# ($sc-dispatch #{tmp 4347}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp 4348}# (@apply (lambda (#{let* 4354}# #{x 4355}# #{v 4356}# #{e1 4357}# #{e2 4358}#) (and-map identifier? #{x 4355}#)) #{tmp 4348}#) #f) (@apply (lambda (#{let* 4365}# #{x 4366}# #{v 4367}# #{e1 4368}# #{e2 4369}#) (letrec* ((#{f 4372}# (lambda (#{bindings 4373}#) (if (null? #{bindings 4373}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4370" "i4371")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4360" "i4361" "i4362" "i4363" "i4364")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4346"))) (hygiene guile)) (cons '() (cons #{e1 4368}# #{e2 4369}#))) (let ((#{tmp 4378}# (list (#{f 4372}# (cdr #{bindings 4373}#)) (car #{bindings 4373}#)))) (let ((#{tmp 4379}# ($sc-dispatch #{tmp 4378}# '(any any)))) (if #{tmp 4379}# (@apply (lambda (#{body 4382}# #{binding 4383}#) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body binding) #((top) (top)) #("i4380" "i4381")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4370" "i4371")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4360" "i4361" "i4362" "i4363" "i4364")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4346"))) (hygiene guile)) (list #{binding 4383}#) #{body 4382}#)) #{tmp 4379}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4378}#)))))))) (begin (#{f 4372}# (map list #{x 4366}# #{v 4367}#))))) #{tmp 4348}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4347}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x 4384}#) (let ((#{tmp 4386}# #{orig-x 4384}#)) (let ((#{tmp 4387}# ($sc-dispatch #{tmp 4386}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp 4387}# (@apply (lambda (#{var 4394}# #{init 4395}# #{step 4396}# #{e0 4397}# #{e1 4398}# #{c 4399}#) (let ((#{tmp 4401}# (map (lambda (#{v 4422}# #{s 4423}#) (let ((#{tmp 4426}# #{s 4423}#)) (let ((#{tmp 4427}# ($sc-dispatch #{tmp 4426}# '()))) (if #{tmp 4427}# (@apply (lambda () #{v 4422}#) #{tmp 4427}#) (let ((#{tmp 4428}# ($sc-dispatch #{tmp 4426}# '(any)))) (if #{tmp 4428}# (@apply (lambda (#{e 4430}#) #{e 4430}#) #{tmp 4428}#) (let ((#{_ 4432}# #{tmp 4426}#)) (syntax-violation 'do "bad step expression" #{orig-x 4384}# #{s 4423}#)))))))) #{var 4394}# #{step 4396}#))) (let ((#{tmp 4402}# ($sc-dispatch #{tmp 4401}# 'each-any))) (if #{tmp 4402}# (@apply (lambda (#{step 4404}#) (let ((#{tmp 4405}# #{e1 4398}#)) (let ((#{tmp 4406}# ($sc-dispatch #{tmp 4405}# '()))) (if #{tmp 4406}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) (map list #{var 4394}# #{init 4395}#) (list '#(syntax-object if ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) #{e0 4397}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) (append #{c 4399}# (list (cons '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) #{step 4404}#))))))) #{tmp 4406}#) (let ((#{tmp 4411}# ($sc-dispatch #{tmp 4405}# '(any . each-any)))) (if #{tmp 4411}# (@apply (lambda (#{e1 4414}# #{e2 4415}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) (map list #{var 4394}# #{init 4395}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) #{e0 4397}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) (cons #{e1 4414}# #{e2 4415}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) (append #{c 4399}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4403")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4388" "i4389" "i4390" "i4391" "i4392" "i4393")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4385"))) (hygiene guile)) #{step 4404}#))))))) #{tmp 4411}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4405}#))))))) #{tmp 4402}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4401}#))))) #{tmp 4387}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4386}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasi 4436}# (lambda (#{p 4449}# #{lev 4450}#) (let ((#{tmp 4453}# #{p 4449}#)) (let ((#{tmp 4454}# ($sc-dispatch #{tmp 4453}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) any)))) (if #{tmp 4454}# (@apply (lambda (#{p 4456}#) (if (= #{lev 4450}# 0) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{p 4456}#) (#{quasicons 4440}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) (#{quasi 4436}# (list #{p 4456}#) (#{1-}# #{lev 4450}#))))) #{tmp 4454}#) (let ((#{tmp 4457}# ($sc-dispatch #{tmp 4453}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) any)))) (if #{tmp 4457}# (@apply (lambda (#{p 4459}#) (#{quasicons 4440}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4458")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4458")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) (#{quasi 4436}# (list #{p 4459}#) (#{1+}# #{lev 4450}#)))) #{tmp 4457}#) (let ((#{tmp 4460}# ($sc-dispatch #{tmp 4453}# '(any . any)))) (if #{tmp 4460}# (@apply (lambda (#{p 4463}# #{q 4464}#) (let ((#{tmp 4465}# #{p 4463}#)) (let ((#{tmp 4466}# ($sc-dispatch #{tmp 4465}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) . each-any)))) (if #{tmp 4466}# (@apply (lambda (#{p 4468}#) (if (= #{lev 4450}# 0) (#{quasilist* 4444}# (map (lambda (#{tmp 4469}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4467")) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{tmp 4469}#)) #{p 4468}#) (#{quasi 4436}# #{q 4464}# #{lev 4450}#)) (#{quasicons 4440}# (#{quasicons 4440}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4467")) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4467")) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) (#{quasi 4436}# #{p 4468}# (#{1-}# #{lev 4450}#))) (#{quasi 4436}# #{q 4464}# #{lev 4450}#)))) #{tmp 4466}#) (let ((#{tmp 4471}# ($sc-dispatch #{tmp 4465}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) . each-any)))) (if #{tmp 4471}# (@apply (lambda (#{p 4473}#) (if (= #{lev 4450}# 0) (#{quasiappend 4442}# (map (lambda (#{tmp 4474}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4472")) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{tmp 4474}#)) #{p 4473}#) (#{quasi 4436}# #{q 4464}# #{lev 4450}#)) (#{quasicons 4440}# (#{quasicons 4440}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4472")) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4472")) #(ribcage #(p q) #((top) (top)) #("i4461" "i4462")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) (#{quasi 4436}# #{p 4473}# (#{1-}# #{lev 4450}#))) (#{quasi 4436}# #{q 4464}# #{lev 4450}#)))) #{tmp 4471}#) (let ((#{_ 4477}# #{tmp 4465}#)) (#{quasicons 4440}# (#{quasi 4436}# #{p 4463}# #{lev 4450}#) (#{quasi 4436}# #{q 4464}# #{lev 4450}#))))))))) #{tmp 4460}#) (let ((#{tmp 4478}# ($sc-dispatch #{tmp 4453}# '#(vector each-any)))) (if #{tmp 4478}# (@apply (lambda (#{x 4480}#) (#{quasivector 4446}# (#{vquasi 4438}# #{x 4480}# #{lev 4450}#))) #{tmp 4478}#) (let ((#{p 4483}# #{tmp 4453}#)) (list '#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4482")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4451" "i4452")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{p 4483}#))))))))))))) (#{vquasi 4438}# (lambda (#{p 4484}# #{lev 4485}#) (let ((#{tmp 4488}# #{p 4484}#)) (let ((#{tmp 4489}# ($sc-dispatch #{tmp 4488}# '(any . any)))) (if #{tmp 4489}# (@apply (lambda (#{p 4492}# #{q 4493}#) (let ((#{tmp 4494}# #{p 4492}#)) (let ((#{tmp 4495}# ($sc-dispatch #{tmp 4494}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) . each-any)))) (if #{tmp 4495}# (@apply (lambda (#{p 4497}#) (if (= #{lev 4485}# 0) (#{quasilist* 4444}# (map (lambda (#{tmp 4498}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4496")) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{tmp 4498}#)) #{p 4497}#) (#{vquasi 4438}# #{q 4493}# #{lev 4485}#)) (#{quasicons 4440}# (#{quasicons 4440}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4496")) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4496")) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) (#{quasi 4436}# #{p 4497}# (#{1-}# #{lev 4485}#))) (#{vquasi 4438}# #{q 4493}# #{lev 4485}#)))) #{tmp 4495}#) (let ((#{tmp 4500}# ($sc-dispatch #{tmp 4494}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) . each-any)))) (if #{tmp 4500}# (@apply (lambda (#{p 4502}#) (if (= #{lev 4485}# 0) (#{quasiappend 4442}# (map (lambda (#{tmp 4503}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4501")) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{tmp 4503}#)) #{p 4502}#) (#{vquasi 4438}# #{q 4493}# #{lev 4485}#)) (#{quasicons 4440}# (#{quasicons 4440}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4501")) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4501")) #(ribcage #(p q) #((top) (top)) #("i4490" "i4491")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile))) (#{quasi 4436}# #{p 4502}# (#{1-}# #{lev 4485}#))) (#{vquasi 4438}# #{q 4493}# #{lev 4485}#)))) #{tmp 4500}#) (let ((#{_ 4506}# #{tmp 4494}#)) (#{quasicons 4440}# (#{quasi 4436}# #{p 4492}# #{lev 4485}#) (#{vquasi 4438}# #{q 4493}# #{lev 4485}#))))))))) #{tmp 4489}#) (let ((#{tmp 4507}# ($sc-dispatch #{tmp 4488}# '()))) (if #{tmp 4507}# (@apply (lambda () '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4486" "i4487")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) ())) #{tmp 4507}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4488}#)))))))) (#{quasicons 4440}# (lambda (#{x 4508}# #{y 4509}#) (let ((#{tmp 4513}# (list #{x 4508}# #{y 4509}#))) (let ((#{tmp 4514}# ($sc-dispatch #{tmp 4513}# '(any any)))) (if #{tmp 4514}# (@apply (lambda (#{x 4517}# #{y 4518}#) (let ((#{tmp 4519}# #{y 4518}#)) (let ((#{tmp 4520}# ($sc-dispatch #{tmp 4519}# '(#(atom "quote") any)))) (if #{tmp 4520}# (@apply (lambda (#{dy 4522}#) (let ((#{tmp 4523}# #{x 4517}#)) (let ((#{tmp 4524}# ($sc-dispatch #{tmp 4523}# '(#(atom "quote") any)))) (if #{tmp 4524}# (@apply (lambda (#{dx 4526}#) (list '#(syntax-object "quote" ((top) #(ribcage #(dx) #((top)) #("i4525")) #(ribcage #(dy) #((top)) #("i4521")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4515" "i4516")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4510" "i4511")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) (cons #{dx 4526}# #{dy 4522}#))) #{tmp 4524}#) (let ((#{_ 4528}# #{tmp 4523}#)) (if (null? #{dy 4522}#) (list '#(syntax-object "list" ((top) #(ribcage #(_) #((top)) #("i4527")) #(ribcage #(dy) #((top)) #("i4521")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4515" "i4516")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4510" "i4511")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{x 4517}#) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4527")) #(ribcage #(dy) #((top)) #("i4521")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4515" "i4516")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4510" "i4511")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{x 4517}# #{y 4518}#))))))) #{tmp 4520}#) (let ((#{tmp 4529}# ($sc-dispatch #{tmp 4519}# '(#(atom "list") . any)))) (if #{tmp 4529}# (@apply (lambda (#{stuff 4531}#) (cons '#(syntax-object "list" ((top) #(ribcage #(stuff) #((top)) #("i4530")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4515" "i4516")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4510" "i4511")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) (cons #{x 4517}# #{stuff 4531}#))) #{tmp 4529}#) (let ((#{tmp 4532}# ($sc-dispatch #{tmp 4519}# '(#(atom "list*") . any)))) (if #{tmp 4532}# (@apply (lambda (#{stuff 4534}#) (cons '#(syntax-object "list*" ((top) #(ribcage #(stuff) #((top)) #("i4533")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4515" "i4516")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4510" "i4511")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) (cons #{x 4517}# #{stuff 4534}#))) #{tmp 4532}#) (let ((#{_ 4536}# #{tmp 4519}#)) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4535")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4515" "i4516")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4510" "i4511")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{x 4517}# #{y 4518}#)))))))))) #{tmp 4514}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4513}#)))))) (#{quasiappend 4442}# (lambda (#{x 4537}# #{y 4538}#) (let ((#{tmp 4541}# #{y 4538}#)) (let ((#{tmp 4542}# ($sc-dispatch #{tmp 4541}# '(#(atom "quote") ())))) (if #{tmp 4542}# (@apply (lambda () (if (null? #{x 4537}#) '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4539" "i4540")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) ()) (if (null? (cdr #{x 4537}#)) (car #{x 4537}#) (let ((#{tmp 4549}# #{x 4537}#)) (let ((#{tmp 4550}# ($sc-dispatch #{tmp 4549}# 'each-any))) (if #{tmp 4550}# (@apply (lambda (#{p 4552}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p) #((top)) #("i4551")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4539" "i4540")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{p 4552}#)) #{tmp 4550}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4549}#))))))) #{tmp 4542}#) (let ((#{_ 4555}# #{tmp 4541}#)) (if (null? #{x 4537}#) #{y 4538}# (let ((#{tmp 4560}# (list #{x 4537}# #{y 4538}#))) (let ((#{tmp 4561}# ($sc-dispatch #{tmp 4560}# '(each-any any)))) (if #{tmp 4561}# (@apply (lambda (#{p 4564}# #{y 4565}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p y) #((top) (top)) #("i4562" "i4563")) #(ribcage #(_) #((top)) #("i4554")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4539" "i4540")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) (append #{p 4564}# (list #{y 4565}#)))) #{tmp 4561}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4560}#))))))))))) (#{quasilist* 4444}# (lambda (#{x 4567}# #{y 4568}#) (letrec* ((#{f 4573}# (lambda (#{x 4574}#) (if (null? #{x 4574}#) #{y 4568}# (#{quasicons 4440}# (car #{x 4574}#) (#{f 4573}# (cdr #{x 4574}#))))))) (begin (#{f 4573}# #{x 4567}#))))) (#{quasivector 4446}# (lambda (#{x 4575}#) (let ((#{tmp 4577}# #{x 4575}#)) (let ((#{tmp 4578}# ($sc-dispatch #{tmp 4577}# '(#(atom "quote") each-any)))) (if #{tmp 4578}# (@apply (lambda (#{x 4580}#) (list '#(syntax-object "quote" ((top) #(ribcage #(x) #((top)) #("i4579")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4576")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) (list->vector #{x 4580}#))) #{tmp 4578}#) (let ((#{_ 4583}# #{tmp 4577}#)) (letrec* ((#{f 4587}# (lambda (#{y 4588}# #{k 4589}#) (let ((#{tmp 4600}# #{y 4588}#)) (let ((#{tmp 4601}# ($sc-dispatch #{tmp 4600}# '(#(atom "quote") each-any)))) (if #{tmp 4601}# (@apply (lambda (#{y 4603}#) (#{k 4589}# (map (lambda (#{tmp 4604}#) (list '#(syntax-object "quote" ((top) #(ribcage #(y) #((top)) #("i4602")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4584" "i4585" "i4586")) #(ribcage #(_) #((top)) #("i4582")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4576")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{tmp 4604}#)) #{y 4603}#))) #{tmp 4601}#) (let ((#{tmp 4605}# ($sc-dispatch #{tmp 4600}# '(#(atom "list") . each-any)))) (if #{tmp 4605}# (@apply (lambda (#{y 4607}#) (#{k 4589}# #{y 4607}#)) #{tmp 4605}#) (let ((#{tmp 4609}# ($sc-dispatch #{tmp 4600}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4609}# (@apply (lambda (#{y 4612}# #{z 4613}#) (#{f 4587}# #{z 4613}# (lambda (#{ls 4614}#) (#{k 4589}# (append #{y 4612}# #{ls 4614}#))))) #{tmp 4609}#) (let ((#{else 4618}# #{tmp 4600}#)) (let ((#{tmp 4622}# #{x 4575}#)) (let ((#{ g4619 4624}# #{tmp 4622}#)) (list '#(syntax-object "list->vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4619}#) #((m4620 top)) #("i4623")) #(ribcage #(else) #((top)) #("i4617")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4584" "i4585" "i4586")) #(ribcage #(_) #((top)) #("i4582")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4576")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{ g4619 4624}#)))))))))))))) (begin (#{f 4587}# #{x 4575}# (lambda (#{ls 4590}#) (let ((#{tmp 4595}# #{ls 4590}#)) (let ((#{tmp 4596}# ($sc-dispatch #{tmp 4595}# 'each-any))) (if #{tmp 4596}# (@apply (lambda (#{ g4592 4598}#) (cons '#(syntax-object "vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4592}#) #((m4593 top)) #("i4597")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ls) #((top)) #("i4591")) #(ribcage #(_) #((top)) #("i4582")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4576")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{ g4592 4598}#)) #{tmp 4596}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4595}#)))))))))))))) (#{emit 4448}# (lambda (#{x 4625}#) (let ((#{tmp 4627}# #{x 4625}#)) (let ((#{tmp 4628}# ($sc-dispatch #{tmp 4627}# '(#(atom "quote") any)))) (if #{tmp 4628}# (@apply (lambda (#{x 4630}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4629")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4626")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{x 4630}#)) #{tmp 4628}#) (let ((#{tmp 4631}# ($sc-dispatch #{tmp 4627}# '(#(atom "list") . each-any)))) (if #{tmp 4631}# (@apply (lambda (#{x 4633}#) (let ((#{tmp 4637}# (map #{emit 4448}# #{x 4633}#))) (let ((#{tmp 4638}# ($sc-dispatch #{tmp 4637}# 'each-any))) (if #{tmp 4638}# (@apply (lambda (#{ g4634 4640}#) (cons '#(syntax-object list ((top) #(ribcage () () ()) #(ribcage #(#{ g4634}#) #((m4635 top)) #("i4639")) #(ribcage #(x) #((top)) #("i4632")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4626")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{ g4634 4640}#)) #{tmp 4638}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4637}#))))) #{tmp 4631}#) (let ((#{tmp 4643}# ($sc-dispatch #{tmp 4627}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4643}# (@apply (lambda (#{x 4646}# #{y 4647}#) (letrec* ((#{f 4650}# (lambda (#{x* 4651}#) (if (null? #{x* 4651}#) (#{emit 4448}# #{y 4647}#) (let ((#{tmp 4657}# (list (#{emit 4448}# (car #{x* 4651}#)) (#{f 4650}# (cdr #{x* 4651}#))))) (let ((#{tmp 4658}# ($sc-dispatch #{tmp 4657}# '(any any)))) (if #{tmp 4658}# (@apply (lambda (#{ g4654 4661}# #{ g4653 4662}#) (list '#(syntax-object cons ((top) #(ribcage () () ()) #(ribcage #(#{ g4654}# #{ g4653}#) #((m4655 top) (m4655 top)) #("i4659" "i4660")) #(ribcage () () ()) #(ribcage #(f x*) #((top) (top)) #("i4648" "i4649")) #(ribcage #(x y) #((top) (top)) #("i4644" "i4645")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4626")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{ g4654 4661}# #{ g4653 4662}#)) #{tmp 4658}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4657}#)))))))) (begin (#{f 4650}# #{x 4646}#)))) #{tmp 4643}#) (let ((#{tmp 4663}# ($sc-dispatch #{tmp 4627}# '(#(atom "append") . each-any)))) (if #{tmp 4663}# (@apply (lambda (#{x 4665}#) (let ((#{tmp 4669}# (map #{emit 4448}# #{x 4665}#))) (let ((#{tmp 4670}# ($sc-dispatch #{tmp 4669}# 'each-any))) (if #{tmp 4670}# (@apply (lambda (#{ g4666 4672}#) (cons '#(syntax-object append ((top) #(ribcage () () ()) #(ribcage #(#{ g4666}#) #((m4667 top)) #("i4671")) #(ribcage #(x) #((top)) #("i4664")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4626")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{ g4666 4672}#)) #{tmp 4670}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4669}#))))) #{tmp 4663}#) (let ((#{tmp 4675}# ($sc-dispatch #{tmp 4627}# '(#(atom "vector") . each-any)))) (if #{tmp 4675}# (@apply (lambda (#{x 4677}#) (let ((#{tmp 4681}# (map #{emit 4448}# #{x 4677}#))) (let ((#{tmp 4682}# ($sc-dispatch #{tmp 4681}# 'each-any))) (if #{tmp 4682}# (@apply (lambda (#{ g4678 4684}#) (cons '#(syntax-object vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4678}#) #((m4679 top)) #("i4683")) #(ribcage #(x) #((top)) #("i4676")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4626")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{ g4678 4684}#)) #{tmp 4682}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4681}#))))) #{tmp 4675}#) (let ((#{tmp 4687}# ($sc-dispatch #{tmp 4627}# '(#(atom "list->vector") any)))) (if #{tmp 4687}# (@apply (lambda (#{x 4689}#) (let ((#{tmp 4693}# (#{emit 4448}# #{x 4689}#))) (let ((#{ g4690 4695}# #{tmp 4693}#)) (list '#(syntax-object list->vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4690}#) #((m4691 top)) #("i4694")) #(ribcage #(x) #((top)) #("i4688")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4626")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4447" "i4445" "i4443" "i4441" "i4439" "i4437" "i4435"))) (hygiene guile)) #{ g4690 4695}#)))) #{tmp 4687}#) (let ((#{tmp 4696}# ($sc-dispatch #{tmp 4627}# '(#(atom "value") any)))) (if #{tmp 4696}# (@apply (lambda (#{x 4698}#) #{x 4698}#) #{tmp 4696}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4627}#))))))))))))))))))) (begin (lambda (#{x 4699}#) (let ((#{tmp 4701}# #{x 4699}#)) (let ((#{tmp 4702}# ($sc-dispatch #{tmp 4701}# '(_ any)))) (if #{tmp 4702}# (@apply (lambda (#{e 4704}#) (#{emit 4448}# (#{quasi 4436}# #{e 4704}# 0))) #{tmp 4702}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4701}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x 4705}#) (letrec* ((#{read-file 4708}# (lambda (#{fn 4709}# #{k 4710}#) (begin (let ((#{p 4714}# (open-input-file #{fn 4709}#))) (letrec* ((#{f 4718}# (lambda (#{x 4719}# #{result 4720}#) (if (eof-object? #{x 4719}#) (begin (close-input-port #{p 4714}#) (reverse #{result 4720}#)) (#{f 4718}# (read #{p 4714}#) (cons (datum->syntax #{k 4710}# #{x 4719}#) #{result 4720}#)))))) (begin (#{f 4718}# (read #{p 4714}#) '())))))))) (begin (let ((#{tmp 4721}# #{x 4705}#)) (let ((#{tmp 4722}# ($sc-dispatch #{tmp 4721}# '(any any)))) (if #{tmp 4722}# (@apply (lambda (#{k 4725}# #{filename 4726}#) (begin (let ((#{fn 4728}# (syntax->datum #{filename 4726}#))) (let ((#{tmp 4730}# (#{read-file 4708}# #{fn 4728}# #{filename 4726}#))) (let ((#{tmp 4731}# ($sc-dispatch #{tmp 4730}# 'each-any))) (if #{tmp 4731}# (@apply (lambda (#{exp 4733}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(exp) #((top)) #("i4732")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4727")) #(ribcage #(k filename) #((top) (top)) #("i4723" "i4724")) #(ribcage (read-file) ((top)) ("i4707")) #(ribcage #(x) #((top)) #("i4706"))) (hygiene guile)) #{exp 4733}#)) #{tmp 4731}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4730}#))))))) #{tmp 4722}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4721}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x 4735}#) (let ((#{tmp 4737}# #{x 4735}#)) (let ((#{tmp 4738}# ($sc-dispatch #{tmp 4737}# '(any any)))) (if #{tmp 4738}# (@apply (lambda (#{k 4741}# #{filename 4742}#) (begin (let ((#{fn 4744}# (syntax->datum #{filename 4742}#))) (let ((#{tmp 4746}# (datum->syntax #{filename 4742}# (begin (let ((#{t 4751}# (%search-load-path #{fn 4744}#))) (if #{t 4751}# #{t 4751}# (syntax-violation 'include-from-path "file not found in path" #{x 4735}# #{filename 4742}#))))))) (let ((#{fn 4748}# #{tmp 4746}#)) (list '#(syntax-object include ((top) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4747")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4743")) #(ribcage #(k filename) #((top) (top)) #("i4739" "i4740")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4736"))) (hygiene guile)) #{fn 4748}#)))))) #{tmp 4738}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4737}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x 4753}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x 4753}#)))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x 4755}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x 4755}#)))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x 4757}#) (let ((#{tmp 4759}# #{x 4757}#)) (let ((#{tmp 4760}# ($sc-dispatch #{tmp 4759}# '(_ any any . each-any)))) (if #{tmp 4760}# (@apply (lambda (#{e 4764}# #{m1 4765}# #{m2 4766}#) (let ((#{tmp 4768}# (letrec* ((#{f 4774}# (lambda (#{clause 4775}# #{clauses 4776}#) (if (null? #{clauses 4776}#) (let ((#{tmp 4778}# #{clause 4775}#)) (let ((#{tmp 4779}# ($sc-dispatch #{tmp 4778}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile))) any . each-any)))) (if #{tmp 4779}# (@apply (lambda (#{e1 4782}# #{e2 4783}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4780" "i4781")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (cons #{e1 4782}# #{e2 4783}#))) #{tmp 4779}#) (let ((#{tmp 4785}# ($sc-dispatch #{tmp 4778}# '(each-any any . each-any)))) (if #{tmp 4785}# (@apply (lambda (#{k 4789}# #{e1 4790}# #{e2 4791}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4786" "i4787" "i4788")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4786" "i4787" "i4788")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4786" "i4787" "i4788")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4786" "i4787" "i4788")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) #{k 4789}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4786" "i4787" "i4788")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (cons #{e1 4790}# #{e2 4791}#)))) #{tmp 4785}#) (let ((#{_ 4795}# #{tmp 4778}#)) (syntax-violation 'case "bad clause" #{x 4757}# #{clause 4775}#))))))) (let ((#{tmp 4797}# (#{f 4774}# (car #{clauses 4776}#) (cdr #{clauses 4776}#)))) (let ((#{rest 4799}# #{tmp 4797}#)) (let ((#{tmp 4800}# #{clause 4775}#)) (let ((#{tmp 4801}# ($sc-dispatch #{tmp 4800}# '(each-any any . each-any)))) (if #{tmp 4801}# (@apply (lambda (#{k 4805}# #{e1 4806}# #{e2 4807}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4802" "i4803" "i4804")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4798")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4802" "i4803" "i4804")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4798")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4802" "i4803" "i4804")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4798")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4802" "i4803" "i4804")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4798")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) #{k 4805}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4802" "i4803" "i4804")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4798")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4771" "i4772" "i4773")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (cons #{e1 4806}# #{e2 4807}#)) #{rest 4799}#)) #{tmp 4801}#) (let ((#{_ 4811}# #{tmp 4800}#)) (syntax-violation 'case "bad clause" #{x 4757}# #{clause 4775}#))))))))))) (begin (#{f 4774}# #{m1 4765}# #{m2 4766}#))))) (let ((#{body 4770}# #{tmp 4768}#)) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4769")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4769")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4758"))) (hygiene guile)) #{e 4764}#)) #{body 4770}#)))) #{tmp 4760}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4759}#))))))) (define make-variable-transformer (lambda (#{proc 4812}#) (if (procedure? #{proc 4812}#) (begin (letrec* ((#{trans 4815}# (lambda (#{x 4816}#) (#{proc 4812}# #{x 4816}#)))) (begin (set-procedure-property! #{trans 4815}# 'variable-transformer #t) #{trans 4815}#))) (error "variable transformer not a procedure" #{proc 4812}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x 4818}#) (let ((#{tmp 4820}# #{x 4818}#)) (let ((#{tmp 4821}# ($sc-dispatch #{tmp 4820}# '(_ any)))) (if #{tmp 4821}# (@apply (lambda (#{e 4823}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #{e 4823}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) (cons #{e 4823}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4822")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile))))))))) #{tmp 4821}#) (let ((#{tmp 4824}# ($sc-dispatch #{tmp 4820}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile))) any any) any))))) (if (if #{tmp 4824}# (@apply (lambda (#{id 4830}# #{exp1 4831}# #{var 4832}# #{val 4833}# #{exp2 4834}#) (if (identifier? #{id 4830}#) (identifier? #{var 4832}#) #f)) #{tmp 4824}#) #f) (@apply (lambda (#{id 4842}# #{exp1 4843}# #{var 4844}# #{val 4845}# #{exp2 4846}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #{var 4844}# #{val 4845}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #{exp2 4846}#)) (list (cons #{id 4842}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) (cons #{exp1 4843}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)))))) (list #{id 4842}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #{id 4842}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4837" "i4838" "i4839" "i4840" "i4841")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4819"))) (hygiene guile)) #{exp1 4843}#)))))) #{tmp 4824}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4820}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x 4847}#) (let ((#{tmp 4849}# #{x 4847}#)) (let ((#{tmp 4850}# ($sc-dispatch #{tmp 4849}# '(_ (any . any) any . each-any)))) (if #{tmp 4850}# (@apply (lambda (#{id 4855}# #{args 4856}# #{b0 4857}# #{b1 4858}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4851" "i4852" "i4853" "i4854")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4848"))) (hygiene guile)) #{id 4855}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4851" "i4852" "i4853" "i4854")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4848"))) (hygiene guile)) (cons #{args 4856}# (cons #{b0 4857}# #{b1 4858}#))))) #{tmp 4850}#) (let ((#{tmp 4860}# ($sc-dispatch #{tmp 4849}# '(_ any any)))) (if (if #{tmp 4860}# (@apply (lambda (#{id 4863}# #{val 4864}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4861" "i4862")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4848"))) (hygiene guile)))) #{tmp 4860}#) #f) (@apply (lambda (#{id 4867}# #{val 4868}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4865" "i4866")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4848"))) (hygiene guile)) #{id 4867}# #{val 4868}#)) #{tmp 4860}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4849}#)))))))))