(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec* ((#{and-map* 38}# (lambda (#{f 202}# #{first 203}# . #{rest 204}#) (begin (let ((#{t 210}# (null? #{first 203}#))) (if #{t 210}# #{t 210}# (if (null? #{rest 204}#) (letrec* ((#{andmap 214}# (lambda (#{first 215}#) (begin (let ((#{x 218}# (car #{first 215}#)) (#{first 219}# (cdr #{first 215}#))) (if (null? #{first 219}#) (#{f 202}# #{x 218}#) (if (#{f 202}# #{x 218}#) (#{andmap 214}# #{first 219}#) #f))))))) (begin (#{andmap 214}# #{first 203}#))) (letrec* ((#{andmap 225}# (lambda (#{first 226}# #{rest 227}#) (begin (let ((#{x 232}# (car #{first 226}#)) (#{xr 233}# (map car #{rest 227}#)) (#{first 234}# (cdr #{first 226}#)) (#{rest 235}# (map cdr #{rest 227}#))) (if (null? #{first 234}#) (@apply #{f 202}# #{x 232}# #{xr 233}#) (if (@apply #{f 202}# #{x 232}# #{xr 233}#) (#{andmap 225}# #{first 234}# #{rest 235}#) #f))))))) (begin (#{andmap 225}# #{first 203}# #{rest 204}#)))))))))) (begin (letrec* ((#{make-void 240}# (lambda (#{src 798}#) (make-struct/no-tail (vector-ref %expanded-vtables 0) #{src 798}#))) (#{make-const 242}# (lambda (#{src 800}# #{exp 801}#) (make-struct/no-tail (vector-ref %expanded-vtables 1) #{src 800}# #{exp 801}#))) (#{make-lexical-ref 246}# (lambda (#{src 808}# #{name 809}# #{gensym 810}#) (make-struct/no-tail (vector-ref %expanded-vtables 3) #{src 808}# #{name 809}# #{gensym 810}#))) (#{make-lexical-set 248}# (lambda (#{src 814}# #{name 815}# #{gensym 816}# #{exp 817}#) (make-struct/no-tail (vector-ref %expanded-vtables 4) #{src 814}# #{name 815}# #{gensym 816}# #{exp 817}#))) (#{make-module-ref 250}# (lambda (#{src 822}# #{mod 823}# #{name 824}# #{public? 825}#) (make-struct/no-tail (vector-ref %expanded-vtables 5) #{src 822}# #{mod 823}# #{name 824}# #{public? 825}#))) (#{make-module-set 252}# (lambda (#{src 830}# #{mod 831}# #{name 832}# #{public? 833}# #{exp 834}#) (make-struct/no-tail (vector-ref %expanded-vtables 6) #{src 830}# #{mod 831}# #{name 832}# #{public? 833}# #{exp 834}#))) (#{make-toplevel-ref 254}# (lambda (#{src 840}# #{name 841}#) (make-struct/no-tail (vector-ref %expanded-vtables 7) #{src 840}# #{name 841}#))) (#{make-toplevel-set 256}# (lambda (#{src 844}# #{name 845}# #{exp 846}#) (make-struct/no-tail (vector-ref %expanded-vtables 8) #{src 844}# #{name 845}# #{exp 846}#))) (#{make-toplevel-define 258}# (lambda (#{src 850}# #{name 851}# #{exp 852}#) (make-struct/no-tail (vector-ref %expanded-vtables 9) #{src 850}# #{name 851}# #{exp 852}#))) (#{make-conditional 260}# (lambda (#{src 856}# #{test 857}# #{consequent 858}# #{alternate 859}#) (make-struct/no-tail (vector-ref %expanded-vtables 10) #{src 856}# #{test 857}# #{consequent 858}# #{alternate 859}#))) (#{make-application 262}# (lambda (#{src 864}# #{proc 865}# #{args 866}#) (make-struct/no-tail (vector-ref %expanded-vtables 11) #{src 864}# #{proc 865}# #{args 866}#))) (#{make-sequence 264}# (lambda (#{src 870}# #{exps 871}#) (make-struct/no-tail (vector-ref %expanded-vtables 12) #{src 870}# #{exps 871}#))) (#{make-lambda 266}# (lambda (#{src 874}# #{meta 875}# #{body 876}#) (make-struct/no-tail (vector-ref %expanded-vtables 13) #{src 874}# #{meta 875}# #{body 876}#))) (#{make-lambda-case 268}# (lambda (#{src 880}# #{req 881}# #{opt 882}# #{rest 883}# #{kw 884}# #{inits 885}# #{gensyms 886}# #{body 887}# #{alternate 888}#) (make-struct/no-tail (vector-ref %expanded-vtables 14) #{src 880}# #{req 881}# #{opt 882}# #{rest 883}# #{kw 884}# #{inits 885}# #{gensyms 886}# #{body 887}# #{alternate 888}#))) (#{make-let 270}# (lambda (#{src 898}# #{names 899}# #{gensyms 900}# #{vals 901}# #{body 902}#) (make-struct/no-tail (vector-ref %expanded-vtables 15) #{src 898}# #{names 899}# #{gensyms 900}# #{vals 901}# #{body 902}#))) (#{make-letrec 272}# (lambda (#{src 908}# #{in-order? 909}# #{names 910}# #{gensyms 911}# #{vals 912}# #{body 913}#) (make-struct/no-tail (vector-ref %expanded-vtables 16) #{src 908}# #{in-order? 909}# #{names 910}# #{gensyms 911}# #{vals 912}# #{body 913}#))) (#{make-dynlet 274}# (lambda (#{src 920}# #{fluids 921}# #{vals 922}# #{body 923}#) (make-struct/no-tail (vector-ref %expanded-vtables 17) #{src 920}# #{fluids 921}# #{vals 922}# #{body 923}#))) (#{lambda? 277}# (lambda (#{x 928}#) (if (struct? #{x 928}#) (eq? (struct-vtable #{x 928}#) (vector-ref %expanded-vtables 13)) #f))) (#{lambda-meta 279}# (lambda (#{x 932}#) (struct-ref #{x 932}# 1))) (#{set-lambda-meta! 281}# (lambda (#{x 934}# #{v 935}#) (struct-set! #{x 934}# 1 #{v 935}#))) (#{top-level-eval-hook 287}# (lambda (#{x 938}# #{mod 939}#) (primitive-eval #{x 938}#))) (#{local-eval-hook 289}# (lambda (#{x 942}# #{mod 943}#) (primitive-eval #{x 942}#))) (#{put-global-definition-hook 292}# (lambda (#{symbol 946}# #{type 947}# #{val 948}#) (module-define! (current-module) #{symbol 946}# (make-syntax-transformer #{symbol 946}# #{type 947}# #{val 948}#)))) (#{get-global-definition-hook 294}# (lambda (#{symbol 952}# #{module 953}#) (begin (if (if (not #{module 953}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol 952}#)) (begin (let ((#{v 959}# (module-variable (if #{module 953}# (resolve-module (cdr #{module 953}#)) (current-module)) #{symbol 952}#))) (if #{v 959}# (if (variable-bound? #{v 959}#) (begin (let ((#{val 964}# (variable-ref #{v 959}#))) (if (macro? #{val 964}#) (if (macro-type #{val 964}#) (cons (macro-type #{val 964}#) (macro-binding #{val 964}#)) #f) #f))) #f) #f)))))) (#{decorate-source 296}# (lambda (#{e 968}# #{s 969}#) (begin (if (if (pair? #{e 968}#) #{s 969}# #f) (set-source-properties! #{e 968}# #{s 969}#)) #{e 968}#))) (#{maybe-name-value! 298}# (lambda (#{name 974}# #{val 975}#) (if (#{lambda? 277}# #{val 975}#) (begin (let ((#{meta 979}# (#{lambda-meta 279}# #{val 975}#))) (if (not (assq 'name #{meta 979}#)) (#{set-lambda-meta! 281}# #{val 975}# (cons (cons 'name #{name 974}#) #{meta 979}#)))))))) (#{build-void 300}# (lambda (#{source 980}#) (#{make-void 240}# #{source 980}#))) (#{build-application 302}# (lambda (#{source 982}# #{fun-exp 983}# #{arg-exps 984}#) (#{make-application 262}# #{source 982}# #{fun-exp 983}# #{arg-exps 984}#))) (#{build-conditional 304}# (lambda (#{source 988}# #{test-exp 989}# #{then-exp 990}# #{else-exp 991}#) (#{make-conditional 260}# #{source 988}# #{test-exp 989}# #{then-exp 990}# #{else-exp 991}#))) (#{build-dynlet 306}# (lambda (#{source 996}# #{fluids 997}# #{vals 998}# #{body 999}#) (#{make-dynlet 274}# #{source 996}# #{fluids 997}# #{vals 998}# #{body 999}#))) (#{build-lexical-reference 308}# (lambda (#{type 1004}# #{source 1005}# #{name 1006}# #{var 1007}#) (#{make-lexical-ref 246}# #{source 1005}# #{name 1006}# #{var 1007}#))) (#{build-lexical-assignment 310}# (lambda (#{source 1012}# #{name 1013}# #{var 1014}# #{exp 1015}#) (begin (#{maybe-name-value! 298}# #{name 1013}# #{exp 1015}#) (#{make-lexical-set 248}# #{source 1012}# #{name 1013}# #{var 1014}# #{exp 1015}#)))) (#{analyze-variable 312}# (lambda (#{mod 1020}# #{var 1021}# #{modref-cont 1022}# #{bare-cont 1023}#) (if (not #{mod 1020}#) (#{bare-cont 1023}# #{var 1021}#) (begin (let ((#{kind 1030}# (car #{mod 1020}#)) (#{mod 1031}# (cdr #{mod 1020}#))) (if (eqv? #{kind 1030}# 'public) (#{modref-cont 1022}# #{mod 1031}# #{var 1021}# #t) (if (eqv? #{kind 1030}# 'private) (if (not (equal? #{mod 1031}# (module-name (current-module)))) (#{modref-cont 1022}# #{mod 1031}# #{var 1021}# #f) (#{bare-cont 1023}# #{var 1021}#)) (if (eqv? #{kind 1030}# 'bare) (#{bare-cont 1023}# #{var 1021}#) (if (eqv? #{kind 1030}# 'hygiene) (if (if (not (equal? #{mod 1031}# (module-name (current-module)))) (module-variable (resolve-module #{mod 1031}#) #{var 1021}#) #f) (#{modref-cont 1022}# #{mod 1031}# #{var 1021}# #f) (#{bare-cont 1023}# #{var 1021}#)) (syntax-violation #f "bad module kind" #{var 1021}# #{mod 1031}#)))))))))) (#{build-global-reference 314}# (lambda (#{source 1039}# #{var 1040}# #{mod 1041}#) (#{analyze-variable 312}# #{mod 1041}# #{var 1040}# (lambda (#{mod 1045}# #{var 1046}# #{public? 1047}#) (#{make-module-ref 250}# #{source 1039}# #{mod 1045}# #{var 1046}# #{public? 1047}#)) (lambda (#{var 1051}#) (#{make-toplevel-ref 254}# #{source 1039}# #{var 1051}#))))) (#{build-global-assignment 316}# (lambda (#{source 1053}# #{var 1054}# #{exp 1055}# #{mod 1056}#) (begin (#{maybe-name-value! 298}# #{var 1054}# #{exp 1055}#) (#{analyze-variable 312}# #{mod 1056}# #{var 1054}# (lambda (#{mod 1061}# #{var 1062}# #{public? 1063}#) (#{make-module-set 252}# #{source 1053}# #{mod 1061}# #{var 1062}# #{public? 1063}# #{exp 1055}#)) (lambda (#{var 1067}#) (#{make-toplevel-set 256}# #{source 1053}# #{var 1067}# #{exp 1055}#)))))) (#{build-global-definition 318}# (lambda (#{source 1069}# #{var 1070}# #{exp 1071}#) (begin (#{maybe-name-value! 298}# #{var 1070}# #{exp 1071}#) (#{make-toplevel-define 258}# #{source 1069}# #{var 1070}# #{exp 1071}#)))) (#{build-simple-lambda 320}# (lambda (#{src 1075}# #{req 1076}# #{rest 1077}# #{vars 1078}# #{meta 1079}# #{exp 1080}#) (#{make-lambda 266}# #{src 1075}# #{meta 1079}# (#{make-lambda-case 268}# #{src 1075}# #{req 1076}# #f #{rest 1077}# #f '() #{vars 1078}# #{exp 1080}# #f)))) (#{build-case-lambda 322}# (lambda (#{src 1087}# #{meta 1088}# #{body 1089}#) (#{make-lambda 266}# #{src 1087}# #{meta 1088}# #{body 1089}#))) (#{build-lambda-case 324}# (lambda (#{src 1093}# #{req 1094}# #{opt 1095}# #{rest 1096}# #{kw 1097}# #{inits 1098}# #{vars 1099}# #{body 1100}# #{else-case 1101}#) (#{make-lambda-case 268}# #{src 1093}# #{req 1094}# #{opt 1095}# #{rest 1096}# #{kw 1097}# #{inits 1098}# #{vars 1099}# #{body 1100}# #{else-case 1101}#))) (#{build-primref 326}# (lambda (#{src 1111}# #{name 1112}#) (if (equal? (module-name (current-module)) '(guile)) (#{make-toplevel-ref 254}# #{src 1111}# #{name 1112}#) (#{make-module-ref 250}# #{src 1111}# '(guile) #{name 1112}# #f)))) (#{build-data 328}# (lambda (#{src 1115}# #{exp 1116}#) (#{make-const 242}# #{src 1115}# #{exp 1116}#))) (#{build-sequence 330}# (lambda (#{src 1119}# #{exps 1120}#) (if (null? (cdr #{exps 1120}#)) (car #{exps 1120}#) (#{make-sequence 264}# #{src 1119}# #{exps 1120}#)))) (#{build-let 332}# (lambda (#{src 1123}# #{ids 1124}# #{vars 1125}# #{val-exps 1126}# #{body-exp 1127}#) (begin (for-each #{maybe-name-value! 298}# #{ids 1124}# #{val-exps 1126}#) (if (null? #{vars 1125}#) #{body-exp 1127}# (#{make-let 270}# #{src 1123}# #{ids 1124}# #{vars 1125}# #{val-exps 1126}# #{body-exp 1127}#))))) (#{build-named-let 334}# (lambda (#{src 1133}# #{ids 1134}# #{vars 1135}# #{val-exps 1136}# #{body-exp 1137}#) (begin (let ((#{f 1147}# (car #{vars 1135}#)) (#{f-name 1148}# (car #{ids 1134}#)) (#{vars 1149}# (cdr #{vars 1135}#)) (#{ids 1150}# (cdr #{ids 1134}#))) (begin (let ((#{proc 1152}# (#{build-simple-lambda 320}# #{src 1133}# #{ids 1150}# #f #{vars 1149}# '() #{body-exp 1137}#))) (begin (#{maybe-name-value! 298}# #{f-name 1148}# #{proc 1152}#) (for-each #{maybe-name-value! 298}# #{ids 1150}# #{val-exps 1136}#) (#{make-letrec 272}# #{src 1133}# #f (list #{f-name 1148}#) (list #{f 1147}#) (list #{proc 1152}#) (#{build-application 302}# #{src 1133}# (#{build-lexical-reference 308}# 'fun #{src 1133}# #{f-name 1148}# #{f 1147}#) #{val-exps 1136}#))))))))) (#{build-letrec 336}# (lambda (#{src 1153}# #{in-order? 1154}# #{ids 1155}# #{vars 1156}# #{val-exps 1157}# #{body-exp 1158}#) (if (null? #{vars 1156}#) #{body-exp 1158}# (begin (for-each #{maybe-name-value! 298}# #{ids 1155}# #{val-exps 1157}#) (#{make-letrec 272}# #{src 1153}# #{in-order? 1154}# #{ids 1155}# #{vars 1156}# #{val-exps 1157}# #{body-exp 1158}#))))) (#{make-syntax-object 340}# (lambda (#{expression 1165}# #{wrap 1166}# #{module 1167}#) (vector 'syntax-object #{expression 1165}# #{wrap 1166}# #{module 1167}#))) (#{syntax-object? 342}# (lambda (#{x 1171}#) (if (vector? #{x 1171}#) (if (= (vector-length #{x 1171}#) 4) (eq? (vector-ref #{x 1171}# 0) 'syntax-object) #f) #f))) (#{syntax-object-expression 344}# (lambda (#{x 1176}#) (vector-ref #{x 1176}# 1))) (#{syntax-object-wrap 346}# (lambda (#{x 1178}#) (vector-ref #{x 1178}# 2))) (#{syntax-object-module 348}# (lambda (#{x 1180}#) (vector-ref #{x 1180}# 3))) (#{source-annotation 357}# (lambda (#{x 1194}#) (if (#{syntax-object? 342}# #{x 1194}#) (#{source-annotation 357}# (#{syntax-object-expression 344}# #{x 1194}#)) (if (pair? #{x 1194}#) (begin (let ((#{props 1201}# (source-properties #{x 1194}#))) (if (pair? #{props 1201}#) #{props 1201}# #f))) #f)))) (#{extend-env 364}# (lambda (#{labels 1203}# #{bindings 1204}# #{r 1205}#) (if (null? #{labels 1203}#) #{r 1205}# (#{extend-env 364}# (cdr #{labels 1203}#) (cdr #{bindings 1204}#) (cons (cons (car #{labels 1203}#) (car #{bindings 1204}#)) #{r 1205}#))))) (#{extend-var-env 366}# (lambda (#{labels 1209}# #{vars 1210}# #{r 1211}#) (if (null? #{labels 1209}#) #{r 1211}# (#{extend-var-env 366}# (cdr #{labels 1209}#) (cdr #{vars 1210}#) (cons (cons (car #{labels 1209}#) (cons 'lexical (car #{vars 1210}#))) #{r 1211}#))))) (#{macros-only-env 368}# (lambda (#{r 1216}#) (if (null? #{r 1216}#) '() (begin (let ((#{a 1219}# (car #{r 1216}#))) (if (eq? (car (cdr #{a 1219}#)) 'macro) (cons #{a 1219}# (#{macros-only-env 368}# (cdr #{r 1216}#))) (#{macros-only-env 368}# (cdr #{r 1216}#)))))))) (#{lookup 370}# (lambda (#{x 1220}# #{r 1221}# #{mod 1222}#) (begin (let ((#{t 1228}# (assq #{x 1220}# #{r 1221}#))) (if #{t 1228}# (cdr #{t 1228}#) (if (symbol? #{x 1220}#) (begin (let ((#{t 1234}# (#{get-global-definition-hook 294}# #{x 1220}# #{mod 1222}#))) (if #{t 1234}# #{t 1234}# '(global)))) '(displaced-lexical))))))) (#{global-extend 372}# (lambda (#{type 1239}# #{sym 1240}# #{val 1241}#) (#{put-global-definition-hook 292}# #{sym 1240}# #{type 1239}# #{val 1241}#))) (#{nonsymbol-id? 374}# (lambda (#{x 1245}#) (if (#{syntax-object? 342}# #{x 1245}#) (symbol? (#{syntax-object-expression 344}# #{x 1245}#)) #f))) (#{id? 376}# (lambda (#{x 1249}#) (if (symbol? #{x 1249}#) #t (if (#{syntax-object? 342}# #{x 1249}#) (symbol? (#{syntax-object-expression 344}# #{x 1249}#)) #f)))) (#{id-sym-name&marks 379}# (lambda (#{x 1256}# #{w 1257}#) (if (#{syntax-object? 342}# #{x 1256}#) (values (#{syntax-object-expression 344}# #{x 1256}#) (#{join-marks 426}# (car #{w 1257}#) (car (#{syntax-object-wrap 346}# #{x 1256}#)))) (values #{x 1256}# (car #{w 1257}#))))) (#{gen-label 389}# (lambda () (symbol->string (gensym "i")))) (#{gen-labels 391}# (lambda (#{ls 1263}#) (if (null? #{ls 1263}#) '() (cons (#{gen-label 389}#) (#{gen-labels 391}# (cdr #{ls 1263}#)))))) (#{make-ribcage 394}# (lambda (#{symnames 1265}# #{marks 1266}# #{labels 1267}#) (vector 'ribcage #{symnames 1265}# #{marks 1266}# #{labels 1267}#))) (#{ribcage-symnames 398}# (lambda (#{x 1276}#) (vector-ref #{x 1276}# 1))) (#{ribcage-marks 400}# (lambda (#{x 1278}#) (vector-ref #{x 1278}# 2))) (#{ribcage-labels 402}# (lambda (#{x 1280}#) (vector-ref #{x 1280}# 3))) (#{set-ribcage-symnames! 404}# (lambda (#{x 1282}# #{update 1283}#) (vector-set! #{x 1282}# 1 #{update 1283}#))) (#{set-ribcage-marks! 406}# (lambda (#{x 1286}# #{update 1287}#) (vector-set! #{x 1286}# 2 #{update 1287}#))) (#{set-ribcage-labels! 408}# (lambda (#{x 1290}# #{update 1291}#) (vector-set! #{x 1290}# 3 #{update 1291}#))) (#{anti-mark 414}# (lambda (#{w 1294}#) (cons (cons #f (car #{w 1294}#)) (cons 'shift (cdr #{w 1294}#))))) (#{extend-ribcage! 418}# (lambda (#{ribcage 1300}# #{id 1301}# #{label 1302}#) (begin (#{set-ribcage-symnames! 404}# #{ribcage 1300}# (cons (#{syntax-object-expression 344}# #{id 1301}#) (#{ribcage-symnames 398}# #{ribcage 1300}#))) (#{set-ribcage-marks! 406}# #{ribcage 1300}# (cons (car (#{syntax-object-wrap 346}# #{id 1301}#)) (#{ribcage-marks 400}# #{ribcage 1300}#))) (#{set-ribcage-labels! 408}# #{ribcage 1300}# (cons #{label 1302}# (#{ribcage-labels 402}# #{ribcage 1300}#)))))) (#{make-binding-wrap 420}# (lambda (#{ids 1307}# #{labels 1308}# #{w 1309}#) (if (null? #{ids 1307}#) #{w 1309}# (cons (car #{w 1309}#) (cons (begin (let ((#{labelvec 1316}# (list->vector #{labels 1308}#))) (begin (let ((#{n 1318}# (vector-length #{labelvec 1316}#))) (begin (let ((#{symnamevec 1321}# (make-vector #{n 1318}#)) (#{marksvec 1322}# (make-vector #{n 1318}#))) (begin (letrec* ((#{f 1326}# (lambda (#{ids 1327}# #{i 1328}#) (if (not (null? #{ids 1327}#)) (call-with-values (lambda () (#{id-sym-name&marks 379}# (car #{ids 1327}#) #{w 1309}#)) (lambda (#{symname 1329}# #{marks 1330}#) (begin (vector-set! #{symnamevec 1321}# #{i 1328}# #{symname 1329}#) (vector-set! #{marksvec 1322}# #{i 1328}# #{marks 1330}#) (#{f 1326}# (cdr #{ids 1327}#) (#{1+}# #{i 1328}#))))))))) (begin (#{f 1326}# #{ids 1307}# 0))) (#{make-ribcage 394}# #{symnamevec 1321}# #{marksvec 1322}# #{labelvec 1316}#)))))))) (cdr #{w 1309}#)))))) (#{smart-append 422}# (lambda (#{m1 1335}# #{m2 1336}#) (if (null? #{m2 1336}#) #{m1 1335}# (append #{m1 1335}# #{m2 1336}#)))) (#{join-wraps 424}# (lambda (#{w1 1339}# #{w2 1340}#) (begin (let ((#{m1 1345}# (car #{w1 1339}#)) (#{s1 1346}# (cdr #{w1 1339}#))) (if (null? #{m1 1345}#) (if (null? #{s1 1346}#) #{w2 1340}# (cons (car #{w2 1340}#) (#{smart-append 422}# #{s1 1346}# (cdr #{w2 1340}#)))) (cons (#{smart-append 422}# #{m1 1345}# (car #{w2 1340}#)) (#{smart-append 422}# #{s1 1346}# (cdr #{w2 1340}#)))))))) (#{join-marks 426}# (lambda (#{m1 1355}# #{m2 1356}#) (#{smart-append 422}# #{m1 1355}# #{m2 1356}#))) (#{same-marks? 428}# (lambda (#{x 1359}# #{y 1360}#) (begin (let ((#{t 1365}# (eq? #{x 1359}# #{y 1360}#))) (if #{t 1365}# #{t 1365}# (if (not (null? #{x 1359}#)) (if (not (null? #{y 1360}#)) (if (eq? (car #{x 1359}#) (car #{y 1360}#)) (#{same-marks? 428}# (cdr #{x 1359}#) (cdr #{y 1360}#)) #f) #f) #f)))))) (#{id-var-name 430}# (lambda (#{id 1371}# #{w 1372}#) (letrec* ((#{search 1377}# (lambda (#{sym 1393}# #{subst 1394}# #{marks 1395}#) (if (null? #{subst 1394}#) (values #f #{marks 1395}#) (begin (let ((#{fst 1400}# (car #{subst 1394}#))) (if (eq? #{fst 1400}# 'shift) (#{search 1377}# #{sym 1393}# (cdr #{subst 1394}#) (cdr #{marks 1395}#)) (begin (let ((#{symnames 1402}# (#{ribcage-symnames 398}# #{fst 1400}#))) (if (vector? #{symnames 1402}#) (#{search-vector-rib 1381}# #{sym 1393}# #{subst 1394}# #{marks 1395}# #{symnames 1402}# #{fst 1400}#) (#{search-list-rib 1379}# #{sym 1393}# #{subst 1394}# #{marks 1395}# #{symnames 1402}# #{fst 1400}#)))))))))) (#{search-list-rib 1379}# (lambda (#{sym 1403}# #{subst 1404}# #{marks 1405}# #{symnames 1406}# #{ribcage 1407}#) (letrec* ((#{f 1416}# (lambda (#{symnames 1417}# #{i 1418}#) (if (null? #{symnames 1417}#) (#{search 1377}# #{sym 1403}# (cdr #{subst 1404}#) #{marks 1405}#) (if (if (eq? (car #{symnames 1417}#) #{sym 1403}#) (#{same-marks? 428}# #{marks 1405}# (list-ref (#{ribcage-marks 400}# #{ribcage 1407}#) #{i 1418}#)) #f) (values (list-ref (#{ribcage-labels 402}# #{ribcage 1407}#) #{i 1418}#) #{marks 1405}#) (#{f 1416}# (cdr #{symnames 1417}#) (#{1+}# #{i 1418}#))))))) (begin (#{f 1416}# #{symnames 1406}# 0))))) (#{search-vector-rib 1381}# (lambda (#{sym 1427}# #{subst 1428}# #{marks 1429}# #{symnames 1430}# #{ribcage 1431}#) (begin (let ((#{n 1438}# (vector-length #{symnames 1430}#))) (letrec* ((#{f 1441}# (lambda (#{i 1442}#) (if (= #{i 1442}# #{n 1438}#) (#{search 1377}# #{sym 1427}# (cdr #{subst 1428}#) #{marks 1429}#) (if (if (eq? (vector-ref #{symnames 1430}# #{i 1442}#) #{sym 1427}#) (#{same-marks? 428}# #{marks 1429}# (vector-ref (#{ribcage-marks 400}# #{ribcage 1431}#) #{i 1442}#)) #f) (values (vector-ref (#{ribcage-labels 402}# #{ribcage 1431}#) #{i 1442}#) #{marks 1429}#) (#{f 1441}# (#{1+}# #{i 1442}#))))))) (begin (#{f 1441}# 0)))))))) (begin (if (symbol? #{id 1371}#) (begin (let ((#{t 1454}# (call-with-values (lambda () (#{search 1377}# #{id 1371}# (cdr #{w 1372}#) (car #{w 1372}#))) (lambda (#{x 1458}# . #{ignore 1459}#) #{x 1458}#)))) (if #{t 1454}# #{t 1454}# #{id 1371}#))) (if (#{syntax-object? 342}# #{id 1371}#) (begin (let ((#{id 1467}# (#{syntax-object-expression 344}# #{id 1371}#)) (#{w1 1468}# (#{syntax-object-wrap 346}# #{id 1371}#))) (begin (let ((#{marks 1470}# (#{join-marks 426}# (car #{w 1372}#) (car #{w1 1468}#)))) (call-with-values (lambda () (#{search 1377}# #{id 1467}# (cdr #{w 1372}#) #{marks 1470}#)) (lambda (#{new-id 1474}# #{marks 1475}#) (begin (let ((#{t 1480}# #{new-id 1474}#)) (if #{t 1480}# #{t 1480}# (begin (let ((#{t 1483}# (call-with-values (lambda () (#{search 1377}# #{id 1467}# (cdr #{w1 1468}#) #{marks 1475}#)) (lambda (#{x 1486}# . #{ignore 1487}#) #{x 1486}#)))) (if #{t 1483}# #{t 1483}# #{id 1467}#)))))))))))) (syntax-violation 'id-var-name "invalid id" #{id 1371}#))))))) (#{free-id=? 432}# (lambda (#{i 1492}# #{j 1493}#) (if (eq? (begin (let ((#{x 1499}# #{i 1492}#)) (if (#{syntax-object? 342}# #{x 1499}#) (#{syntax-object-expression 344}# #{x 1499}#) #{x 1499}#))) (begin (let ((#{x 1502}# #{j 1493}#)) (if (#{syntax-object? 342}# #{x 1502}#) (#{syntax-object-expression 344}# #{x 1502}#) #{x 1502}#)))) (eq? (#{id-var-name 430}# #{i 1492}# '(())) (#{id-var-name 430}# #{j 1493}# '(()))) #f))) (#{bound-id=? 434}# (lambda (#{i 1506}# #{j 1507}#) (if (if (#{syntax-object? 342}# #{i 1506}#) (#{syntax-object? 342}# #{j 1507}#) #f) (if (eq? (#{syntax-object-expression 344}# #{i 1506}#) (#{syntax-object-expression 344}# #{j 1507}#)) (#{same-marks? 428}# (car (#{syntax-object-wrap 346}# #{i 1506}#)) (car (#{syntax-object-wrap 346}# #{j 1507}#))) #f) (eq? #{i 1506}# #{j 1507}#)))) (#{valid-bound-ids? 436}# (lambda (#{ids 1516}#) (if (letrec* ((#{all-ids? 1521}# (lambda (#{ids 1522}#) (begin (let ((#{t 1525}# (null? #{ids 1522}#))) (if #{t 1525}# #{t 1525}# (if (#{id? 376}# (car #{ids 1522}#)) (#{all-ids? 1521}# (cdr #{ids 1522}#)) #f))))))) (begin (#{all-ids? 1521}# #{ids 1516}#))) (#{distinct-bound-ids? 438}# #{ids 1516}#) #f))) (#{distinct-bound-ids? 438}# (lambda (#{ids 1530}#) (letrec* ((#{distinct? 1534}# (lambda (#{ids 1535}#) (begin (let ((#{t 1538}# (null? #{ids 1535}#))) (if #{t 1538}# #{t 1538}# (if (not (#{bound-id-member? 440}# (car #{ids 1535}#) (cdr #{ids 1535}#))) (#{distinct? 1534}# (cdr #{ids 1535}#)) #f))))))) (begin (#{distinct? 1534}# #{ids 1530}#))))) (#{bound-id-member? 440}# (lambda (#{x 1542}# #{list 1543}#) (if (not (null? #{list 1543}#)) (begin (let ((#{t 1550}# (#{bound-id=? 434}# #{x 1542}# (car #{list 1543}#)))) (if #{t 1550}# #{t 1550}# (#{bound-id-member? 440}# #{x 1542}# (cdr #{list 1543}#))))) #f))) (#{wrap 442}# (lambda (#{x 1552}# #{w 1553}# #{defmod 1554}#) (if (if (null? (car #{w 1553}#)) (null? (cdr #{w 1553}#)) #f) #{x 1552}# (if (#{syntax-object? 342}# #{x 1552}#) (#{make-syntax-object 340}# (#{syntax-object-expression 344}# #{x 1552}#) (#{join-wraps 424}# #{w 1553}# (#{syntax-object-wrap 346}# #{x 1552}#)) (#{syntax-object-module 348}# #{x 1552}#)) (if (null? #{x 1552}#) #{x 1552}# (#{make-syntax-object 340}# #{x 1552}# #{w 1553}# #{defmod 1554}#)))))) (#{source-wrap 444}# (lambda (#{x 1569}# #{w 1570}# #{s 1571}# #{defmod 1572}#) (#{wrap 442}# (#{decorate-source 296}# #{x 1569}# #{s 1571}#) #{w 1570}# #{defmod 1572}#))) (#{chi-sequence 446}# (lambda (#{body 1577}# #{r 1578}# #{w 1579}# #{s 1580}# #{mod 1581}#) (#{build-sequence 330}# #{s 1580}# (letrec* ((#{dobody 1592}# (lambda (#{body 1593}# #{r 1594}# #{w 1595}# #{mod 1596}#) (if (null? #{body 1593}#) '() (begin (let ((#{first 1598}# (#{chi 456}# (car #{body 1593}#) #{r 1594}# #{w 1595}# #{mod 1596}#))) (cons #{first 1598}# (#{dobody 1592}# (cdr #{body 1593}#) #{r 1594}# #{w 1595}# #{mod 1596}#)))))))) (begin (#{dobody 1592}# #{body 1577}# #{r 1578}# #{w 1579}# #{mod 1581}#)))))) (#{chi-top-sequence 448}# (lambda (#{body 1599}# #{r 1600}# #{w 1601}# #{s 1602}# #{m 1603}# #{esew 1604}# #{mod 1605}#) (letrec* ((#{scan 1614}# (lambda (#{body 1615}# #{r 1616}# #{w 1617}# #{s 1618}# #{m 1619}# #{esew 1620}# #{mod 1621}# #{exps 1622}#) (if (null? #{body 1615}#) #{exps 1622}# (call-with-values (lambda () (call-with-values (lambda () (begin (let ((#{e 1635}# (car #{body 1615}#))) (#{syntax-type 454}# #{e 1635}# #{r 1616}# #{w 1617}# (begin (let ((#{t 1638}# (#{source-annotation 357}# #{e 1635}#))) (if #{t 1638}# #{t 1638}# #{s 1618}#))) #f #{mod 1621}# #f)))) (lambda (#{type 1640}# #{value 1641}# #{e 1642}# #{w 1643}# #{s 1644}# #{mod 1645}#) (if (eqv? #{type 1640}# 'begin-form) (let ((#{tmp 1653}# #{e 1642}#)) (let ((#{tmp 1654}# ($sc-dispatch #{tmp 1653}# '(_)))) (if #{tmp 1654}# (@apply (lambda () #{exps 1622}#) #{tmp 1654}#) (let ((#{tmp 1655}# ($sc-dispatch #{tmp 1653}# '(_ any . each-any)))) (if #{tmp 1655}# (@apply (lambda (#{e1 1658}# #{e2 1659}#) (#{scan 1614}# (cons #{e1 1658}# #{e2 1659}#) #{r 1616}# #{w 1643}# #{s 1644}# #{m 1619}# #{esew 1620}# #{mod 1645}# #{exps 1622}#)) #{tmp 1655}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1653}#)))))) (if (eqv? #{type 1640}# 'local-syntax-form) (#{chi-local-syntax 466}# #{value 1641}# #{e 1642}# #{r 1616}# #{w 1643}# #{s 1644}# #{mod 1645}# (lambda (#{body 1662}# #{r 1663}# #{w 1664}# #{s 1665}# #{mod 1666}#) (#{scan 1614}# #{body 1662}# #{r 1663}# #{w 1664}# #{s 1665}# #{m 1619}# #{esew 1620}# #{mod 1666}# #{exps 1622}#))) (if (eqv? #{type 1640}# 'eval-when-form) (let ((#{tmp 1673}# #{e 1642}#)) (let ((#{tmp 1674}# ($sc-dispatch #{tmp 1673}# '(_ each-any any . each-any)))) (if #{tmp 1674}# (@apply (lambda (#{x 1678}# #{e1 1679}# #{e2 1680}#) (begin (let ((#{when-list 1683}# (#{chi-when-list 452}# #{e 1642}# #{x 1678}# #{w 1643}#)) (#{body 1684}# (cons #{e1 1679}# #{e2 1680}#))) (if (eq? #{m 1619}# 'e) (if (memq 'eval #{when-list 1683}#) (#{scan 1614}# #{body 1684}# #{r 1616}# #{w 1643}# #{s 1644}# (if (memq 'expand #{when-list 1683}#) 'c&e 'e) '(eval) #{mod 1645}# #{exps 1622}#) (begin (if (memq 'expand #{when-list 1683}#) (#{top-level-eval-hook 287}# (#{chi-top-sequence 448}# #{body 1684}# #{r 1616}# #{w 1643}# #{s 1644}# 'e '(eval) #{mod 1645}#) #{mod 1645}#)) #{exps 1622}#)) (if (memq 'load #{when-list 1683}#) (if (begin (let ((#{t 1693}# (memq 'compile #{when-list 1683}#))) (if #{t 1693}# #{t 1693}# (begin (let ((#{t 1696}# (memq 'expand #{when-list 1683}#))) (if #{t 1696}# #{t 1696}# (if (eq? #{m 1619}# 'c&e) (memq 'eval #{when-list 1683}#) #f))))))) (#{scan 1614}# #{body 1684}# #{r 1616}# #{w 1643}# #{s 1644}# 'c&e '(compile load) #{mod 1645}# #{exps 1622}#) (if (if (eq? #{m 1619}# 'c) #t (eq? #{m 1619}# 'c&e)) (#{scan 1614}# #{body 1684}# #{r 1616}# #{w 1643}# #{s 1644}# 'c '(load) #{mod 1645}# #{exps 1622}#) #{exps 1622}#)) (if (begin (let ((#{t 1704}# (memq 'compile #{when-list 1683}#))) (if #{t 1704}# #{t 1704}# (begin (let ((#{t 1707}# (memq 'expand #{when-list 1683}#))) (if #{t 1707}# #{t 1707}# (if (eq? #{m 1619}# 'c&e) (memq 'eval #{when-list 1683}#) #f))))))) (begin (#{top-level-eval-hook 287}# (#{chi-top-sequence 448}# #{body 1684}# #{r 1616}# #{w 1643}# #{s 1644}# 'e '(eval) #{mod 1645}#) #{mod 1645}#) #{exps 1622}#) #{exps 1622}#)))))) #{tmp 1674}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1673}#)))) (if (eqv? #{type 1640}# 'define-syntax-form) (begin (let ((#{n 1715}# (#{id-var-name 430}# #{value 1641}# #{w 1643}#)) (#{r 1716}# (#{macros-only-env 368}# #{r 1616}#))) (if (eqv? #{m 1619}# 'c) (if (memq 'compile #{esew 1620}#) (begin (let ((#{e 1719}# (#{chi-install-global 450}# #{n 1715}# (#{chi 456}# #{e 1642}# #{r 1716}# #{w 1643}# #{mod 1645}#)))) (begin (#{top-level-eval-hook 287}# #{e 1719}# #{mod 1645}#) (if (memq 'load #{esew 1620}#) (cons #{e 1719}# #{exps 1622}#) #{exps 1622}#)))) (if (memq 'load #{esew 1620}#) (cons (#{chi-install-global 450}# #{n 1715}# (#{chi 456}# #{e 1642}# #{r 1716}# #{w 1643}# #{mod 1645}#)) #{exps 1622}#) #{exps 1622}#)) (if (eqv? #{m 1619}# 'c&e) (begin (let ((#{e 1722}# (#{chi-install-global 450}# #{n 1715}# (#{chi 456}# #{e 1642}# #{r 1716}# #{w 1643}# #{mod 1645}#)))) (begin (#{top-level-eval-hook 287}# #{e 1722}# #{mod 1645}#) (cons #{e 1722}# #{exps 1622}#)))) (begin (if (memq 'eval #{esew 1620}#) (#{top-level-eval-hook 287}# (#{chi-install-global 450}# #{n 1715}# (#{chi 456}# #{e 1642}# #{r 1716}# #{w 1643}# #{mod 1645}#)) #{mod 1645}#)) #{exps 1622}#))))) (if (eqv? #{type 1640}# 'define-form) (begin (let ((#{n 1727}# (#{id-var-name 430}# #{value 1641}# #{w 1643}#))) (begin (let ((#{type 1729}# (car (#{lookup 370}# #{n 1727}# #{r 1616}# #{mod 1645}#)))) (if (if (eqv? #{type 1729}# 'global) #t (if (eqv? #{type 1729}# 'core) #t (if (eqv? #{type 1729}# 'macro) #t (eqv? #{type 1729}# 'module-ref)))) (begin (if (if (if (eq? #{m 1619}# 'c) #t (eq? #{m 1619}# 'c&e)) (if (not (module-local-variable (current-module) #{n 1727}#)) (current-module) #f) #f) (begin (let ((#{old 1736}# (module-variable (current-module) #{n 1727}#))) (if (if (variable? #{old 1736}#) (variable-bound? #{old 1736}#) #f) (module-define! (current-module) #{n 1727}# (variable-ref #{old 1736}#)) (module-add! (current-module) #{n 1727}# (make-undefined-variable)))))) (cons (if (eq? #{m 1619}# 'c&e) (begin (let ((#{x 1740}# (#{build-global-definition 318}# #{s 1644}# #{n 1727}# (#{chi 456}# #{e 1642}# #{r 1616}# #{w 1643}# #{mod 1645}#)))) (begin (#{top-level-eval-hook 287}# #{x 1740}# #{mod 1645}#) #{x 1740}#))) (lambda () (#{build-global-definition 318}# #{s 1644}# #{n 1727}# (#{chi 456}# #{e 1642}# #{r 1616}# #{w 1643}# #{mod 1645}#)))) #{exps 1622}#)) (if (eqv? #{type 1729}# 'displaced-lexical) (syntax-violation #f "identifier out of context" #{e 1642}# (#{wrap 442}# #{value 1641}# #{w 1643}# #{mod 1645}#)) (syntax-violation #f "cannot define keyword at top level" #{e 1642}# (#{wrap 442}# #{value 1641}# #{w 1643}# #{mod 1645}#)))))))) (cons (if (eq? #{m 1619}# 'c&e) (begin (let ((#{x 1745}# (#{chi-expr 458}# #{type 1640}# #{value 1641}# #{e 1642}# #{r 1616}# #{w 1643}# #{s 1644}# #{mod 1645}#))) (begin (#{top-level-eval-hook 287}# #{x 1745}# #{mod 1645}#) #{x 1745}#))) (lambda () (#{chi-expr 458}# #{type 1640}# #{value 1641}# #{e 1642}# #{r 1616}# #{w 1643}# #{s 1644}# #{mod 1645}#))) #{exps 1622}#))))))))) (lambda (#{exps 1746}#) (#{scan 1614}# (cdr #{body 1615}#) #{r 1616}# #{w 1617}# #{s 1618}# #{m 1619}# #{esew 1620}# #{mod 1621}# #{exps 1746}#))))))) (begin (call-with-values (lambda () (#{scan 1614}# #{body 1599}# #{r 1600}# #{w 1601}# #{s 1602}# #{m 1603}# #{esew 1604}# #{mod 1605}# '())) (lambda (#{exps 1748}#) (if (null? #{exps 1748}#) (#{build-void 300}# #{s 1602}#) (#{build-sequence 330}# #{s 1602}# (letrec* ((#{lp 1753}# (lambda (#{in 1754}# #{out 1755}#) (if (null? #{in 1754}#) #{out 1755}# (begin (let ((#{e 1757}# (car #{in 1754}#))) (#{lp 1753}# (cdr #{in 1754}#) (cons (if (procedure? #{e 1757}#) (#{e 1757}#) #{e 1757}#) #{out 1755}#)))))))) (begin (#{lp 1753}# #{exps 1748}# '()))))))))))) (#{chi-install-global 450}# (lambda (#{name 1758}# #{e 1759}#) (#{build-global-definition 318}# #f #{name 1758}# (#{build-application 302}# #f (#{build-primref 326}# #f 'make-syntax-transformer) (list (#{build-data 328}# #f #{name 1758}#) (#{build-data 328}# #f 'macro) #{e 1759}#))))) (#{chi-when-list 452}# (lambda (#{e 1767}# #{when-list 1768}# #{w 1769}#) (letrec* ((#{f 1776}# (lambda (#{when-list 1777}# #{situations 1778}#) (if (null? #{when-list 1777}#) #{situations 1778}# (#{f 1776}# (cdr #{when-list 1777}#) (cons (begin (let ((#{x 1780}# (car #{when-list 1777}#))) (if (#{free-id=? 432}# #{x 1780}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1779")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1773" "i1774" "i1775")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) 'compile (if (#{free-id=? 432}# #{x 1780}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1779")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1773" "i1774" "i1775")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) 'load (if (#{free-id=? 432}# #{x 1780}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1779")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1773" "i1774" "i1775")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) 'eval (if (#{free-id=? 432}# #{x 1780}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1779")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1773" "i1774" "i1775")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e 1767}# (#{wrap 442}# #{x 1780}# #{w 1769}# #f)))))))) #{situations 1778}#)))))) (begin (#{f 1776}# #{when-list 1768}# '()))))) (#{syntax-type 454}# (lambda (#{e 1790}# #{r 1791}# #{w 1792}# #{s 1793}# #{rib 1794}# #{mod 1795}# #{for-car? 1796}#) (if (symbol? #{e 1790}#) (begin (let ((#{n 1808}# (#{id-var-name 430}# #{e 1790}# #{w 1792}#))) (begin (let ((#{b 1810}# (#{lookup 370}# #{n 1808}# #{r 1791}# #{mod 1795}#))) (begin (let ((#{type 1812}# (car #{b 1810}#))) (if (eqv? #{type 1812}# 'lexical) (values #{type 1812}# (cdr #{b 1810}#) #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{type 1812}# 'global) (values #{type 1812}# #{n 1808}# #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{type 1812}# 'macro) (if #{for-car? 1796}# (values #{type 1812}# (cdr #{b 1810}#) #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (#{syntax-type 454}# (#{chi-macro 462}# (cdr #{b 1810}#) #{e 1790}# #{r 1791}# #{w 1792}# #{s 1793}# #{rib 1794}# #{mod 1795}#) #{r 1791}# '(()) #{s 1793}# #{rib 1794}# #{mod 1795}# #f)) (values #{type 1812}# (cdr #{b 1810}#) #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#)))))))))) (if (pair? #{e 1790}#) (begin (let ((#{first 1826}# (car #{e 1790}#))) (call-with-values (lambda () (#{syntax-type 454}# #{first 1826}# #{r 1791}# #{w 1792}# #{s 1793}# #{rib 1794}# #{mod 1795}# #t)) (lambda (#{ftype 1827}# #{fval 1828}# #{fe 1829}# #{fw 1830}# #{fs 1831}# #{fmod 1832}#) (if (eqv? #{ftype 1827}# 'lexical) (values 'lexical-call #{fval 1828}# #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{ftype 1827}# 'global) (values 'global-call (#{make-syntax-object 340}# #{fval 1828}# #{w 1792}# #{fmod 1832}#) #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{ftype 1827}# 'macro) (#{syntax-type 454}# (#{chi-macro 462}# #{fval 1828}# #{e 1790}# #{r 1791}# #{w 1792}# #{s 1793}# #{rib 1794}# #{mod 1795}#) #{r 1791}# '(()) #{s 1793}# #{rib 1794}# #{mod 1795}# #{for-car? 1796}#) (if (eqv? #{ftype 1827}# 'module-ref) (call-with-values (lambda () (#{fval 1828}# #{e 1790}# #{r 1791}# #{w 1792}#)) (lambda (#{e 1844}# #{r 1845}# #{w 1846}# #{s 1847}# #{mod 1848}#) (#{syntax-type 454}# #{e 1844}# #{r 1845}# #{w 1846}# #{s 1847}# #{rib 1794}# #{mod 1848}# #{for-car? 1796}#))) (if (eqv? #{ftype 1827}# 'core) (values 'core-form #{fval 1828}# #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{ftype 1827}# 'local-syntax) (values 'local-syntax-form #{fval 1828}# #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{ftype 1827}# 'begin) (values 'begin-form #f #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{ftype 1827}# 'eval-when) (values 'eval-when-form #f #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (if (eqv? #{ftype 1827}# 'define) (let ((#{tmp 1859}# #{e 1790}#)) (let ((#{tmp 1860}# ($sc-dispatch #{tmp 1859}# '(_ any any)))) (if (if #{tmp 1860}# (@apply (lambda (#{name 1863}# #{val 1864}#) (#{id? 376}# #{name 1863}#)) #{tmp 1860}#) #f) (@apply (lambda (#{name 1867}# #{val 1868}#) (values 'define-form #{name 1867}# #{val 1868}# #{w 1792}# #{s 1793}# #{mod 1795}#)) #{tmp 1860}#) (let ((#{tmp 1869}# ($sc-dispatch #{tmp 1859}# '(_ (any . any) any . each-any)))) (if (if #{tmp 1869}# (@apply (lambda (#{name 1874}# #{args 1875}# #{e1 1876}# #{e2 1877}#) (if (#{id? 376}# #{name 1874}#) (#{valid-bound-ids? 436}# (#{lambda-var-list 486}# #{args 1875}#)) #f)) #{tmp 1869}#) #f) (@apply (lambda (#{name 1884}# #{args 1885}# #{e1 1886}# #{e2 1887}#) (values 'define-form (#{wrap 442}# #{name 1884}# #{w 1792}# #{mod 1795}#) (#{decorate-source 296}# (cons '#(syntax-object lambda ((top) #(ribcage #(name args e1 e2) #((top) (top) (top) (top)) #("i1880" "i1881" "i1882" "i1883")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1833" "i1834" "i1835" "i1836" "i1837" "i1838")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1825")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1797" "i1798" "i1799" "i1800" "i1801" "i1802" "i1803")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) (#{wrap 442}# (cons #{args 1885}# (cons #{e1 1886}# #{e2 1887}#)) #{w 1792}# #{mod 1795}#)) #{s 1793}#) '(()) #{s 1793}# #{mod 1795}#)) #{tmp 1869}#) (let ((#{tmp 1890}# ($sc-dispatch #{tmp 1859}# '(_ any)))) (if (if #{tmp 1890}# (@apply (lambda (#{name 1892}#) (#{id? 376}# #{name 1892}#)) #{tmp 1890}#) #f) (@apply (lambda (#{name 1894}#) (values 'define-form (#{wrap 442}# #{name 1894}# #{w 1792}# #{mod 1795}#) '(#(syntax-object if ((top) #(ribcage #(name) #((top)) #("i1893")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1833" "i1834" "i1835" "i1836" "i1837" "i1838")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1825")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1797" "i1798" "i1799" "i1800" "i1801" "i1802" "i1803")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1893")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1833" "i1834" "i1835" "i1836" "i1837" "i1838")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1825")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1797" "i1798" "i1799" "i1800" "i1801" "i1802" "i1803")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1893")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1833" "i1834" "i1835" "i1836" "i1837" "i1838")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1825")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1797" "i1798" "i1799" "i1800" "i1801" "i1802" "i1803")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) '(()) #{s 1793}# #{mod 1795}#)) #{tmp 1890}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1859}#)))))))) (if (eqv? #{ftype 1827}# 'define-syntax) (let ((#{tmp 1897}# #{e 1790}#)) (let ((#{tmp 1898}# ($sc-dispatch #{tmp 1897}# '(_ any any)))) (if (if #{tmp 1898}# (@apply (lambda (#{name 1901}# #{val 1902}#) (#{id? 376}# #{name 1901}#)) #{tmp 1898}#) #f) (@apply (lambda (#{name 1905}# #{val 1906}#) (values 'define-syntax-form #{name 1905}# #{val 1906}# #{w 1792}# #{s 1793}# #{mod 1795}#)) #{tmp 1898}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1897}#)))) (values 'call #f #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#))))))))))))))) (if (#{syntax-object? 342}# #{e 1790}#) (#{syntax-type 454}# (#{syntax-object-expression 344}# #{e 1790}#) #{r 1791}# (#{join-wraps 424}# #{w 1792}# (#{syntax-object-wrap 346}# #{e 1790}#)) (begin (let ((#{t 1912}# (#{source-annotation 357}# #{e 1790}#))) (if #{t 1912}# #{t 1912}# #{s 1793}#))) #{rib 1794}# (begin (let ((#{t 1916}# (#{syntax-object-module 348}# #{e 1790}#))) (if #{t 1916}# #{t 1916}# #{mod 1795}#))) #{for-car? 1796}#) (if (self-evaluating? #{e 1790}#) (values 'constant #f #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#) (values 'other #f #{e 1790}# #{w 1792}# #{s 1793}# #{mod 1795}#))))))) (#{chi 456}# (lambda (#{e 1921}# #{r 1922}# #{w 1923}# #{mod 1924}#) (call-with-values (lambda () (#{syntax-type 454}# #{e 1921}# #{r 1922}# #{w 1923}# (#{source-annotation 357}# #{e 1921}#) #f #{mod 1924}# #f)) (lambda (#{type 1929}# #{value 1930}# #{e 1931}# #{w 1932}# #{s 1933}# #{mod 1934}#) (#{chi-expr 458}# #{type 1929}# #{value 1930}# #{e 1931}# #{r 1922}# #{w 1932}# #{s 1933}# #{mod 1934}#))))) (#{chi-expr 458}# (lambda (#{type 1941}# #{value 1942}# #{e 1943}# #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}#) (if (eqv? #{type 1941}# 'lexical) (#{build-lexical-reference 308}# 'value #{s 1946}# #{e 1943}# #{value 1942}#) (if (if (eqv? #{type 1941}# 'core) #t (eqv? #{type 1941}# 'core-form)) (#{value 1942}# #{e 1943}# #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}#) (if (eqv? #{type 1941}# 'module-ref) (call-with-values (lambda () (#{value 1942}# #{e 1943}# #{r 1944}# #{w 1945}#)) (lambda (#{e 1958}# #{r 1959}# #{w 1960}# #{s 1961}# #{mod 1962}#) (#{chi 456}# #{e 1958}# #{r 1959}# #{w 1960}# #{mod 1962}#))) (if (eqv? #{type 1941}# 'lexical-call) (#{chi-application 460}# (begin (let ((#{id 1970}# (car #{e 1943}#))) (#{build-lexical-reference 308}# 'fun (#{source-annotation 357}# #{id 1970}#) (if (#{syntax-object? 342}# #{id 1970}#) (syntax->datum #{id 1970}#) #{id 1970}#) #{value 1942}#))) #{e 1943}# #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}#) (if (eqv? #{type 1941}# 'global-call) (#{chi-application 460}# (#{build-global-reference 314}# (#{source-annotation 357}# (car #{e 1943}#)) (if (#{syntax-object? 342}# #{value 1942}#) (#{syntax-object-expression 344}# #{value 1942}#) #{value 1942}#) (if (#{syntax-object? 342}# #{value 1942}#) (#{syntax-object-module 348}# #{value 1942}#) #{mod 1947}#)) #{e 1943}# #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}#) (if (eqv? #{type 1941}# 'constant) (#{build-data 328}# #{s 1946}# (#{strip 482}# (#{source-wrap 444}# #{e 1943}# #{w 1945}# #{s 1946}# #{mod 1947}#) '(()))) (if (eqv? #{type 1941}# 'global) (#{build-global-reference 314}# #{s 1946}# #{value 1942}# #{mod 1947}#) (if (eqv? #{type 1941}# 'call) (#{chi-application 460}# (#{chi 456}# (car #{e 1943}#) #{r 1944}# #{w 1945}# #{mod 1947}#) #{e 1943}# #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}#) (if (eqv? #{type 1941}# 'begin-form) (let ((#{tmp 1977}# #{e 1943}#)) (let ((#{tmp 1978}# ($sc-dispatch #{tmp 1977}# '(_ any . each-any)))) (if #{tmp 1978}# (@apply (lambda (#{e1 1981}# #{e2 1982}#) (#{chi-sequence 446}# (cons #{e1 1981}# #{e2 1982}#) #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}#)) #{tmp 1978}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1977}#)))) (if (eqv? #{type 1941}# 'local-syntax-form) (#{chi-local-syntax 466}# #{value 1942}# #{e 1943}# #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}# #{chi-sequence 446}#) (if (eqv? #{type 1941}# 'eval-when-form) (let ((#{tmp 1986}# #{e 1943}#)) (let ((#{tmp 1987}# ($sc-dispatch #{tmp 1986}# '(_ each-any any . each-any)))) (if #{tmp 1987}# (@apply (lambda (#{x 1991}# #{e1 1992}# #{e2 1993}#) (begin (let ((#{when-list 1995}# (#{chi-when-list 452}# #{e 1943}# #{x 1991}# #{w 1945}#))) (if (memq 'eval #{when-list 1995}#) (#{chi-sequence 446}# (cons #{e1 1992}# #{e2 1993}#) #{r 1944}# #{w 1945}# #{s 1946}# #{mod 1947}#) (#{chi-void 470}#))))) #{tmp 1987}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1986}#)))) (if (if (eqv? #{type 1941}# 'define-form) #t (eqv? #{type 1941}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" #{e 1943}# (#{wrap 442}# #{value 1942}# #{w 1945}# #{mod 1947}#)) (if (eqv? #{type 1941}# 'syntax) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap 444}# #{e 1943}# #{w 1945}# #{s 1946}# #{mod 1947}#)) (if (eqv? #{type 1941}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap 444}# #{e 1943}# #{w 1945}# #{s 1946}# #{mod 1947}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap 444}# #{e 1943}# #{w 1945}# #{s 1946}# #{mod 1947}#)))))))))))))))))) (#{chi-application 460}# (lambda (#{x 2002}# #{e 2003}# #{r 2004}# #{w 2005}# #{s 2006}# #{mod 2007}#) (let ((#{tmp 2014}# #{e 2003}#)) (let ((#{tmp 2015}# ($sc-dispatch #{tmp 2014}# '(any . each-any)))) (if #{tmp 2015}# (@apply (lambda (#{e0 2018}# #{e1 2019}#) (#{build-application 302}# #{s 2006}# #{x 2002}# (map (lambda (#{e 2020}#) (#{chi 456}# #{e 2020}# #{r 2004}# #{w 2005}# #{mod 2007}#)) #{e1 2019}#))) #{tmp 2015}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2014}#)))))) (#{chi-macro 462}# (lambda (#{p 2023}# #{e 2024}# #{r 2025}# #{w 2026}# #{s 2027}# #{rib 2028}# #{mod 2029}#) (letrec* ((#{rebuild-macro-output 2038}# (lambda (#{x 2039}# #{m 2040}#) (if (pair? #{x 2039}#) (#{decorate-source 296}# (cons (#{rebuild-macro-output 2038}# (car #{x 2039}#) #{m 2040}#) (#{rebuild-macro-output 2038}# (cdr #{x 2039}#) #{m 2040}#)) #{s 2027}#) (if (#{syntax-object? 342}# #{x 2039}#) (begin (let ((#{w 2048}# (#{syntax-object-wrap 346}# #{x 2039}#))) (begin (let ((#{ms 2051}# (car #{w 2048}#)) (#{s 2052}# (cdr #{w 2048}#))) (if (if (pair? #{ms 2051}#) (eq? (car #{ms 2051}#) #f) #f) (#{make-syntax-object 340}# (#{syntax-object-expression 344}# #{x 2039}#) (cons (cdr #{ms 2051}#) (if #{rib 2028}# (cons #{rib 2028}# (cdr #{s 2052}#)) (cdr #{s 2052}#))) (#{syntax-object-module 348}# #{x 2039}#)) (#{make-syntax-object 340}# (#{decorate-source 296}# (#{syntax-object-expression 344}# #{x 2039}#) #{s 2052}#) (cons (cons #{m 2040}# #{ms 2051}#) (if #{rib 2028}# (cons #{rib 2028}# (cons 'shift #{s 2052}#)) (cons 'shift #{s 2052}#))) (#{syntax-object-module 348}# #{x 2039}#))))))) (if (vector? #{x 2039}#) (begin (let ((#{n 2064}# (vector-length #{x 2039}#))) (begin (let ((#{v 2066}# (#{decorate-source 296}# (make-vector #{n 2064}#) #{x 2039}#))) (letrec* ((#{loop 2069}# (lambda (#{i 2070}#) (if (= #{i 2070}# #{n 2064}#) (begin (if #f #f) #{v 2066}#) (begin (vector-set! #{v 2066}# #{i 2070}# (#{rebuild-macro-output 2038}# (vector-ref #{x 2039}# #{i 2070}#) #{m 2040}#)) (#{loop 2069}# (#{1+}# #{i 2070}#))))))) (begin (#{loop 2069}# 0))))))) (if (symbol? #{x 2039}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap 444}# #{e 2024}# #{w 2026}# (cdr #{w 2026}#) #{mod 2029}#) #{x 2039}#) (#{decorate-source 296}# #{x 2039}# #{s 2027}#)))))))) (begin (#{rebuild-macro-output 2038}# (#{p 2023}# (#{source-wrap 444}# #{e 2024}# (#{anti-mark 414}# #{w 2026}#) #{s 2027}# #{mod 2029}#)) (gensym "m")))))) (#{chi-body 464}# (lambda (#{body 2080}# #{outer-form 2081}# #{r 2082}# #{w 2083}# #{mod 2084}#) (begin (let ((#{r 2092}# (cons '("placeholder" placeholder) #{r 2082}#))) (begin (let ((#{ribcage 2094}# (#{make-ribcage 394}# '() '() '()))) (begin (let ((#{w 2097}# (cons (car #{w 2083}#) (cons #{ribcage 2094}# (cdr #{w 2083}#))))) (letrec* ((#{parse 2109}# (lambda (#{body 2110}# #{ids 2111}# #{labels 2112}# #{var-ids 2113}# #{vars 2114}# #{vals 2115}# #{bindings 2116}#) (if (null? #{body 2110}#) (syntax-violation #f "no expressions in body" #{outer-form 2081}#) (begin (let ((#{e 2121}# (cdr (car #{body 2110}#))) (#{er 2122}# (car (car #{body 2110}#)))) (call-with-values (lambda () (#{syntax-type 454}# #{e 2121}# #{er 2122}# '(()) (#{source-annotation 357}# #{er 2122}#) #{ribcage 2094}# #{mod 2084}# #f)) (lambda (#{type 2124}# #{value 2125}# #{e 2126}# #{w 2127}# #{s 2128}# #{mod 2129}#) (if (eqv? #{type 2124}# 'define-form) (begin (let ((#{id 2139}# (#{wrap 442}# #{value 2125}# #{w 2127}# #{mod 2129}#)) (#{label 2140}# (#{gen-label 389}#))) (begin (let ((#{var 2142}# (#{gen-var 484}# #{id 2139}#))) (begin (#{extend-ribcage! 418}# #{ribcage 2094}# #{id 2139}# #{label 2140}#) (#{parse 2109}# (cdr #{body 2110}#) (cons #{id 2139}# #{ids 2111}#) (cons #{label 2140}# #{labels 2112}#) (cons #{id 2139}# #{var-ids 2113}#) (cons #{var 2142}# #{vars 2114}#) (cons (cons #{er 2122}# (#{wrap 442}# #{e 2126}# #{w 2127}# #{mod 2129}#)) #{vals 2115}#) (cons (cons 'lexical #{var 2142}#) #{bindings 2116}#))))))) (if (eqv? #{type 2124}# 'define-syntax-form) (begin (let ((#{id 2147}# (#{wrap 442}# #{value 2125}# #{w 2127}# #{mod 2129}#)) (#{label 2148}# (#{gen-label 389}#))) (begin (#{extend-ribcage! 418}# #{ribcage 2094}# #{id 2147}# #{label 2148}#) (#{parse 2109}# (cdr #{body 2110}#) (cons #{id 2147}# #{ids 2111}#) (cons #{label 2148}# #{labels 2112}#) #{var-ids 2113}# #{vars 2114}# #{vals 2115}# (cons (cons 'macro (cons #{er 2122}# (#{wrap 442}# #{e 2126}# #{w 2127}# #{mod 2129}#))) #{bindings 2116}#))))) (if (eqv? #{type 2124}# 'begin-form) (let ((#{tmp 2151}# #{e 2126}#)) (let ((#{tmp 2152}# ($sc-dispatch #{tmp 2151}# '(_ . each-any)))) (if #{tmp 2152}# (@apply (lambda (#{e1 2154}#) (#{parse 2109}# (letrec* ((#{f 2157}# (lambda (#{forms 2158}#) (if (null? #{forms 2158}#) (cdr #{body 2110}#) (cons (cons #{er 2122}# (#{wrap 442}# (car #{forms 2158}#) #{w 2127}# #{mod 2129}#)) (#{f 2157}# (cdr #{forms 2158}#))))))) (begin (#{f 2157}# #{e1 2154}#))) #{ids 2111}# #{labels 2112}# #{var-ids 2113}# #{vars 2114}# #{vals 2115}# #{bindings 2116}#)) #{tmp 2152}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2151}#)))) (if (eqv? #{type 2124}# 'local-syntax-form) (#{chi-local-syntax 466}# #{value 2125}# #{e 2126}# #{er 2122}# #{w 2127}# #{s 2128}# #{mod 2129}# (lambda (#{forms 2161}# #{er 2162}# #{w 2163}# #{s 2164}# #{mod 2165}#) (#{parse 2109}# (letrec* ((#{f 2173}# (lambda (#{forms 2174}#) (if (null? #{forms 2174}#) (cdr #{body 2110}#) (cons (cons #{er 2162}# (#{wrap 442}# (car #{forms 2174}#) #{w 2163}# #{mod 2165}#)) (#{f 2173}# (cdr #{forms 2174}#))))))) (begin (#{f 2173}# #{forms 2161}#))) #{ids 2111}# #{labels 2112}# #{var-ids 2113}# #{vars 2114}# #{vals 2115}# #{bindings 2116}#))) (if (null? #{ids 2111}#) (#{build-sequence 330}# #f (map (lambda (#{x 2177}#) (#{chi 456}# (cdr #{x 2177}#) (car #{x 2177}#) '(()) #{mod 2129}#)) (cons (cons #{er 2122}# (#{source-wrap 444}# #{e 2126}# #{w 2127}# #{s 2128}# #{mod 2129}#)) (cdr #{body 2110}#)))) (begin (if (not (#{valid-bound-ids? 436}# #{ids 2111}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form 2081}#)) (letrec* ((#{loop 2184}# (lambda (#{bs 2185}# #{er-cache 2186}# #{r-cache 2187}#) (if (not (null? #{bs 2185}#)) (begin (let ((#{b 2190}# (car #{bs 2185}#))) (if (eq? (car #{b 2190}#) 'macro) (begin (let ((#{er 2193}# (car (cdr #{b 2190}#)))) (begin (let ((#{r-cache 2195}# (if (eq? #{er 2193}# #{er-cache 2186}#) #{r-cache 2187}# (#{macros-only-env 368}# #{er 2193}#)))) (begin (set-cdr! #{b 2190}# (#{eval-local-transformer 468}# (#{chi 456}# (cdr (cdr #{b 2190}#)) #{r-cache 2195}# '(()) #{mod 2129}#) #{mod 2129}#)) (#{loop 2184}# (cdr #{bs 2185}#) #{er 2193}# #{r-cache 2195}#)))))) (#{loop 2184}# (cdr #{bs 2185}#) #{er-cache 2186}# #{r-cache 2187}#)))))))) (begin (#{loop 2184}# #{bindings 2116}# #f #f))) (set-cdr! #{r 2092}# (#{extend-env 364}# #{labels 2112}# #{bindings 2116}# (cdr #{r 2092}#))) (#{build-letrec 336}# #f #t (reverse (map syntax->datum #{var-ids 2113}#)) (reverse #{vars 2114}#) (map (lambda (#{x 2198}#) (#{chi 456}# (cdr #{x 2198}#) (car #{x 2198}#) '(()) #{mod 2129}#)) (reverse #{vals 2115}#)) (#{build-sequence 330}# #f (map (lambda (#{x 2202}#) (#{chi 456}# (cdr #{x 2202}#) (car #{x 2202}#) '(()) #{mod 2129}#)) (cons (cons #{er 2122}# (#{source-wrap 444}# #{e 2126}# #{w 2127}# #{s 2128}# #{mod 2129}#)) (cdr #{body 2110}#))))))))))))))))))) (begin (#{parse 2109}# (map (lambda (#{x 2117}#) (cons #{r 2092}# (#{wrap 442}# #{x 2117}# #{w 2097}# #{mod 2084}#))) #{body 2080}#) '() '() '() '() '() '()))))))))))) (#{chi-local-syntax 466}# (lambda (#{rec? 2205}# #{e 2206}# #{r 2207}# #{w 2208}# #{s 2209}# #{mod 2210}# #{k 2211}#) (let ((#{tmp 2219}# #{e 2206}#)) (let ((#{tmp 2220}# ($sc-dispatch #{tmp 2219}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 2220}# (@apply (lambda (#{id 2225}# #{val 2226}# #{e1 2227}# #{e2 2228}#) (begin (let ((#{ids 2230}# #{id 2225}#)) (if (not (#{valid-bound-ids? 436}# #{ids 2230}#)) (syntax-violation #f "duplicate bound keyword" #{e 2206}#) (begin (let ((#{labels 2233}# (#{gen-labels 391}# #{ids 2230}#))) (begin (let ((#{new-w 2235}# (#{make-binding-wrap 420}# #{ids 2230}# #{labels 2233}# #{w 2208}#))) (#{k 2211}# (cons #{e1 2227}# #{e2 2228}#) (#{extend-env 364}# #{labels 2233}# (begin (let ((#{w 2239}# (if #{rec? 2205}# #{new-w 2235}# #{w 2208}#)) (#{trans-r 2240}# (#{macros-only-env 368}# #{r 2207}#))) (map (lambda (#{x 2241}#) (cons 'macro (#{eval-local-transformer 468}# (#{chi 456}# #{x 2241}# #{trans-r 2240}# #{w 2239}# #{mod 2210}#) #{mod 2210}#))) #{val 2226}#))) #{r 2207}#) #{new-w 2235}# #{s 2209}# #{mod 2210}#))))))))) #{tmp 2220}#) (let ((#{_ 2246}# #{tmp 2219}#)) (syntax-violation #f "bad local syntax definition" (#{source-wrap 444}# #{e 2206}# #{w 2208}# #{s 2209}# #{mod 2210}#)))))))) (#{eval-local-transformer 468}# (lambda (#{expanded 2247}# #{mod 2248}#) (begin (let ((#{p 2252}# (#{local-eval-hook 289}# #{expanded 2247}# #{mod 2248}#))) (if (procedure? #{p 2252}#) #{p 2252}# (syntax-violation #f "nonprocedure transformer" #{p 2252}#)))))) (#{chi-void 470}# (lambda () (#{build-void 300}# #f))) (#{ellipsis? 472}# (lambda (#{x 2254}#) (if (#{nonsymbol-id? 374}# #{x 2254}#) (#{free-id=? 432}# #{x 2254}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i2255")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) #f))) (#{lambda-formals 474}# (lambda (#{orig-args 2258}#) (letrec* ((#{req 2261}# (lambda (#{args 2264}# #{rreq 2265}#) (let ((#{tmp 2268}# #{args 2264}#)) (let ((#{tmp 2269}# ($sc-dispatch #{tmp 2268}# '()))) (if #{tmp 2269}# (@apply (lambda () (#{check 2263}# (reverse #{rreq 2265}#) #f)) #{tmp 2269}#) (let ((#{tmp 2270}# ($sc-dispatch #{tmp 2268}# '(any . any)))) (if (if #{tmp 2270}# (@apply (lambda (#{a 2273}# #{b 2274}#) (#{id? 376}# #{a 2273}#)) #{tmp 2270}#) #f) (@apply (lambda (#{a 2277}# #{b 2278}#) (#{req 2261}# #{b 2278}# (cons #{a 2277}# #{rreq 2265}#))) #{tmp 2270}#) (let ((#{tmp 2279}# (list #{tmp 2268}#))) (if (if #{tmp 2279}# (@apply (lambda (#{r 2281}#) (#{id? 376}# #{r 2281}#)) #{tmp 2279}#) #f) (@apply (lambda (#{r 2283}#) (#{check 2263}# (reverse #{rreq 2265}#) #{r 2283}#)) #{tmp 2279}#) (let ((#{else 2285}# #{tmp 2268}#)) (syntax-violation 'lambda "invalid argument list" #{orig-args 2258}# #{args 2264}#))))))))))) (#{check 2263}# (lambda (#{req 2286}# #{rest 2287}#) (if (#{distinct-bound-ids? 438}# (if #{rest 2287}# (cons #{rest 2287}# #{req 2286}#) #{req 2286}#)) (values #{req 2286}# #f #{rest 2287}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args 2258}#))))) (begin (#{req 2261}# #{orig-args 2258}# '()))))) (#{chi-simple-lambda 476}# (lambda (#{e 2293}# #{r 2294}# #{w 2295}# #{s 2296}# #{mod 2297}# #{req 2298}# #{rest 2299}# #{meta 2300}# #{body 2301}#) (begin (let ((#{ids 2313}# (if #{rest 2299}# (append #{req 2298}# (list #{rest 2299}#)) #{req 2298}#))) (begin (let ((#{vars 2315}# (map #{gen-var 484}# #{ids 2313}#))) (begin (let ((#{labels 2317}# (#{gen-labels 391}# #{ids 2313}#))) (#{build-simple-lambda 320}# #{s 2296}# (map syntax->datum #{req 2298}#) (if #{rest 2299}# (syntax->datum #{rest 2299}#) #f) #{vars 2315}# #{meta 2300}# (#{chi-body 464}# #{body 2301}# (#{source-wrap 444}# #{e 2293}# #{w 2295}# #{s 2296}# #{mod 2297}#) (#{extend-var-env 366}# #{labels 2317}# #{vars 2315}# #{r 2294}#) (#{make-binding-wrap 420}# #{ids 2313}# #{labels 2317}# #{w 2295}#) #{mod 2297}#)))))))))) (#{lambda*-formals 478}# (lambda (#{orig-args 2320}#) (letrec* ((#{req 2323}# (lambda (#{args 2332}# #{rreq 2333}#) (let ((#{tmp 2336}# #{args 2332}#)) (let ((#{tmp 2337}# ($sc-dispatch #{tmp 2336}# '()))) (if #{tmp 2337}# (@apply (lambda () (#{check 2331}# (reverse #{rreq 2333}#) '() #f '())) #{tmp 2337}#) (let ((#{tmp 2338}# ($sc-dispatch #{tmp 2336}# '(any . any)))) (if (if #{tmp 2338}# (@apply (lambda (#{a 2341}# #{b 2342}#) (#{id? 376}# #{a 2341}#)) #{tmp 2338}#) #f) (@apply (lambda (#{a 2345}# #{b 2346}#) (#{req 2323}# #{b 2346}# (cons #{a 2345}# #{rreq 2333}#))) #{tmp 2338}#) (let ((#{tmp 2347}# ($sc-dispatch #{tmp 2336}# '(any . any)))) (if (if #{tmp 2347}# (@apply (lambda (#{a 2350}# #{b 2351}#) (eq? (syntax->datum #{a 2350}#) #:optional)) #{tmp 2347}#) #f) (@apply (lambda (#{a 2354}# #{b 2355}#) (#{opt 2325}# #{b 2355}# (reverse #{rreq 2333}#) '())) #{tmp 2347}#) (let ((#{tmp 2356}# ($sc-dispatch #{tmp 2336}# '(any . any)))) (if (if #{tmp 2356}# (@apply (lambda (#{a 2359}# #{b 2360}#) (eq? (syntax->datum #{a 2359}#) #:key)) #{tmp 2356}#) #f) (@apply (lambda (#{a 2363}# #{b 2364}#) (#{key 2327}# #{b 2364}# (reverse #{rreq 2333}#) '() '())) #{tmp 2356}#) (let ((#{tmp 2365}# ($sc-dispatch #{tmp 2336}# '(any any)))) (if (if #{tmp 2365}# (@apply (lambda (#{a 2368}# #{b 2369}#) (eq? (syntax->datum #{a 2368}#) #:rest)) #{tmp 2365}#) #f) (@apply (lambda (#{a 2372}# #{b 2373}#) (#{rest 2329}# #{b 2373}# (reverse #{rreq 2333}#) '() '())) #{tmp 2365}#) (let ((#{tmp 2374}# (list #{tmp 2336}#))) (if (if #{tmp 2374}# (@apply (lambda (#{r 2376}#) (#{id? 376}# #{r 2376}#)) #{tmp 2374}#) #f) (@apply (lambda (#{r 2378}#) (#{rest 2329}# #{r 2378}# (reverse #{rreq 2333}#) '() '())) #{tmp 2374}#) (let ((#{else 2380}# #{tmp 2336}#)) (syntax-violation 'lambda* "invalid argument list" #{orig-args 2320}# #{args 2332}#))))))))))))))))) (#{opt 2325}# (lambda (#{args 2381}# #{req 2382}# #{ropt 2383}#) (let ((#{tmp 2387}# #{args 2381}#)) (let ((#{tmp 2388}# ($sc-dispatch #{tmp 2387}# '()))) (if #{tmp 2388}# (@apply (lambda () (#{check 2331}# #{req 2382}# (reverse #{ropt 2383}#) #f '())) #{tmp 2388}#) (let ((#{tmp 2389}# ($sc-dispatch #{tmp 2387}# '(any . any)))) (if (if #{tmp 2389}# (@apply (lambda (#{a 2392}# #{b 2393}#) (#{id? 376}# #{a 2392}#)) #{tmp 2389}#) #f) (@apply (lambda (#{a 2396}# #{b 2397}#) (#{opt 2325}# #{b 2397}# #{req 2382}# (cons (cons #{a 2396}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i2394" "i2395")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i2384" "i2385" "i2386")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2330" "i2328" "i2326" "i2324" "i2322")) #(ribcage #(orig-args) #((top)) #("i2321")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)))) #{ropt 2383}#))) #{tmp 2389}#) (let ((#{tmp 2398}# ($sc-dispatch #{tmp 2387}# '((any any) . any)))) (if (if #{tmp 2398}# (@apply (lambda (#{a 2402}# #{init 2403}# #{b 2404}#) (#{id? 376}# #{a 2402}#)) #{tmp 2398}#) #f) (@apply (lambda (#{a 2408}# #{init 2409}# #{b 2410}#) (#{opt 2325}# #{b 2410}# #{req 2382}# (cons (list #{a 2408}# #{init 2409}#) #{ropt 2383}#))) #{tmp 2398}#) (let ((#{tmp 2411}# ($sc-dispatch #{tmp 2387}# '(any . any)))) (if (if #{tmp 2411}# (@apply (lambda (#{a 2414}# #{b 2415}#) (eq? (syntax->datum #{a 2414}#) #:key)) #{tmp 2411}#) #f) (@apply (lambda (#{a 2418}# #{b 2419}#) (#{key 2327}# #{b 2419}# #{req 2382}# (reverse #{ropt 2383}#) '())) #{tmp 2411}#) (let ((#{tmp 2420}# ($sc-dispatch #{tmp 2387}# '(any any)))) (if (if #{tmp 2420}# (@apply (lambda (#{a 2423}# #{b 2424}#) (eq? (syntax->datum #{a 2423}#) #:rest)) #{tmp 2420}#) #f) (@apply (lambda (#{a 2427}# #{b 2428}#) (#{rest 2329}# #{b 2428}# #{req 2382}# (reverse #{ropt 2383}#) '())) #{tmp 2420}#) (let ((#{tmp 2429}# (list #{tmp 2387}#))) (if (if #{tmp 2429}# (@apply (lambda (#{r 2431}#) (#{id? 376}# #{r 2431}#)) #{tmp 2429}#) #f) (@apply (lambda (#{r 2433}#) (#{rest 2329}# #{r 2433}# #{req 2382}# (reverse #{ropt 2383}#) '())) #{tmp 2429}#) (let ((#{else 2435}# #{tmp 2387}#)) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args 2320}# #{args 2381}#))))))))))))))))) (#{key 2327}# (lambda (#{args 2436}# #{req 2437}# #{opt 2438}# #{rkey 2439}#) (let ((#{tmp 2444}# #{args 2436}#)) (let ((#{tmp 2445}# ($sc-dispatch #{tmp 2444}# '()))) (if #{tmp 2445}# (@apply (lambda () (#{check 2331}# #{req 2437}# #{opt 2438}# #f (cons #f (reverse #{rkey 2439}#)))) #{tmp 2445}#) (let ((#{tmp 2446}# ($sc-dispatch #{tmp 2444}# '(any . any)))) (if (if #{tmp 2446}# (@apply (lambda (#{a 2449}# #{b 2450}#) (#{id? 376}# #{a 2449}#)) #{tmp 2446}#) #f) (@apply (lambda (#{a 2453}# #{b 2454}#) (let ((#{tmp 2456}# (symbol->keyword (syntax->datum #{a 2453}#)))) (let ((#{k 2458}# #{tmp 2456}#)) (#{key 2327}# #{b 2454}# #{req 2437}# #{opt 2438}# (cons (cons #{k 2458}# (cons #{a 2453}# '(#(syntax-object #f ((top) #(ribcage () () ()) #(ribcage #(k) #((top)) #("i2457")) #(ribcage #(a b) #((top) (top)) #("i2451" "i2452")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i2440" "i2441" "i2442" "i2443")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2330" "i2328" "i2326" "i2324" "i2322")) #(ribcage #(orig-args) #((top)) #("i2321")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))))) #{rkey 2439}#))))) #{tmp 2446}#) (let ((#{tmp 2459}# ($sc-dispatch #{tmp 2444}# '((any any) . any)))) (if (if #{tmp 2459}# (@apply (lambda (#{a 2463}# #{init 2464}# #{b 2465}#) (#{id? 376}# #{a 2463}#)) #{tmp 2459}#) #f) (@apply (lambda (#{a 2469}# #{init 2470}# #{b 2471}#) (let ((#{tmp 2473}# (symbol->keyword (syntax->datum #{a 2469}#)))) (let ((#{k 2475}# #{tmp 2473}#)) (#{key 2327}# #{b 2471}# #{req 2437}# #{opt 2438}# (cons (list #{k 2475}# #{a 2469}# #{init 2470}#) #{rkey 2439}#))))) #{tmp 2459}#) (let ((#{tmp 2476}# ($sc-dispatch #{tmp 2444}# '((any any any) . any)))) (if (if #{tmp 2476}# (@apply (lambda (#{a 2481}# #{init 2482}# #{k 2483}# #{b 2484}#) (if (#{id? 376}# #{a 2481}#) (keyword? (syntax->datum #{k 2483}#)) #f)) #{tmp 2476}#) #f) (@apply (lambda (#{a 2491}# #{init 2492}# #{k 2493}# #{b 2494}#) (#{key 2327}# #{b 2494}# #{req 2437}# #{opt 2438}# (cons (list #{k 2493}# #{a 2491}# #{init 2492}#) #{rkey 2439}#))) #{tmp 2476}#) (let ((#{tmp 2495}# ($sc-dispatch #{tmp 2444}# '(any)))) (if (if #{tmp 2495}# (@apply (lambda (#{aok 2497}#) (eq? (syntax->datum #{aok 2497}#) #:allow-other-keys)) #{tmp 2495}#) #f) (@apply (lambda (#{aok 2499}#) (#{check 2331}# #{req 2437}# #{opt 2438}# #f (cons #t (reverse #{rkey 2439}#)))) #{tmp 2495}#) (let ((#{tmp 2500}# ($sc-dispatch #{tmp 2444}# '(any any any)))) (if (if #{tmp 2500}# (@apply (lambda (#{aok 2504}# #{a 2505}# #{b 2506}#) (if (eq? (syntax->datum #{aok 2504}#) #:allow-other-keys) (eq? (syntax->datum #{a 2505}#) #:rest) #f)) #{tmp 2500}#) #f) (@apply (lambda (#{aok 2512}# #{a 2513}# #{b 2514}#) (#{rest 2329}# #{b 2514}# #{req 2437}# #{opt 2438}# (cons #t (reverse #{rkey 2439}#)))) #{tmp 2500}#) (let ((#{tmp 2515}# ($sc-dispatch #{tmp 2444}# '(any . any)))) (if (if #{tmp 2515}# (@apply (lambda (#{aok 2518}# #{r 2519}#) (if (eq? (syntax->datum #{aok 2518}#) #:allow-other-keys) (#{id? 376}# #{r 2519}#) #f)) #{tmp 2515}#) #f) (@apply (lambda (#{aok 2524}# #{r 2525}#) (#{rest 2329}# #{r 2525}# #{req 2437}# #{opt 2438}# (cons #t (reverse #{rkey 2439}#)))) #{tmp 2515}#) (let ((#{tmp 2526}# ($sc-dispatch #{tmp 2444}# '(any any)))) (if (if #{tmp 2526}# (@apply (lambda (#{a 2529}# #{b 2530}#) (eq? (syntax->datum #{a 2529}#) #:rest)) #{tmp 2526}#) #f) (@apply (lambda (#{a 2533}# #{b 2534}#) (#{rest 2329}# #{b 2534}# #{req 2437}# #{opt 2438}# (cons #f (reverse #{rkey 2439}#)))) #{tmp 2526}#) (let ((#{tmp 2535}# (list #{tmp 2444}#))) (if (if #{tmp 2535}# (@apply (lambda (#{r 2537}#) (#{id? 376}# #{r 2537}#)) #{tmp 2535}#) #f) (@apply (lambda (#{r 2539}#) (#{rest 2329}# #{r 2539}# #{req 2437}# #{opt 2438}# (cons #f (reverse #{rkey 2439}#)))) #{tmp 2535}#) (let ((#{else 2541}# #{tmp 2444}#)) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args 2320}# #{args 2436}#))))))))))))))))))))))) (#{rest 2329}# (lambda (#{args 2542}# #{req 2543}# #{opt 2544}# #{kw 2545}#) (let ((#{tmp 2550}# #{args 2542}#)) (let ((#{tmp 2551}# (list #{tmp 2550}#))) (if (if #{tmp 2551}# (@apply (lambda (#{r 2553}#) (#{id? 376}# #{r 2553}#)) #{tmp 2551}#) #f) (@apply (lambda (#{r 2555}#) (#{check 2331}# #{req 2543}# #{opt 2544}# #{r 2555}# #{kw 2545}#)) #{tmp 2551}#) (let ((#{else 2557}# #{tmp 2550}#)) (syntax-violation 'lambda* "invalid rest argument" #{orig-args 2320}# #{args 2542}#))))))) (#{check 2331}# (lambda (#{req 2558}# #{opt 2559}# #{rest 2560}# #{kw 2561}#) (if (#{distinct-bound-ids? 438}# (append #{req 2558}# (map car #{opt 2559}#) (if #{rest 2560}# (list #{rest 2560}#) '()) (if (pair? #{kw 2561}#) (map cadr (cdr #{kw 2561}#)) '()))) (values #{req 2558}# #{opt 2559}# #{rest 2560}# #{kw 2561}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args 2320}#))))) (begin (#{req 2323}# #{orig-args 2320}# '()))))) (#{chi-lambda-case 480}# (lambda (#{e 2569}# #{r 2570}# #{w 2571}# #{s 2572}# #{mod 2573}# #{get-formals 2574}# #{clauses 2575}#) (letrec* ((#{expand-req 2584}# (lambda (#{req 2591}# #{opt 2592}# #{rest 2593}# #{kw 2594}# #{body 2595}#) (begin (let ((#{vars 2603}# (map #{gen-var 484}# #{req 2591}#)) (#{labels 2604}# (#{gen-labels 391}# #{req 2591}#))) (begin (let ((#{r* 2607}# (#{extend-var-env 366}# #{labels 2604}# #{vars 2603}# #{r 2570}#)) (#{w* 2608}# (#{make-binding-wrap 420}# #{req 2591}# #{labels 2604}# #{w 2571}#))) (#{expand-opt 2586}# (map syntax->datum #{req 2591}#) #{opt 2592}# #{rest 2593}# #{kw 2594}# #{body 2595}# (reverse #{vars 2603}#) #{r* 2607}# #{w* 2608}# '() '()))))))) (#{expand-opt 2586}# (lambda (#{req 2609}# #{opt 2610}# #{rest 2611}# #{kw 2612}# #{body 2613}# #{vars 2614}# #{r* 2615}# #{w* 2616}# #{out 2617}# #{inits 2618}#) (if (pair? #{opt 2610}#) (let ((#{tmp 2631}# (car #{opt 2610}#))) (let ((#{tmp 2632}# ($sc-dispatch #{tmp 2631}# '(any any)))) (if #{tmp 2632}# (@apply (lambda (#{id 2635}# #{i 2636}#) (begin (let ((#{v 2639}# (#{gen-var 484}# #{id 2635}#))) (begin (let ((#{l 2641}# (#{gen-labels 391}# (list #{v 2639}#)))) (begin (let ((#{r** 2643}# (#{extend-var-env 366}# #{l 2641}# (list #{v 2639}#) #{r* 2615}#))) (begin (let ((#{w** 2645}# (#{make-binding-wrap 420}# (list #{id 2635}#) #{l 2641}# #{w* 2616}#))) (#{expand-opt 2586}# #{req 2609}# (cdr #{opt 2610}#) #{rest 2611}# #{kw 2612}# #{body 2613}# (cons #{v 2639}# #{vars 2614}#) #{r** 2643}# #{w** 2645}# (cons (syntax->datum #{id 2635}#) #{out 2617}#) (cons (#{chi 456}# #{i 2636}# #{r* 2615}# #{w* 2616}# #{mod 2573}#) #{inits 2618}#))))))))))) #{tmp 2632}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2631}#)))) (if #{rest 2611}# (begin (let ((#{v 2650}# (#{gen-var 484}# #{rest 2611}#))) (begin (let ((#{l 2652}# (#{gen-labels 391}# (list #{v 2650}#)))) (begin (let ((#{r* 2654}# (#{extend-var-env 366}# #{l 2652}# (list #{v 2650}#) #{r* 2615}#))) (begin (let ((#{w* 2656}# (#{make-binding-wrap 420}# (list #{rest 2611}#) #{l 2652}# #{w* 2616}#))) (#{expand-kw 2588}# #{req 2609}# (if (pair? #{out 2617}#) (reverse #{out 2617}#) #f) (syntax->datum #{rest 2611}#) (if (pair? #{kw 2612}#) (cdr #{kw 2612}#) #{kw 2612}#) #{body 2613}# (cons #{v 2650}# #{vars 2614}#) #{r* 2654}# #{w* 2656}# (if (pair? #{kw 2612}#) (car #{kw 2612}#) #f) '() #{inits 2618}#))))))))) (#{expand-kw 2588}# #{req 2609}# (if (pair? #{out 2617}#) (reverse #{out 2617}#) #f) #f (if (pair? #{kw 2612}#) (cdr #{kw 2612}#) #{kw 2612}#) #{body 2613}# #{vars 2614}# #{r* 2615}# #{w* 2616}# (if (pair? #{kw 2612}#) (car #{kw 2612}#) #f) '() #{inits 2618}#))))) (#{expand-kw 2588}# (lambda (#{req 2658}# #{opt 2659}# #{rest 2660}# #{kw 2661}# #{body 2662}# #{vars 2663}# #{r* 2664}# #{w* 2665}# #{aok 2666}# #{out 2667}# #{inits 2668}#) (if (pair? #{kw 2661}#) (let ((#{tmp 2682}# (car #{kw 2661}#))) (let ((#{tmp 2683}# ($sc-dispatch #{tmp 2682}# '(any any any)))) (if #{tmp 2683}# (@apply (lambda (#{k 2687}# #{id 2688}# #{i 2689}#) (begin (let ((#{v 2692}# (#{gen-var 484}# #{id 2688}#))) (begin (let ((#{l 2694}# (#{gen-labels 391}# (list #{v 2692}#)))) (begin (let ((#{r** 2696}# (#{extend-var-env 366}# #{l 2694}# (list #{v 2692}#) #{r* 2664}#))) (begin (let ((#{w** 2698}# (#{make-binding-wrap 420}# (list #{id 2688}#) #{l 2694}# #{w* 2665}#))) (#{expand-kw 2588}# #{req 2658}# #{opt 2659}# #{rest 2660}# (cdr #{kw 2661}#) #{body 2662}# (cons #{v 2692}# #{vars 2663}#) #{r** 2696}# #{w** 2698}# #{aok 2666}# (cons (list (syntax->datum #{k 2687}#) (syntax->datum #{id 2688}#) #{v 2692}#) #{out 2667}#) (cons (#{chi 456}# #{i 2689}# #{r* 2664}# #{w* 2665}# #{mod 2573}#) #{inits 2668}#))))))))))) #{tmp 2683}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2682}#)))) (#{expand-body 2590}# #{req 2658}# #{opt 2659}# #{rest 2660}# (if (begin (let ((#{t 2702}# #{aok 2666}#)) (if #{t 2702}# #{t 2702}# (pair? #{out 2667}#)))) (cons #{aok 2666}# (reverse #{out 2667}#)) #f) #{body 2662}# (reverse #{vars 2663}#) #{r* 2664}# #{w* 2665}# (reverse #{inits 2668}#) '())))) (#{expand-body 2590}# (lambda (#{req 2704}# #{opt 2705}# #{rest 2706}# #{kw 2707}# #{body 2708}# #{vars 2709}# #{r* 2710}# #{w* 2711}# #{inits 2712}# #{meta 2713}#) (let ((#{tmp 2724}# #{body 2708}#)) (let ((#{tmp 2725}# ($sc-dispatch #{tmp 2724}# '(any any . each-any)))) (if (if #{tmp 2725}# (@apply (lambda (#{docstring 2729}# #{e1 2730}# #{e2 2731}#) (string? (syntax->datum #{docstring 2729}#))) #{tmp 2725}#) #f) (@apply (lambda (#{docstring 2735}# #{e1 2736}# #{e2 2737}#) (#{expand-body 2590}# #{req 2704}# #{opt 2705}# #{rest 2706}# #{kw 2707}# (cons #{e1 2736}# #{e2 2737}#) #{vars 2709}# #{r* 2710}# #{w* 2711}# #{inits 2712}# (append #{meta 2713}# (list (cons 'documentation (syntax->datum #{docstring 2735}#)))))) #{tmp 2725}#) (let ((#{tmp 2740}# ($sc-dispatch #{tmp 2724}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp 2740}# (@apply (lambda (#{k 2745}# #{v 2746}# #{e1 2747}# #{e2 2748}#) (#{expand-body 2590}# #{req 2704}# #{opt 2705}# #{rest 2706}# #{kw 2707}# (cons #{e1 2747}# #{e2 2748}#) #{vars 2709}# #{r* 2710}# #{w* 2711}# #{inits 2712}# (append #{meta 2713}# (syntax->datum (map cons #{k 2745}# #{v 2746}#))))) #{tmp 2740}#) (let ((#{tmp 2752}# ($sc-dispatch #{tmp 2724}# '(any . each-any)))) (if #{tmp 2752}# (@apply (lambda (#{e1 2755}# #{e2 2756}#) (values #{meta 2713}# #{req 2704}# #{opt 2705}# #{rest 2706}# #{kw 2707}# #{inits 2712}# #{vars 2709}# (#{chi-body 464}# (cons #{e1 2755}# #{e2 2756}#) (#{source-wrap 444}# #{e 2569}# #{w 2571}# #{s 2572}# #{mod 2573}#) #{r* 2710}# #{w* 2711}# #{mod 2573}#))) #{tmp 2752}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2724}#))))))))))) (begin (let ((#{tmp 2758}# #{clauses 2575}#)) (let ((#{tmp 2759}# ($sc-dispatch #{tmp 2758}# '()))) (if #{tmp 2759}# (@apply (lambda () (values '() #f)) #{tmp 2759}#) (let ((#{tmp 2760}# ($sc-dispatch #{tmp 2758}# '((any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 2760}# (@apply (lambda (#{args 2767}# #{e1 2768}# #{e2 2769}# #{args* 2770}# #{e1* 2771}# #{e2* 2772}#) (call-with-values (lambda () (#{get-formals 2574}# #{args 2767}#)) (lambda (#{req 2773}# #{opt 2774}# #{rest 2775}# #{kw 2776}#) (call-with-values (lambda () (#{expand-req 2584}# #{req 2773}# #{opt 2774}# #{rest 2775}# #{kw 2776}# (cons #{e1 2768}# #{e2 2769}#))) (lambda (#{meta 2782}# #{req 2783}# #{opt 2784}# #{rest 2785}# #{kw 2786}# #{inits 2787}# #{vars 2788}# #{body 2789}#) (call-with-values (lambda () (#{chi-lambda-case 480}# #{e 2569}# #{r 2570}# #{w 2571}# #{s 2572}# #{mod 2573}# #{get-formals 2574}# (map (lambda (#{tmp 2800}# #{tmp 2799}# #{tmp 2798}#) (cons #{tmp 2798}# (cons #{tmp 2799}# #{tmp 2800}#))) #{e2* 2772}# #{e1* 2771}# #{args* 2770}#))) (lambda (#{meta* 2802}# #{else* 2803}#) (values (append #{meta 2782}# #{meta* 2802}#) (#{build-lambda-case 324}# #{s 2572}# #{req 2783}# #{opt 2784}# #{rest 2785}# #{kw 2786}# #{inits 2787}# #{vars 2788}# #{body 2789}# #{else* 2803}#))))))))) #{tmp 2760}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2758}#)))))))))) (#{strip 482}# (lambda (#{x 2806}# #{w 2807}#) (if (memq 'top (car #{w 2807}#)) #{x 2806}# (letrec* ((#{f 2814}# (lambda (#{x 2815}#) (if (#{syntax-object? 342}# #{x 2815}#) (#{strip 482}# (#{syntax-object-expression 344}# #{x 2815}#) (#{syntax-object-wrap 346}# #{x 2815}#)) (if (pair? #{x 2815}#) (begin (let ((#{a 2822}# (#{f 2814}# (car #{x 2815}#))) (#{d 2823}# (#{f 2814}# (cdr #{x 2815}#)))) (if (if (eq? #{a 2822}# (car #{x 2815}#)) (eq? #{d 2823}# (cdr #{x 2815}#)) #f) #{x 2815}# (cons #{a 2822}# #{d 2823}#)))) (if (vector? #{x 2815}#) (begin (let ((#{old 2829}# (vector->list #{x 2815}#))) (begin (let ((#{new 2831}# (map #{f 2814}# #{old 2829}#))) (if (#{and-map* 38}# eq? #{old 2829}# #{new 2831}#) #{x 2815}# (list->vector #{new 2831}#)))))) #{x 2815}#)))))) (begin (#{f 2814}# #{x 2806}#)))))) (#{gen-var 484}# (lambda (#{id 2833}#) (begin (let ((#{id 2836}# (if (#{syntax-object? 342}# #{id 2833}#) (#{syntax-object-expression 344}# #{id 2833}#) #{id 2833}#))) (gensym (string-append (symbol->string #{id 2836}#) " ")))))) (#{lambda-var-list 486}# (lambda (#{vars 2838}#) (letrec* ((#{lvl 2844}# (lambda (#{vars 2845}# #{ls 2846}# #{w 2847}#) (if (pair? #{vars 2845}#) (#{lvl 2844}# (cdr #{vars 2845}#) (cons (#{wrap 442}# (car #{vars 2845}#) #{w 2847}# #f) #{ls 2846}#) #{w 2847}#) (if (#{id? 376}# #{vars 2845}#) (cons (#{wrap 442}# #{vars 2845}# #{w 2847}# #f) #{ls 2846}#) (if (null? #{vars 2845}#) #{ls 2846}# (if (#{syntax-object? 342}# #{vars 2845}#) (#{lvl 2844}# (#{syntax-object-expression 344}# #{vars 2845}#) #{ls 2846}# (#{join-wraps 424}# #{w 2847}# (#{syntax-object-wrap 346}# #{vars 2845}#))) (cons #{vars 2845}# #{ls 2846}#)))))))) (begin (#{lvl 2844}# #{vars 2838}# '() '(()))))))) (begin (lambda (#{src 804}# #{name 805}#) (make-struct/no-tail (vector-ref %expanded-vtables 2) #{src 804}# #{name 805}#)) (lambda (#{x 1182}# #{update 1183}#) (vector-set! #{x 1182}# 1 #{update 1183}#)) (lambda (#{x 1186}# #{update 1187}#) (vector-set! #{x 1186}# 2 #{update 1187}#)) (lambda (#{x 1190}# #{update 1191}#) (vector-set! #{x 1190}# 3 #{update 1191}#)) (lambda (#{x 1271}#) (if (vector? #{x 1271}#) (if (= (vector-length #{x 1271}#) 4) (eq? (vector-ref #{x 1271}# 0) 'ribcage) #f) #f)) (begin (#{global-extend 372}# 'local-syntax 'letrec-syntax #t) (#{global-extend 372}# 'local-syntax 'let-syntax #f) (#{global-extend 372}# 'core 'fluid-let-syntax (lambda (#{e 2858}# #{r 2859}# #{w 2860}# #{s 2861}# #{mod 2862}#) (let ((#{tmp 2868}# #{e 2858}#)) (let ((#{tmp 2869}# ($sc-dispatch #{tmp 2868}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 2869}# (@apply (lambda (#{var 2874}# #{val 2875}# #{e1 2876}# #{e2 2877}#) (#{valid-bound-ids? 436}# #{var 2874}#)) #{tmp 2869}#) #f) (@apply (lambda (#{var 2883}# #{val 2884}# #{e1 2885}# #{e2 2886}#) (begin (let ((#{names 2888}# (map (lambda (#{x 2889}#) (#{id-var-name 430}# #{x 2889}# #{w 2860}#)) #{var 2883}#))) (begin (for-each (lambda (#{id 2892}# #{n 2893}#) (begin (let ((#{atom-key 2898}# (car (#{lookup 370}# #{n 2893}# #{r 2859}# #{mod 2862}#)))) (if (eqv? #{atom-key 2898}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e 2858}# (#{source-wrap 444}# #{id 2892}# #{w 2860}# #{s 2861}# #{mod 2862}#)))))) #{var 2883}# #{names 2888}#) (#{chi-body 464}# (cons #{e1 2885}# #{e2 2886}#) (#{source-wrap 444}# #{e 2858}# #{w 2860}# #{s 2861}# #{mod 2862}#) (#{extend-env 364}# #{names 2888}# (begin (let ((#{trans-r 2904}# (#{macros-only-env 368}# #{r 2859}#))) (map (lambda (#{x 2905}#) (cons 'macro (#{eval-local-transformer 468}# (#{chi 456}# #{x 2905}# #{trans-r 2904}# #{w 2860}# #{mod 2862}#) #{mod 2862}#))) #{val 2884}#))) #{r 2859}#) #{w 2860}# #{mod 2862}#))))) #{tmp 2869}#) (let ((#{_ 2910}# #{tmp 2868}#)) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap 444}# #{e 2858}# #{w 2860}# #{s 2861}# #{mod 2862}#)))))))) (#{global-extend 372}# 'core 'quote (lambda (#{e 2911}# #{r 2912}# #{w 2913}# #{s 2914}# #{mod 2915}#) (let ((#{tmp 2921}# #{e 2911}#)) (let ((#{tmp 2922}# ($sc-dispatch #{tmp 2921}# '(_ any)))) (if #{tmp 2922}# (@apply (lambda (#{e 2924}#) (#{build-data 328}# #{s 2914}# (#{strip 482}# #{e 2924}# #{w 2913}#))) #{tmp 2922}#) (let ((#{_ 2926}# #{tmp 2921}#)) (syntax-violation 'quote "bad syntax" (#{source-wrap 444}# #{e 2911}# #{w 2913}# #{s 2914}# #{mod 2915}#)))))))) (#{global-extend 372}# 'core 'syntax (letrec* ((#{gen-syntax 2928}# (lambda (#{src 2943}# #{e 2944}# #{r 2945}# #{maps 2946}# #{ellipsis? 2947}# #{mod 2948}#) (if (#{id? 376}# #{e 2944}#) (begin (let ((#{label 2956}# (#{id-var-name 430}# #{e 2944}# '(())))) (begin (let ((#{b 2959}# (#{lookup 370}# #{label 2956}# #{r 2945}# #{mod 2948}#))) (if (eq? (car #{b 2959}#) 'syntax) (call-with-values (lambda () (begin (let ((#{var.lev 2962}# (cdr #{b 2959}#))) (#{gen-ref 2930}# #{src 2943}# (car #{var.lev 2962}#) (cdr #{var.lev 2962}#) #{maps 2946}#)))) (lambda (#{var 2964}# #{maps 2965}#) (values (list 'ref #{var 2964}#) #{maps 2965}#))) (if (#{ellipsis? 2947}# #{e 2944}#) (syntax-violation 'syntax "misplaced ellipsis" #{src 2943}#) (values (list 'quote #{e 2944}#) #{maps 2946}#))))))) (let ((#{tmp 2970}# #{e 2944}#)) (let ((#{tmp 2971}# ($sc-dispatch #{tmp 2970}# '(any any)))) (if (if #{tmp 2971}# (@apply (lambda (#{dots 2974}# #{e 2975}#) (#{ellipsis? 2947}# #{dots 2974}#)) #{tmp 2971}#) #f) (@apply (lambda (#{dots 2978}# #{e 2979}#) (#{gen-syntax 2928}# #{src 2943}# #{e 2979}# #{r 2945}# #{maps 2946}# (lambda (#{x 2980}#) #f) #{mod 2948}#)) #{tmp 2971}#) (let ((#{tmp 2982}# ($sc-dispatch #{tmp 2970}# '(any any . any)))) (if (if #{tmp 2982}# (@apply (lambda (#{x 2986}# #{dots 2987}# #{y 2988}#) (#{ellipsis? 2947}# #{dots 2987}#)) #{tmp 2982}#) #f) (@apply (lambda (#{x 2992}# #{dots 2993}# #{y 2994}#) (letrec* ((#{f 2998}# (lambda (#{y 2999}# #{k 3000}#) (let ((#{tmp 3007}# #{y 2999}#)) (let ((#{tmp 3008}# ($sc-dispatch #{tmp 3007}# '(any . any)))) (if (if #{tmp 3008}# (@apply (lambda (#{dots 3011}# #{y 3012}#) (#{ellipsis? 2947}# #{dots 3011}#)) #{tmp 3008}#) #f) (@apply (lambda (#{dots 3015}# #{y 3016}#) (#{f 2998}# #{y 3016}# (lambda (#{maps 3017}#) (call-with-values (lambda () (#{k 3000}# (cons '() #{maps 3017}#))) (lambda (#{x 3019}# #{maps 3020}#) (if (null? (car #{maps 3020}#)) (syntax-violation 'syntax "extra ellipsis" #{src 2943}#) (values (#{gen-mappend 2932}# #{x 3019}# (car #{maps 3020}#)) (cdr #{maps 3020}#)))))))) #{tmp 3008}#) (let ((#{_ 3024}# #{tmp 3007}#)) (call-with-values (lambda () (#{gen-syntax 2928}# #{src 2943}# #{y 2999}# #{r 2945}# #{maps 2946}# #{ellipsis? 2947}# #{mod 2948}#)) (lambda (#{y 3025}# #{maps 3026}#) (call-with-values (lambda () (#{k 3000}# #{maps 3026}#)) (lambda (#{x 3029}# #{maps 3030}#) (values (#{gen-append 2938}# #{x 3029}# #{y 3025}#) #{maps 3030}#)))))))))))) (begin (#{f 2998}# #{y 2994}# (lambda (#{maps 3001}#) (call-with-values (lambda () (#{gen-syntax 2928}# #{src 2943}# #{x 2992}# #{r 2945}# (cons '() #{maps 3001}#) #{ellipsis? 2947}# #{mod 2948}#)) (lambda (#{x 3003}# #{maps 3004}#) (if (null? (car #{maps 3004}#)) (syntax-violation 'syntax "extra ellipsis" #{src 2943}#) (values (#{gen-map 2934}# #{x 3003}# (car #{maps 3004}#)) (cdr #{maps 3004}#)))))))))) #{tmp 2982}#) (let ((#{tmp 3033}# ($sc-dispatch #{tmp 2970}# '(any . any)))) (if #{tmp 3033}# (@apply (lambda (#{x 3036}# #{y 3037}#) (call-with-values (lambda () (#{gen-syntax 2928}# #{src 2943}# #{x 3036}# #{r 2945}# #{maps 2946}# #{ellipsis? 2947}# #{mod 2948}#)) (lambda (#{x 3038}# #{maps 3039}#) (call-with-values (lambda () (#{gen-syntax 2928}# #{src 2943}# #{y 3037}# #{r 2945}# #{maps 3039}# #{ellipsis? 2947}# #{mod 2948}#)) (lambda (#{y 3042}# #{maps 3043}#) (values (#{gen-cons 2936}# #{x 3038}# #{y 3042}#) #{maps 3043}#)))))) #{tmp 3033}#) (let ((#{tmp 3046}# ($sc-dispatch #{tmp 2970}# '#(vector (any . each-any))))) (if #{tmp 3046}# (@apply (lambda (#{e1 3049}# #{e2 3050}#) (call-with-values (lambda () (#{gen-syntax 2928}# #{src 2943}# (cons #{e1 3049}# #{e2 3050}#) #{r 2945}# #{maps 2946}# #{ellipsis? 2947}# #{mod 2948}#)) (lambda (#{e 3052}# #{maps 3053}#) (values (#{gen-vector 2940}# #{e 3052}#) #{maps 3053}#)))) #{tmp 3046}#) (let ((#{_ 3057}# #{tmp 2970}#)) (values (list 'quote #{e 2944}#) #{maps 2946}#)))))))))))))) (#{gen-ref 2930}# (lambda (#{src 3059}# #{var 3060}# #{level 3061}# #{maps 3062}#) (if (= #{level 3061}# 0) (values #{var 3060}# #{maps 3062}#) (if (null? #{maps 3062}#) (syntax-violation 'syntax "missing ellipsis" #{src 3059}#) (call-with-values (lambda () (#{gen-ref 2930}# #{src 3059}# #{var 3060}# (#{1-}# #{level 3061}#) (cdr #{maps 3062}#))) (lambda (#{outer-var 3069}# #{outer-maps 3070}#) (begin (let ((#{b 3074}# (assq #{outer-var 3069}# (car #{maps 3062}#)))) (if #{b 3074}# (values (cdr #{b 3074}#) #{maps 3062}#) (begin (let ((#{inner-var 3076}# (#{gen-var 484}# 'tmp))) (values #{inner-var 3076}# (cons (cons (cons #{outer-var 3069}# #{inner-var 3076}#) (car #{maps 3062}#)) #{outer-maps 3070}#))))))))))))) (#{gen-mappend 2932}# (lambda (#{e 3077}# #{map-env 3078}#) (list 'apply '(primitive append) (#{gen-map 2934}# #{e 3077}# #{map-env 3078}#)))) (#{gen-map 2934}# (lambda (#{e 3082}# #{map-env 3083}#) (begin (let ((#{formals 3088}# (map cdr #{map-env 3083}#)) (#{actuals 3089}# (map (lambda (#{x 3090}#) (list 'ref (car #{x 3090}#))) #{map-env 3083}#))) (if (eq? (car #{e 3082}#) 'ref) (car #{actuals 3089}#) (if (and-map (lambda (#{x 3097}#) (if (eq? (car #{x 3097}#) 'ref) (memq (car (cdr #{x 3097}#)) #{formals 3088}#) #f)) (cdr #{e 3082}#)) (cons 'map (cons (list 'primitive (car #{e 3082}#)) (map (begin (let ((#{r 3103}# (map cons #{formals 3088}# #{actuals 3089}#))) (lambda (#{x 3104}#) (cdr (assq (car (cdr #{x 3104}#)) #{r 3103}#))))) (cdr #{e 3082}#)))) (cons 'map (cons (list 'lambda #{formals 3088}# #{e 3082}#) #{actuals 3089}#)))))))) (#{gen-cons 2936}# (lambda (#{x 3108}# #{y 3109}#) (begin (let ((#{atom-key 3114}# (car #{y 3109}#))) (if (eqv? #{atom-key 3114}# 'quote) (if (eq? (car #{x 3108}#) 'quote) (list 'quote (cons (car (cdr #{x 3108}#)) (car (cdr #{y 3109}#)))) (if (eq? (car (cdr #{y 3109}#)) '()) (list 'list #{x 3108}#) (list 'cons #{x 3108}# #{y 3109}#))) (if (eqv? #{atom-key 3114}# 'list) (cons 'list (cons #{x 3108}# (cdr #{y 3109}#))) (list 'cons #{x 3108}# #{y 3109}#))))))) (#{gen-append 2938}# (lambda (#{x 3123}# #{y 3124}#) (if (equal? #{y 3124}# ''()) #{x 3123}# (list 'append #{x 3123}# #{y 3124}#)))) (#{gen-vector 2940}# (lambda (#{x 3128}#) (if (eq? (car #{x 3128}#) 'list) (cons 'vector (cdr #{x 3128}#)) (if (eq? (car #{x 3128}#) 'quote) (list 'quote (list->vector (car (cdr #{x 3128}#)))) (list 'list->vector #{x 3128}#))))) (#{regen 2942}# (lambda (#{x 3138}#) (begin (let ((#{atom-key 3142}# (car #{x 3138}#))) (if (eqv? #{atom-key 3142}# 'ref) (#{build-lexical-reference 308}# 'value #f (car (cdr #{x 3138}#)) (car (cdr #{x 3138}#))) (if (eqv? #{atom-key 3142}# 'primitive) (#{build-primref 326}# #f (car (cdr #{x 3138}#))) (if (eqv? #{atom-key 3142}# 'quote) (#{build-data 328}# #f (car (cdr #{x 3138}#))) (if (eqv? #{atom-key 3142}# 'lambda) (if (list? (car (cdr #{x 3138}#))) (#{build-simple-lambda 320}# #f (car (cdr #{x 3138}#)) #f (car (cdr #{x 3138}#)) '() (#{regen 2942}# (car (cdr (cdr #{x 3138}#))))) (error "how did we get here" #{x 3138}#)) (#{build-application 302}# #f (#{build-primref 326}# #f (car #{x 3138}#)) (map #{regen 2942}# (cdr #{x 3138}#)))))))))))) (begin (lambda (#{e 3154}# #{r 3155}# #{w 3156}# #{s 3157}# #{mod 3158}#) (begin (let ((#{e 3165}# (#{source-wrap 444}# #{e 3154}# #{w 3156}# #{s 3157}# #{mod 3158}#))) (let ((#{tmp 3166}# #{e 3165}#)) (let ((#{tmp 3167}# ($sc-dispatch #{tmp 3166}# '(_ any)))) (if #{tmp 3167}# (@apply (lambda (#{x 3169}#) (call-with-values (lambda () (#{gen-syntax 2928}# #{e 3165}# #{x 3169}# #{r 3155}# '() #{ellipsis? 472}# #{mod 3158}#)) (lambda (#{e 3170}# #{maps 3171}#) (#{regen 2942}# #{e 3170}#)))) #{tmp 3167}#) (let ((#{_ 3175}# #{tmp 3166}#)) (syntax-violation 'syntax "bad `syntax' form" #{e 3165}#))))))))))) (#{global-extend 372}# 'core 'lambda (lambda (#{e 3176}# #{r 3177}# #{w 3178}# #{s 3179}# #{mod 3180}#) (let ((#{tmp 3186}# #{e 3176}#)) (let ((#{tmp 3187}# ($sc-dispatch #{tmp 3186}# '(_ any any . each-any)))) (if #{tmp 3187}# (@apply (lambda (#{args 3191}# #{e1 3192}# #{e2 3193}#) (call-with-values (lambda () (#{lambda-formals 474}# #{args 3191}#)) (lambda (#{req 3194}# #{opt 3195}# #{rest 3196}# #{kw 3197}#) (letrec* ((#{lp 3205}# (lambda (#{body 3206}# #{meta 3207}#) (let ((#{tmp 3209}# #{body 3206}#)) (let ((#{tmp 3210}# ($sc-dispatch #{tmp 3209}# '(any any . each-any)))) (if (if #{tmp 3210}# (@apply (lambda (#{docstring 3214}# #{e1 3215}# #{e2 3216}#) (string? (syntax->datum #{docstring 3214}#))) #{tmp 3210}#) #f) (@apply (lambda (#{docstring 3220}# #{e1 3221}# #{e2 3222}#) (#{lp 3205}# (cons #{e1 3221}# #{e2 3222}#) (append #{meta 3207}# (list (cons 'documentation (syntax->datum #{docstring 3220}#)))))) #{tmp 3210}#) (let ((#{tmp 3225}# ($sc-dispatch #{tmp 3209}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp 3225}# (@apply (lambda (#{k 3230}# #{v 3231}# #{e1 3232}# #{e2 3233}#) (#{lp 3205}# (cons #{e1 3232}# #{e2 3233}#) (append #{meta 3207}# (syntax->datum (map cons #{k 3230}# #{v 3231}#))))) #{tmp 3225}#) (let ((#{_ 3238}# #{tmp 3209}#)) (#{chi-simple-lambda 476}# #{e 3176}# #{r 3177}# #{w 3178}# #{s 3179}# #{mod 3180}# #{req 3194}# #{rest 3196}# #{meta 3207}# #{body 3206}#)))))))))) (begin (#{lp 3205}# (cons #{e1 3192}# #{e2 3193}#) '())))))) #{tmp 3187}#) (let ((#{_ 3240}# #{tmp 3186}#)) (syntax-violation 'lambda "bad lambda" #{e 3176}#))))))) (#{global-extend 372}# 'core '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)))) (if #{tmp 3252}# (@apply (lambda (#{args 3256}# #{e1 3257}# #{e2 3258}#) (call-with-values (lambda () (#{chi-lambda-case 480}# #{e 3241}# #{r 3242}# #{w 3243}# #{s 3244}# #{mod 3245}# #{lambda*-formals 478}# (list (cons #{args 3256}# (cons #{e1 3257}# #{e2 3258}#))))) (lambda (#{meta 3260}# #{lcase 3261}#) (#{build-case-lambda 322}# #{s 3244}# #{meta 3260}# #{lcase 3261}#)))) #{tmp 3252}#) (let ((#{_ 3265}# #{tmp 3251}#)) (syntax-violation 'lambda "bad lambda*" #{e 3241}#))))))) (#{global-extend 372}# 'core 'case-lambda (lambda (#{e 3266}# #{r 3267}# #{w 3268}# #{s 3269}# #{mod 3270}#) (let ((#{tmp 3276}# #{e 3266}#)) (let ((#{tmp 3277}# ($sc-dispatch #{tmp 3276}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 3277}# (@apply (lambda (#{args 3284}# #{e1 3285}# #{e2 3286}# #{args* 3287}# #{e1* 3288}# #{e2* 3289}#) (call-with-values (lambda () (#{chi-lambda-case 480}# #{e 3266}# #{r 3267}# #{w 3268}# #{s 3269}# #{mod 3270}# #{lambda-formals 474}# (cons (cons #{args 3284}# (cons #{e1 3285}# #{e2 3286}#)) (map (lambda (#{tmp 3293}# #{tmp 3292}# #{tmp 3291}#) (cons #{tmp 3291}# (cons #{tmp 3292}# #{tmp 3293}#))) #{e2* 3289}# #{e1* 3288}# #{args* 3287}#)))) (lambda (#{meta 3295}# #{lcase 3296}#) (#{build-case-lambda 322}# #{s 3269}# #{meta 3295}# #{lcase 3296}#)))) #{tmp 3277}#) (let ((#{_ 3300}# #{tmp 3276}#)) (syntax-violation 'case-lambda "bad case-lambda" #{e 3266}#))))))) (#{global-extend 372}# 'core 'case-lambda* (lambda (#{e 3301}# #{r 3302}# #{w 3303}# #{s 3304}# #{mod 3305}#) (let ((#{tmp 3311}# #{e 3301}#)) (let ((#{tmp 3312}# ($sc-dispatch #{tmp 3311}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 3312}# (@apply (lambda (#{args 3319}# #{e1 3320}# #{e2 3321}# #{args* 3322}# #{e1* 3323}# #{e2* 3324}#) (call-with-values (lambda () (#{chi-lambda-case 480}# #{e 3301}# #{r 3302}# #{w 3303}# #{s 3304}# #{mod 3305}# #{lambda*-formals 478}# (cons (cons #{args 3319}# (cons #{e1 3320}# #{e2 3321}#)) (map (lambda (#{tmp 3328}# #{tmp 3327}# #{tmp 3326}#) (cons #{tmp 3326}# (cons #{tmp 3327}# #{tmp 3328}#))) #{e2* 3324}# #{e1* 3323}# #{args* 3322}#)))) (lambda (#{meta 3330}# #{lcase 3331}#) (#{build-case-lambda 322}# #{s 3304}# #{meta 3330}# #{lcase 3331}#)))) #{tmp 3312}#) (let ((#{_ 3335}# #{tmp 3311}#)) (syntax-violation 'case-lambda "bad case-lambda*" #{e 3301}#))))))) (#{global-extend 372}# 'core 'let (letrec* ((#{chi-let 3337}# (lambda (#{e 3338}# #{r 3339}# #{w 3340}# #{s 3341}# #{mod 3342}# #{constructor 3343}# #{ids 3344}# #{vals 3345}# #{exps 3346}#) (if (not (#{valid-bound-ids? 436}# #{ids 3344}#)) (syntax-violation 'let "duplicate bound variable" #{e 3338}#) (begin (let ((#{labels 3358}# (#{gen-labels 391}# #{ids 3344}#)) (#{new-vars 3359}# (map #{gen-var 484}# #{ids 3344}#))) (begin (let ((#{nw 3362}# (#{make-binding-wrap 420}# #{ids 3344}# #{labels 3358}# #{w 3340}#)) (#{nr 3363}# (#{extend-var-env 366}# #{labels 3358}# #{new-vars 3359}# #{r 3339}#))) (#{constructor 3343}# #{s 3341}# (map syntax->datum #{ids 3344}#) #{new-vars 3359}# (map (lambda (#{x 3364}#) (#{chi 456}# #{x 3364}# #{r 3339}# #{w 3340}# #{mod 3342}#)) #{vals 3345}#) (#{chi-body 464}# #{exps 3346}# (#{source-wrap 444}# #{e 3338}# #{nw 3362}# #{s 3341}# #{mod 3342}#) #{nr 3363}# #{nw 3362}# #{mod 3342}#)))))))))) (begin (lambda (#{e 3366}# #{r 3367}# #{w 3368}# #{s 3369}# #{mod 3370}#) (let ((#{tmp 3376}# #{e 3366}#)) (let ((#{tmp 3377}# ($sc-dispatch #{tmp 3376}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3377}# (@apply (lambda (#{id 3382}# #{val 3383}# #{e1 3384}# #{e2 3385}#) (and-map #{id? 376}# #{id 3382}#)) #{tmp 3377}#) #f) (@apply (lambda (#{id 3391}# #{val 3392}# #{e1 3393}# #{e2 3394}#) (#{chi-let 3337}# #{e 3366}# #{r 3367}# #{w 3368}# #{s 3369}# #{mod 3370}# #{build-let 332}# #{id 3391}# #{val 3392}# (cons #{e1 3393}# #{e2 3394}#))) #{tmp 3377}#) (let ((#{tmp 3398}# ($sc-dispatch #{tmp 3376}# '(_ any #(each (any any)) any . each-any)))) (if (if #{tmp 3398}# (@apply (lambda (#{f 3404}# #{id 3405}# #{val 3406}# #{e1 3407}# #{e2 3408}#) (if (#{id? 376}# #{f 3404}#) (and-map #{id? 376}# #{id 3405}#) #f)) #{tmp 3398}#) #f) (@apply (lambda (#{f 3417}# #{id 3418}# #{val 3419}# #{e1 3420}# #{e2 3421}#) (#{chi-let 3337}# #{e 3366}# #{r 3367}# #{w 3368}# #{s 3369}# #{mod 3370}# #{build-named-let 334}# (cons #{f 3417}# #{id 3418}#) #{val 3419}# (cons #{e1 3420}# #{e2 3421}#))) #{tmp 3398}#) (let ((#{_ 3426}# #{tmp 3376}#)) (syntax-violation 'let "bad let" (#{source-wrap 444}# #{e 3366}# #{w 3368}# #{s 3369}# #{mod 3370}#)))))))))))) (#{global-extend 372}# 'core 'letrec (lambda (#{e 3427}# #{r 3428}# #{w 3429}# #{s 3430}# #{mod 3431}#) (let ((#{tmp 3437}# #{e 3427}#)) (let ((#{tmp 3438}# ($sc-dispatch #{tmp 3437}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3438}# (@apply (lambda (#{id 3443}# #{val 3444}# #{e1 3445}# #{e2 3446}#) (and-map #{id? 376}# #{id 3443}#)) #{tmp 3438}#) #f) (@apply (lambda (#{id 3452}# #{val 3453}# #{e1 3454}# #{e2 3455}#) (begin (let ((#{ids 3457}# #{id 3452}#)) (if (not (#{valid-bound-ids? 436}# #{ids 3457}#)) (syntax-violation 'letrec "duplicate bound variable" #{e 3427}#) (begin (let ((#{labels 3461}# (#{gen-labels 391}# #{ids 3457}#)) (#{new-vars 3462}# (map #{gen-var 484}# #{ids 3457}#))) (begin (let ((#{w 3465}# (#{make-binding-wrap 420}# #{ids 3457}# #{labels 3461}# #{w 3429}#)) (#{r 3466}# (#{extend-var-env 366}# #{labels 3461}# #{new-vars 3462}# #{r 3428}#))) (#{build-letrec 336}# #{s 3430}# #f (map syntax->datum #{ids 3457}#) #{new-vars 3462}# (map (lambda (#{x 3467}#) (#{chi 456}# #{x 3467}# #{r 3466}# #{w 3465}# #{mod 3431}#)) #{val 3453}#) (#{chi-body 464}# (cons #{e1 3454}# #{e2 3455}#) (#{source-wrap 444}# #{e 3427}# #{w 3465}# #{s 3430}# #{mod 3431}#) #{r 3466}# #{w 3465}# #{mod 3431}#)))))))))) #{tmp 3438}#) (let ((#{_ 3472}# #{tmp 3437}#)) (syntax-violation 'letrec "bad letrec" (#{source-wrap 444}# #{e 3427}# #{w 3429}# #{s 3430}# #{mod 3431}#)))))))) (#{global-extend 372}# 'core 'letrec* (lambda (#{e 3473}# #{r 3474}# #{w 3475}# #{s 3476}# #{mod 3477}#) (let ((#{tmp 3483}# #{e 3473}#)) (let ((#{tmp 3484}# ($sc-dispatch #{tmp 3483}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3484}# (@apply (lambda (#{id 3489}# #{val 3490}# #{e1 3491}# #{e2 3492}#) (and-map #{id? 376}# #{id 3489}#)) #{tmp 3484}#) #f) (@apply (lambda (#{id 3498}# #{val 3499}# #{e1 3500}# #{e2 3501}#) (begin (let ((#{ids 3503}# #{id 3498}#)) (if (not (#{valid-bound-ids? 436}# #{ids 3503}#)) (syntax-violation 'letrec* "duplicate bound variable" #{e 3473}#) (begin (let ((#{labels 3507}# (#{gen-labels 391}# #{ids 3503}#)) (#{new-vars 3508}# (map #{gen-var 484}# #{ids 3503}#))) (begin (let ((#{w 3511}# (#{make-binding-wrap 420}# #{ids 3503}# #{labels 3507}# #{w 3475}#)) (#{r 3512}# (#{extend-var-env 366}# #{labels 3507}# #{new-vars 3508}# #{r 3474}#))) (#{build-letrec 336}# #{s 3476}# #t (map syntax->datum #{ids 3503}#) #{new-vars 3508}# (map (lambda (#{x 3513}#) (#{chi 456}# #{x 3513}# #{r 3512}# #{w 3511}# #{mod 3477}#)) #{val 3499}#) (#{chi-body 464}# (cons #{e1 3500}# #{e2 3501}#) (#{source-wrap 444}# #{e 3473}# #{w 3511}# #{s 3476}# #{mod 3477}#) #{r 3512}# #{w 3511}# #{mod 3477}#)))))))))) #{tmp 3484}#) (let ((#{_ 3518}# #{tmp 3483}#)) (syntax-violation 'letrec* "bad letrec*" (#{source-wrap 444}# #{e 3473}# #{w 3475}# #{s 3476}# #{mod 3477}#)))))))) (#{global-extend 372}# 'core 'set! (lambda (#{e 3519}# #{r 3520}# #{w 3521}# #{s 3522}# #{mod 3523}#) (let ((#{tmp 3529}# #{e 3519}#)) (let ((#{tmp 3530}# ($sc-dispatch #{tmp 3529}# '(_ any any)))) (if (if #{tmp 3530}# (@apply (lambda (#{id 3533}# #{val 3534}#) (#{id? 376}# #{id 3533}#)) #{tmp 3530}#) #f) (@apply (lambda (#{id 3537}# #{val 3538}#) (begin (let ((#{n 3541}# (#{id-var-name 430}# #{id 3537}# #{w 3521}#)) (#{id-mod 3542}# (if (#{syntax-object? 342}# #{id 3537}#) (#{syntax-object-module 348}# #{id 3537}#) #{mod 3523}#))) (begin (let ((#{b 3544}# (#{lookup 370}# #{n 3541}# #{r 3520}# #{id-mod 3542}#))) (begin (let ((#{atom-key 3547}# (car #{b 3544}#))) (if (eqv? #{atom-key 3547}# 'lexical) (#{build-lexical-assignment 310}# #{s 3522}# (syntax->datum #{id 3537}#) (cdr #{b 3544}#) (#{chi 456}# #{val 3538}# #{r 3520}# #{w 3521}# #{mod 3523}#)) (if (eqv? #{atom-key 3547}# 'global) (#{build-global-assignment 316}# #{s 3522}# #{n 3541}# (#{chi 456}# #{val 3538}# #{r 3520}# #{w 3521}# #{mod 3523}#) #{id-mod 3542}#) (if (eqv? #{atom-key 3547}# 'macro) (begin (let ((#{p 3554}# (cdr #{b 3544}#))) (if (procedure-property #{p 3554}# 'variable-transformer) (#{chi 456}# (#{chi-macro 462}# #{p 3554}# #{e 3519}# #{r 3520}# #{w 3521}# #{s 3522}# #f #{mod 3523}#) #{r 3520}# '(()) #{mod 3523}#) (syntax-violation 'set! "not a variable transformer" (#{wrap 442}# #{e 3519}# #{w 3521}# #{mod 3523}#) (#{wrap 442}# #{id 3537}# #{w 3521}# #{id-mod 3542}#))))) (if (eqv? #{atom-key 3547}# 'displaced-lexical) (syntax-violation 'set! "identifier out of context" (#{wrap 442}# #{id 3537}# #{w 3521}# #{mod 3523}#)) (syntax-violation 'set! "bad set!" (#{source-wrap 444}# #{e 3519}# #{w 3521}# #{s 3522}# #{mod 3523}#))))))))))))) #{tmp 3530}#) (let ((#{tmp 3559}# ($sc-dispatch #{tmp 3529}# '(_ (any . each-any) any)))) (if #{tmp 3559}# (@apply (lambda (#{head 3563}# #{tail 3564}# #{val 3565}#) (call-with-values (lambda () (#{syntax-type 454}# #{head 3563}# #{r 3520}# '(()) #f #f #{mod 3523}# #t)) (lambda (#{type 3568}# #{value 3569}# #{ee 3570}# #{ww 3571}# #{ss 3572}# #{modmod 3573}#) (if (eqv? #{type 3568}# 'module-ref) (begin (let ((#{val 3582}# (#{chi 456}# #{val 3565}# #{r 3520}# #{w 3521}# #{mod 3523}#))) (call-with-values (lambda () (#{value 3569}# (cons #{head 3563}# #{tail 3564}#) #{r 3520}# #{w 3521}#)) (lambda (#{e 3584}# #{r 3585}# #{w 3586}# #{s* 3587}# #{mod 3588}#) (let ((#{tmp 3594}# #{e 3584}#)) (let ((#{tmp 3595}# (list #{tmp 3594}#))) (if (if #{tmp 3595}# (@apply (lambda (#{e 3597}#) (#{id? 376}# #{e 3597}#)) #{tmp 3595}#) #f) (@apply (lambda (#{e 3599}#) (#{build-global-assignment 316}# #{s 3522}# (syntax->datum #{e 3599}#) #{val 3582}# #{mod 3588}#)) #{tmp 3595}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3594}#)))))))) (#{build-application 302}# #{s 3522}# (#{chi 456}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3574" "i3575" "i3576" "i3577" "i3578" "i3579")) #(ribcage #(head tail val) #((top) (top) (top)) #("i3560" "i3561" "i3562")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3524" "i3525" "i3526" "i3527" "i3528")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) #{head 3563}#) #{r 3520}# #{w 3521}# #{mod 3523}#) (map (lambda (#{e 3601}#) (#{chi 456}# #{e 3601}# #{r 3520}# #{w 3521}# #{mod 3523}#)) (append #{tail 3564}# (list #{val 3565}#)))))))) #{tmp 3559}#) (let ((#{_ 3605}# #{tmp 3529}#)) (syntax-violation 'set! "bad set!" (#{source-wrap 444}# #{e 3519}# #{w 3521}# #{s 3522}# #{mod 3523}#)))))))))) (#{global-extend 372}# 'module-ref '@ (lambda (#{e 3606}# #{r 3607}# #{w 3608}#) (let ((#{tmp 3612}# #{e 3606}#)) (let ((#{tmp 3613}# ($sc-dispatch #{tmp 3612}# '(_ each-any any)))) (if (if #{tmp 3613}# (@apply (lambda (#{mod 3616}# #{id 3617}#) (if (and-map #{id? 376}# #{mod 3616}#) (#{id? 376}# #{id 3617}#) #f)) #{tmp 3613}#) #f) (@apply (lambda (#{mod 3623}# #{id 3624}#) (values (syntax->datum #{id 3624}#) #{r 3607}# #{w 3608}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(mod id) #((top) (top)) #("i3621" "i3622")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3609" "i3610" "i3611")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) #{mod 3623}#)))) #{tmp 3613}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3612}#)))))) (#{global-extend 372}# 'module-ref '@@ (lambda (#{e 3626}# #{r 3627}# #{w 3628}#) (letrec* ((#{remodulate 3633}# (lambda (#{x 3634}# #{mod 3635}#) (if (pair? #{x 3634}#) (cons (#{remodulate 3633}# (car #{x 3634}#) #{mod 3635}#) (#{remodulate 3633}# (cdr #{x 3634}#) #{mod 3635}#)) (if (#{syntax-object? 342}# #{x 3634}#) (#{make-syntax-object 340}# (#{remodulate 3633}# (#{syntax-object-expression 344}# #{x 3634}#) #{mod 3635}#) (#{syntax-object-wrap 346}# #{x 3634}#) #{mod 3635}#) (if (vector? #{x 3634}#) (begin (let ((#{n 3646}# (vector-length #{x 3634}#))) (begin (let ((#{v 3648}# (make-vector #{n 3646}#))) (letrec* ((#{loop 3651}# (lambda (#{i 3652}#) (if (= #{i 3652}# #{n 3646}#) (begin (if #f #f) #{v 3648}#) (begin (vector-set! #{v 3648}# #{i 3652}# (#{remodulate 3633}# (vector-ref #{x 3634}# #{i 3652}#) #{mod 3635}#)) (#{loop 3651}# (#{1+}# #{i 3652}#))))))) (begin (#{loop 3651}# 0))))))) #{x 3634}#)))))) (begin (let ((#{tmp 3658}# #{e 3626}#)) (let ((#{tmp 3659}# ($sc-dispatch #{tmp 3658}# '(_ each-any any)))) (if (if #{tmp 3659}# (@apply (lambda (#{mod 3662}# #{exp 3663}#) (and-map #{id? 376}# #{mod 3662}#)) #{tmp 3659}#) #f) (@apply (lambda (#{mod 3667}# #{exp 3668}#) (begin (let ((#{mod 3670}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(mod exp) #((top) (top)) #("i3665" "i3666")) #(ribcage (remodulate) ((top)) ("i3632")) #(ribcage #(e r w) #((top) (top) (top)) #("i3629" "i3630" "i3631")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) #{mod 3667}#)))) (values (#{remodulate 3633}# #{exp 3668}# #{mod 3670}#) #{r 3627}# #{w 3628}# (#{source-annotation 357}# #{exp 3668}#) #{mod 3670}#)))) #{tmp 3659}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3658}#)))))))) (#{global-extend 372}# 'core 'if (lambda (#{e 3672}# #{r 3673}# #{w 3674}# #{s 3675}# #{mod 3676}#) (let ((#{tmp 3682}# #{e 3672}#)) (let ((#{tmp 3683}# ($sc-dispatch #{tmp 3682}# '(_ any any)))) (if #{tmp 3683}# (@apply (lambda (#{test 3686}# #{then 3687}#) (#{build-conditional 304}# #{s 3675}# (#{chi 456}# #{test 3686}# #{r 3673}# #{w 3674}# #{mod 3676}#) (#{chi 456}# #{then 3687}# #{r 3673}# #{w 3674}# #{mod 3676}#) (#{build-void 300}# #f))) #{tmp 3683}#) (let ((#{tmp 3689}# ($sc-dispatch #{tmp 3682}# '(_ any any any)))) (if #{tmp 3689}# (@apply (lambda (#{test 3693}# #{then 3694}# #{else 3695}#) (#{build-conditional 304}# #{s 3675}# (#{chi 456}# #{test 3693}# #{r 3673}# #{w 3674}# #{mod 3676}#) (#{chi 456}# #{then 3694}# #{r 3673}# #{w 3674}# #{mod 3676}#) (#{chi 456}# #{else 3695}# #{r 3673}# #{w 3674}# #{mod 3676}#))) #{tmp 3689}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3682}#)))))))) (#{global-extend 372}# 'core 'with-fluids (lambda (#{e 3696}# #{r 3697}# #{w 3698}# #{s 3699}# #{mod 3700}#) (let ((#{tmp 3706}# #{e 3696}#)) (let ((#{tmp 3707}# ($sc-dispatch #{tmp 3706}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 3707}# (@apply (lambda (#{fluid 3712}# #{val 3713}# #{b 3714}# #{b* 3715}#) (#{build-dynlet 306}# #{s 3699}# (map (lambda (#{x 3716}#) (#{chi 456}# #{x 3716}# #{r 3697}# #{w 3698}# #{mod 3700}#)) #{fluid 3712}#) (map (lambda (#{x 3719}#) (#{chi 456}# #{x 3719}# #{r 3697}# #{w 3698}# #{mod 3700}#)) #{val 3713}#) (#{chi-body 464}# (cons #{b 3714}# #{b* 3715}#) (#{source-wrap 444}# #{e 3696}# #{w 3698}# #{s 3699}# #{mod 3700}#) #{r 3697}# #{w 3698}# #{mod 3700}#))) #{tmp 3707}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3706}#)))))) (#{global-extend 372}# 'begin 'begin '()) (#{global-extend 372}# 'define 'define '()) (#{global-extend 372}# 'define-syntax 'define-syntax '()) (#{global-extend 372}# 'eval-when 'eval-when '()) (#{global-extend 372}# 'core 'syntax-case (letrec* ((#{convert-pattern 3724}# (lambda (#{pattern 3731}# #{keys 3732}#) (letrec* ((#{cvt* 3736}# (lambda (#{p* 3739}# #{n 3740}# #{ids 3741}#) (if (null? #{p* 3739}#) (values '() #{ids 3741}#) (call-with-values (lambda () (#{cvt* 3736}# (cdr #{p* 3739}#) #{n 3740}# #{ids 3741}#)) (lambda (#{y 3745}# #{ids 3746}#) (call-with-values (lambda () (#{cvt 3738}# (car #{p* 3739}#) #{n 3740}# #{ids 3746}#)) (lambda (#{x 3749}# #{ids 3750}#) (values (cons #{x 3749}# #{y 3745}#) #{ids 3750}#)))))))) (#{cvt 3738}# (lambda (#{p 3753}# #{n 3754}# #{ids 3755}#) (if (#{id? 376}# #{p 3753}#) (if (#{bound-id-member? 440}# #{p 3753}# #{keys 3732}#) (values (vector 'free-id #{p 3753}#) #{ids 3755}#) (if (#{free-id=? 432}# #{p 3753}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3756" "i3757" "i3758")) #(ribcage (cvt cvt*) ((top) (top)) ("i3737" "i3735")) #(ribcage #(pattern keys) #((top) (top)) #("i3733" "i3734")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3729" "i3727" "i3725" "i3723")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) (values '_ #{ids 3755}#) (values 'any (cons (cons #{p 3753}# #{n 3754}#) #{ids 3755}#)))) (let ((#{tmp 3764}# #{p 3753}#)) (let ((#{tmp 3765}# ($sc-dispatch #{tmp 3764}# '(any any)))) (if (if #{tmp 3765}# (@apply (lambda (#{x 3768}# #{dots 3769}#) (#{ellipsis? 472}# #{dots 3769}#)) #{tmp 3765}#) #f) (@apply (lambda (#{x 3772}# #{dots 3773}#) (call-with-values (lambda () (#{cvt 3738}# #{x 3772}# (#{1+}# #{n 3754}#) #{ids 3755}#)) (lambda (#{p 3775}# #{ids 3776}#) (values (if (eq? #{p 3775}# 'any) 'each-any (vector 'each #{p 3775}#)) #{ids 3776}#)))) #{tmp 3765}#) (let ((#{tmp 3779}# ($sc-dispatch #{tmp 3764}# '(any any . each-any)))) (if (if #{tmp 3779}# (@apply (lambda (#{x 3783}# #{dots 3784}# #{ys 3785}#) (#{ellipsis? 472}# #{dots 3784}#)) #{tmp 3779}#) #f) (@apply (lambda (#{x 3789}# #{dots 3790}# #{ys 3791}#) (call-with-values (lambda () (#{cvt* 3736}# #{ys 3791}# #{n 3754}# #{ids 3755}#)) (lambda (#{ys 3793}# #{ids 3794}#) (call-with-values (lambda () (#{cvt 3738}# #{x 3789}# (#{1+}# #{n 3754}#) #{ids 3794}#)) (lambda (#{x 3797}# #{ids 3798}#) (values (vector 'each+ #{x 3797}# (reverse #{ys 3793}#) '()) #{ids 3798}#)))))) #{tmp 3779}#) (let ((#{tmp 3802}# ($sc-dispatch #{tmp 3764}# '(any . any)))) (if #{tmp 3802}# (@apply (lambda (#{x 3805}# #{y 3806}#) (call-with-values (lambda () (#{cvt 3738}# #{y 3806}# #{n 3754}# #{ids 3755}#)) (lambda (#{y 3807}# #{ids 3808}#) (call-with-values (lambda () (#{cvt 3738}# #{x 3805}# #{n 3754}# #{ids 3808}#)) (lambda (#{x 3811}# #{ids 3812}#) (values (cons #{x 3811}# #{y 3807}#) #{ids 3812}#)))))) #{tmp 3802}#) (let ((#{tmp 3815}# ($sc-dispatch #{tmp 3764}# '()))) (if #{tmp 3815}# (@apply (lambda () (values '() #{ids 3755}#)) #{tmp 3815}#) (let ((#{tmp 3816}# ($sc-dispatch #{tmp 3764}# '#(vector each-any)))) (if #{tmp 3816}# (@apply (lambda (#{x 3818}#) (call-with-values (lambda () (#{cvt 3738}# #{x 3818}# #{n 3754}# #{ids 3755}#)) (lambda (#{p 3820}# #{ids 3821}#) (values (vector 'vector #{p 3820}#) #{ids 3821}#)))) #{tmp 3816}#) (let ((#{x 3825}# #{tmp 3764}#)) (values (vector 'atom (#{strip 482}# #{p 3753}# '(()))) #{ids 3755}#))))))))))))))))) (begin (#{cvt 3738}# #{pattern 3731}# 0 '()))))) (#{build-dispatch-call 3726}# (lambda (#{pvars 3827}# #{exp 3828}# #{y 3829}# #{r 3830}# #{mod 3831}#) (begin (map cdr #{pvars 3827}#) (let ((#{ids 3839}# (map car #{pvars 3827}#))) (begin (let ((#{labels 3843}# (#{gen-labels 391}# #{ids 3839}#)) (#{new-vars 3844}# (map #{gen-var 484}# #{ids 3839}#))) (#{build-application 302}# #f (#{build-primref 326}# #f 'apply) (list (#{build-simple-lambda 320}# #f (map syntax->datum #{ids 3839}#) #f #{new-vars 3844}# '() (#{chi 456}# #{exp 3828}# (#{extend-env 364}# #{labels 3843}# (map (lambda (#{var 3848}# #{level 3849}#) (cons 'syntax (cons #{var 3848}# #{level 3849}#))) #{new-vars 3844}# (map cdr #{pvars 3827}#)) #{r 3830}#) (#{make-binding-wrap 420}# #{ids 3839}# #{labels 3843}# '(())) #{mod 3831}#)) #{y 3829}#)))))))) (#{gen-clause 3728}# (lambda (#{x 3855}# #{keys 3856}# #{clauses 3857}# #{r 3858}# #{pat 3859}# #{fender 3860}# #{exp 3861}# #{mod 3862}#) (call-with-values (lambda () (#{convert-pattern 3724}# #{pat 3859}# #{keys 3856}#)) (lambda (#{p 3871}# #{pvars 3872}#) (if (not (#{distinct-bound-ids? 438}# (map car #{pvars 3872}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat 3859}#) (if (not (and-map (lambda (#{x 3879}#) (not (#{ellipsis? 472}# (car #{x 3879}#)))) #{pvars 3872}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat 3859}#) (begin (let ((#{y 3883}# (#{gen-var 484}# 'tmp))) (#{build-application 302}# #f (#{build-simple-lambda 320}# #f (list 'tmp) #f (list #{y 3883}#) '() (begin (let ((#{y 3887}# (#{build-lexical-reference 308}# 'value #f 'tmp #{y 3883}#))) (#{build-conditional 304}# #f (let ((#{tmp 3890}# #{fender 3860}#)) (let ((#{tmp 3891}# ($sc-dispatch #{tmp 3890}# '#(atom #t)))) (if #{tmp 3891}# (@apply (lambda () #{y 3887}#) #{tmp 3891}#) (let ((#{_ 3893}# #{tmp 3890}#)) (#{build-conditional 304}# #f #{y 3887}# (#{build-dispatch-call 3726}# #{pvars 3872}# #{fender 3860}# #{y 3887}# #{r 3858}# #{mod 3862}#) (#{build-data 328}# #f #f)))))) (#{build-dispatch-call 3726}# #{pvars 3872}# #{exp 3861}# #{y 3887}# #{r 3858}# #{mod 3862}#) (#{gen-syntax-case 3730}# #{x 3855}# #{keys 3856}# #{clauses 3857}# #{r 3858}# #{mod 3862}#))))) (list (if (eq? #{p 3871}# 'any) (#{build-application 302}# #f (#{build-primref 326}# #f 'list) (list #{x 3855}#)) (#{build-application 302}# #f (#{build-primref 326}# #f '$sc-dispatch) (list #{x 3855}# (#{build-data 328}# #f #{p 3871}#)))))))))))))) (#{gen-syntax-case 3730}# (lambda (#{x 3901}# #{keys 3902}# #{clauses 3903}# #{r 3904}# #{mod 3905}#) (if (null? #{clauses 3903}#) (#{build-application 302}# #f (#{build-primref 326}# #f 'syntax-violation) (list (#{build-data 328}# #f #f) (#{build-data 328}# #f "source expression failed to match any pattern") #{x 3901}#)) (let ((#{tmp 3915}# (car #{clauses 3903}#))) (let ((#{tmp 3916}# ($sc-dispatch #{tmp 3915}# '(any any)))) (if #{tmp 3916}# (@apply (lambda (#{pat 3919}# #{exp 3920}#) (if (if (#{id? 376}# #{pat 3919}#) (and-map (lambda (#{x 3923}#) (not (#{free-id=? 432}# #{pat 3919}# #{x 3923}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3917" "i3918")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3906" "i3907" "i3908" "i3909" "i3910")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3729" "i3727" "i3725" "i3723")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) #{keys 3902}#)) #f) (if (#{free-id=? 432}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3917" "i3918")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3906" "i3907" "i3908" "i3909" "i3910")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3729" "i3727" "i3725" "i3723")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile)) '#(syntax-object _ ((top) #(ribcage #(pat exp) #((top) (top)) #("i3917" "i3918")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3906" "i3907" "i3908" "i3909" "i3910")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3729" "i3727" "i3725" "i3723")) #(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)) ("i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i417" "i416" "i415" "i413" "i412" "i411" "i410" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i393" "i390" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i381" "i380" "i378" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i363" "i362" "i361" "i360" "i359" "i358" "i356" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i290" "i288" "i286" "i285" "i284" "i283" "i282" "i280" "i278" "i276" "i273" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i41" "i40" "i39" "i37"))) (hygiene guile))) (#{chi 456}# #{exp 3920}# #{r 3904}# '(()) #{mod 3905}#) (begin (let ((#{labels 3928}# (list (#{gen-label 389}#))) (#{var 3929}# (#{gen-var 484}# #{pat 3919}#))) (#{build-application 302}# #f (#{build-simple-lambda 320}# #f (list (syntax->datum #{pat 3919}#)) #f (list #{var 3929}#) '() (#{chi 456}# #{exp 3920}# (#{extend-env 364}# #{labels 3928}# (list (cons 'syntax (cons #{var 3929}# 0))) #{r 3904}#) (#{make-binding-wrap 420}# (list #{pat 3919}#) #{labels 3928}# '(())) #{mod 3905}#)) (list #{x 3901}#))))) (#{gen-clause 3728}# #{x 3901}# #{keys 3902}# (cdr #{clauses 3903}#) #{r 3904}# #{pat 3919}# #t #{exp 3920}# #{mod 3905}#))) #{tmp 3916}#) (let ((#{tmp 3935}# ($sc-dispatch #{tmp 3915}# '(any any any)))) (if #{tmp 3935}# (@apply (lambda (#{pat 3939}# #{fender 3940}# #{exp 3941}#) (#{gen-clause 3728}# #{x 3901}# #{keys 3902}# (cdr #{clauses 3903}#) #{r 3904}# #{pat 3939}# #{fender 3940}# #{exp 3941}# #{mod 3905}#)) #{tmp 3935}#) (let ((#{_ 3943}# #{tmp 3915}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses 3903}#)))))))))))) (begin (lambda (#{e 3944}# #{r 3945}# #{w 3946}# #{s 3947}# #{mod 3948}#) (begin (let ((#{e 3955}# (#{source-wrap 444}# #{e 3944}# #{w 3946}# #{s 3947}# #{mod 3948}#))) (let ((#{tmp 3956}# #{e 3955}#)) (let ((#{tmp 3957}# ($sc-dispatch #{tmp 3956}# '(_ any each-any . each-any)))) (if #{tmp 3957}# (@apply (lambda (#{val 3961}# #{key 3962}# #{m 3963}#) (if (and-map (lambda (#{x 3964}#) (if (#{id? 376}# #{x 3964}#) (not (#{ellipsis? 472}# #{x 3964}#)) #f)) #{key 3962}#) (begin (let ((#{x 3970}# (#{gen-var 484}# 'tmp))) (#{build-application 302}# #{s 3947}# (#{build-simple-lambda 320}# #f (list 'tmp) #f (list #{x 3970}#) '() (#{gen-syntax-case 3730}# (#{build-lexical-reference 308}# 'value #f 'tmp #{x 3970}#) #{key 3962}# #{m 3963}# #{r 3945}# #{mod 3948}#)) (list (#{chi 456}# #{val 3961}# #{r 3945}# '(()) #{mod 3948}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e 3955}#))) #{tmp 3957}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3956}#)))))))))) (set! macroexpand (lambda* (#{x 3976}# #:optional (#{m 3978}# 'e) (#{esew 3980}# '(eval))) (#{chi-top-sequence 448}# (list #{x 3976}#) '() '((top)) #f #{m 3978}# #{esew 3980}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x 3984}#) (#{nonsymbol-id? 374}# #{x 3984}#))) (set! datum->syntax (lambda (#{id 3986}# #{datum 3987}#) (#{make-syntax-object 340}# #{datum 3987}# (#{syntax-object-wrap 346}# #{id 3986}#) (#{syntax-object-module 348}# #{id 3986}#)))) (set! syntax->datum (lambda (#{x 3990}#) (#{strip 482}# #{x 3990}# '(())))) (set! syntax-source (lambda (#{x 3993}#) (#{source-annotation 357}# #{x 3993}#))) (set! generate-temporaries (lambda (#{ls 3995}#) (begin (begin (let ((#{x 3999}# #{ls 3995}#)) (if (not (list? #{x 3999}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x 3999}#)))) (map (lambda (#{x 4000}#) (#{wrap 442}# (gensym) '((top)) #f)) #{ls 3995}#)))) (set! free-identifier=? (lambda (#{x 4004}# #{y 4005}#) (begin (begin (let ((#{x 4010}# #{x 4004}#)) (if (not (#{nonsymbol-id? 374}# #{x 4010}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 4010}#)))) (begin (let ((#{x 4013}# #{y 4005}#)) (if (not (#{nonsymbol-id? 374}# #{x 4013}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 4013}#)))) (#{free-id=? 432}# #{x 4004}# #{y 4005}#)))) (set! bound-identifier=? (lambda (#{x 4014}# #{y 4015}#) (begin (begin (let ((#{x 4020}# #{x 4014}#)) (if (not (#{nonsymbol-id? 374}# #{x 4020}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 4020}#)))) (begin (let ((#{x 4023}# #{y 4015}#)) (if (not (#{nonsymbol-id? 374}# #{x 4023}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 4023}#)))) (#{bound-id=? 434}# #{x 4014}# #{y 4015}#)))) (set! syntax-violation (lambda* (#{who 4024}# #{message 4025}# #{form 4026}# #:optional (#{subform 4030}# #f)) (begin (begin (let ((#{x 4034}# #{who 4024}#)) (if (not (let ((#{x 4035}# #{x 4034}#)) (begin (let ((#{t 4039}# (not #{x 4035}#))) (if #{t 4039}# #{t 4039}# (begin (let ((#{t 4042}# (string? #{x 4035}#))) (if #{t 4042}# #{t 4042}# (symbol? #{x 4035}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x 4034}#)))) (begin (let ((#{x 4046}# #{message 4025}#)) (if (not (string? #{x 4046}#)) (syntax-violation 'syntax-violation "invalid argument" #{x 4046}#)))) (throw 'syntax-error #{who 4024}# #{message 4025}# (#{source-annotation 357}# (begin (let ((#{t 4049}# #{form 4026}#)) (if #{t 4049}# #{t 4049}# #{subform 4030}#)))) (#{strip 482}# #{form 4026}# '(())) (if #{subform 4030}# (#{strip 482}# #{subform 4030}# '(())) #f))))) (letrec* ((#{match-each 4056}# (lambda (#{e 4069}# #{p 4070}# #{w 4071}# #{mod 4072}#) (if (pair? #{e 4069}#) (begin (let ((#{first 4080}# (#{match 4068}# (car #{e 4069}#) #{p 4070}# #{w 4071}# '() #{mod 4072}#))) (if #{first 4080}# (begin (let ((#{rest 4084}# (#{match-each 4056}# (cdr #{e 4069}#) #{p 4070}# #{w 4071}# #{mod 4072}#))) (if #{rest 4084}# (cons #{first 4080}# #{rest 4084}#) #f))) #f))) (if (null? #{e 4069}#) '() (if (#{syntax-object? 342}# #{e 4069}#) (#{match-each 4056}# (#{syntax-object-expression 344}# #{e 4069}#) #{p 4070}# (#{join-wraps 424}# #{w 4071}# (#{syntax-object-wrap 346}# #{e 4069}#)) (#{syntax-object-module 348}# #{e 4069}#)) #f))))) (#{match-each+ 4058}# (lambda (#{e 4092}# #{x-pat 4093}# #{y-pat 4094}# #{z-pat 4095}# #{w 4096}# #{r 4097}# #{mod 4098}#) (letrec* ((#{f 4109}# (lambda (#{e 4110}# #{w 4111}#) (if (pair? #{e 4110}#) (call-with-values (lambda () (#{f 4109}# (cdr #{e 4110}#) #{w 4111}#)) (lambda (#{xr* 4114}# #{y-pat 4115}# #{r 4116}#) (if #{r 4116}# (if (null? #{y-pat 4115}#) (begin (let ((#{xr 4121}# (#{match 4068}# (car #{e 4110}#) #{x-pat 4093}# #{w 4111}# '() #{mod 4098}#))) (if #{xr 4121}# (values (cons #{xr 4121}# #{xr* 4114}#) #{y-pat 4115}# #{r 4116}#) (values #f #f #f)))) (values '() (cdr #{y-pat 4115}#) (#{match 4068}# (car #{e 4110}#) (car #{y-pat 4115}#) #{w 4111}# #{r 4116}# #{mod 4098}#))) (values #f #f #f)))) (if (#{syntax-object? 342}# #{e 4110}#) (#{f 4109}# (#{syntax-object-expression 344}# #{e 4110}#) (#{join-wraps 424}# #{w 4111}# #{e 4110}#)) (values '() #{y-pat 4094}# (#{match 4068}# #{e 4110}# #{z-pat 4095}# #{w 4111}# #{r 4097}# #{mod 4098}#))))))) (begin (#{f 4109}# #{e 4092}# #{w 4096}#))))) (#{match-each-any 4060}# (lambda (#{e 4125}# #{w 4126}# #{mod 4127}#) (if (pair? #{e 4125}#) (begin (let ((#{l 4134}# (#{match-each-any 4060}# (cdr #{e 4125}#) #{w 4126}# #{mod 4127}#))) (if #{l 4134}# (cons (#{wrap 442}# (car #{e 4125}#) #{w 4126}# #{mod 4127}#) #{l 4134}#) #f))) (if (null? #{e 4125}#) '() (if (#{syntax-object? 342}# #{e 4125}#) (#{match-each-any 4060}# (#{syntax-object-expression 344}# #{e 4125}#) (#{join-wraps 424}# #{w 4126}# (#{syntax-object-wrap 346}# #{e 4125}#)) #{mod 4127}#) #f))))) (#{match-empty 4062}# (lambda (#{p 4142}# #{r 4143}#) (if (null? #{p 4142}#) #{r 4143}# (if (eq? #{p 4142}# '_) #{r 4143}# (if (eq? #{p 4142}# 'any) (cons '() #{r 4143}#) (if (pair? #{p 4142}#) (#{match-empty 4062}# (car #{p 4142}#) (#{match-empty 4062}# (cdr #{p 4142}#) #{r 4143}#)) (if (eq? #{p 4142}# 'each-any) (cons '() #{r 4143}#) (begin (let ((#{atom-key 4159}# (vector-ref #{p 4142}# 0))) (if (eqv? #{atom-key 4159}# 'each) (#{match-empty 4062}# (vector-ref #{p 4142}# 1) #{r 4143}#) (if (eqv? #{atom-key 4159}# 'each+) (#{match-empty 4062}# (vector-ref #{p 4142}# 1) (#{match-empty 4062}# (reverse (vector-ref #{p 4142}# 2)) (#{match-empty 4062}# (vector-ref #{p 4142}# 3) #{r 4143}#))) (if (if (eqv? #{atom-key 4159}# 'free-id) #t (eqv? #{atom-key 4159}# 'atom)) #{r 4143}# (if (eqv? #{atom-key 4159}# 'vector) (#{match-empty 4062}# (vector-ref #{p 4142}# 1) #{r 4143}#)))))))))))))) (#{combine 4064}# (lambda (#{r* 4164}# #{r 4165}#) (if (null? (car #{r* 4164}#)) #{r 4165}# (cons (map car #{r* 4164}#) (#{combine 4064}# (map cdr #{r* 4164}#) #{r 4165}#))))) (#{match* 4066}# (lambda (#{e 4168}# #{p 4169}# #{w 4170}# #{r 4171}# #{mod 4172}#) (if (null? #{p 4169}#) (if (null? #{e 4168}#) #{r 4171}# #f) (if (pair? #{p 4169}#) (if (pair? #{e 4168}#) (#{match 4068}# (car #{e 4168}#) (car #{p 4169}#) #{w 4170}# (#{match 4068}# (cdr #{e 4168}#) (cdr #{p 4169}#) #{w 4170}# #{r 4171}# #{mod 4172}#) #{mod 4172}#) #f) (if (eq? #{p 4169}# 'each-any) (begin (let ((#{l 4189}# (#{match-each-any 4060}# #{e 4168}# #{w 4170}# #{mod 4172}#))) (if #{l 4189}# (cons #{l 4189}# #{r 4171}#) #f))) (begin (let ((#{atom-key 4195}# (vector-ref #{p 4169}# 0))) (if (eqv? #{atom-key 4195}# 'each) (if (null? #{e 4168}#) (#{match-empty 4062}# (vector-ref #{p 4169}# 1) #{r 4171}#) (begin (let ((#{l 4198}# (#{match-each 4056}# #{e 4168}# (vector-ref #{p 4169}# 1) #{w 4170}# #{mod 4172}#))) (if #{l 4198}# (letrec* ((#{collect 4203}# (lambda (#{l 4204}#) (if (null? (car #{l 4204}#)) #{r 4171}# (cons (map car #{l 4204}#) (#{collect 4203}# (map cdr #{l 4204}#))))))) (begin (#{collect 4203}# #{l 4198}#))) #f)))) (if (eqv? #{atom-key 4195}# 'each+) (call-with-values (lambda () (#{match-each+ 4058}# #{e 4168}# (vector-ref #{p 4169}# 1) (vector-ref #{p 4169}# 2) (vector-ref #{p 4169}# 3) #{w 4170}# #{r 4171}# #{mod 4172}#)) (lambda (#{xr* 4206}# #{y-pat 4207}# #{r 4208}#) (if #{r 4208}# (if (null? #{y-pat 4207}#) (if (null? #{xr* 4206}#) (#{match-empty 4062}# (vector-ref #{p 4169}# 1) #{r 4208}#) (#{combine 4064}# #{xr* 4206}# #{r 4208}#)) #f) #f))) (if (eqv? #{atom-key 4195}# 'free-id) (if (#{id? 376}# #{e 4168}#) (if (#{free-id=? 432}# (#{wrap 442}# #{e 4168}# #{w 4170}# #{mod 4172}#) (vector-ref #{p 4169}# 1)) #{r 4171}# #f) #f) (if (eqv? #{atom-key 4195}# 'atom) (if (equal? (vector-ref #{p 4169}# 1) (#{strip 482}# #{e 4168}# #{w 4170}#)) #{r 4171}# #f) (if (eqv? #{atom-key 4195}# 'vector) (if (vector? #{e 4168}#) (#{match 4068}# (vector->list #{e 4168}#) (vector-ref #{p 4169}# 1) #{w 4170}# #{r 4171}# #{mod 4172}#) #f))))))))))))) (#{match 4068}# (lambda (#{e 4225}# #{p 4226}# #{w 4227}# #{r 4228}# #{mod 4229}#) (if (not #{r 4228}#) #f (if (eq? #{p 4226}# '_) #{r 4228}# (if (eq? #{p 4226}# 'any) (cons (#{wrap 442}# #{e 4225}# #{w 4227}# #{mod 4229}#) #{r 4228}#) (if (#{syntax-object? 342}# #{e 4225}#) (#{match* 4066}# (#{syntax-object-expression 344}# #{e 4225}#) #{p 4226}# (#{join-wraps 424}# #{w 4227}# (#{syntax-object-wrap 346}# #{e 4225}#)) #{r 4228}# (#{syntax-object-module 348}# #{e 4225}#)) (#{match* 4066}# #{e 4225}# #{p 4226}# #{w 4227}# #{r 4228}# #{mod 4229}#)))))))) (begin (set! $sc-dispatch (lambda (#{e 4244}# #{p 4245}#) (if (eq? #{p 4245}# 'any) (list #{e 4244}#) (if (eq? #{p 4245}# '_) '() (if (#{syntax-object? 342}# #{e 4244}#) (#{match* 4066}# (#{syntax-object-expression 344}# #{e 4244}#) #{p 4245}# (#{syntax-object-wrap 346}# #{e 4244}#) '() (#{syntax-object-module 348}# #{e 4244}#)) (#{match* 4066}# #{e 4244}# #{p 4245}# '(()) '() #f))))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x 4256}#) (let ((#{tmp 4258}# #{x 4256}#)) (let ((#{tmp 4259}# ($sc-dispatch #{tmp 4258}# '(_ () any . each-any)))) (if #{tmp 4259}# (@apply (lambda (#{e1 4262}# #{e2 4263}#) (cons '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4260" "i4261")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4257"))) (hygiene guile)) (cons '() (cons #{e1 4262}# #{e2 4263}#)))) #{tmp 4259}#) (let ((#{tmp 4265}# ($sc-dispatch #{tmp 4258}# '(_ ((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)) #("i4257"))) (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)) #("i4257"))) (hygiene guile)) (cons '() (cons #{e1 4272}# #{e2 4273}#)))))) #{tmp 4265}#) (let ((#{tmp 4275}# ($sc-dispatch #{tmp 4258}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 4275}# (@apply (lambda (#{out 4280}# #{in 4281}# #{e1 4282}# #{e2 4283}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4257"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4257"))) (hygiene guile)) #{in 4281}#) '() (list #{out 4280}# (cons '#(syntax-object let ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4257"))) (hygiene guile)) (cons '() (cons #{e1 4282}# #{e2 4283}#)))))) #{tmp 4275}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4258}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x 4287}#) (let ((#{tmp 4289}# #{x 4287}#)) (let ((#{tmp 4290}# ($sc-dispatch #{tmp 4289}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp 4290}# (@apply (lambda (#{k 4295}# #{keyword 4296}# #{pattern 4297}# #{template 4298}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) #{pattern 4297}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) (cons #{k 4295}# (map (lambda (#{tmp 4302}# #{tmp 4301}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) #{tmp 4301}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) #{tmp 4302}#))) #{template 4298}# #{pattern 4297}#)))))) #{tmp 4290}#) (let ((#{tmp 4303}# ($sc-dispatch #{tmp 4289}# '(_ each-any any . #(each ((any . any) any)))))) (if (if #{tmp 4303}# (@apply (lambda (#{k 4309}# #{docstring 4310}# #{keyword 4311}# #{pattern 4312}# #{template 4313}#) (string? (syntax->datum #{docstring 4310}#))) #{tmp 4303}#) #f) (@apply (lambda (#{k 4319}# #{docstring 4320}# #{keyword 4321}# #{pattern 4322}# #{template 4323}#) (list '#(syntax-object lambda ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile))) #{docstring 4320}# (vector '(#(syntax-object macro-type ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) #{pattern 4322}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) (cons #{k 4319}# (map (lambda (#{tmp 4327}# #{tmp 4326}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) #{tmp 4326}#) (list '#(syntax-object syntax ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4314" "i4315" "i4316" "i4317" "i4318")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4288"))) (hygiene guile)) #{tmp 4327}#))) #{template 4323}# #{pattern 4322}#)))))) #{tmp 4303}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4289}#))))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x 4328}#) (let ((#{tmp 4330}# #{x 4328}#)) (let ((#{tmp 4331}# ($sc-dispatch #{tmp 4330}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp 4331}# (@apply (lambda (#{let* 4337}# #{x 4338}# #{v 4339}# #{e1 4340}# #{e2 4341}#) (and-map identifier? #{x 4338}#)) #{tmp 4331}#) #f) (@apply (lambda (#{let* 4348}# #{x 4349}# #{v 4350}# #{e1 4351}# #{e2 4352}#) (letrec* ((#{f 4355}# (lambda (#{bindings 4356}#) (if (null? #{bindings 4356}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4353" "i4354")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4343" "i4344" "i4345" "i4346" "i4347")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4329"))) (hygiene guile)) (cons '() (cons #{e1 4351}# #{e2 4352}#))) (let ((#{tmp 4361}# (list (#{f 4355}# (cdr #{bindings 4356}#)) (car #{bindings 4356}#)))) (let ((#{tmp 4362}# ($sc-dispatch #{tmp 4361}# '(any any)))) (if #{tmp 4362}# (@apply (lambda (#{body 4365}# #{binding 4366}#) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body binding) #((top) (top)) #("i4363" "i4364")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4353" "i4354")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4343" "i4344" "i4345" "i4346" "i4347")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4329"))) (hygiene guile)) (list #{binding 4366}#) #{body 4365}#)) #{tmp 4362}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4361}#)))))))) (begin (#{f 4355}# (map list #{x 4349}# #{v 4350}#))))) #{tmp 4331}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4330}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x 4367}#) (let ((#{tmp 4369}# #{orig-x 4367}#)) (let ((#{tmp 4370}# ($sc-dispatch #{tmp 4369}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp 4370}# (@apply (lambda (#{var 4377}# #{init 4378}# #{step 4379}# #{e0 4380}# #{e1 4381}# #{c 4382}#) (let ((#{tmp 4384}# (map (lambda (#{v 4405}# #{s 4406}#) (let ((#{tmp 4409}# #{s 4406}#)) (let ((#{tmp 4410}# ($sc-dispatch #{tmp 4409}# '()))) (if #{tmp 4410}# (@apply (lambda () #{v 4405}#) #{tmp 4410}#) (let ((#{tmp 4411}# ($sc-dispatch #{tmp 4409}# '(any)))) (if #{tmp 4411}# (@apply (lambda (#{e 4413}#) #{e 4413}#) #{tmp 4411}#) (let ((#{_ 4415}# #{tmp 4409}#)) (syntax-violation 'do "bad step expression" #{orig-x 4367}# #{s 4406}#)))))))) #{var 4377}# #{step 4379}#))) (let ((#{tmp 4385}# ($sc-dispatch #{tmp 4384}# 'each-any))) (if #{tmp 4385}# (@apply (lambda (#{step 4387}#) (let ((#{tmp 4388}# #{e1 4381}#)) (let ((#{tmp 4389}# ($sc-dispatch #{tmp 4388}# '()))) (if #{tmp 4389}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) (map list #{var 4377}# #{init 4378}#) (list '#(syntax-object if ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) #{e0 4380}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) (append #{c 4382}# (list (cons '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) #{step 4387}#))))))) #{tmp 4389}#) (let ((#{tmp 4394}# ($sc-dispatch #{tmp 4388}# '(any . each-any)))) (if #{tmp 4394}# (@apply (lambda (#{e1 4397}# #{e2 4398}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4395" "i4396")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4395" "i4396")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) (map list #{var 4377}# #{init 4378}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4395" "i4396")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) #{e0 4380}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4395" "i4396")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) (cons #{e1 4397}# #{e2 4398}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4395" "i4396")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) (append #{c 4382}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4395" "i4396")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4386")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4371" "i4372" "i4373" "i4374" "i4375" "i4376")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4368"))) (hygiene guile)) #{step 4387}#))))))) #{tmp 4394}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4388}#))))))) #{tmp 4385}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4384}#))))) #{tmp 4370}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4369}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasi 4419}# (lambda (#{p 4432}# #{lev 4433}#) (let ((#{tmp 4436}# #{p 4432}#)) (let ((#{tmp 4437}# ($sc-dispatch #{tmp 4436}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) any)))) (if #{tmp 4437}# (@apply (lambda (#{p 4439}#) (if (= #{lev 4433}# 0) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4438")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{p 4439}#) (#{quasicons 4423}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4438")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4438")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) (#{quasi 4419}# (list #{p 4439}#) (#{1-}# #{lev 4433}#))))) #{tmp 4437}#) (let ((#{tmp 4440}# ($sc-dispatch #{tmp 4436}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) any)))) (if #{tmp 4440}# (@apply (lambda (#{p 4442}#) (#{quasicons 4423}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4441")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4441")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) (#{quasi 4419}# (list #{p 4442}#) (#{1+}# #{lev 4433}#)))) #{tmp 4440}#) (let ((#{tmp 4443}# ($sc-dispatch #{tmp 4436}# '(any . any)))) (if #{tmp 4443}# (@apply (lambda (#{p 4446}# #{q 4447}#) (let ((#{tmp 4448}# #{p 4446}#)) (let ((#{tmp 4449}# ($sc-dispatch #{tmp 4448}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) . each-any)))) (if #{tmp 4449}# (@apply (lambda (#{p 4451}#) (if (= #{lev 4433}# 0) (#{quasilist* 4427}# (map (lambda (#{tmp 4452}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4450")) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{tmp 4452}#)) #{p 4451}#) (#{quasi 4419}# #{q 4447}# #{lev 4433}#)) (#{quasicons 4423}# (#{quasicons 4423}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4450")) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4450")) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) (#{quasi 4419}# #{p 4451}# (#{1-}# #{lev 4433}#))) (#{quasi 4419}# #{q 4447}# #{lev 4433}#)))) #{tmp 4449}#) (let ((#{tmp 4454}# ($sc-dispatch #{tmp 4448}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) . each-any)))) (if #{tmp 4454}# (@apply (lambda (#{p 4456}#) (if (= #{lev 4433}# 0) (#{quasiappend 4425}# (map (lambda (#{tmp 4457}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{tmp 4457}#)) #{p 4456}#) (#{quasi 4419}# #{q 4447}# #{lev 4433}#)) (#{quasicons 4423}# (#{quasicons 4423}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage #(p q) #((top) (top)) #("i4444" "i4445")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) (#{quasi 4419}# #{p 4456}# (#{1-}# #{lev 4433}#))) (#{quasi 4419}# #{q 4447}# #{lev 4433}#)))) #{tmp 4454}#) (let ((#{_ 4460}# #{tmp 4448}#)) (#{quasicons 4423}# (#{quasi 4419}# #{p 4446}# #{lev 4433}#) (#{quasi 4419}# #{q 4447}# #{lev 4433}#))))))))) #{tmp 4443}#) (let ((#{tmp 4461}# ($sc-dispatch #{tmp 4436}# '#(vector each-any)))) (if #{tmp 4461}# (@apply (lambda (#{x 4463}#) (#{quasivector 4429}# (#{vquasi 4421}# #{x 4463}# #{lev 4433}#))) #{tmp 4461}#) (let ((#{p 4466}# #{tmp 4436}#)) (list '#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4465")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4434" "i4435")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{p 4466}#))))))))))))) (#{vquasi 4421}# (lambda (#{p 4467}# #{lev 4468}#) (let ((#{tmp 4471}# #{p 4467}#)) (let ((#{tmp 4472}# ($sc-dispatch #{tmp 4471}# '(any . any)))) (if #{tmp 4472}# (@apply (lambda (#{p 4475}# #{q 4476}#) (let ((#{tmp 4477}# #{p 4475}#)) (let ((#{tmp 4478}# ($sc-dispatch #{tmp 4477}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) . each-any)))) (if #{tmp 4478}# (@apply (lambda (#{p 4480}#) (if (= #{lev 4468}# 0) (#{quasilist* 4427}# (map (lambda (#{tmp 4481}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4479")) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{tmp 4481}#)) #{p 4480}#) (#{vquasi 4421}# #{q 4476}# #{lev 4468}#)) (#{quasicons 4423}# (#{quasicons 4423}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4479")) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4479")) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) (#{quasi 4419}# #{p 4480}# (#{1-}# #{lev 4468}#))) (#{vquasi 4421}# #{q 4476}# #{lev 4468}#)))) #{tmp 4478}#) (let ((#{tmp 4483}# ($sc-dispatch #{tmp 4477}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) . each-any)))) (if #{tmp 4483}# (@apply (lambda (#{p 4485}#) (if (= #{lev 4468}# 0) (#{quasiappend 4425}# (map (lambda (#{tmp 4486}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4484")) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{tmp 4486}#)) #{p 4485}#) (#{vquasi 4421}# #{q 4476}# #{lev 4468}#)) (#{quasicons 4423}# (#{quasicons 4423}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4484")) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4484")) #(ribcage #(p q) #((top) (top)) #("i4473" "i4474")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile))) (#{quasi 4419}# #{p 4485}# (#{1-}# #{lev 4468}#))) (#{vquasi 4421}# #{q 4476}# #{lev 4468}#)))) #{tmp 4483}#) (let ((#{_ 4489}# #{tmp 4477}#)) (#{quasicons 4423}# (#{quasi 4419}# #{p 4475}# #{lev 4468}#) (#{vquasi 4421}# #{q 4476}# #{lev 4468}#))))))))) #{tmp 4472}#) (let ((#{tmp 4490}# ($sc-dispatch #{tmp 4471}# '()))) (if #{tmp 4490}# (@apply (lambda () '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) ())) #{tmp 4490}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4471}#)))))))) (#{quasicons 4423}# (lambda (#{x 4491}# #{y 4492}#) (let ((#{tmp 4496}# (list #{x 4491}# #{y 4492}#))) (let ((#{tmp 4497}# ($sc-dispatch #{tmp 4496}# '(any any)))) (if #{tmp 4497}# (@apply (lambda (#{x 4500}# #{y 4501}#) (let ((#{tmp 4502}# #{y 4501}#)) (let ((#{tmp 4503}# ($sc-dispatch #{tmp 4502}# '(#(atom "quote") any)))) (if #{tmp 4503}# (@apply (lambda (#{dy 4505}#) (let ((#{tmp 4506}# #{x 4500}#)) (let ((#{tmp 4507}# ($sc-dispatch #{tmp 4506}# '(#(atom "quote") any)))) (if #{tmp 4507}# (@apply (lambda (#{dx 4509}#) (list '#(syntax-object "quote" ((top) #(ribcage #(dx) #((top)) #("i4508")) #(ribcage #(dy) #((top)) #("i4504")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4493" "i4494")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) (cons #{dx 4509}# #{dy 4505}#))) #{tmp 4507}#) (let ((#{_ 4511}# #{tmp 4506}#)) (if (null? #{dy 4505}#) (list '#(syntax-object "list" ((top) #(ribcage #(_) #((top)) #("i4510")) #(ribcage #(dy) #((top)) #("i4504")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4493" "i4494")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{x 4500}#) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4510")) #(ribcage #(dy) #((top)) #("i4504")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4493" "i4494")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{x 4500}# #{y 4501}#))))))) #{tmp 4503}#) (let ((#{tmp 4512}# ($sc-dispatch #{tmp 4502}# '(#(atom "list") . any)))) (if #{tmp 4512}# (@apply (lambda (#{stuff 4514}#) (cons '#(syntax-object "list" ((top) #(ribcage #(stuff) #((top)) #("i4513")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4493" "i4494")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) (cons #{x 4500}# #{stuff 4514}#))) #{tmp 4512}#) (let ((#{tmp 4515}# ($sc-dispatch #{tmp 4502}# '(#(atom "list*") . any)))) (if #{tmp 4515}# (@apply (lambda (#{stuff 4517}#) (cons '#(syntax-object "list*" ((top) #(ribcage #(stuff) #((top)) #("i4516")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4493" "i4494")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) (cons #{x 4500}# #{stuff 4517}#))) #{tmp 4515}#) (let ((#{_ 4519}# #{tmp 4502}#)) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4518")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4493" "i4494")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{x 4500}# #{y 4501}#)))))))))) #{tmp 4497}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4496}#)))))) (#{quasiappend 4425}# (lambda (#{x 4520}# #{y 4521}#) (let ((#{tmp 4524}# #{y 4521}#)) (let ((#{tmp 4525}# ($sc-dispatch #{tmp 4524}# '(#(atom "quote") ())))) (if #{tmp 4525}# (@apply (lambda () (if (null? #{x 4520}#) '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4522" "i4523")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) ()) (if (null? (cdr #{x 4520}#)) (car #{x 4520}#) (let ((#{tmp 4532}# #{x 4520}#)) (let ((#{tmp 4533}# ($sc-dispatch #{tmp 4532}# 'each-any))) (if #{tmp 4533}# (@apply (lambda (#{p 4535}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p) #((top)) #("i4534")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4522" "i4523")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{p 4535}#)) #{tmp 4533}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4532}#))))))) #{tmp 4525}#) (let ((#{_ 4538}# #{tmp 4524}#)) (if (null? #{x 4520}#) #{y 4521}# (let ((#{tmp 4543}# (list #{x 4520}# #{y 4521}#))) (let ((#{tmp 4544}# ($sc-dispatch #{tmp 4543}# '(each-any any)))) (if #{tmp 4544}# (@apply (lambda (#{p 4547}# #{y 4548}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p y) #((top) (top)) #("i4545" "i4546")) #(ribcage #(_) #((top)) #("i4537")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4522" "i4523")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) (append #{p 4547}# (list #{y 4548}#)))) #{tmp 4544}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4543}#))))))))))) (#{quasilist* 4427}# (lambda (#{x 4550}# #{y 4551}#) (letrec* ((#{f 4556}# (lambda (#{x 4557}#) (if (null? #{x 4557}#) #{y 4551}# (#{quasicons 4423}# (car #{x 4557}#) (#{f 4556}# (cdr #{x 4557}#))))))) (begin (#{f 4556}# #{x 4550}#))))) (#{quasivector 4429}# (lambda (#{x 4558}#) (let ((#{tmp 4560}# #{x 4558}#)) (let ((#{tmp 4561}# ($sc-dispatch #{tmp 4560}# '(#(atom "quote") each-any)))) (if #{tmp 4561}# (@apply (lambda (#{x 4563}#) (list '#(syntax-object "quote" ((top) #(ribcage #(x) #((top)) #("i4562")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4559")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) (list->vector #{x 4563}#))) #{tmp 4561}#) (let ((#{_ 4566}# #{tmp 4560}#)) (letrec* ((#{f 4570}# (lambda (#{y 4571}# #{k 4572}#) (let ((#{tmp 4583}# #{y 4571}#)) (let ((#{tmp 4584}# ($sc-dispatch #{tmp 4583}# '(#(atom "quote") each-any)))) (if #{tmp 4584}# (@apply (lambda (#{y 4586}#) (#{k 4572}# (map (lambda (#{tmp 4587}#) (list '#(syntax-object "quote" ((top) #(ribcage #(y) #((top)) #("i4585")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4567" "i4568" "i4569")) #(ribcage #(_) #((top)) #("i4565")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4559")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{tmp 4587}#)) #{y 4586}#))) #{tmp 4584}#) (let ((#{tmp 4588}# ($sc-dispatch #{tmp 4583}# '(#(atom "list") . each-any)))) (if #{tmp 4588}# (@apply (lambda (#{y 4590}#) (#{k 4572}# #{y 4590}#)) #{tmp 4588}#) (let ((#{tmp 4592}# ($sc-dispatch #{tmp 4583}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4592}# (@apply (lambda (#{y 4595}# #{z 4596}#) (#{f 4570}# #{z 4596}# (lambda (#{ls 4597}#) (#{k 4572}# (append #{y 4595}# #{ls 4597}#))))) #{tmp 4592}#) (let ((#{else 4601}# #{tmp 4583}#)) (let ((#{tmp 4605}# #{x 4558}#)) (let ((#{ g4602 4607}# #{tmp 4605}#)) (list '#(syntax-object "list->vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4602}#) #((m4603 top)) #("i4606")) #(ribcage #(else) #((top)) #("i4600")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4567" "i4568" "i4569")) #(ribcage #(_) #((top)) #("i4565")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4559")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{ g4602 4607}#)))))))))))))) (begin (#{f 4570}# #{x 4558}# (lambda (#{ls 4573}#) (let ((#{tmp 4578}# #{ls 4573}#)) (let ((#{tmp 4579}# ($sc-dispatch #{tmp 4578}# 'each-any))) (if #{tmp 4579}# (@apply (lambda (#{ g4575 4581}#) (cons '#(syntax-object "vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4575}#) #((m4576 top)) #("i4580")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ls) #((top)) #("i4574")) #(ribcage #(_) #((top)) #("i4565")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4559")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{ g4575 4581}#)) #{tmp 4579}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4578}#)))))))))))))) (#{emit 4431}# (lambda (#{x 4608}#) (let ((#{tmp 4610}# #{x 4608}#)) (let ((#{tmp 4611}# ($sc-dispatch #{tmp 4610}# '(#(atom "quote") any)))) (if #{tmp 4611}# (@apply (lambda (#{x 4613}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4612")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4609")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{x 4613}#)) #{tmp 4611}#) (let ((#{tmp 4614}# ($sc-dispatch #{tmp 4610}# '(#(atom "list") . each-any)))) (if #{tmp 4614}# (@apply (lambda (#{x 4616}#) (let ((#{tmp 4620}# (map #{emit 4431}# #{x 4616}#))) (let ((#{tmp 4621}# ($sc-dispatch #{tmp 4620}# 'each-any))) (if #{tmp 4621}# (@apply (lambda (#{ g4617 4623}#) (cons '#(syntax-object list ((top) #(ribcage () () ()) #(ribcage #(#{ g4617}#) #((m4618 top)) #("i4622")) #(ribcage #(x) #((top)) #("i4615")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4609")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{ g4617 4623}#)) #{tmp 4621}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4620}#))))) #{tmp 4614}#) (let ((#{tmp 4626}# ($sc-dispatch #{tmp 4610}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4626}# (@apply (lambda (#{x 4629}# #{y 4630}#) (letrec* ((#{f 4633}# (lambda (#{x* 4634}#) (if (null? #{x* 4634}#) (#{emit 4431}# #{y 4630}#) (let ((#{tmp 4640}# (list (#{emit 4431}# (car #{x* 4634}#)) (#{f 4633}# (cdr #{x* 4634}#))))) (let ((#{tmp 4641}# ($sc-dispatch #{tmp 4640}# '(any any)))) (if #{tmp 4641}# (@apply (lambda (#{ g4637 4644}# #{ g4636 4645}#) (list '#(syntax-object cons ((top) #(ribcage () () ()) #(ribcage #(#{ g4637}# #{ g4636}#) #((m4638 top) (m4638 top)) #("i4642" "i4643")) #(ribcage () () ()) #(ribcage #(f x*) #((top) (top)) #("i4631" "i4632")) #(ribcage #(x y) #((top) (top)) #("i4627" "i4628")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4609")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{ g4637 4644}# #{ g4636 4645}#)) #{tmp 4641}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4640}#)))))))) (begin (#{f 4633}# #{x 4629}#)))) #{tmp 4626}#) (let ((#{tmp 4646}# ($sc-dispatch #{tmp 4610}# '(#(atom "append") . each-any)))) (if #{tmp 4646}# (@apply (lambda (#{x 4648}#) (let ((#{tmp 4652}# (map #{emit 4431}# #{x 4648}#))) (let ((#{tmp 4653}# ($sc-dispatch #{tmp 4652}# 'each-any))) (if #{tmp 4653}# (@apply (lambda (#{ g4649 4655}#) (cons '#(syntax-object append ((top) #(ribcage () () ()) #(ribcage #(#{ g4649}#) #((m4650 top)) #("i4654")) #(ribcage #(x) #((top)) #("i4647")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4609")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{ g4649 4655}#)) #{tmp 4653}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4652}#))))) #{tmp 4646}#) (let ((#{tmp 4658}# ($sc-dispatch #{tmp 4610}# '(#(atom "vector") . each-any)))) (if #{tmp 4658}# (@apply (lambda (#{x 4660}#) (let ((#{tmp 4664}# (map #{emit 4431}# #{x 4660}#))) (let ((#{tmp 4665}# ($sc-dispatch #{tmp 4664}# 'each-any))) (if #{tmp 4665}# (@apply (lambda (#{ g4661 4667}#) (cons '#(syntax-object vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4661}#) #((m4662 top)) #("i4666")) #(ribcage #(x) #((top)) #("i4659")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4609")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{ g4661 4667}#)) #{tmp 4665}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4664}#))))) #{tmp 4658}#) (let ((#{tmp 4670}# ($sc-dispatch #{tmp 4610}# '(#(atom "list->vector") any)))) (if #{tmp 4670}# (@apply (lambda (#{x 4672}#) (let ((#{tmp 4676}# (#{emit 4431}# #{x 4672}#))) (let ((#{ g4673 4678}# #{tmp 4676}#)) (list '#(syntax-object list->vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4673}#) #((m4674 top)) #("i4677")) #(ribcage #(x) #((top)) #("i4671")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4609")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4430" "i4428" "i4426" "i4424" "i4422" "i4420" "i4418"))) (hygiene guile)) #{ g4673 4678}#)))) #{tmp 4670}#) (let ((#{tmp 4679}# ($sc-dispatch #{tmp 4610}# '(#(atom "value") any)))) (if #{tmp 4679}# (@apply (lambda (#{x 4681}#) #{x 4681}#) #{tmp 4679}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4610}#))))))))))))))))))) (begin (lambda (#{x 4682}#) (let ((#{tmp 4684}# #{x 4682}#)) (let ((#{tmp 4685}# ($sc-dispatch #{tmp 4684}# '(_ any)))) (if #{tmp 4685}# (@apply (lambda (#{e 4687}#) (#{emit 4431}# (#{quasi 4419}# #{e 4687}# 0))) #{tmp 4685}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4684}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x 4688}#) (letrec* ((#{read-file 4691}# (lambda (#{fn 4692}# #{k 4693}#) (begin (let ((#{p 4697}# (open-input-file #{fn 4692}#))) (letrec* ((#{f 4701}# (lambda (#{x 4702}# #{result 4703}#) (if (eof-object? #{x 4702}#) (begin (close-input-port #{p 4697}#) (reverse #{result 4703}#)) (#{f 4701}# (read #{p 4697}#) (cons (datum->syntax #{k 4693}# #{x 4702}#) #{result 4703}#)))))) (begin (#{f 4701}# (read #{p 4697}#) '())))))))) (begin (let ((#{tmp 4704}# #{x 4688}#)) (let ((#{tmp 4705}# ($sc-dispatch #{tmp 4704}# '(any any)))) (if #{tmp 4705}# (@apply (lambda (#{k 4708}# #{filename 4709}#) (begin (let ((#{fn 4711}# (syntax->datum #{filename 4709}#))) (let ((#{tmp 4713}# (#{read-file 4691}# #{fn 4711}# #{filename 4709}#))) (let ((#{tmp 4714}# ($sc-dispatch #{tmp 4713}# 'each-any))) (if #{tmp 4714}# (@apply (lambda (#{exp 4716}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(exp) #((top)) #("i4715")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4710")) #(ribcage #(k filename) #((top) (top)) #("i4706" "i4707")) #(ribcage (read-file) ((top)) ("i4690")) #(ribcage #(x) #((top)) #("i4689"))) (hygiene guile)) #{exp 4716}#)) #{tmp 4714}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4713}#))))))) #{tmp 4705}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4704}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x 4718}#) (let ((#{tmp 4720}# #{x 4718}#)) (let ((#{tmp 4721}# ($sc-dispatch #{tmp 4720}# '(any any)))) (if #{tmp 4721}# (@apply (lambda (#{k 4724}# #{filename 4725}#) (begin (let ((#{fn 4727}# (syntax->datum #{filename 4725}#))) (let ((#{tmp 4729}# (datum->syntax #{filename 4725}# (begin (let ((#{t 4734}# (%search-load-path #{fn 4727}#))) (if #{t 4734}# #{t 4734}# (syntax-violation 'include-from-path "file not found in path" #{x 4718}# #{filename 4725}#))))))) (let ((#{fn 4731}# #{tmp 4729}#)) (list '#(syntax-object include ((top) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4730")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4726")) #(ribcage #(k filename) #((top) (top)) #("i4722" "i4723")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4719"))) (hygiene guile)) #{fn 4731}#)))))) #{tmp 4721}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4720}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x 4736}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x 4736}#)))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x 4738}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x 4738}#)))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x 4740}#) (let ((#{tmp 4742}# #{x 4740}#)) (let ((#{tmp 4743}# ($sc-dispatch #{tmp 4742}# '(_ any any . each-any)))) (if #{tmp 4743}# (@apply (lambda (#{e 4747}# #{m1 4748}# #{m2 4749}#) (let ((#{tmp 4751}# (letrec* ((#{f 4757}# (lambda (#{clause 4758}# #{clauses 4759}#) (if (null? #{clauses 4759}#) (let ((#{tmp 4761}# #{clause 4758}#)) (let ((#{tmp 4762}# ($sc-dispatch #{tmp 4761}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile))) any . each-any)))) (if #{tmp 4762}# (@apply (lambda (#{e1 4765}# #{e2 4766}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4763" "i4764")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (cons #{e1 4765}# #{e2 4766}#))) #{tmp 4762}#) (let ((#{tmp 4768}# ($sc-dispatch #{tmp 4761}# '(each-any any . each-any)))) (if #{tmp 4768}# (@apply (lambda (#{k 4772}# #{e1 4773}# #{e2 4774}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) #{k 4772}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (cons #{e1 4773}# #{e2 4774}#)))) #{tmp 4768}#) (let ((#{_ 4778}# #{tmp 4761}#)) (syntax-violation 'case "bad clause" #{x 4740}# #{clause 4758}#))))))) (let ((#{tmp 4780}# (#{f 4757}# (car #{clauses 4759}#) (cdr #{clauses 4759}#)))) (let ((#{rest 4782}# #{tmp 4780}#)) (let ((#{tmp 4783}# #{clause 4758}#)) (let ((#{tmp 4784}# ($sc-dispatch #{tmp 4783}# '(each-any any . each-any)))) (if #{tmp 4784}# (@apply (lambda (#{k 4788}# #{e1 4789}# #{e2 4790}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4785" "i4786" "i4787")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4785" "i4786" "i4787")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4785" "i4786" "i4787")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4785" "i4786" "i4787")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) #{k 4788}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4785" "i4786" "i4787")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4754" "i4755" "i4756")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (cons #{e1 4789}# #{e2 4790}#)) #{rest 4782}#)) #{tmp 4784}#) (let ((#{_ 4794}# #{tmp 4783}#)) (syntax-violation 'case "bad clause" #{x 4740}# #{clause 4758}#))))))))))) (begin (#{f 4757}# #{m1 4748}# #{m2 4749}#))))) (let ((#{body 4753}# #{tmp 4751}#)) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4752")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4752")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4744" "i4745" "i4746")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4741"))) (hygiene guile)) #{e 4747}#)) #{body 4753}#)))) #{tmp 4743}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4742}#))))))) (define make-variable-transformer (lambda (#{proc 4795}#) (if (procedure? #{proc 4795}#) (begin (letrec* ((#{trans 4798}# (lambda (#{x 4799}#) (#{proc 4795}# #{x 4799}#)))) (begin (set-procedure-property! #{trans 4798}# 'variable-transformer #t) #{trans 4798}#))) (error "variable transformer not a procedure" #{proc 4795}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x 4801}#) (let ((#{tmp 4803}# #{x 4801}#)) (let ((#{tmp 4804}# ($sc-dispatch #{tmp 4803}# '(_ any)))) (if #{tmp 4804}# (@apply (lambda (#{e 4806}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #{e 4806}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) (cons #{e 4806}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4805")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile))))))))) #{tmp 4804}#) (let ((#{tmp 4807}# ($sc-dispatch #{tmp 4803}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile))) any any) any))))) (if (if #{tmp 4807}# (@apply (lambda (#{id 4813}# #{exp1 4814}# #{var 4815}# #{val 4816}# #{exp2 4817}#) (if (identifier? #{id 4813}#) (identifier? #{var 4815}#) #f)) #{tmp 4807}#) #f) (@apply (lambda (#{id 4825}# #{exp1 4826}# #{var 4827}# #{val 4828}# #{exp2 4829}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #{var 4827}# #{val 4828}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #{exp2 4829}#)) (list (cons #{id 4825}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) (cons #{exp1 4826}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)))))) (list #{id 4825}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #{id 4825}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4820" "i4821" "i4822" "i4823" "i4824")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4802"))) (hygiene guile)) #{exp1 4826}#)))))) #{tmp 4807}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4803}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x 4830}#) (let ((#{tmp 4832}# #{x 4830}#)) (let ((#{tmp 4833}# ($sc-dispatch #{tmp 4832}# '(_ (any . any) any . each-any)))) (if #{tmp 4833}# (@apply (lambda (#{id 4838}# #{args 4839}# #{b0 4840}# #{b1 4841}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4834" "i4835" "i4836" "i4837")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4831"))) (hygiene guile)) #{id 4838}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4834" "i4835" "i4836" "i4837")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4831"))) (hygiene guile)) (cons #{args 4839}# (cons #{b0 4840}# #{b1 4841}#))))) #{tmp 4833}#) (let ((#{tmp 4843}# ($sc-dispatch #{tmp 4832}# '(_ any any)))) (if (if #{tmp 4843}# (@apply (lambda (#{id 4846}# #{val 4847}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4844" "i4845")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4831"))) (hygiene guile)))) #{tmp 4843}#) #f) (@apply (lambda (#{id 4850}# #{val 4851}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4848" "i4849")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4831"))) (hygiene guile)) #{id 4850}# #{val 4851}#)) #{tmp 4843}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4832}#)))))))))