(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec* ((#{make-void 203}# (lambda (#{src 761}#) (make-struct/no-tail (vector-ref %expanded-vtables 0) #{src 761}#))) (#{make-const 205}# (lambda (#{src 763}# #{exp 764}#) (make-struct/no-tail (vector-ref %expanded-vtables 1) #{src 763}# #{exp 764}#))) (#{make-lexical-ref 209}# (lambda (#{src 771}# #{name 772}# #{gensym 773}#) (make-struct/no-tail (vector-ref %expanded-vtables 3) #{src 771}# #{name 772}# #{gensym 773}#))) (#{make-lexical-set 211}# (lambda (#{src 777}# #{name 778}# #{gensym 779}# #{exp 780}#) (make-struct/no-tail (vector-ref %expanded-vtables 4) #{src 777}# #{name 778}# #{gensym 779}# #{exp 780}#))) (#{make-module-ref 213}# (lambda (#{src 785}# #{mod 786}# #{name 787}# #{public? 788}#) (make-struct/no-tail (vector-ref %expanded-vtables 5) #{src 785}# #{mod 786}# #{name 787}# #{public? 788}#))) (#{make-module-set 215}# (lambda (#{src 793}# #{mod 794}# #{name 795}# #{public? 796}# #{exp 797}#) (make-struct/no-tail (vector-ref %expanded-vtables 6) #{src 793}# #{mod 794}# #{name 795}# #{public? 796}# #{exp 797}#))) (#{make-toplevel-ref 217}# (lambda (#{src 803}# #{name 804}#) (make-struct/no-tail (vector-ref %expanded-vtables 7) #{src 803}# #{name 804}#))) (#{make-toplevel-set 219}# (lambda (#{src 807}# #{name 808}# #{exp 809}#) (make-struct/no-tail (vector-ref %expanded-vtables 8) #{src 807}# #{name 808}# #{exp 809}#))) (#{make-toplevel-define 221}# (lambda (#{src 813}# #{name 814}# #{exp 815}#) (make-struct/no-tail (vector-ref %expanded-vtables 9) #{src 813}# #{name 814}# #{exp 815}#))) (#{make-conditional 223}# (lambda (#{src 819}# #{test 820}# #{consequent 821}# #{alternate 822}#) (make-struct/no-tail (vector-ref %expanded-vtables 10) #{src 819}# #{test 820}# #{consequent 821}# #{alternate 822}#))) (#{make-application 225}# (lambda (#{src 827}# #{proc 828}# #{args 829}#) (make-struct/no-tail (vector-ref %expanded-vtables 11) #{src 827}# #{proc 828}# #{args 829}#))) (#{make-sequence 227}# (lambda (#{src 833}# #{exps 834}#) (make-struct/no-tail (vector-ref %expanded-vtables 12) #{src 833}# #{exps 834}#))) (#{make-lambda 229}# (lambda (#{src 837}# #{meta 838}# #{body 839}#) (make-struct/no-tail (vector-ref %expanded-vtables 13) #{src 837}# #{meta 838}# #{body 839}#))) (#{make-lambda-case 231}# (lambda (#{src 843}# #{req 844}# #{opt 845}# #{rest 846}# #{kw 847}# #{inits 848}# #{gensyms 849}# #{body 850}# #{alternate 851}#) (make-struct/no-tail (vector-ref %expanded-vtables 14) #{src 843}# #{req 844}# #{opt 845}# #{rest 846}# #{kw 847}# #{inits 848}# #{gensyms 849}# #{body 850}# #{alternate 851}#))) (#{make-let 233}# (lambda (#{src 861}# #{names 862}# #{gensyms 863}# #{vals 864}# #{body 865}#) (make-struct/no-tail (vector-ref %expanded-vtables 15) #{src 861}# #{names 862}# #{gensyms 863}# #{vals 864}# #{body 865}#))) (#{make-letrec 235}# (lambda (#{src 871}# #{in-order? 872}# #{names 873}# #{gensyms 874}# #{vals 875}# #{body 876}#) (make-struct/no-tail (vector-ref %expanded-vtables 16) #{src 871}# #{in-order? 872}# #{names 873}# #{gensyms 874}# #{vals 875}# #{body 876}#))) (#{make-dynlet 237}# (lambda (#{src 883}# #{fluids 884}# #{vals 885}# #{body 886}#) (make-struct/no-tail (vector-ref %expanded-vtables 17) #{src 883}# #{fluids 884}# #{vals 885}# #{body 886}#))) (#{lambda? 240}# (lambda (#{x 891}#) (if (struct? #{x 891}#) (eq? (struct-vtable #{x 891}#) (vector-ref %expanded-vtables 13)) #f))) (#{lambda-meta 242}# (lambda (#{x 895}#) (struct-ref #{x 895}# 1))) (#{set-lambda-meta! 244}# (lambda (#{x 897}# #{v 898}#) (struct-set! #{x 897}# 1 #{v 898}#))) (#{top-level-eval-hook 250}# (lambda (#{x 901}# #{mod 902}#) (primitive-eval #{x 901}#))) (#{local-eval-hook 252}# (lambda (#{x 905}# #{mod 906}#) (primitive-eval #{x 905}#))) (#{put-global-definition-hook 255}# (lambda (#{symbol 909}# #{type 910}# #{val 911}#) (module-define! (current-module) #{symbol 909}# (make-syntax-transformer #{symbol 909}# #{type 910}# #{val 911}#)))) (#{get-global-definition-hook 257}# (lambda (#{symbol 915}# #{module 916}#) (begin (if (if (not #{module 916}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol 915}#)) (begin (let ((#{v 922}# (module-variable (if #{module 916}# (resolve-module (cdr #{module 916}#)) (current-module)) #{symbol 915}#))) (if #{v 922}# (if (variable-bound? #{v 922}#) (begin (let ((#{val 927}# (variable-ref #{v 922}#))) (if (macro? #{val 927}#) (if (macro-type #{val 927}#) (cons (macro-type #{val 927}#) (macro-binding #{val 927}#)) #f) #f))) #f) #f)))))) (#{decorate-source 259}# (lambda (#{e 931}# #{s 932}#) (begin (if (if (pair? #{e 931}#) #{s 932}# #f) (set-source-properties! #{e 931}# #{s 932}#)) #{e 931}#))) (#{maybe-name-value! 261}# (lambda (#{name 937}# #{val 938}#) (if (#{lambda? 240}# #{val 938}#) (begin (let ((#{meta 942}# (#{lambda-meta 242}# #{val 938}#))) (if (not (assq 'name #{meta 942}#)) (#{set-lambda-meta! 244}# #{val 938}# (cons (cons 'name #{name 937}#) #{meta 942}#)))))))) (#{build-void 263}# (lambda (#{source 943}#) (#{make-void 203}# #{source 943}#))) (#{build-application 265}# (lambda (#{source 945}# #{fun-exp 946}# #{arg-exps 947}#) (#{make-application 225}# #{source 945}# #{fun-exp 946}# #{arg-exps 947}#))) (#{build-conditional 267}# (lambda (#{source 951}# #{test-exp 952}# #{then-exp 953}# #{else-exp 954}#) (#{make-conditional 223}# #{source 951}# #{test-exp 952}# #{then-exp 953}# #{else-exp 954}#))) (#{build-dynlet 269}# (lambda (#{source 959}# #{fluids 960}# #{vals 961}# #{body 962}#) (#{make-dynlet 237}# #{source 959}# #{fluids 960}# #{vals 961}# #{body 962}#))) (#{build-lexical-reference 271}# (lambda (#{type 967}# #{source 968}# #{name 969}# #{var 970}#) (#{make-lexical-ref 209}# #{source 968}# #{name 969}# #{var 970}#))) (#{build-lexical-assignment 273}# (lambda (#{source 975}# #{name 976}# #{var 977}# #{exp 978}#) (begin (#{maybe-name-value! 261}# #{name 976}# #{exp 978}#) (#{make-lexical-set 211}# #{source 975}# #{name 976}# #{var 977}# #{exp 978}#)))) (#{analyze-variable 275}# (lambda (#{mod 983}# #{var 984}# #{modref-cont 985}# #{bare-cont 986}#) (if (not #{mod 983}#) (#{bare-cont 986}# #{var 984}#) (begin (let ((#{kind 993}# (car #{mod 983}#)) (#{mod 994}# (cdr #{mod 983}#))) (if (eqv? #{kind 993}# 'public) (#{modref-cont 985}# #{mod 994}# #{var 984}# #t) (if (eqv? #{kind 993}# 'private) (if (not (equal? #{mod 994}# (module-name (current-module)))) (#{modref-cont 985}# #{mod 994}# #{var 984}# #f) (#{bare-cont 986}# #{var 984}#)) (if (eqv? #{kind 993}# 'bare) (#{bare-cont 986}# #{var 984}#) (if (eqv? #{kind 993}# 'hygiene) (if (if (not (equal? #{mod 994}# (module-name (current-module)))) (module-variable (resolve-module #{mod 994}#) #{var 984}#) #f) (#{modref-cont 985}# #{mod 994}# #{var 984}# #f) (#{bare-cont 986}# #{var 984}#)) (syntax-violation #f "bad module kind" #{var 984}# #{mod 994}#)))))))))) (#{build-global-reference 277}# (lambda (#{source 1002}# #{var 1003}# #{mod 1004}#) (#{analyze-variable 275}# #{mod 1004}# #{var 1003}# (lambda (#{mod 1008}# #{var 1009}# #{public? 1010}#) (#{make-module-ref 213}# #{source 1002}# #{mod 1008}# #{var 1009}# #{public? 1010}#)) (lambda (#{var 1014}#) (#{make-toplevel-ref 217}# #{source 1002}# #{var 1014}#))))) (#{build-global-assignment 279}# (lambda (#{source 1016}# #{var 1017}# #{exp 1018}# #{mod 1019}#) (begin (#{maybe-name-value! 261}# #{var 1017}# #{exp 1018}#) (#{analyze-variable 275}# #{mod 1019}# #{var 1017}# (lambda (#{mod 1024}# #{var 1025}# #{public? 1026}#) (#{make-module-set 215}# #{source 1016}# #{mod 1024}# #{var 1025}# #{public? 1026}# #{exp 1018}#)) (lambda (#{var 1030}#) (#{make-toplevel-set 219}# #{source 1016}# #{var 1030}# #{exp 1018}#)))))) (#{build-global-definition 281}# (lambda (#{source 1032}# #{var 1033}# #{exp 1034}#) (begin (#{maybe-name-value! 261}# #{var 1033}# #{exp 1034}#) (#{make-toplevel-define 221}# #{source 1032}# #{var 1033}# #{exp 1034}#)))) (#{build-simple-lambda 283}# (lambda (#{src 1038}# #{req 1039}# #{rest 1040}# #{vars 1041}# #{meta 1042}# #{exp 1043}#) (#{make-lambda 229}# #{src 1038}# #{meta 1042}# (#{make-lambda-case 231}# #{src 1038}# #{req 1039}# #f #{rest 1040}# #f '() #{vars 1041}# #{exp 1043}# #f)))) (#{build-case-lambda 285}# (lambda (#{src 1050}# #{meta 1051}# #{body 1052}#) (#{make-lambda 229}# #{src 1050}# #{meta 1051}# #{body 1052}#))) (#{build-lambda-case 287}# (lambda (#{src 1056}# #{req 1057}# #{opt 1058}# #{rest 1059}# #{kw 1060}# #{inits 1061}# #{vars 1062}# #{body 1063}# #{else-case 1064}#) (#{make-lambda-case 231}# #{src 1056}# #{req 1057}# #{opt 1058}# #{rest 1059}# #{kw 1060}# #{inits 1061}# #{vars 1062}# #{body 1063}# #{else-case 1064}#))) (#{build-primref 289}# (lambda (#{src 1074}# #{name 1075}#) (if (equal? (module-name (current-module)) '(guile)) (#{make-toplevel-ref 217}# #{src 1074}# #{name 1075}#) (#{make-module-ref 213}# #{src 1074}# '(guile) #{name 1075}# #f)))) (#{build-data 291}# (lambda (#{src 1078}# #{exp 1079}#) (#{make-const 205}# #{src 1078}# #{exp 1079}#))) (#{build-sequence 293}# (lambda (#{src 1082}# #{exps 1083}#) (if (null? (cdr #{exps 1083}#)) (car #{exps 1083}#) (#{make-sequence 227}# #{src 1082}# #{exps 1083}#)))) (#{build-let 295}# (lambda (#{src 1086}# #{ids 1087}# #{vars 1088}# #{val-exps 1089}# #{body-exp 1090}#) (begin (for-each #{maybe-name-value! 261}# #{ids 1087}# #{val-exps 1089}#) (if (null? #{vars 1088}#) #{body-exp 1090}# (#{make-let 233}# #{src 1086}# #{ids 1087}# #{vars 1088}# #{val-exps 1089}# #{body-exp 1090}#))))) (#{build-named-let 297}# (lambda (#{src 1096}# #{ids 1097}# #{vars 1098}# #{val-exps 1099}# #{body-exp 1100}#) (begin (let ((#{f 1110}# (car #{vars 1098}#)) (#{f-name 1111}# (car #{ids 1097}#)) (#{vars 1112}# (cdr #{vars 1098}#)) (#{ids 1113}# (cdr #{ids 1097}#))) (begin (let ((#{proc 1115}# (#{build-simple-lambda 283}# #{src 1096}# #{ids 1113}# #f #{vars 1112}# '() #{body-exp 1100}#))) (begin (#{maybe-name-value! 261}# #{f-name 1111}# #{proc 1115}#) (for-each #{maybe-name-value! 261}# #{ids 1113}# #{val-exps 1099}#) (#{make-letrec 235}# #{src 1096}# #f (list #{f-name 1111}#) (list #{f 1110}#) (list #{proc 1115}#) (#{build-application 265}# #{src 1096}# (#{build-lexical-reference 271}# 'fun #{src 1096}# #{f-name 1111}# #{f 1110}#) #{val-exps 1099}#))))))))) (#{build-letrec 299}# (lambda (#{src 1116}# #{in-order? 1117}# #{ids 1118}# #{vars 1119}# #{val-exps 1120}# #{body-exp 1121}#) (if (null? #{vars 1119}#) #{body-exp 1121}# (begin (for-each #{maybe-name-value! 261}# #{ids 1118}# #{val-exps 1120}#) (#{make-letrec 235}# #{src 1116}# #{in-order? 1117}# #{ids 1118}# #{vars 1119}# #{val-exps 1120}# #{body-exp 1121}#))))) (#{make-syntax-object 303}# (lambda (#{expression 1128}# #{wrap 1129}# #{module 1130}#) (vector 'syntax-object #{expression 1128}# #{wrap 1129}# #{module 1130}#))) (#{syntax-object? 305}# (lambda (#{x 1134}#) (if (vector? #{x 1134}#) (if (= (vector-length #{x 1134}#) 4) (eq? (vector-ref #{x 1134}# 0) 'syntax-object) #f) #f))) (#{syntax-object-expression 307}# (lambda (#{x 1139}#) (vector-ref #{x 1139}# 1))) (#{syntax-object-wrap 309}# (lambda (#{x 1141}#) (vector-ref #{x 1141}# 2))) (#{syntax-object-module 311}# (lambda (#{x 1143}#) (vector-ref #{x 1143}# 3))) (#{source-annotation 320}# (lambda (#{x 1157}#) (if (#{syntax-object? 305}# #{x 1157}#) (#{source-annotation 320}# (#{syntax-object-expression 307}# #{x 1157}#)) (if (pair? #{x 1157}#) (begin (let ((#{props 1164}# (source-properties #{x 1157}#))) (if (pair? #{props 1164}#) #{props 1164}# #f))) #f)))) (#{extend-env 327}# (lambda (#{labels 1166}# #{bindings 1167}# #{r 1168}#) (if (null? #{labels 1166}#) #{r 1168}# (#{extend-env 327}# (cdr #{labels 1166}#) (cdr #{bindings 1167}#) (cons (cons (car #{labels 1166}#) (car #{bindings 1167}#)) #{r 1168}#))))) (#{extend-var-env 329}# (lambda (#{labels 1172}# #{vars 1173}# #{r 1174}#) (if (null? #{labels 1172}#) #{r 1174}# (#{extend-var-env 329}# (cdr #{labels 1172}#) (cdr #{vars 1173}#) (cons (cons (car #{labels 1172}#) (cons 'lexical (car #{vars 1173}#))) #{r 1174}#))))) (#{macros-only-env 331}# (lambda (#{r 1179}#) (if (null? #{r 1179}#) '() (begin (let ((#{a 1182}# (car #{r 1179}#))) (if (eq? (car (cdr #{a 1182}#)) 'macro) (cons #{a 1182}# (#{macros-only-env 331}# (cdr #{r 1179}#))) (#{macros-only-env 331}# (cdr #{r 1179}#)))))))) (#{lookup 333}# (lambda (#{x 1183}# #{r 1184}# #{mod 1185}#) (begin (let ((#{t 1191}# (assq #{x 1183}# #{r 1184}#))) (if #{t 1191}# (cdr #{t 1191}#) (if (symbol? #{x 1183}#) (begin (let ((#{t 1197}# (#{get-global-definition-hook 257}# #{x 1183}# #{mod 1185}#))) (if #{t 1197}# #{t 1197}# '(global)))) '(displaced-lexical))))))) (#{global-extend 335}# (lambda (#{type 1202}# #{sym 1203}# #{val 1204}#) (#{put-global-definition-hook 255}# #{sym 1203}# #{type 1202}# #{val 1204}#))) (#{nonsymbol-id? 337}# (lambda (#{x 1208}#) (if (#{syntax-object? 305}# #{x 1208}#) (symbol? (#{syntax-object-expression 307}# #{x 1208}#)) #f))) (#{id? 339}# (lambda (#{x 1212}#) (if (symbol? #{x 1212}#) #t (if (#{syntax-object? 305}# #{x 1212}#) (symbol? (#{syntax-object-expression 307}# #{x 1212}#)) #f)))) (#{id-sym-name&marks 342}# (lambda (#{x 1219}# #{w 1220}#) (if (#{syntax-object? 305}# #{x 1219}#) (values (#{syntax-object-expression 307}# #{x 1219}#) (#{join-marks 389}# (car #{w 1220}#) (car (#{syntax-object-wrap 309}# #{x 1219}#)))) (values #{x 1219}# (car #{w 1220}#))))) (#{gen-label 352}# (lambda () (symbol->string (gensym "i")))) (#{gen-labels 354}# (lambda (#{ls 1226}#) (if (null? #{ls 1226}#) '() (cons (#{gen-label 352}#) (#{gen-labels 354}# (cdr #{ls 1226}#)))))) (#{make-ribcage 357}# (lambda (#{symnames 1228}# #{marks 1229}# #{labels 1230}#) (vector 'ribcage #{symnames 1228}# #{marks 1229}# #{labels 1230}#))) (#{ribcage-symnames 361}# (lambda (#{x 1239}#) (vector-ref #{x 1239}# 1))) (#{ribcage-marks 363}# (lambda (#{x 1241}#) (vector-ref #{x 1241}# 2))) (#{ribcage-labels 365}# (lambda (#{x 1243}#) (vector-ref #{x 1243}# 3))) (#{set-ribcage-symnames! 367}# (lambda (#{x 1245}# #{update 1246}#) (vector-set! #{x 1245}# 1 #{update 1246}#))) (#{set-ribcage-marks! 369}# (lambda (#{x 1249}# #{update 1250}#) (vector-set! #{x 1249}# 2 #{update 1250}#))) (#{set-ribcage-labels! 371}# (lambda (#{x 1253}# #{update 1254}#) (vector-set! #{x 1253}# 3 #{update 1254}#))) (#{anti-mark 377}# (lambda (#{w 1257}#) (cons (cons #f (car #{w 1257}#)) (cons 'shift (cdr #{w 1257}#))))) (#{extend-ribcage! 381}# (lambda (#{ribcage 1263}# #{id 1264}# #{label 1265}#) (begin (#{set-ribcage-symnames! 367}# #{ribcage 1263}# (cons (#{syntax-object-expression 307}# #{id 1264}#) (#{ribcage-symnames 361}# #{ribcage 1263}#))) (#{set-ribcage-marks! 369}# #{ribcage 1263}# (cons (car (#{syntax-object-wrap 309}# #{id 1264}#)) (#{ribcage-marks 363}# #{ribcage 1263}#))) (#{set-ribcage-labels! 371}# #{ribcage 1263}# (cons #{label 1265}# (#{ribcage-labels 365}# #{ribcage 1263}#)))))) (#{make-binding-wrap 383}# (lambda (#{ids 1270}# #{labels 1271}# #{w 1272}#) (if (null? #{ids 1270}#) #{w 1272}# (cons (car #{w 1272}#) (cons (begin (let ((#{labelvec 1279}# (list->vector #{labels 1271}#))) (begin (let ((#{n 1281}# (vector-length #{labelvec 1279}#))) (begin (let ((#{symnamevec 1284}# (make-vector #{n 1281}#)) (#{marksvec 1285}# (make-vector #{n 1281}#))) (begin (letrec* ((#{f 1289}# (lambda (#{ids 1290}# #{i 1291}#) (if (not (null? #{ids 1290}#)) (call-with-values (lambda () (#{id-sym-name&marks 342}# (car #{ids 1290}#) #{w 1272}#)) (lambda (#{symname 1292}# #{marks 1293}#) (begin (vector-set! #{symnamevec 1284}# #{i 1291}# #{symname 1292}#) (vector-set! #{marksvec 1285}# #{i 1291}# #{marks 1293}#) (#{f 1289}# (cdr #{ids 1290}#) (#{1+}# #{i 1291}#))))))))) (begin (#{f 1289}# #{ids 1270}# 0))) (#{make-ribcage 357}# #{symnamevec 1284}# #{marksvec 1285}# #{labelvec 1279}#)))))))) (cdr #{w 1272}#)))))) (#{smart-append 385}# (lambda (#{m1 1298}# #{m2 1299}#) (if (null? #{m2 1299}#) #{m1 1298}# (append #{m1 1298}# #{m2 1299}#)))) (#{join-wraps 387}# (lambda (#{w1 1302}# #{w2 1303}#) (begin (let ((#{m1 1308}# (car #{w1 1302}#)) (#{s1 1309}# (cdr #{w1 1302}#))) (if (null? #{m1 1308}#) (if (null? #{s1 1309}#) #{w2 1303}# (cons (car #{w2 1303}#) (#{smart-append 385}# #{s1 1309}# (cdr #{w2 1303}#)))) (cons (#{smart-append 385}# #{m1 1308}# (car #{w2 1303}#)) (#{smart-append 385}# #{s1 1309}# (cdr #{w2 1303}#)))))))) (#{join-marks 389}# (lambda (#{m1 1318}# #{m2 1319}#) (#{smart-append 385}# #{m1 1318}# #{m2 1319}#))) (#{same-marks? 391}# (lambda (#{x 1322}# #{y 1323}#) (begin (let ((#{t 1328}# (eq? #{x 1322}# #{y 1323}#))) (if #{t 1328}# #{t 1328}# (if (not (null? #{x 1322}#)) (if (not (null? #{y 1323}#)) (if (eq? (car #{x 1322}#) (car #{y 1323}#)) (#{same-marks? 391}# (cdr #{x 1322}#) (cdr #{y 1323}#)) #f) #f) #f)))))) (#{id-var-name 393}# (lambda (#{id 1334}# #{w 1335}#) (letrec* ((#{search 1340}# (lambda (#{sym 1356}# #{subst 1357}# #{marks 1358}#) (if (null? #{subst 1357}#) (values #f #{marks 1358}#) (begin (let ((#{fst 1363}# (car #{subst 1357}#))) (if (eq? #{fst 1363}# 'shift) (#{search 1340}# #{sym 1356}# (cdr #{subst 1357}#) (cdr #{marks 1358}#)) (begin (let ((#{symnames 1365}# (#{ribcage-symnames 361}# #{fst 1363}#))) (if (vector? #{symnames 1365}#) (#{search-vector-rib 1344}# #{sym 1356}# #{subst 1357}# #{marks 1358}# #{symnames 1365}# #{fst 1363}#) (#{search-list-rib 1342}# #{sym 1356}# #{subst 1357}# #{marks 1358}# #{symnames 1365}# #{fst 1363}#)))))))))) (#{search-list-rib 1342}# (lambda (#{sym 1366}# #{subst 1367}# #{marks 1368}# #{symnames 1369}# #{ribcage 1370}#) (letrec* ((#{f 1379}# (lambda (#{symnames 1380}# #{i 1381}#) (if (null? #{symnames 1380}#) (#{search 1340}# #{sym 1366}# (cdr #{subst 1367}#) #{marks 1368}#) (if (if (eq? (car #{symnames 1380}#) #{sym 1366}#) (#{same-marks? 391}# #{marks 1368}# (list-ref (#{ribcage-marks 363}# #{ribcage 1370}#) #{i 1381}#)) #f) (values (list-ref (#{ribcage-labels 365}# #{ribcage 1370}#) #{i 1381}#) #{marks 1368}#) (#{f 1379}# (cdr #{symnames 1380}#) (#{1+}# #{i 1381}#))))))) (begin (#{f 1379}# #{symnames 1369}# 0))))) (#{search-vector-rib 1344}# (lambda (#{sym 1390}# #{subst 1391}# #{marks 1392}# #{symnames 1393}# #{ribcage 1394}#) (begin (let ((#{n 1401}# (vector-length #{symnames 1393}#))) (letrec* ((#{f 1404}# (lambda (#{i 1405}#) (if (= #{i 1405}# #{n 1401}#) (#{search 1340}# #{sym 1390}# (cdr #{subst 1391}#) #{marks 1392}#) (if (if (eq? (vector-ref #{symnames 1393}# #{i 1405}#) #{sym 1390}#) (#{same-marks? 391}# #{marks 1392}# (vector-ref (#{ribcage-marks 363}# #{ribcage 1394}#) #{i 1405}#)) #f) (values (vector-ref (#{ribcage-labels 365}# #{ribcage 1394}#) #{i 1405}#) #{marks 1392}#) (#{f 1404}# (#{1+}# #{i 1405}#))))))) (begin (#{f 1404}# 0)))))))) (begin (if (symbol? #{id 1334}#) (begin (let ((#{t 1417}# (#{search 1340}# #{id 1334}# (cdr #{w 1335}#) (car #{w 1335}#)))) (if #{t 1417}# #{t 1417}# #{id 1334}#))) (if (#{syntax-object? 305}# #{id 1334}#) (begin (let ((#{id 1426}# (#{syntax-object-expression 307}# #{id 1334}#)) (#{w1 1427}# (#{syntax-object-wrap 309}# #{id 1334}#))) (begin (let ((#{marks 1429}# (#{join-marks 389}# (car #{w 1335}#) (car #{w1 1427}#)))) (call-with-values (lambda () (#{search 1340}# #{id 1426}# (cdr #{w 1335}#) #{marks 1429}#)) (lambda (#{new-id 1433}# #{marks 1434}#) (begin (let ((#{t 1439}# #{new-id 1433}#)) (if #{t 1439}# #{t 1439}# (begin (let ((#{t 1442}# (#{search 1340}# #{id 1426}# (cdr #{w1 1427}#) #{marks 1434}#))) (if #{t 1442}# #{t 1442}# #{id 1426}#)))))))))))) (syntax-violation 'id-var-name "invalid id" #{id 1334}#))))))) (#{free-id=? 395}# (lambda (#{i 1447}# #{j 1448}#) (if (eq? (begin (let ((#{x 1454}# #{i 1447}#)) (if (#{syntax-object? 305}# #{x 1454}#) (#{syntax-object-expression 307}# #{x 1454}#) #{x 1454}#))) (begin (let ((#{x 1457}# #{j 1448}#)) (if (#{syntax-object? 305}# #{x 1457}#) (#{syntax-object-expression 307}# #{x 1457}#) #{x 1457}#)))) (eq? (#{id-var-name 393}# #{i 1447}# '(())) (#{id-var-name 393}# #{j 1448}# '(()))) #f))) (#{bound-id=? 397}# (lambda (#{i 1461}# #{j 1462}#) (if (if (#{syntax-object? 305}# #{i 1461}#) (#{syntax-object? 305}# #{j 1462}#) #f) (if (eq? (#{syntax-object-expression 307}# #{i 1461}#) (#{syntax-object-expression 307}# #{j 1462}#)) (#{same-marks? 391}# (car (#{syntax-object-wrap 309}# #{i 1461}#)) (car (#{syntax-object-wrap 309}# #{j 1462}#))) #f) (eq? #{i 1461}# #{j 1462}#)))) (#{valid-bound-ids? 399}# (lambda (#{ids 1471}#) (if (letrec* ((#{all-ids? 1476}# (lambda (#{ids 1477}#) (begin (let ((#{t 1480}# (null? #{ids 1477}#))) (if #{t 1480}# #{t 1480}# (if (#{id? 339}# (car #{ids 1477}#)) (#{all-ids? 1476}# (cdr #{ids 1477}#)) #f))))))) (begin (#{all-ids? 1476}# #{ids 1471}#))) (#{distinct-bound-ids? 401}# #{ids 1471}#) #f))) (#{distinct-bound-ids? 401}# (lambda (#{ids 1485}#) (letrec* ((#{distinct? 1489}# (lambda (#{ids 1490}#) (begin (let ((#{t 1493}# (null? #{ids 1490}#))) (if #{t 1493}# #{t 1493}# (if (not (#{bound-id-member? 403}# (car #{ids 1490}#) (cdr #{ids 1490}#))) (#{distinct? 1489}# (cdr #{ids 1490}#)) #f))))))) (begin (#{distinct? 1489}# #{ids 1485}#))))) (#{bound-id-member? 403}# (lambda (#{x 1497}# #{list 1498}#) (if (not (null? #{list 1498}#)) (begin (let ((#{t 1505}# (#{bound-id=? 397}# #{x 1497}# (car #{list 1498}#)))) (if #{t 1505}# #{t 1505}# (#{bound-id-member? 403}# #{x 1497}# (cdr #{list 1498}#))))) #f))) (#{wrap 405}# (lambda (#{x 1507}# #{w 1508}# #{defmod 1509}#) (if (if (null? (car #{w 1508}#)) (null? (cdr #{w 1508}#)) #f) #{x 1507}# (if (#{syntax-object? 305}# #{x 1507}#) (#{make-syntax-object 303}# (#{syntax-object-expression 307}# #{x 1507}#) (#{join-wraps 387}# #{w 1508}# (#{syntax-object-wrap 309}# #{x 1507}#)) (#{syntax-object-module 311}# #{x 1507}#)) (if (null? #{x 1507}#) #{x 1507}# (#{make-syntax-object 303}# #{x 1507}# #{w 1508}# #{defmod 1509}#)))))) (#{source-wrap 407}# (lambda (#{x 1524}# #{w 1525}# #{s 1526}# #{defmod 1527}#) (#{wrap 405}# (#{decorate-source 259}# #{x 1524}# #{s 1526}#) #{w 1525}# #{defmod 1527}#))) (#{chi-sequence 409}# (lambda (#{body 1532}# #{r 1533}# #{w 1534}# #{s 1535}# #{mod 1536}#) (#{build-sequence 293}# #{s 1535}# (letrec* ((#{dobody 1547}# (lambda (#{body 1548}# #{r 1549}# #{w 1550}# #{mod 1551}#) (if (null? #{body 1548}#) '() (begin (let ((#{first 1553}# (#{chi 419}# (car #{body 1548}#) #{r 1549}# #{w 1550}# #{mod 1551}#))) (cons #{first 1553}# (#{dobody 1547}# (cdr #{body 1548}#) #{r 1549}# #{w 1550}# #{mod 1551}#)))))))) (begin (#{dobody 1547}# #{body 1532}# #{r 1533}# #{w 1534}# #{mod 1536}#)))))) (#{chi-top-sequence 411}# (lambda (#{body 1554}# #{r 1555}# #{w 1556}# #{s 1557}# #{m 1558}# #{esew 1559}# #{mod 1560}#) (letrec* ((#{scan 1569}# (lambda (#{body 1570}# #{r 1571}# #{w 1572}# #{s 1573}# #{m 1574}# #{esew 1575}# #{mod 1576}# #{exps 1577}#) (if (null? #{body 1570}#) #{exps 1577}# (call-with-values (lambda () (call-with-values (lambda () (begin (let ((#{e 1590}# (car #{body 1570}#))) (#{syntax-type 417}# #{e 1590}# #{r 1571}# #{w 1572}# (begin (let ((#{t 1593}# (#{source-annotation 320}# #{e 1590}#))) (if #{t 1593}# #{t 1593}# #{s 1573}#))) #f #{mod 1576}# #f)))) (lambda (#{type 1595}# #{value 1596}# #{e 1597}# #{w 1598}# #{s 1599}# #{mod 1600}#) (if (eqv? #{type 1595}# 'begin-form) (let ((#{tmp 1608}# #{e 1597}#)) (let ((#{tmp 1609}# ($sc-dispatch #{tmp 1608}# '(_)))) (if #{tmp 1609}# (@apply (lambda () #{exps 1577}#) #{tmp 1609}#) (let ((#{tmp 1610}# ($sc-dispatch #{tmp 1608}# '(_ any . each-any)))) (if #{tmp 1610}# (@apply (lambda (#{e1 1613}# #{e2 1614}#) (#{scan 1569}# (cons #{e1 1613}# #{e2 1614}#) #{r 1571}# #{w 1598}# #{s 1599}# #{m 1574}# #{esew 1575}# #{mod 1600}# #{exps 1577}#)) #{tmp 1610}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1608}#)))))) (if (eqv? #{type 1595}# 'local-syntax-form) (#{chi-local-syntax 429}# #{value 1596}# #{e 1597}# #{r 1571}# #{w 1598}# #{s 1599}# #{mod 1600}# (lambda (#{body 1617}# #{r 1618}# #{w 1619}# #{s 1620}# #{mod 1621}#) (#{scan 1569}# #{body 1617}# #{r 1618}# #{w 1619}# #{s 1620}# #{m 1574}# #{esew 1575}# #{mod 1621}# #{exps 1577}#))) (if (eqv? #{type 1595}# 'eval-when-form) (let ((#{tmp 1628}# #{e 1597}#)) (let ((#{tmp 1629}# ($sc-dispatch #{tmp 1628}# '(_ each-any any . each-any)))) (if #{tmp 1629}# (@apply (lambda (#{x 1633}# #{e1 1634}# #{e2 1635}#) (begin (let ((#{when-list 1638}# (#{chi-when-list 415}# #{e 1597}# #{x 1633}# #{w 1598}#)) (#{body 1639}# (cons #{e1 1634}# #{e2 1635}#))) (if (eq? #{m 1574}# 'e) (if (memq 'eval #{when-list 1638}#) (#{scan 1569}# #{body 1639}# #{r 1571}# #{w 1598}# #{s 1599}# (if (memq 'expand #{when-list 1638}#) 'c&e 'e) '(eval) #{mod 1600}# #{exps 1577}#) (begin (if (memq 'expand #{when-list 1638}#) (#{top-level-eval-hook 250}# (#{chi-top-sequence 411}# #{body 1639}# #{r 1571}# #{w 1598}# #{s 1599}# 'e '(eval) #{mod 1600}#) #{mod 1600}#)) #{exps 1577}#)) (if (memq 'load #{when-list 1638}#) (if (begin (let ((#{t 1648}# (memq 'compile #{when-list 1638}#))) (if #{t 1648}# #{t 1648}# (begin (let ((#{t 1651}# (memq 'expand #{when-list 1638}#))) (if #{t 1651}# #{t 1651}# (if (eq? #{m 1574}# 'c&e) (memq 'eval #{when-list 1638}#) #f))))))) (#{scan 1569}# #{body 1639}# #{r 1571}# #{w 1598}# #{s 1599}# 'c&e '(compile load) #{mod 1600}# #{exps 1577}#) (if (if (eq? #{m 1574}# 'c) #t (eq? #{m 1574}# 'c&e)) (#{scan 1569}# #{body 1639}# #{r 1571}# #{w 1598}# #{s 1599}# 'c '(load) #{mod 1600}# #{exps 1577}#) #{exps 1577}#)) (if (begin (let ((#{t 1659}# (memq 'compile #{when-list 1638}#))) (if #{t 1659}# #{t 1659}# (begin (let ((#{t 1662}# (memq 'expand #{when-list 1638}#))) (if #{t 1662}# #{t 1662}# (if (eq? #{m 1574}# 'c&e) (memq 'eval #{when-list 1638}#) #f))))))) (begin (#{top-level-eval-hook 250}# (#{chi-top-sequence 411}# #{body 1639}# #{r 1571}# #{w 1598}# #{s 1599}# 'e '(eval) #{mod 1600}#) #{mod 1600}#) #{exps 1577}#) #{exps 1577}#)))))) #{tmp 1629}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1628}#)))) (if (eqv? #{type 1595}# 'define-syntax-form) (begin (let ((#{n 1670}# (#{id-var-name 393}# #{value 1596}# #{w 1598}#)) (#{r 1671}# (#{macros-only-env 331}# #{r 1571}#))) (if (eqv? #{m 1574}# 'c) (if (memq 'compile #{esew 1575}#) (begin (let ((#{e 1674}# (#{chi-install-global 413}# #{n 1670}# (#{chi 419}# #{e 1597}# #{r 1671}# #{w 1598}# #{mod 1600}#)))) (begin (#{top-level-eval-hook 250}# #{e 1674}# #{mod 1600}#) (if (memq 'load #{esew 1575}#) (cons #{e 1674}# #{exps 1577}#) #{exps 1577}#)))) (if (memq 'load #{esew 1575}#) (cons (#{chi-install-global 413}# #{n 1670}# (#{chi 419}# #{e 1597}# #{r 1671}# #{w 1598}# #{mod 1600}#)) #{exps 1577}#) #{exps 1577}#)) (if (eqv? #{m 1574}# 'c&e) (begin (let ((#{e 1677}# (#{chi-install-global 413}# #{n 1670}# (#{chi 419}# #{e 1597}# #{r 1671}# #{w 1598}# #{mod 1600}#)))) (begin (#{top-level-eval-hook 250}# #{e 1677}# #{mod 1600}#) (cons #{e 1677}# #{exps 1577}#)))) (begin (if (memq 'eval #{esew 1575}#) (#{top-level-eval-hook 250}# (#{chi-install-global 413}# #{n 1670}# (#{chi 419}# #{e 1597}# #{r 1671}# #{w 1598}# #{mod 1600}#)) #{mod 1600}#)) #{exps 1577}#))))) (if (eqv? #{type 1595}# 'define-form) (begin (let ((#{n 1682}# (#{id-var-name 393}# #{value 1596}# #{w 1598}#))) (begin (let ((#{type 1684}# (car (#{lookup 333}# #{n 1682}# #{r 1571}# #{mod 1600}#)))) (if (if (eqv? #{type 1684}# 'global) #t (if (eqv? #{type 1684}# 'core) #t (if (eqv? #{type 1684}# 'macro) #t (eqv? #{type 1684}# 'module-ref)))) (begin (if (if (if (eq? #{m 1574}# 'c) #t (eq? #{m 1574}# 'c&e)) (if (not (module-local-variable (current-module) #{n 1682}#)) (current-module) #f) #f) (begin (let ((#{old 1691}# (module-variable (current-module) #{n 1682}#))) (if (if (variable? #{old 1691}#) (variable-bound? #{old 1691}#) #f) (module-define! (current-module) #{n 1682}# (variable-ref #{old 1691}#)) (module-add! (current-module) #{n 1682}# (make-undefined-variable)))))) (cons (if (eq? #{m 1574}# 'c&e) (begin (let ((#{x 1695}# (#{build-global-definition 281}# #{s 1599}# #{n 1682}# (#{chi 419}# #{e 1597}# #{r 1571}# #{w 1598}# #{mod 1600}#)))) (begin (#{top-level-eval-hook 250}# #{x 1695}# #{mod 1600}#) #{x 1695}#))) (lambda () (#{build-global-definition 281}# #{s 1599}# #{n 1682}# (#{chi 419}# #{e 1597}# #{r 1571}# #{w 1598}# #{mod 1600}#)))) #{exps 1577}#)) (if (eqv? #{type 1684}# 'displaced-lexical) (syntax-violation #f "identifier out of context" #{e 1597}# (#{wrap 405}# #{value 1596}# #{w 1598}# #{mod 1600}#)) (syntax-violation #f "cannot define keyword at top level" #{e 1597}# (#{wrap 405}# #{value 1596}# #{w 1598}# #{mod 1600}#)))))))) (cons (if (eq? #{m 1574}# 'c&e) (begin (let ((#{x 1700}# (#{chi-expr 421}# #{type 1595}# #{value 1596}# #{e 1597}# #{r 1571}# #{w 1598}# #{s 1599}# #{mod 1600}#))) (begin (#{top-level-eval-hook 250}# #{x 1700}# #{mod 1600}#) #{x 1700}#))) (lambda () (#{chi-expr 421}# #{type 1595}# #{value 1596}# #{e 1597}# #{r 1571}# #{w 1598}# #{s 1599}# #{mod 1600}#))) #{exps 1577}#))))))))) (lambda (#{exps 1701}#) (#{scan 1569}# (cdr #{body 1570}#) #{r 1571}# #{w 1572}# #{s 1573}# #{m 1574}# #{esew 1575}# #{mod 1576}# #{exps 1701}#))))))) (begin (call-with-values (lambda () (#{scan 1569}# #{body 1554}# #{r 1555}# #{w 1556}# #{s 1557}# #{m 1558}# #{esew 1559}# #{mod 1560}# '())) (lambda (#{exps 1703}#) (if (null? #{exps 1703}#) (#{build-void 263}# #{s 1557}#) (#{build-sequence 293}# #{s 1557}# (letrec* ((#{lp 1708}# (lambda (#{in 1709}# #{out 1710}#) (if (null? #{in 1709}#) #{out 1710}# (begin (let ((#{e 1712}# (car #{in 1709}#))) (#{lp 1708}# (cdr #{in 1709}#) (cons (if (procedure? #{e 1712}#) (#{e 1712}#) #{e 1712}#) #{out 1710}#)))))))) (begin (#{lp 1708}# #{exps 1703}# '()))))))))))) (#{chi-install-global 413}# (lambda (#{name 1713}# #{e 1714}#) (#{build-global-definition 281}# #f #{name 1713}# (#{build-application 265}# #f (#{build-primref 289}# #f 'make-syntax-transformer) (list (#{build-data 291}# #f #{name 1713}#) (#{build-data 291}# #f 'macro) #{e 1714}#))))) (#{chi-when-list 415}# (lambda (#{e 1722}# #{when-list 1723}# #{w 1724}#) (letrec* ((#{f 1731}# (lambda (#{when-list 1732}# #{situations 1733}#) (if (null? #{when-list 1732}#) #{situations 1733}# (#{f 1731}# (cdr #{when-list 1732}#) (cons (begin (let ((#{x 1735}# (car #{when-list 1732}#))) (if (#{free-id=? 395}# #{x 1735}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1734")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1728" "i1729" "i1730")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1725" "i1726" "i1727")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'compile (if (#{free-id=? 395}# #{x 1735}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1734")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1728" "i1729" "i1730")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1725" "i1726" "i1727")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'load (if (#{free-id=? 395}# #{x 1735}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1734")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1728" "i1729" "i1730")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1725" "i1726" "i1727")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'eval (if (#{free-id=? 395}# #{x 1735}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1734")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1728" "i1729" "i1730")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1725" "i1726" "i1727")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e 1722}# (#{wrap 405}# #{x 1735}# #{w 1724}# #f)))))))) #{situations 1733}#)))))) (begin (#{f 1731}# #{when-list 1723}# '()))))) (#{syntax-type 417}# (lambda (#{e 1745}# #{r 1746}# #{w 1747}# #{s 1748}# #{rib 1749}# #{mod 1750}# #{for-car? 1751}#) (if (symbol? #{e 1745}#) (begin (let ((#{n 1763}# (#{id-var-name 393}# #{e 1745}# #{w 1747}#))) (begin (let ((#{b 1765}# (#{lookup 333}# #{n 1763}# #{r 1746}# #{mod 1750}#))) (begin (let ((#{type 1767}# (car #{b 1765}#))) (if (eqv? #{type 1767}# 'lexical) (values #{type 1767}# (cdr #{b 1765}#) #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{type 1767}# 'global) (values #{type 1767}# #{n 1763}# #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{type 1767}# 'macro) (if #{for-car? 1751}# (values #{type 1767}# (cdr #{b 1765}#) #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (#{syntax-type 417}# (#{chi-macro 425}# (cdr #{b 1765}#) #{e 1745}# #{r 1746}# #{w 1747}# #{s 1748}# #{rib 1749}# #{mod 1750}#) #{r 1746}# '(()) #{s 1748}# #{rib 1749}# #{mod 1750}# #f)) (values #{type 1767}# (cdr #{b 1765}#) #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#)))))))))) (if (pair? #{e 1745}#) (begin (let ((#{first 1781}# (car #{e 1745}#))) (call-with-values (lambda () (#{syntax-type 417}# #{first 1781}# #{r 1746}# #{w 1747}# #{s 1748}# #{rib 1749}# #{mod 1750}# #t)) (lambda (#{ftype 1782}# #{fval 1783}# #{fe 1784}# #{fw 1785}# #{fs 1786}# #{fmod 1787}#) (if (eqv? #{ftype 1782}# 'lexical) (values 'lexical-call #{fval 1783}# #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{ftype 1782}# 'global) (values 'global-call (#{make-syntax-object 303}# #{fval 1783}# #{w 1747}# #{fmod 1787}#) #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{ftype 1782}# 'macro) (#{syntax-type 417}# (#{chi-macro 425}# #{fval 1783}# #{e 1745}# #{r 1746}# #{w 1747}# #{s 1748}# #{rib 1749}# #{mod 1750}#) #{r 1746}# '(()) #{s 1748}# #{rib 1749}# #{mod 1750}# #{for-car? 1751}#) (if (eqv? #{ftype 1782}# 'module-ref) (call-with-values (lambda () (#{fval 1783}# #{e 1745}# #{r 1746}# #{w 1747}#)) (lambda (#{e 1799}# #{r 1800}# #{w 1801}# #{s 1802}# #{mod 1803}#) (#{syntax-type 417}# #{e 1799}# #{r 1800}# #{w 1801}# #{s 1802}# #{rib 1749}# #{mod 1803}# #{for-car? 1751}#))) (if (eqv? #{ftype 1782}# 'core) (values 'core-form #{fval 1783}# #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{ftype 1782}# 'local-syntax) (values 'local-syntax-form #{fval 1783}# #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{ftype 1782}# 'begin) (values 'begin-form #f #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{ftype 1782}# 'eval-when) (values 'eval-when-form #f #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (if (eqv? #{ftype 1782}# 'define) (let ((#{tmp 1814}# #{e 1745}#)) (let ((#{tmp 1815}# ($sc-dispatch #{tmp 1814}# '(_ any any)))) (if (if #{tmp 1815}# (@apply (lambda (#{name 1818}# #{val 1819}#) (#{id? 339}# #{name 1818}#)) #{tmp 1815}#) #f) (@apply (lambda (#{name 1822}# #{val 1823}#) (values 'define-form #{name 1822}# #{val 1823}# #{w 1747}# #{s 1748}# #{mod 1750}#)) #{tmp 1815}#) (let ((#{tmp 1824}# ($sc-dispatch #{tmp 1814}# '(_ (any . any) any . each-any)))) (if (if #{tmp 1824}# (@apply (lambda (#{name 1829}# #{args 1830}# #{e1 1831}# #{e2 1832}#) (if (#{id? 339}# #{name 1829}#) (#{valid-bound-ids? 399}# (#{lambda-var-list 449}# #{args 1830}#)) #f)) #{tmp 1824}#) #f) (@apply (lambda (#{name 1839}# #{args 1840}# #{e1 1841}# #{e2 1842}#) (values 'define-form (#{wrap 405}# #{name 1839}# #{w 1747}# #{mod 1750}#) (#{decorate-source 259}# (cons '#(syntax-object lambda ((top) #(ribcage #(name args e1 e2) #((top) (top) (top) (top)) #("i1835" "i1836" "i1837" "i1838")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1788" "i1789" "i1790" "i1791" "i1792" "i1793")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1780")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1752" "i1753" "i1754" "i1755" "i1756" "i1757" "i1758")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) (#{wrap 405}# (cons #{args 1840}# (cons #{e1 1841}# #{e2 1842}#)) #{w 1747}# #{mod 1750}#)) #{s 1748}#) '(()) #{s 1748}# #{mod 1750}#)) #{tmp 1824}#) (let ((#{tmp 1845}# ($sc-dispatch #{tmp 1814}# '(_ any)))) (if (if #{tmp 1845}# (@apply (lambda (#{name 1847}#) (#{id? 339}# #{name 1847}#)) #{tmp 1845}#) #f) (@apply (lambda (#{name 1849}#) (values 'define-form (#{wrap 405}# #{name 1849}# #{w 1747}# #{mod 1750}#) '(#(syntax-object if ((top) #(ribcage #(name) #((top)) #("i1848")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1788" "i1789" "i1790" "i1791" "i1792" "i1793")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1780")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1752" "i1753" "i1754" "i1755" "i1756" "i1757" "i1758")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1848")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1788" "i1789" "i1790" "i1791" "i1792" "i1793")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1780")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1752" "i1753" "i1754" "i1755" "i1756" "i1757" "i1758")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1848")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1788" "i1789" "i1790" "i1791" "i1792" "i1793")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1780")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1752" "i1753" "i1754" "i1755" "i1756" "i1757" "i1758")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) '(()) #{s 1748}# #{mod 1750}#)) #{tmp 1845}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1814}#)))))))) (if (eqv? #{ftype 1782}# 'define-syntax) (let ((#{tmp 1852}# #{e 1745}#)) (let ((#{tmp 1853}# ($sc-dispatch #{tmp 1852}# '(_ any any)))) (if (if #{tmp 1853}# (@apply (lambda (#{name 1856}# #{val 1857}#) (#{id? 339}# #{name 1856}#)) #{tmp 1853}#) #f) (@apply (lambda (#{name 1860}# #{val 1861}#) (values 'define-syntax-form #{name 1860}# #{val 1861}# #{w 1747}# #{s 1748}# #{mod 1750}#)) #{tmp 1853}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1852}#)))) (values 'call #f #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#))))))))))))))) (if (#{syntax-object? 305}# #{e 1745}#) (#{syntax-type 417}# (#{syntax-object-expression 307}# #{e 1745}#) #{r 1746}# (#{join-wraps 387}# #{w 1747}# (#{syntax-object-wrap 309}# #{e 1745}#)) (begin (let ((#{t 1867}# (#{source-annotation 320}# #{e 1745}#))) (if #{t 1867}# #{t 1867}# #{s 1748}#))) #{rib 1749}# (begin (let ((#{t 1871}# (#{syntax-object-module 311}# #{e 1745}#))) (if #{t 1871}# #{t 1871}# #{mod 1750}#))) #{for-car? 1751}#) (if (self-evaluating? #{e 1745}#) (values 'constant #f #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#) (values 'other #f #{e 1745}# #{w 1747}# #{s 1748}# #{mod 1750}#))))))) (#{chi 419}# (lambda (#{e 1876}# #{r 1877}# #{w 1878}# #{mod 1879}#) (call-with-values (lambda () (#{syntax-type 417}# #{e 1876}# #{r 1877}# #{w 1878}# (#{source-annotation 320}# #{e 1876}#) #f #{mod 1879}# #f)) (lambda (#{type 1884}# #{value 1885}# #{e 1886}# #{w 1887}# #{s 1888}# #{mod 1889}#) (#{chi-expr 421}# #{type 1884}# #{value 1885}# #{e 1886}# #{r 1877}# #{w 1887}# #{s 1888}# #{mod 1889}#))))) (#{chi-expr 421}# (lambda (#{type 1896}# #{value 1897}# #{e 1898}# #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}#) (if (eqv? #{type 1896}# 'lexical) (#{build-lexical-reference 271}# 'value #{s 1901}# #{e 1898}# #{value 1897}#) (if (if (eqv? #{type 1896}# 'core) #t (eqv? #{type 1896}# 'core-form)) (#{value 1897}# #{e 1898}# #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}#) (if (eqv? #{type 1896}# 'module-ref) (call-with-values (lambda () (#{value 1897}# #{e 1898}# #{r 1899}# #{w 1900}#)) (lambda (#{e 1913}# #{r 1914}# #{w 1915}# #{s 1916}# #{mod 1917}#) (#{chi 419}# #{e 1913}# #{r 1914}# #{w 1915}# #{mod 1917}#))) (if (eqv? #{type 1896}# 'lexical-call) (#{chi-application 423}# (begin (let ((#{id 1925}# (car #{e 1898}#))) (#{build-lexical-reference 271}# 'fun (#{source-annotation 320}# #{id 1925}#) (if (#{syntax-object? 305}# #{id 1925}#) (syntax->datum #{id 1925}#) #{id 1925}#) #{value 1897}#))) #{e 1898}# #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}#) (if (eqv? #{type 1896}# 'global-call) (#{chi-application 423}# (#{build-global-reference 277}# (#{source-annotation 320}# (car #{e 1898}#)) (if (#{syntax-object? 305}# #{value 1897}#) (#{syntax-object-expression 307}# #{value 1897}#) #{value 1897}#) (if (#{syntax-object? 305}# #{value 1897}#) (#{syntax-object-module 311}# #{value 1897}#) #{mod 1902}#)) #{e 1898}# #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}#) (if (eqv? #{type 1896}# 'constant) (#{build-data 291}# #{s 1901}# (#{strip 445}# (#{source-wrap 407}# #{e 1898}# #{w 1900}# #{s 1901}# #{mod 1902}#) '(()))) (if (eqv? #{type 1896}# 'global) (#{build-global-reference 277}# #{s 1901}# #{value 1897}# #{mod 1902}#) (if (eqv? #{type 1896}# 'call) (#{chi-application 423}# (#{chi 419}# (car #{e 1898}#) #{r 1899}# #{w 1900}# #{mod 1902}#) #{e 1898}# #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}#) (if (eqv? #{type 1896}# 'begin-form) (let ((#{tmp 1932}# #{e 1898}#)) (let ((#{tmp 1933}# ($sc-dispatch #{tmp 1932}# '(_ any . each-any)))) (if #{tmp 1933}# (@apply (lambda (#{e1 1936}# #{e2 1937}#) (#{chi-sequence 409}# (cons #{e1 1936}# #{e2 1937}#) #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}#)) #{tmp 1933}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1932}#)))) (if (eqv? #{type 1896}# 'local-syntax-form) (#{chi-local-syntax 429}# #{value 1897}# #{e 1898}# #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}# #{chi-sequence 409}#) (if (eqv? #{type 1896}# 'eval-when-form) (let ((#{tmp 1941}# #{e 1898}#)) (let ((#{tmp 1942}# ($sc-dispatch #{tmp 1941}# '(_ each-any any . each-any)))) (if #{tmp 1942}# (@apply (lambda (#{x 1946}# #{e1 1947}# #{e2 1948}#) (begin (let ((#{when-list 1950}# (#{chi-when-list 415}# #{e 1898}# #{x 1946}# #{w 1900}#))) (if (memq 'eval #{when-list 1950}#) (#{chi-sequence 409}# (cons #{e1 1947}# #{e2 1948}#) #{r 1899}# #{w 1900}# #{s 1901}# #{mod 1902}#) (#{chi-void 433}#))))) #{tmp 1942}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1941}#)))) (if (if (eqv? #{type 1896}# 'define-form) #t (eqv? #{type 1896}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" #{e 1898}# (#{wrap 405}# #{value 1897}# #{w 1900}# #{mod 1902}#)) (if (eqv? #{type 1896}# 'syntax) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap 407}# #{e 1898}# #{w 1900}# #{s 1901}# #{mod 1902}#)) (if (eqv? #{type 1896}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap 407}# #{e 1898}# #{w 1900}# #{s 1901}# #{mod 1902}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap 407}# #{e 1898}# #{w 1900}# #{s 1901}# #{mod 1902}#)))))))))))))))))) (#{chi-application 423}# (lambda (#{x 1957}# #{e 1958}# #{r 1959}# #{w 1960}# #{s 1961}# #{mod 1962}#) (let ((#{tmp 1969}# #{e 1958}#)) (let ((#{tmp 1970}# ($sc-dispatch #{tmp 1969}# '(any . each-any)))) (if #{tmp 1970}# (@apply (lambda (#{e0 1973}# #{e1 1974}#) (#{build-application 265}# #{s 1961}# #{x 1957}# (map (lambda (#{e 1975}#) (#{chi 419}# #{e 1975}# #{r 1959}# #{w 1960}# #{mod 1962}#)) #{e1 1974}#))) #{tmp 1970}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 1969}#)))))) (#{chi-macro 425}# (lambda (#{p 1978}# #{e 1979}# #{r 1980}# #{w 1981}# #{s 1982}# #{rib 1983}# #{mod 1984}#) (letrec* ((#{rebuild-macro-output 1993}# (lambda (#{x 1994}# #{m 1995}#) (if (pair? #{x 1994}#) (#{decorate-source 259}# (cons (#{rebuild-macro-output 1993}# (car #{x 1994}#) #{m 1995}#) (#{rebuild-macro-output 1993}# (cdr #{x 1994}#) #{m 1995}#)) #{s 1982}#) (if (#{syntax-object? 305}# #{x 1994}#) (begin (let ((#{w 2003}# (#{syntax-object-wrap 309}# #{x 1994}#))) (begin (let ((#{ms 2006}# (car #{w 2003}#)) (#{s 2007}# (cdr #{w 2003}#))) (if (if (pair? #{ms 2006}#) (eq? (car #{ms 2006}#) #f) #f) (#{make-syntax-object 303}# (#{syntax-object-expression 307}# #{x 1994}#) (cons (cdr #{ms 2006}#) (if #{rib 1983}# (cons #{rib 1983}# (cdr #{s 2007}#)) (cdr #{s 2007}#))) (#{syntax-object-module 311}# #{x 1994}#)) (#{make-syntax-object 303}# (#{decorate-source 259}# (#{syntax-object-expression 307}# #{x 1994}#) #{s 2007}#) (cons (cons #{m 1995}# #{ms 2006}#) (if #{rib 1983}# (cons #{rib 1983}# (cons 'shift #{s 2007}#)) (cons 'shift #{s 2007}#))) (#{syntax-object-module 311}# #{x 1994}#))))))) (if (vector? #{x 1994}#) (begin (let ((#{n 2019}# (vector-length #{x 1994}#))) (begin (let ((#{v 2021}# (#{decorate-source 259}# (make-vector #{n 2019}#) #{x 1994}#))) (letrec* ((#{loop 2024}# (lambda (#{i 2025}#) (if (= #{i 2025}# #{n 2019}#) (begin (if #f #f) #{v 2021}#) (begin (vector-set! #{v 2021}# #{i 2025}# (#{rebuild-macro-output 1993}# (vector-ref #{x 1994}# #{i 2025}#) #{m 1995}#)) (#{loop 2024}# (#{1+}# #{i 2025}#))))))) (begin (#{loop 2024}# 0))))))) (if (symbol? #{x 1994}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap 407}# #{e 1979}# #{w 1981}# (cdr #{w 1981}#) #{mod 1984}#) #{x 1994}#) (#{decorate-source 259}# #{x 1994}# #{s 1982}#)))))))) (begin (#{rebuild-macro-output 1993}# (#{p 1978}# (#{source-wrap 407}# #{e 1979}# (#{anti-mark 377}# #{w 1981}#) #{s 1982}# #{mod 1984}#)) (gensym "m")))))) (#{chi-body 427}# (lambda (#{body 2035}# #{outer-form 2036}# #{r 2037}# #{w 2038}# #{mod 2039}#) (begin (let ((#{r 2047}# (cons '("placeholder" placeholder) #{r 2037}#))) (begin (let ((#{ribcage 2049}# (#{make-ribcage 357}# '() '() '()))) (begin (let ((#{w 2052}# (cons (car #{w 2038}#) (cons #{ribcage 2049}# (cdr #{w 2038}#))))) (letrec* ((#{parse 2064}# (lambda (#{body 2065}# #{ids 2066}# #{labels 2067}# #{var-ids 2068}# #{vars 2069}# #{vals 2070}# #{bindings 2071}#) (if (null? #{body 2065}#) (syntax-violation #f "no expressions in body" #{outer-form 2036}#) (begin (let ((#{e 2076}# (cdr (car #{body 2065}#))) (#{er 2077}# (car (car #{body 2065}#)))) (call-with-values (lambda () (#{syntax-type 417}# #{e 2076}# #{er 2077}# '(()) (#{source-annotation 320}# #{er 2077}#) #{ribcage 2049}# #{mod 2039}# #f)) (lambda (#{type 2079}# #{value 2080}# #{e 2081}# #{w 2082}# #{s 2083}# #{mod 2084}#) (if (eqv? #{type 2079}# 'define-form) (begin (let ((#{id 2094}# (#{wrap 405}# #{value 2080}# #{w 2082}# #{mod 2084}#)) (#{label 2095}# (#{gen-label 352}#))) (begin (let ((#{var 2097}# (#{gen-var 447}# #{id 2094}#))) (begin (#{extend-ribcage! 381}# #{ribcage 2049}# #{id 2094}# #{label 2095}#) (#{parse 2064}# (cdr #{body 2065}#) (cons #{id 2094}# #{ids 2066}#) (cons #{label 2095}# #{labels 2067}#) (cons #{id 2094}# #{var-ids 2068}#) (cons #{var 2097}# #{vars 2069}#) (cons (cons #{er 2077}# (#{wrap 405}# #{e 2081}# #{w 2082}# #{mod 2084}#)) #{vals 2070}#) (cons (cons 'lexical #{var 2097}#) #{bindings 2071}#))))))) (if (eqv? #{type 2079}# 'define-syntax-form) (begin (let ((#{id 2102}# (#{wrap 405}# #{value 2080}# #{w 2082}# #{mod 2084}#)) (#{label 2103}# (#{gen-label 352}#))) (begin (#{extend-ribcage! 381}# #{ribcage 2049}# #{id 2102}# #{label 2103}#) (#{parse 2064}# (cdr #{body 2065}#) (cons #{id 2102}# #{ids 2066}#) (cons #{label 2103}# #{labels 2067}#) #{var-ids 2068}# #{vars 2069}# #{vals 2070}# (cons (cons 'macro (cons #{er 2077}# (#{wrap 405}# #{e 2081}# #{w 2082}# #{mod 2084}#))) #{bindings 2071}#))))) (if (eqv? #{type 2079}# 'begin-form) (let ((#{tmp 2106}# #{e 2081}#)) (let ((#{tmp 2107}# ($sc-dispatch #{tmp 2106}# '(_ . each-any)))) (if #{tmp 2107}# (@apply (lambda (#{e1 2109}#) (#{parse 2064}# (letrec* ((#{f 2112}# (lambda (#{forms 2113}#) (if (null? #{forms 2113}#) (cdr #{body 2065}#) (cons (cons #{er 2077}# (#{wrap 405}# (car #{forms 2113}#) #{w 2082}# #{mod 2084}#)) (#{f 2112}# (cdr #{forms 2113}#))))))) (begin (#{f 2112}# #{e1 2109}#))) #{ids 2066}# #{labels 2067}# #{var-ids 2068}# #{vars 2069}# #{vals 2070}# #{bindings 2071}#)) #{tmp 2107}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2106}#)))) (if (eqv? #{type 2079}# 'local-syntax-form) (#{chi-local-syntax 429}# #{value 2080}# #{e 2081}# #{er 2077}# #{w 2082}# #{s 2083}# #{mod 2084}# (lambda (#{forms 2116}# #{er 2117}# #{w 2118}# #{s 2119}# #{mod 2120}#) (#{parse 2064}# (letrec* ((#{f 2128}# (lambda (#{forms 2129}#) (if (null? #{forms 2129}#) (cdr #{body 2065}#) (cons (cons #{er 2117}# (#{wrap 405}# (car #{forms 2129}#) #{w 2118}# #{mod 2120}#)) (#{f 2128}# (cdr #{forms 2129}#))))))) (begin (#{f 2128}# #{forms 2116}#))) #{ids 2066}# #{labels 2067}# #{var-ids 2068}# #{vars 2069}# #{vals 2070}# #{bindings 2071}#))) (if (null? #{ids 2066}#) (#{build-sequence 293}# #f (map (lambda (#{x 2132}#) (#{chi 419}# (cdr #{x 2132}#) (car #{x 2132}#) '(()) #{mod 2084}#)) (cons (cons #{er 2077}# (#{source-wrap 407}# #{e 2081}# #{w 2082}# #{s 2083}# #{mod 2084}#)) (cdr #{body 2065}#)))) (begin (if (not (#{valid-bound-ids? 399}# #{ids 2066}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form 2036}#)) (letrec* ((#{loop 2139}# (lambda (#{bs 2140}# #{er-cache 2141}# #{r-cache 2142}#) (if (not (null? #{bs 2140}#)) (begin (let ((#{b 2145}# (car #{bs 2140}#))) (if (eq? (car #{b 2145}#) 'macro) (begin (let ((#{er 2148}# (car (cdr #{b 2145}#)))) (begin (let ((#{r-cache 2150}# (if (eq? #{er 2148}# #{er-cache 2141}#) #{r-cache 2142}# (#{macros-only-env 331}# #{er 2148}#)))) (begin (set-cdr! #{b 2145}# (#{eval-local-transformer 431}# (#{chi 419}# (cdr (cdr #{b 2145}#)) #{r-cache 2150}# '(()) #{mod 2084}#) #{mod 2084}#)) (#{loop 2139}# (cdr #{bs 2140}#) #{er 2148}# #{r-cache 2150}#)))))) (#{loop 2139}# (cdr #{bs 2140}#) #{er-cache 2141}# #{r-cache 2142}#)))))))) (begin (#{loop 2139}# #{bindings 2071}# #f #f))) (set-cdr! #{r 2047}# (#{extend-env 327}# #{labels 2067}# #{bindings 2071}# (cdr #{r 2047}#))) (#{build-letrec 299}# #f #t (reverse (map syntax->datum #{var-ids 2068}#)) (reverse #{vars 2069}#) (map (lambda (#{x 2153}#) (#{chi 419}# (cdr #{x 2153}#) (car #{x 2153}#) '(()) #{mod 2084}#)) (reverse #{vals 2070}#)) (#{build-sequence 293}# #f (map (lambda (#{x 2157}#) (#{chi 419}# (cdr #{x 2157}#) (car #{x 2157}#) '(()) #{mod 2084}#)) (cons (cons #{er 2077}# (#{source-wrap 407}# #{e 2081}# #{w 2082}# #{s 2083}# #{mod 2084}#)) (cdr #{body 2065}#))))))))))))))))))) (begin (#{parse 2064}# (map (lambda (#{x 2072}#) (cons #{r 2047}# (#{wrap 405}# #{x 2072}# #{w 2052}# #{mod 2039}#))) #{body 2035}#) '() '() '() '() '() '()))))))))))) (#{chi-local-syntax 429}# (lambda (#{rec? 2160}# #{e 2161}# #{r 2162}# #{w 2163}# #{s 2164}# #{mod 2165}# #{k 2166}#) (let ((#{tmp 2174}# #{e 2161}#)) (let ((#{tmp 2175}# ($sc-dispatch #{tmp 2174}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 2175}# (@apply (lambda (#{id 2180}# #{val 2181}# #{e1 2182}# #{e2 2183}#) (begin (let ((#{ids 2185}# #{id 2180}#)) (if (not (#{valid-bound-ids? 399}# #{ids 2185}#)) (syntax-violation #f "duplicate bound keyword" #{e 2161}#) (begin (let ((#{labels 2188}# (#{gen-labels 354}# #{ids 2185}#))) (begin (let ((#{new-w 2190}# (#{make-binding-wrap 383}# #{ids 2185}# #{labels 2188}# #{w 2163}#))) (#{k 2166}# (cons #{e1 2182}# #{e2 2183}#) (#{extend-env 327}# #{labels 2188}# (begin (let ((#{w 2194}# (if #{rec? 2160}# #{new-w 2190}# #{w 2163}#)) (#{trans-r 2195}# (#{macros-only-env 331}# #{r 2162}#))) (map (lambda (#{x 2196}#) (cons 'macro (#{eval-local-transformer 431}# (#{chi 419}# #{x 2196}# #{trans-r 2195}# #{w 2194}# #{mod 2165}#) #{mod 2165}#))) #{val 2181}#))) #{r 2162}#) #{new-w 2190}# #{s 2164}# #{mod 2165}#))))))))) #{tmp 2175}#) (let ((#{_ 2201}# #{tmp 2174}#)) (syntax-violation #f "bad local syntax definition" (#{source-wrap 407}# #{e 2161}# #{w 2163}# #{s 2164}# #{mod 2165}#)))))))) (#{eval-local-transformer 431}# (lambda (#{expanded 2202}# #{mod 2203}#) (begin (let ((#{p 2207}# (#{local-eval-hook 252}# #{expanded 2202}# #{mod 2203}#))) (if (procedure? #{p 2207}#) #{p 2207}# (syntax-violation #f "nonprocedure transformer" #{p 2207}#)))))) (#{chi-void 433}# (lambda () (#{build-void 263}# #f))) (#{ellipsis? 435}# (lambda (#{x 2209}#) (if (#{nonsymbol-id? 337}# #{x 2209}#) (#{free-id=? 395}# #{x 2209}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i2210")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) #f))) (#{lambda-formals 437}# (lambda (#{orig-args 2213}#) (letrec* ((#{req 2216}# (lambda (#{args 2219}# #{rreq 2220}#) (let ((#{tmp 2223}# #{args 2219}#)) (let ((#{tmp 2224}# ($sc-dispatch #{tmp 2223}# '()))) (if #{tmp 2224}# (@apply (lambda () (#{check 2218}# (reverse #{rreq 2220}#) #f)) #{tmp 2224}#) (let ((#{tmp 2225}# ($sc-dispatch #{tmp 2223}# '(any . any)))) (if (if #{tmp 2225}# (@apply (lambda (#{a 2228}# #{b 2229}#) (#{id? 339}# #{a 2228}#)) #{tmp 2225}#) #f) (@apply (lambda (#{a 2232}# #{b 2233}#) (#{req 2216}# #{b 2233}# (cons #{a 2232}# #{rreq 2220}#))) #{tmp 2225}#) (let ((#{tmp 2234}# (list #{tmp 2223}#))) (if (if #{tmp 2234}# (@apply (lambda (#{r 2236}#) (#{id? 339}# #{r 2236}#)) #{tmp 2234}#) #f) (@apply (lambda (#{r 2238}#) (#{check 2218}# (reverse #{rreq 2220}#) #{r 2238}#)) #{tmp 2234}#) (let ((#{else 2240}# #{tmp 2223}#)) (syntax-violation 'lambda "invalid argument list" #{orig-args 2213}# #{args 2219}#))))))))))) (#{check 2218}# (lambda (#{req 2241}# #{rest 2242}#) (if (#{distinct-bound-ids? 401}# (if #{rest 2242}# (cons #{rest 2242}# #{req 2241}#) #{req 2241}#)) (values #{req 2241}# #f #{rest 2242}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args 2213}#))))) (begin (#{req 2216}# #{orig-args 2213}# '()))))) (#{chi-simple-lambda 439}# (lambda (#{e 2248}# #{r 2249}# #{w 2250}# #{s 2251}# #{mod 2252}# #{req 2253}# #{rest 2254}# #{meta 2255}# #{body 2256}#) (begin (let ((#{ids 2268}# (if #{rest 2254}# (append #{req 2253}# (list #{rest 2254}#)) #{req 2253}#))) (begin (let ((#{vars 2270}# (map #{gen-var 447}# #{ids 2268}#))) (begin (let ((#{labels 2272}# (#{gen-labels 354}# #{ids 2268}#))) (#{build-simple-lambda 283}# #{s 2251}# (map syntax->datum #{req 2253}#) (if #{rest 2254}# (syntax->datum #{rest 2254}#) #f) #{vars 2270}# #{meta 2255}# (#{chi-body 427}# #{body 2256}# (#{source-wrap 407}# #{e 2248}# #{w 2250}# #{s 2251}# #{mod 2252}#) (#{extend-var-env 329}# #{labels 2272}# #{vars 2270}# #{r 2249}#) (#{make-binding-wrap 383}# #{ids 2268}# #{labels 2272}# #{w 2250}#) #{mod 2252}#)))))))))) (#{lambda*-formals 441}# (lambda (#{orig-args 2275}#) (letrec* ((#{req 2278}# (lambda (#{args 2287}# #{rreq 2288}#) (let ((#{tmp 2291}# #{args 2287}#)) (let ((#{tmp 2292}# ($sc-dispatch #{tmp 2291}# '()))) (if #{tmp 2292}# (@apply (lambda () (#{check 2286}# (reverse #{rreq 2288}#) '() #f '())) #{tmp 2292}#) (let ((#{tmp 2293}# ($sc-dispatch #{tmp 2291}# '(any . any)))) (if (if #{tmp 2293}# (@apply (lambda (#{a 2296}# #{b 2297}#) (#{id? 339}# #{a 2296}#)) #{tmp 2293}#) #f) (@apply (lambda (#{a 2300}# #{b 2301}#) (#{req 2278}# #{b 2301}# (cons #{a 2300}# #{rreq 2288}#))) #{tmp 2293}#) (let ((#{tmp 2302}# ($sc-dispatch #{tmp 2291}# '(any . any)))) (if (if #{tmp 2302}# (@apply (lambda (#{a 2305}# #{b 2306}#) (eq? (syntax->datum #{a 2305}#) #:optional)) #{tmp 2302}#) #f) (@apply (lambda (#{a 2309}# #{b 2310}#) (#{opt 2280}# #{b 2310}# (reverse #{rreq 2288}#) '())) #{tmp 2302}#) (let ((#{tmp 2311}# ($sc-dispatch #{tmp 2291}# '(any . any)))) (if (if #{tmp 2311}# (@apply (lambda (#{a 2314}# #{b 2315}#) (eq? (syntax->datum #{a 2314}#) #:key)) #{tmp 2311}#) #f) (@apply (lambda (#{a 2318}# #{b 2319}#) (#{key 2282}# #{b 2319}# (reverse #{rreq 2288}#) '() '())) #{tmp 2311}#) (let ((#{tmp 2320}# ($sc-dispatch #{tmp 2291}# '(any any)))) (if (if #{tmp 2320}# (@apply (lambda (#{a 2323}# #{b 2324}#) (eq? (syntax->datum #{a 2323}#) #:rest)) #{tmp 2320}#) #f) (@apply (lambda (#{a 2327}# #{b 2328}#) (#{rest 2284}# #{b 2328}# (reverse #{rreq 2288}#) '() '())) #{tmp 2320}#) (let ((#{tmp 2329}# (list #{tmp 2291}#))) (if (if #{tmp 2329}# (@apply (lambda (#{r 2331}#) (#{id? 339}# #{r 2331}#)) #{tmp 2329}#) #f) (@apply (lambda (#{r 2333}#) (#{rest 2284}# #{r 2333}# (reverse #{rreq 2288}#) '() '())) #{tmp 2329}#) (let ((#{else 2335}# #{tmp 2291}#)) (syntax-violation 'lambda* "invalid argument list" #{orig-args 2275}# #{args 2287}#))))))))))))))))) (#{opt 2280}# (lambda (#{args 2336}# #{req 2337}# #{ropt 2338}#) (let ((#{tmp 2342}# #{args 2336}#)) (let ((#{tmp 2343}# ($sc-dispatch #{tmp 2342}# '()))) (if #{tmp 2343}# (@apply (lambda () (#{check 2286}# #{req 2337}# (reverse #{ropt 2338}#) #f '())) #{tmp 2343}#) (let ((#{tmp 2344}# ($sc-dispatch #{tmp 2342}# '(any . any)))) (if (if #{tmp 2344}# (@apply (lambda (#{a 2347}# #{b 2348}#) (#{id? 339}# #{a 2347}#)) #{tmp 2344}#) #f) (@apply (lambda (#{a 2351}# #{b 2352}#) (#{opt 2280}# #{b 2352}# #{req 2337}# (cons (cons #{a 2351}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i2349" "i2350")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i2339" "i2340" "i2341")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2285" "i2283" "i2281" "i2279" "i2277")) #(ribcage #(orig-args) #((top)) #("i2276")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)))) #{ropt 2338}#))) #{tmp 2344}#) (let ((#{tmp 2353}# ($sc-dispatch #{tmp 2342}# '((any any) . any)))) (if (if #{tmp 2353}# (@apply (lambda (#{a 2357}# #{init 2358}# #{b 2359}#) (#{id? 339}# #{a 2357}#)) #{tmp 2353}#) #f) (@apply (lambda (#{a 2363}# #{init 2364}# #{b 2365}#) (#{opt 2280}# #{b 2365}# #{req 2337}# (cons (list #{a 2363}# #{init 2364}#) #{ropt 2338}#))) #{tmp 2353}#) (let ((#{tmp 2366}# ($sc-dispatch #{tmp 2342}# '(any . any)))) (if (if #{tmp 2366}# (@apply (lambda (#{a 2369}# #{b 2370}#) (eq? (syntax->datum #{a 2369}#) #:key)) #{tmp 2366}#) #f) (@apply (lambda (#{a 2373}# #{b 2374}#) (#{key 2282}# #{b 2374}# #{req 2337}# (reverse #{ropt 2338}#) '())) #{tmp 2366}#) (let ((#{tmp 2375}# ($sc-dispatch #{tmp 2342}# '(any any)))) (if (if #{tmp 2375}# (@apply (lambda (#{a 2378}# #{b 2379}#) (eq? (syntax->datum #{a 2378}#) #:rest)) #{tmp 2375}#) #f) (@apply (lambda (#{a 2382}# #{b 2383}#) (#{rest 2284}# #{b 2383}# #{req 2337}# (reverse #{ropt 2338}#) '())) #{tmp 2375}#) (let ((#{tmp 2384}# (list #{tmp 2342}#))) (if (if #{tmp 2384}# (@apply (lambda (#{r 2386}#) (#{id? 339}# #{r 2386}#)) #{tmp 2384}#) #f) (@apply (lambda (#{r 2388}#) (#{rest 2284}# #{r 2388}# #{req 2337}# (reverse #{ropt 2338}#) '())) #{tmp 2384}#) (let ((#{else 2390}# #{tmp 2342}#)) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args 2275}# #{args 2336}#))))))))))))))))) (#{key 2282}# (lambda (#{args 2391}# #{req 2392}# #{opt 2393}# #{rkey 2394}#) (let ((#{tmp 2399}# #{args 2391}#)) (let ((#{tmp 2400}# ($sc-dispatch #{tmp 2399}# '()))) (if #{tmp 2400}# (@apply (lambda () (#{check 2286}# #{req 2392}# #{opt 2393}# #f (cons #f (reverse #{rkey 2394}#)))) #{tmp 2400}#) (let ((#{tmp 2401}# ($sc-dispatch #{tmp 2399}# '(any . any)))) (if (if #{tmp 2401}# (@apply (lambda (#{a 2404}# #{b 2405}#) (#{id? 339}# #{a 2404}#)) #{tmp 2401}#) #f) (@apply (lambda (#{a 2408}# #{b 2409}#) (let ((#{tmp 2411}# (symbol->keyword (syntax->datum #{a 2408}#)))) (let ((#{k 2413}# #{tmp 2411}#)) (#{key 2282}# #{b 2409}# #{req 2392}# #{opt 2393}# (cons (cons #{k 2413}# (cons #{a 2408}# '(#(syntax-object #f ((top) #(ribcage () () ()) #(ribcage #(k) #((top)) #("i2412")) #(ribcage #(a b) #((top) (top)) #("i2406" "i2407")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i2395" "i2396" "i2397" "i2398")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2285" "i2283" "i2281" "i2279" "i2277")) #(ribcage #(orig-args) #((top)) #("i2276")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))))) #{rkey 2394}#))))) #{tmp 2401}#) (let ((#{tmp 2414}# ($sc-dispatch #{tmp 2399}# '((any any) . any)))) (if (if #{tmp 2414}# (@apply (lambda (#{a 2418}# #{init 2419}# #{b 2420}#) (#{id? 339}# #{a 2418}#)) #{tmp 2414}#) #f) (@apply (lambda (#{a 2424}# #{init 2425}# #{b 2426}#) (let ((#{tmp 2428}# (symbol->keyword (syntax->datum #{a 2424}#)))) (let ((#{k 2430}# #{tmp 2428}#)) (#{key 2282}# #{b 2426}# #{req 2392}# #{opt 2393}# (cons (list #{k 2430}# #{a 2424}# #{init 2425}#) #{rkey 2394}#))))) #{tmp 2414}#) (let ((#{tmp 2431}# ($sc-dispatch #{tmp 2399}# '((any any any) . any)))) (if (if #{tmp 2431}# (@apply (lambda (#{a 2436}# #{init 2437}# #{k 2438}# #{b 2439}#) (if (#{id? 339}# #{a 2436}#) (keyword? (syntax->datum #{k 2438}#)) #f)) #{tmp 2431}#) #f) (@apply (lambda (#{a 2446}# #{init 2447}# #{k 2448}# #{b 2449}#) (#{key 2282}# #{b 2449}# #{req 2392}# #{opt 2393}# (cons (list #{k 2448}# #{a 2446}# #{init 2447}#) #{rkey 2394}#))) #{tmp 2431}#) (let ((#{tmp 2450}# ($sc-dispatch #{tmp 2399}# '(any)))) (if (if #{tmp 2450}# (@apply (lambda (#{aok 2452}#) (eq? (syntax->datum #{aok 2452}#) #:allow-other-keys)) #{tmp 2450}#) #f) (@apply (lambda (#{aok 2454}#) (#{check 2286}# #{req 2392}# #{opt 2393}# #f (cons #t (reverse #{rkey 2394}#)))) #{tmp 2450}#) (let ((#{tmp 2455}# ($sc-dispatch #{tmp 2399}# '(any any any)))) (if (if #{tmp 2455}# (@apply (lambda (#{aok 2459}# #{a 2460}# #{b 2461}#) (if (eq? (syntax->datum #{aok 2459}#) #:allow-other-keys) (eq? (syntax->datum #{a 2460}#) #:rest) #f)) #{tmp 2455}#) #f) (@apply (lambda (#{aok 2467}# #{a 2468}# #{b 2469}#) (#{rest 2284}# #{b 2469}# #{req 2392}# #{opt 2393}# (cons #t (reverse #{rkey 2394}#)))) #{tmp 2455}#) (let ((#{tmp 2470}# ($sc-dispatch #{tmp 2399}# '(any . any)))) (if (if #{tmp 2470}# (@apply (lambda (#{aok 2473}# #{r 2474}#) (if (eq? (syntax->datum #{aok 2473}#) #:allow-other-keys) (#{id? 339}# #{r 2474}#) #f)) #{tmp 2470}#) #f) (@apply (lambda (#{aok 2479}# #{r 2480}#) (#{rest 2284}# #{r 2480}# #{req 2392}# #{opt 2393}# (cons #t (reverse #{rkey 2394}#)))) #{tmp 2470}#) (let ((#{tmp 2481}# ($sc-dispatch #{tmp 2399}# '(any any)))) (if (if #{tmp 2481}# (@apply (lambda (#{a 2484}# #{b 2485}#) (eq? (syntax->datum #{a 2484}#) #:rest)) #{tmp 2481}#) #f) (@apply (lambda (#{a 2488}# #{b 2489}#) (#{rest 2284}# #{b 2489}# #{req 2392}# #{opt 2393}# (cons #f (reverse #{rkey 2394}#)))) #{tmp 2481}#) (let ((#{tmp 2490}# (list #{tmp 2399}#))) (if (if #{tmp 2490}# (@apply (lambda (#{r 2492}#) (#{id? 339}# #{r 2492}#)) #{tmp 2490}#) #f) (@apply (lambda (#{r 2494}#) (#{rest 2284}# #{r 2494}# #{req 2392}# #{opt 2393}# (cons #f (reverse #{rkey 2394}#)))) #{tmp 2490}#) (let ((#{else 2496}# #{tmp 2399}#)) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args 2275}# #{args 2391}#))))))))))))))))))))))) (#{rest 2284}# (lambda (#{args 2497}# #{req 2498}# #{opt 2499}# #{kw 2500}#) (let ((#{tmp 2505}# #{args 2497}#)) (let ((#{tmp 2506}# (list #{tmp 2505}#))) (if (if #{tmp 2506}# (@apply (lambda (#{r 2508}#) (#{id? 339}# #{r 2508}#)) #{tmp 2506}#) #f) (@apply (lambda (#{r 2510}#) (#{check 2286}# #{req 2498}# #{opt 2499}# #{r 2510}# #{kw 2500}#)) #{tmp 2506}#) (let ((#{else 2512}# #{tmp 2505}#)) (syntax-violation 'lambda* "invalid rest argument" #{orig-args 2275}# #{args 2497}#))))))) (#{check 2286}# (lambda (#{req 2513}# #{opt 2514}# #{rest 2515}# #{kw 2516}#) (if (#{distinct-bound-ids? 401}# (append #{req 2513}# (map car #{opt 2514}#) (if #{rest 2515}# (list #{rest 2515}#) '()) (if (pair? #{kw 2516}#) (map cadr (cdr #{kw 2516}#)) '()))) (values #{req 2513}# #{opt 2514}# #{rest 2515}# #{kw 2516}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args 2275}#))))) (begin (#{req 2278}# #{orig-args 2275}# '()))))) (#{chi-lambda-case 443}# (lambda (#{e 2524}# #{r 2525}# #{w 2526}# #{s 2527}# #{mod 2528}# #{get-formals 2529}# #{clauses 2530}#) (letrec* ((#{expand-req 2539}# (lambda (#{req 2546}# #{opt 2547}# #{rest 2548}# #{kw 2549}# #{body 2550}#) (begin (let ((#{vars 2558}# (map #{gen-var 447}# #{req 2546}#)) (#{labels 2559}# (#{gen-labels 354}# #{req 2546}#))) (begin (let ((#{r* 2562}# (#{extend-var-env 329}# #{labels 2559}# #{vars 2558}# #{r 2525}#)) (#{w* 2563}# (#{make-binding-wrap 383}# #{req 2546}# #{labels 2559}# #{w 2526}#))) (#{expand-opt 2541}# (map syntax->datum #{req 2546}#) #{opt 2547}# #{rest 2548}# #{kw 2549}# #{body 2550}# (reverse #{vars 2558}#) #{r* 2562}# #{w* 2563}# '() '()))))))) (#{expand-opt 2541}# (lambda (#{req 2564}# #{opt 2565}# #{rest 2566}# #{kw 2567}# #{body 2568}# #{vars 2569}# #{r* 2570}# #{w* 2571}# #{out 2572}# #{inits 2573}#) (if (pair? #{opt 2565}#) (let ((#{tmp 2586}# (car #{opt 2565}#))) (let ((#{tmp 2587}# ($sc-dispatch #{tmp 2586}# '(any any)))) (if #{tmp 2587}# (@apply (lambda (#{id 2590}# #{i 2591}#) (begin (let ((#{v 2594}# (#{gen-var 447}# #{id 2590}#))) (begin (let ((#{l 2596}# (#{gen-labels 354}# (list #{v 2594}#)))) (begin (let ((#{r** 2598}# (#{extend-var-env 329}# #{l 2596}# (list #{v 2594}#) #{r* 2570}#))) (begin (let ((#{w** 2600}# (#{make-binding-wrap 383}# (list #{id 2590}#) #{l 2596}# #{w* 2571}#))) (#{expand-opt 2541}# #{req 2564}# (cdr #{opt 2565}#) #{rest 2566}# #{kw 2567}# #{body 2568}# (cons #{v 2594}# #{vars 2569}#) #{r** 2598}# #{w** 2600}# (cons (syntax->datum #{id 2590}#) #{out 2572}#) (cons (#{chi 419}# #{i 2591}# #{r* 2570}# #{w* 2571}# #{mod 2528}#) #{inits 2573}#))))))))))) #{tmp 2587}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2586}#)))) (if #{rest 2566}# (begin (let ((#{v 2605}# (#{gen-var 447}# #{rest 2566}#))) (begin (let ((#{l 2607}# (#{gen-labels 354}# (list #{v 2605}#)))) (begin (let ((#{r* 2609}# (#{extend-var-env 329}# #{l 2607}# (list #{v 2605}#) #{r* 2570}#))) (begin (let ((#{w* 2611}# (#{make-binding-wrap 383}# (list #{rest 2566}#) #{l 2607}# #{w* 2571}#))) (#{expand-kw 2543}# #{req 2564}# (if (pair? #{out 2572}#) (reverse #{out 2572}#) #f) (syntax->datum #{rest 2566}#) (if (pair? #{kw 2567}#) (cdr #{kw 2567}#) #{kw 2567}#) #{body 2568}# (cons #{v 2605}# #{vars 2569}#) #{r* 2609}# #{w* 2611}# (if (pair? #{kw 2567}#) (car #{kw 2567}#) #f) '() #{inits 2573}#))))))))) (#{expand-kw 2543}# #{req 2564}# (if (pair? #{out 2572}#) (reverse #{out 2572}#) #f) #f (if (pair? #{kw 2567}#) (cdr #{kw 2567}#) #{kw 2567}#) #{body 2568}# #{vars 2569}# #{r* 2570}# #{w* 2571}# (if (pair? #{kw 2567}#) (car #{kw 2567}#) #f) '() #{inits 2573}#))))) (#{expand-kw 2543}# (lambda (#{req 2613}# #{opt 2614}# #{rest 2615}# #{kw 2616}# #{body 2617}# #{vars 2618}# #{r* 2619}# #{w* 2620}# #{aok 2621}# #{out 2622}# #{inits 2623}#) (if (pair? #{kw 2616}#) (let ((#{tmp 2637}# (car #{kw 2616}#))) (let ((#{tmp 2638}# ($sc-dispatch #{tmp 2637}# '(any any any)))) (if #{tmp 2638}# (@apply (lambda (#{k 2642}# #{id 2643}# #{i 2644}#) (begin (let ((#{v 2647}# (#{gen-var 447}# #{id 2643}#))) (begin (let ((#{l 2649}# (#{gen-labels 354}# (list #{v 2647}#)))) (begin (let ((#{r** 2651}# (#{extend-var-env 329}# #{l 2649}# (list #{v 2647}#) #{r* 2619}#))) (begin (let ((#{w** 2653}# (#{make-binding-wrap 383}# (list #{id 2643}#) #{l 2649}# #{w* 2620}#))) (#{expand-kw 2543}# #{req 2613}# #{opt 2614}# #{rest 2615}# (cdr #{kw 2616}#) #{body 2617}# (cons #{v 2647}# #{vars 2618}#) #{r** 2651}# #{w** 2653}# #{aok 2621}# (cons (list (syntax->datum #{k 2642}#) (syntax->datum #{id 2643}#) #{v 2647}#) #{out 2622}#) (cons (#{chi 419}# #{i 2644}# #{r* 2619}# #{w* 2620}# #{mod 2528}#) #{inits 2623}#))))))))))) #{tmp 2638}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2637}#)))) (#{expand-body 2545}# #{req 2613}# #{opt 2614}# #{rest 2615}# (if (begin (let ((#{t 2657}# #{aok 2621}#)) (if #{t 2657}# #{t 2657}# (pair? #{out 2622}#)))) (cons #{aok 2621}# (reverse #{out 2622}#)) #f) #{body 2617}# (reverse #{vars 2618}#) #{r* 2619}# #{w* 2620}# (reverse #{inits 2623}#) '())))) (#{expand-body 2545}# (lambda (#{req 2659}# #{opt 2660}# #{rest 2661}# #{kw 2662}# #{body 2663}# #{vars 2664}# #{r* 2665}# #{w* 2666}# #{inits 2667}# #{meta 2668}#) (let ((#{tmp 2679}# #{body 2663}#)) (let ((#{tmp 2680}# ($sc-dispatch #{tmp 2679}# '(any any . each-any)))) (if (if #{tmp 2680}# (@apply (lambda (#{docstring 2684}# #{e1 2685}# #{e2 2686}#) (string? (syntax->datum #{docstring 2684}#))) #{tmp 2680}#) #f) (@apply (lambda (#{docstring 2690}# #{e1 2691}# #{e2 2692}#) (#{expand-body 2545}# #{req 2659}# #{opt 2660}# #{rest 2661}# #{kw 2662}# (cons #{e1 2691}# #{e2 2692}#) #{vars 2664}# #{r* 2665}# #{w* 2666}# #{inits 2667}# (append #{meta 2668}# (list (cons 'documentation (syntax->datum #{docstring 2690}#)))))) #{tmp 2680}#) (let ((#{tmp 2695}# ($sc-dispatch #{tmp 2679}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp 2695}# (@apply (lambda (#{k 2700}# #{v 2701}# #{e1 2702}# #{e2 2703}#) (#{expand-body 2545}# #{req 2659}# #{opt 2660}# #{rest 2661}# #{kw 2662}# (cons #{e1 2702}# #{e2 2703}#) #{vars 2664}# #{r* 2665}# #{w* 2666}# #{inits 2667}# (append #{meta 2668}# (syntax->datum (map cons #{k 2700}# #{v 2701}#))))) #{tmp 2695}#) (let ((#{tmp 2707}# ($sc-dispatch #{tmp 2679}# '(any . each-any)))) (if #{tmp 2707}# (@apply (lambda (#{e1 2710}# #{e2 2711}#) (values #{meta 2668}# #{req 2659}# #{opt 2660}# #{rest 2661}# #{kw 2662}# #{inits 2667}# #{vars 2664}# (#{chi-body 427}# (cons #{e1 2710}# #{e2 2711}#) (#{source-wrap 407}# #{e 2524}# #{w 2526}# #{s 2527}# #{mod 2528}#) #{r* 2665}# #{w* 2666}# #{mod 2528}#))) #{tmp 2707}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2679}#))))))))))) (begin (let ((#{tmp 2713}# #{clauses 2530}#)) (let ((#{tmp 2714}# ($sc-dispatch #{tmp 2713}# '()))) (if #{tmp 2714}# (@apply (lambda () (values '() #f)) #{tmp 2714}#) (let ((#{tmp 2715}# ($sc-dispatch #{tmp 2713}# '((any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 2715}# (@apply (lambda (#{args 2722}# #{e1 2723}# #{e2 2724}# #{args* 2725}# #{e1* 2726}# #{e2* 2727}#) (call-with-values (lambda () (#{get-formals 2529}# #{args 2722}#)) (lambda (#{req 2728}# #{opt 2729}# #{rest 2730}# #{kw 2731}#) (call-with-values (lambda () (#{expand-req 2539}# #{req 2728}# #{opt 2729}# #{rest 2730}# #{kw 2731}# (cons #{e1 2723}# #{e2 2724}#))) (lambda (#{meta 2737}# #{req 2738}# #{opt 2739}# #{rest 2740}# #{kw 2741}# #{inits 2742}# #{vars 2743}# #{body 2744}#) (call-with-values (lambda () (#{chi-lambda-case 443}# #{e 2524}# #{r 2525}# #{w 2526}# #{s 2527}# #{mod 2528}# #{get-formals 2529}# (map (lambda (#{tmp 2755}# #{tmp 2754}# #{tmp 2753}#) (cons #{tmp 2753}# (cons #{tmp 2754}# #{tmp 2755}#))) #{e2* 2727}# #{e1* 2726}# #{args* 2725}#))) (lambda (#{meta* 2757}# #{else* 2758}#) (values (append #{meta 2737}# #{meta* 2757}#) (#{build-lambda-case 287}# #{s 2527}# #{req 2738}# #{opt 2739}# #{rest 2740}# #{kw 2741}# #{inits 2742}# #{vars 2743}# #{body 2744}# #{else* 2758}#))))))))) #{tmp 2715}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 2713}#)))))))))) (#{strip 445}# (lambda (#{x 2761}# #{w 2762}#) (if (memq 'top (car #{w 2762}#)) #{x 2761}# (letrec* ((#{f 2769}# (lambda (#{x 2770}#) (if (#{syntax-object? 305}# #{x 2770}#) (#{strip 445}# (#{syntax-object-expression 307}# #{x 2770}#) (#{syntax-object-wrap 309}# #{x 2770}#)) (if (pair? #{x 2770}#) (begin (let ((#{a 2777}# (#{f 2769}# (car #{x 2770}#))) (#{d 2778}# (#{f 2769}# (cdr #{x 2770}#)))) (if (if (eq? #{a 2777}# (car #{x 2770}#)) (eq? #{d 2778}# (cdr #{x 2770}#)) #f) #{x 2770}# (cons #{a 2777}# #{d 2778}#)))) (if (vector? #{x 2770}#) (begin (let ((#{old 2784}# (vector->list #{x 2770}#))) (begin (let ((#{new 2786}# (map #{f 2769}# #{old 2784}#))) (letrec* ((#{lp 2790}# (lambda (#{l1 2791}# #{l2 2792}#) (if (null? #{l1 2791}#) #{x 2770}# (if (eq? (car #{l1 2791}#) (car #{l2 2792}#)) (#{lp 2790}# (cdr #{l1 2791}#) (cdr #{l2 2792}#)) (list->vector #{new 2786}#)))))) (begin (#{lp 2790}# #{old 2784}# #{new 2786}#))))))) #{x 2770}#)))))) (begin (#{f 2769}# #{x 2761}#)))))) (#{gen-var 447}# (lambda (#{id 2794}#) (begin (let ((#{id 2797}# (if (#{syntax-object? 305}# #{id 2794}#) (#{syntax-object-expression 307}# #{id 2794}#) #{id 2794}#))) (gensym (string-append (symbol->string #{id 2797}#) " ")))))) (#{lambda-var-list 449}# (lambda (#{vars 2799}#) (letrec* ((#{lvl 2805}# (lambda (#{vars 2806}# #{ls 2807}# #{w 2808}#) (if (pair? #{vars 2806}#) (#{lvl 2805}# (cdr #{vars 2806}#) (cons (#{wrap 405}# (car #{vars 2806}#) #{w 2808}# #f) #{ls 2807}#) #{w 2808}#) (if (#{id? 339}# #{vars 2806}#) (cons (#{wrap 405}# #{vars 2806}# #{w 2808}# #f) #{ls 2807}#) (if (null? #{vars 2806}#) #{ls 2807}# (if (#{syntax-object? 305}# #{vars 2806}#) (#{lvl 2805}# (#{syntax-object-expression 307}# #{vars 2806}#) #{ls 2807}# (#{join-wraps 387}# #{w 2808}# (#{syntax-object-wrap 309}# #{vars 2806}#))) (cons #{vars 2806}# #{ls 2807}#)))))))) (begin (#{lvl 2805}# #{vars 2799}# '() '(()))))))) (begin (lambda (#{src 767}# #{name 768}#) (make-struct/no-tail (vector-ref %expanded-vtables 2) #{src 767}# #{name 768}#)) (lambda (#{x 1145}# #{update 1146}#) (vector-set! #{x 1145}# 1 #{update 1146}#)) (lambda (#{x 1149}# #{update 1150}#) (vector-set! #{x 1149}# 2 #{update 1150}#)) (lambda (#{x 1153}# #{update 1154}#) (vector-set! #{x 1153}# 3 #{update 1154}#)) (lambda (#{x 1234}#) (if (vector? #{x 1234}#) (if (= (vector-length #{x 1234}#) 4) (eq? (vector-ref #{x 1234}# 0) 'ribcage) #f) #f)) (begin (#{global-extend 335}# 'local-syntax 'letrec-syntax #t) (#{global-extend 335}# 'local-syntax 'let-syntax #f) (#{global-extend 335}# 'core 'fluid-let-syntax (lambda (#{e 2819}# #{r 2820}# #{w 2821}# #{s 2822}# #{mod 2823}#) (let ((#{tmp 2829}# #{e 2819}#)) (let ((#{tmp 2830}# ($sc-dispatch #{tmp 2829}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 2830}# (@apply (lambda (#{var 2835}# #{val 2836}# #{e1 2837}# #{e2 2838}#) (#{valid-bound-ids? 399}# #{var 2835}#)) #{tmp 2830}#) #f) (@apply (lambda (#{var 2844}# #{val 2845}# #{e1 2846}# #{e2 2847}#) (begin (let ((#{names 2849}# (map (lambda (#{x 2850}#) (#{id-var-name 393}# #{x 2850}# #{w 2821}#)) #{var 2844}#))) (begin (for-each (lambda (#{id 2853}# #{n 2854}#) (begin (let ((#{atom-key 2859}# (car (#{lookup 333}# #{n 2854}# #{r 2820}# #{mod 2823}#)))) (if (eqv? #{atom-key 2859}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e 2819}# (#{source-wrap 407}# #{id 2853}# #{w 2821}# #{s 2822}# #{mod 2823}#)))))) #{var 2844}# #{names 2849}#) (#{chi-body 427}# (cons #{e1 2846}# #{e2 2847}#) (#{source-wrap 407}# #{e 2819}# #{w 2821}# #{s 2822}# #{mod 2823}#) (#{extend-env 327}# #{names 2849}# (begin (let ((#{trans-r 2865}# (#{macros-only-env 331}# #{r 2820}#))) (map (lambda (#{x 2866}#) (cons 'macro (#{eval-local-transformer 431}# (#{chi 419}# #{x 2866}# #{trans-r 2865}# #{w 2821}# #{mod 2823}#) #{mod 2823}#))) #{val 2845}#))) #{r 2820}#) #{w 2821}# #{mod 2823}#))))) #{tmp 2830}#) (let ((#{_ 2871}# #{tmp 2829}#)) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap 407}# #{e 2819}# #{w 2821}# #{s 2822}# #{mod 2823}#)))))))) (#{global-extend 335}# 'core 'quote (lambda (#{e 2872}# #{r 2873}# #{w 2874}# #{s 2875}# #{mod 2876}#) (let ((#{tmp 2882}# #{e 2872}#)) (let ((#{tmp 2883}# ($sc-dispatch #{tmp 2882}# '(_ any)))) (if #{tmp 2883}# (@apply (lambda (#{e 2885}#) (#{build-data 291}# #{s 2875}# (#{strip 445}# #{e 2885}# #{w 2874}#))) #{tmp 2883}#) (let ((#{_ 2887}# #{tmp 2882}#)) (syntax-violation 'quote "bad syntax" (#{source-wrap 407}# #{e 2872}# #{w 2874}# #{s 2875}# #{mod 2876}#)))))))) (#{global-extend 335}# 'core 'syntax (letrec* ((#{gen-syntax 2889}# (lambda (#{src 2904}# #{e 2905}# #{r 2906}# #{maps 2907}# #{ellipsis? 2908}# #{mod 2909}#) (if (#{id? 339}# #{e 2905}#) (begin (let ((#{label 2917}# (#{id-var-name 393}# #{e 2905}# '(())))) (begin (let ((#{b 2920}# (#{lookup 333}# #{label 2917}# #{r 2906}# #{mod 2909}#))) (if (eq? (car #{b 2920}#) 'syntax) (call-with-values (lambda () (begin (let ((#{var.lev 2923}# (cdr #{b 2920}#))) (#{gen-ref 2891}# #{src 2904}# (car #{var.lev 2923}#) (cdr #{var.lev 2923}#) #{maps 2907}#)))) (lambda (#{var 2925}# #{maps 2926}#) (values (list 'ref #{var 2925}#) #{maps 2926}#))) (if (#{ellipsis? 2908}# #{e 2905}#) (syntax-violation 'syntax "misplaced ellipsis" #{src 2904}#) (values (list 'quote #{e 2905}#) #{maps 2907}#))))))) (let ((#{tmp 2931}# #{e 2905}#)) (let ((#{tmp 2932}# ($sc-dispatch #{tmp 2931}# '(any any)))) (if (if #{tmp 2932}# (@apply (lambda (#{dots 2935}# #{e 2936}#) (#{ellipsis? 2908}# #{dots 2935}#)) #{tmp 2932}#) #f) (@apply (lambda (#{dots 2939}# #{e 2940}#) (#{gen-syntax 2889}# #{src 2904}# #{e 2940}# #{r 2906}# #{maps 2907}# (lambda (#{x 2941}#) #f) #{mod 2909}#)) #{tmp 2932}#) (let ((#{tmp 2943}# ($sc-dispatch #{tmp 2931}# '(any any . any)))) (if (if #{tmp 2943}# (@apply (lambda (#{x 2947}# #{dots 2948}# #{y 2949}#) (#{ellipsis? 2908}# #{dots 2948}#)) #{tmp 2943}#) #f) (@apply (lambda (#{x 2953}# #{dots 2954}# #{y 2955}#) (letrec* ((#{f 2959}# (lambda (#{y 2960}# #{k 2961}#) (let ((#{tmp 2968}# #{y 2960}#)) (let ((#{tmp 2969}# ($sc-dispatch #{tmp 2968}# '(any . any)))) (if (if #{tmp 2969}# (@apply (lambda (#{dots 2972}# #{y 2973}#) (#{ellipsis? 2908}# #{dots 2972}#)) #{tmp 2969}#) #f) (@apply (lambda (#{dots 2976}# #{y 2977}#) (#{f 2959}# #{y 2977}# (lambda (#{maps 2978}#) (call-with-values (lambda () (#{k 2961}# (cons '() #{maps 2978}#))) (lambda (#{x 2980}# #{maps 2981}#) (if (null? (car #{maps 2981}#)) (syntax-violation 'syntax "extra ellipsis" #{src 2904}#) (values (#{gen-mappend 2893}# #{x 2980}# (car #{maps 2981}#)) (cdr #{maps 2981}#)))))))) #{tmp 2969}#) (let ((#{_ 2985}# #{tmp 2968}#)) (call-with-values (lambda () (#{gen-syntax 2889}# #{src 2904}# #{y 2960}# #{r 2906}# #{maps 2907}# #{ellipsis? 2908}# #{mod 2909}#)) (lambda (#{y 2986}# #{maps 2987}#) (call-with-values (lambda () (#{k 2961}# #{maps 2987}#)) (lambda (#{x 2990}# #{maps 2991}#) (values (#{gen-append 2899}# #{x 2990}# #{y 2986}#) #{maps 2991}#)))))))))))) (begin (#{f 2959}# #{y 2955}# (lambda (#{maps 2962}#) (call-with-values (lambda () (#{gen-syntax 2889}# #{src 2904}# #{x 2953}# #{r 2906}# (cons '() #{maps 2962}#) #{ellipsis? 2908}# #{mod 2909}#)) (lambda (#{x 2964}# #{maps 2965}#) (if (null? (car #{maps 2965}#)) (syntax-violation 'syntax "extra ellipsis" #{src 2904}#) (values (#{gen-map 2895}# #{x 2964}# (car #{maps 2965}#)) (cdr #{maps 2965}#)))))))))) #{tmp 2943}#) (let ((#{tmp 2994}# ($sc-dispatch #{tmp 2931}# '(any . any)))) (if #{tmp 2994}# (@apply (lambda (#{x 2997}# #{y 2998}#) (call-with-values (lambda () (#{gen-syntax 2889}# #{src 2904}# #{x 2997}# #{r 2906}# #{maps 2907}# #{ellipsis? 2908}# #{mod 2909}#)) (lambda (#{x 2999}# #{maps 3000}#) (call-with-values (lambda () (#{gen-syntax 2889}# #{src 2904}# #{y 2998}# #{r 2906}# #{maps 3000}# #{ellipsis? 2908}# #{mod 2909}#)) (lambda (#{y 3003}# #{maps 3004}#) (values (#{gen-cons 2897}# #{x 2999}# #{y 3003}#) #{maps 3004}#)))))) #{tmp 2994}#) (let ((#{tmp 3007}# ($sc-dispatch #{tmp 2931}# '#(vector (any . each-any))))) (if #{tmp 3007}# (@apply (lambda (#{e1 3010}# #{e2 3011}#) (call-with-values (lambda () (#{gen-syntax 2889}# #{src 2904}# (cons #{e1 3010}# #{e2 3011}#) #{r 2906}# #{maps 2907}# #{ellipsis? 2908}# #{mod 2909}#)) (lambda (#{e 3013}# #{maps 3014}#) (values (#{gen-vector 2901}# #{e 3013}#) #{maps 3014}#)))) #{tmp 3007}#) (let ((#{_ 3018}# #{tmp 2931}#)) (values (list 'quote #{e 2905}#) #{maps 2907}#)))))))))))))) (#{gen-ref 2891}# (lambda (#{src 3020}# #{var 3021}# #{level 3022}# #{maps 3023}#) (if (= #{level 3022}# 0) (values #{var 3021}# #{maps 3023}#) (if (null? #{maps 3023}#) (syntax-violation 'syntax "missing ellipsis" #{src 3020}#) (call-with-values (lambda () (#{gen-ref 2891}# #{src 3020}# #{var 3021}# (#{1-}# #{level 3022}#) (cdr #{maps 3023}#))) (lambda (#{outer-var 3030}# #{outer-maps 3031}#) (begin (let ((#{b 3035}# (assq #{outer-var 3030}# (car #{maps 3023}#)))) (if #{b 3035}# (values (cdr #{b 3035}#) #{maps 3023}#) (begin (let ((#{inner-var 3037}# (#{gen-var 447}# 'tmp))) (values #{inner-var 3037}# (cons (cons (cons #{outer-var 3030}# #{inner-var 3037}#) (car #{maps 3023}#)) #{outer-maps 3031}#))))))))))))) (#{gen-mappend 2893}# (lambda (#{e 3038}# #{map-env 3039}#) (list 'apply '(primitive append) (#{gen-map 2895}# #{e 3038}# #{map-env 3039}#)))) (#{gen-map 2895}# (lambda (#{e 3043}# #{map-env 3044}#) (begin (let ((#{formals 3049}# (map cdr #{map-env 3044}#)) (#{actuals 3050}# (map (lambda (#{x 3051}#) (list 'ref (car #{x 3051}#))) #{map-env 3044}#))) (if (eq? (car #{e 3043}#) 'ref) (car #{actuals 3050}#) (if (and-map (lambda (#{x 3058}#) (if (eq? (car #{x 3058}#) 'ref) (memq (car (cdr #{x 3058}#)) #{formals 3049}#) #f)) (cdr #{e 3043}#)) (cons 'map (cons (list 'primitive (car #{e 3043}#)) (map (begin (let ((#{r 3064}# (map cons #{formals 3049}# #{actuals 3050}#))) (lambda (#{x 3065}#) (cdr (assq (car (cdr #{x 3065}#)) #{r 3064}#))))) (cdr #{e 3043}#)))) (cons 'map (cons (list 'lambda #{formals 3049}# #{e 3043}#) #{actuals 3050}#)))))))) (#{gen-cons 2897}# (lambda (#{x 3069}# #{y 3070}#) (begin (let ((#{atom-key 3075}# (car #{y 3070}#))) (if (eqv? #{atom-key 3075}# 'quote) (if (eq? (car #{x 3069}#) 'quote) (list 'quote (cons (car (cdr #{x 3069}#)) (car (cdr #{y 3070}#)))) (if (eq? (car (cdr #{y 3070}#)) '()) (list 'list #{x 3069}#) (list 'cons #{x 3069}# #{y 3070}#))) (if (eqv? #{atom-key 3075}# 'list) (cons 'list (cons #{x 3069}# (cdr #{y 3070}#))) (list 'cons #{x 3069}# #{y 3070}#))))))) (#{gen-append 2899}# (lambda (#{x 3084}# #{y 3085}#) (if (equal? #{y 3085}# ''()) #{x 3084}# (list 'append #{x 3084}# #{y 3085}#)))) (#{gen-vector 2901}# (lambda (#{x 3089}#) (if (eq? (car #{x 3089}#) 'list) (cons 'vector (cdr #{x 3089}#)) (if (eq? (car #{x 3089}#) 'quote) (list 'quote (list->vector (car (cdr #{x 3089}#)))) (list 'list->vector #{x 3089}#))))) (#{regen 2903}# (lambda (#{x 3099}#) (begin (let ((#{atom-key 3103}# (car #{x 3099}#))) (if (eqv? #{atom-key 3103}# 'ref) (#{build-lexical-reference 271}# 'value #f (car (cdr #{x 3099}#)) (car (cdr #{x 3099}#))) (if (eqv? #{atom-key 3103}# 'primitive) (#{build-primref 289}# #f (car (cdr #{x 3099}#))) (if (eqv? #{atom-key 3103}# 'quote) (#{build-data 291}# #f (car (cdr #{x 3099}#))) (if (eqv? #{atom-key 3103}# 'lambda) (if (list? (car (cdr #{x 3099}#))) (#{build-simple-lambda 283}# #f (car (cdr #{x 3099}#)) #f (car (cdr #{x 3099}#)) '() (#{regen 2903}# (car (cdr (cdr #{x 3099}#))))) (error "how did we get here" #{x 3099}#)) (#{build-application 265}# #f (#{build-primref 289}# #f (car #{x 3099}#)) (map #{regen 2903}# (cdr #{x 3099}#)))))))))))) (begin (lambda (#{e 3115}# #{r 3116}# #{w 3117}# #{s 3118}# #{mod 3119}#) (begin (let ((#{e 3126}# (#{source-wrap 407}# #{e 3115}# #{w 3117}# #{s 3118}# #{mod 3119}#))) (let ((#{tmp 3127}# #{e 3126}#)) (let ((#{tmp 3128}# ($sc-dispatch #{tmp 3127}# '(_ any)))) (if #{tmp 3128}# (@apply (lambda (#{x 3130}#) (call-with-values (lambda () (#{gen-syntax 2889}# #{e 3126}# #{x 3130}# #{r 3116}# '() #{ellipsis? 435}# #{mod 3119}#)) (lambda (#{e 3131}# #{maps 3132}#) (#{regen 2903}# #{e 3131}#)))) #{tmp 3128}#) (let ((#{_ 3136}# #{tmp 3127}#)) (syntax-violation 'syntax "bad `syntax' form" #{e 3126}#))))))))))) (#{global-extend 335}# 'core 'lambda (lambda (#{e 3137}# #{r 3138}# #{w 3139}# #{s 3140}# #{mod 3141}#) (let ((#{tmp 3147}# #{e 3137}#)) (let ((#{tmp 3148}# ($sc-dispatch #{tmp 3147}# '(_ any any . each-any)))) (if #{tmp 3148}# (@apply (lambda (#{args 3152}# #{e1 3153}# #{e2 3154}#) (call-with-values (lambda () (#{lambda-formals 437}# #{args 3152}#)) (lambda (#{req 3155}# #{opt 3156}# #{rest 3157}# #{kw 3158}#) (letrec* ((#{lp 3166}# (lambda (#{body 3167}# #{meta 3168}#) (let ((#{tmp 3170}# #{body 3167}#)) (let ((#{tmp 3171}# ($sc-dispatch #{tmp 3170}# '(any any . each-any)))) (if (if #{tmp 3171}# (@apply (lambda (#{docstring 3175}# #{e1 3176}# #{e2 3177}#) (string? (syntax->datum #{docstring 3175}#))) #{tmp 3171}#) #f) (@apply (lambda (#{docstring 3181}# #{e1 3182}# #{e2 3183}#) (#{lp 3166}# (cons #{e1 3182}# #{e2 3183}#) (append #{meta 3168}# (list (cons 'documentation (syntax->datum #{docstring 3181}#)))))) #{tmp 3171}#) (let ((#{tmp 3186}# ($sc-dispatch #{tmp 3170}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp 3186}# (@apply (lambda (#{k 3191}# #{v 3192}# #{e1 3193}# #{e2 3194}#) (#{lp 3166}# (cons #{e1 3193}# #{e2 3194}#) (append #{meta 3168}# (syntax->datum (map cons #{k 3191}# #{v 3192}#))))) #{tmp 3186}#) (let ((#{_ 3199}# #{tmp 3170}#)) (#{chi-simple-lambda 439}# #{e 3137}# #{r 3138}# #{w 3139}# #{s 3140}# #{mod 3141}# #{req 3155}# #{rest 3157}# #{meta 3168}# #{body 3167}#)))))))))) (begin (#{lp 3166}# (cons #{e1 3153}# #{e2 3154}#) '())))))) #{tmp 3148}#) (let ((#{_ 3201}# #{tmp 3147}#)) (syntax-violation 'lambda "bad lambda" #{e 3137}#))))))) (#{global-extend 335}# 'core 'lambda* (lambda (#{e 3202}# #{r 3203}# #{w 3204}# #{s 3205}# #{mod 3206}#) (let ((#{tmp 3212}# #{e 3202}#)) (let ((#{tmp 3213}# ($sc-dispatch #{tmp 3212}# '(_ any any . each-any)))) (if #{tmp 3213}# (@apply (lambda (#{args 3217}# #{e1 3218}# #{e2 3219}#) (call-with-values (lambda () (#{chi-lambda-case 443}# #{e 3202}# #{r 3203}# #{w 3204}# #{s 3205}# #{mod 3206}# #{lambda*-formals 441}# (list (cons #{args 3217}# (cons #{e1 3218}# #{e2 3219}#))))) (lambda (#{meta 3221}# #{lcase 3222}#) (#{build-case-lambda 285}# #{s 3205}# #{meta 3221}# #{lcase 3222}#)))) #{tmp 3213}#) (let ((#{_ 3226}# #{tmp 3212}#)) (syntax-violation 'lambda "bad lambda*" #{e 3202}#))))))) (#{global-extend 335}# 'core 'case-lambda (lambda (#{e 3227}# #{r 3228}# #{w 3229}# #{s 3230}# #{mod 3231}#) (let ((#{tmp 3237}# #{e 3227}#)) (let ((#{tmp 3238}# ($sc-dispatch #{tmp 3237}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 3238}# (@apply (lambda (#{args 3245}# #{e1 3246}# #{e2 3247}# #{args* 3248}# #{e1* 3249}# #{e2* 3250}#) (call-with-values (lambda () (#{chi-lambda-case 443}# #{e 3227}# #{r 3228}# #{w 3229}# #{s 3230}# #{mod 3231}# #{lambda-formals 437}# (cons (cons #{args 3245}# (cons #{e1 3246}# #{e2 3247}#)) (map (lambda (#{tmp 3254}# #{tmp 3253}# #{tmp 3252}#) (cons #{tmp 3252}# (cons #{tmp 3253}# #{tmp 3254}#))) #{e2* 3250}# #{e1* 3249}# #{args* 3248}#)))) (lambda (#{meta 3256}# #{lcase 3257}#) (#{build-case-lambda 285}# #{s 3230}# #{meta 3256}# #{lcase 3257}#)))) #{tmp 3238}#) (let ((#{_ 3261}# #{tmp 3237}#)) (syntax-violation 'case-lambda "bad case-lambda" #{e 3227}#))))))) (#{global-extend 335}# 'core 'case-lambda* (lambda (#{e 3262}# #{r 3263}# #{w 3264}# #{s 3265}# #{mod 3266}#) (let ((#{tmp 3272}# #{e 3262}#)) (let ((#{tmp 3273}# ($sc-dispatch #{tmp 3272}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp 3273}# (@apply (lambda (#{args 3280}# #{e1 3281}# #{e2 3282}# #{args* 3283}# #{e1* 3284}# #{e2* 3285}#) (call-with-values (lambda () (#{chi-lambda-case 443}# #{e 3262}# #{r 3263}# #{w 3264}# #{s 3265}# #{mod 3266}# #{lambda*-formals 441}# (cons (cons #{args 3280}# (cons #{e1 3281}# #{e2 3282}#)) (map (lambda (#{tmp 3289}# #{tmp 3288}# #{tmp 3287}#) (cons #{tmp 3287}# (cons #{tmp 3288}# #{tmp 3289}#))) #{e2* 3285}# #{e1* 3284}# #{args* 3283}#)))) (lambda (#{meta 3291}# #{lcase 3292}#) (#{build-case-lambda 285}# #{s 3265}# #{meta 3291}# #{lcase 3292}#)))) #{tmp 3273}#) (let ((#{_ 3296}# #{tmp 3272}#)) (syntax-violation 'case-lambda "bad case-lambda*" #{e 3262}#))))))) (#{global-extend 335}# 'core 'let (letrec* ((#{chi-let 3298}# (lambda (#{e 3299}# #{r 3300}# #{w 3301}# #{s 3302}# #{mod 3303}# #{constructor 3304}# #{ids 3305}# #{vals 3306}# #{exps 3307}#) (if (not (#{valid-bound-ids? 399}# #{ids 3305}#)) (syntax-violation 'let "duplicate bound variable" #{e 3299}#) (begin (let ((#{labels 3319}# (#{gen-labels 354}# #{ids 3305}#)) (#{new-vars 3320}# (map #{gen-var 447}# #{ids 3305}#))) (begin (let ((#{nw 3323}# (#{make-binding-wrap 383}# #{ids 3305}# #{labels 3319}# #{w 3301}#)) (#{nr 3324}# (#{extend-var-env 329}# #{labels 3319}# #{new-vars 3320}# #{r 3300}#))) (#{constructor 3304}# #{s 3302}# (map syntax->datum #{ids 3305}#) #{new-vars 3320}# (map (lambda (#{x 3325}#) (#{chi 419}# #{x 3325}# #{r 3300}# #{w 3301}# #{mod 3303}#)) #{vals 3306}#) (#{chi-body 427}# #{exps 3307}# (#{source-wrap 407}# #{e 3299}# #{nw 3323}# #{s 3302}# #{mod 3303}#) #{nr 3324}# #{nw 3323}# #{mod 3303}#)))))))))) (begin (lambda (#{e 3327}# #{r 3328}# #{w 3329}# #{s 3330}# #{mod 3331}#) (let ((#{tmp 3337}# #{e 3327}#)) (let ((#{tmp 3338}# ($sc-dispatch #{tmp 3337}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3338}# (@apply (lambda (#{id 3343}# #{val 3344}# #{e1 3345}# #{e2 3346}#) (and-map #{id? 339}# #{id 3343}#)) #{tmp 3338}#) #f) (@apply (lambda (#{id 3352}# #{val 3353}# #{e1 3354}# #{e2 3355}#) (#{chi-let 3298}# #{e 3327}# #{r 3328}# #{w 3329}# #{s 3330}# #{mod 3331}# #{build-let 295}# #{id 3352}# #{val 3353}# (cons #{e1 3354}# #{e2 3355}#))) #{tmp 3338}#) (let ((#{tmp 3359}# ($sc-dispatch #{tmp 3337}# '(_ any #(each (any any)) any . each-any)))) (if (if #{tmp 3359}# (@apply (lambda (#{f 3365}# #{id 3366}# #{val 3367}# #{e1 3368}# #{e2 3369}#) (if (#{id? 339}# #{f 3365}#) (and-map #{id? 339}# #{id 3366}#) #f)) #{tmp 3359}#) #f) (@apply (lambda (#{f 3378}# #{id 3379}# #{val 3380}# #{e1 3381}# #{e2 3382}#) (#{chi-let 3298}# #{e 3327}# #{r 3328}# #{w 3329}# #{s 3330}# #{mod 3331}# #{build-named-let 297}# (cons #{f 3378}# #{id 3379}#) #{val 3380}# (cons #{e1 3381}# #{e2 3382}#))) #{tmp 3359}#) (let ((#{_ 3387}# #{tmp 3337}#)) (syntax-violation 'let "bad let" (#{source-wrap 407}# #{e 3327}# #{w 3329}# #{s 3330}# #{mod 3331}#)))))))))))) (#{global-extend 335}# 'core 'letrec (lambda (#{e 3388}# #{r 3389}# #{w 3390}# #{s 3391}# #{mod 3392}#) (let ((#{tmp 3398}# #{e 3388}#)) (let ((#{tmp 3399}# ($sc-dispatch #{tmp 3398}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3399}# (@apply (lambda (#{id 3404}# #{val 3405}# #{e1 3406}# #{e2 3407}#) (and-map #{id? 339}# #{id 3404}#)) #{tmp 3399}#) #f) (@apply (lambda (#{id 3413}# #{val 3414}# #{e1 3415}# #{e2 3416}#) (begin (let ((#{ids 3418}# #{id 3413}#)) (if (not (#{valid-bound-ids? 399}# #{ids 3418}#)) (syntax-violation 'letrec "duplicate bound variable" #{e 3388}#) (begin (let ((#{labels 3422}# (#{gen-labels 354}# #{ids 3418}#)) (#{new-vars 3423}# (map #{gen-var 447}# #{ids 3418}#))) (begin (let ((#{w 3426}# (#{make-binding-wrap 383}# #{ids 3418}# #{labels 3422}# #{w 3390}#)) (#{r 3427}# (#{extend-var-env 329}# #{labels 3422}# #{new-vars 3423}# #{r 3389}#))) (#{build-letrec 299}# #{s 3391}# #f (map syntax->datum #{ids 3418}#) #{new-vars 3423}# (map (lambda (#{x 3428}#) (#{chi 419}# #{x 3428}# #{r 3427}# #{w 3426}# #{mod 3392}#)) #{val 3414}#) (#{chi-body 427}# (cons #{e1 3415}# #{e2 3416}#) (#{source-wrap 407}# #{e 3388}# #{w 3426}# #{s 3391}# #{mod 3392}#) #{r 3427}# #{w 3426}# #{mod 3392}#)))))))))) #{tmp 3399}#) (let ((#{_ 3433}# #{tmp 3398}#)) (syntax-violation 'letrec "bad letrec" (#{source-wrap 407}# #{e 3388}# #{w 3390}# #{s 3391}# #{mod 3392}#)))))))) (#{global-extend 335}# 'core 'letrec* (lambda (#{e 3434}# #{r 3435}# #{w 3436}# #{s 3437}# #{mod 3438}#) (let ((#{tmp 3444}# #{e 3434}#)) (let ((#{tmp 3445}# ($sc-dispatch #{tmp 3444}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp 3445}# (@apply (lambda (#{id 3450}# #{val 3451}# #{e1 3452}# #{e2 3453}#) (and-map #{id? 339}# #{id 3450}#)) #{tmp 3445}#) #f) (@apply (lambda (#{id 3459}# #{val 3460}# #{e1 3461}# #{e2 3462}#) (begin (let ((#{ids 3464}# #{id 3459}#)) (if (not (#{valid-bound-ids? 399}# #{ids 3464}#)) (syntax-violation 'letrec* "duplicate bound variable" #{e 3434}#) (begin (let ((#{labels 3468}# (#{gen-labels 354}# #{ids 3464}#)) (#{new-vars 3469}# (map #{gen-var 447}# #{ids 3464}#))) (begin (let ((#{w 3472}# (#{make-binding-wrap 383}# #{ids 3464}# #{labels 3468}# #{w 3436}#)) (#{r 3473}# (#{extend-var-env 329}# #{labels 3468}# #{new-vars 3469}# #{r 3435}#))) (#{build-letrec 299}# #{s 3437}# #t (map syntax->datum #{ids 3464}#) #{new-vars 3469}# (map (lambda (#{x 3474}#) (#{chi 419}# #{x 3474}# #{r 3473}# #{w 3472}# #{mod 3438}#)) #{val 3460}#) (#{chi-body 427}# (cons #{e1 3461}# #{e2 3462}#) (#{source-wrap 407}# #{e 3434}# #{w 3472}# #{s 3437}# #{mod 3438}#) #{r 3473}# #{w 3472}# #{mod 3438}#)))))))))) #{tmp 3445}#) (let ((#{_ 3479}# #{tmp 3444}#)) (syntax-violation 'letrec* "bad letrec*" (#{source-wrap 407}# #{e 3434}# #{w 3436}# #{s 3437}# #{mod 3438}#)))))))) (#{global-extend 335}# 'core 'set! (lambda (#{e 3480}# #{r 3481}# #{w 3482}# #{s 3483}# #{mod 3484}#) (let ((#{tmp 3490}# #{e 3480}#)) (let ((#{tmp 3491}# ($sc-dispatch #{tmp 3490}# '(_ any any)))) (if (if #{tmp 3491}# (@apply (lambda (#{id 3494}# #{val 3495}#) (#{id? 339}# #{id 3494}#)) #{tmp 3491}#) #f) (@apply (lambda (#{id 3498}# #{val 3499}#) (begin (let ((#{n 3502}# (#{id-var-name 393}# #{id 3498}# #{w 3482}#)) (#{id-mod 3503}# (if (#{syntax-object? 305}# #{id 3498}#) (#{syntax-object-module 311}# #{id 3498}#) #{mod 3484}#))) (begin (let ((#{b 3505}# (#{lookup 333}# #{n 3502}# #{r 3481}# #{id-mod 3503}#))) (begin (let ((#{atom-key 3508}# (car #{b 3505}#))) (if (eqv? #{atom-key 3508}# 'lexical) (#{build-lexical-assignment 273}# #{s 3483}# (syntax->datum #{id 3498}#) (cdr #{b 3505}#) (#{chi 419}# #{val 3499}# #{r 3481}# #{w 3482}# #{mod 3484}#)) (if (eqv? #{atom-key 3508}# 'global) (#{build-global-assignment 279}# #{s 3483}# #{n 3502}# (#{chi 419}# #{val 3499}# #{r 3481}# #{w 3482}# #{mod 3484}#) #{id-mod 3503}#) (if (eqv? #{atom-key 3508}# 'macro) (begin (let ((#{p 3515}# (cdr #{b 3505}#))) (if (procedure-property #{p 3515}# 'variable-transformer) (#{chi 419}# (#{chi-macro 425}# #{p 3515}# #{e 3480}# #{r 3481}# #{w 3482}# #{s 3483}# #f #{mod 3484}#) #{r 3481}# '(()) #{mod 3484}#) (syntax-violation 'set! "not a variable transformer" (#{wrap 405}# #{e 3480}# #{w 3482}# #{mod 3484}#) (#{wrap 405}# #{id 3498}# #{w 3482}# #{id-mod 3503}#))))) (if (eqv? #{atom-key 3508}# 'displaced-lexical) (syntax-violation 'set! "identifier out of context" (#{wrap 405}# #{id 3498}# #{w 3482}# #{mod 3484}#)) (syntax-violation 'set! "bad set!" (#{source-wrap 407}# #{e 3480}# #{w 3482}# #{s 3483}# #{mod 3484}#))))))))))))) #{tmp 3491}#) (let ((#{tmp 3520}# ($sc-dispatch #{tmp 3490}# '(_ (any . each-any) any)))) (if #{tmp 3520}# (@apply (lambda (#{head 3524}# #{tail 3525}# #{val 3526}#) (call-with-values (lambda () (#{syntax-type 417}# #{head 3524}# #{r 3481}# '(()) #f #f #{mod 3484}# #t)) (lambda (#{type 3529}# #{value 3530}# #{ee 3531}# #{ww 3532}# #{ss 3533}# #{modmod 3534}#) (if (eqv? #{type 3529}# 'module-ref) (begin (let ((#{val 3543}# (#{chi 419}# #{val 3526}# #{r 3481}# #{w 3482}# #{mod 3484}#))) (call-with-values (lambda () (#{value 3530}# (cons #{head 3524}# #{tail 3525}#) #{r 3481}# #{w 3482}#)) (lambda (#{e 3545}# #{r 3546}# #{w 3547}# #{s* 3548}# #{mod 3549}#) (let ((#{tmp 3555}# #{e 3545}#)) (let ((#{tmp 3556}# (list #{tmp 3555}#))) (if (if #{tmp 3556}# (@apply (lambda (#{e 3558}#) (#{id? 339}# #{e 3558}#)) #{tmp 3556}#) #f) (@apply (lambda (#{e 3560}#) (#{build-global-assignment 279}# #{s 3483}# (syntax->datum #{e 3560}#) #{val 3543}# #{mod 3549}#)) #{tmp 3556}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3555}#)))))))) (#{build-application 265}# #{s 3483}# (#{chi 419}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3535" "i3536" "i3537" "i3538" "i3539" "i3540")) #(ribcage #(head tail val) #((top) (top) (top)) #("i3521" "i3522" "i3523")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3485" "i3486" "i3487" "i3488" "i3489")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{head 3524}#) #{r 3481}# #{w 3482}# #{mod 3484}#) (map (lambda (#{e 3562}#) (#{chi 419}# #{e 3562}# #{r 3481}# #{w 3482}# #{mod 3484}#)) (append #{tail 3525}# (list #{val 3526}#)))))))) #{tmp 3520}#) (let ((#{_ 3566}# #{tmp 3490}#)) (syntax-violation 'set! "bad set!" (#{source-wrap 407}# #{e 3480}# #{w 3482}# #{s 3483}# #{mod 3484}#)))))))))) (#{global-extend 335}# 'module-ref '@ (lambda (#{e 3567}# #{r 3568}# #{w 3569}#) (let ((#{tmp 3573}# #{e 3567}#)) (let ((#{tmp 3574}# ($sc-dispatch #{tmp 3573}# '(_ each-any any)))) (if (if #{tmp 3574}# (@apply (lambda (#{mod 3577}# #{id 3578}#) (if (and-map #{id? 339}# #{mod 3577}#) (#{id? 339}# #{id 3578}#) #f)) #{tmp 3574}#) #f) (@apply (lambda (#{mod 3584}# #{id 3585}#) (values (syntax->datum #{id 3585}#) #{r 3568}# #{w 3569}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(mod id) #((top) (top)) #("i3582" "i3583")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3570" "i3571" "i3572")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{mod 3584}#)))) #{tmp 3574}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3573}#)))))) (#{global-extend 335}# 'module-ref '@@ (lambda (#{e 3587}# #{r 3588}# #{w 3589}#) (letrec* ((#{remodulate 3594}# (lambda (#{x 3595}# #{mod 3596}#) (if (pair? #{x 3595}#) (cons (#{remodulate 3594}# (car #{x 3595}#) #{mod 3596}#) (#{remodulate 3594}# (cdr #{x 3595}#) #{mod 3596}#)) (if (#{syntax-object? 305}# #{x 3595}#) (#{make-syntax-object 303}# (#{remodulate 3594}# (#{syntax-object-expression 307}# #{x 3595}#) #{mod 3596}#) (#{syntax-object-wrap 309}# #{x 3595}#) #{mod 3596}#) (if (vector? #{x 3595}#) (begin (let ((#{n 3607}# (vector-length #{x 3595}#))) (begin (let ((#{v 3609}# (make-vector #{n 3607}#))) (letrec* ((#{loop 3612}# (lambda (#{i 3613}#) (if (= #{i 3613}# #{n 3607}#) (begin (if #f #f) #{v 3609}#) (begin (vector-set! #{v 3609}# #{i 3613}# (#{remodulate 3594}# (vector-ref #{x 3595}# #{i 3613}#) #{mod 3596}#)) (#{loop 3612}# (#{1+}# #{i 3613}#))))))) (begin (#{loop 3612}# 0))))))) #{x 3595}#)))))) (begin (let ((#{tmp 3619}# #{e 3587}#)) (let ((#{tmp 3620}# ($sc-dispatch #{tmp 3619}# '(_ each-any any)))) (if (if #{tmp 3620}# (@apply (lambda (#{mod 3623}# #{exp 3624}#) (and-map #{id? 339}# #{mod 3623}#)) #{tmp 3620}#) #f) (@apply (lambda (#{mod 3628}# #{exp 3629}#) (begin (let ((#{mod 3631}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(mod exp) #((top) (top)) #("i3626" "i3627")) #(ribcage (remodulate) ((top)) ("i3593")) #(ribcage #(e r w) #((top) (top) (top)) #("i3590" "i3591" "i3592")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{mod 3628}#)))) (values (#{remodulate 3594}# #{exp 3629}# #{mod 3631}#) #{r 3588}# #{w 3589}# (#{source-annotation 320}# #{exp 3629}#) #{mod 3631}#)))) #{tmp 3620}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3619}#)))))))) (#{global-extend 335}# 'core 'if (lambda (#{e 3633}# #{r 3634}# #{w 3635}# #{s 3636}# #{mod 3637}#) (let ((#{tmp 3643}# #{e 3633}#)) (let ((#{tmp 3644}# ($sc-dispatch #{tmp 3643}# '(_ any any)))) (if #{tmp 3644}# (@apply (lambda (#{test 3647}# #{then 3648}#) (#{build-conditional 267}# #{s 3636}# (#{chi 419}# #{test 3647}# #{r 3634}# #{w 3635}# #{mod 3637}#) (#{chi 419}# #{then 3648}# #{r 3634}# #{w 3635}# #{mod 3637}#) (#{build-void 263}# #f))) #{tmp 3644}#) (let ((#{tmp 3650}# ($sc-dispatch #{tmp 3643}# '(_ any any any)))) (if #{tmp 3650}# (@apply (lambda (#{test 3654}# #{then 3655}# #{else 3656}#) (#{build-conditional 267}# #{s 3636}# (#{chi 419}# #{test 3654}# #{r 3634}# #{w 3635}# #{mod 3637}#) (#{chi 419}# #{then 3655}# #{r 3634}# #{w 3635}# #{mod 3637}#) (#{chi 419}# #{else 3656}# #{r 3634}# #{w 3635}# #{mod 3637}#))) #{tmp 3650}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3643}#)))))))) (#{global-extend 335}# 'core 'with-fluids (lambda (#{e 3657}# #{r 3658}# #{w 3659}# #{s 3660}# #{mod 3661}#) (let ((#{tmp 3667}# #{e 3657}#)) (let ((#{tmp 3668}# ($sc-dispatch #{tmp 3667}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 3668}# (@apply (lambda (#{fluid 3673}# #{val 3674}# #{b 3675}# #{b* 3676}#) (#{build-dynlet 269}# #{s 3660}# (map (lambda (#{x 3677}#) (#{chi 419}# #{x 3677}# #{r 3658}# #{w 3659}# #{mod 3661}#)) #{fluid 3673}#) (map (lambda (#{x 3680}#) (#{chi 419}# #{x 3680}# #{r 3658}# #{w 3659}# #{mod 3661}#)) #{val 3674}#) (#{chi-body 427}# (cons #{b 3675}# #{b* 3676}#) (#{source-wrap 407}# #{e 3657}# #{w 3659}# #{s 3660}# #{mod 3661}#) #{r 3658}# #{w 3659}# #{mod 3661}#))) #{tmp 3668}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3667}#)))))) (#{global-extend 335}# 'begin 'begin '()) (#{global-extend 335}# 'define 'define '()) (#{global-extend 335}# 'define-syntax 'define-syntax '()) (#{global-extend 335}# 'eval-when 'eval-when '()) (#{global-extend 335}# 'core 'syntax-case (letrec* ((#{convert-pattern 3685}# (lambda (#{pattern 3692}# #{keys 3693}#) (letrec* ((#{cvt* 3697}# (lambda (#{p* 3700}# #{n 3701}# #{ids 3702}#) (if (null? #{p* 3700}#) (values '() #{ids 3702}#) (call-with-values (lambda () (#{cvt* 3697}# (cdr #{p* 3700}#) #{n 3701}# #{ids 3702}#)) (lambda (#{y 3706}# #{ids 3707}#) (call-with-values (lambda () (#{cvt 3699}# (car #{p* 3700}#) #{n 3701}# #{ids 3707}#)) (lambda (#{x 3710}# #{ids 3711}#) (values (cons #{x 3710}# #{y 3706}#) #{ids 3711}#)))))))) (#{cvt 3699}# (lambda (#{p 3714}# #{n 3715}# #{ids 3716}#) (if (#{id? 339}# #{p 3714}#) (if (#{bound-id-member? 403}# #{p 3714}# #{keys 3693}#) (values (vector 'free-id #{p 3714}#) #{ids 3716}#) (if (#{free-id=? 395}# #{p 3714}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3717" "i3718" "i3719")) #(ribcage (cvt cvt*) ((top) (top)) ("i3698" "i3696")) #(ribcage #(pattern keys) #((top) (top)) #("i3694" "i3695")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3690" "i3688" "i3686" "i3684")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) (values '_ #{ids 3716}#) (values 'any (cons (cons #{p 3714}# #{n 3715}#) #{ids 3716}#)))) (let ((#{tmp 3725}# #{p 3714}#)) (let ((#{tmp 3726}# ($sc-dispatch #{tmp 3725}# '(any any)))) (if (if #{tmp 3726}# (@apply (lambda (#{x 3729}# #{dots 3730}#) (#{ellipsis? 435}# #{dots 3730}#)) #{tmp 3726}#) #f) (@apply (lambda (#{x 3733}# #{dots 3734}#) (call-with-values (lambda () (#{cvt 3699}# #{x 3733}# (#{1+}# #{n 3715}#) #{ids 3716}#)) (lambda (#{p 3736}# #{ids 3737}#) (values (if (eq? #{p 3736}# 'any) 'each-any (vector 'each #{p 3736}#)) #{ids 3737}#)))) #{tmp 3726}#) (let ((#{tmp 3740}# ($sc-dispatch #{tmp 3725}# '(any any . each-any)))) (if (if #{tmp 3740}# (@apply (lambda (#{x 3744}# #{dots 3745}# #{ys 3746}#) (#{ellipsis? 435}# #{dots 3745}#)) #{tmp 3740}#) #f) (@apply (lambda (#{x 3750}# #{dots 3751}# #{ys 3752}#) (call-with-values (lambda () (#{cvt* 3697}# #{ys 3752}# #{n 3715}# #{ids 3716}#)) (lambda (#{ys 3754}# #{ids 3755}#) (call-with-values (lambda () (#{cvt 3699}# #{x 3750}# (#{1+}# #{n 3715}#) #{ids 3755}#)) (lambda (#{x 3758}# #{ids 3759}#) (values (vector 'each+ #{x 3758}# (reverse #{ys 3754}#) '()) #{ids 3759}#)))))) #{tmp 3740}#) (let ((#{tmp 3763}# ($sc-dispatch #{tmp 3725}# '(any . any)))) (if #{tmp 3763}# (@apply (lambda (#{x 3766}# #{y 3767}#) (call-with-values (lambda () (#{cvt 3699}# #{y 3767}# #{n 3715}# #{ids 3716}#)) (lambda (#{y 3768}# #{ids 3769}#) (call-with-values (lambda () (#{cvt 3699}# #{x 3766}# #{n 3715}# #{ids 3769}#)) (lambda (#{x 3772}# #{ids 3773}#) (values (cons #{x 3772}# #{y 3768}#) #{ids 3773}#)))))) #{tmp 3763}#) (let ((#{tmp 3776}# ($sc-dispatch #{tmp 3725}# '()))) (if #{tmp 3776}# (@apply (lambda () (values '() #{ids 3716}#)) #{tmp 3776}#) (let ((#{tmp 3777}# ($sc-dispatch #{tmp 3725}# '#(vector each-any)))) (if #{tmp 3777}# (@apply (lambda (#{x 3779}#) (call-with-values (lambda () (#{cvt 3699}# #{x 3779}# #{n 3715}# #{ids 3716}#)) (lambda (#{p 3781}# #{ids 3782}#) (values (vector 'vector #{p 3781}#) #{ids 3782}#)))) #{tmp 3777}#) (let ((#{x 3786}# #{tmp 3725}#)) (values (vector 'atom (#{strip 445}# #{p 3714}# '(()))) #{ids 3716}#))))))))))))))))) (begin (#{cvt 3699}# #{pattern 3692}# 0 '()))))) (#{build-dispatch-call 3687}# (lambda (#{pvars 3788}# #{exp 3789}# #{y 3790}# #{r 3791}# #{mod 3792}#) (begin (map cdr #{pvars 3788}#) (let ((#{ids 3800}# (map car #{pvars 3788}#))) (begin (let ((#{labels 3804}# (#{gen-labels 354}# #{ids 3800}#)) (#{new-vars 3805}# (map #{gen-var 447}# #{ids 3800}#))) (#{build-application 265}# #f (#{build-primref 289}# #f 'apply) (list (#{build-simple-lambda 283}# #f (map syntax->datum #{ids 3800}#) #f #{new-vars 3805}# '() (#{chi 419}# #{exp 3789}# (#{extend-env 327}# #{labels 3804}# (map (lambda (#{var 3809}# #{level 3810}#) (cons 'syntax (cons #{var 3809}# #{level 3810}#))) #{new-vars 3805}# (map cdr #{pvars 3788}#)) #{r 3791}#) (#{make-binding-wrap 383}# #{ids 3800}# #{labels 3804}# '(())) #{mod 3792}#)) #{y 3790}#)))))))) (#{gen-clause 3689}# (lambda (#{x 3816}# #{keys 3817}# #{clauses 3818}# #{r 3819}# #{pat 3820}# #{fender 3821}# #{exp 3822}# #{mod 3823}#) (call-with-values (lambda () (#{convert-pattern 3685}# #{pat 3820}# #{keys 3817}#)) (lambda (#{p 3832}# #{pvars 3833}#) (if (not (#{distinct-bound-ids? 401}# (map car #{pvars 3833}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat 3820}#) (if (not (and-map (lambda (#{x 3840}#) (not (#{ellipsis? 435}# (car #{x 3840}#)))) #{pvars 3833}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat 3820}#) (begin (let ((#{y 3844}# (#{gen-var 447}# 'tmp))) (#{build-application 265}# #f (#{build-simple-lambda 283}# #f (list 'tmp) #f (list #{y 3844}#) '() (begin (let ((#{y 3848}# (#{build-lexical-reference 271}# 'value #f 'tmp #{y 3844}#))) (#{build-conditional 267}# #f (let ((#{tmp 3851}# #{fender 3821}#)) (let ((#{tmp 3852}# ($sc-dispatch #{tmp 3851}# '#(atom #t)))) (if #{tmp 3852}# (@apply (lambda () #{y 3848}#) #{tmp 3852}#) (let ((#{_ 3854}# #{tmp 3851}#)) (#{build-conditional 267}# #f #{y 3848}# (#{build-dispatch-call 3687}# #{pvars 3833}# #{fender 3821}# #{y 3848}# #{r 3819}# #{mod 3823}#) (#{build-data 291}# #f #f)))))) (#{build-dispatch-call 3687}# #{pvars 3833}# #{exp 3822}# #{y 3848}# #{r 3819}# #{mod 3823}#) (#{gen-syntax-case 3691}# #{x 3816}# #{keys 3817}# #{clauses 3818}# #{r 3819}# #{mod 3823}#))))) (list (if (eq? #{p 3832}# 'any) (#{build-application 265}# #f (#{build-primref 289}# #f 'list) (list #{x 3816}#)) (#{build-application 265}# #f (#{build-primref 289}# #f '$sc-dispatch) (list #{x 3816}# (#{build-data 291}# #f #{p 3832}#)))))))))))))) (#{gen-syntax-case 3691}# (lambda (#{x 3862}# #{keys 3863}# #{clauses 3864}# #{r 3865}# #{mod 3866}#) (if (null? #{clauses 3864}#) (#{build-application 265}# #f (#{build-primref 289}# #f 'syntax-violation) (list (#{build-data 291}# #f #f) (#{build-data 291}# #f "source expression failed to match any pattern") #{x 3862}#)) (let ((#{tmp 3876}# (car #{clauses 3864}#))) (let ((#{tmp 3877}# ($sc-dispatch #{tmp 3876}# '(any any)))) (if #{tmp 3877}# (@apply (lambda (#{pat 3880}# #{exp 3881}#) (if (if (#{id? 339}# #{pat 3880}#) (and-map (lambda (#{x 3884}#) (not (#{free-id=? 395}# #{pat 3880}# #{x 3884}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3878" "i3879")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3867" "i3868" "i3869" "i3870" "i3871")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3690" "i3688" "i3686" "i3684")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) #{keys 3863}#)) #f) (if (#{free-id=? 395}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3878" "i3879")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3867" "i3868" "i3869" "i3870" "i3871")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3690" "i3688" "i3686" "i3684")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile)) '#(syntax-object _ ((top) #(ribcage #(pat exp) #((top) (top)) #("i3878" "i3879")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3867" "i3868" "i3869" "i3870" "i3871")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3690" "i3688" "i3686" "i3684")) #(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)) ("i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i414" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i390" "i388" "i386" "i384" "i382" "i380" "i379" "i378" "i376" "i375" "i374" "i373" "i372" "i370" "i368" "i366" "i364" "i362" "i360" "i358" "i356" "i353" "i351" "i350" "i349" "i348" "i347" "i346" "i345" "i344" "i343" "i341" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i325" "i324" "i323" "i322" "i321" "i319" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i253" "i251" "i249" "i248" "i247" "i246" "i245" "i243" "i241" "i239" "i236" "i234" "i232" "i230" "i228" "i226" "i224" "i222" "i220" "i218" "i216" "i214" "i212" "i210" "i208" "i206" "i204" "i202")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors) ((top) (top) (top)) ("i40" "i39" "i38"))) (hygiene guile))) (#{chi 419}# #{exp 3881}# #{r 3865}# '(()) #{mod 3866}#) (begin (let ((#{labels 3889}# (list (#{gen-label 352}#))) (#{var 3890}# (#{gen-var 447}# #{pat 3880}#))) (#{build-application 265}# #f (#{build-simple-lambda 283}# #f (list (syntax->datum #{pat 3880}#)) #f (list #{var 3890}#) '() (#{chi 419}# #{exp 3881}# (#{extend-env 327}# #{labels 3889}# (list (cons 'syntax (cons #{var 3890}# 0))) #{r 3865}#) (#{make-binding-wrap 383}# (list #{pat 3880}#) #{labels 3889}# '(())) #{mod 3866}#)) (list #{x 3862}#))))) (#{gen-clause 3689}# #{x 3862}# #{keys 3863}# (cdr #{clauses 3864}#) #{r 3865}# #{pat 3880}# #t #{exp 3881}# #{mod 3866}#))) #{tmp 3877}#) (let ((#{tmp 3896}# ($sc-dispatch #{tmp 3876}# '(any any any)))) (if #{tmp 3896}# (@apply (lambda (#{pat 3900}# #{fender 3901}# #{exp 3902}#) (#{gen-clause 3689}# #{x 3862}# #{keys 3863}# (cdr #{clauses 3864}#) #{r 3865}# #{pat 3900}# #{fender 3901}# #{exp 3902}# #{mod 3866}#)) #{tmp 3896}#) (let ((#{_ 3904}# #{tmp 3876}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses 3864}#)))))))))))) (begin (lambda (#{e 3905}# #{r 3906}# #{w 3907}# #{s 3908}# #{mod 3909}#) (begin (let ((#{e 3916}# (#{source-wrap 407}# #{e 3905}# #{w 3907}# #{s 3908}# #{mod 3909}#))) (let ((#{tmp 3917}# #{e 3916}#)) (let ((#{tmp 3918}# ($sc-dispatch #{tmp 3917}# '(_ any each-any . each-any)))) (if #{tmp 3918}# (@apply (lambda (#{val 3922}# #{key 3923}# #{m 3924}#) (if (and-map (lambda (#{x 3925}#) (if (#{id? 339}# #{x 3925}#) (not (#{ellipsis? 435}# #{x 3925}#)) #f)) #{key 3923}#) (begin (let ((#{x 3931}# (#{gen-var 447}# 'tmp))) (#{build-application 265}# #{s 3908}# (#{build-simple-lambda 283}# #f (list 'tmp) #f (list #{x 3931}#) '() (#{gen-syntax-case 3691}# (#{build-lexical-reference 271}# 'value #f 'tmp #{x 3931}#) #{key 3923}# #{m 3924}# #{r 3906}# #{mod 3909}#)) (list (#{chi 419}# #{val 3922}# #{r 3906}# '(()) #{mod 3909}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e 3916}#))) #{tmp 3918}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3917}#)))))))))) (set! macroexpand (lambda* (#{x 3937}# #:optional (#{m 3939}# 'e) (#{esew 3941}# '(eval))) (#{chi-top-sequence 411}# (list #{x 3937}#) '() '((top)) #f #{m 3939}# #{esew 3941}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x 3945}#) (#{nonsymbol-id? 337}# #{x 3945}#))) (set! datum->syntax (lambda (#{id 3947}# #{datum 3948}#) (#{make-syntax-object 303}# #{datum 3948}# (#{syntax-object-wrap 309}# #{id 3947}#) (#{syntax-object-module 311}# #{id 3947}#)))) (set! syntax->datum (lambda (#{x 3951}#) (#{strip 445}# #{x 3951}# '(())))) (set! syntax-source (lambda (#{x 3954}#) (#{source-annotation 320}# #{x 3954}#))) (set! generate-temporaries (lambda (#{ls 3956}#) (begin (begin (let ((#{x 3960}# #{ls 3956}#)) (if (not (list? #{x 3960}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x 3960}#)))) (map (lambda (#{x 3961}#) (#{wrap 405}# (gensym) '((top)) #f)) #{ls 3956}#)))) (set! free-identifier=? (lambda (#{x 3965}# #{y 3966}#) (begin (begin (let ((#{x 3971}# #{x 3965}#)) (if (not (#{nonsymbol-id? 337}# #{x 3971}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 3971}#)))) (begin (let ((#{x 3974}# #{y 3966}#)) (if (not (#{nonsymbol-id? 337}# #{x 3974}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 3974}#)))) (#{free-id=? 395}# #{x 3965}# #{y 3966}#)))) (set! bound-identifier=? (lambda (#{x 3975}# #{y 3976}#) (begin (begin (let ((#{x 3981}# #{x 3975}#)) (if (not (#{nonsymbol-id? 337}# #{x 3981}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 3981}#)))) (begin (let ((#{x 3984}# #{y 3976}#)) (if (not (#{nonsymbol-id? 337}# #{x 3984}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 3984}#)))) (#{bound-id=? 397}# #{x 3975}# #{y 3976}#)))) (set! syntax-violation (lambda* (#{who 3985}# #{message 3986}# #{form 3987}# #:optional (#{subform 3991}# #f)) (begin (begin (let ((#{x 3995}# #{who 3985}#)) (if (not (let ((#{x 3996}# #{x 3995}#)) (begin (let ((#{t 4000}# (not #{x 3996}#))) (if #{t 4000}# #{t 4000}# (begin (let ((#{t 4003}# (string? #{x 3996}#))) (if #{t 4003}# #{t 4003}# (symbol? #{x 3996}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x 3995}#)))) (begin (let ((#{x 4007}# #{message 3986}#)) (if (not (string? #{x 4007}#)) (syntax-violation 'syntax-violation "invalid argument" #{x 4007}#)))) (throw 'syntax-error #{who 3985}# #{message 3986}# (#{source-annotation 320}# (begin (let ((#{t 4010}# #{form 3987}#)) (if #{t 4010}# #{t 4010}# #{subform 3991}#)))) (#{strip 445}# #{form 3987}# '(())) (if #{subform 3991}# (#{strip 445}# #{subform 3991}# '(())) #f))))) (letrec* ((#{match-each 4017}# (lambda (#{e 4030}# #{p 4031}# #{w 4032}# #{mod 4033}#) (if (pair? #{e 4030}#) (begin (let ((#{first 4041}# (#{match 4029}# (car #{e 4030}#) #{p 4031}# #{w 4032}# '() #{mod 4033}#))) (if #{first 4041}# (begin (let ((#{rest 4045}# (#{match-each 4017}# (cdr #{e 4030}#) #{p 4031}# #{w 4032}# #{mod 4033}#))) (if #{rest 4045}# (cons #{first 4041}# #{rest 4045}#) #f))) #f))) (if (null? #{e 4030}#) '() (if (#{syntax-object? 305}# #{e 4030}#) (#{match-each 4017}# (#{syntax-object-expression 307}# #{e 4030}#) #{p 4031}# (#{join-wraps 387}# #{w 4032}# (#{syntax-object-wrap 309}# #{e 4030}#)) (#{syntax-object-module 311}# #{e 4030}#)) #f))))) (#{match-each+ 4019}# (lambda (#{e 4053}# #{x-pat 4054}# #{y-pat 4055}# #{z-pat 4056}# #{w 4057}# #{r 4058}# #{mod 4059}#) (letrec* ((#{f 4070}# (lambda (#{e 4071}# #{w 4072}#) (if (pair? #{e 4071}#) (call-with-values (lambda () (#{f 4070}# (cdr #{e 4071}#) #{w 4072}#)) (lambda (#{xr* 4075}# #{y-pat 4076}# #{r 4077}#) (if #{r 4077}# (if (null? #{y-pat 4076}#) (begin (let ((#{xr 4082}# (#{match 4029}# (car #{e 4071}#) #{x-pat 4054}# #{w 4072}# '() #{mod 4059}#))) (if #{xr 4082}# (values (cons #{xr 4082}# #{xr* 4075}#) #{y-pat 4076}# #{r 4077}#) (values #f #f #f)))) (values '() (cdr #{y-pat 4076}#) (#{match 4029}# (car #{e 4071}#) (car #{y-pat 4076}#) #{w 4072}# #{r 4077}# #{mod 4059}#))) (values #f #f #f)))) (if (#{syntax-object? 305}# #{e 4071}#) (#{f 4070}# (#{syntax-object-expression 307}# #{e 4071}#) (#{join-wraps 387}# #{w 4072}# #{e 4071}#)) (values '() #{y-pat 4055}# (#{match 4029}# #{e 4071}# #{z-pat 4056}# #{w 4072}# #{r 4058}# #{mod 4059}#))))))) (begin (#{f 4070}# #{e 4053}# #{w 4057}#))))) (#{match-each-any 4021}# (lambda (#{e 4086}# #{w 4087}# #{mod 4088}#) (if (pair? #{e 4086}#) (begin (let ((#{l 4095}# (#{match-each-any 4021}# (cdr #{e 4086}#) #{w 4087}# #{mod 4088}#))) (if #{l 4095}# (cons (#{wrap 405}# (car #{e 4086}#) #{w 4087}# #{mod 4088}#) #{l 4095}#) #f))) (if (null? #{e 4086}#) '() (if (#{syntax-object? 305}# #{e 4086}#) (#{match-each-any 4021}# (#{syntax-object-expression 307}# #{e 4086}#) (#{join-wraps 387}# #{w 4087}# (#{syntax-object-wrap 309}# #{e 4086}#)) #{mod 4088}#) #f))))) (#{match-empty 4023}# (lambda (#{p 4103}# #{r 4104}#) (if (null? #{p 4103}#) #{r 4104}# (if (eq? #{p 4103}# '_) #{r 4104}# (if (eq? #{p 4103}# 'any) (cons '() #{r 4104}#) (if (pair? #{p 4103}#) (#{match-empty 4023}# (car #{p 4103}#) (#{match-empty 4023}# (cdr #{p 4103}#) #{r 4104}#)) (if (eq? #{p 4103}# 'each-any) (cons '() #{r 4104}#) (begin (let ((#{atom-key 4120}# (vector-ref #{p 4103}# 0))) (if (eqv? #{atom-key 4120}# 'each) (#{match-empty 4023}# (vector-ref #{p 4103}# 1) #{r 4104}#) (if (eqv? #{atom-key 4120}# 'each+) (#{match-empty 4023}# (vector-ref #{p 4103}# 1) (#{match-empty 4023}# (reverse (vector-ref #{p 4103}# 2)) (#{match-empty 4023}# (vector-ref #{p 4103}# 3) #{r 4104}#))) (if (if (eqv? #{atom-key 4120}# 'free-id) #t (eqv? #{atom-key 4120}# 'atom)) #{r 4104}# (if (eqv? #{atom-key 4120}# 'vector) (#{match-empty 4023}# (vector-ref #{p 4103}# 1) #{r 4104}#)))))))))))))) (#{combine 4025}# (lambda (#{r* 4125}# #{r 4126}#) (if (null? (car #{r* 4125}#)) #{r 4126}# (cons (map car #{r* 4125}#) (#{combine 4025}# (map cdr #{r* 4125}#) #{r 4126}#))))) (#{match* 4027}# (lambda (#{e 4129}# #{p 4130}# #{w 4131}# #{r 4132}# #{mod 4133}#) (if (null? #{p 4130}#) (if (null? #{e 4129}#) #{r 4132}# #f) (if (pair? #{p 4130}#) (if (pair? #{e 4129}#) (#{match 4029}# (car #{e 4129}#) (car #{p 4130}#) #{w 4131}# (#{match 4029}# (cdr #{e 4129}#) (cdr #{p 4130}#) #{w 4131}# #{r 4132}# #{mod 4133}#) #{mod 4133}#) #f) (if (eq? #{p 4130}# 'each-any) (begin (let ((#{l 4150}# (#{match-each-any 4021}# #{e 4129}# #{w 4131}# #{mod 4133}#))) (if #{l 4150}# (cons #{l 4150}# #{r 4132}#) #f))) (begin (let ((#{atom-key 4156}# (vector-ref #{p 4130}# 0))) (if (eqv? #{atom-key 4156}# 'each) (if (null? #{e 4129}#) (#{match-empty 4023}# (vector-ref #{p 4130}# 1) #{r 4132}#) (begin (let ((#{l 4159}# (#{match-each 4017}# #{e 4129}# (vector-ref #{p 4130}# 1) #{w 4131}# #{mod 4133}#))) (if #{l 4159}# (letrec* ((#{collect 4164}# (lambda (#{l 4165}#) (if (null? (car #{l 4165}#)) #{r 4132}# (cons (map car #{l 4165}#) (#{collect 4164}# (map cdr #{l 4165}#))))))) (begin (#{collect 4164}# #{l 4159}#))) #f)))) (if (eqv? #{atom-key 4156}# 'each+) (call-with-values (lambda () (#{match-each+ 4019}# #{e 4129}# (vector-ref #{p 4130}# 1) (vector-ref #{p 4130}# 2) (vector-ref #{p 4130}# 3) #{w 4131}# #{r 4132}# #{mod 4133}#)) (lambda (#{xr* 4167}# #{y-pat 4168}# #{r 4169}#) (if #{r 4169}# (if (null? #{y-pat 4168}#) (if (null? #{xr* 4167}#) (#{match-empty 4023}# (vector-ref #{p 4130}# 1) #{r 4169}#) (#{combine 4025}# #{xr* 4167}# #{r 4169}#)) #f) #f))) (if (eqv? #{atom-key 4156}# 'free-id) (if (#{id? 339}# #{e 4129}#) (if (#{free-id=? 395}# (#{wrap 405}# #{e 4129}# #{w 4131}# #{mod 4133}#) (vector-ref #{p 4130}# 1)) #{r 4132}# #f) #f) (if (eqv? #{atom-key 4156}# 'atom) (if (equal? (vector-ref #{p 4130}# 1) (#{strip 445}# #{e 4129}# #{w 4131}#)) #{r 4132}# #f) (if (eqv? #{atom-key 4156}# 'vector) (if (vector? #{e 4129}#) (#{match 4029}# (vector->list #{e 4129}#) (vector-ref #{p 4130}# 1) #{w 4131}# #{r 4132}# #{mod 4133}#) #f))))))))))))) (#{match 4029}# (lambda (#{e 4186}# #{p 4187}# #{w 4188}# #{r 4189}# #{mod 4190}#) (if (not #{r 4189}#) #f (if (eq? #{p 4187}# '_) #{r 4189}# (if (eq? #{p 4187}# 'any) (cons (#{wrap 405}# #{e 4186}# #{w 4188}# #{mod 4190}#) #{r 4189}#) (if (#{syntax-object? 305}# #{e 4186}#) (#{match* 4027}# (#{syntax-object-expression 307}# #{e 4186}#) #{p 4187}# (#{join-wraps 387}# #{w 4188}# (#{syntax-object-wrap 309}# #{e 4186}#)) #{r 4189}# (#{syntax-object-module 311}# #{e 4186}#)) (#{match* 4027}# #{e 4186}# #{p 4187}# #{w 4188}# #{r 4189}# #{mod 4190}#)))))))) (begin (set! $sc-dispatch (lambda (#{e 4205}# #{p 4206}#) (if (eq? #{p 4206}# 'any) (list #{e 4205}#) (if (eq? #{p 4206}# '_) '() (if (#{syntax-object? 305}# #{e 4205}#) (#{match* 4027}# (#{syntax-object-expression 307}# #{e 4205}#) #{p 4206}# (#{syntax-object-wrap 309}# #{e 4205}#) '() (#{syntax-object-module 311}# #{e 4205}#)) (#{match* 4027}# #{e 4205}# #{p 4206}# '(()) '() #f))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x 4217}#) (let ((#{tmp 4219}# #{x 4217}#)) (let ((#{tmp 4220}# ($sc-dispatch #{tmp 4219}# '(_ () any . each-any)))) (if #{tmp 4220}# (@apply (lambda (#{e1 4223}# #{e2 4224}#) (cons '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4221" "i4222")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4218"))) (hygiene guile)) (cons '() (cons #{e1 4223}# #{e2 4224}#)))) #{tmp 4220}#) (let ((#{tmp 4226}# ($sc-dispatch #{tmp 4219}# '(_ ((any any)) any . each-any)))) (if #{tmp 4226}# (@apply (lambda (#{out 4231}# #{in 4232}# #{e1 4233}# #{e2 4234}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4218"))) (hygiene guile)) #{in 4232}# '() (list #{out 4231}# (cons '#(syntax-object let ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4218"))) (hygiene guile)) (cons '() (cons #{e1 4233}# #{e2 4234}#)))))) #{tmp 4226}#) (let ((#{tmp 4236}# ($sc-dispatch #{tmp 4219}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 4236}# (@apply (lambda (#{out 4241}# #{in 4242}# #{e1 4243}# #{e2 4244}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4237" "i4238" "i4239" "i4240")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4218"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4237" "i4238" "i4239" "i4240")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4218"))) (hygiene guile)) #{in 4242}#) '() (list #{out 4241}# (cons '#(syntax-object let ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4237" "i4238" "i4239" "i4240")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4218"))) (hygiene guile)) (cons '() (cons #{e1 4243}# #{e2 4244}#)))))) #{tmp 4236}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4219}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x 4248}#) (let ((#{tmp 4250}# #{x 4248}#)) (let ((#{tmp 4251}# ($sc-dispatch #{tmp 4250}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp 4251}# (@apply (lambda (#{k 4256}# #{keyword 4257}# #{pattern 4258}# #{template 4259}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) #{pattern 4258}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) (cons #{k 4256}# (map (lambda (#{tmp 4263}# #{tmp 4262}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) #{tmp 4262}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) #{tmp 4263}#))) #{template 4259}# #{pattern 4258}#)))))) #{tmp 4251}#) (let ((#{tmp 4264}# ($sc-dispatch #{tmp 4250}# '(_ each-any any . #(each ((any . any) any)))))) (if (if #{tmp 4264}# (@apply (lambda (#{k 4270}# #{docstring 4271}# #{keyword 4272}# #{pattern 4273}# #{template 4274}#) (string? (syntax->datum #{docstring 4271}#))) #{tmp 4264}#) #f) (@apply (lambda (#{k 4280}# #{docstring 4281}# #{keyword 4282}# #{pattern 4283}# #{template 4284}#) (list '#(syntax-object lambda ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile))) #{docstring 4281}# (vector '(#(syntax-object macro-type ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) #{pattern 4283}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) (cons #{k 4280}# (map (lambda (#{tmp 4288}# #{tmp 4287}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) #{tmp 4287}#) (list '#(syntax-object syntax ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4275" "i4276" "i4277" "i4278" "i4279")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4249"))) (hygiene guile)) #{tmp 4288}#))) #{template 4284}# #{pattern 4283}#)))))) #{tmp 4264}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4250}#))))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x 4289}#) (let ((#{tmp 4291}# #{x 4289}#)) (let ((#{tmp 4292}# ($sc-dispatch #{tmp 4291}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp 4292}# (@apply (lambda (#{let* 4298}# #{x 4299}# #{v 4300}# #{e1 4301}# #{e2 4302}#) (and-map identifier? #{x 4299}#)) #{tmp 4292}#) #f) (@apply (lambda (#{let* 4309}# #{x 4310}# #{v 4311}# #{e1 4312}# #{e2 4313}#) (letrec* ((#{f 4316}# (lambda (#{bindings 4317}#) (if (null? #{bindings 4317}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4314" "i4315")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4290"))) (hygiene guile)) (cons '() (cons #{e1 4312}# #{e2 4313}#))) (let ((#{tmp 4322}# (list (#{f 4316}# (cdr #{bindings 4317}#)) (car #{bindings 4317}#)))) (let ((#{tmp 4323}# ($sc-dispatch #{tmp 4322}# '(any any)))) (if #{tmp 4323}# (@apply (lambda (#{body 4326}# #{binding 4327}#) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body binding) #((top) (top)) #("i4324" "i4325")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4314" "i4315")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4304" "i4305" "i4306" "i4307" "i4308")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4290"))) (hygiene guile)) (list #{binding 4327}#) #{body 4326}#)) #{tmp 4323}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4322}#)))))))) (begin (#{f 4316}# (map list #{x 4310}# #{v 4311}#))))) #{tmp 4292}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4291}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x 4328}#) (let ((#{tmp 4330}# #{orig-x 4328}#)) (let ((#{tmp 4331}# ($sc-dispatch #{tmp 4330}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp 4331}# (@apply (lambda (#{var 4338}# #{init 4339}# #{step 4340}# #{e0 4341}# #{e1 4342}# #{c 4343}#) (let ((#{tmp 4345}# (map (lambda (#{v 4366}# #{s 4367}#) (let ((#{tmp 4370}# #{s 4367}#)) (let ((#{tmp 4371}# ($sc-dispatch #{tmp 4370}# '()))) (if #{tmp 4371}# (@apply (lambda () #{v 4366}#) #{tmp 4371}#) (let ((#{tmp 4372}# ($sc-dispatch #{tmp 4370}# '(any)))) (if #{tmp 4372}# (@apply (lambda (#{e 4374}#) #{e 4374}#) #{tmp 4372}#) (let ((#{_ 4376}# #{tmp 4370}#)) (syntax-violation 'do "bad step expression" #{orig-x 4328}# #{s 4367}#)))))))) #{var 4338}# #{step 4340}#))) (let ((#{tmp 4346}# ($sc-dispatch #{tmp 4345}# 'each-any))) (if #{tmp 4346}# (@apply (lambda (#{step 4348}#) (let ((#{tmp 4349}# #{e1 4342}#)) (let ((#{tmp 4350}# ($sc-dispatch #{tmp 4349}# '()))) (if #{tmp 4350}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) (map list #{var 4338}# #{init 4339}#) (list '#(syntax-object if ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) #{e0 4341}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) (append #{c 4343}# (list (cons '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) #{step 4348}#))))))) #{tmp 4350}#) (let ((#{tmp 4355}# ($sc-dispatch #{tmp 4349}# '(any . each-any)))) (if #{tmp 4355}# (@apply (lambda (#{e1 4358}# #{e2 4359}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4356" "i4357")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4356" "i4357")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) (map list #{var 4338}# #{init 4339}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4356" "i4357")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) #{e0 4341}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4356" "i4357")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) (cons #{e1 4358}# #{e2 4359}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4356" "i4357")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) (append #{c 4343}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4356" "i4357")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4347")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4332" "i4333" "i4334" "i4335" "i4336" "i4337")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4329"))) (hygiene guile)) #{step 4348}#))))))) #{tmp 4355}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4349}#))))))) #{tmp 4346}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4345}#))))) #{tmp 4331}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4330}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasi 4380}# (lambda (#{p 4393}# #{lev 4394}#) (let ((#{tmp 4397}# #{p 4393}#)) (let ((#{tmp 4398}# ($sc-dispatch #{tmp 4397}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) any)))) (if #{tmp 4398}# (@apply (lambda (#{p 4400}#) (if (= #{lev 4394}# 0) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4399")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{p 4400}#) (#{quasicons 4384}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4399")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4399")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) (#{quasi 4380}# (list #{p 4400}#) (#{1-}# #{lev 4394}#))))) #{tmp 4398}#) (let ((#{tmp 4401}# ($sc-dispatch #{tmp 4397}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) any)))) (if #{tmp 4401}# (@apply (lambda (#{p 4403}#) (#{quasicons 4384}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4402")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4402")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) (#{quasi 4380}# (list #{p 4403}#) (#{1+}# #{lev 4394}#)))) #{tmp 4401}#) (let ((#{tmp 4404}# ($sc-dispatch #{tmp 4397}# '(any . any)))) (if #{tmp 4404}# (@apply (lambda (#{p 4407}# #{q 4408}#) (let ((#{tmp 4409}# #{p 4407}#)) (let ((#{tmp 4410}# ($sc-dispatch #{tmp 4409}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) . each-any)))) (if #{tmp 4410}# (@apply (lambda (#{p 4412}#) (if (= #{lev 4394}# 0) (#{quasilist* 4388}# (map (lambda (#{tmp 4413}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4411")) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{tmp 4413}#)) #{p 4412}#) (#{quasi 4380}# #{q 4408}# #{lev 4394}#)) (#{quasicons 4384}# (#{quasicons 4384}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4411")) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4411")) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) (#{quasi 4380}# #{p 4412}# (#{1-}# #{lev 4394}#))) (#{quasi 4380}# #{q 4408}# #{lev 4394}#)))) #{tmp 4410}#) (let ((#{tmp 4415}# ($sc-dispatch #{tmp 4409}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) . each-any)))) (if #{tmp 4415}# (@apply (lambda (#{p 4417}#) (if (= #{lev 4394}# 0) (#{quasiappend 4386}# (map (lambda (#{tmp 4418}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4416")) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{tmp 4418}#)) #{p 4417}#) (#{quasi 4380}# #{q 4408}# #{lev 4394}#)) (#{quasicons 4384}# (#{quasicons 4384}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4416")) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4416")) #(ribcage #(p q) #((top) (top)) #("i4405" "i4406")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) (#{quasi 4380}# #{p 4417}# (#{1-}# #{lev 4394}#))) (#{quasi 4380}# #{q 4408}# #{lev 4394}#)))) #{tmp 4415}#) (let ((#{_ 4421}# #{tmp 4409}#)) (#{quasicons 4384}# (#{quasi 4380}# #{p 4407}# #{lev 4394}#) (#{quasi 4380}# #{q 4408}# #{lev 4394}#))))))))) #{tmp 4404}#) (let ((#{tmp 4422}# ($sc-dispatch #{tmp 4397}# '#(vector each-any)))) (if #{tmp 4422}# (@apply (lambda (#{x 4424}#) (#{quasivector 4390}# (#{vquasi 4382}# #{x 4424}# #{lev 4394}#))) #{tmp 4422}#) (let ((#{p 4427}# #{tmp 4397}#)) (list '#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4426")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4395" "i4396")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{p 4427}#))))))))))))) (#{vquasi 4382}# (lambda (#{p 4428}# #{lev 4429}#) (let ((#{tmp 4432}# #{p 4428}#)) (let ((#{tmp 4433}# ($sc-dispatch #{tmp 4432}# '(any . any)))) (if #{tmp 4433}# (@apply (lambda (#{p 4436}# #{q 4437}#) (let ((#{tmp 4438}# #{p 4436}#)) (let ((#{tmp 4439}# ($sc-dispatch #{tmp 4438}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) . each-any)))) (if #{tmp 4439}# (@apply (lambda (#{p 4441}#) (if (= #{lev 4429}# 0) (#{quasilist* 4388}# (map (lambda (#{tmp 4442}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4440")) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{tmp 4442}#)) #{p 4441}#) (#{vquasi 4382}# #{q 4437}# #{lev 4429}#)) (#{quasicons 4384}# (#{quasicons 4384}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4440")) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4440")) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) (#{quasi 4380}# #{p 4441}# (#{1-}# #{lev 4429}#))) (#{vquasi 4382}# #{q 4437}# #{lev 4429}#)))) #{tmp 4439}#) (let ((#{tmp 4444}# ($sc-dispatch #{tmp 4438}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) . each-any)))) (if #{tmp 4444}# (@apply (lambda (#{p 4446}#) (if (= #{lev 4429}# 0) (#{quasiappend 4386}# (map (lambda (#{tmp 4447}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4445")) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{tmp 4447}#)) #{p 4446}#) (#{vquasi 4382}# #{q 4437}# #{lev 4429}#)) (#{quasicons 4384}# (#{quasicons 4384}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4445")) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4445")) #(ribcage #(p q) #((top) (top)) #("i4434" "i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile))) (#{quasi 4380}# #{p 4446}# (#{1-}# #{lev 4429}#))) (#{vquasi 4382}# #{q 4437}# #{lev 4429}#)))) #{tmp 4444}#) (let ((#{_ 4450}# #{tmp 4438}#)) (#{quasicons 4384}# (#{quasi 4380}# #{p 4436}# #{lev 4429}#) (#{vquasi 4382}# #{q 4437}# #{lev 4429}#))))))))) #{tmp 4433}#) (let ((#{tmp 4451}# ($sc-dispatch #{tmp 4432}# '()))) (if #{tmp 4451}# (@apply (lambda () '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4430" "i4431")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) ())) #{tmp 4451}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4432}#)))))))) (#{quasicons 4384}# (lambda (#{x 4452}# #{y 4453}#) (let ((#{tmp 4457}# (list #{x 4452}# #{y 4453}#))) (let ((#{tmp 4458}# ($sc-dispatch #{tmp 4457}# '(any any)))) (if #{tmp 4458}# (@apply (lambda (#{x 4461}# #{y 4462}#) (let ((#{tmp 4463}# #{y 4462}#)) (let ((#{tmp 4464}# ($sc-dispatch #{tmp 4463}# '(#(atom "quote") any)))) (if #{tmp 4464}# (@apply (lambda (#{dy 4466}#) (let ((#{tmp 4467}# #{x 4461}#)) (let ((#{tmp 4468}# ($sc-dispatch #{tmp 4467}# '(#(atom "quote") any)))) (if #{tmp 4468}# (@apply (lambda (#{dx 4470}#) (list '#(syntax-object "quote" ((top) #(ribcage #(dx) #((top)) #("i4469")) #(ribcage #(dy) #((top)) #("i4465")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4459" "i4460")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4454" "i4455")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) (cons #{dx 4470}# #{dy 4466}#))) #{tmp 4468}#) (let ((#{_ 4472}# #{tmp 4467}#)) (if (null? #{dy 4466}#) (list '#(syntax-object "list" ((top) #(ribcage #(_) #((top)) #("i4471")) #(ribcage #(dy) #((top)) #("i4465")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4459" "i4460")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4454" "i4455")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{x 4461}#) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4471")) #(ribcage #(dy) #((top)) #("i4465")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4459" "i4460")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4454" "i4455")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{x 4461}# #{y 4462}#))))))) #{tmp 4464}#) (let ((#{tmp 4473}# ($sc-dispatch #{tmp 4463}# '(#(atom "list") . any)))) (if #{tmp 4473}# (@apply (lambda (#{stuff 4475}#) (cons '#(syntax-object "list" ((top) #(ribcage #(stuff) #((top)) #("i4474")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4459" "i4460")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4454" "i4455")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) (cons #{x 4461}# #{stuff 4475}#))) #{tmp 4473}#) (let ((#{tmp 4476}# ($sc-dispatch #{tmp 4463}# '(#(atom "list*") . any)))) (if #{tmp 4476}# (@apply (lambda (#{stuff 4478}#) (cons '#(syntax-object "list*" ((top) #(ribcage #(stuff) #((top)) #("i4477")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4459" "i4460")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4454" "i4455")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) (cons #{x 4461}# #{stuff 4478}#))) #{tmp 4476}#) (let ((#{_ 4480}# #{tmp 4463}#)) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4479")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4459" "i4460")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4454" "i4455")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{x 4461}# #{y 4462}#)))))))))) #{tmp 4458}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4457}#)))))) (#{quasiappend 4386}# (lambda (#{x 4481}# #{y 4482}#) (let ((#{tmp 4485}# #{y 4482}#)) (let ((#{tmp 4486}# ($sc-dispatch #{tmp 4485}# '(#(atom "quote") ())))) (if #{tmp 4486}# (@apply (lambda () (if (null? #{x 4481}#) '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4483" "i4484")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) ()) (if (null? (cdr #{x 4481}#)) (car #{x 4481}#) (let ((#{tmp 4493}# #{x 4481}#)) (let ((#{tmp 4494}# ($sc-dispatch #{tmp 4493}# 'each-any))) (if #{tmp 4494}# (@apply (lambda (#{p 4496}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p) #((top)) #("i4495")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4483" "i4484")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{p 4496}#)) #{tmp 4494}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4493}#))))))) #{tmp 4486}#) (let ((#{_ 4499}# #{tmp 4485}#)) (if (null? #{x 4481}#) #{y 4482}# (let ((#{tmp 4504}# (list #{x 4481}# #{y 4482}#))) (let ((#{tmp 4505}# ($sc-dispatch #{tmp 4504}# '(each-any any)))) (if #{tmp 4505}# (@apply (lambda (#{p 4508}# #{y 4509}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p y) #((top) (top)) #("i4506" "i4507")) #(ribcage #(_) #((top)) #("i4498")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4483" "i4484")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) (append #{p 4508}# (list #{y 4509}#)))) #{tmp 4505}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4504}#))))))))))) (#{quasilist* 4388}# (lambda (#{x 4511}# #{y 4512}#) (letrec* ((#{f 4517}# (lambda (#{x 4518}#) (if (null? #{x 4518}#) #{y 4512}# (#{quasicons 4384}# (car #{x 4518}#) (#{f 4517}# (cdr #{x 4518}#))))))) (begin (#{f 4517}# #{x 4511}#))))) (#{quasivector 4390}# (lambda (#{x 4519}#) (let ((#{tmp 4521}# #{x 4519}#)) (let ((#{tmp 4522}# ($sc-dispatch #{tmp 4521}# '(#(atom "quote") each-any)))) (if #{tmp 4522}# (@apply (lambda (#{x 4524}#) (list '#(syntax-object "quote" ((top) #(ribcage #(x) #((top)) #("i4523")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4520")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) (list->vector #{x 4524}#))) #{tmp 4522}#) (let ((#{_ 4527}# #{tmp 4521}#)) (letrec* ((#{f 4531}# (lambda (#{y 4532}# #{k 4533}#) (let ((#{tmp 4544}# #{y 4532}#)) (let ((#{tmp 4545}# ($sc-dispatch #{tmp 4544}# '(#(atom "quote") each-any)))) (if #{tmp 4545}# (@apply (lambda (#{y 4547}#) (#{k 4533}# (map (lambda (#{tmp 4548}#) (list '#(syntax-object "quote" ((top) #(ribcage #(y) #((top)) #("i4546")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4528" "i4529" "i4530")) #(ribcage #(_) #((top)) #("i4526")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4520")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{tmp 4548}#)) #{y 4547}#))) #{tmp 4545}#) (let ((#{tmp 4549}# ($sc-dispatch #{tmp 4544}# '(#(atom "list") . each-any)))) (if #{tmp 4549}# (@apply (lambda (#{y 4551}#) (#{k 4533}# #{y 4551}#)) #{tmp 4549}#) (let ((#{tmp 4553}# ($sc-dispatch #{tmp 4544}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4553}# (@apply (lambda (#{y 4556}# #{z 4557}#) (#{f 4531}# #{z 4557}# (lambda (#{ls 4558}#) (#{k 4533}# (append #{y 4556}# #{ls 4558}#))))) #{tmp 4553}#) (let ((#{else 4562}# #{tmp 4544}#)) (let ((#{tmp 4566}# #{x 4519}#)) (let ((#{ g4563 4568}# #{tmp 4566}#)) (list '#(syntax-object "list->vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4563}#) #((m4564 top)) #("i4567")) #(ribcage #(else) #((top)) #("i4561")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4528" "i4529" "i4530")) #(ribcage #(_) #((top)) #("i4526")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4520")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{ g4563 4568}#)))))))))))))) (begin (#{f 4531}# #{x 4519}# (lambda (#{ls 4534}#) (let ((#{tmp 4539}# #{ls 4534}#)) (let ((#{tmp 4540}# ($sc-dispatch #{tmp 4539}# 'each-any))) (if #{tmp 4540}# (@apply (lambda (#{ g4536 4542}#) (cons '#(syntax-object "vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4536}#) #((m4537 top)) #("i4541")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ls) #((top)) #("i4535")) #(ribcage #(_) #((top)) #("i4526")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4520")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{ g4536 4542}#)) #{tmp 4540}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4539}#)))))))))))))) (#{emit 4392}# (lambda (#{x 4569}#) (let ((#{tmp 4571}# #{x 4569}#)) (let ((#{tmp 4572}# ($sc-dispatch #{tmp 4571}# '(#(atom "quote") any)))) (if #{tmp 4572}# (@apply (lambda (#{x 4574}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4573")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4570")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{x 4574}#)) #{tmp 4572}#) (let ((#{tmp 4575}# ($sc-dispatch #{tmp 4571}# '(#(atom "list") . each-any)))) (if #{tmp 4575}# (@apply (lambda (#{x 4577}#) (let ((#{tmp 4581}# (map #{emit 4392}# #{x 4577}#))) (let ((#{tmp 4582}# ($sc-dispatch #{tmp 4581}# 'each-any))) (if #{tmp 4582}# (@apply (lambda (#{ g4578 4584}#) (cons '#(syntax-object list ((top) #(ribcage () () ()) #(ribcage #(#{ g4578}#) #((m4579 top)) #("i4583")) #(ribcage #(x) #((top)) #("i4576")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4570")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{ g4578 4584}#)) #{tmp 4582}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4581}#))))) #{tmp 4575}#) (let ((#{tmp 4587}# ($sc-dispatch #{tmp 4571}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4587}# (@apply (lambda (#{x 4590}# #{y 4591}#) (letrec* ((#{f 4594}# (lambda (#{x* 4595}#) (if (null? #{x* 4595}#) (#{emit 4392}# #{y 4591}#) (let ((#{tmp 4601}# (list (#{emit 4392}# (car #{x* 4595}#)) (#{f 4594}# (cdr #{x* 4595}#))))) (let ((#{tmp 4602}# ($sc-dispatch #{tmp 4601}# '(any any)))) (if #{tmp 4602}# (@apply (lambda (#{ g4598 4605}# #{ g4597 4606}#) (list '#(syntax-object cons ((top) #(ribcage () () ()) #(ribcage #(#{ g4598}# #{ g4597}#) #((m4599 top) (m4599 top)) #("i4603" "i4604")) #(ribcage () () ()) #(ribcage #(f x*) #((top) (top)) #("i4592" "i4593")) #(ribcage #(x y) #((top) (top)) #("i4588" "i4589")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4570")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{ g4598 4605}# #{ g4597 4606}#)) #{tmp 4602}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4601}#)))))))) (begin (#{f 4594}# #{x 4590}#)))) #{tmp 4587}#) (let ((#{tmp 4607}# ($sc-dispatch #{tmp 4571}# '(#(atom "append") . each-any)))) (if #{tmp 4607}# (@apply (lambda (#{x 4609}#) (let ((#{tmp 4613}# (map #{emit 4392}# #{x 4609}#))) (let ((#{tmp 4614}# ($sc-dispatch #{tmp 4613}# 'each-any))) (if #{tmp 4614}# (@apply (lambda (#{ g4610 4616}#) (cons '#(syntax-object append ((top) #(ribcage () () ()) #(ribcage #(#{ g4610}#) #((m4611 top)) #("i4615")) #(ribcage #(x) #((top)) #("i4608")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4570")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{ g4610 4616}#)) #{tmp 4614}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4613}#))))) #{tmp 4607}#) (let ((#{tmp 4619}# ($sc-dispatch #{tmp 4571}# '(#(atom "vector") . each-any)))) (if #{tmp 4619}# (@apply (lambda (#{x 4621}#) (let ((#{tmp 4625}# (map #{emit 4392}# #{x 4621}#))) (let ((#{tmp 4626}# ($sc-dispatch #{tmp 4625}# 'each-any))) (if #{tmp 4626}# (@apply (lambda (#{ g4622 4628}#) (cons '#(syntax-object vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4622}#) #((m4623 top)) #("i4627")) #(ribcage #(x) #((top)) #("i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4570")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{ g4622 4628}#)) #{tmp 4626}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4625}#))))) #{tmp 4619}#) (let ((#{tmp 4631}# ($sc-dispatch #{tmp 4571}# '(#(atom "list->vector") any)))) (if #{tmp 4631}# (@apply (lambda (#{x 4633}#) (let ((#{tmp 4637}# (#{emit 4392}# #{x 4633}#))) (let ((#{ g4634 4639}# #{tmp 4637}#)) (list '#(syntax-object list->vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4634}#) #((m4635 top)) #("i4638")) #(ribcage #(x) #((top)) #("i4632")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4570")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4391" "i4389" "i4387" "i4385" "i4383" "i4381" "i4379"))) (hygiene guile)) #{ g4634 4639}#)))) #{tmp 4631}#) (let ((#{tmp 4640}# ($sc-dispatch #{tmp 4571}# '(#(atom "value") any)))) (if #{tmp 4640}# (@apply (lambda (#{x 4642}#) #{x 4642}#) #{tmp 4640}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4571}#))))))))))))))))))) (begin (lambda (#{x 4643}#) (let ((#{tmp 4645}# #{x 4643}#)) (let ((#{tmp 4646}# ($sc-dispatch #{tmp 4645}# '(_ any)))) (if #{tmp 4646}# (@apply (lambda (#{e 4648}#) (#{emit 4392}# (#{quasi 4380}# #{e 4648}# 0))) #{tmp 4646}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4645}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x 4649}#) (letrec* ((#{read-file 4652}# (lambda (#{fn 4653}# #{k 4654}#) (begin (let ((#{p 4658}# (open-input-file #{fn 4653}#))) (letrec* ((#{f 4662}# (lambda (#{x 4663}# #{result 4664}#) (if (eof-object? #{x 4663}#) (begin (close-input-port #{p 4658}#) (reverse #{result 4664}#)) (#{f 4662}# (read #{p 4658}#) (cons (datum->syntax #{k 4654}# #{x 4663}#) #{result 4664}#)))))) (begin (#{f 4662}# (read #{p 4658}#) '())))))))) (begin (let ((#{tmp 4665}# #{x 4649}#)) (let ((#{tmp 4666}# ($sc-dispatch #{tmp 4665}# '(any any)))) (if #{tmp 4666}# (@apply (lambda (#{k 4669}# #{filename 4670}#) (begin (let ((#{fn 4672}# (syntax->datum #{filename 4670}#))) (let ((#{tmp 4674}# (#{read-file 4652}# #{fn 4672}# #{filename 4670}#))) (let ((#{tmp 4675}# ($sc-dispatch #{tmp 4674}# 'each-any))) (if #{tmp 4675}# (@apply (lambda (#{exp 4677}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(exp) #((top)) #("i4676")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4671")) #(ribcage #(k filename) #((top) (top)) #("i4667" "i4668")) #(ribcage (read-file) ((top)) ("i4651")) #(ribcage #(x) #((top)) #("i4650"))) (hygiene guile)) #{exp 4677}#)) #{tmp 4675}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4674}#))))))) #{tmp 4666}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4665}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x 4679}#) (let ((#{tmp 4681}# #{x 4679}#)) (let ((#{tmp 4682}# ($sc-dispatch #{tmp 4681}# '(any any)))) (if #{tmp 4682}# (@apply (lambda (#{k 4685}# #{filename 4686}#) (begin (let ((#{fn 4688}# (syntax->datum #{filename 4686}#))) (let ((#{tmp 4690}# (datum->syntax #{filename 4686}# (begin (let ((#{t 4695}# (%search-load-path #{fn 4688}#))) (if #{t 4695}# #{t 4695}# (syntax-violation 'include-from-path "file not found in path" #{x 4679}# #{filename 4686}#))))))) (let ((#{fn 4692}# #{tmp 4690}#)) (list '#(syntax-object include ((top) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4691")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4687")) #(ribcage #(k filename) #((top) (top)) #("i4683" "i4684")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4680"))) (hygiene guile)) #{fn 4692}#)))))) #{tmp 4682}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4681}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x 4697}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x 4697}#)))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x 4699}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x 4699}#)))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x 4701}#) (let ((#{tmp 4703}# #{x 4701}#)) (let ((#{tmp 4704}# ($sc-dispatch #{tmp 4703}# '(_ any any . each-any)))) (if #{tmp 4704}# (@apply (lambda (#{e 4708}# #{m1 4709}# #{m2 4710}#) (let ((#{tmp 4712}# (letrec* ((#{f 4718}# (lambda (#{clause 4719}# #{clauses 4720}#) (if (null? #{clauses 4720}#) (let ((#{tmp 4722}# #{clause 4719}#)) (let ((#{tmp 4723}# ($sc-dispatch #{tmp 4722}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile))) any . each-any)))) (if #{tmp 4723}# (@apply (lambda (#{e1 4726}# #{e2 4727}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4724" "i4725")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (cons #{e1 4726}# #{e2 4727}#))) #{tmp 4723}#) (let ((#{tmp 4729}# ($sc-dispatch #{tmp 4722}# '(each-any any . each-any)))) (if #{tmp 4729}# (@apply (lambda (#{k 4733}# #{e1 4734}# #{e2 4735}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) #{k 4733}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (cons #{e1 4734}# #{e2 4735}#)))) #{tmp 4729}#) (let ((#{_ 4739}# #{tmp 4722}#)) (syntax-violation 'case "bad clause" #{x 4701}# #{clause 4719}#))))))) (let ((#{tmp 4741}# (#{f 4718}# (car #{clauses 4720}#) (cdr #{clauses 4720}#)))) (let ((#{rest 4743}# #{tmp 4741}#)) (let ((#{tmp 4744}# #{clause 4719}#)) (let ((#{tmp 4745}# ($sc-dispatch #{tmp 4744}# '(each-any any . each-any)))) (if #{tmp 4745}# (@apply (lambda (#{k 4749}# #{e1 4750}# #{e2 4751}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4746" "i4747" "i4748")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4742")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4746" "i4747" "i4748")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4742")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4746" "i4747" "i4748")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4742")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4746" "i4747" "i4748")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4742")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) #{k 4749}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4746" "i4747" "i4748")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4742")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4715" "i4716" "i4717")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (cons #{e1 4750}# #{e2 4751}#)) #{rest 4743}#)) #{tmp 4745}#) (let ((#{_ 4755}# #{tmp 4744}#)) (syntax-violation 'case "bad clause" #{x 4701}# #{clause 4719}#))))))))))) (begin (#{f 4718}# #{m1 4709}# #{m2 4710}#))))) (let ((#{body 4714}# #{tmp 4712}#)) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4713")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4713")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4705" "i4706" "i4707")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4702"))) (hygiene guile)) #{e 4708}#)) #{body 4714}#)))) #{tmp 4704}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4703}#))))))) (define make-variable-transformer (lambda (#{proc 4756}#) (if (procedure? #{proc 4756}#) (begin (letrec* ((#{trans 4759}# (lambda (#{x 4760}#) (#{proc 4756}# #{x 4760}#)))) (begin (set-procedure-property! #{trans 4759}# 'variable-transformer #t) #{trans 4759}#))) (error "variable transformer not a procedure" #{proc 4756}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x 4762}#) (let ((#{tmp 4764}# #{x 4762}#)) (let ((#{tmp 4765}# ($sc-dispatch #{tmp 4764}# '(_ any)))) (if #{tmp 4765}# (@apply (lambda (#{e 4767}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #{e 4767}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) (cons #{e 4767}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4766")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile))))))))) #{tmp 4765}#) (let ((#{tmp 4768}# ($sc-dispatch #{tmp 4764}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile))) any any) any))))) (if (if #{tmp 4768}# (@apply (lambda (#{id 4774}# #{exp1 4775}# #{var 4776}# #{val 4777}# #{exp2 4778}#) (if (identifier? #{id 4774}#) (identifier? #{var 4776}#) #f)) #{tmp 4768}#) #f) (@apply (lambda (#{id 4786}# #{exp1 4787}# #{var 4788}# #{val 4789}# #{exp2 4790}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #{var 4788}# #{val 4789}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #{exp2 4790}#)) (list (cons #{id 4786}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) (cons #{exp1 4787}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)))))) (list #{id 4786}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #{id 4786}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784" "i4785")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4763"))) (hygiene guile)) #{exp1 4787}#)))))) #{tmp 4768}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4764}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x 4791}#) (let ((#{tmp 4793}# #{x 4791}#)) (let ((#{tmp 4794}# ($sc-dispatch #{tmp 4793}# '(_ (any . any) any . each-any)))) (if #{tmp 4794}# (@apply (lambda (#{id 4799}# #{args 4800}# #{b0 4801}# #{b1 4802}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4795" "i4796" "i4797" "i4798")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4792"))) (hygiene guile)) #{id 4799}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4795" "i4796" "i4797" "i4798")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4792"))) (hygiene guile)) (cons #{args 4800}# (cons #{b0 4801}# #{b1 4802}#))))) #{tmp 4794}#) (let ((#{tmp 4804}# ($sc-dispatch #{tmp 4793}# '(_ any any)))) (if (if #{tmp 4804}# (@apply (lambda (#{id 4807}# #{val 4808}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4805" "i4806")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4792"))) (hygiene guile)))) #{tmp 4804}#) #f) (@apply (lambda (#{id 4811}# #{val 4812}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4809" "i4810")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4792"))) (hygiene guile)) #{id 4811}# #{val 4812}#)) #{tmp 4804}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4793}#)))))))))