(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}#)))))))))