(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}#)) (values #{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}#) (values #{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}#) (values #{exps 1577}#)) (values #{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}#) (values (cons #{e 1674}# #{exps 1577}#)) (values #{exps 1577}#))))) (if (memq 'load #{esew 1575}#) (values (cons (#{chi-install-global 413}# #{n 1670}# (#{chi 419}# #{e 1597}# #{r 1671}# #{w 1598}# #{mod 1600}#)) #{exps 1577}#)) (values #{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}#) (values (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}#)) (values #{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)))))) (values (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}#)))))))) (values (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* 3702}# #{n 3703}# #{ids 3704}#) (if (not (pair? #{p* 3702}#)) (#{cvt 3701}# #{p* 3702}# #{n 3703}# #{ids 3704}#) (call-with-values (lambda () (#{cvt* 3697}# (cdr #{p* 3702}#) #{n 3703}# #{ids 3704}#)) (lambda (#{y 3708}# #{ids 3709}#) (call-with-values (lambda () (#{cvt 3701}# (car #{p* 3702}#) #{n 3703}# #{ids 3709}#)) (lambda (#{x 3712}# #{ids 3713}#) (values (cons #{x 3712}# #{y 3708}#) #{ids 3713}#)))))))) (#{v-reverse 3699}# (lambda (#{x 3716}#) (letrec* ((#{loop 3721}# (lambda (#{r 3722}# #{x 3723}#) (if (not (pair? #{x 3723}#)) (values #{r 3722}# #{x 3723}#) (#{loop 3721}# (cons (car #{x 3723}#) #{r 3722}#) (cdr #{x 3723}#)))))) (begin (#{loop 3721}# '() #{x 3716}#))))) (#{cvt 3701}# (lambda (#{p 3724}# #{n 3725}# #{ids 3726}#) (if (#{id? 339}# #{p 3724}#) (if (#{bound-id-member? 403}# #{p 3724}# #{keys 3693}#) (values (vector 'free-id #{p 3724}#) #{ids 3726}#) (if (#{free-id=? 395}# #{p 3724}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3727" "i3728" "i3729")) #(ribcage (cvt v-reverse cvt*) ((top) (top) (top)) ("i3700" "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 3726}#) (values 'any (cons (cons #{p 3724}# #{n 3725}#) #{ids 3726}#)))) (let ((#{tmp 3735}# #{p 3724}#)) (let ((#{tmp 3736}# ($sc-dispatch #{tmp 3735}# '(any any)))) (if (if #{tmp 3736}# (@apply (lambda (#{x 3739}# #{dots 3740}#) (#{ellipsis? 435}# #{dots 3740}#)) #{tmp 3736}#) #f) (@apply (lambda (#{x 3743}# #{dots 3744}#) (call-with-values (lambda () (#{cvt 3701}# #{x 3743}# (#{1+}# #{n 3725}#) #{ids 3726}#)) (lambda (#{p 3746}# #{ids 3747}#) (values (if (eq? #{p 3746}# 'any) 'each-any (vector 'each #{p 3746}#)) #{ids 3747}#)))) #{tmp 3736}#) (let ((#{tmp 3750}# ($sc-dispatch #{tmp 3735}# '(any any . any)))) (if (if #{tmp 3750}# (@apply (lambda (#{x 3754}# #{dots 3755}# #{ys 3756}#) (#{ellipsis? 435}# #{dots 3755}#)) #{tmp 3750}#) #f) (@apply (lambda (#{x 3760}# #{dots 3761}# #{ys 3762}#) (call-with-values (lambda () (#{cvt* 3697}# #{ys 3762}# #{n 3725}# #{ids 3726}#)) (lambda (#{ys 3763}# #{ids 3764}#) (call-with-values (lambda () (#{cvt 3701}# #{x 3760}# (#{1+}# #{n 3725}#) #{ids 3764}#)) (lambda (#{x 3767}# #{ids 3768}#) (call-with-values (lambda () (#{v-reverse 3699}# #{ys 3763}#)) (lambda (#{ys 3771}# #{e 3772}#) (values (vector 'each+ #{x 3767}# #{ys 3771}# #{e 3772}#) #{ids 3768}#)))))))) #{tmp 3750}#) (let ((#{tmp 3776}# ($sc-dispatch #{tmp 3735}# '(any . any)))) (if #{tmp 3776}# (@apply (lambda (#{x 3779}# #{y 3780}#) (call-with-values (lambda () (#{cvt 3701}# #{y 3780}# #{n 3725}# #{ids 3726}#)) (lambda (#{y 3781}# #{ids 3782}#) (call-with-values (lambda () (#{cvt 3701}# #{x 3779}# #{n 3725}# #{ids 3782}#)) (lambda (#{x 3785}# #{ids 3786}#) (values (cons #{x 3785}# #{y 3781}#) #{ids 3786}#)))))) #{tmp 3776}#) (let ((#{tmp 3789}# ($sc-dispatch #{tmp 3735}# '()))) (if #{tmp 3789}# (@apply (lambda () (values '() #{ids 3726}#)) #{tmp 3789}#) (let ((#{tmp 3790}# ($sc-dispatch #{tmp 3735}# '#(vector each-any)))) (if #{tmp 3790}# (@apply (lambda (#{x 3792}#) (call-with-values (lambda () (#{cvt 3701}# #{x 3792}# #{n 3725}# #{ids 3726}#)) (lambda (#{p 3794}# #{ids 3795}#) (values (vector 'vector #{p 3794}#) #{ids 3795}#)))) #{tmp 3790}#) (let ((#{x 3799}# #{tmp 3735}#)) (values (vector 'atom (#{strip 445}# #{p 3724}# '(()))) #{ids 3726}#))))))))))))))))) (begin (#{cvt 3701}# #{pattern 3692}# 0 '()))))) (#{build-dispatch-call 3687}# (lambda (#{pvars 3801}# #{exp 3802}# #{y 3803}# #{r 3804}# #{mod 3805}#) (begin (map cdr #{pvars 3801}#) (let ((#{ids 3813}# (map car #{pvars 3801}#))) (begin (let ((#{labels 3817}# (#{gen-labels 354}# #{ids 3813}#)) (#{new-vars 3818}# (map #{gen-var 447}# #{ids 3813}#))) (#{build-application 265}# #f (#{build-primref 289}# #f 'apply) (list (#{build-simple-lambda 283}# #f (map syntax->datum #{ids 3813}#) #f #{new-vars 3818}# '() (#{chi 419}# #{exp 3802}# (#{extend-env 327}# #{labels 3817}# (map (lambda (#{var 3822}# #{level 3823}#) (cons 'syntax (cons #{var 3822}# #{level 3823}#))) #{new-vars 3818}# (map cdr #{pvars 3801}#)) #{r 3804}#) (#{make-binding-wrap 383}# #{ids 3813}# #{labels 3817}# '(())) #{mod 3805}#)) #{y 3803}#)))))))) (#{gen-clause 3689}# (lambda (#{x 3829}# #{keys 3830}# #{clauses 3831}# #{r 3832}# #{pat 3833}# #{fender 3834}# #{exp 3835}# #{mod 3836}#) (call-with-values (lambda () (#{convert-pattern 3685}# #{pat 3833}# #{keys 3830}#)) (lambda (#{p 3845}# #{pvars 3846}#) (if (not (#{distinct-bound-ids? 401}# (map car #{pvars 3846}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat 3833}#) (if (not (and-map (lambda (#{x 3853}#) (not (#{ellipsis? 435}# (car #{x 3853}#)))) #{pvars 3846}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat 3833}#) (begin (let ((#{y 3857}# (#{gen-var 447}# 'tmp))) (#{build-application 265}# #f (#{build-simple-lambda 283}# #f (list 'tmp) #f (list #{y 3857}#) '() (begin (let ((#{y 3861}# (#{build-lexical-reference 271}# 'value #f 'tmp #{y 3857}#))) (#{build-conditional 267}# #f (let ((#{tmp 3864}# #{fender 3834}#)) (let ((#{tmp 3865}# ($sc-dispatch #{tmp 3864}# '#(atom #t)))) (if #{tmp 3865}# (@apply (lambda () #{y 3861}#) #{tmp 3865}#) (let ((#{_ 3867}# #{tmp 3864}#)) (#{build-conditional 267}# #f #{y 3861}# (#{build-dispatch-call 3687}# #{pvars 3846}# #{fender 3834}# #{y 3861}# #{r 3832}# #{mod 3836}#) (#{build-data 291}# #f #f)))))) (#{build-dispatch-call 3687}# #{pvars 3846}# #{exp 3835}# #{y 3861}# #{r 3832}# #{mod 3836}#) (#{gen-syntax-case 3691}# #{x 3829}# #{keys 3830}# #{clauses 3831}# #{r 3832}# #{mod 3836}#))))) (list (if (eq? #{p 3845}# 'any) (#{build-application 265}# #f (#{build-primref 289}# #f 'list) (list #{x 3829}#)) (#{build-application 265}# #f (#{build-primref 289}# #f '$sc-dispatch) (list #{x 3829}# (#{build-data 291}# #f #{p 3845}#)))))))))))))) (#{gen-syntax-case 3691}# (lambda (#{x 3875}# #{keys 3876}# #{clauses 3877}# #{r 3878}# #{mod 3879}#) (if (null? #{clauses 3877}#) (#{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 3875}#)) (let ((#{tmp 3889}# (car #{clauses 3877}#))) (let ((#{tmp 3890}# ($sc-dispatch #{tmp 3889}# '(any any)))) (if #{tmp 3890}# (@apply (lambda (#{pat 3893}# #{exp 3894}#) (if (if (#{id? 339}# #{pat 3893}#) (and-map (lambda (#{x 3897}#) (not (#{free-id=? 395}# #{pat 3893}# #{x 3897}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3891" "i3892")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3880" "i3881" "i3882" "i3883" "i3884")) #(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 3876}#)) #f) (if (#{free-id=? 395}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3891" "i3892")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3880" "i3881" "i3882" "i3883" "i3884")) #(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)) #("i3891" "i3892")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3880" "i3881" "i3882" "i3883" "i3884")) #(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 3894}# #{r 3878}# '(()) #{mod 3879}#) (begin (let ((#{labels 3902}# (list (#{gen-label 352}#))) (#{var 3903}# (#{gen-var 447}# #{pat 3893}#))) (#{build-application 265}# #f (#{build-simple-lambda 283}# #f (list (syntax->datum #{pat 3893}#)) #f (list #{var 3903}#) '() (#{chi 419}# #{exp 3894}# (#{extend-env 327}# #{labels 3902}# (list (cons 'syntax (cons #{var 3903}# 0))) #{r 3878}#) (#{make-binding-wrap 383}# (list #{pat 3893}#) #{labels 3902}# '(())) #{mod 3879}#)) (list #{x 3875}#))))) (#{gen-clause 3689}# #{x 3875}# #{keys 3876}# (cdr #{clauses 3877}#) #{r 3878}# #{pat 3893}# #t #{exp 3894}# #{mod 3879}#))) #{tmp 3890}#) (let ((#{tmp 3909}# ($sc-dispatch #{tmp 3889}# '(any any any)))) (if #{tmp 3909}# (@apply (lambda (#{pat 3913}# #{fender 3914}# #{exp 3915}#) (#{gen-clause 3689}# #{x 3875}# #{keys 3876}# (cdr #{clauses 3877}#) #{r 3878}# #{pat 3913}# #{fender 3914}# #{exp 3915}# #{mod 3879}#)) #{tmp 3909}#) (let ((#{_ 3917}# #{tmp 3889}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses 3877}#)))))))))))) (begin (lambda (#{e 3918}# #{r 3919}# #{w 3920}# #{s 3921}# #{mod 3922}#) (begin (let ((#{e 3929}# (#{source-wrap 407}# #{e 3918}# #{w 3920}# #{s 3921}# #{mod 3922}#))) (let ((#{tmp 3930}# #{e 3929}#)) (let ((#{tmp 3931}# ($sc-dispatch #{tmp 3930}# '(_ any each-any . each-any)))) (if #{tmp 3931}# (@apply (lambda (#{val 3935}# #{key 3936}# #{m 3937}#) (if (and-map (lambda (#{x 3938}#) (if (#{id? 339}# #{x 3938}#) (not (#{ellipsis? 435}# #{x 3938}#)) #f)) #{key 3936}#) (begin (let ((#{x 3944}# (#{gen-var 447}# 'tmp))) (#{build-application 265}# #{s 3921}# (#{build-simple-lambda 283}# #f (list 'tmp) #f (list #{x 3944}#) '() (#{gen-syntax-case 3691}# (#{build-lexical-reference 271}# 'value #f 'tmp #{x 3944}#) #{key 3936}# #{m 3937}# #{r 3919}# #{mod 3922}#)) (list (#{chi 419}# #{val 3935}# #{r 3919}# '(()) #{mod 3922}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e 3929}#))) #{tmp 3931}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 3930}#)))))))))) (set! macroexpand (lambda* (#{x 3950}# #:optional (#{m 3952}# 'e) (#{esew 3954}# '(eval))) (#{chi-top-sequence 411}# (list #{x 3950}#) '() '((top)) #f #{m 3952}# #{esew 3954}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x 3958}#) (#{nonsymbol-id? 337}# #{x 3958}#))) (set! datum->syntax (lambda (#{id 3960}# #{datum 3961}#) (#{make-syntax-object 303}# #{datum 3961}# (#{syntax-object-wrap 309}# #{id 3960}#) (#{syntax-object-module 311}# #{id 3960}#)))) (set! syntax->datum (lambda (#{x 3964}#) (#{strip 445}# #{x 3964}# '(())))) (set! syntax-source (lambda (#{x 3967}#) (#{source-annotation 320}# #{x 3967}#))) (set! generate-temporaries (lambda (#{ls 3969}#) (begin (begin (let ((#{x 3973}# #{ls 3969}#)) (if (not (list? #{x 3973}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x 3973}#)))) (begin (let ((#{mod 3975}# (cons 'hygiene (module-name (current-module))))) (map (lambda (#{x 3976}#) (#{wrap 405}# (gensym) '((top)) #{mod 3975}#)) #{ls 3969}#)))))) (set! free-identifier=? (lambda (#{x 3980}# #{y 3981}#) (begin (begin (let ((#{x 3986}# #{x 3980}#)) (if (not (#{nonsymbol-id? 337}# #{x 3986}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 3986}#)))) (begin (let ((#{x 3989}# #{y 3981}#)) (if (not (#{nonsymbol-id? 337}# #{x 3989}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x 3989}#)))) (#{free-id=? 395}# #{x 3980}# #{y 3981}#)))) (set! bound-identifier=? (lambda (#{x 3990}# #{y 3991}#) (begin (begin (let ((#{x 3996}# #{x 3990}#)) (if (not (#{nonsymbol-id? 337}# #{x 3996}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 3996}#)))) (begin (let ((#{x 3999}# #{y 3991}#)) (if (not (#{nonsymbol-id? 337}# #{x 3999}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x 3999}#)))) (#{bound-id=? 397}# #{x 3990}# #{y 3991}#)))) (set! syntax-violation (lambda* (#{who 4000}# #{message 4001}# #{form 4002}# #:optional (#{subform 4006}# #f)) (begin (begin (let ((#{x 4010}# #{who 4000}#)) (if (not (let ((#{x 4011}# #{x 4010}#)) (begin (let ((#{t 4015}# (not #{x 4011}#))) (if #{t 4015}# #{t 4015}# (begin (let ((#{t 4018}# (string? #{x 4011}#))) (if #{t 4018}# #{t 4018}# (symbol? #{x 4011}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x 4010}#)))) (begin (let ((#{x 4022}# #{message 4001}#)) (if (not (string? #{x 4022}#)) (syntax-violation 'syntax-violation "invalid argument" #{x 4022}#)))) (throw 'syntax-error #{who 4000}# #{message 4001}# (#{source-annotation 320}# (begin (let ((#{t 4025}# #{form 4002}#)) (if #{t 4025}# #{t 4025}# #{subform 4006}#)))) (#{strip 445}# #{form 4002}# '(())) (if #{subform 4006}# (#{strip 445}# #{subform 4006}# '(())) #f))))) (letrec* ((#{match-each 4032}# (lambda (#{e 4045}# #{p 4046}# #{w 4047}# #{mod 4048}#) (if (pair? #{e 4045}#) (begin (let ((#{first 4056}# (#{match 4044}# (car #{e 4045}#) #{p 4046}# #{w 4047}# '() #{mod 4048}#))) (if #{first 4056}# (begin (let ((#{rest 4060}# (#{match-each 4032}# (cdr #{e 4045}#) #{p 4046}# #{w 4047}# #{mod 4048}#))) (if #{rest 4060}# (cons #{first 4056}# #{rest 4060}#) #f))) #f))) (if (null? #{e 4045}#) '() (if (#{syntax-object? 305}# #{e 4045}#) (#{match-each 4032}# (#{syntax-object-expression 307}# #{e 4045}#) #{p 4046}# (#{join-wraps 387}# #{w 4047}# (#{syntax-object-wrap 309}# #{e 4045}#)) (#{syntax-object-module 311}# #{e 4045}#)) #f))))) (#{match-each+ 4034}# (lambda (#{e 4068}# #{x-pat 4069}# #{y-pat 4070}# #{z-pat 4071}# #{w 4072}# #{r 4073}# #{mod 4074}#) (letrec* ((#{f 4085}# (lambda (#{e 4086}# #{w 4087}#) (if (pair? #{e 4086}#) (call-with-values (lambda () (#{f 4085}# (cdr #{e 4086}#) #{w 4087}#)) (lambda (#{xr* 4090}# #{y-pat 4091}# #{r 4092}#) (if #{r 4092}# (if (null? #{y-pat 4091}#) (begin (let ((#{xr 4097}# (#{match 4044}# (car #{e 4086}#) #{x-pat 4069}# #{w 4087}# '() #{mod 4074}#))) (if #{xr 4097}# (values (cons #{xr 4097}# #{xr* 4090}#) #{y-pat 4091}# #{r 4092}#) (values #f #f #f)))) (values '() (cdr #{y-pat 4091}#) (#{match 4044}# (car #{e 4086}#) (car #{y-pat 4091}#) #{w 4087}# #{r 4092}# #{mod 4074}#))) (values #f #f #f)))) (if (#{syntax-object? 305}# #{e 4086}#) (#{f 4085}# (#{syntax-object-expression 307}# #{e 4086}#) (#{join-wraps 387}# #{w 4087}# #{e 4086}#)) (values '() #{y-pat 4070}# (#{match 4044}# #{e 4086}# #{z-pat 4071}# #{w 4087}# #{r 4073}# #{mod 4074}#))))))) (begin (#{f 4085}# #{e 4068}# #{w 4072}#))))) (#{match-each-any 4036}# (lambda (#{e 4101}# #{w 4102}# #{mod 4103}#) (if (pair? #{e 4101}#) (begin (let ((#{l 4110}# (#{match-each-any 4036}# (cdr #{e 4101}#) #{w 4102}# #{mod 4103}#))) (if #{l 4110}# (cons (#{wrap 405}# (car #{e 4101}#) #{w 4102}# #{mod 4103}#) #{l 4110}#) #f))) (if (null? #{e 4101}#) '() (if (#{syntax-object? 305}# #{e 4101}#) (#{match-each-any 4036}# (#{syntax-object-expression 307}# #{e 4101}#) (#{join-wraps 387}# #{w 4102}# (#{syntax-object-wrap 309}# #{e 4101}#)) #{mod 4103}#) #f))))) (#{match-empty 4038}# (lambda (#{p 4118}# #{r 4119}#) (if (null? #{p 4118}#) #{r 4119}# (if (eq? #{p 4118}# '_) #{r 4119}# (if (eq? #{p 4118}# 'any) (cons '() #{r 4119}#) (if (pair? #{p 4118}#) (#{match-empty 4038}# (car #{p 4118}#) (#{match-empty 4038}# (cdr #{p 4118}#) #{r 4119}#)) (if (eq? #{p 4118}# 'each-any) (cons '() #{r 4119}#) (begin (let ((#{atom-key 4135}# (vector-ref #{p 4118}# 0))) (if (eqv? #{atom-key 4135}# 'each) (#{match-empty 4038}# (vector-ref #{p 4118}# 1) #{r 4119}#) (if (eqv? #{atom-key 4135}# 'each+) (#{match-empty 4038}# (vector-ref #{p 4118}# 1) (#{match-empty 4038}# (reverse (vector-ref #{p 4118}# 2)) (#{match-empty 4038}# (vector-ref #{p 4118}# 3) #{r 4119}#))) (if (if (eqv? #{atom-key 4135}# 'free-id) #t (eqv? #{atom-key 4135}# 'atom)) #{r 4119}# (if (eqv? #{atom-key 4135}# 'vector) (#{match-empty 4038}# (vector-ref #{p 4118}# 1) #{r 4119}#)))))))))))))) (#{combine 4040}# (lambda (#{r* 4140}# #{r 4141}#) (if (null? (car #{r* 4140}#)) #{r 4141}# (cons (map car #{r* 4140}#) (#{combine 4040}# (map cdr #{r* 4140}#) #{r 4141}#))))) (#{match* 4042}# (lambda (#{e 4144}# #{p 4145}# #{w 4146}# #{r 4147}# #{mod 4148}#) (if (null? #{p 4145}#) (if (null? #{e 4144}#) #{r 4147}# #f) (if (pair? #{p 4145}#) (if (pair? #{e 4144}#) (#{match 4044}# (car #{e 4144}#) (car #{p 4145}#) #{w 4146}# (#{match 4044}# (cdr #{e 4144}#) (cdr #{p 4145}#) #{w 4146}# #{r 4147}# #{mod 4148}#) #{mod 4148}#) #f) (if (eq? #{p 4145}# 'each-any) (begin (let ((#{l 4165}# (#{match-each-any 4036}# #{e 4144}# #{w 4146}# #{mod 4148}#))) (if #{l 4165}# (cons #{l 4165}# #{r 4147}#) #f))) (begin (let ((#{atom-key 4171}# (vector-ref #{p 4145}# 0))) (if (eqv? #{atom-key 4171}# 'each) (if (null? #{e 4144}#) (#{match-empty 4038}# (vector-ref #{p 4145}# 1) #{r 4147}#) (begin (let ((#{l 4174}# (#{match-each 4032}# #{e 4144}# (vector-ref #{p 4145}# 1) #{w 4146}# #{mod 4148}#))) (if #{l 4174}# (letrec* ((#{collect 4179}# (lambda (#{l 4180}#) (if (null? (car #{l 4180}#)) #{r 4147}# (cons (map car #{l 4180}#) (#{collect 4179}# (map cdr #{l 4180}#))))))) (begin (#{collect 4179}# #{l 4174}#))) #f)))) (if (eqv? #{atom-key 4171}# 'each+) (call-with-values (lambda () (#{match-each+ 4034}# #{e 4144}# (vector-ref #{p 4145}# 1) (vector-ref #{p 4145}# 2) (vector-ref #{p 4145}# 3) #{w 4146}# #{r 4147}# #{mod 4148}#)) (lambda (#{xr* 4182}# #{y-pat 4183}# #{r 4184}#) (if #{r 4184}# (if (null? #{y-pat 4183}#) (if (null? #{xr* 4182}#) (#{match-empty 4038}# (vector-ref #{p 4145}# 1) #{r 4184}#) (#{combine 4040}# #{xr* 4182}# #{r 4184}#)) #f) #f))) (if (eqv? #{atom-key 4171}# 'free-id) (if (#{id? 339}# #{e 4144}#) (if (#{free-id=? 395}# (#{wrap 405}# #{e 4144}# #{w 4146}# #{mod 4148}#) (vector-ref #{p 4145}# 1)) #{r 4147}# #f) #f) (if (eqv? #{atom-key 4171}# 'atom) (if (equal? (vector-ref #{p 4145}# 1) (#{strip 445}# #{e 4144}# #{w 4146}#)) #{r 4147}# #f) (if (eqv? #{atom-key 4171}# 'vector) (if (vector? #{e 4144}#) (#{match 4044}# (vector->list #{e 4144}#) (vector-ref #{p 4145}# 1) #{w 4146}# #{r 4147}# #{mod 4148}#) #f))))))))))))) (#{match 4044}# (lambda (#{e 4201}# #{p 4202}# #{w 4203}# #{r 4204}# #{mod 4205}#) (if (not #{r 4204}#) #f (if (eq? #{p 4202}# '_) #{r 4204}# (if (eq? #{p 4202}# 'any) (cons (#{wrap 405}# #{e 4201}# #{w 4203}# #{mod 4205}#) #{r 4204}#) (if (#{syntax-object? 305}# #{e 4201}#) (#{match* 4042}# (#{syntax-object-expression 307}# #{e 4201}#) #{p 4202}# (#{join-wraps 387}# #{w 4203}# (#{syntax-object-wrap 309}# #{e 4201}#)) #{r 4204}# (#{syntax-object-module 311}# #{e 4201}#)) (#{match* 4042}# #{e 4201}# #{p 4202}# #{w 4203}# #{r 4204}# #{mod 4205}#)))))))) (begin (set! $sc-dispatch (lambda (#{e 4220}# #{p 4221}#) (if (eq? #{p 4221}# 'any) (list #{e 4220}#) (if (eq? #{p 4221}# '_) '() (if (#{syntax-object? 305}# #{e 4220}#) (#{match* 4042}# (#{syntax-object-expression 307}# #{e 4220}#) #{p 4221}# (#{syntax-object-wrap 309}# #{e 4220}#) '() (#{syntax-object-module 311}# #{e 4220}#)) (#{match* 4042}# #{e 4220}# #{p 4221}# '(()) '() #f))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x 4232}#) (let ((#{tmp 4234}# #{x 4232}#)) (let ((#{tmp 4235}# ($sc-dispatch #{tmp 4234}# '(_ () any . each-any)))) (if #{tmp 4235}# (@apply (lambda (#{e1 4238}# #{e2 4239}#) (cons '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4236" "i4237")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons '() (cons #{e1 4238}# #{e2 4239}#)))) #{tmp 4235}#) (let ((#{tmp 4241}# ($sc-dispatch #{tmp 4234}# '(_ ((any any)) any . each-any)))) (if #{tmp 4241}# (@apply (lambda (#{out 4246}# #{in 4247}# #{e1 4248}# #{e2 4249}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4242" "i4243" "i4244" "i4245")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{in 4247}# '() (list #{out 4246}# (cons '#(syntax-object let ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4242" "i4243" "i4244" "i4245")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons '() (cons #{e1 4248}# #{e2 4249}#)))))) #{tmp 4241}#) (let ((#{tmp 4251}# ($sc-dispatch #{tmp 4234}# '(_ #(each (any any)) any . each-any)))) (if #{tmp 4251}# (@apply (lambda (#{out 4256}# #{in 4257}# #{e1 4258}# #{e2 4259}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{in 4257}#) '() (list #{out 4256}# (cons '#(syntax-object let ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4252" "i4253" "i4254" "i4255")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons '() (cons #{e1 4258}# #{e2 4259}#)))))) #{tmp 4251}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4234}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x 4263}#) (let ((#{tmp 4265}# #{x 4263}#)) (let ((#{tmp 4266}# ($sc-dispatch #{tmp 4265}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp 4266}# (@apply (lambda (#{k 4271}# #{keyword 4272}# #{pattern 4273}# #{template 4274}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) #{pattern 4273}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) (cons #{k 4271}# (map (lambda (#{tmp 4278}# #{tmp 4277}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) #{tmp 4277}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4267" "i4268" "i4269" "i4270")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) #{tmp 4278}#))) #{template 4274}# #{pattern 4273}#)))))) #{tmp 4266}#) (let ((#{tmp 4279}# ($sc-dispatch #{tmp 4265}# '(_ each-any any . #(each ((any . any) any)))))) (if (if #{tmp 4279}# (@apply (lambda (#{k 4285}# #{docstring 4286}# #{keyword 4287}# #{pattern 4288}# #{template 4289}#) (string? (syntax->datum #{docstring 4286}#))) #{tmp 4279}#) #f) (@apply (lambda (#{k 4295}# #{docstring 4296}# #{keyword 4297}# #{pattern 4298}# #{template 4299}#) (list '#(syntax-object lambda ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile))) #{docstring 4296}# (vector '(#(syntax-object macro-type ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) #{pattern 4298}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) (cons #{k 4295}# (map (lambda (#{tmp 4303}# #{tmp 4302}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) #{tmp 4302}#) (list '#(syntax-object syntax ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4264"))) (hygiene guile)) #{tmp 4303}#))) #{template 4299}# #{pattern 4298}#)))))) #{tmp 4279}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4265}#))))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x 4304}#) (let ((#{tmp 4306}# #{x 4304}#)) (let ((#{tmp 4307}# ($sc-dispatch #{tmp 4306}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp 4307}# (@apply (lambda (#{let* 4313}# #{x 4314}# #{v 4315}# #{e1 4316}# #{e2 4317}#) (and-map identifier? #{x 4314}#)) #{tmp 4307}#) #f) (@apply (lambda (#{let* 4324}# #{x 4325}# #{v 4326}# #{e1 4327}# #{e2 4328}#) (letrec* ((#{f 4331}# (lambda (#{bindings 4332}#) (if (null? #{bindings 4332}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4329" "i4330")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4305"))) (hygiene guile)) (cons '() (cons #{e1 4327}# #{e2 4328}#))) (let ((#{tmp 4337}# (list (#{f 4331}# (cdr #{bindings 4332}#)) (car #{bindings 4332}#)))) (let ((#{tmp 4338}# ($sc-dispatch #{tmp 4337}# '(any any)))) (if #{tmp 4338}# (@apply (lambda (#{body 4341}# #{binding 4342}#) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body binding) #((top) (top)) #("i4339" "i4340")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4329" "i4330")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4305"))) (hygiene guile)) (list #{binding 4342}#) #{body 4341}#)) #{tmp 4338}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4337}#)))))))) (begin (#{f 4331}# (map list #{x 4325}# #{v 4326}#))))) #{tmp 4307}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4306}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x 4343}#) (let ((#{tmp 4345}# #{orig-x 4343}#)) (let ((#{tmp 4346}# ($sc-dispatch #{tmp 4345}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp 4346}# (@apply (lambda (#{var 4353}# #{init 4354}# #{step 4355}# #{e0 4356}# #{e1 4357}# #{c 4358}#) (let ((#{tmp 4360}# (map (lambda (#{v 4381}# #{s 4382}#) (let ((#{tmp 4385}# #{s 4382}#)) (let ((#{tmp 4386}# ($sc-dispatch #{tmp 4385}# '()))) (if #{tmp 4386}# (@apply (lambda () #{v 4381}#) #{tmp 4386}#) (let ((#{tmp 4387}# ($sc-dispatch #{tmp 4385}# '(any)))) (if #{tmp 4387}# (@apply (lambda (#{e 4389}#) #{e 4389}#) #{tmp 4387}#) (let ((#{_ 4391}# #{tmp 4385}#)) (syntax-violation 'do "bad step expression" #{orig-x 4343}# #{s 4382}#)))))))) #{var 4353}# #{step 4355}#))) (let ((#{tmp 4361}# ($sc-dispatch #{tmp 4360}# 'each-any))) (if #{tmp 4361}# (@apply (lambda (#{step 4363}#) (let ((#{tmp 4364}# #{e1 4357}#)) (let ((#{tmp 4365}# ($sc-dispatch #{tmp 4364}# '()))) (if #{tmp 4365}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) (map list #{var 4353}# #{init 4354}#) (list '#(syntax-object if ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) #{e0 4356}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) (append #{c 4358}# (list (cons '#(syntax-object doloop ((top) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) #{step 4363}#))))))) #{tmp 4365}#) (let ((#{tmp 4370}# ($sc-dispatch #{tmp 4364}# '(any . each-any)))) (if #{tmp 4370}# (@apply (lambda (#{e1 4373}# #{e2 4374}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4371" "i4372")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4371" "i4372")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) (map list #{var 4353}# #{init 4354}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4371" "i4372")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) #{e0 4356}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4371" "i4372")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) (cons #{e1 4373}# #{e2 4374}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4371" "i4372")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) (append #{c 4358}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4371" "i4372")) #(ribcage () () ()) #(ribcage #(step) #((top)) #("i4362")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4347" "i4348" "i4349" "i4350" "i4351" "i4352")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4344"))) (hygiene guile)) #{step 4363}#))))))) #{tmp 4370}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4364}#))))))) #{tmp 4361}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4360}#))))) #{tmp 4346}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4345}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasi 4395}# (lambda (#{p 4408}# #{lev 4409}#) (let ((#{tmp 4412}# #{p 4408}#)) (let ((#{tmp 4413}# ($sc-dispatch #{tmp 4412}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) any)))) (if #{tmp 4413}# (@apply (lambda (#{p 4415}#) (if (= #{lev 4409}# 0) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4414")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{p 4415}#) (#{quasicons 4399}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4414")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4414")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) (#{quasi 4395}# (list #{p 4415}#) (#{1-}# #{lev 4409}#))))) #{tmp 4413}#) (let ((#{tmp 4416}# ($sc-dispatch #{tmp 4412}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) any)))) (if #{tmp 4416}# (@apply (lambda (#{p 4418}#) (#{quasicons 4399}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4417")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4417")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) (#{quasi 4395}# (list #{p 4418}#) (#{1+}# #{lev 4409}#)))) #{tmp 4416}#) (let ((#{tmp 4419}# ($sc-dispatch #{tmp 4412}# '(any . any)))) (if #{tmp 4419}# (@apply (lambda (#{p 4422}# #{q 4423}#) (let ((#{tmp 4424}# #{p 4422}#)) (let ((#{tmp 4425}# ($sc-dispatch #{tmp 4424}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) . each-any)))) (if #{tmp 4425}# (@apply (lambda (#{p 4427}#) (if (= #{lev 4409}# 0) (#{quasilist* 4403}# (map (lambda (#{tmp 4428}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4426")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{tmp 4428}#)) #{p 4427}#) (#{quasi 4395}# #{q 4423}# #{lev 4409}#)) (#{quasicons 4399}# (#{quasicons 4399}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4426")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4426")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) (#{quasi 4395}# #{p 4427}# (#{1-}# #{lev 4409}#))) (#{quasi 4395}# #{q 4423}# #{lev 4409}#)))) #{tmp 4425}#) (let ((#{tmp 4430}# ($sc-dispatch #{tmp 4424}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) . each-any)))) (if #{tmp 4430}# (@apply (lambda (#{p 4432}#) (if (= #{lev 4409}# 0) (#{quasiappend 4401}# (map (lambda (#{tmp 4433}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{tmp 4433}#)) #{p 4432}#) (#{quasi 4395}# #{q 4423}# #{lev 4409}#)) (#{quasicons 4399}# (#{quasicons 4399}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) (#{quasi 4395}# #{p 4432}# (#{1-}# #{lev 4409}#))) (#{quasi 4395}# #{q 4423}# #{lev 4409}#)))) #{tmp 4430}#) (let ((#{_ 4436}# #{tmp 4424}#)) (#{quasicons 4399}# (#{quasi 4395}# #{p 4422}# #{lev 4409}#) (#{quasi 4395}# #{q 4423}# #{lev 4409}#))))))))) #{tmp 4419}#) (let ((#{tmp 4437}# ($sc-dispatch #{tmp 4412}# '#(vector each-any)))) (if #{tmp 4437}# (@apply (lambda (#{x 4439}#) (#{quasivector 4405}# (#{vquasi 4397}# #{x 4439}# #{lev 4409}#))) #{tmp 4437}#) (let ((#{p 4442}# #{tmp 4412}#)) (list '#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4441")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4410" "i4411")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{p 4442}#))))))))))))) (#{vquasi 4397}# (lambda (#{p 4443}# #{lev 4444}#) (let ((#{tmp 4447}# #{p 4443}#)) (let ((#{tmp 4448}# ($sc-dispatch #{tmp 4447}# '(any . any)))) (if #{tmp 4448}# (@apply (lambda (#{p 4451}# #{q 4452}#) (let ((#{tmp 4453}# #{p 4451}#)) (let ((#{tmp 4454}# ($sc-dispatch #{tmp 4453}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) . each-any)))) (if #{tmp 4454}# (@apply (lambda (#{p 4456}#) (if (= #{lev 4444}# 0) (#{quasilist* 4403}# (map (lambda (#{tmp 4457}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{tmp 4457}#)) #{p 4456}#) (#{vquasi 4397}# #{q 4452}# #{lev 4444}#)) (#{quasicons 4399}# (#{quasicons 4399}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4455")) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) (#{quasi 4395}# #{p 4456}# (#{1-}# #{lev 4444}#))) (#{vquasi 4397}# #{q 4452}# #{lev 4444}#)))) #{tmp 4454}#) (let ((#{tmp 4459}# ($sc-dispatch #{tmp 4453}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) . each-any)))) (if #{tmp 4459}# (@apply (lambda (#{p 4461}#) (if (= #{lev 4444}# 0) (#{quasiappend 4401}# (map (lambda (#{tmp 4462}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4460")) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{tmp 4462}#)) #{p 4461}#) (#{vquasi 4397}# #{q 4452}# #{lev 4444}#)) (#{quasicons 4399}# (#{quasicons 4399}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4460")) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4460")) #(ribcage #(p q) #((top) (top)) #("i4449" "i4450")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile))) (#{quasi 4395}# #{p 4461}# (#{1-}# #{lev 4444}#))) (#{vquasi 4397}# #{q 4452}# #{lev 4444}#)))) #{tmp 4459}#) (let ((#{_ 4465}# #{tmp 4453}#)) (#{quasicons 4399}# (#{quasi 4395}# #{p 4451}# #{lev 4444}#) (#{vquasi 4397}# #{q 4452}# #{lev 4444}#))))))))) #{tmp 4448}#) (let ((#{tmp 4466}# ($sc-dispatch #{tmp 4447}# '()))) (if #{tmp 4466}# (@apply (lambda () '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4445" "i4446")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) ())) #{tmp 4466}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4447}#)))))))) (#{quasicons 4399}# (lambda (#{x 4467}# #{y 4468}#) (let ((#{tmp 4472}# (list #{x 4467}# #{y 4468}#))) (let ((#{tmp 4473}# ($sc-dispatch #{tmp 4472}# '(any any)))) (if #{tmp 4473}# (@apply (lambda (#{x 4476}# #{y 4477}#) (let ((#{tmp 4478}# #{y 4477}#)) (let ((#{tmp 4479}# ($sc-dispatch #{tmp 4478}# '(#(atom "quote") any)))) (if #{tmp 4479}# (@apply (lambda (#{dy 4481}#) (let ((#{tmp 4482}# #{x 4476}#)) (let ((#{tmp 4483}# ($sc-dispatch #{tmp 4482}# '(#(atom "quote") any)))) (if #{tmp 4483}# (@apply (lambda (#{dx 4485}#) (list '#(syntax-object "quote" ((top) #(ribcage #(dx) #((top)) #("i4484")) #(ribcage #(dy) #((top)) #("i4480")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4474" "i4475")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) (cons #{dx 4485}# #{dy 4481}#))) #{tmp 4483}#) (let ((#{_ 4487}# #{tmp 4482}#)) (if (null? #{dy 4481}#) (list '#(syntax-object "list" ((top) #(ribcage #(_) #((top)) #("i4486")) #(ribcage #(dy) #((top)) #("i4480")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4474" "i4475")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{x 4476}#) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4486")) #(ribcage #(dy) #((top)) #("i4480")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4474" "i4475")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{x 4476}# #{y 4477}#))))))) #{tmp 4479}#) (let ((#{tmp 4488}# ($sc-dispatch #{tmp 4478}# '(#(atom "list") . any)))) (if #{tmp 4488}# (@apply (lambda (#{stuff 4490}#) (cons '#(syntax-object "list" ((top) #(ribcage #(stuff) #((top)) #("i4489")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4474" "i4475")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) (cons #{x 4476}# #{stuff 4490}#))) #{tmp 4488}#) (let ((#{tmp 4491}# ($sc-dispatch #{tmp 4478}# '(#(atom "list*") . any)))) (if #{tmp 4491}# (@apply (lambda (#{stuff 4493}#) (cons '#(syntax-object "list*" ((top) #(ribcage #(stuff) #((top)) #("i4492")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4474" "i4475")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) (cons #{x 4476}# #{stuff 4493}#))) #{tmp 4491}#) (let ((#{_ 4495}# #{tmp 4478}#)) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4494")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4474" "i4475")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{x 4476}# #{y 4477}#)))))))))) #{tmp 4473}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4472}#)))))) (#{quasiappend 4401}# (lambda (#{x 4496}# #{y 4497}#) (let ((#{tmp 4500}# #{y 4497}#)) (let ((#{tmp 4501}# ($sc-dispatch #{tmp 4500}# '(#(atom "quote") ())))) (if #{tmp 4501}# (@apply (lambda () (if (null? #{x 4496}#) '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) ()) (if (null? (cdr #{x 4496}#)) (car #{x 4496}#) (let ((#{tmp 4508}# #{x 4496}#)) (let ((#{tmp 4509}# ($sc-dispatch #{tmp 4508}# 'each-any))) (if #{tmp 4509}# (@apply (lambda (#{p 4511}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p) #((top)) #("i4510")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{p 4511}#)) #{tmp 4509}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4508}#))))))) #{tmp 4501}#) (let ((#{_ 4514}# #{tmp 4500}#)) (if (null? #{x 4496}#) #{y 4497}# (let ((#{tmp 4519}# (list #{x 4496}# #{y 4497}#))) (let ((#{tmp 4520}# ($sc-dispatch #{tmp 4519}# '(each-any any)))) (if #{tmp 4520}# (@apply (lambda (#{p 4523}# #{y 4524}#) (cons '#(syntax-object "append" ((top) #(ribcage () () ()) #(ribcage #(p y) #((top) (top)) #("i4521" "i4522")) #(ribcage #(_) #((top)) #("i4513")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4498" "i4499")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) (append #{p 4523}# (list #{y 4524}#)))) #{tmp 4520}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4519}#))))))))))) (#{quasilist* 4403}# (lambda (#{x 4526}# #{y 4527}#) (letrec* ((#{f 4532}# (lambda (#{x 4533}#) (if (null? #{x 4533}#) #{y 4527}# (#{quasicons 4399}# (car #{x 4533}#) (#{f 4532}# (cdr #{x 4533}#))))))) (begin (#{f 4532}# #{x 4526}#))))) (#{quasivector 4405}# (lambda (#{x 4534}#) (let ((#{tmp 4536}# #{x 4534}#)) (let ((#{tmp 4537}# ($sc-dispatch #{tmp 4536}# '(#(atom "quote") each-any)))) (if #{tmp 4537}# (@apply (lambda (#{x 4539}#) (list '#(syntax-object "quote" ((top) #(ribcage #(x) #((top)) #("i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4535")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) (list->vector #{x 4539}#))) #{tmp 4537}#) (let ((#{_ 4542}# #{tmp 4536}#)) (letrec* ((#{f 4546}# (lambda (#{y 4547}# #{k 4548}#) (let ((#{tmp 4559}# #{y 4547}#)) (let ((#{tmp 4560}# ($sc-dispatch #{tmp 4559}# '(#(atom "quote") each-any)))) (if #{tmp 4560}# (@apply (lambda (#{y 4562}#) (#{k 4548}# (map (lambda (#{tmp 4563}#) (list '#(syntax-object "quote" ((top) #(ribcage #(y) #((top)) #("i4561")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4543" "i4544" "i4545")) #(ribcage #(_) #((top)) #("i4541")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4535")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{tmp 4563}#)) #{y 4562}#))) #{tmp 4560}#) (let ((#{tmp 4564}# ($sc-dispatch #{tmp 4559}# '(#(atom "list") . each-any)))) (if #{tmp 4564}# (@apply (lambda (#{y 4566}#) (#{k 4548}# #{y 4566}#)) #{tmp 4564}#) (let ((#{tmp 4568}# ($sc-dispatch #{tmp 4559}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4568}# (@apply (lambda (#{y 4571}# #{z 4572}#) (#{f 4546}# #{z 4572}# (lambda (#{ls 4573}#) (#{k 4548}# (append #{y 4571}# #{ls 4573}#))))) #{tmp 4568}#) (let ((#{else 4577}# #{tmp 4559}#)) (let ((#{tmp 4581}# #{x 4534}#)) (let ((#{ g4578 4583}# #{tmp 4581}#)) (list '#(syntax-object "list->vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4578}#) #((m4579 top)) #("i4582")) #(ribcage #(else) #((top)) #("i4576")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4543" "i4544" "i4545")) #(ribcage #(_) #((top)) #("i4541")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4535")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{ g4578 4583}#)))))))))))))) (begin (#{f 4546}# #{x 4534}# (lambda (#{ls 4549}#) (let ((#{tmp 4554}# #{ls 4549}#)) (let ((#{tmp 4555}# ($sc-dispatch #{tmp 4554}# 'each-any))) (if #{tmp 4555}# (@apply (lambda (#{ g4551 4557}#) (cons '#(syntax-object "vector" ((top) #(ribcage () () ()) #(ribcage #(#{ g4551}#) #((m4552 top)) #("i4556")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ls) #((top)) #("i4550")) #(ribcage #(_) #((top)) #("i4541")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4535")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{ g4551 4557}#)) #{tmp 4555}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4554}#)))))))))))))) (#{emit 4407}# (lambda (#{x 4584}#) (let ((#{tmp 4586}# #{x 4584}#)) (let ((#{tmp 4587}# ($sc-dispatch #{tmp 4586}# '(#(atom "quote") any)))) (if #{tmp 4587}# (@apply (lambda (#{x 4589}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4588")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4585")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{x 4589}#)) #{tmp 4587}#) (let ((#{tmp 4590}# ($sc-dispatch #{tmp 4586}# '(#(atom "list") . each-any)))) (if #{tmp 4590}# (@apply (lambda (#{x 4592}#) (let ((#{tmp 4596}# (map #{emit 4407}# #{x 4592}#))) (let ((#{tmp 4597}# ($sc-dispatch #{tmp 4596}# 'each-any))) (if #{tmp 4597}# (@apply (lambda (#{ g4593 4599}#) (cons '#(syntax-object list ((top) #(ribcage () () ()) #(ribcage #(#{ g4593}#) #((m4594 top)) #("i4598")) #(ribcage #(x) #((top)) #("i4591")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4585")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{ g4593 4599}#)) #{tmp 4597}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4596}#))))) #{tmp 4590}#) (let ((#{tmp 4602}# ($sc-dispatch #{tmp 4586}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp 4602}# (@apply (lambda (#{x 4605}# #{y 4606}#) (letrec* ((#{f 4609}# (lambda (#{x* 4610}#) (if (null? #{x* 4610}#) (#{emit 4407}# #{y 4606}#) (let ((#{tmp 4616}# (list (#{emit 4407}# (car #{x* 4610}#)) (#{f 4609}# (cdr #{x* 4610}#))))) (let ((#{tmp 4617}# ($sc-dispatch #{tmp 4616}# '(any any)))) (if #{tmp 4617}# (@apply (lambda (#{ g4613 4620}# #{ g4612 4621}#) (list '#(syntax-object cons ((top) #(ribcage () () ()) #(ribcage #(#{ g4613}# #{ g4612}#) #((m4614 top) (m4614 top)) #("i4618" "i4619")) #(ribcage () () ()) #(ribcage #(f x*) #((top) (top)) #("i4607" "i4608")) #(ribcage #(x y) #((top) (top)) #("i4603" "i4604")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4585")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{ g4613 4620}# #{ g4612 4621}#)) #{tmp 4617}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4616}#)))))))) (begin (#{f 4609}# #{x 4605}#)))) #{tmp 4602}#) (let ((#{tmp 4622}# ($sc-dispatch #{tmp 4586}# '(#(atom "append") . each-any)))) (if #{tmp 4622}# (@apply (lambda (#{x 4624}#) (let ((#{tmp 4628}# (map #{emit 4407}# #{x 4624}#))) (let ((#{tmp 4629}# ($sc-dispatch #{tmp 4628}# 'each-any))) (if #{tmp 4629}# (@apply (lambda (#{ g4625 4631}#) (cons '#(syntax-object append ((top) #(ribcage () () ()) #(ribcage #(#{ g4625}#) #((m4626 top)) #("i4630")) #(ribcage #(x) #((top)) #("i4623")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4585")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{ g4625 4631}#)) #{tmp 4629}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4628}#))))) #{tmp 4622}#) (let ((#{tmp 4634}# ($sc-dispatch #{tmp 4586}# '(#(atom "vector") . each-any)))) (if #{tmp 4634}# (@apply (lambda (#{x 4636}#) (let ((#{tmp 4640}# (map #{emit 4407}# #{x 4636}#))) (let ((#{tmp 4641}# ($sc-dispatch #{tmp 4640}# 'each-any))) (if #{tmp 4641}# (@apply (lambda (#{ g4637 4643}#) (cons '#(syntax-object vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4637}#) #((m4638 top)) #("i4642")) #(ribcage #(x) #((top)) #("i4635")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4585")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{ g4637 4643}#)) #{tmp 4641}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4640}#))))) #{tmp 4634}#) (let ((#{tmp 4646}# ($sc-dispatch #{tmp 4586}# '(#(atom "list->vector") any)))) (if #{tmp 4646}# (@apply (lambda (#{x 4648}#) (let ((#{tmp 4652}# (#{emit 4407}# #{x 4648}#))) (let ((#{ g4649 4654}# #{tmp 4652}#)) (list '#(syntax-object list->vector ((top) #(ribcage () () ()) #(ribcage #(#{ g4649}#) #((m4650 top)) #("i4653")) #(ribcage #(x) #((top)) #("i4647")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4585")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4406" "i4404" "i4402" "i4400" "i4398" "i4396" "i4394"))) (hygiene guile)) #{ g4649 4654}#)))) #{tmp 4646}#) (let ((#{tmp 4655}# ($sc-dispatch #{tmp 4586}# '(#(atom "value") any)))) (if #{tmp 4655}# (@apply (lambda (#{x 4657}#) #{x 4657}#) #{tmp 4655}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4586}#))))))))))))))))))) (begin (lambda (#{x 4658}#) (let ((#{tmp 4660}# #{x 4658}#)) (let ((#{tmp 4661}# ($sc-dispatch #{tmp 4660}# '(_ any)))) (if #{tmp 4661}# (@apply (lambda (#{e 4663}#) (#{emit 4407}# (#{quasi 4395}# #{e 4663}# 0))) #{tmp 4661}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4660}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x 4664}#) (letrec* ((#{read-file 4667}# (lambda (#{fn 4668}# #{k 4669}#) (begin (let ((#{p 4673}# (open-input-file #{fn 4668}#))) (letrec* ((#{f 4677}# (lambda (#{x 4678}# #{result 4679}#) (if (eof-object? #{x 4678}#) (begin (close-input-port #{p 4673}#) (reverse #{result 4679}#)) (#{f 4677}# (read #{p 4673}#) (cons (datum->syntax #{k 4669}# #{x 4678}#) #{result 4679}#)))))) (begin (#{f 4677}# (read #{p 4673}#) '())))))))) (begin (let ((#{tmp 4680}# #{x 4664}#)) (let ((#{tmp 4681}# ($sc-dispatch #{tmp 4680}# '(any any)))) (if #{tmp 4681}# (@apply (lambda (#{k 4684}# #{filename 4685}#) (begin (let ((#{fn 4687}# (syntax->datum #{filename 4685}#))) (let ((#{tmp 4689}# (#{read-file 4667}# #{fn 4687}# #{filename 4685}#))) (let ((#{tmp 4690}# ($sc-dispatch #{tmp 4689}# 'each-any))) (if #{tmp 4690}# (@apply (lambda (#{exp 4692}#) (cons '#(syntax-object begin ((top) #(ribcage () () ()) #(ribcage #(exp) #((top)) #("i4691")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4686")) #(ribcage #(k filename) #((top) (top)) #("i4682" "i4683")) #(ribcage (read-file) ((top)) ("i4666")) #(ribcage #(x) #((top)) #("i4665"))) (hygiene guile)) #{exp 4692}#)) #{tmp 4690}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4689}#))))))) #{tmp 4681}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4680}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x 4694}#) (let ((#{tmp 4696}# #{x 4694}#)) (let ((#{tmp 4697}# ($sc-dispatch #{tmp 4696}# '(any any)))) (if #{tmp 4697}# (@apply (lambda (#{k 4700}# #{filename 4701}#) (begin (let ((#{fn 4703}# (syntax->datum #{filename 4701}#))) (let ((#{tmp 4705}# (datum->syntax #{filename 4701}# (begin (let ((#{t 4710}# (%search-load-path #{fn 4703}#))) (if #{t 4710}# #{t 4710}# (syntax-violation 'include-from-path "file not found in path" #{x 4694}# #{filename 4701}#))))))) (let ((#{fn 4707}# #{tmp 4705}#)) (list '#(syntax-object include ((top) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4706")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4702")) #(ribcage #(k filename) #((top) (top)) #("i4698" "i4699")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4695"))) (hygiene guile)) #{fn 4707}#)))))) #{tmp 4697}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4696}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x 4712}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x 4712}#)))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x 4714}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x 4714}#)))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x 4716}#) (let ((#{tmp 4718}# #{x 4716}#)) (let ((#{tmp 4719}# ($sc-dispatch #{tmp 4718}# '(_ any any . each-any)))) (if #{tmp 4719}# (@apply (lambda (#{e 4723}# #{m1 4724}# #{m2 4725}#) (let ((#{tmp 4727}# (letrec* ((#{f 4733}# (lambda (#{clause 4734}# #{clauses 4735}#) (if (null? #{clauses 4735}#) (let ((#{tmp 4737}# #{clause 4734}#)) (let ((#{tmp 4738}# ($sc-dispatch #{tmp 4737}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile))) any . each-any)))) (if #{tmp 4738}# (@apply (lambda (#{e1 4741}# #{e2 4742}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4739" "i4740")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (cons #{e1 4741}# #{e2 4742}#))) #{tmp 4738}#) (let ((#{tmp 4744}# ($sc-dispatch #{tmp 4737}# '(each-any any . each-any)))) (if #{tmp 4744}# (@apply (lambda (#{k 4748}# #{e1 4749}# #{e2 4750}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4745" "i4746" "i4747")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4745" "i4746" "i4747")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4745" "i4746" "i4747")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4745" "i4746" "i4747")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) #{k 4748}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4745" "i4746" "i4747")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (cons #{e1 4749}# #{e2 4750}#)))) #{tmp 4744}#) (let ((#{_ 4754}# #{tmp 4737}#)) (syntax-violation 'case "bad clause" #{x 4716}# #{clause 4734}#))))))) (let ((#{tmp 4756}# (#{f 4733}# (car #{clauses 4735}#) (cdr #{clauses 4735}#)))) (let ((#{rest 4758}# #{tmp 4756}#)) (let ((#{tmp 4759}# #{clause 4734}#)) (let ((#{tmp 4760}# ($sc-dispatch #{tmp 4759}# '(each-any any . each-any)))) (if #{tmp 4760}# (@apply (lambda (#{k 4764}# #{e1 4765}# #{e2 4766}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4757")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4757")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4757")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4757")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) #{k 4764}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4761" "i4762" "i4763")) #(ribcage () () ()) #(ribcage #(rest) #((top)) #("i4757")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4730" "i4731" "i4732")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (cons #{e1 4765}# #{e2 4766}#)) #{rest 4758}#)) #{tmp 4760}#) (let ((#{_ 4770}# #{tmp 4759}#)) (syntax-violation 'case "bad clause" #{x 4716}# #{clause 4734}#))))))))))) (begin (#{f 4733}# #{m1 4724}# #{m2 4725}#))))) (let ((#{body 4729}# #{tmp 4727}#)) (list '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4728")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage () () ()) #(ribcage #(body) #((top)) #("i4728")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4720" "i4721" "i4722")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4717"))) (hygiene guile)) #{e 4723}#)) #{body 4729}#)))) #{tmp 4719}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4718}#))))))) (define make-variable-transformer (lambda (#{proc 4771}#) (if (procedure? #{proc 4771}#) (begin (letrec* ((#{trans 4774}# (lambda (#{x 4775}#) (#{proc 4771}# #{x 4775}#)))) (begin (set-procedure-property! #{trans 4774}# 'variable-transformer #t) #{trans 4774}#))) (error "variable transformer not a procedure" #{proc 4771}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x 4777}#) (let ((#{tmp 4779}# #{x 4777}#)) (let ((#{tmp 4780}# ($sc-dispatch #{tmp 4779}# '(_ any)))) (if #{tmp 4780}# (@apply (lambda (#{e 4782}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #{e 4782}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) (cons #{e 4782}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4781")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile))))))))) #{tmp 4780}#) (let ((#{tmp 4783}# ($sc-dispatch #{tmp 4779}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile))) any any) any))))) (if (if #{tmp 4783}# (@apply (lambda (#{id 4789}# #{exp1 4790}# #{var 4791}# #{val 4792}# #{exp2 4793}#) (if (identifier? #{id 4789}#) (identifier? #{var 4791}#) #f)) #{tmp 4783}#) #f) (@apply (lambda (#{id 4801}# #{exp1 4802}# #{var 4803}# #{val 4804}# #{exp2 4805}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #{var 4803}# #{val 4804}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #{exp2 4805}#)) (list (cons #{id 4801}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) (cons #{exp1 4802}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)))))) (list #{id 4801}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #{id 4801}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4796" "i4797" "i4798" "i4799" "i4800")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #{exp1 4802}#)))))) #{tmp 4783}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4779}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x 4806}#) (let ((#{tmp 4808}# #{x 4806}#)) (let ((#{tmp 4809}# ($sc-dispatch #{tmp 4808}# '(_ (any . any) any . each-any)))) (if #{tmp 4809}# (@apply (lambda (#{id 4814}# #{args 4815}# #{b0 4816}# #{b1 4817}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4810" "i4811" "i4812" "i4813")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4807"))) (hygiene guile)) #{id 4814}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4810" "i4811" "i4812" "i4813")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4807"))) (hygiene guile)) (cons #{args 4815}# (cons #{b0 4816}# #{b1 4817}#))))) #{tmp 4809}#) (let ((#{tmp 4819}# ($sc-dispatch #{tmp 4808}# '(_ any any)))) (if (if #{tmp 4819}# (@apply (lambda (#{id 4822}# #{val 4823}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4820" "i4821")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4807"))) (hygiene guile)))) #{tmp 4819}#) #f) (@apply (lambda (#{id 4826}# #{val 4827}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4824" "i4825")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4807"))) (hygiene guile)) #{id 4826}# #{val 4827}#)) #{tmp 4819}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp 4808}#)))))))))