(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec* ((#{and-map*\ 36}# (lambda (#{f\ 200}# #{first\ 201}# . #{rest\ 202}#) (begin (let ((#{t\ 208}# (null? #{first\ 201}#))) (if #{t\ 208}# #{t\ 208}# (if (null? #{rest\ 202}#) (letrec* ((#{andmap\ 212}# (lambda (#{first\ 213}#) (begin (let ((#{x\ 216}# (car #{first\ 213}#)) (#{first\ 217}# (cdr #{first\ 213}#))) (if (null? #{first\ 217}#) (#{f\ 200}# #{x\ 216}#) (if (#{f\ 200}# #{x\ 216}#) (#{andmap\ 212}# #{first\ 217}#) #f))))))) (begin (#{andmap\ 212}# #{first\ 201}#))) (letrec* ((#{andmap\ 223}# (lambda (#{first\ 224}# #{rest\ 225}#) (begin (let ((#{x\ 230}# (car #{first\ 224}#)) (#{xr\ 231}# (map car #{rest\ 225}#)) (#{first\ 232}# (cdr #{first\ 224}#)) (#{rest\ 233}# (map cdr #{rest\ 225}#))) (if (null? #{first\ 232}#) (@apply #{f\ 200}# #{x\ 230}# #{xr\ 231}#) (if (@apply #{f\ 200}# #{x\ 230}# #{xr\ 231}#) (#{andmap\ 223}# #{first\ 232}# #{rest\ 233}#) #f))))))) (begin (#{andmap\ 223}# #{first\ 201}# #{rest\ 202}#)))))))))) (begin (let ((#{make-primitive-ref\ 242}# (if #f #f)) (#{fx+\ 281}# (if #f #f)) (#{fx-\ 283}# (if #f #f)) (#{fx=\ 285}# (if #f #f)) (#{fx<\ 287}# (if #f #f)) (#{set-syntax-object-expression!\ 352}# (if #f #f)) (#{set-syntax-object-wrap!\ 354}# (if #f #f)) (#{set-syntax-object-module!\ 356}# (if #f #f)) (#{ribcage?\ 398}# (if #f #f))) (letrec* ((#{make-void\ 238}# (lambda (#{src\ 750}#) (make-struct/no-tail (vector-ref %expanded-vtables 0) #{src\ 750}#))) (#{make-const\ 240}# (lambda (#{src\ 752}# #{exp\ 753}#) (make-struct/no-tail (vector-ref %expanded-vtables 1) #{src\ 752}# #{exp\ 753}#))) (#{make-lexical-ref\ 244}# (lambda (#{src\ 760}# #{name\ 761}# #{gensym\ 762}#) (make-struct/no-tail (vector-ref %expanded-vtables 3) #{src\ 760}# #{name\ 761}# #{gensym\ 762}#))) (#{make-lexical-set\ 246}# (lambda (#{src\ 766}# #{name\ 767}# #{gensym\ 768}# #{exp\ 769}#) (make-struct/no-tail (vector-ref %expanded-vtables 4) #{src\ 766}# #{name\ 767}# #{gensym\ 768}# #{exp\ 769}#))) (#{make-module-ref\ 248}# (lambda (#{src\ 774}# #{mod\ 775}# #{name\ 776}# #{public?\ 777}#) (make-struct/no-tail (vector-ref %expanded-vtables 5) #{src\ 774}# #{mod\ 775}# #{name\ 776}# #{public?\ 777}#))) (#{make-module-set\ 250}# (lambda (#{src\ 782}# #{mod\ 783}# #{name\ 784}# #{public?\ 785}# #{exp\ 786}#) (make-struct/no-tail (vector-ref %expanded-vtables 6) #{src\ 782}# #{mod\ 783}# #{name\ 784}# #{public?\ 785}# #{exp\ 786}#))) (#{make-toplevel-ref\ 252}# (lambda (#{src\ 792}# #{name\ 793}#) (make-struct/no-tail (vector-ref %expanded-vtables 7) #{src\ 792}# #{name\ 793}#))) (#{make-toplevel-set\ 254}# (lambda (#{src\ 796}# #{name\ 797}# #{exp\ 798}#) (make-struct/no-tail (vector-ref %expanded-vtables 8) #{src\ 796}# #{name\ 797}# #{exp\ 798}#))) (#{make-toplevel-define\ 256}# (lambda (#{src\ 802}# #{name\ 803}# #{exp\ 804}#) (make-struct/no-tail (vector-ref %expanded-vtables 9) #{src\ 802}# #{name\ 803}# #{exp\ 804}#))) (#{make-conditional\ 258}# (lambda (#{src\ 808}# #{test\ 809}# #{consequent\ 810}# #{alternate\ 811}#) (make-struct/no-tail (vector-ref %expanded-vtables 10) #{src\ 808}# #{test\ 809}# #{consequent\ 810}# #{alternate\ 811}#))) (#{make-application\ 260}# (lambda (#{src\ 816}# #{proc\ 817}# #{args\ 818}#) (make-struct/no-tail (vector-ref %expanded-vtables 11) #{src\ 816}# #{proc\ 817}# #{args\ 818}#))) (#{make-sequence\ 262}# (lambda (#{src\ 822}# #{exps\ 823}#) (make-struct/no-tail (vector-ref %expanded-vtables 12) #{src\ 822}# #{exps\ 823}#))) (#{make-lambda\ 264}# (lambda (#{src\ 826}# #{meta\ 827}# #{body\ 828}#) (make-struct/no-tail (vector-ref %expanded-vtables 13) #{src\ 826}# #{meta\ 827}# #{body\ 828}#))) (#{make-lambda-case\ 266}# (lambda (#{src\ 832}# #{req\ 833}# #{opt\ 834}# #{rest\ 835}# #{kw\ 836}# #{inits\ 837}# #{gensyms\ 838}# #{body\ 839}# #{alternate\ 840}#) (make-struct/no-tail (vector-ref %expanded-vtables 14) #{src\ 832}# #{req\ 833}# #{opt\ 834}# #{rest\ 835}# #{kw\ 836}# #{inits\ 837}# #{gensyms\ 838}# #{body\ 839}# #{alternate\ 840}#))) (#{make-let\ 268}# (lambda (#{src\ 850}# #{names\ 851}# #{gensyms\ 852}# #{vals\ 853}# #{body\ 854}#) (make-struct/no-tail (vector-ref %expanded-vtables 15) #{src\ 850}# #{names\ 851}# #{gensyms\ 852}# #{vals\ 853}# #{body\ 854}#))) (#{make-letrec\ 270}# (lambda (#{src\ 860}# #{in-order?\ 861}# #{names\ 862}# #{gensyms\ 863}# #{vals\ 864}# #{body\ 865}#) (make-struct/no-tail (vector-ref %expanded-vtables 16) #{src\ 860}# #{in-order?\ 861}# #{names\ 862}# #{gensyms\ 863}# #{vals\ 864}# #{body\ 865}#))) (#{make-dynlet\ 272}# (lambda (#{src\ 872}# #{fluids\ 873}# #{vals\ 874}# #{body\ 875}#) (make-struct/no-tail (vector-ref %expanded-vtables 17) #{src\ 872}# #{fluids\ 873}# #{vals\ 874}# #{body\ 875}#))) (#{lambda?\ 275}# (lambda (#{x\ 880}#) (if (struct? #{x\ 880}#) (eq? (struct-vtable #{x\ 880}#) (vector-ref %expanded-vtables 13)) #f))) (#{lambda-meta\ 277}# (lambda (#{x\ 884}#) (struct-ref #{x\ 884}# 1))) (#{set-lambda-meta!\ 279}# (lambda (#{x\ 886}# #{v\ 887}#) (struct-set! #{x\ 886}# 1 #{v\ 887}#))) (#{top-level-eval-hook\ 289}# (lambda (#{x\ 890}# #{mod\ 891}#) (primitive-eval #{x\ 890}#))) (#{local-eval-hook\ 291}# (lambda (#{x\ 894}# #{mod\ 895}#) (primitive-eval #{x\ 894}#))) (#{put-global-definition-hook\ 294}# (lambda (#{symbol\ 898}# #{type\ 899}# #{val\ 900}#) (module-define! (current-module) #{symbol\ 898}# (make-syntax-transformer #{symbol\ 898}# #{type\ 899}# #{val\ 900}#)))) (#{get-global-definition-hook\ 296}# (lambda (#{symbol\ 904}# #{module\ 905}#) (begin (if (if (not #{module\ 905}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol\ 904}#)) (begin (let ((#{v\ 911}# (module-variable (if #{module\ 905}# (resolve-module (cdr #{module\ 905}#)) (current-module)) #{symbol\ 904}#))) (if #{v\ 911}# (if (variable-bound? #{v\ 911}#) (begin (let ((#{val\ 916}# (variable-ref #{v\ 911}#))) (if (macro? #{val\ 916}#) (if (macro-type #{val\ 916}#) (cons (macro-type #{val\ 916}#) (macro-binding #{val\ 916}#)) #f) #f))) #f) #f)))))) (#{decorate-source\ 298}# (lambda (#{e\ 920}# #{s\ 921}#) (begin (if (if (pair? #{e\ 920}#) #{s\ 921}# #f) (set-source-properties! #{e\ 920}# #{s\ 921}#)) #{e\ 920}#))) (#{maybe-name-value!\ 300}# (lambda (#{name\ 926}# #{val\ 927}#) (if (#{lambda?\ 275}# #{val\ 927}#) (begin (let ((#{meta\ 931}# (#{lambda-meta\ 277}# #{val\ 927}#))) (if (not (assq (quote name) #{meta\ 931}#)) (#{set-lambda-meta!\ 279}# #{val\ 927}# (cons (cons (quote name) #{name\ 926}#) #{meta\ 931}#)))))))) (#{build-void\ 302}# (lambda (#{source\ 932}#) (#{make-void\ 238}# #{source\ 932}#))) (#{build-application\ 304}# (lambda (#{source\ 934}# #{fun-exp\ 935}# #{arg-exps\ 936}#) (#{make-application\ 260}# #{source\ 934}# #{fun-exp\ 935}# #{arg-exps\ 936}#))) (#{build-conditional\ 306}# (lambda (#{source\ 940}# #{test-exp\ 941}# #{then-exp\ 942}# #{else-exp\ 943}#) (#{make-conditional\ 258}# #{source\ 940}# #{test-exp\ 941}# #{then-exp\ 942}# #{else-exp\ 943}#))) (#{build-dynlet\ 308}# (lambda (#{source\ 948}# #{fluids\ 949}# #{vals\ 950}# #{body\ 951}#) (#{make-dynlet\ 272}# #{source\ 948}# #{fluids\ 949}# #{vals\ 950}# #{body\ 951}#))) (#{build-lexical-reference\ 310}# (lambda (#{type\ 956}# #{source\ 957}# #{name\ 958}# #{var\ 959}#) (#{make-lexical-ref\ 244}# #{source\ 957}# #{name\ 958}# #{var\ 959}#))) (#{build-lexical-assignment\ 312}# (lambda (#{source\ 964}# #{name\ 965}# #{var\ 966}# #{exp\ 967}#) (begin (#{maybe-name-value!\ 300}# #{name\ 965}# #{exp\ 967}#) (#{make-lexical-set\ 246}# #{source\ 964}# #{name\ 965}# #{var\ 966}# #{exp\ 967}#)))) (#{analyze-variable\ 314}# (lambda (#{mod\ 972}# #{var\ 973}# #{modref-cont\ 974}# #{bare-cont\ 975}#) (if (not #{mod\ 972}#) (#{bare-cont\ 975}# #{var\ 973}#) (begin (let ((#{kind\ 982}# (car #{mod\ 972}#)) (#{mod\ 983}# (cdr #{mod\ 972}#))) (if (eqv? #{kind\ 982}# (quote public)) (#{modref-cont\ 974}# #{mod\ 983}# #{var\ 973}# #t) (if (eqv? #{kind\ 982}# (quote private)) (if (not (equal? #{mod\ 983}# (module-name (current-module)))) (#{modref-cont\ 974}# #{mod\ 983}# #{var\ 973}# #f) (#{bare-cont\ 975}# #{var\ 973}#)) (if (eqv? #{kind\ 982}# (quote bare)) (#{bare-cont\ 975}# #{var\ 973}#) (if (eqv? #{kind\ 982}# (quote hygiene)) (if (if (not (equal? #{mod\ 983}# (module-name (current-module)))) (module-variable (resolve-module #{mod\ 983}#) #{var\ 973}#) #f) (#{modref-cont\ 974}# #{mod\ 983}# #{var\ 973}# #f) (#{bare-cont\ 975}# #{var\ 973}#)) (syntax-violation #f "bad module kind" #{var\ 973}# #{mod\ 983}#)))))))))) (#{build-global-reference\ 316}# (lambda (#{source\ 991}# #{var\ 992}# #{mod\ 993}#) (#{analyze-variable\ 314}# #{mod\ 993}# #{var\ 992}# (lambda (#{mod\ 997}# #{var\ 998}# #{public?\ 999}#) (#{make-module-ref\ 248}# #{source\ 991}# #{mod\ 997}# #{var\ 998}# #{public?\ 999}#)) (lambda (#{var\ 1003}#) (#{make-toplevel-ref\ 252}# #{source\ 991}# #{var\ 1003}#))))) (#{build-global-assignment\ 318}# (lambda (#{source\ 1005}# #{var\ 1006}# #{exp\ 1007}# #{mod\ 1008}#) (begin (#{maybe-name-value!\ 300}# #{var\ 1006}# #{exp\ 1007}#) (#{analyze-variable\ 314}# #{mod\ 1008}# #{var\ 1006}# (lambda (#{mod\ 1013}# #{var\ 1014}# #{public?\ 1015}#) (#{make-module-set\ 250}# #{source\ 1005}# #{mod\ 1013}# #{var\ 1014}# #{public?\ 1015}# #{exp\ 1007}#)) (lambda (#{var\ 1019}#) (#{make-toplevel-set\ 254}# #{source\ 1005}# #{var\ 1019}# #{exp\ 1007}#)))))) (#{build-global-definition\ 320}# (lambda (#{source\ 1021}# #{var\ 1022}# #{exp\ 1023}#) (begin (#{maybe-name-value!\ 300}# #{var\ 1022}# #{exp\ 1023}#) (#{make-toplevel-define\ 256}# #{source\ 1021}# #{var\ 1022}# #{exp\ 1023}#)))) (#{build-simple-lambda\ 322}# (lambda (#{src\ 1027}# #{req\ 1028}# #{rest\ 1029}# #{vars\ 1030}# #{meta\ 1031}# #{exp\ 1032}#) (#{make-lambda\ 264}# #{src\ 1027}# #{meta\ 1031}# (#{make-lambda-case\ 266}# #{src\ 1027}# #{req\ 1028}# #f #{rest\ 1029}# #f '() #{vars\ 1030}# #{exp\ 1032}# #f)))) (#{build-case-lambda\ 324}# (lambda (#{src\ 1039}# #{meta\ 1040}# #{body\ 1041}#) (#{make-lambda\ 264}# #{src\ 1039}# #{meta\ 1040}# #{body\ 1041}#))) (#{build-lambda-case\ 326}# (lambda (#{src\ 1045}# #{req\ 1046}# #{opt\ 1047}# #{rest\ 1048}# #{kw\ 1049}# #{inits\ 1050}# #{vars\ 1051}# #{body\ 1052}# #{else-case\ 1053}#) (#{make-lambda-case\ 266}# #{src\ 1045}# #{req\ 1046}# #{opt\ 1047}# #{rest\ 1048}# #{kw\ 1049}# #{inits\ 1050}# #{vars\ 1051}# #{body\ 1052}# #{else-case\ 1053}#))) (#{build-primref\ 328}# (lambda (#{src\ 1063}# #{name\ 1064}#) (if (equal? (module-name (current-module)) '(guile)) (#{make-toplevel-ref\ 252}# #{src\ 1063}# #{name\ 1064}#) (#{make-module-ref\ 248}# #{src\ 1063}# '(guile) #{name\ 1064}# #f)))) (#{build-data\ 330}# (lambda (#{src\ 1067}# #{exp\ 1068}#) (#{make-const\ 240}# #{src\ 1067}# #{exp\ 1068}#))) (#{build-sequence\ 332}# (lambda (#{src\ 1071}# #{exps\ 1072}#) (if (null? (cdr #{exps\ 1072}#)) (car #{exps\ 1072}#) (#{make-sequence\ 262}# #{src\ 1071}# #{exps\ 1072}#)))) (#{build-let\ 334}# (lambda (#{src\ 1075}# #{ids\ 1076}# #{vars\ 1077}# #{val-exps\ 1078}# #{body-exp\ 1079}#) (begin (for-each #{maybe-name-value!\ 300}# #{ids\ 1076}# #{val-exps\ 1078}#) (if (null? #{vars\ 1077}#) #{body-exp\ 1079}# (#{make-let\ 268}# #{src\ 1075}# #{ids\ 1076}# #{vars\ 1077}# #{val-exps\ 1078}# #{body-exp\ 1079}#))))) (#{build-named-let\ 336}# (lambda (#{src\ 1085}# #{ids\ 1086}# #{vars\ 1087}# #{val-exps\ 1088}# #{body-exp\ 1089}#) (begin (let ((#{f\ 1099}# (car #{vars\ 1087}#)) (#{f-name\ 1100}# (car #{ids\ 1086}#)) (#{vars\ 1101}# (cdr #{vars\ 1087}#)) (#{ids\ 1102}# (cdr #{ids\ 1086}#))) (begin (let ((#{proc\ 1104}# (#{build-simple-lambda\ 322}# #{src\ 1085}# #{ids\ 1102}# #f #{vars\ 1101}# '() #{body-exp\ 1089}#))) (begin (#{maybe-name-value!\ 300}# #{f-name\ 1100}# #{proc\ 1104}#) (for-each #{maybe-name-value!\ 300}# #{ids\ 1102}# #{val-exps\ 1088}#) (#{make-letrec\ 270}# #{src\ 1085}# #f (list #{f-name\ 1100}#) (list #{f\ 1099}#) (list #{proc\ 1104}#) (#{build-application\ 304}# #{src\ 1085}# (#{build-lexical-reference\ 310}# 'fun #{src\ 1085}# #{f-name\ 1100}# #{f\ 1099}#) #{val-exps\ 1088}#))))))))) (#{build-letrec\ 338}# (lambda (#{src\ 1105}# #{in-order?\ 1106}# #{ids\ 1107}# #{vars\ 1108}# #{val-exps\ 1109}# #{body-exp\ 1110}#) (if (null? #{vars\ 1108}#) #{body-exp\ 1110}# (begin (for-each #{maybe-name-value!\ 300}# #{ids\ 1107}# #{val-exps\ 1109}#) (#{make-letrec\ 270}# #{src\ 1105}# #{in-order?\ 1106}# #{ids\ 1107}# #{vars\ 1108}# #{val-exps\ 1109}# #{body-exp\ 1110}#))))) (#{make-syntax-object\ 342}# (lambda (#{expression\ 1117}# #{wrap\ 1118}# #{module\ 1119}#) (vector 'syntax-object #{expression\ 1117}# #{wrap\ 1118}# #{module\ 1119}#))) (#{syntax-object?\ 344}# (lambda (#{x\ 1123}#) (if (vector? #{x\ 1123}#) (if (= (vector-length #{x\ 1123}#) 4) (eq? (vector-ref #{x\ 1123}# 0) 'syntax-object) #f) #f))) (#{syntax-object-expression\ 346}# (lambda (#{x\ 1128}#) (vector-ref #{x\ 1128}# 1))) (#{syntax-object-wrap\ 348}# (lambda (#{x\ 1130}#) (vector-ref #{x\ 1130}# 2))) (#{syntax-object-module\ 350}# (lambda (#{x\ 1132}#) (vector-ref #{x\ 1132}# 3))) (#{source-annotation\ 359}# (lambda (#{x\ 1146}#) (if (#{syntax-object?\ 344}# #{x\ 1146}#) (#{source-annotation\ 359}# (#{syntax-object-expression\ 346}# #{x\ 1146}#)) (if (pair? #{x\ 1146}#) (begin (let ((#{props\ 1153}# (source-properties #{x\ 1146}#))) (if (pair? #{props\ 1153}#) #{props\ 1153}# #f))) #f)))) (#{extend-env\ 366}# (lambda (#{labels\ 1155}# #{bindings\ 1156}# #{r\ 1157}#) (if (null? #{labels\ 1155}#) #{r\ 1157}# (#{extend-env\ 366}# (cdr #{labels\ 1155}#) (cdr #{bindings\ 1156}#) (cons (cons (car #{labels\ 1155}#) (car #{bindings\ 1156}#)) #{r\ 1157}#))))) (#{extend-var-env\ 368}# (lambda (#{labels\ 1161}# #{vars\ 1162}# #{r\ 1163}#) (if (null? #{labels\ 1161}#) #{r\ 1163}# (#{extend-var-env\ 368}# (cdr #{labels\ 1161}#) (cdr #{vars\ 1162}#) (cons (cons (car #{labels\ 1161}#) (cons (quote lexical) (car #{vars\ 1162}#))) #{r\ 1163}#))))) (#{macros-only-env\ 370}# (lambda (#{r\ 1168}#) (if (null? #{r\ 1168}#) '() (begin (let ((#{a\ 1171}# (car #{r\ 1168}#))) (if (eq? (car (cdr #{a\ 1171}#)) (quote macro)) (cons #{a\ 1171}# (#{macros-only-env\ 370}# (cdr #{r\ 1168}#))) (#{macros-only-env\ 370}# (cdr #{r\ 1168}#)))))))) (#{lookup\ 372}# (lambda (#{x\ 1172}# #{r\ 1173}# #{mod\ 1174}#) (begin (let ((#{t\ 1180}# (assq #{x\ 1172}# #{r\ 1173}#))) (if #{t\ 1180}# (cdr #{t\ 1180}#) (if (symbol? #{x\ 1172}#) (begin (let ((#{t\ 1186}# (#{get-global-definition-hook\ 296}# #{x\ 1172}# #{mod\ 1174}#))) (if #{t\ 1186}# #{t\ 1186}# (quote (global))))) '(displaced-lexical))))))) (#{global-extend\ 374}# (lambda (#{type\ 1191}# #{sym\ 1192}# #{val\ 1193}#) (#{put-global-definition-hook\ 294}# #{sym\ 1192}# #{type\ 1191}# #{val\ 1193}#))) (#{nonsymbol-id?\ 376}# (lambda (#{x\ 1197}#) (if (#{syntax-object?\ 344}# #{x\ 1197}#) (symbol? (#{syntax-object-expression\ 346}# #{x\ 1197}#)) #f))) (#{id?\ 378}# (lambda (#{x\ 1201}#) (if (symbol? #{x\ 1201}#) #t (if (#{syntax-object?\ 344}# #{x\ 1201}#) (symbol? (#{syntax-object-expression\ 346}# #{x\ 1201}#)) #f)))) (#{id-sym-name&marks\ 381}# (lambda (#{x\ 1208}# #{w\ 1209}#) (if (#{syntax-object?\ 344}# #{x\ 1208}#) (values (#{syntax-object-expression\ 346}# #{x\ 1208}#) (#{join-marks\ 428}# (car #{w\ 1209}#) (car (#{syntax-object-wrap\ 348}# #{x\ 1208}#)))) (values #{x\ 1208}# (car #{w\ 1209}#))))) (#{gen-label\ 391}# (lambda () (symbol->string (gensym "i")))) (#{gen-labels\ 393}# (lambda (#{ls\ 1215}#) (if (null? #{ls\ 1215}#) '() (cons (#{gen-label\ 391}#) (#{gen-labels\ 393}# (cdr #{ls\ 1215}#)))))) (#{make-ribcage\ 396}# (lambda (#{symnames\ 1217}# #{marks\ 1218}# #{labels\ 1219}#) (vector 'ribcage #{symnames\ 1217}# #{marks\ 1218}# #{labels\ 1219}#))) (#{ribcage-symnames\ 400}# (lambda (#{x\ 1228}#) (vector-ref #{x\ 1228}# 1))) (#{ribcage-marks\ 402}# (lambda (#{x\ 1230}#) (vector-ref #{x\ 1230}# 2))) (#{ribcage-labels\ 404}# (lambda (#{x\ 1232}#) (vector-ref #{x\ 1232}# 3))) (#{set-ribcage-symnames!\ 406}# (lambda (#{x\ 1234}# #{update\ 1235}#) (vector-set! #{x\ 1234}# 1 #{update\ 1235}#))) (#{set-ribcage-marks!\ 408}# (lambda (#{x\ 1238}# #{update\ 1239}#) (vector-set! #{x\ 1238}# 2 #{update\ 1239}#))) (#{set-ribcage-labels!\ 410}# (lambda (#{x\ 1242}# #{update\ 1243}#) (vector-set! #{x\ 1242}# 3 #{update\ 1243}#))) (#{anti-mark\ 416}# (lambda (#{w\ 1246}#) (cons (cons #f (car #{w\ 1246}#)) (cons (quote shift) (cdr #{w\ 1246}#))))) (#{extend-ribcage!\ 420}# (lambda (#{ribcage\ 1252}# #{id\ 1253}# #{label\ 1254}#) (begin (#{set-ribcage-symnames!\ 406}# #{ribcage\ 1252}# (cons (#{syntax-object-expression\ 346}# #{id\ 1253}#) (#{ribcage-symnames\ 400}# #{ribcage\ 1252}#))) (#{set-ribcage-marks!\ 408}# #{ribcage\ 1252}# (cons (car (#{syntax-object-wrap\ 348}# #{id\ 1253}#)) (#{ribcage-marks\ 402}# #{ribcage\ 1252}#))) (#{set-ribcage-labels!\ 410}# #{ribcage\ 1252}# (cons #{label\ 1254}# (#{ribcage-labels\ 404}# #{ribcage\ 1252}#)))))) (#{make-binding-wrap\ 422}# (lambda (#{ids\ 1259}# #{labels\ 1260}# #{w\ 1261}#) (if (null? #{ids\ 1259}#) #{w\ 1261}# (cons (car #{w\ 1261}#) (cons (begin (let ((#{labelvec\ 1268}# (list->vector #{labels\ 1260}#))) (begin (let ((#{n\ 1270}# (vector-length #{labelvec\ 1268}#))) (begin (let ((#{symnamevec\ 1273}# (make-vector #{n\ 1270}#)) (#{marksvec\ 1274}# (make-vector #{n\ 1270}#))) (begin (letrec* ((#{f\ 1278}# (lambda (#{ids\ 1279}# #{i\ 1280}#) (if (not (null? #{ids\ 1279}#)) (call-with-values (lambda () (#{id-sym-name&marks\ 381}# (car #{ids\ 1279}#) #{w\ 1261}#)) (lambda (#{symname\ 1281}# #{marks\ 1282}#) (begin (vector-set! #{symnamevec\ 1273}# #{i\ 1280}# #{symname\ 1281}#) (vector-set! #{marksvec\ 1274}# #{i\ 1280}# #{marks\ 1282}#) (#{f\ 1278}# (cdr #{ids\ 1279}#) (#{fx+\ 281}# #{i\ 1280}# 1))))))))) (begin (#{f\ 1278}# #{ids\ 1259}# 0))) (#{make-ribcage\ 396}# #{symnamevec\ 1273}# #{marksvec\ 1274}# #{labelvec\ 1268}#)))))))) (cdr #{w\ 1261}#)))))) (#{smart-append\ 424}# (lambda (#{m1\ 1286}# #{m2\ 1287}#) (if (null? #{m2\ 1287}#) #{m1\ 1286}# (append #{m1\ 1286}# #{m2\ 1287}#)))) (#{join-wraps\ 426}# (lambda (#{w1\ 1290}# #{w2\ 1291}#) (begin (let ((#{m1\ 1296}# (car #{w1\ 1290}#)) (#{s1\ 1297}# (cdr #{w1\ 1290}#))) (if (null? #{m1\ 1296}#) (if (null? #{s1\ 1297}#) #{w2\ 1291}# (cons (car #{w2\ 1291}#) (#{smart-append\ 424}# #{s1\ 1297}# (cdr #{w2\ 1291}#)))) (cons (#{smart-append\ 424}# #{m1\ 1296}# (car #{w2\ 1291}#)) (#{smart-append\ 424}# #{s1\ 1297}# (cdr #{w2\ 1291}#)))))))) (#{join-marks\ 428}# (lambda (#{m1\ 1306}# #{m2\ 1307}#) (#{smart-append\ 424}# #{m1\ 1306}# #{m2\ 1307}#))) (#{same-marks?\ 430}# (lambda (#{x\ 1310}# #{y\ 1311}#) (begin (let ((#{t\ 1316}# (eq? #{x\ 1310}# #{y\ 1311}#))) (if #{t\ 1316}# #{t\ 1316}# (if (not (null? #{x\ 1310}#)) (if (not (null? #{y\ 1311}#)) (if (eq? (car #{x\ 1310}#) (car #{y\ 1311}#)) (#{same-marks?\ 430}# (cdr #{x\ 1310}#) (cdr #{y\ 1311}#)) #f) #f) #f)))))) (#{id-var-name\ 432}# (lambda (#{id\ 1322}# #{w\ 1323}#) (letrec* ((#{search\ 1328}# (lambda (#{sym\ 1344}# #{subst\ 1345}# #{marks\ 1346}#) (if (null? #{subst\ 1345}#) (values #f #{marks\ 1346}#) (begin (let ((#{fst\ 1351}# (car #{subst\ 1345}#))) (if (eq? #{fst\ 1351}# (quote shift)) (#{search\ 1328}# #{sym\ 1344}# (cdr #{subst\ 1345}#) (cdr #{marks\ 1346}#)) (begin (let ((#{symnames\ 1353}# (#{ribcage-symnames\ 400}# #{fst\ 1351}#))) (if (vector? #{symnames\ 1353}#) (#{search-vector-rib\ 1332}# #{sym\ 1344}# #{subst\ 1345}# #{marks\ 1346}# #{symnames\ 1353}# #{fst\ 1351}#) (#{search-list-rib\ 1330}# #{sym\ 1344}# #{subst\ 1345}# #{marks\ 1346}# #{symnames\ 1353}# #{fst\ 1351}#)))))))))) (#{search-list-rib\ 1330}# (lambda (#{sym\ 1354}# #{subst\ 1355}# #{marks\ 1356}# #{symnames\ 1357}# #{ribcage\ 1358}#) (letrec* ((#{f\ 1367}# (lambda (#{symnames\ 1368}# #{i\ 1369}#) (if (null? #{symnames\ 1368}#) (#{search\ 1328}# #{sym\ 1354}# (cdr #{subst\ 1355}#) #{marks\ 1356}#) (if (if (eq? (car #{symnames\ 1368}#) #{sym\ 1354}#) (#{same-marks?\ 430}# #{marks\ 1356}# (list-ref (#{ribcage-marks\ 402}# #{ribcage\ 1358}#) #{i\ 1369}#)) #f) (values (list-ref (#{ribcage-labels\ 404}# #{ribcage\ 1358}#) #{i\ 1369}#) #{marks\ 1356}#) (#{f\ 1367}# (cdr #{symnames\ 1368}#) (#{fx+\ 281}# #{i\ 1369}# 1))))))) (begin (#{f\ 1367}# #{symnames\ 1357}# 0))))) (#{search-vector-rib\ 1332}# (lambda (#{sym\ 1377}# #{subst\ 1378}# #{marks\ 1379}# #{symnames\ 1380}# #{ribcage\ 1381}#) (begin (let ((#{n\ 1388}# (vector-length #{symnames\ 1380}#))) (letrec* ((#{f\ 1391}# (lambda (#{i\ 1392}#) (if (#{fx=\ 285}# #{i\ 1392}# #{n\ 1388}#) (#{search\ 1328}# #{sym\ 1377}# (cdr #{subst\ 1378}#) #{marks\ 1379}#) (if (if (eq? (vector-ref #{symnames\ 1380}# #{i\ 1392}#) #{sym\ 1377}#) (#{same-marks?\ 430}# #{marks\ 1379}# (vector-ref (#{ribcage-marks\ 402}# #{ribcage\ 1381}#) #{i\ 1392}#)) #f) (values (vector-ref (#{ribcage-labels\ 404}# #{ribcage\ 1381}#) #{i\ 1392}#) #{marks\ 1379}#) (#{f\ 1391}# (#{fx+\ 281}# #{i\ 1392}# 1))))))) (begin (#{f\ 1391}# 0)))))))) (begin (if (symbol? #{id\ 1322}#) (begin (let ((#{t\ 1402}# (call-with-values (lambda () (#{search\ 1328}# #{id\ 1322}# (cdr #{w\ 1323}#) (car #{w\ 1323}#))) (lambda (#{x\ 1406}# . #{ignore\ 1407}#) #{x\ 1406}#)))) (if #{t\ 1402}# #{t\ 1402}# #{id\ 1322}#))) (if (#{syntax-object?\ 344}# #{id\ 1322}#) (begin (let ((#{id\ 1415}# (#{syntax-object-expression\ 346}# #{id\ 1322}#)) (#{w1\ 1416}# (#{syntax-object-wrap\ 348}# #{id\ 1322}#))) (begin (let ((#{marks\ 1418}# (#{join-marks\ 428}# (car #{w\ 1323}#) (car #{w1\ 1416}#)))) (call-with-values (lambda () (#{search\ 1328}# #{id\ 1415}# (cdr #{w\ 1323}#) #{marks\ 1418}#)) (lambda (#{new-id\ 1422}# #{marks\ 1423}#) (begin (let ((#{t\ 1428}# #{new-id\ 1422}#)) (if #{t\ 1428}# #{t\ 1428}# (begin (let ((#{t\ 1431}# (call-with-values (lambda () (#{search\ 1328}# #{id\ 1415}# (cdr #{w1\ 1416}#) #{marks\ 1423}#)) (lambda (#{x\ 1434}# . #{ignore\ 1435}#) #{x\ 1434}#)))) (if #{t\ 1431}# #{t\ 1431}# #{id\ 1415}#)))))))))))) (syntax-violation 'id-var-name "invalid id" #{id\ 1322}#))))))) (#{free-id=?\ 434}# (lambda (#{i\ 1440}# #{j\ 1441}#) (if (eq? (begin (let ((#{x\ 1447}# #{i\ 1440}#)) (if (#{syntax-object?\ 344}# #{x\ 1447}#) (#{syntax-object-expression\ 346}# #{x\ 1447}#) #{x\ 1447}#))) (begin (let ((#{x\ 1450}# #{j\ 1441}#)) (if (#{syntax-object?\ 344}# #{x\ 1450}#) (#{syntax-object-expression\ 346}# #{x\ 1450}#) #{x\ 1450}#)))) (eq? (#{id-var-name\ 432}# #{i\ 1440}# (quote (()))) (#{id-var-name\ 432}# #{j\ 1441}# (quote (())))) #f))) (#{bound-id=?\ 436}# (lambda (#{i\ 1454}# #{j\ 1455}#) (if (if (#{syntax-object?\ 344}# #{i\ 1454}#) (#{syntax-object?\ 344}# #{j\ 1455}#) #f) (if (eq? (#{syntax-object-expression\ 346}# #{i\ 1454}#) (#{syntax-object-expression\ 346}# #{j\ 1455}#)) (#{same-marks?\ 430}# (car (#{syntax-object-wrap\ 348}# #{i\ 1454}#)) (car (#{syntax-object-wrap\ 348}# #{j\ 1455}#))) #f) (eq? #{i\ 1454}# #{j\ 1455}#)))) (#{valid-bound-ids?\ 438}# (lambda (#{ids\ 1464}#) (if (letrec* ((#{all-ids?\ 1469}# (lambda (#{ids\ 1470}#) (begin (let ((#{t\ 1473}# (null? #{ids\ 1470}#))) (if #{t\ 1473}# #{t\ 1473}# (if (#{id?\ 378}# (car #{ids\ 1470}#)) (#{all-ids?\ 1469}# (cdr #{ids\ 1470}#)) #f))))))) (begin (#{all-ids?\ 1469}# #{ids\ 1464}#))) (#{distinct-bound-ids?\ 440}# #{ids\ 1464}#) #f))) (#{distinct-bound-ids?\ 440}# (lambda (#{ids\ 1478}#) (letrec* ((#{distinct?\ 1482}# (lambda (#{ids\ 1483}#) (begin (let ((#{t\ 1486}# (null? #{ids\ 1483}#))) (if #{t\ 1486}# #{t\ 1486}# (if (not (#{bound-id-member?\ 442}# (car #{ids\ 1483}#) (cdr #{ids\ 1483}#))) (#{distinct?\ 1482}# (cdr #{ids\ 1483}#)) #f))))))) (begin (#{distinct?\ 1482}# #{ids\ 1478}#))))) (#{bound-id-member?\ 442}# (lambda (#{x\ 1490}# #{list\ 1491}#) (if (not (null? #{list\ 1491}#)) (begin (let ((#{t\ 1498}# (#{bound-id=?\ 436}# #{x\ 1490}# (car #{list\ 1491}#)))) (if #{t\ 1498}# #{t\ 1498}# (#{bound-id-member?\ 442}# #{x\ 1490}# (cdr #{list\ 1491}#))))) #f))) (#{wrap\ 444}# (lambda (#{x\ 1500}# #{w\ 1501}# #{defmod\ 1502}#) (if (if (null? (car #{w\ 1501}#)) (null? (cdr #{w\ 1501}#)) #f) #{x\ 1500}# (if (#{syntax-object?\ 344}# #{x\ 1500}#) (#{make-syntax-object\ 342}# (#{syntax-object-expression\ 346}# #{x\ 1500}#) (#{join-wraps\ 426}# #{w\ 1501}# (#{syntax-object-wrap\ 348}# #{x\ 1500}#)) (#{syntax-object-module\ 350}# #{x\ 1500}#)) (if (null? #{x\ 1500}#) #{x\ 1500}# (#{make-syntax-object\ 342}# #{x\ 1500}# #{w\ 1501}# #{defmod\ 1502}#)))))) (#{source-wrap\ 446}# (lambda (#{x\ 1517}# #{w\ 1518}# #{s\ 1519}# #{defmod\ 1520}#) (#{wrap\ 444}# (#{decorate-source\ 298}# #{x\ 1517}# #{s\ 1519}#) #{w\ 1518}# #{defmod\ 1520}#))) (#{chi-sequence\ 448}# (lambda (#{body\ 1525}# #{r\ 1526}# #{w\ 1527}# #{s\ 1528}# #{mod\ 1529}#) (#{build-sequence\ 332}# #{s\ 1528}# (letrec* ((#{dobody\ 1540}# (lambda (#{body\ 1541}# #{r\ 1542}# #{w\ 1543}# #{mod\ 1544}#) (if (null? #{body\ 1541}#) '() (begin (let ((#{first\ 1546}# (#{chi\ 460}# (car #{body\ 1541}#) #{r\ 1542}# #{w\ 1543}# #{mod\ 1544}#))) (cons #{first\ 1546}# (#{dobody\ 1540}# (cdr #{body\ 1541}#) #{r\ 1542}# #{w\ 1543}# #{mod\ 1544}#)))))))) (begin (#{dobody\ 1540}# #{body\ 1525}# #{r\ 1526}# #{w\ 1527}# #{mod\ 1529}#)))))) (#{chi-top-sequence\ 450}# (lambda (#{body\ 1547}# #{r\ 1548}# #{w\ 1549}# #{s\ 1550}# #{m\ 1551}# #{esew\ 1552}# #{mod\ 1553}#) (#{build-sequence\ 332}# #{s\ 1550}# (letrec* ((#{dobody\ 1569}# (lambda (#{body\ 1570}# #{r\ 1571}# #{w\ 1572}# #{m\ 1573}# #{esew\ 1574}# #{mod\ 1575}# #{out\ 1576}#) (if (null? #{body\ 1570}#) (reverse #{out\ 1576}#) (#{dobody\ 1569}# (cdr #{body\ 1570}#) #{r\ 1571}# #{w\ 1572}# #{m\ 1573}# #{esew\ 1574}# #{mod\ 1575}# (cons (#{chi-top\ 458}# (car #{body\ 1570}#) #{r\ 1571}# #{w\ 1572}# #{m\ 1573}# #{esew\ 1574}# #{mod\ 1575}#) #{out\ 1576}#)))))) (begin (#{dobody\ 1569}# #{body\ 1547}# #{r\ 1548}# #{w\ 1549}# #{m\ 1551}# #{esew\ 1552}# #{mod\ 1553}# '())))))) (#{chi-install-global\ 452}# (lambda (#{name\ 1577}# #{e\ 1578}#) (#{build-global-definition\ 320}# #f #{name\ 1577}# (#{build-application\ 304}# #f (#{build-primref\ 328}# #f 'make-syntax-transformer) (list (#{build-data\ 330}# #f #{name\ 1577}#) (#{build-data\ 330}# #f (quote macro)) #{e\ 1578}#))))) (#{chi-when-list\ 454}# (lambda (#{e\ 1586}# #{when-list\ 1587}# #{w\ 1588}#) (letrec* ((#{f\ 1595}# (lambda (#{when-list\ 1596}# #{situations\ 1597}#) (if (null? #{when-list\ 1596}#) #{situations\ 1597}# (#{f\ 1595}# (cdr #{when-list\ 1596}#) (cons (begin (let ((#{x\ 1599}# (car #{when-list\ 1596}#))) (if (#{free-id=?\ 434}# #{x\ 1599}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1598")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1592" "i1593" "i1594")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1589" "i1590" "i1591")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'compile (if (#{free-id=?\ 434}# #{x\ 1599}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1598")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1592" "i1593" "i1594")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1589" "i1590" "i1591")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'load (if (#{free-id=?\ 434}# #{x\ 1599}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1598")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1592" "i1593" "i1594")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1589" "i1590" "i1591")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'eval (if (#{free-id=?\ 434}# #{x\ 1599}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1598")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1592" "i1593" "i1594")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1589" "i1590" "i1591")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e\ 1586}# (#{wrap\ 444}# #{x\ 1599}# #{w\ 1588}# #f)))))))) #{situations\ 1597}#)))))) (begin (#{f\ 1595}# #{when-list\ 1587}# (quote ())))))) (#{syntax-type\ 456}# (lambda (#{e\ 1609}# #{r\ 1610}# #{w\ 1611}# #{s\ 1612}# #{rib\ 1613}# #{mod\ 1614}# #{for-car?\ 1615}#) (if (symbol? #{e\ 1609}#) (begin (let ((#{n\ 1627}# (#{id-var-name\ 432}# #{e\ 1609}# #{w\ 1611}#))) (begin (let ((#{b\ 1629}# (#{lookup\ 372}# #{n\ 1627}# #{r\ 1610}# #{mod\ 1614}#))) (begin (let ((#{type\ 1631}# (car #{b\ 1629}#))) (if (eqv? #{type\ 1631}# (quote lexical)) (values #{type\ 1631}# (cdr #{b\ 1629}#) #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{type\ 1631}# (quote global)) (values #{type\ 1631}# #{n\ 1627}# #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{type\ 1631}# (quote macro)) (if #{for-car?\ 1615}# (values #{type\ 1631}# (cdr #{b\ 1629}#) #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (#{syntax-type\ 456}# (#{chi-macro\ 466}# (cdr #{b\ 1629}#) #{e\ 1609}# #{r\ 1610}# #{w\ 1611}# #{s\ 1612}# #{rib\ 1613}# #{mod\ 1614}#) #{r\ 1610}# '(()) #{s\ 1612}# #{rib\ 1613}# #{mod\ 1614}# #f)) (values #{type\ 1631}# (cdr #{b\ 1629}#) #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#)))))))))) (if (pair? #{e\ 1609}#) (begin (let ((#{first\ 1645}# (car #{e\ 1609}#))) (call-with-values (lambda () (#{syntax-type\ 456}# #{first\ 1645}# #{r\ 1610}# #{w\ 1611}# #{s\ 1612}# #{rib\ 1613}# #{mod\ 1614}# #t)) (lambda (#{ftype\ 1646}# #{fval\ 1647}# #{fe\ 1648}# #{fw\ 1649}# #{fs\ 1650}# #{fmod\ 1651}#) (if (eqv? #{ftype\ 1646}# (quote lexical)) (values 'lexical-call #{fval\ 1647}# #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{ftype\ 1646}# (quote global)) (values 'global-call (#{make-syntax-object\ 342}# #{fval\ 1647}# #{w\ 1611}# #{fmod\ 1651}#) #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{ftype\ 1646}# (quote macro)) (#{syntax-type\ 456}# (#{chi-macro\ 466}# #{fval\ 1647}# #{e\ 1609}# #{r\ 1610}# #{w\ 1611}# #{s\ 1612}# #{rib\ 1613}# #{mod\ 1614}#) #{r\ 1610}# '(()) #{s\ 1612}# #{rib\ 1613}# #{mod\ 1614}# #{for-car?\ 1615}#) (if (eqv? #{ftype\ 1646}# (quote module-ref)) (call-with-values (lambda () (#{fval\ 1647}# #{e\ 1609}# #{r\ 1610}# #{w\ 1611}#)) (lambda (#{e\ 1663}# #{r\ 1664}# #{w\ 1665}# #{s\ 1666}# #{mod\ 1667}#) (#{syntax-type\ 456}# #{e\ 1663}# #{r\ 1664}# #{w\ 1665}# #{s\ 1666}# #{rib\ 1613}# #{mod\ 1667}# #{for-car?\ 1615}#))) (if (eqv? #{ftype\ 1646}# (quote core)) (values 'core-form #{fval\ 1647}# #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{ftype\ 1646}# 'local-syntax) (values 'local-syntax-form #{fval\ 1647}# #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{ftype\ 1646}# (quote begin)) (values 'begin-form #f #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{ftype\ 1646}# 'eval-when) (values 'eval-when-form #f #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (if (eqv? #{ftype\ 1646}# 'define) (let ((#{tmp\ 1678}# #{e\ 1609}#)) (let ((#{tmp\ 1679}# ($sc-dispatch #{tmp\ 1678}# '(_ any any)))) (if (if #{tmp\ 1679}# (@apply (lambda (#{name\ 1682}# #{val\ 1683}#) (#{id?\ 378}# #{name\ 1682}#)) #{tmp\ 1679}#) #f) (@apply (lambda (#{name\ 1686}# #{val\ 1687}#) (values 'define-form #{name\ 1686}# #{val\ 1687}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#)) #{tmp\ 1679}#) (let ((#{tmp\ 1688}# ($sc-dispatch #{tmp\ 1678}# '(_ (any . any) any . each-any)))) (if (if #{tmp\ 1688}# (@apply (lambda (#{name\ 1693}# #{args\ 1694}# #{e1\ 1695}# #{e2\ 1696}#) (if (#{id?\ 378}# #{name\ 1693}#) (#{valid-bound-ids?\ 438}# (#{lambda-var-list\ 490}# #{args\ 1694}#)) #f)) #{tmp\ 1688}#) #f) (@apply (lambda (#{name\ 1703}# #{args\ 1704}# #{e1\ 1705}# #{e2\ 1706}#) (values 'define-form (#{wrap\ 444}# #{name\ 1703}# #{w\ 1611}# #{mod\ 1614}#) (#{decorate-source\ 298}# (cons '#(syntax-object lambda ((top) #(ribcage #(name args e1 e2) #((top) (top) (top) (top)) #("i1699" "i1700" "i1701" "i1702")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1652" "i1653" "i1654" "i1655" "i1656" "i1657")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1644")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1616" "i1617" "i1618" "i1619" "i1620" "i1621" "i1622")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) (#{wrap\ 444}# (cons #{args\ 1704}# (cons #{e1\ 1705}# #{e2\ 1706}#)) #{w\ 1611}# #{mod\ 1614}#)) #{s\ 1612}#) '(()) #{s\ 1612}# #{mod\ 1614}#)) #{tmp\ 1688}#) (let ((#{tmp\ 1709}# ($sc-dispatch #{tmp\ 1678}# '(_ any)))) (if (if #{tmp\ 1709}# (@apply (lambda (#{name\ 1711}#) (#{id?\ 378}# #{name\ 1711}#)) #{tmp\ 1709}#) #f) (@apply (lambda (#{name\ 1713}#) (values 'define-form (#{wrap\ 444}# #{name\ 1713}# #{w\ 1611}# #{mod\ 1614}#) '(#(syntax-object if ((top) #(ribcage #(name) #((top)) #("i1712")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1652" "i1653" "i1654" "i1655" "i1656" "i1657")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1644")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1616" "i1617" "i1618" "i1619" "i1620" "i1621" "i1622")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1712")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1652" "i1653" "i1654" "i1655" "i1656" "i1657")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1644")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1616" "i1617" "i1618" "i1619" "i1620" "i1621" "i1622")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1712")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1652" "i1653" "i1654" "i1655" "i1656" "i1657")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1644")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1616" "i1617" "i1618" "i1619" "i1620" "i1621" "i1622")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) '(()) #{s\ 1612}# #{mod\ 1614}#)) #{tmp\ 1709}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1678}#)))))))) (if (eqv? #{ftype\ 1646}# 'define-syntax) (let ((#{tmp\ 1716}# #{e\ 1609}#)) (let ((#{tmp\ 1717}# ($sc-dispatch #{tmp\ 1716}# '(_ any any)))) (if (if #{tmp\ 1717}# (@apply (lambda (#{name\ 1720}# #{val\ 1721}#) (#{id?\ 378}# #{name\ 1720}#)) #{tmp\ 1717}#) #f) (@apply (lambda (#{name\ 1724}# #{val\ 1725}#) (values 'define-syntax-form #{name\ 1724}# #{val\ 1725}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#)) #{tmp\ 1717}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1716}#)))) (values 'call #f #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#))))))))))))))) (if (#{syntax-object?\ 344}# #{e\ 1609}#) (#{syntax-type\ 456}# (#{syntax-object-expression\ 346}# #{e\ 1609}#) #{r\ 1610}# (#{join-wraps\ 426}# #{w\ 1611}# (#{syntax-object-wrap\ 348}# #{e\ 1609}#)) (begin (let ((#{t\ 1731}# (#{source-annotation\ 359}# #{e\ 1609}#))) (if #{t\ 1731}# #{t\ 1731}# #{s\ 1612}#))) #{rib\ 1613}# (begin (let ((#{t\ 1735}# (#{syntax-object-module\ 350}# #{e\ 1609}#))) (if #{t\ 1735}# #{t\ 1735}# #{mod\ 1614}#))) #{for-car?\ 1615}#) (if (self-evaluating? #{e\ 1609}#) (values 'constant #f #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#) (values 'other #f #{e\ 1609}# #{w\ 1611}# #{s\ 1612}# #{mod\ 1614}#))))))) (#{chi-top\ 458}# (lambda (#{e\ 1740}# #{r\ 1741}# #{w\ 1742}# #{m\ 1743}# #{esew\ 1744}# #{mod\ 1745}#) (call-with-values (lambda () (#{syntax-type\ 456}# #{e\ 1740}# #{r\ 1741}# #{w\ 1742}# (#{source-annotation\ 359}# #{e\ 1740}#) #f #{mod\ 1745}# #f)) (lambda (#{type\ 1766}# #{value\ 1767}# #{e\ 1768}# #{w\ 1769}# #{s\ 1770}# #{mod\ 1771}#) (if (eqv? #{type\ 1766}# (quote begin-form)) (let ((#{tmp\ 1779}# #{e\ 1768}#)) (let ((#{tmp\ 1780}# ($sc-dispatch #{tmp\ 1779}# (quote (_))))) (if #{tmp\ 1780}# (@apply (lambda () (#{chi-void\ 474}#)) #{tmp\ 1780}#) (let ((#{tmp\ 1781}# ($sc-dispatch #{tmp\ 1779}# '(_ any . each-any)))) (if #{tmp\ 1781}# (@apply (lambda (#{e1\ 1784}# #{e2\ 1785}#) (#{chi-top-sequence\ 450}# (cons #{e1\ 1784}# #{e2\ 1785}#) #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# #{m\ 1743}# #{esew\ 1744}# #{mod\ 1771}#)) #{tmp\ 1781}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1779}#)))))) (if (eqv? #{type\ 1766}# (quote local-syntax-form)) (#{chi-local-syntax\ 470}# #{value\ 1767}# #{e\ 1768}# #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# #{mod\ 1771}# (lambda (#{body\ 1788}# #{r\ 1789}# #{w\ 1790}# #{s\ 1791}# #{mod\ 1792}#) (#{chi-top-sequence\ 450}# #{body\ 1788}# #{r\ 1789}# #{w\ 1790}# #{s\ 1791}# #{m\ 1743}# #{esew\ 1744}# #{mod\ 1792}#))) (if (eqv? #{type\ 1766}# (quote eval-when-form)) (let ((#{tmp\ 1799}# #{e\ 1768}#)) (let ((#{tmp\ 1800}# ($sc-dispatch #{tmp\ 1799}# '(_ each-any any . each-any)))) (if #{tmp\ 1800}# (@apply (lambda (#{x\ 1804}# #{e1\ 1805}# #{e2\ 1806}#) (begin (let ((#{when-list\ 1809}# (#{chi-when-list\ 454}# #{e\ 1768}# #{x\ 1804}# #{w\ 1769}#)) (#{body\ 1810}# (cons #{e1\ 1805}# #{e2\ 1806}#))) (if (eq? #{m\ 1743}# (quote e)) (if (memq 'eval #{when-list\ 1809}#) (#{chi-top-sequence\ 450}# #{body\ 1810}# #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# (if (memq 'expand #{when-list\ 1809}#) 'c&e 'e) '(eval) #{mod\ 1771}#) (begin (if (memq 'expand #{when-list\ 1809}#) (#{top-level-eval-hook\ 289}# (#{chi-top-sequence\ 450}# #{body\ 1810}# #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# 'e '(eval) #{mod\ 1771}#) #{mod\ 1771}#)) (#{chi-void\ 474}#))) (if (memq 'load #{when-list\ 1809}#) (if (begin (let ((#{t\ 1819}# (memq 'compile #{when-list\ 1809}#))) (if #{t\ 1819}# #{t\ 1819}# (begin (let ((#{t\ 1822}# (memq 'expand #{when-list\ 1809}#))) (if #{t\ 1822}# #{t\ 1822}# (if (eq? #{m\ 1743}# 'c&e) (memq 'eval #{when-list\ 1809}#) #f))))))) (#{chi-top-sequence\ 450}# #{body\ 1810}# #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# 'c&e '(compile load) #{mod\ 1771}#) (if (if (eq? #{m\ 1743}# (quote c)) #t (eq? #{m\ 1743}# (quote c&e))) (#{chi-top-sequence\ 450}# #{body\ 1810}# #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# 'c '(load) #{mod\ 1771}#) (#{chi-void\ 474}#))) (if (begin (let ((#{t\ 1830}# (memq 'compile #{when-list\ 1809}#))) (if #{t\ 1830}# #{t\ 1830}# (begin (let ((#{t\ 1833}# (memq 'expand #{when-list\ 1809}#))) (if #{t\ 1833}# #{t\ 1833}# (if (eq? #{m\ 1743}# 'c&e) (memq 'eval #{when-list\ 1809}#) #f))))))) (begin (#{top-level-eval-hook\ 289}# (#{chi-top-sequence\ 450}# #{body\ 1810}# #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# 'e '(eval) #{mod\ 1771}#) #{mod\ 1771}#) (#{chi-void\ 474}#)) (#{chi-void\ 474}#))))))) #{tmp\ 1800}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1799}#)))) (if (eqv? #{type\ 1766}# (quote define-syntax-form)) (begin (let ((#{n\ 1841}# (#{id-var-name\ 432}# #{value\ 1767}# #{w\ 1769}#)) (#{r\ 1842}# (#{macros-only-env\ 370}# #{r\ 1741}#))) (if (eqv? #{m\ 1743}# (quote c)) (if (memq (quote compile) #{esew\ 1744}#) (begin (let ((#{e\ 1845}# (#{chi-install-global\ 452}# #{n\ 1841}# (#{chi\ 460}# #{e\ 1768}# #{r\ 1842}# #{w\ 1769}# #{mod\ 1771}#)))) (begin (#{top-level-eval-hook\ 289}# #{e\ 1845}# #{mod\ 1771}#) (if (memq (quote load) #{esew\ 1744}#) #{e\ 1845}# (#{chi-void\ 474}#))))) (if (memq (quote load) #{esew\ 1744}#) (#{chi-install-global\ 452}# #{n\ 1841}# (#{chi\ 460}# #{e\ 1768}# #{r\ 1842}# #{w\ 1769}# #{mod\ 1771}#)) (#{chi-void\ 474}#))) (if (eqv? #{m\ 1743}# (quote c&e)) (begin (let ((#{e\ 1848}# (#{chi-install-global\ 452}# #{n\ 1841}# (#{chi\ 460}# #{e\ 1768}# #{r\ 1842}# #{w\ 1769}# #{mod\ 1771}#)))) (begin (#{top-level-eval-hook\ 289}# #{e\ 1848}# #{mod\ 1771}#) #{e\ 1848}#))) (begin (if (memq (quote eval) #{esew\ 1744}#) (#{top-level-eval-hook\ 289}# (#{chi-install-global\ 452}# #{n\ 1841}# (#{chi\ 460}# #{e\ 1768}# #{r\ 1842}# #{w\ 1769}# #{mod\ 1771}#)) #{mod\ 1771}#)) (#{chi-void\ 474}#)))))) (if (eqv? #{type\ 1766}# (quote define-form)) (begin (let ((#{n\ 1853}# (#{id-var-name\ 432}# #{value\ 1767}# #{w\ 1769}#))) (begin (let ((#{type\ 1855}# (car (#{lookup\ 372}# #{n\ 1853}# #{r\ 1741}# #{mod\ 1771}#)))) (if (if (eqv? #{type\ 1855}# (quote global)) #t (if (eqv? #{type\ 1855}# (quote core)) #t (if (eqv? #{type\ 1855}# 'macro) #t (eqv? #{type\ 1855}# 'module-ref)))) (begin (if (if (if (eq? #{m\ 1743}# (quote c)) #t (eq? #{m\ 1743}# (quote c&e))) (if (not (module-local-variable (current-module) #{n\ 1853}#)) (current-module) #f) #f) (begin (let ((#{old\ 1862}# (module-variable (current-module) #{n\ 1853}#))) (module-define! (current-module) #{n\ 1853}# (if (variable? #{old\ 1862}#) (variable-ref #{old\ 1862}#) #f))))) (begin (let ((#{x\ 1865}# (#{build-global-definition\ 320}# #{s\ 1770}# #{n\ 1853}# (#{chi\ 460}# #{e\ 1768}# #{r\ 1741}# #{w\ 1769}# #{mod\ 1771}#)))) (begin (if (eq? #{m\ 1743}# (quote c&e)) (#{top-level-eval-hook\ 289}# #{x\ 1865}# #{mod\ 1771}#)) #{x\ 1865}#)))) (if (eqv? #{type\ 1855}# 'displaced-lexical) (syntax-violation #f "identifier out of context" #{e\ 1768}# (#{wrap\ 444}# #{value\ 1767}# #{w\ 1769}# #{mod\ 1771}#)) (syntax-violation #f "cannot define keyword at top level" #{e\ 1768}# (#{wrap\ 444}# #{value\ 1767}# #{w\ 1769}# #{mod\ 1771}#)))))))) (begin (let ((#{x\ 1871}# (#{chi-expr\ 462}# #{type\ 1766}# #{value\ 1767}# #{e\ 1768}# #{r\ 1741}# #{w\ 1769}# #{s\ 1770}# #{mod\ 1771}#))) (begin (if (eq? #{m\ 1743}# (quote c&e)) (#{top-level-eval-hook\ 289}# #{x\ 1871}# #{mod\ 1771}#)) #{x\ 1871}#)))))))))))) (#{chi\ 460}# (lambda (#{e\ 1872}# #{r\ 1873}# #{w\ 1874}# #{mod\ 1875}#) (call-with-values (lambda () (#{syntax-type\ 456}# #{e\ 1872}# #{r\ 1873}# #{w\ 1874}# (#{source-annotation\ 359}# #{e\ 1872}#) #f #{mod\ 1875}# #f)) (lambda (#{type\ 1880}# #{value\ 1881}# #{e\ 1882}# #{w\ 1883}# #{s\ 1884}# #{mod\ 1885}#) (#{chi-expr\ 462}# #{type\ 1880}# #{value\ 1881}# #{e\ 1882}# #{r\ 1873}# #{w\ 1883}# #{s\ 1884}# #{mod\ 1885}#))))) (#{chi-expr\ 462}# (lambda (#{type\ 1892}# #{value\ 1893}# #{e\ 1894}# #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#) (if (eqv? #{type\ 1892}# (quote lexical)) (#{build-lexical-reference\ 310}# 'value #{s\ 1897}# #{e\ 1894}# #{value\ 1893}#) (if (if (eqv? #{type\ 1892}# (quote core)) #t (eqv? #{type\ 1892}# (quote core-form))) (#{value\ 1893}# #{e\ 1894}# #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#) (if (eqv? #{type\ 1892}# (quote module-ref)) (call-with-values (lambda () (#{value\ 1893}# #{e\ 1894}# #{r\ 1895}# #{w\ 1896}#)) (lambda (#{e\ 1909}# #{r\ 1910}# #{w\ 1911}# #{s\ 1912}# #{mod\ 1913}#) (#{chi\ 460}# #{e\ 1909}# #{r\ 1910}# #{w\ 1911}# #{mod\ 1913}#))) (if (eqv? #{type\ 1892}# (quote lexical-call)) (#{chi-application\ 464}# (begin (let ((#{id\ 1921}# (car #{e\ 1894}#))) (#{build-lexical-reference\ 310}# 'fun (#{source-annotation\ 359}# #{id\ 1921}#) (if (#{syntax-object?\ 344}# #{id\ 1921}#) (syntax->datum #{id\ 1921}#) #{id\ 1921}#) #{value\ 1893}#))) #{e\ 1894}# #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#) (if (eqv? #{type\ 1892}# (quote global-call)) (#{chi-application\ 464}# (#{build-global-reference\ 316}# (#{source-annotation\ 359}# (car #{e\ 1894}#)) (if (#{syntax-object?\ 344}# #{value\ 1893}#) (#{syntax-object-expression\ 346}# #{value\ 1893}#) #{value\ 1893}#) (if (#{syntax-object?\ 344}# #{value\ 1893}#) (#{syntax-object-module\ 350}# #{value\ 1893}#) #{mod\ 1898}#)) #{e\ 1894}# #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#) (if (eqv? #{type\ 1892}# (quote constant)) (#{build-data\ 330}# #{s\ 1897}# (#{strip\ 486}# (#{source-wrap\ 446}# #{e\ 1894}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#) '(()))) (if (eqv? #{type\ 1892}# (quote global)) (#{build-global-reference\ 316}# #{s\ 1897}# #{value\ 1893}# #{mod\ 1898}#) (if (eqv? #{type\ 1892}# (quote call)) (#{chi-application\ 464}# (#{chi\ 460}# (car #{e\ 1894}#) #{r\ 1895}# #{w\ 1896}# #{mod\ 1898}#) #{e\ 1894}# #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#) (if (eqv? #{type\ 1892}# (quote begin-form)) (let ((#{tmp\ 1928}# #{e\ 1894}#)) (let ((#{tmp\ 1929}# ($sc-dispatch #{tmp\ 1928}# '(_ any . each-any)))) (if #{tmp\ 1929}# (@apply (lambda (#{e1\ 1932}# #{e2\ 1933}#) (#{chi-sequence\ 448}# (cons #{e1\ 1932}# #{e2\ 1933}#) #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#)) #{tmp\ 1929}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1928}#)))) (if (eqv? #{type\ 1892}# 'local-syntax-form) (#{chi-local-syntax\ 470}# #{value\ 1893}# #{e\ 1894}# #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}# #{chi-sequence\ 448}#) (if (eqv? #{type\ 1892}# 'eval-when-form) (let ((#{tmp\ 1937}# #{e\ 1894}#)) (let ((#{tmp\ 1938}# ($sc-dispatch #{tmp\ 1937}# '(_ each-any any . each-any)))) (if #{tmp\ 1938}# (@apply (lambda (#{x\ 1942}# #{e1\ 1943}# #{e2\ 1944}#) (begin (let ((#{when-list\ 1946}# (#{chi-when-list\ 454}# #{e\ 1894}# #{x\ 1942}# #{w\ 1896}#))) (if (memq 'eval #{when-list\ 1946}#) (#{chi-sequence\ 448}# (cons #{e1\ 1943}# #{e2\ 1944}#) #{r\ 1895}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#) (#{chi-void\ 474}#))))) #{tmp\ 1938}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1937}#)))) (if (if (eqv? #{type\ 1892}# 'define-form) #t (eqv? #{type\ 1892}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 1894}# (#{wrap\ 444}# #{value\ 1893}# #{w\ 1896}# #{mod\ 1898}#)) (if (eqv? #{type\ 1892}# (quote syntax)) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 446}# #{e\ 1894}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#)) (if (eqv? #{type\ 1892}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 446}# #{e\ 1894}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 446}# #{e\ 1894}# #{w\ 1896}# #{s\ 1897}# #{mod\ 1898}#)))))))))))))))))) (#{chi-application\ 464}# (lambda (#{x\ 1953}# #{e\ 1954}# #{r\ 1955}# #{w\ 1956}# #{s\ 1957}# #{mod\ 1958}#) (let ((#{tmp\ 1965}# #{e\ 1954}#)) (let ((#{tmp\ 1966}# ($sc-dispatch #{tmp\ 1965}# '(any . each-any)))) (if #{tmp\ 1966}# (@apply (lambda (#{e0\ 1969}# #{e1\ 1970}#) (#{build-application\ 304}# #{s\ 1957}# #{x\ 1953}# (map (lambda (#{e\ 1971}#) (#{chi\ 460}# #{e\ 1971}# #{r\ 1955}# #{w\ 1956}# #{mod\ 1958}#)) #{e1\ 1970}#))) #{tmp\ 1966}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1965}#)))))) (#{chi-macro\ 466}# (lambda (#{p\ 1974}# #{e\ 1975}# #{r\ 1976}# #{w\ 1977}# #{s\ 1978}# #{rib\ 1979}# #{mod\ 1980}#) (letrec* ((#{rebuild-macro-output\ 1989}# (lambda (#{x\ 1990}# #{m\ 1991}#) (if (pair? #{x\ 1990}#) (#{decorate-source\ 298}# (cons (#{rebuild-macro-output\ 1989}# (car #{x\ 1990}#) #{m\ 1991}#) (#{rebuild-macro-output\ 1989}# (cdr #{x\ 1990}#) #{m\ 1991}#)) #{s\ 1978}#) (if (#{syntax-object?\ 344}# #{x\ 1990}#) (begin (let ((#{w\ 1999}# (#{syntax-object-wrap\ 348}# #{x\ 1990}#))) (begin (let ((#{ms\ 2002}# (car #{w\ 1999}#)) (#{s\ 2003}# (cdr #{w\ 1999}#))) (if (if (pair? #{ms\ 2002}#) (eq? (car #{ms\ 2002}#) #f) #f) (#{make-syntax-object\ 342}# (#{syntax-object-expression\ 346}# #{x\ 1990}#) (cons (cdr #{ms\ 2002}#) (if #{rib\ 1979}# (cons #{rib\ 1979}# (cdr #{s\ 2003}#)) (cdr #{s\ 2003}#))) (#{syntax-object-module\ 350}# #{x\ 1990}#)) (#{make-syntax-object\ 342}# (#{decorate-source\ 298}# (#{syntax-object-expression\ 346}# #{x\ 1990}#) #{s\ 2003}#) (cons (cons #{m\ 1991}# #{ms\ 2002}#) (if #{rib\ 1979}# (cons #{rib\ 1979}# (cons 'shift #{s\ 2003}#)) (cons (quote shift) #{s\ 2003}#))) (#{syntax-object-module\ 350}# #{x\ 1990}#))))))) (if (vector? #{x\ 1990}#) (begin (let ((#{n\ 2015}# (vector-length #{x\ 1990}#))) (begin (let ((#{v\ 2017}# (#{decorate-source\ 298}# (make-vector #{n\ 2015}#) #{x\ 1990}#))) (letrec* ((#{loop\ 2020}# (lambda (#{i\ 2021}#) (if (#{fx=\ 285}# #{i\ 2021}# #{n\ 2015}#) (begin (if #f #f) #{v\ 2017}#) (begin (vector-set! #{v\ 2017}# #{i\ 2021}# (#{rebuild-macro-output\ 1989}# (vector-ref #{x\ 1990}# #{i\ 2021}#) #{m\ 1991}#)) (#{loop\ 2020}# (#{fx+\ 281}# #{i\ 2021}# 1))))))) (begin (#{loop\ 2020}# 0))))))) (if (symbol? #{x\ 1990}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 446}# #{e\ 1975}# #{w\ 1977}# (cdr #{w\ 1977}#) #{mod\ 1980}#) #{x\ 1990}#) (#{decorate-source\ 298}# #{x\ 1990}# #{s\ 1978}#)))))))) (begin (#{rebuild-macro-output\ 1989}# (#{p\ 1974}# (#{source-wrap\ 446}# #{e\ 1975}# (#{anti-mark\ 416}# #{w\ 1977}#) #{s\ 1978}# #{mod\ 1980}#)) (gensym "m")))))) (#{chi-body\ 468}# (lambda (#{body\ 2029}# #{outer-form\ 2030}# #{r\ 2031}# #{w\ 2032}# #{mod\ 2033}#) (begin (let ((#{r\ 2041}# (cons '("placeholder" placeholder) #{r\ 2031}#))) (begin (let ((#{ribcage\ 2043}# (#{make-ribcage\ 396}# '() '() '()))) (begin (let ((#{w\ 2046}# (cons (car #{w\ 2032}#) (cons #{ribcage\ 2043}# (cdr #{w\ 2032}#))))) (letrec* ((#{parse\ 2058}# (lambda (#{body\ 2059}# #{ids\ 2060}# #{labels\ 2061}# #{var-ids\ 2062}# #{vars\ 2063}# #{vals\ 2064}# #{bindings\ 2065}#) (if (null? #{body\ 2059}#) (syntax-violation #f "no expressions in body" #{outer-form\ 2030}#) (begin (let ((#{e\ 2070}# (cdr (car #{body\ 2059}#))) (#{er\ 2071}# (car (car #{body\ 2059}#)))) (call-with-values (lambda () (#{syntax-type\ 456}# #{e\ 2070}# #{er\ 2071}# '(()) (#{source-annotation\ 359}# #{er\ 2071}#) #{ribcage\ 2043}# #{mod\ 2033}# #f)) (lambda (#{type\ 2073}# #{value\ 2074}# #{e\ 2075}# #{w\ 2076}# #{s\ 2077}# #{mod\ 2078}#) (if (eqv? #{type\ 2073}# 'define-form) (begin (let ((#{id\ 2088}# (#{wrap\ 444}# #{value\ 2074}# #{w\ 2076}# #{mod\ 2078}#)) (#{label\ 2089}# (#{gen-label\ 391}#))) (begin (let ((#{var\ 2091}# (#{gen-var\ 488}# #{id\ 2088}#))) (begin (#{extend-ribcage!\ 420}# #{ribcage\ 2043}# #{id\ 2088}# #{label\ 2089}#) (#{parse\ 2058}# (cdr #{body\ 2059}#) (cons #{id\ 2088}# #{ids\ 2060}#) (cons #{label\ 2089}# #{labels\ 2061}#) (cons #{id\ 2088}# #{var-ids\ 2062}#) (cons #{var\ 2091}# #{vars\ 2063}#) (cons (cons #{er\ 2071}# (#{wrap\ 444}# #{e\ 2075}# #{w\ 2076}# #{mod\ 2078}#)) #{vals\ 2064}#) (cons (cons 'lexical #{var\ 2091}#) #{bindings\ 2065}#))))))) (if (eqv? #{type\ 2073}# 'define-syntax-form) (begin (let ((#{id\ 2096}# (#{wrap\ 444}# #{value\ 2074}# #{w\ 2076}# #{mod\ 2078}#)) (#{label\ 2097}# (#{gen-label\ 391}#))) (begin (#{extend-ribcage!\ 420}# #{ribcage\ 2043}# #{id\ 2096}# #{label\ 2097}#) (#{parse\ 2058}# (cdr #{body\ 2059}#) (cons #{id\ 2096}# #{ids\ 2060}#) (cons #{label\ 2097}# #{labels\ 2061}#) #{var-ids\ 2062}# #{vars\ 2063}# #{vals\ 2064}# (cons (cons 'macro (cons #{er\ 2071}# (#{wrap\ 444}# #{e\ 2075}# #{w\ 2076}# #{mod\ 2078}#))) #{bindings\ 2065}#))))) (if (eqv? #{type\ 2073}# 'begin-form) (let ((#{tmp\ 2100}# #{e\ 2075}#)) (let ((#{tmp\ 2101}# ($sc-dispatch #{tmp\ 2100}# '(_ . each-any)))) (if #{tmp\ 2101}# (@apply (lambda (#{e1\ 2103}#) (#{parse\ 2058}# (letrec* ((#{f\ 2106}# (lambda (#{forms\ 2107}#) (if (null? #{forms\ 2107}#) (cdr #{body\ 2059}#) (cons (cons #{er\ 2071}# (#{wrap\ 444}# (car #{forms\ 2107}#) #{w\ 2076}# #{mod\ 2078}#)) (#{f\ 2106}# (cdr #{forms\ 2107}#))))))) (begin (#{f\ 2106}# #{e1\ 2103}#))) #{ids\ 2060}# #{labels\ 2061}# #{var-ids\ 2062}# #{vars\ 2063}# #{vals\ 2064}# #{bindings\ 2065}#)) #{tmp\ 2101}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2100}#)))) (if (eqv? #{type\ 2073}# 'local-syntax-form) (#{chi-local-syntax\ 470}# #{value\ 2074}# #{e\ 2075}# #{er\ 2071}# #{w\ 2076}# #{s\ 2077}# #{mod\ 2078}# (lambda (#{forms\ 2110}# #{er\ 2111}# #{w\ 2112}# #{s\ 2113}# #{mod\ 2114}#) (#{parse\ 2058}# (letrec* ((#{f\ 2122}# (lambda (#{forms\ 2123}#) (if (null? #{forms\ 2123}#) (cdr #{body\ 2059}#) (cons (cons #{er\ 2111}# (#{wrap\ 444}# (car #{forms\ 2123}#) #{w\ 2112}# #{mod\ 2114}#)) (#{f\ 2122}# (cdr #{forms\ 2123}#))))))) (begin (#{f\ 2122}# #{forms\ 2110}#))) #{ids\ 2060}# #{labels\ 2061}# #{var-ids\ 2062}# #{vars\ 2063}# #{vals\ 2064}# #{bindings\ 2065}#))) (if (null? #{ids\ 2060}#) (#{build-sequence\ 332}# #f (map (lambda (#{x\ 2126}#) (#{chi\ 460}# (cdr #{x\ 2126}#) (car #{x\ 2126}#) '(()) #{mod\ 2078}#)) (cons (cons #{er\ 2071}# (#{source-wrap\ 446}# #{e\ 2075}# #{w\ 2076}# #{s\ 2077}# #{mod\ 2078}#)) (cdr #{body\ 2059}#)))) (begin (if (not (#{valid-bound-ids?\ 438}# #{ids\ 2060}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 2030}#)) (letrec* ((#{loop\ 2133}# (lambda (#{bs\ 2134}# #{er-cache\ 2135}# #{r-cache\ 2136}#) (if (not (null? #{bs\ 2134}#)) (begin (let ((#{b\ 2139}# (car #{bs\ 2134}#))) (if (eq? (car #{b\ 2139}#) 'macro) (begin (let ((#{er\ 2142}# (car (cdr #{b\ 2139}#)))) (begin (let ((#{r-cache\ 2144}# (if (eq? #{er\ 2142}# #{er-cache\ 2135}#) #{r-cache\ 2136}# (#{macros-only-env\ 370}# #{er\ 2142}#)))) (begin (set-cdr! #{b\ 2139}# (#{eval-local-transformer\ 472}# (#{chi\ 460}# (cdr (cdr #{b\ 2139}#)) #{r-cache\ 2144}# '(()) #{mod\ 2078}#) #{mod\ 2078}#)) (#{loop\ 2133}# (cdr #{bs\ 2134}#) #{er\ 2142}# #{r-cache\ 2144}#)))))) (#{loop\ 2133}# (cdr #{bs\ 2134}#) #{er-cache\ 2135}# #{r-cache\ 2136}#)))))))) (begin (#{loop\ 2133}# #{bindings\ 2065}# #f #f))) (set-cdr! #{r\ 2041}# (#{extend-env\ 366}# #{labels\ 2061}# #{bindings\ 2065}# (cdr #{r\ 2041}#))) (#{build-letrec\ 338}# #f #t (reverse (map syntax->datum #{var-ids\ 2062}#)) (reverse #{vars\ 2063}#) (map (lambda (#{x\ 2147}#) (#{chi\ 460}# (cdr #{x\ 2147}#) (car #{x\ 2147}#) '(()) #{mod\ 2078}#)) (reverse #{vals\ 2064}#)) (#{build-sequence\ 332}# #f (map (lambda (#{x\ 2151}#) (#{chi\ 460}# (cdr #{x\ 2151}#) (car #{x\ 2151}#) '(()) #{mod\ 2078}#)) (cons (cons #{er\ 2071}# (#{source-wrap\ 446}# #{e\ 2075}# #{w\ 2076}# #{s\ 2077}# #{mod\ 2078}#)) (cdr #{body\ 2059}#))))))))))))))))))) (begin (#{parse\ 2058}# (map (lambda (#{x\ 2066}#) (cons #{r\ 2041}# (#{wrap\ 444}# #{x\ 2066}# #{w\ 2046}# #{mod\ 2033}#))) #{body\ 2029}#) '() '() '() '() '() '()))))))))))) (#{chi-local-syntax\ 470}# (lambda (#{rec?\ 2154}# #{e\ 2155}# #{r\ 2156}# #{w\ 2157}# #{s\ 2158}# #{mod\ 2159}# #{k\ 2160}#) (let ((#{tmp\ 2168}# #{e\ 2155}#)) (let ((#{tmp\ 2169}# ($sc-dispatch #{tmp\ 2168}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 2169}# (@apply (lambda (#{id\ 2174}# #{val\ 2175}# #{e1\ 2176}# #{e2\ 2177}#) (begin (let ((#{ids\ 2179}# #{id\ 2174}#)) (if (not (#{valid-bound-ids?\ 438}# #{ids\ 2179}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 2155}#) (begin (let ((#{labels\ 2182}# (#{gen-labels\ 393}# #{ids\ 2179}#))) (begin (let ((#{new-w\ 2184}# (#{make-binding-wrap\ 422}# #{ids\ 2179}# #{labels\ 2182}# #{w\ 2157}#))) (#{k\ 2160}# (cons #{e1\ 2176}# #{e2\ 2177}#) (#{extend-env\ 366}# #{labels\ 2182}# (begin (let ((#{w\ 2188}# (if #{rec?\ 2154}# #{new-w\ 2184}# #{w\ 2157}#)) (#{trans-r\ 2189}# (#{macros-only-env\ 370}# #{r\ 2156}#))) (map (lambda (#{x\ 2190}#) (cons 'macro (#{eval-local-transformer\ 472}# (#{chi\ 460}# #{x\ 2190}# #{trans-r\ 2189}# #{w\ 2188}# #{mod\ 2159}#) #{mod\ 2159}#))) #{val\ 2175}#))) #{r\ 2156}#) #{new-w\ 2184}# #{s\ 2158}# #{mod\ 2159}#))))))))) #{tmp\ 2169}#) (let ((#{_\ 2195}# #{tmp\ 2168}#)) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 446}# #{e\ 2155}# #{w\ 2157}# #{s\ 2158}# #{mod\ 2159}#)))))))) (#{eval-local-transformer\ 472}# (lambda (#{expanded\ 2196}# #{mod\ 2197}#) (begin (let ((#{p\ 2201}# (#{local-eval-hook\ 291}# #{expanded\ 2196}# #{mod\ 2197}#))) (if (procedure? #{p\ 2201}#) #{p\ 2201}# (syntax-violation #f "nonprocedure transformer" #{p\ 2201}#)))))) (#{chi-void\ 474}# (lambda () (#{build-void\ 302}# #f))) (#{ellipsis?\ 476}# (lambda (#{x\ 2203}#) (if (#{nonsymbol-id?\ 376}# #{x\ 2203}#) (#{free-id=?\ 434}# #{x\ 2203}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i2204")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) #f))) (#{lambda-formals\ 478}# (lambda (#{orig-args\ 2207}#) (letrec* ((#{req\ 2210}# (lambda (#{args\ 2213}# #{rreq\ 2214}#) (let ((#{tmp\ 2217}# #{args\ 2213}#)) (let ((#{tmp\ 2218}# ($sc-dispatch #{tmp\ 2217}# (quote ())))) (if #{tmp\ 2218}# (@apply (lambda () (#{check\ 2212}# (reverse #{rreq\ 2214}#) #f)) #{tmp\ 2218}#) (let ((#{tmp\ 2219}# ($sc-dispatch #{tmp\ 2217}# '(any . any)))) (if (if #{tmp\ 2219}# (@apply (lambda (#{a\ 2222}# #{b\ 2223}#) (#{id?\ 378}# #{a\ 2222}#)) #{tmp\ 2219}#) #f) (@apply (lambda (#{a\ 2226}# #{b\ 2227}#) (#{req\ 2210}# #{b\ 2227}# (cons #{a\ 2226}# #{rreq\ 2214}#))) #{tmp\ 2219}#) (let ((#{tmp\ 2228}# (list #{tmp\ 2217}#))) (if (if #{tmp\ 2228}# (@apply (lambda (#{r\ 2230}#) (#{id?\ 378}# #{r\ 2230}#)) #{tmp\ 2228}#) #f) (@apply (lambda (#{r\ 2232}#) (#{check\ 2212}# (reverse #{rreq\ 2214}#) #{r\ 2232}#)) #{tmp\ 2228}#) (let ((#{else\ 2234}# #{tmp\ 2217}#)) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 2207}# #{args\ 2213}#))))))))))) (#{check\ 2212}# (lambda (#{req\ 2235}# #{rest\ 2236}#) (if (#{distinct-bound-ids?\ 440}# (if #{rest\ 2236}# (cons #{rest\ 2236}# #{req\ 2235}#) #{req\ 2235}#)) (values #{req\ 2235}# #f #{rest\ 2236}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 2207}#))))) (begin (#{req\ 2210}# #{orig-args\ 2207}# (quote ())))))) (#{chi-simple-lambda\ 480}# (lambda (#{e\ 2242}# #{r\ 2243}# #{w\ 2244}# #{s\ 2245}# #{mod\ 2246}# #{req\ 2247}# #{rest\ 2248}# #{meta\ 2249}# #{body\ 2250}#) (begin (let ((#{ids\ 2262}# (if #{rest\ 2248}# (append #{req\ 2247}# (list #{rest\ 2248}#)) #{req\ 2247}#))) (begin (let ((#{vars\ 2264}# (map #{gen-var\ 488}# #{ids\ 2262}#))) (begin (let ((#{labels\ 2266}# (#{gen-labels\ 393}# #{ids\ 2262}#))) (#{build-simple-lambda\ 322}# #{s\ 2245}# (map syntax->datum #{req\ 2247}#) (if #{rest\ 2248}# (syntax->datum #{rest\ 2248}#) #f) #{vars\ 2264}# #{meta\ 2249}# (#{chi-body\ 468}# #{body\ 2250}# (#{source-wrap\ 446}# #{e\ 2242}# #{w\ 2244}# #{s\ 2245}# #{mod\ 2246}#) (#{extend-var-env\ 368}# #{labels\ 2266}# #{vars\ 2264}# #{r\ 2243}#) (#{make-binding-wrap\ 422}# #{ids\ 2262}# #{labels\ 2266}# #{w\ 2244}#) #{mod\ 2246}#)))))))))) (#{lambda*-formals\ 482}# (lambda (#{orig-args\ 2269}#) (letrec* ((#{req\ 2272}# (lambda (#{args\ 2281}# #{rreq\ 2282}#) (let ((#{tmp\ 2285}# #{args\ 2281}#)) (let ((#{tmp\ 2286}# ($sc-dispatch #{tmp\ 2285}# (quote ())))) (if #{tmp\ 2286}# (@apply (lambda () (#{check\ 2280}# (reverse #{rreq\ 2282}#) '() #f '())) #{tmp\ 2286}#) (let ((#{tmp\ 2287}# ($sc-dispatch #{tmp\ 2285}# '(any . any)))) (if (if #{tmp\ 2287}# (@apply (lambda (#{a\ 2290}# #{b\ 2291}#) (#{id?\ 378}# #{a\ 2290}#)) #{tmp\ 2287}#) #f) (@apply (lambda (#{a\ 2294}# #{b\ 2295}#) (#{req\ 2272}# #{b\ 2295}# (cons #{a\ 2294}# #{rreq\ 2282}#))) #{tmp\ 2287}#) (let ((#{tmp\ 2296}# ($sc-dispatch #{tmp\ 2285}# '(any . any)))) (if (if #{tmp\ 2296}# (@apply (lambda (#{a\ 2299}# #{b\ 2300}#) (eq? (syntax->datum #{a\ 2299}#) #:optional)) #{tmp\ 2296}#) #f) (@apply (lambda (#{a\ 2303}# #{b\ 2304}#) (#{opt\ 2274}# #{b\ 2304}# (reverse #{rreq\ 2282}#) '())) #{tmp\ 2296}#) (let ((#{tmp\ 2305}# ($sc-dispatch #{tmp\ 2285}# '(any . any)))) (if (if #{tmp\ 2305}# (@apply (lambda (#{a\ 2308}# #{b\ 2309}#) (eq? (syntax->datum #{a\ 2308}#) #:key)) #{tmp\ 2305}#) #f) (@apply (lambda (#{a\ 2312}# #{b\ 2313}#) (#{key\ 2276}# #{b\ 2313}# (reverse #{rreq\ 2282}#) '() '())) #{tmp\ 2305}#) (let ((#{tmp\ 2314}# ($sc-dispatch #{tmp\ 2285}# '(any any)))) (if (if #{tmp\ 2314}# (@apply (lambda (#{a\ 2317}# #{b\ 2318}#) (eq? (syntax->datum #{a\ 2317}#) #:rest)) #{tmp\ 2314}#) #f) (@apply (lambda (#{a\ 2321}# #{b\ 2322}#) (#{rest\ 2278}# #{b\ 2322}# (reverse #{rreq\ 2282}#) '() '())) #{tmp\ 2314}#) (let ((#{tmp\ 2323}# (list #{tmp\ 2285}#))) (if (if #{tmp\ 2323}# (@apply (lambda (#{r\ 2325}#) (#{id?\ 378}# #{r\ 2325}#)) #{tmp\ 2323}#) #f) (@apply (lambda (#{r\ 2327}#) (#{rest\ 2278}# #{r\ 2327}# (reverse #{rreq\ 2282}#) '() '())) #{tmp\ 2323}#) (let ((#{else\ 2329}# #{tmp\ 2285}#)) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 2269}# #{args\ 2281}#))))))))))))))))) (#{opt\ 2274}# (lambda (#{args\ 2330}# #{req\ 2331}# #{ropt\ 2332}#) (let ((#{tmp\ 2336}# #{args\ 2330}#)) (let ((#{tmp\ 2337}# ($sc-dispatch #{tmp\ 2336}# (quote ())))) (if #{tmp\ 2337}# (@apply (lambda () (#{check\ 2280}# #{req\ 2331}# (reverse #{ropt\ 2332}#) #f '())) #{tmp\ 2337}#) (let ((#{tmp\ 2338}# ($sc-dispatch #{tmp\ 2336}# '(any . any)))) (if (if #{tmp\ 2338}# (@apply (lambda (#{a\ 2341}# #{b\ 2342}#) (#{id?\ 378}# #{a\ 2341}#)) #{tmp\ 2338}#) #f) (@apply (lambda (#{a\ 2345}# #{b\ 2346}#) (#{opt\ 2274}# #{b\ 2346}# #{req\ 2331}# (cons (cons #{a\ 2345}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i2343" "i2344")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i2333" "i2334" "i2335")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2279" "i2277" "i2275" "i2273" "i2271")) #(ribcage #(orig-args) #((top)) #("i2270")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)))) #{ropt\ 2332}#))) #{tmp\ 2338}#) (let ((#{tmp\ 2347}# ($sc-dispatch #{tmp\ 2336}# '((any any) . any)))) (if (if #{tmp\ 2347}# (@apply (lambda (#{a\ 2351}# #{init\ 2352}# #{b\ 2353}#) (#{id?\ 378}# #{a\ 2351}#)) #{tmp\ 2347}#) #f) (@apply (lambda (#{a\ 2357}# #{init\ 2358}# #{b\ 2359}#) (#{opt\ 2274}# #{b\ 2359}# #{req\ 2331}# (cons (list #{a\ 2357}# #{init\ 2358}#) #{ropt\ 2332}#))) #{tmp\ 2347}#) (let ((#{tmp\ 2360}# ($sc-dispatch #{tmp\ 2336}# '(any . any)))) (if (if #{tmp\ 2360}# (@apply (lambda (#{a\ 2363}# #{b\ 2364}#) (eq? (syntax->datum #{a\ 2363}#) #:key)) #{tmp\ 2360}#) #f) (@apply (lambda (#{a\ 2367}# #{b\ 2368}#) (#{key\ 2276}# #{b\ 2368}# #{req\ 2331}# (reverse #{ropt\ 2332}#) '())) #{tmp\ 2360}#) (let ((#{tmp\ 2369}# ($sc-dispatch #{tmp\ 2336}# '(any any)))) (if (if #{tmp\ 2369}# (@apply (lambda (#{a\ 2372}# #{b\ 2373}#) (eq? (syntax->datum #{a\ 2372}#) #:rest)) #{tmp\ 2369}#) #f) (@apply (lambda (#{a\ 2376}# #{b\ 2377}#) (#{rest\ 2278}# #{b\ 2377}# #{req\ 2331}# (reverse #{ropt\ 2332}#) '())) #{tmp\ 2369}#) (let ((#{tmp\ 2378}# (list #{tmp\ 2336}#))) (if (if #{tmp\ 2378}# (@apply (lambda (#{r\ 2380}#) (#{id?\ 378}# #{r\ 2380}#)) #{tmp\ 2378}#) #f) (@apply (lambda (#{r\ 2382}#) (#{rest\ 2278}# #{r\ 2382}# #{req\ 2331}# (reverse #{ropt\ 2332}#) '())) #{tmp\ 2378}#) (let ((#{else\ 2384}# #{tmp\ 2336}#)) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 2269}# #{args\ 2330}#))))))))))))))))) (#{key\ 2276}# (lambda (#{args\ 2385}# #{req\ 2386}# #{opt\ 2387}# #{rkey\ 2388}#) (let ((#{tmp\ 2393}# #{args\ 2385}#)) (let ((#{tmp\ 2394}# ($sc-dispatch #{tmp\ 2393}# (quote ())))) (if #{tmp\ 2394}# (@apply (lambda () (#{check\ 2280}# #{req\ 2386}# #{opt\ 2387}# #f (cons #f (reverse #{rkey\ 2388}#)))) #{tmp\ 2394}#) (let ((#{tmp\ 2395}# ($sc-dispatch #{tmp\ 2393}# '(any . any)))) (if (if #{tmp\ 2395}# (@apply (lambda (#{a\ 2398}# #{b\ 2399}#) (#{id?\ 378}# #{a\ 2398}#)) #{tmp\ 2395}#) #f) (@apply (lambda (#{a\ 2402}# #{b\ 2403}#) (let ((#{tmp\ 2405}# (symbol->keyword (syntax->datum #{a\ 2402}#)))) (let ((#{k\ 2407}# #{tmp\ 2405}#)) (#{key\ 2276}# #{b\ 2403}# #{req\ 2386}# #{opt\ 2387}# (cons (cons #{k\ 2407}# (cons #{a\ 2402}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i2406")) #(ribcage #(a b) #((top) (top)) #("i2400" "i2401")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i2389" "i2390" "i2391" "i2392")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2279" "i2277" "i2275" "i2273" "i2271")) #(ribcage #(orig-args) #((top)) #("i2270")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))))) #{rkey\ 2388}#))))) #{tmp\ 2395}#) (let ((#{tmp\ 2408}# ($sc-dispatch #{tmp\ 2393}# '((any any) . any)))) (if (if #{tmp\ 2408}# (@apply (lambda (#{a\ 2412}# #{init\ 2413}# #{b\ 2414}#) (#{id?\ 378}# #{a\ 2412}#)) #{tmp\ 2408}#) #f) (@apply (lambda (#{a\ 2418}# #{init\ 2419}# #{b\ 2420}#) (let ((#{tmp\ 2422}# (symbol->keyword (syntax->datum #{a\ 2418}#)))) (let ((#{k\ 2424}# #{tmp\ 2422}#)) (#{key\ 2276}# #{b\ 2420}# #{req\ 2386}# #{opt\ 2387}# (cons (list #{k\ 2424}# #{a\ 2418}# #{init\ 2419}#) #{rkey\ 2388}#))))) #{tmp\ 2408}#) (let ((#{tmp\ 2425}# ($sc-dispatch #{tmp\ 2393}# '((any any any) . any)))) (if (if #{tmp\ 2425}# (@apply (lambda (#{a\ 2430}# #{init\ 2431}# #{k\ 2432}# #{b\ 2433}#) (if (#{id?\ 378}# #{a\ 2430}#) (keyword? (syntax->datum #{k\ 2432}#)) #f)) #{tmp\ 2425}#) #f) (@apply (lambda (#{a\ 2440}# #{init\ 2441}# #{k\ 2442}# #{b\ 2443}#) (#{key\ 2276}# #{b\ 2443}# #{req\ 2386}# #{opt\ 2387}# (cons (list #{k\ 2442}# #{a\ 2440}# #{init\ 2441}#) #{rkey\ 2388}#))) #{tmp\ 2425}#) (let ((#{tmp\ 2444}# ($sc-dispatch #{tmp\ 2393}# '(any)))) (if (if #{tmp\ 2444}# (@apply (lambda (#{aok\ 2446}#) (eq? (syntax->datum #{aok\ 2446}#) #:allow-other-keys)) #{tmp\ 2444}#) #f) (@apply (lambda (#{aok\ 2448}#) (#{check\ 2280}# #{req\ 2386}# #{opt\ 2387}# #f (cons #t (reverse #{rkey\ 2388}#)))) #{tmp\ 2444}#) (let ((#{tmp\ 2449}# ($sc-dispatch #{tmp\ 2393}# '(any any any)))) (if (if #{tmp\ 2449}# (@apply (lambda (#{aok\ 2453}# #{a\ 2454}# #{b\ 2455}#) (if (eq? (syntax->datum #{aok\ 2453}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 2454}#) #:rest) #f)) #{tmp\ 2449}#) #f) (@apply (lambda (#{aok\ 2461}# #{a\ 2462}# #{b\ 2463}#) (#{rest\ 2278}# #{b\ 2463}# #{req\ 2386}# #{opt\ 2387}# (cons #t (reverse #{rkey\ 2388}#)))) #{tmp\ 2449}#) (let ((#{tmp\ 2464}# ($sc-dispatch #{tmp\ 2393}# '(any . any)))) (if (if #{tmp\ 2464}# (@apply (lambda (#{aok\ 2467}# #{r\ 2468}#) (if (eq? (syntax->datum #{aok\ 2467}#) #:allow-other-keys) (#{id?\ 378}# #{r\ 2468}#) #f)) #{tmp\ 2464}#) #f) (@apply (lambda (#{aok\ 2473}# #{r\ 2474}#) (#{rest\ 2278}# #{r\ 2474}# #{req\ 2386}# #{opt\ 2387}# (cons #t (reverse #{rkey\ 2388}#)))) #{tmp\ 2464}#) (let ((#{tmp\ 2475}# ($sc-dispatch #{tmp\ 2393}# '(any any)))) (if (if #{tmp\ 2475}# (@apply (lambda (#{a\ 2478}# #{b\ 2479}#) (eq? (syntax->datum #{a\ 2478}#) #:rest)) #{tmp\ 2475}#) #f) (@apply (lambda (#{a\ 2482}# #{b\ 2483}#) (#{rest\ 2278}# #{b\ 2483}# #{req\ 2386}# #{opt\ 2387}# (cons #f (reverse #{rkey\ 2388}#)))) #{tmp\ 2475}#) (let ((#{tmp\ 2484}# (list #{tmp\ 2393}#))) (if (if #{tmp\ 2484}# (@apply (lambda (#{r\ 2486}#) (#{id?\ 378}# #{r\ 2486}#)) #{tmp\ 2484}#) #f) (@apply (lambda (#{r\ 2488}#) (#{rest\ 2278}# #{r\ 2488}# #{req\ 2386}# #{opt\ 2387}# (cons #f (reverse #{rkey\ 2388}#)))) #{tmp\ 2484}#) (let ((#{else\ 2490}# #{tmp\ 2393}#)) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 2269}# #{args\ 2385}#))))))))))))))))))))))) (#{rest\ 2278}# (lambda (#{args\ 2491}# #{req\ 2492}# #{opt\ 2493}# #{kw\ 2494}#) (let ((#{tmp\ 2499}# #{args\ 2491}#)) (let ((#{tmp\ 2500}# (list #{tmp\ 2499}#))) (if (if #{tmp\ 2500}# (@apply (lambda (#{r\ 2502}#) (#{id?\ 378}# #{r\ 2502}#)) #{tmp\ 2500}#) #f) (@apply (lambda (#{r\ 2504}#) (#{check\ 2280}# #{req\ 2492}# #{opt\ 2493}# #{r\ 2504}# #{kw\ 2494}#)) #{tmp\ 2500}#) (let ((#{else\ 2506}# #{tmp\ 2499}#)) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 2269}# #{args\ 2491}#))))))) (#{check\ 2280}# (lambda (#{req\ 2507}# #{opt\ 2508}# #{rest\ 2509}# #{kw\ 2510}#) (if (#{distinct-bound-ids?\ 440}# (append #{req\ 2507}# (map car #{opt\ 2508}#) (if #{rest\ 2509}# (list #{rest\ 2509}#) '()) (if (pair? #{kw\ 2510}#) (map cadr (cdr #{kw\ 2510}#)) '()))) (values #{req\ 2507}# #{opt\ 2508}# #{rest\ 2509}# #{kw\ 2510}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 2269}#))))) (begin (#{req\ 2272}# #{orig-args\ 2269}# (quote ())))))) (#{chi-lambda-case\ 484}# (lambda (#{e\ 2518}# #{r\ 2519}# #{w\ 2520}# #{s\ 2521}# #{mod\ 2522}# #{get-formals\ 2523}# #{clauses\ 2524}#) (letrec* ((#{expand-req\ 2533}# (lambda (#{req\ 2540}# #{opt\ 2541}# #{rest\ 2542}# #{kw\ 2543}# #{body\ 2544}#) (begin (let ((#{vars\ 2552}# (map #{gen-var\ 488}# #{req\ 2540}#)) (#{labels\ 2553}# (#{gen-labels\ 393}# #{req\ 2540}#))) (begin (let ((#{r*\ 2556}# (#{extend-var-env\ 368}# #{labels\ 2553}# #{vars\ 2552}# #{r\ 2519}#)) (#{w*\ 2557}# (#{make-binding-wrap\ 422}# #{req\ 2540}# #{labels\ 2553}# #{w\ 2520}#))) (#{expand-opt\ 2535}# (map syntax->datum #{req\ 2540}#) #{opt\ 2541}# #{rest\ 2542}# #{kw\ 2543}# #{body\ 2544}# (reverse #{vars\ 2552}#) #{r*\ 2556}# #{w*\ 2557}# '() '()))))))) (#{expand-opt\ 2535}# (lambda (#{req\ 2558}# #{opt\ 2559}# #{rest\ 2560}# #{kw\ 2561}# #{body\ 2562}# #{vars\ 2563}# #{r*\ 2564}# #{w*\ 2565}# #{out\ 2566}# #{inits\ 2567}#) (if (pair? #{opt\ 2559}#) (let ((#{tmp\ 2580}# (car #{opt\ 2559}#))) (let ((#{tmp\ 2581}# ($sc-dispatch #{tmp\ 2580}# '(any any)))) (if #{tmp\ 2581}# (@apply (lambda (#{id\ 2584}# #{i\ 2585}#) (begin (let ((#{v\ 2588}# (#{gen-var\ 488}# #{id\ 2584}#))) (begin (let ((#{l\ 2590}# (#{gen-labels\ 393}# (list #{v\ 2588}#)))) (begin (let ((#{r**\ 2592}# (#{extend-var-env\ 368}# #{l\ 2590}# (list #{v\ 2588}#) #{r*\ 2564}#))) (begin (let ((#{w**\ 2594}# (#{make-binding-wrap\ 422}# (list #{id\ 2584}#) #{l\ 2590}# #{w*\ 2565}#))) (#{expand-opt\ 2535}# #{req\ 2558}# (cdr #{opt\ 2559}#) #{rest\ 2560}# #{kw\ 2561}# #{body\ 2562}# (cons #{v\ 2588}# #{vars\ 2563}#) #{r**\ 2592}# #{w**\ 2594}# (cons (syntax->datum #{id\ 2584}#) #{out\ 2566}#) (cons (#{chi\ 460}# #{i\ 2585}# #{r*\ 2564}# #{w*\ 2565}# #{mod\ 2522}#) #{inits\ 2567}#))))))))))) #{tmp\ 2581}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2580}#)))) (if #{rest\ 2560}# (begin (let ((#{v\ 2599}# (#{gen-var\ 488}# #{rest\ 2560}#))) (begin (let ((#{l\ 2601}# (#{gen-labels\ 393}# (list #{v\ 2599}#)))) (begin (let ((#{r*\ 2603}# (#{extend-var-env\ 368}# #{l\ 2601}# (list #{v\ 2599}#) #{r*\ 2564}#))) (begin (let ((#{w*\ 2605}# (#{make-binding-wrap\ 422}# (list #{rest\ 2560}#) #{l\ 2601}# #{w*\ 2565}#))) (#{expand-kw\ 2537}# #{req\ 2558}# (if (pair? #{out\ 2566}#) (reverse #{out\ 2566}#) #f) (syntax->datum #{rest\ 2560}#) (if (pair? #{kw\ 2561}#) (cdr #{kw\ 2561}#) #{kw\ 2561}#) #{body\ 2562}# (cons #{v\ 2599}# #{vars\ 2563}#) #{r*\ 2603}# #{w*\ 2605}# (if (pair? #{kw\ 2561}#) (car #{kw\ 2561}#) #f) '() #{inits\ 2567}#))))))))) (#{expand-kw\ 2537}# #{req\ 2558}# (if (pair? #{out\ 2566}#) (reverse #{out\ 2566}#) #f) #f (if (pair? #{kw\ 2561}#) (cdr #{kw\ 2561}#) #{kw\ 2561}#) #{body\ 2562}# #{vars\ 2563}# #{r*\ 2564}# #{w*\ 2565}# (if (pair? #{kw\ 2561}#) (car #{kw\ 2561}#) #f) '() #{inits\ 2567}#))))) (#{expand-kw\ 2537}# (lambda (#{req\ 2607}# #{opt\ 2608}# #{rest\ 2609}# #{kw\ 2610}# #{body\ 2611}# #{vars\ 2612}# #{r*\ 2613}# #{w*\ 2614}# #{aok\ 2615}# #{out\ 2616}# #{inits\ 2617}#) (if (pair? #{kw\ 2610}#) (let ((#{tmp\ 2631}# (car #{kw\ 2610}#))) (let ((#{tmp\ 2632}# ($sc-dispatch #{tmp\ 2631}# '(any any any)))) (if #{tmp\ 2632}# (@apply (lambda (#{k\ 2636}# #{id\ 2637}# #{i\ 2638}#) (begin (let ((#{v\ 2641}# (#{gen-var\ 488}# #{id\ 2637}#))) (begin (let ((#{l\ 2643}# (#{gen-labels\ 393}# (list #{v\ 2641}#)))) (begin (let ((#{r**\ 2645}# (#{extend-var-env\ 368}# #{l\ 2643}# (list #{v\ 2641}#) #{r*\ 2613}#))) (begin (let ((#{w**\ 2647}# (#{make-binding-wrap\ 422}# (list #{id\ 2637}#) #{l\ 2643}# #{w*\ 2614}#))) (#{expand-kw\ 2537}# #{req\ 2607}# #{opt\ 2608}# #{rest\ 2609}# (cdr #{kw\ 2610}#) #{body\ 2611}# (cons #{v\ 2641}# #{vars\ 2612}#) #{r**\ 2645}# #{w**\ 2647}# #{aok\ 2615}# (cons (list (syntax->datum #{k\ 2636}#) (syntax->datum #{id\ 2637}#) #{v\ 2641}#) #{out\ 2616}#) (cons (#{chi\ 460}# #{i\ 2638}# #{r*\ 2613}# #{w*\ 2614}# #{mod\ 2522}#) #{inits\ 2617}#))))))))))) #{tmp\ 2632}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2631}#)))) (#{expand-body\ 2539}# #{req\ 2607}# #{opt\ 2608}# #{rest\ 2609}# (if (begin (let ((#{t\ 2651}# #{aok\ 2615}#)) (if #{t\ 2651}# #{t\ 2651}# (pair? #{out\ 2616}#)))) (cons #{aok\ 2615}# (reverse #{out\ 2616}#)) #f) #{body\ 2611}# (reverse #{vars\ 2612}#) #{r*\ 2613}# #{w*\ 2614}# (reverse #{inits\ 2617}#) '())))) (#{expand-body\ 2539}# (lambda (#{req\ 2653}# #{opt\ 2654}# #{rest\ 2655}# #{kw\ 2656}# #{body\ 2657}# #{vars\ 2658}# #{r*\ 2659}# #{w*\ 2660}# #{inits\ 2661}# #{meta\ 2662}#) (let ((#{tmp\ 2673}# #{body\ 2657}#)) (let ((#{tmp\ 2674}# ($sc-dispatch #{tmp\ 2673}# '(any any . each-any)))) (if (if #{tmp\ 2674}# (@apply (lambda (#{docstring\ 2678}# #{e1\ 2679}# #{e2\ 2680}#) (string? (syntax->datum #{docstring\ 2678}#))) #{tmp\ 2674}#) #f) (@apply (lambda (#{docstring\ 2684}# #{e1\ 2685}# #{e2\ 2686}#) (#{expand-body\ 2539}# #{req\ 2653}# #{opt\ 2654}# #{rest\ 2655}# #{kw\ 2656}# (cons #{e1\ 2685}# #{e2\ 2686}#) #{vars\ 2658}# #{r*\ 2659}# #{w*\ 2660}# #{inits\ 2661}# (append #{meta\ 2662}# (list (cons 'documentation (syntax->datum #{docstring\ 2684}#)))))) #{tmp\ 2674}#) (let ((#{tmp\ 2689}# ($sc-dispatch #{tmp\ 2673}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 2689}# (@apply (lambda (#{k\ 2694}# #{v\ 2695}# #{e1\ 2696}# #{e2\ 2697}#) (#{expand-body\ 2539}# #{req\ 2653}# #{opt\ 2654}# #{rest\ 2655}# #{kw\ 2656}# (cons #{e1\ 2696}# #{e2\ 2697}#) #{vars\ 2658}# #{r*\ 2659}# #{w*\ 2660}# #{inits\ 2661}# (append #{meta\ 2662}# (syntax->datum (map cons #{k\ 2694}# #{v\ 2695}#))))) #{tmp\ 2689}#) (let ((#{tmp\ 2701}# ($sc-dispatch #{tmp\ 2673}# '(any . each-any)))) (if #{tmp\ 2701}# (@apply (lambda (#{e1\ 2704}# #{e2\ 2705}#) (values #{meta\ 2662}# #{req\ 2653}# #{opt\ 2654}# #{rest\ 2655}# #{kw\ 2656}# #{inits\ 2661}# #{vars\ 2658}# (#{chi-body\ 468}# (cons #{e1\ 2704}# #{e2\ 2705}#) (#{source-wrap\ 446}# #{e\ 2518}# #{w\ 2520}# #{s\ 2521}# #{mod\ 2522}#) #{r*\ 2659}# #{w*\ 2660}# #{mod\ 2522}#))) #{tmp\ 2701}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2673}#))))))))))) (begin (let ((#{tmp\ 2707}# #{clauses\ 2524}#)) (let ((#{tmp\ 2708}# ($sc-dispatch #{tmp\ 2707}# (quote ())))) (if #{tmp\ 2708}# (@apply (lambda () (values (quote ()) #f)) #{tmp\ 2708}#) (let ((#{tmp\ 2709}# ($sc-dispatch #{tmp\ 2707}# '((any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 2709}# (@apply (lambda (#{args\ 2716}# #{e1\ 2717}# #{e2\ 2718}# #{args*\ 2719}# #{e1*\ 2720}# #{e2*\ 2721}#) (call-with-values (lambda () (#{get-formals\ 2523}# #{args\ 2716}#)) (lambda (#{req\ 2722}# #{opt\ 2723}# #{rest\ 2724}# #{kw\ 2725}#) (call-with-values (lambda () (#{expand-req\ 2533}# #{req\ 2722}# #{opt\ 2723}# #{rest\ 2724}# #{kw\ 2725}# (cons #{e1\ 2717}# #{e2\ 2718}#))) (lambda (#{meta\ 2731}# #{req\ 2732}# #{opt\ 2733}# #{rest\ 2734}# #{kw\ 2735}# #{inits\ 2736}# #{vars\ 2737}# #{body\ 2738}#) (call-with-values (lambda () (#{chi-lambda-case\ 484}# #{e\ 2518}# #{r\ 2519}# #{w\ 2520}# #{s\ 2521}# #{mod\ 2522}# #{get-formals\ 2523}# (map (lambda (#{tmp\ 2749}# #{tmp\ 2748}# #{tmp\ 2747}#) (cons #{tmp\ 2747}# (cons #{tmp\ 2748}# #{tmp\ 2749}#))) #{e2*\ 2721}# #{e1*\ 2720}# #{args*\ 2719}#))) (lambda (#{meta*\ 2751}# #{else*\ 2752}#) (values (append #{meta\ 2731}# #{meta*\ 2751}#) (#{build-lambda-case\ 326}# #{s\ 2521}# #{req\ 2732}# #{opt\ 2733}# #{rest\ 2734}# #{kw\ 2735}# #{inits\ 2736}# #{vars\ 2737}# #{body\ 2738}# #{else*\ 2752}#))))))))) #{tmp\ 2709}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2707}#)))))))))) (#{strip\ 486}# (lambda (#{x\ 2755}# #{w\ 2756}#) (if (memq (quote top) (car #{w\ 2756}#)) #{x\ 2755}# (letrec* ((#{f\ 2763}# (lambda (#{x\ 2764}#) (if (#{syntax-object?\ 344}# #{x\ 2764}#) (#{strip\ 486}# (#{syntax-object-expression\ 346}# #{x\ 2764}#) (#{syntax-object-wrap\ 348}# #{x\ 2764}#)) (if (pair? #{x\ 2764}#) (begin (let ((#{a\ 2771}# (#{f\ 2763}# (car #{x\ 2764}#))) (#{d\ 2772}# (#{f\ 2763}# (cdr #{x\ 2764}#)))) (if (if (eq? #{a\ 2771}# (car #{x\ 2764}#)) (eq? #{d\ 2772}# (cdr #{x\ 2764}#)) #f) #{x\ 2764}# (cons #{a\ 2771}# #{d\ 2772}#)))) (if (vector? #{x\ 2764}#) (begin (let ((#{old\ 2778}# (vector->list #{x\ 2764}#))) (begin (let ((#{new\ 2780}# (map #{f\ 2763}# #{old\ 2778}#))) (if (#{and-map*\ 36}# eq? #{old\ 2778}# #{new\ 2780}#) #{x\ 2764}# (list->vector #{new\ 2780}#)))))) #{x\ 2764}#)))))) (begin (#{f\ 2763}# #{x\ 2755}#)))))) (#{gen-var\ 488}# (lambda (#{id\ 2782}#) (begin (let ((#{id\ 2785}# (if (#{syntax-object?\ 344}# #{id\ 2782}#) (#{syntax-object-expression\ 346}# #{id\ 2782}#) #{id\ 2782}#))) (gensym (string-append (symbol->string #{id\ 2785}#) " ")))))) (#{lambda-var-list\ 490}# (lambda (#{vars\ 2787}#) (letrec* ((#{lvl\ 2793}# (lambda (#{vars\ 2794}# #{ls\ 2795}# #{w\ 2796}#) (if (pair? #{vars\ 2794}#) (#{lvl\ 2793}# (cdr #{vars\ 2794}#) (cons (#{wrap\ 444}# (car #{vars\ 2794}#) #{w\ 2796}# #f) #{ls\ 2795}#) #{w\ 2796}#) (if (#{id?\ 378}# #{vars\ 2794}#) (cons (#{wrap\ 444}# #{vars\ 2794}# #{w\ 2796}# #f) #{ls\ 2795}#) (if (null? #{vars\ 2794}#) #{ls\ 2795}# (if (#{syntax-object?\ 344}# #{vars\ 2794}#) (#{lvl\ 2793}# (#{syntax-object-expression\ 346}# #{vars\ 2794}#) #{ls\ 2795}# (#{join-wraps\ 426}# #{w\ 2796}# (#{syntax-object-wrap\ 348}# #{vars\ 2794}#))) (cons #{vars\ 2794}# #{ls\ 2795}#)))))))) (begin (#{lvl\ 2793}# #{vars\ 2787}# '() '(()))))))) (begin (set! #{make-primitive-ref\ 242}# (lambda (#{src\ 756}# #{name\ 757}#) (make-struct/no-tail (vector-ref %expanded-vtables 2) #{src\ 756}# #{name\ 757}#))) (set! #{fx+\ 281}# +) (set! #{fx-\ 283}# -) (set! #{fx=\ 285}# =) (set! #{fx<\ 287}# <) (set! #{set-syntax-object-expression!\ 352}# (lambda (#{x\ 1134}# #{update\ 1135}#) (vector-set! #{x\ 1134}# 1 #{update\ 1135}#))) (set! #{set-syntax-object-wrap!\ 354}# (lambda (#{x\ 1138}# #{update\ 1139}#) (vector-set! #{x\ 1138}# 2 #{update\ 1139}#))) (set! #{set-syntax-object-module!\ 356}# (lambda (#{x\ 1142}# #{update\ 1143}#) (vector-set! #{x\ 1142}# 3 #{update\ 1143}#))) (set! #{ribcage?\ 398}# (lambda (#{x\ 1223}#) (if (vector? #{x\ 1223}#) (if (= (vector-length #{x\ 1223}#) 4) (eq? (vector-ref #{x\ 1223}# 0) (quote ribcage)) #f) #f))) (begin (#{global-extend\ 374}# 'local-syntax 'letrec-syntax #t) (#{global-extend\ 374}# 'local-syntax 'let-syntax #f) (#{global-extend\ 374}# 'core 'fluid-let-syntax (lambda (#{e\ 2807}# #{r\ 2808}# #{w\ 2809}# #{s\ 2810}# #{mod\ 2811}#) (let ((#{tmp\ 2817}# #{e\ 2807}#)) (let ((#{tmp\ 2818}# ($sc-dispatch #{tmp\ 2817}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 2818}# (@apply (lambda (#{var\ 2823}# #{val\ 2824}# #{e1\ 2825}# #{e2\ 2826}#) (#{valid-bound-ids?\ 438}# #{var\ 2823}#)) #{tmp\ 2818}#) #f) (@apply (lambda (#{var\ 2832}# #{val\ 2833}# #{e1\ 2834}# #{e2\ 2835}#) (begin (let ((#{names\ 2837}# (map (lambda (#{x\ 2838}#) (#{id-var-name\ 432}# #{x\ 2838}# #{w\ 2809}#)) #{var\ 2832}#))) (begin (for-each (lambda (#{id\ 2841}# #{n\ 2842}#) (begin (let ((#{atom-key\ 2847}# (car (#{lookup\ 372}# #{n\ 2842}# #{r\ 2808}# #{mod\ 2811}#)))) (if (eqv? #{atom-key\ 2847}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 2807}# (#{source-wrap\ 446}# #{id\ 2841}# #{w\ 2809}# #{s\ 2810}# #{mod\ 2811}#)))))) #{var\ 2832}# #{names\ 2837}#) (#{chi-body\ 468}# (cons #{e1\ 2834}# #{e2\ 2835}#) (#{source-wrap\ 446}# #{e\ 2807}# #{w\ 2809}# #{s\ 2810}# #{mod\ 2811}#) (#{extend-env\ 366}# #{names\ 2837}# (begin (let ((#{trans-r\ 2853}# (#{macros-only-env\ 370}# #{r\ 2808}#))) (map (lambda (#{x\ 2854}#) (cons 'macro (#{eval-local-transformer\ 472}# (#{chi\ 460}# #{x\ 2854}# #{trans-r\ 2853}# #{w\ 2809}# #{mod\ 2811}#) #{mod\ 2811}#))) #{val\ 2833}#))) #{r\ 2808}#) #{w\ 2809}# #{mod\ 2811}#))))) #{tmp\ 2818}#) (let ((#{_\ 2859}# #{tmp\ 2817}#)) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 446}# #{e\ 2807}# #{w\ 2809}# #{s\ 2810}# #{mod\ 2811}#)))))))) (#{global-extend\ 374}# 'core 'quote (lambda (#{e\ 2860}# #{r\ 2861}# #{w\ 2862}# #{s\ 2863}# #{mod\ 2864}#) (let ((#{tmp\ 2870}# #{e\ 2860}#)) (let ((#{tmp\ 2871}# ($sc-dispatch #{tmp\ 2870}# (quote (_ any))))) (if #{tmp\ 2871}# (@apply (lambda (#{e\ 2873}#) (#{build-data\ 330}# #{s\ 2863}# (#{strip\ 486}# #{e\ 2873}# #{w\ 2862}#))) #{tmp\ 2871}#) (let ((#{_\ 2875}# #{tmp\ 2870}#)) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 446}# #{e\ 2860}# #{w\ 2862}# #{s\ 2863}# #{mod\ 2864}#)))))))) (#{global-extend\ 374}# 'core 'syntax (letrec* ((#{gen-syntax\ 2877}# (lambda (#{src\ 2892}# #{e\ 2893}# #{r\ 2894}# #{maps\ 2895}# #{ellipsis?\ 2896}# #{mod\ 2897}#) (if (#{id?\ 378}# #{e\ 2893}#) (begin (let ((#{label\ 2905}# (#{id-var-name\ 432}# #{e\ 2893}# '(())))) (begin (let ((#{b\ 2908}# (#{lookup\ 372}# #{label\ 2905}# #{r\ 2894}# #{mod\ 2897}#))) (if (eq? (car #{b\ 2908}#) (quote syntax)) (call-with-values (lambda () (begin (let ((#{var.lev\ 2911}# (cdr #{b\ 2908}#))) (#{gen-ref\ 2879}# #{src\ 2892}# (car #{var.lev\ 2911}#) (cdr #{var.lev\ 2911}#) #{maps\ 2895}#)))) (lambda (#{var\ 2913}# #{maps\ 2914}#) (values (list (quote ref) #{var\ 2913}#) #{maps\ 2914}#))) (if (#{ellipsis?\ 2896}# #{e\ 2893}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 2892}#) (values (list (quote quote) #{e\ 2893}#) #{maps\ 2895}#))))))) (let ((#{tmp\ 2919}# #{e\ 2893}#)) (let ((#{tmp\ 2920}# ($sc-dispatch #{tmp\ 2919}# '(any any)))) (if (if #{tmp\ 2920}# (@apply (lambda (#{dots\ 2923}# #{e\ 2924}#) (#{ellipsis?\ 2896}# #{dots\ 2923}#)) #{tmp\ 2920}#) #f) (@apply (lambda (#{dots\ 2927}# #{e\ 2928}#) (#{gen-syntax\ 2877}# #{src\ 2892}# #{e\ 2928}# #{r\ 2894}# #{maps\ 2895}# (lambda (#{x\ 2929}#) #f) #{mod\ 2897}#)) #{tmp\ 2920}#) (let ((#{tmp\ 2931}# ($sc-dispatch #{tmp\ 2919}# '(any any . any)))) (if (if #{tmp\ 2931}# (@apply (lambda (#{x\ 2935}# #{dots\ 2936}# #{y\ 2937}#) (#{ellipsis?\ 2896}# #{dots\ 2936}#)) #{tmp\ 2931}#) #f) (@apply (lambda (#{x\ 2941}# #{dots\ 2942}# #{y\ 2943}#) (letrec* ((#{f\ 2947}# (lambda (#{y\ 2948}# #{k\ 2949}#) (let ((#{tmp\ 2956}# #{y\ 2948}#)) (let ((#{tmp\ 2957}# ($sc-dispatch #{tmp\ 2956}# '(any . any)))) (if (if #{tmp\ 2957}# (@apply (lambda (#{dots\ 2960}# #{y\ 2961}#) (#{ellipsis?\ 2896}# #{dots\ 2960}#)) #{tmp\ 2957}#) #f) (@apply (lambda (#{dots\ 2964}# #{y\ 2965}#) (#{f\ 2947}# #{y\ 2965}# (lambda (#{maps\ 2966}#) (call-with-values (lambda () (#{k\ 2949}# (cons '() #{maps\ 2966}#))) (lambda (#{x\ 2968}# #{maps\ 2969}#) (if (null? (car #{maps\ 2969}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2892}#) (values (#{gen-mappend\ 2881}# #{x\ 2968}# (car #{maps\ 2969}#)) (cdr #{maps\ 2969}#)))))))) #{tmp\ 2957}#) (let ((#{_\ 2973}# #{tmp\ 2956}#)) (call-with-values (lambda () (#{gen-syntax\ 2877}# #{src\ 2892}# #{y\ 2948}# #{r\ 2894}# #{maps\ 2895}# #{ellipsis?\ 2896}# #{mod\ 2897}#)) (lambda (#{y\ 2974}# #{maps\ 2975}#) (call-with-values (lambda () (#{k\ 2949}# #{maps\ 2975}#)) (lambda (#{x\ 2978}# #{maps\ 2979}#) (values (#{gen-append\ 2887}# #{x\ 2978}# #{y\ 2974}#) #{maps\ 2979}#)))))))))))) (begin (#{f\ 2947}# #{y\ 2943}# (lambda (#{maps\ 2950}#) (call-with-values (lambda () (#{gen-syntax\ 2877}# #{src\ 2892}# #{x\ 2941}# #{r\ 2894}# (cons '() #{maps\ 2950}#) #{ellipsis?\ 2896}# #{mod\ 2897}#)) (lambda (#{x\ 2952}# #{maps\ 2953}#) (if (null? (car #{maps\ 2953}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2892}#) (values (#{gen-map\ 2883}# #{x\ 2952}# (car #{maps\ 2953}#)) (cdr #{maps\ 2953}#)))))))))) #{tmp\ 2931}#) (let ((#{tmp\ 2982}# ($sc-dispatch #{tmp\ 2919}# '(any . any)))) (if #{tmp\ 2982}# (@apply (lambda (#{x\ 2985}# #{y\ 2986}#) (call-with-values (lambda () (#{gen-syntax\ 2877}# #{src\ 2892}# #{x\ 2985}# #{r\ 2894}# #{maps\ 2895}# #{ellipsis?\ 2896}# #{mod\ 2897}#)) (lambda (#{x\ 2987}# #{maps\ 2988}#) (call-with-values (lambda () (#{gen-syntax\ 2877}# #{src\ 2892}# #{y\ 2986}# #{r\ 2894}# #{maps\ 2988}# #{ellipsis?\ 2896}# #{mod\ 2897}#)) (lambda (#{y\ 2991}# #{maps\ 2992}#) (values (#{gen-cons\ 2885}# #{x\ 2987}# #{y\ 2991}#) #{maps\ 2992}#)))))) #{tmp\ 2982}#) (let ((#{tmp\ 2995}# ($sc-dispatch #{tmp\ 2919}# '#(vector (any . each-any))))) (if #{tmp\ 2995}# (@apply (lambda (#{e1\ 2998}# #{e2\ 2999}#) (call-with-values (lambda () (#{gen-syntax\ 2877}# #{src\ 2892}# (cons #{e1\ 2998}# #{e2\ 2999}#) #{r\ 2894}# #{maps\ 2895}# #{ellipsis?\ 2896}# #{mod\ 2897}#)) (lambda (#{e\ 3001}# #{maps\ 3002}#) (values (#{gen-vector\ 2889}# #{e\ 3001}#) #{maps\ 3002}#)))) #{tmp\ 2995}#) (let ((#{_\ 3006}# #{tmp\ 2919}#)) (values (list (quote quote) #{e\ 2893}#) #{maps\ 2895}#)))))))))))))) (#{gen-ref\ 2879}# (lambda (#{src\ 3008}# #{var\ 3009}# #{level\ 3010}# #{maps\ 3011}#) (if (#{fx=\ 285}# #{level\ 3010}# 0) (values #{var\ 3009}# #{maps\ 3011}#) (if (null? #{maps\ 3011}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 3008}#) (call-with-values (lambda () (#{gen-ref\ 2879}# #{src\ 3008}# #{var\ 3009}# (#{fx-\ 283}# #{level\ 3010}# 1) (cdr #{maps\ 3011}#))) (lambda (#{outer-var\ 3016}# #{outer-maps\ 3017}#) (begin (let ((#{b\ 3021}# (assq #{outer-var\ 3016}# (car #{maps\ 3011}#)))) (if #{b\ 3021}# (values (cdr #{b\ 3021}#) #{maps\ 3011}#) (begin (let ((#{inner-var\ 3023}# (#{gen-var\ 488}# (quote tmp)))) (values #{inner-var\ 3023}# (cons (cons (cons #{outer-var\ 3016}# #{inner-var\ 3023}#) (car #{maps\ 3011}#)) #{outer-maps\ 3017}#))))))))))))) (#{gen-mappend\ 2881}# (lambda (#{e\ 3024}# #{map-env\ 3025}#) (list 'apply '(primitive append) (#{gen-map\ 2883}# #{e\ 3024}# #{map-env\ 3025}#)))) (#{gen-map\ 2883}# (lambda (#{e\ 3029}# #{map-env\ 3030}#) (begin (let ((#{formals\ 3035}# (map cdr #{map-env\ 3030}#)) (#{actuals\ 3036}# (map (lambda (#{x\ 3037}#) (list (quote ref) (car #{x\ 3037}#))) #{map-env\ 3030}#))) (if (eq? (car #{e\ 3029}#) (quote ref)) (car #{actuals\ 3036}#) (if (and-map (lambda (#{x\ 3044}#) (if (eq? (car #{x\ 3044}#) (quote ref)) (memq (car (cdr #{x\ 3044}#)) #{formals\ 3035}#) #f)) (cdr #{e\ 3029}#)) (cons 'map (cons (list 'primitive (car #{e\ 3029}#)) (map (begin (let ((#{r\ 3050}# (map cons #{formals\ 3035}# #{actuals\ 3036}#))) (lambda (#{x\ 3051}#) (cdr (assq (car (cdr #{x\ 3051}#)) #{r\ 3050}#))))) (cdr #{e\ 3029}#)))) (cons 'map (cons (list 'lambda #{formals\ 3035}# #{e\ 3029}#) #{actuals\ 3036}#)))))))) (#{gen-cons\ 2885}# (lambda (#{x\ 3055}# #{y\ 3056}#) (begin (let ((#{atom-key\ 3061}# (car #{y\ 3056}#))) (if (eqv? #{atom-key\ 3061}# (quote quote)) (if (eq? (car #{x\ 3055}#) (quote quote)) (list 'quote (cons (car (cdr #{x\ 3055}#)) (car (cdr #{y\ 3056}#)))) (if (eq? (car (cdr #{y\ 3056}#)) (quote ())) (list (quote list) #{x\ 3055}#) (list (quote cons) #{x\ 3055}# #{y\ 3056}#))) (if (eqv? #{atom-key\ 3061}# (quote list)) (cons 'list (cons #{x\ 3055}# (cdr #{y\ 3056}#))) (list (quote cons) #{x\ 3055}# #{y\ 3056}#))))))) (#{gen-append\ 2887}# (lambda (#{x\ 3070}# #{y\ 3071}#) (if (equal? #{y\ 3071}# (quote (quote ()))) #{x\ 3070}# (list (quote append) #{x\ 3070}# #{y\ 3071}#)))) (#{gen-vector\ 2889}# (lambda (#{x\ 3075}#) (if (eq? (car #{x\ 3075}#) (quote list)) (cons (quote vector) (cdr #{x\ 3075}#)) (if (eq? (car #{x\ 3075}#) (quote quote)) (list 'quote (list->vector (car (cdr #{x\ 3075}#)))) (list (quote list->vector) #{x\ 3075}#))))) (#{regen\ 2891}# (lambda (#{x\ 3085}#) (begin (let ((#{atom-key\ 3089}# (car #{x\ 3085}#))) (if (eqv? #{atom-key\ 3089}# (quote ref)) (#{build-lexical-reference\ 310}# 'value #f (car (cdr #{x\ 3085}#)) (car (cdr #{x\ 3085}#))) (if (eqv? #{atom-key\ 3089}# (quote primitive)) (#{build-primref\ 328}# #f (car (cdr #{x\ 3085}#))) (if (eqv? #{atom-key\ 3089}# (quote quote)) (#{build-data\ 330}# #f (car (cdr #{x\ 3085}#))) (if (eqv? #{atom-key\ 3089}# (quote lambda)) (if (list? (car (cdr #{x\ 3085}#))) (#{build-simple-lambda\ 322}# #f (car (cdr #{x\ 3085}#)) #f (car (cdr #{x\ 3085}#)) '() (#{regen\ 2891}# (car (cdr (cdr #{x\ 3085}#))))) (error "how did we get here" #{x\ 3085}#)) (#{build-application\ 304}# #f (#{build-primref\ 328}# #f (car #{x\ 3085}#)) (map #{regen\ 2891}# (cdr #{x\ 3085}#)))))))))))) (begin (lambda (#{e\ 3101}# #{r\ 3102}# #{w\ 3103}# #{s\ 3104}# #{mod\ 3105}#) (begin (let ((#{e\ 3112}# (#{source-wrap\ 446}# #{e\ 3101}# #{w\ 3103}# #{s\ 3104}# #{mod\ 3105}#))) (let ((#{tmp\ 3113}# #{e\ 3112}#)) (let ((#{tmp\ 3114}# ($sc-dispatch #{tmp\ 3113}# '(_ any)))) (if #{tmp\ 3114}# (@apply (lambda (#{x\ 3116}#) (call-with-values (lambda () (#{gen-syntax\ 2877}# #{e\ 3112}# #{x\ 3116}# #{r\ 3102}# '() #{ellipsis?\ 476}# #{mod\ 3105}#)) (lambda (#{e\ 3117}# #{maps\ 3118}#) (#{regen\ 2891}# #{e\ 3117}#)))) #{tmp\ 3114}#) (let ((#{_\ 3122}# #{tmp\ 3113}#)) (syntax-violation 'syntax "bad `syntax' form" #{e\ 3112}#))))))))))) (#{global-extend\ 374}# 'core 'lambda (lambda (#{e\ 3123}# #{r\ 3124}# #{w\ 3125}# #{s\ 3126}# #{mod\ 3127}#) (let ((#{tmp\ 3133}# #{e\ 3123}#)) (let ((#{tmp\ 3134}# ($sc-dispatch #{tmp\ 3133}# '(_ any any . each-any)))) (if #{tmp\ 3134}# (@apply (lambda (#{args\ 3138}# #{e1\ 3139}# #{e2\ 3140}#) (call-with-values (lambda () (#{lambda-formals\ 478}# #{args\ 3138}#)) (lambda (#{req\ 3141}# #{opt\ 3142}# #{rest\ 3143}# #{kw\ 3144}#) (letrec* ((#{lp\ 3152}# (lambda (#{body\ 3153}# #{meta\ 3154}#) (let ((#{tmp\ 3156}# #{body\ 3153}#)) (let ((#{tmp\ 3157}# ($sc-dispatch #{tmp\ 3156}# '(any any . each-any)))) (if (if #{tmp\ 3157}# (@apply (lambda (#{docstring\ 3161}# #{e1\ 3162}# #{e2\ 3163}#) (string? (syntax->datum #{docstring\ 3161}#))) #{tmp\ 3157}#) #f) (@apply (lambda (#{docstring\ 3167}# #{e1\ 3168}# #{e2\ 3169}#) (#{lp\ 3152}# (cons #{e1\ 3168}# #{e2\ 3169}#) (append #{meta\ 3154}# (list (cons 'documentation (syntax->datum #{docstring\ 3167}#)))))) #{tmp\ 3157}#) (let ((#{tmp\ 3172}# ($sc-dispatch #{tmp\ 3156}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 3172}# (@apply (lambda (#{k\ 3177}# #{v\ 3178}# #{e1\ 3179}# #{e2\ 3180}#) (#{lp\ 3152}# (cons #{e1\ 3179}# #{e2\ 3180}#) (append #{meta\ 3154}# (syntax->datum (map cons #{k\ 3177}# #{v\ 3178}#))))) #{tmp\ 3172}#) (let ((#{_\ 3185}# #{tmp\ 3156}#)) (#{chi-simple-lambda\ 480}# #{e\ 3123}# #{r\ 3124}# #{w\ 3125}# #{s\ 3126}# #{mod\ 3127}# #{req\ 3141}# #{rest\ 3143}# #{meta\ 3154}# #{body\ 3153}#)))))))))) (begin (#{lp\ 3152}# (cons #{e1\ 3139}# #{e2\ 3140}#) '())))))) #{tmp\ 3134}#) (let ((#{_\ 3187}# #{tmp\ 3133}#)) (syntax-violation 'lambda "bad lambda" #{e\ 3123}#))))))) (#{global-extend\ 374}# 'core 'lambda* (lambda (#{e\ 3188}# #{r\ 3189}# #{w\ 3190}# #{s\ 3191}# #{mod\ 3192}#) (let ((#{tmp\ 3198}# #{e\ 3188}#)) (let ((#{tmp\ 3199}# ($sc-dispatch #{tmp\ 3198}# '(_ any any . each-any)))) (if #{tmp\ 3199}# (@apply (lambda (#{args\ 3203}# #{e1\ 3204}# #{e2\ 3205}#) (call-with-values (lambda () (#{chi-lambda-case\ 484}# #{e\ 3188}# #{r\ 3189}# #{w\ 3190}# #{s\ 3191}# #{mod\ 3192}# #{lambda*-formals\ 482}# (list (cons #{args\ 3203}# (cons #{e1\ 3204}# #{e2\ 3205}#))))) (lambda (#{meta\ 3207}# #{lcase\ 3208}#) (#{build-case-lambda\ 324}# #{s\ 3191}# #{meta\ 3207}# #{lcase\ 3208}#)))) #{tmp\ 3199}#) (let ((#{_\ 3212}# #{tmp\ 3198}#)) (syntax-violation 'lambda "bad lambda*" #{e\ 3188}#))))))) (#{global-extend\ 374}# 'core 'case-lambda (lambda (#{e\ 3213}# #{r\ 3214}# #{w\ 3215}# #{s\ 3216}# #{mod\ 3217}#) (let ((#{tmp\ 3223}# #{e\ 3213}#)) (let ((#{tmp\ 3224}# ($sc-dispatch #{tmp\ 3223}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3224}# (@apply (lambda (#{args\ 3231}# #{e1\ 3232}# #{e2\ 3233}# #{args*\ 3234}# #{e1*\ 3235}# #{e2*\ 3236}#) (call-with-values (lambda () (#{chi-lambda-case\ 484}# #{e\ 3213}# #{r\ 3214}# #{w\ 3215}# #{s\ 3216}# #{mod\ 3217}# #{lambda-formals\ 478}# (cons (cons #{args\ 3231}# (cons #{e1\ 3232}# #{e2\ 3233}#)) (map (lambda (#{tmp\ 3240}# #{tmp\ 3239}# #{tmp\ 3238}#) (cons #{tmp\ 3238}# (cons #{tmp\ 3239}# #{tmp\ 3240}#))) #{e2*\ 3236}# #{e1*\ 3235}# #{args*\ 3234}#)))) (lambda (#{meta\ 3242}# #{lcase\ 3243}#) (#{build-case-lambda\ 324}# #{s\ 3216}# #{meta\ 3242}# #{lcase\ 3243}#)))) #{tmp\ 3224}#) (let ((#{_\ 3247}# #{tmp\ 3223}#)) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 3213}#))))))) (#{global-extend\ 374}# 'core 'case-lambda* (lambda (#{e\ 3248}# #{r\ 3249}# #{w\ 3250}# #{s\ 3251}# #{mod\ 3252}#) (let ((#{tmp\ 3258}# #{e\ 3248}#)) (let ((#{tmp\ 3259}# ($sc-dispatch #{tmp\ 3258}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3259}# (@apply (lambda (#{args\ 3266}# #{e1\ 3267}# #{e2\ 3268}# #{args*\ 3269}# #{e1*\ 3270}# #{e2*\ 3271}#) (call-with-values (lambda () (#{chi-lambda-case\ 484}# #{e\ 3248}# #{r\ 3249}# #{w\ 3250}# #{s\ 3251}# #{mod\ 3252}# #{lambda*-formals\ 482}# (cons (cons #{args\ 3266}# (cons #{e1\ 3267}# #{e2\ 3268}#)) (map (lambda (#{tmp\ 3275}# #{tmp\ 3274}# #{tmp\ 3273}#) (cons #{tmp\ 3273}# (cons #{tmp\ 3274}# #{tmp\ 3275}#))) #{e2*\ 3271}# #{e1*\ 3270}# #{args*\ 3269}#)))) (lambda (#{meta\ 3277}# #{lcase\ 3278}#) (#{build-case-lambda\ 324}# #{s\ 3251}# #{meta\ 3277}# #{lcase\ 3278}#)))) #{tmp\ 3259}#) (let ((#{_\ 3282}# #{tmp\ 3258}#)) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 3248}#))))))) (#{global-extend\ 374}# 'core 'let (letrec* ((#{chi-let\ 3284}# (lambda (#{e\ 3285}# #{r\ 3286}# #{w\ 3287}# #{s\ 3288}# #{mod\ 3289}# #{constructor\ 3290}# #{ids\ 3291}# #{vals\ 3292}# #{exps\ 3293}#) (if (not (#{valid-bound-ids?\ 438}# #{ids\ 3291}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 3285}#) (begin (let ((#{labels\ 3305}# (#{gen-labels\ 393}# #{ids\ 3291}#)) (#{new-vars\ 3306}# (map #{gen-var\ 488}# #{ids\ 3291}#))) (begin (let ((#{nw\ 3309}# (#{make-binding-wrap\ 422}# #{ids\ 3291}# #{labels\ 3305}# #{w\ 3287}#)) (#{nr\ 3310}# (#{extend-var-env\ 368}# #{labels\ 3305}# #{new-vars\ 3306}# #{r\ 3286}#))) (#{constructor\ 3290}# #{s\ 3288}# (map syntax->datum #{ids\ 3291}#) #{new-vars\ 3306}# (map (lambda (#{x\ 3311}#) (#{chi\ 460}# #{x\ 3311}# #{r\ 3286}# #{w\ 3287}# #{mod\ 3289}#)) #{vals\ 3292}#) (#{chi-body\ 468}# #{exps\ 3293}# (#{source-wrap\ 446}# #{e\ 3285}# #{nw\ 3309}# #{s\ 3288}# #{mod\ 3289}#) #{nr\ 3310}# #{nw\ 3309}# #{mod\ 3289}#)))))))))) (begin (lambda (#{e\ 3313}# #{r\ 3314}# #{w\ 3315}# #{s\ 3316}# #{mod\ 3317}#) (let ((#{tmp\ 3323}# #{e\ 3313}#)) (let ((#{tmp\ 3324}# ($sc-dispatch #{tmp\ 3323}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3324}# (@apply (lambda (#{id\ 3329}# #{val\ 3330}# #{e1\ 3331}# #{e2\ 3332}#) (and-map #{id?\ 378}# #{id\ 3329}#)) #{tmp\ 3324}#) #f) (@apply (lambda (#{id\ 3338}# #{val\ 3339}# #{e1\ 3340}# #{e2\ 3341}#) (#{chi-let\ 3284}# #{e\ 3313}# #{r\ 3314}# #{w\ 3315}# #{s\ 3316}# #{mod\ 3317}# #{build-let\ 334}# #{id\ 3338}# #{val\ 3339}# (cons #{e1\ 3340}# #{e2\ 3341}#))) #{tmp\ 3324}#) (let ((#{tmp\ 3345}# ($sc-dispatch #{tmp\ 3323}# '(_ any #(each (any any)) any . each-any)))) (if (if #{tmp\ 3345}# (@apply (lambda (#{f\ 3351}# #{id\ 3352}# #{val\ 3353}# #{e1\ 3354}# #{e2\ 3355}#) (if (#{id?\ 378}# #{f\ 3351}#) (and-map #{id?\ 378}# #{id\ 3352}#) #f)) #{tmp\ 3345}#) #f) (@apply (lambda (#{f\ 3364}# #{id\ 3365}# #{val\ 3366}# #{e1\ 3367}# #{e2\ 3368}#) (#{chi-let\ 3284}# #{e\ 3313}# #{r\ 3314}# #{w\ 3315}# #{s\ 3316}# #{mod\ 3317}# #{build-named-let\ 336}# (cons #{f\ 3364}# #{id\ 3365}#) #{val\ 3366}# (cons #{e1\ 3367}# #{e2\ 3368}#))) #{tmp\ 3345}#) (let ((#{_\ 3373}# #{tmp\ 3323}#)) (syntax-violation 'let "bad let" (#{source-wrap\ 446}# #{e\ 3313}# #{w\ 3315}# #{s\ 3316}# #{mod\ 3317}#)))))))))))) (#{global-extend\ 374}# 'core 'letrec (lambda (#{e\ 3374}# #{r\ 3375}# #{w\ 3376}# #{s\ 3377}# #{mod\ 3378}#) (let ((#{tmp\ 3384}# #{e\ 3374}#)) (let ((#{tmp\ 3385}# ($sc-dispatch #{tmp\ 3384}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3385}# (@apply (lambda (#{id\ 3390}# #{val\ 3391}# #{e1\ 3392}# #{e2\ 3393}#) (and-map #{id?\ 378}# #{id\ 3390}#)) #{tmp\ 3385}#) #f) (@apply (lambda (#{id\ 3399}# #{val\ 3400}# #{e1\ 3401}# #{e2\ 3402}#) (begin (let ((#{ids\ 3404}# #{id\ 3399}#)) (if (not (#{valid-bound-ids?\ 438}# #{ids\ 3404}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 3374}#) (begin (let ((#{labels\ 3408}# (#{gen-labels\ 393}# #{ids\ 3404}#)) (#{new-vars\ 3409}# (map #{gen-var\ 488}# #{ids\ 3404}#))) (begin (let ((#{w\ 3412}# (#{make-binding-wrap\ 422}# #{ids\ 3404}# #{labels\ 3408}# #{w\ 3376}#)) (#{r\ 3413}# (#{extend-var-env\ 368}# #{labels\ 3408}# #{new-vars\ 3409}# #{r\ 3375}#))) (#{build-letrec\ 338}# #{s\ 3377}# #f (map syntax->datum #{ids\ 3404}#) #{new-vars\ 3409}# (map (lambda (#{x\ 3414}#) (#{chi\ 460}# #{x\ 3414}# #{r\ 3413}# #{w\ 3412}# #{mod\ 3378}#)) #{val\ 3400}#) (#{chi-body\ 468}# (cons #{e1\ 3401}# #{e2\ 3402}#) (#{source-wrap\ 446}# #{e\ 3374}# #{w\ 3412}# #{s\ 3377}# #{mod\ 3378}#) #{r\ 3413}# #{w\ 3412}# #{mod\ 3378}#)))))))))) #{tmp\ 3385}#) (let ((#{_\ 3419}# #{tmp\ 3384}#)) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 446}# #{e\ 3374}# #{w\ 3376}# #{s\ 3377}# #{mod\ 3378}#)))))))) (#{global-extend\ 374}# 'core 'letrec* (lambda (#{e\ 3420}# #{r\ 3421}# #{w\ 3422}# #{s\ 3423}# #{mod\ 3424}#) (let ((#{tmp\ 3430}# #{e\ 3420}#)) (let ((#{tmp\ 3431}# ($sc-dispatch #{tmp\ 3430}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3431}# (@apply (lambda (#{id\ 3436}# #{val\ 3437}# #{e1\ 3438}# #{e2\ 3439}#) (and-map #{id?\ 378}# #{id\ 3436}#)) #{tmp\ 3431}#) #f) (@apply (lambda (#{id\ 3445}# #{val\ 3446}# #{e1\ 3447}# #{e2\ 3448}#) (begin (let ((#{ids\ 3450}# #{id\ 3445}#)) (if (not (#{valid-bound-ids?\ 438}# #{ids\ 3450}#)) (syntax-violation 'letrec* "duplicate bound variable" #{e\ 3420}#) (begin (let ((#{labels\ 3454}# (#{gen-labels\ 393}# #{ids\ 3450}#)) (#{new-vars\ 3455}# (map #{gen-var\ 488}# #{ids\ 3450}#))) (begin (let ((#{w\ 3458}# (#{make-binding-wrap\ 422}# #{ids\ 3450}# #{labels\ 3454}# #{w\ 3422}#)) (#{r\ 3459}# (#{extend-var-env\ 368}# #{labels\ 3454}# #{new-vars\ 3455}# #{r\ 3421}#))) (#{build-letrec\ 338}# #{s\ 3423}# #t (map syntax->datum #{ids\ 3450}#) #{new-vars\ 3455}# (map (lambda (#{x\ 3460}#) (#{chi\ 460}# #{x\ 3460}# #{r\ 3459}# #{w\ 3458}# #{mod\ 3424}#)) #{val\ 3446}#) (#{chi-body\ 468}# (cons #{e1\ 3447}# #{e2\ 3448}#) (#{source-wrap\ 446}# #{e\ 3420}# #{w\ 3458}# #{s\ 3423}# #{mod\ 3424}#) #{r\ 3459}# #{w\ 3458}# #{mod\ 3424}#)))))))))) #{tmp\ 3431}#) (let ((#{_\ 3465}# #{tmp\ 3430}#)) (syntax-violation 'letrec* "bad letrec*" (#{source-wrap\ 446}# #{e\ 3420}# #{w\ 3422}# #{s\ 3423}# #{mod\ 3424}#)))))))) (#{global-extend\ 374}# 'core 'set! (lambda (#{e\ 3466}# #{r\ 3467}# #{w\ 3468}# #{s\ 3469}# #{mod\ 3470}#) (let ((#{tmp\ 3476}# #{e\ 3466}#)) (let ((#{tmp\ 3477}# ($sc-dispatch #{tmp\ 3476}# (quote (_ any any))))) (if (if #{tmp\ 3477}# (@apply (lambda (#{id\ 3480}# #{val\ 3481}#) (#{id?\ 378}# #{id\ 3480}#)) #{tmp\ 3477}#) #f) (@apply (lambda (#{id\ 3484}# #{val\ 3485}#) (begin (let ((#{n\ 3488}# (#{id-var-name\ 432}# #{id\ 3484}# #{w\ 3468}#)) (#{id-mod\ 3489}# (if (#{syntax-object?\ 344}# #{id\ 3484}#) (#{syntax-object-module\ 350}# #{id\ 3484}#) #{mod\ 3470}#))) (begin (let ((#{b\ 3491}# (#{lookup\ 372}# #{n\ 3488}# #{r\ 3467}# #{id-mod\ 3489}#))) (begin (let ((#{atom-key\ 3494}# (car #{b\ 3491}#))) (if (eqv? #{atom-key\ 3494}# 'lexical) (#{build-lexical-assignment\ 312}# #{s\ 3469}# (syntax->datum #{id\ 3484}#) (cdr #{b\ 3491}#) (#{chi\ 460}# #{val\ 3485}# #{r\ 3467}# #{w\ 3468}# #{mod\ 3470}#)) (if (eqv? #{atom-key\ 3494}# 'global) (#{build-global-assignment\ 318}# #{s\ 3469}# #{n\ 3488}# (#{chi\ 460}# #{val\ 3485}# #{r\ 3467}# #{w\ 3468}# #{mod\ 3470}#) #{id-mod\ 3489}#) (if (eqv? #{atom-key\ 3494}# 'macro) (begin (let ((#{p\ 3501}# (cdr #{b\ 3491}#))) (if (procedure-property #{p\ 3501}# 'variable-transformer) (#{chi\ 460}# (#{chi-macro\ 466}# #{p\ 3501}# #{e\ 3466}# #{r\ 3467}# #{w\ 3468}# #{s\ 3469}# #f #{mod\ 3470}#) #{r\ 3467}# '(()) #{mod\ 3470}#) (syntax-violation 'set! "not a variable transformer" (#{wrap\ 444}# #{e\ 3466}# #{w\ 3468}# #{mod\ 3470}#) (#{wrap\ 444}# #{id\ 3484}# #{w\ 3468}# #{id-mod\ 3489}#))))) (if (eqv? #{atom-key\ 3494}# 'displaced-lexical) (syntax-violation 'set! "identifier out of context" (#{wrap\ 444}# #{id\ 3484}# #{w\ 3468}# #{mod\ 3470}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 446}# #{e\ 3466}# #{w\ 3468}# #{s\ 3469}# #{mod\ 3470}#))))))))))))) #{tmp\ 3477}#) (let ((#{tmp\ 3506}# ($sc-dispatch #{tmp\ 3476}# '(_ (any . each-any) any)))) (if #{tmp\ 3506}# (@apply (lambda (#{head\ 3510}# #{tail\ 3511}# #{val\ 3512}#) (call-with-values (lambda () (#{syntax-type\ 456}# #{head\ 3510}# #{r\ 3467}# '(()) #f #f #{mod\ 3470}# #t)) (lambda (#{type\ 3515}# #{value\ 3516}# #{ee\ 3517}# #{ww\ 3518}# #{ss\ 3519}# #{modmod\ 3520}#) (if (eqv? #{type\ 3515}# (quote module-ref)) (begin (let ((#{val\ 3529}# (#{chi\ 460}# #{val\ 3512}# #{r\ 3467}# #{w\ 3468}# #{mod\ 3470}#))) (call-with-values (lambda () (#{value\ 3516}# (cons #{head\ 3510}# #{tail\ 3511}#) #{r\ 3467}# #{w\ 3468}#)) (lambda (#{e\ 3531}# #{r\ 3532}# #{w\ 3533}# #{s*\ 3534}# #{mod\ 3535}#) (let ((#{tmp\ 3541}# #{e\ 3531}#)) (let ((#{tmp\ 3542}# (list #{tmp\ 3541}#))) (if (if #{tmp\ 3542}# (@apply (lambda (#{e\ 3544}#) (#{id?\ 378}# #{e\ 3544}#)) #{tmp\ 3542}#) #f) (@apply (lambda (#{e\ 3546}#) (#{build-global-assignment\ 318}# #{s\ 3469}# (syntax->datum #{e\ 3546}#) #{val\ 3529}# #{mod\ 3535}#)) #{tmp\ 3542}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3541}#)))))))) (#{build-application\ 304}# #{s\ 3469}# (#{chi\ 460}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3521" "i3522" "i3523" "i3524" "i3525" "i3526")) #(ribcage #(head tail val) #((top) (top) (top)) #("i3507" "i3508" "i3509")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3471" "i3472" "i3473" "i3474" "i3475")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) #{head\ 3510}#) #{r\ 3467}# #{w\ 3468}# #{mod\ 3470}#) (map (lambda (#{e\ 3548}#) (#{chi\ 460}# #{e\ 3548}# #{r\ 3467}# #{w\ 3468}# #{mod\ 3470}#)) (append #{tail\ 3511}# (list #{val\ 3512}#)))))))) #{tmp\ 3506}#) (let ((#{_\ 3552}# #{tmp\ 3476}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 446}# #{e\ 3466}# #{w\ 3468}# #{s\ 3469}# #{mod\ 3470}#)))))))))) (#{global-extend\ 374}# 'module-ref '@ (lambda (#{e\ 3553}# #{r\ 3554}# #{w\ 3555}#) (let ((#{tmp\ 3559}# #{e\ 3553}#)) (let ((#{tmp\ 3560}# ($sc-dispatch #{tmp\ 3559}# '(_ each-any any)))) (if (if #{tmp\ 3560}# (@apply (lambda (#{mod\ 3563}# #{id\ 3564}#) (if (and-map #{id?\ 378}# #{mod\ 3563}#) (#{id?\ 378}# #{id\ 3564}#) #f)) #{tmp\ 3560}#) #f) (@apply (lambda (#{mod\ 3570}# #{id\ 3571}#) (values (syntax->datum #{id\ 3571}#) #{r\ 3554}# #{w\ 3555}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(mod id) #((top) (top)) #("i3568" "i3569")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3556" "i3557" "i3558")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) #{mod\ 3570}#)))) #{tmp\ 3560}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3559}#)))))) (#{global-extend\ 374}# 'module-ref '@@ (lambda (#{e\ 3573}# #{r\ 3574}# #{w\ 3575}#) (letrec* ((#{remodulate\ 3580}# (lambda (#{x\ 3581}# #{mod\ 3582}#) (if (pair? #{x\ 3581}#) (cons (#{remodulate\ 3580}# (car #{x\ 3581}#) #{mod\ 3582}#) (#{remodulate\ 3580}# (cdr #{x\ 3581}#) #{mod\ 3582}#)) (if (#{syntax-object?\ 344}# #{x\ 3581}#) (#{make-syntax-object\ 342}# (#{remodulate\ 3580}# (#{syntax-object-expression\ 346}# #{x\ 3581}#) #{mod\ 3582}#) (#{syntax-object-wrap\ 348}# #{x\ 3581}#) #{mod\ 3582}#) (if (vector? #{x\ 3581}#) (begin (let ((#{n\ 3593}# (vector-length #{x\ 3581}#))) (begin (let ((#{v\ 3595}# (make-vector #{n\ 3593}#))) (letrec* ((#{loop\ 3598}# (lambda (#{i\ 3599}#) (if (#{fx=\ 285}# #{i\ 3599}# #{n\ 3593}#) (begin (if #f #f) #{v\ 3595}#) (begin (vector-set! #{v\ 3595}# #{i\ 3599}# (#{remodulate\ 3580}# (vector-ref #{x\ 3581}# #{i\ 3599}#) #{mod\ 3582}#)) (#{loop\ 3598}# (#{fx+\ 281}# #{i\ 3599}# 1))))))) (begin (#{loop\ 3598}# 0))))))) #{x\ 3581}#)))))) (begin (let ((#{tmp\ 3603}# #{e\ 3573}#)) (let ((#{tmp\ 3604}# ($sc-dispatch #{tmp\ 3603}# '(_ each-any any)))) (if (if #{tmp\ 3604}# (@apply (lambda (#{mod\ 3607}# #{exp\ 3608}#) (and-map #{id?\ 378}# #{mod\ 3607}#)) #{tmp\ 3604}#) #f) (@apply (lambda (#{mod\ 3612}# #{exp\ 3613}#) (begin (let ((#{mod\ 3615}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(mod exp) #((top) (top)) #("i3610" "i3611")) #(ribcage (remodulate) ((top)) ("i3579")) #(ribcage #(e r w) #((top) (top) (top)) #("i3576" "i3577" "i3578")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) #{mod\ 3612}#)))) (values (#{remodulate\ 3580}# #{exp\ 3613}# #{mod\ 3615}#) #{r\ 3574}# #{w\ 3575}# (#{source-annotation\ 359}# #{exp\ 3613}#) #{mod\ 3615}#)))) #{tmp\ 3604}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3603}#)))))))) (#{global-extend\ 374}# 'core 'if (lambda (#{e\ 3617}# #{r\ 3618}# #{w\ 3619}# #{s\ 3620}# #{mod\ 3621}#) (let ((#{tmp\ 3627}# #{e\ 3617}#)) (let ((#{tmp\ 3628}# ($sc-dispatch #{tmp\ 3627}# (quote (_ any any))))) (if #{tmp\ 3628}# (@apply (lambda (#{test\ 3631}# #{then\ 3632}#) (#{build-conditional\ 306}# #{s\ 3620}# (#{chi\ 460}# #{test\ 3631}# #{r\ 3618}# #{w\ 3619}# #{mod\ 3621}#) (#{chi\ 460}# #{then\ 3632}# #{r\ 3618}# #{w\ 3619}# #{mod\ 3621}#) (#{build-void\ 302}# #f))) #{tmp\ 3628}#) (let ((#{tmp\ 3634}# ($sc-dispatch #{tmp\ 3627}# '(_ any any any)))) (if #{tmp\ 3634}# (@apply (lambda (#{test\ 3638}# #{then\ 3639}# #{else\ 3640}#) (#{build-conditional\ 306}# #{s\ 3620}# (#{chi\ 460}# #{test\ 3638}# #{r\ 3618}# #{w\ 3619}# #{mod\ 3621}#) (#{chi\ 460}# #{then\ 3639}# #{r\ 3618}# #{w\ 3619}# #{mod\ 3621}#) (#{chi\ 460}# #{else\ 3640}# #{r\ 3618}# #{w\ 3619}# #{mod\ 3621}#))) #{tmp\ 3634}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3627}#)))))))) (#{global-extend\ 374}# 'core 'with-fluids (lambda (#{e\ 3641}# #{r\ 3642}# #{w\ 3643}# #{s\ 3644}# #{mod\ 3645}#) (let ((#{tmp\ 3651}# #{e\ 3641}#)) (let ((#{tmp\ 3652}# ($sc-dispatch #{tmp\ 3651}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 3652}# (@apply (lambda (#{fluid\ 3657}# #{val\ 3658}# #{b\ 3659}# #{b*\ 3660}#) (#{build-dynlet\ 308}# #{s\ 3644}# (map (lambda (#{x\ 3661}#) (#{chi\ 460}# #{x\ 3661}# #{r\ 3642}# #{w\ 3643}# #{mod\ 3645}#)) #{fluid\ 3657}#) (map (lambda (#{x\ 3664}#) (#{chi\ 460}# #{x\ 3664}# #{r\ 3642}# #{w\ 3643}# #{mod\ 3645}#)) #{val\ 3658}#) (#{chi-body\ 468}# (cons #{b\ 3659}# #{b*\ 3660}#) (#{source-wrap\ 446}# #{e\ 3641}# #{w\ 3643}# #{s\ 3644}# #{mod\ 3645}#) #{r\ 3642}# #{w\ 3643}# #{mod\ 3645}#))) #{tmp\ 3652}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3651}#)))))) (#{global-extend\ 374}# 'begin 'begin '()) (#{global-extend\ 374}# 'define 'define '()) (#{global-extend\ 374}# 'define-syntax 'define-syntax '()) (#{global-extend\ 374}# 'eval-when 'eval-when '()) (#{global-extend\ 374}# 'core 'syntax-case (letrec* ((#{convert-pattern\ 3669}# (lambda (#{pattern\ 3676}# #{keys\ 3677}#) (letrec* ((#{cvt*\ 3681}# (lambda (#{p*\ 3684}# #{n\ 3685}# #{ids\ 3686}#) (if (null? #{p*\ 3684}#) (values (quote ()) #{ids\ 3686}#) (call-with-values (lambda () (#{cvt*\ 3681}# (cdr #{p*\ 3684}#) #{n\ 3685}# #{ids\ 3686}#)) (lambda (#{y\ 3690}# #{ids\ 3691}#) (call-with-values (lambda () (#{cvt\ 3683}# (car #{p*\ 3684}#) #{n\ 3685}# #{ids\ 3691}#)) (lambda (#{x\ 3694}# #{ids\ 3695}#) (values (cons #{x\ 3694}# #{y\ 3690}#) #{ids\ 3695}#)))))))) (#{cvt\ 3683}# (lambda (#{p\ 3698}# #{n\ 3699}# #{ids\ 3700}#) (if (#{id?\ 378}# #{p\ 3698}#) (if (#{bound-id-member?\ 442}# #{p\ 3698}# #{keys\ 3677}#) (values (vector (quote free-id) #{p\ 3698}#) #{ids\ 3700}#) (if (#{free-id=?\ 434}# #{p\ 3698}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3701" "i3702" "i3703")) #(ribcage (cvt cvt*) ((top) (top)) ("i3682" "i3680")) #(ribcage #(pattern keys) #((top) (top)) #("i3678" "i3679")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3674" "i3672" "i3670" "i3668")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) (values (quote _) #{ids\ 3700}#) (values 'any (cons (cons #{p\ 3698}# #{n\ 3699}#) #{ids\ 3700}#)))) (let ((#{tmp\ 3709}# #{p\ 3698}#)) (let ((#{tmp\ 3710}# ($sc-dispatch #{tmp\ 3709}# '(any any)))) (if (if #{tmp\ 3710}# (@apply (lambda (#{x\ 3713}# #{dots\ 3714}#) (#{ellipsis?\ 476}# #{dots\ 3714}#)) #{tmp\ 3710}#) #f) (@apply (lambda (#{x\ 3717}# #{dots\ 3718}#) (call-with-values (lambda () (#{cvt\ 3683}# #{x\ 3717}# (#{fx+\ 281}# #{n\ 3699}# 1) #{ids\ 3700}#)) (lambda (#{p\ 3719}# #{ids\ 3720}#) (values (if (eq? #{p\ 3719}# (quote any)) 'each-any (vector 'each #{p\ 3719}#)) #{ids\ 3720}#)))) #{tmp\ 3710}#) (let ((#{tmp\ 3723}# ($sc-dispatch #{tmp\ 3709}# '(any any . each-any)))) (if (if #{tmp\ 3723}# (@apply (lambda (#{x\ 3727}# #{dots\ 3728}# #{ys\ 3729}#) (#{ellipsis?\ 476}# #{dots\ 3728}#)) #{tmp\ 3723}#) #f) (@apply (lambda (#{x\ 3733}# #{dots\ 3734}# #{ys\ 3735}#) (call-with-values (lambda () (#{cvt*\ 3681}# #{ys\ 3735}# #{n\ 3699}# #{ids\ 3700}#)) (lambda (#{ys\ 3737}# #{ids\ 3738}#) (call-with-values (lambda () (#{cvt\ 3683}# #{x\ 3733}# (1+ #{n\ 3699}#) #{ids\ 3738}#)) (lambda (#{x\ 3741}# #{ids\ 3742}#) (values (list->vector (cons 'each+ (cons #{x\ 3741}# (cons (reverse #{ys\ 3737}#) '(()))))) #{ids\ 3742}#)))))) #{tmp\ 3723}#) (let ((#{tmp\ 3746}# ($sc-dispatch #{tmp\ 3709}# '(any . any)))) (if #{tmp\ 3746}# (@apply (lambda (#{x\ 3749}# #{y\ 3750}#) (call-with-values (lambda () (#{cvt\ 3683}# #{y\ 3750}# #{n\ 3699}# #{ids\ 3700}#)) (lambda (#{y\ 3751}# #{ids\ 3752}#) (call-with-values (lambda () (#{cvt\ 3683}# #{x\ 3749}# #{n\ 3699}# #{ids\ 3752}#)) (lambda (#{x\ 3755}# #{ids\ 3756}#) (values (cons #{x\ 3755}# #{y\ 3751}#) #{ids\ 3756}#)))))) #{tmp\ 3746}#) (let ((#{tmp\ 3759}# ($sc-dispatch #{tmp\ 3709}# '()))) (if #{tmp\ 3759}# (@apply (lambda () (values '() #{ids\ 3700}#)) #{tmp\ 3759}#) (let ((#{tmp\ 3760}# ($sc-dispatch #{tmp\ 3709}# '#(vector each-any)))) (if #{tmp\ 3760}# (@apply (lambda (#{x\ 3762}#) (call-with-values (lambda () (#{cvt\ 3683}# #{x\ 3762}# #{n\ 3699}# #{ids\ 3700}#)) (lambda (#{p\ 3764}# #{ids\ 3765}#) (values (vector 'vector #{p\ 3764}#) #{ids\ 3765}#)))) #{tmp\ 3760}#) (let ((#{x\ 3769}# #{tmp\ 3709}#)) (values (vector 'atom (#{strip\ 486}# #{p\ 3698}# '(()))) #{ids\ 3700}#))))))))))))))))) (begin (#{cvt\ 3683}# #{pattern\ 3676}# 0 (quote ())))))) (#{build-dispatch-call\ 3671}# (lambda (#{pvars\ 3771}# #{exp\ 3772}# #{y\ 3773}# #{r\ 3774}# #{mod\ 3775}#) (begin (map cdr #{pvars\ 3771}#) (let ((#{ids\ 3783}# (map car #{pvars\ 3771}#))) (begin (let ((#{labels\ 3787}# (#{gen-labels\ 393}# #{ids\ 3783}#)) (#{new-vars\ 3788}# (map #{gen-var\ 488}# #{ids\ 3783}#))) (#{build-application\ 304}# #f (#{build-primref\ 328}# #f (quote apply)) (list (#{build-simple-lambda\ 322}# #f (map syntax->datum #{ids\ 3783}#) #f #{new-vars\ 3788}# '() (#{chi\ 460}# #{exp\ 3772}# (#{extend-env\ 366}# #{labels\ 3787}# (map (lambda (#{var\ 3792}# #{level\ 3793}#) (cons 'syntax (cons #{var\ 3792}# #{level\ 3793}#))) #{new-vars\ 3788}# (map cdr #{pvars\ 3771}#)) #{r\ 3774}#) (#{make-binding-wrap\ 422}# #{ids\ 3783}# #{labels\ 3787}# '(())) #{mod\ 3775}#)) #{y\ 3773}#)))))))) (#{gen-clause\ 3673}# (lambda (#{x\ 3799}# #{keys\ 3800}# #{clauses\ 3801}# #{r\ 3802}# #{pat\ 3803}# #{fender\ 3804}# #{exp\ 3805}# #{mod\ 3806}#) (call-with-values (lambda () (#{convert-pattern\ 3669}# #{pat\ 3803}# #{keys\ 3800}#)) (lambda (#{p\ 3815}# #{pvars\ 3816}#) (if (not (#{distinct-bound-ids?\ 440}# (map car #{pvars\ 3816}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 3803}#) (if (not (and-map (lambda (#{x\ 3823}#) (not (#{ellipsis?\ 476}# (car #{x\ 3823}#)))) #{pvars\ 3816}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 3803}#) (begin (let ((#{y\ 3827}# (#{gen-var\ 488}# (quote tmp)))) (#{build-application\ 304}# #f (#{build-simple-lambda\ 322}# #f (list (quote tmp)) #f (list #{y\ 3827}#) '() (begin (let ((#{y\ 3831}# (#{build-lexical-reference\ 310}# 'value #f 'tmp #{y\ 3827}#))) (#{build-conditional\ 306}# #f (let ((#{tmp\ 3834}# #{fender\ 3804}#)) (let ((#{tmp\ 3835}# ($sc-dispatch #{tmp\ 3834}# '#(atom #t)))) (if #{tmp\ 3835}# (@apply (lambda () #{y\ 3831}#) #{tmp\ 3835}#) (let ((#{_\ 3837}# #{tmp\ 3834}#)) (#{build-conditional\ 306}# #f #{y\ 3831}# (#{build-dispatch-call\ 3671}# #{pvars\ 3816}# #{fender\ 3804}# #{y\ 3831}# #{r\ 3802}# #{mod\ 3806}#) (#{build-data\ 330}# #f #f)))))) (#{build-dispatch-call\ 3671}# #{pvars\ 3816}# #{exp\ 3805}# #{y\ 3831}# #{r\ 3802}# #{mod\ 3806}#) (#{gen-syntax-case\ 3675}# #{x\ 3799}# #{keys\ 3800}# #{clauses\ 3801}# #{r\ 3802}# #{mod\ 3806}#))))) (list (if (eq? #{p\ 3815}# (quote any)) (#{build-application\ 304}# #f (#{build-primref\ 328}# #f 'list) (list #{x\ 3799}#)) (#{build-application\ 304}# #f (#{build-primref\ 328}# #f '$sc-dispatch) (list #{x\ 3799}# (#{build-data\ 330}# #f #{p\ 3815}#)))))))))))))) (#{gen-syntax-case\ 3675}# (lambda (#{x\ 3845}# #{keys\ 3846}# #{clauses\ 3847}# #{r\ 3848}# #{mod\ 3849}#) (if (null? #{clauses\ 3847}#) (#{build-application\ 304}# #f (#{build-primref\ 328}# #f 'syntax-violation) (list (#{build-data\ 330}# #f #f) (#{build-data\ 330}# #f "source expression failed to match any pattern") #{x\ 3845}#)) (let ((#{tmp\ 3859}# (car #{clauses\ 3847}#))) (let ((#{tmp\ 3860}# ($sc-dispatch #{tmp\ 3859}# '(any any)))) (if #{tmp\ 3860}# (@apply (lambda (#{pat\ 3863}# #{exp\ 3864}#) (if (if (#{id?\ 378}# #{pat\ 3863}#) (and-map (lambda (#{x\ 3867}#) (not (#{free-id=?\ 434}# #{pat\ 3863}# #{x\ 3867}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3861" "i3862")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3850" "i3851" "i3852" "i3853" "i3854")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3674" "i3672" "i3670" "i3668")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) #{keys\ 3846}#)) #f) (if (#{free-id=?\ 434}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3861" "i3862")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3850" "i3851" "i3852" "i3853" "i3854")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3674" "i3672" "i3670" "i3668")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile)) '#(syntax-object _ ((top) #(ribcage #(pat exp) #((top) (top)) #("i3861" "i3862")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3850" "i3851" "i3852" "i3853" "i3854")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3674" "i3672" "i3670" "i3668")) #(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 chi-top 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) (top)) ("i489" "i487" "i485" "i483" "i481" "i479" "i477" "i475" "i473" "i471" "i469" "i467" "i465" "i463" "i461" "i459" "i457" "i455" "i453" "i451" "i449" "i447" "i445" "i443" "i441" "i439" "i437" "i435" "i433" "i431" "i429" "i427" "i425" "i423" "i421" "i419" "i418" "i417" "i415" "i414" "i413" "i412" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i397" "i395" "i392" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i379" "i377" "i375" "i373" "i371" "i369" "i367" "i365" "i364" "i363" "i362" "i361" "i360" "i358" "i357" "i355" "i353" "i351" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i271" "i269" "i267" "i265" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i39" "i38" "i37" "i35"))) (hygiene guile))) (#{chi\ 460}# #{exp\ 3864}# #{r\ 3848}# '(()) #{mod\ 3849}#) (begin (let ((#{labels\ 3872}# (list (#{gen-label\ 391}#))) (#{var\ 3873}# (#{gen-var\ 488}# #{pat\ 3863}#))) (#{build-application\ 304}# #f (#{build-simple-lambda\ 322}# #f (list (syntax->datum #{pat\ 3863}#)) #f (list #{var\ 3873}#) '() (#{chi\ 460}# #{exp\ 3864}# (#{extend-env\ 366}# #{labels\ 3872}# (list (cons 'syntax (cons #{var\ 3873}# 0))) #{r\ 3848}#) (#{make-binding-wrap\ 422}# (list #{pat\ 3863}#) #{labels\ 3872}# '(())) #{mod\ 3849}#)) (list #{x\ 3845}#))))) (#{gen-clause\ 3673}# #{x\ 3845}# #{keys\ 3846}# (cdr #{clauses\ 3847}#) #{r\ 3848}# #{pat\ 3863}# #t #{exp\ 3864}# #{mod\ 3849}#))) #{tmp\ 3860}#) (let ((#{tmp\ 3879}# ($sc-dispatch #{tmp\ 3859}# '(any any any)))) (if #{tmp\ 3879}# (@apply (lambda (#{pat\ 3883}# #{fender\ 3884}# #{exp\ 3885}#) (#{gen-clause\ 3673}# #{x\ 3845}# #{keys\ 3846}# (cdr #{clauses\ 3847}#) #{r\ 3848}# #{pat\ 3883}# #{fender\ 3884}# #{exp\ 3885}# #{mod\ 3849}#)) #{tmp\ 3879}#) (let ((#{_\ 3887}# #{tmp\ 3859}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 3847}#)))))))))))) (begin (lambda (#{e\ 3888}# #{r\ 3889}# #{w\ 3890}# #{s\ 3891}# #{mod\ 3892}#) (begin (let ((#{e\ 3899}# (#{source-wrap\ 446}# #{e\ 3888}# #{w\ 3890}# #{s\ 3891}# #{mod\ 3892}#))) (let ((#{tmp\ 3900}# #{e\ 3899}#)) (let ((#{tmp\ 3901}# ($sc-dispatch #{tmp\ 3900}# '(_ any each-any . each-any)))) (if #{tmp\ 3901}# (@apply (lambda (#{val\ 3905}# #{key\ 3906}# #{m\ 3907}#) (if (and-map (lambda (#{x\ 3908}#) (if (#{id?\ 378}# #{x\ 3908}#) (not (#{ellipsis?\ 476}# #{x\ 3908}#)) #f)) #{key\ 3906}#) (begin (let ((#{x\ 3914}# (#{gen-var\ 488}# (quote tmp)))) (#{build-application\ 304}# #{s\ 3891}# (#{build-simple-lambda\ 322}# #f (list (quote tmp)) #f (list #{x\ 3914}#) '() (#{gen-syntax-case\ 3675}# (#{build-lexical-reference\ 310}# 'value #f 'tmp #{x\ 3914}#) #{key\ 3906}# #{m\ 3907}# #{r\ 3889}# #{mod\ 3892}#)) (list (#{chi\ 460}# #{val\ 3905}# #{r\ 3889}# '(()) #{mod\ 3892}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 3899}#))) #{tmp\ 3901}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3900}#)))))))))) (set! macroexpand (lambda* (#{x\ 3920}# #:optional (#{m\ 3922}# (quote e)) (#{esew\ 3924}# (quote (eval)))) (#{chi-top\ 458}# #{x\ 3920}# '() '((top)) #{m\ 3922}# #{esew\ 3924}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x\ 3928}#) (#{nonsymbol-id?\ 376}# #{x\ 3928}#))) (set! datum->syntax (lambda (#{id\ 3930}# #{datum\ 3931}#) (#{make-syntax-object\ 342}# #{datum\ 3931}# (#{syntax-object-wrap\ 348}# #{id\ 3930}#) (#{syntax-object-module\ 350}# #{id\ 3930}#)))) (set! syntax->datum (lambda (#{x\ 3934}#) (#{strip\ 486}# #{x\ 3934}# (quote (()))))) (set! syntax-source (lambda (#{x\ 3937}#) (#{source-annotation\ 359}# #{x\ 3937}#))) (set! generate-temporaries (lambda (#{ls\ 3939}#) (begin (begin (let ((#{x\ 3943}# #{ls\ 3939}#)) (if (not (list? #{x\ 3943}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 3943}#)))) (map (lambda (#{x\ 3944}#) (#{wrap\ 444}# (gensym) (quote ((top))) #f)) #{ls\ 3939}#)))) (set! free-identifier=? (lambda (#{x\ 3948}# #{y\ 3949}#) (begin (begin (let ((#{x\ 3954}# #{x\ 3948}#)) (if (not (#{nonsymbol-id?\ 376}# #{x\ 3954}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3954}#)))) (begin (let ((#{x\ 3957}# #{y\ 3949}#)) (if (not (#{nonsymbol-id?\ 376}# #{x\ 3957}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3957}#)))) (#{free-id=?\ 434}# #{x\ 3948}# #{y\ 3949}#)))) (set! bound-identifier=? (lambda (#{x\ 3958}# #{y\ 3959}#) (begin (begin (let ((#{x\ 3964}# #{x\ 3958}#)) (if (not (#{nonsymbol-id?\ 376}# #{x\ 3964}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3964}#)))) (begin (let ((#{x\ 3967}# #{y\ 3959}#)) (if (not (#{nonsymbol-id?\ 376}# #{x\ 3967}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3967}#)))) (#{bound-id=?\ 436}# #{x\ 3958}# #{y\ 3959}#)))) (set! syntax-violation (lambda (#{who\ 3968}# #{message\ 3969}# #{form\ 3970}# . #{subform\ 3971}#) (begin (begin (let ((#{x\ 3978}# #{who\ 3968}#)) (if (not (let ((#{x\ 3979}# #{x\ 3978}#)) (begin (let ((#{t\ 3983}# (not #{x\ 3979}#))) (if #{t\ 3983}# #{t\ 3983}# (begin (let ((#{t\ 3986}# (string? #{x\ 3979}#))) (if #{t\ 3986}# #{t\ 3986}# (symbol? #{x\ 3979}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3978}#)))) (begin (let ((#{x\ 3990}# #{message\ 3969}#)) (if (not (string? #{x\ 3990}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3990}#)))) (scm-error 'syntax-error 'macroexpand (string-append (if #{who\ 3968}# "~a: " "") "~a " (if (null? #{subform\ 3971}#) "in ~a" "in subform `~s' of `~s'")) (begin (let ((#{tail\ 3992}# (cons #{message\ 3969}# (map (lambda (#{x\ 3993}#) (#{strip\ 486}# #{x\ 3993}# '(()))) (append #{subform\ 3971}# (list #{form\ 3970}#)))))) (if #{who\ 3968}# (cons #{who\ 3968}# #{tail\ 3992}#) #{tail\ 3992}#))) #f)))) (letrec* ((#{match-each\ 3997}# (lambda (#{e\ 4010}# #{p\ 4011}# #{w\ 4012}# #{mod\ 4013}#) (if (pair? #{e\ 4010}#) (begin (let ((#{first\ 4021}# (#{match\ 4009}# (car #{e\ 4010}#) #{p\ 4011}# #{w\ 4012}# '() #{mod\ 4013}#))) (if #{first\ 4021}# (begin (let ((#{rest\ 4025}# (#{match-each\ 3997}# (cdr #{e\ 4010}#) #{p\ 4011}# #{w\ 4012}# #{mod\ 4013}#))) (if #{rest\ 4025}# (cons #{first\ 4021}# #{rest\ 4025}#) #f))) #f))) (if (null? #{e\ 4010}#) '() (if (#{syntax-object?\ 344}# #{e\ 4010}#) (#{match-each\ 3997}# (#{syntax-object-expression\ 346}# #{e\ 4010}#) #{p\ 4011}# (#{join-wraps\ 426}# #{w\ 4012}# (#{syntax-object-wrap\ 348}# #{e\ 4010}#)) (#{syntax-object-module\ 350}# #{e\ 4010}#)) #f))))) (#{match-each+\ 3999}# (lambda (#{e\ 4033}# #{x-pat\ 4034}# #{y-pat\ 4035}# #{z-pat\ 4036}# #{w\ 4037}# #{r\ 4038}# #{mod\ 4039}#) (letrec* ((#{f\ 4050}# (lambda (#{e\ 4051}# #{w\ 4052}#) (if (pair? #{e\ 4051}#) (call-with-values (lambda () (#{f\ 4050}# (cdr #{e\ 4051}#) #{w\ 4052}#)) (lambda (#{xr*\ 4055}# #{y-pat\ 4056}# #{r\ 4057}#) (if #{r\ 4057}# (if (null? #{y-pat\ 4056}#) (begin (let ((#{xr\ 4062}# (#{match\ 4009}# (car #{e\ 4051}#) #{x-pat\ 4034}# #{w\ 4052}# '() #{mod\ 4039}#))) (if #{xr\ 4062}# (values (cons #{xr\ 4062}# #{xr*\ 4055}#) #{y-pat\ 4056}# #{r\ 4057}#) (values #f #f #f)))) (values '() (cdr #{y-pat\ 4056}#) (#{match\ 4009}# (car #{e\ 4051}#) (car #{y-pat\ 4056}#) #{w\ 4052}# #{r\ 4057}# #{mod\ 4039}#))) (values #f #f #f)))) (if (#{syntax-object?\ 344}# #{e\ 4051}#) (#{f\ 4050}# (#{syntax-object-expression\ 346}# #{e\ 4051}#) (#{join-wraps\ 426}# #{w\ 4052}# #{e\ 4051}#)) (values '() #{y-pat\ 4035}# (#{match\ 4009}# #{e\ 4051}# #{z-pat\ 4036}# #{w\ 4052}# #{r\ 4038}# #{mod\ 4039}#))))))) (begin (#{f\ 4050}# #{e\ 4033}# #{w\ 4037}#))))) (#{match-each-any\ 4001}# (lambda (#{e\ 4066}# #{w\ 4067}# #{mod\ 4068}#) (if (pair? #{e\ 4066}#) (begin (let ((#{l\ 4075}# (#{match-each-any\ 4001}# (cdr #{e\ 4066}#) #{w\ 4067}# #{mod\ 4068}#))) (if #{l\ 4075}# (cons (#{wrap\ 444}# (car #{e\ 4066}#) #{w\ 4067}# #{mod\ 4068}#) #{l\ 4075}#) #f))) (if (null? #{e\ 4066}#) '() (if (#{syntax-object?\ 344}# #{e\ 4066}#) (#{match-each-any\ 4001}# (#{syntax-object-expression\ 346}# #{e\ 4066}#) (#{join-wraps\ 426}# #{w\ 4067}# (#{syntax-object-wrap\ 348}# #{e\ 4066}#)) #{mod\ 4068}#) #f))))) (#{match-empty\ 4003}# (lambda (#{p\ 4083}# #{r\ 4084}#) (if (null? #{p\ 4083}#) #{r\ 4084}# (if (eq? #{p\ 4083}# (quote _)) #{r\ 4084}# (if (eq? #{p\ 4083}# (quote any)) (cons (quote ()) #{r\ 4084}#) (if (pair? #{p\ 4083}#) (#{match-empty\ 4003}# (car #{p\ 4083}#) (#{match-empty\ 4003}# (cdr #{p\ 4083}#) #{r\ 4084}#)) (if (eq? #{p\ 4083}# (quote each-any)) (cons (quote ()) #{r\ 4084}#) (begin (let ((#{atom-key\ 4100}# (vector-ref #{p\ 4083}# 0))) (if (eqv? #{atom-key\ 4100}# (quote each)) (#{match-empty\ 4003}# (vector-ref #{p\ 4083}# 1) #{r\ 4084}#) (if (eqv? #{atom-key\ 4100}# (quote each+)) (#{match-empty\ 4003}# (vector-ref #{p\ 4083}# 1) (#{match-empty\ 4003}# (reverse (vector-ref #{p\ 4083}# 2)) (#{match-empty\ 4003}# (vector-ref #{p\ 4083}# 3) #{r\ 4084}#))) (if (if (eqv? #{atom-key\ 4100}# 'free-id) #t (eqv? #{atom-key\ 4100}# 'atom)) #{r\ 4084}# (if (eqv? #{atom-key\ 4100}# 'vector) (#{match-empty\ 4003}# (vector-ref #{p\ 4083}# 1) #{r\ 4084}#)))))))))))))) (#{combine\ 4005}# (lambda (#{r*\ 4105}# #{r\ 4106}#) (if (null? (car #{r*\ 4105}#)) #{r\ 4106}# (cons (map car #{r*\ 4105}#) (#{combine\ 4005}# (map cdr #{r*\ 4105}#) #{r\ 4106}#))))) (#{match*\ 4007}# (lambda (#{e\ 4109}# #{p\ 4110}# #{w\ 4111}# #{r\ 4112}# #{mod\ 4113}#) (if (null? #{p\ 4110}#) (if (null? #{e\ 4109}#) #{r\ 4112}# #f) (if (pair? #{p\ 4110}#) (if (pair? #{e\ 4109}#) (#{match\ 4009}# (car #{e\ 4109}#) (car #{p\ 4110}#) #{w\ 4111}# (#{match\ 4009}# (cdr #{e\ 4109}#) (cdr #{p\ 4110}#) #{w\ 4111}# #{r\ 4112}# #{mod\ 4113}#) #{mod\ 4113}#) #f) (if (eq? #{p\ 4110}# (quote each-any)) (begin (let ((#{l\ 4130}# (#{match-each-any\ 4001}# #{e\ 4109}# #{w\ 4111}# #{mod\ 4113}#))) (if #{l\ 4130}# (cons #{l\ 4130}# #{r\ 4112}#) #f))) (begin (let ((#{atom-key\ 4136}# (vector-ref #{p\ 4110}# 0))) (if (eqv? #{atom-key\ 4136}# (quote each)) (if (null? #{e\ 4109}#) (#{match-empty\ 4003}# (vector-ref #{p\ 4110}# 1) #{r\ 4112}#) (begin (let ((#{l\ 4139}# (#{match-each\ 3997}# #{e\ 4109}# (vector-ref #{p\ 4110}# 1) #{w\ 4111}# #{mod\ 4113}#))) (if #{l\ 4139}# (letrec* ((#{collect\ 4144}# (lambda (#{l\ 4145}#) (if (null? (car #{l\ 4145}#)) #{r\ 4112}# (cons (map car #{l\ 4145}#) (#{collect\ 4144}# (map cdr #{l\ 4145}#))))))) (begin (#{collect\ 4144}# #{l\ 4139}#))) #f)))) (if (eqv? #{atom-key\ 4136}# (quote each+)) (call-with-values (lambda () (#{match-each+\ 3999}# #{e\ 4109}# (vector-ref #{p\ 4110}# 1) (vector-ref #{p\ 4110}# 2) (vector-ref #{p\ 4110}# 3) #{w\ 4111}# #{r\ 4112}# #{mod\ 4113}#)) (lambda (#{xr*\ 4147}# #{y-pat\ 4148}# #{r\ 4149}#) (if #{r\ 4149}# (if (null? #{y-pat\ 4148}#) (if (null? #{xr*\ 4147}#) (#{match-empty\ 4003}# (vector-ref #{p\ 4110}# 1) #{r\ 4149}#) (#{combine\ 4005}# #{xr*\ 4147}# #{r\ 4149}#)) #f) #f))) (if (eqv? #{atom-key\ 4136}# (quote free-id)) (if (#{id?\ 378}# #{e\ 4109}#) (if (#{free-id=?\ 434}# (#{wrap\ 444}# #{e\ 4109}# #{w\ 4111}# #{mod\ 4113}#) (vector-ref #{p\ 4110}# 1)) #{r\ 4112}# #f) #f) (if (eqv? #{atom-key\ 4136}# (quote atom)) (if (equal? (vector-ref #{p\ 4110}# 1) (#{strip\ 486}# #{e\ 4109}# #{w\ 4111}#)) #{r\ 4112}# #f) (if (eqv? #{atom-key\ 4136}# 'vector) (if (vector? #{e\ 4109}#) (#{match\ 4009}# (vector->list #{e\ 4109}#) (vector-ref #{p\ 4110}# 1) #{w\ 4111}# #{r\ 4112}# #{mod\ 4113}#) #f))))))))))))) (#{match\ 4009}# (lambda (#{e\ 4166}# #{p\ 4167}# #{w\ 4168}# #{r\ 4169}# #{mod\ 4170}#) (if (not #{r\ 4169}#) #f (if (eq? #{p\ 4167}# (quote _)) #{r\ 4169}# (if (eq? #{p\ 4167}# (quote any)) (cons (#{wrap\ 444}# #{e\ 4166}# #{w\ 4168}# #{mod\ 4170}#) #{r\ 4169}#) (if (#{syntax-object?\ 344}# #{e\ 4166}#) (#{match*\ 4007}# (#{syntax-object-expression\ 346}# #{e\ 4166}#) #{p\ 4167}# (#{join-wraps\ 426}# #{w\ 4168}# (#{syntax-object-wrap\ 348}# #{e\ 4166}#)) #{r\ 4169}# (#{syntax-object-module\ 350}# #{e\ 4166}#)) (#{match*\ 4007}# #{e\ 4166}# #{p\ 4167}# #{w\ 4168}# #{r\ 4169}# #{mod\ 4170}#)))))))) (begin (set! $sc-dispatch (lambda (#{e\ 4185}# #{p\ 4186}#) (if (eq? #{p\ 4186}# (quote any)) (list #{e\ 4185}#) (if (eq? #{p\ 4186}# (quote _)) '() (if (#{syntax-object?\ 344}# #{e\ 4185}#) (#{match*\ 4007}# (#{syntax-object-expression\ 346}# #{e\ 4185}#) #{p\ 4186}# (#{syntax-object-wrap\ 348}# #{e\ 4185}#) '() (#{syntax-object-module\ 350}# #{e\ 4185}#)) (#{match*\ 4007}# #{e\ 4185}# #{p\ 4186}# '(()) '() #f)))))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x\ 4197}#) (let ((#{tmp\ 4199}# #{x\ 4197}#)) (let ((#{tmp\ 4200}# ($sc-dispatch #{tmp\ 4199}# '(_ () any . each-any)))) (if #{tmp\ 4200}# (@apply (lambda (#{e1\ 4203}# #{e2\ 4204}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4201" "i4202")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4198"))) (hygiene guile)) (cons #{e1\ 4203}# #{e2\ 4204}#))) #{tmp\ 4200}#) (let ((#{tmp\ 4206}# ($sc-dispatch #{tmp\ 4199}# '(_ ((any any)) any . each-any)))) (if #{tmp\ 4206}# (@apply (lambda (#{out\ 4211}# #{in\ 4212}# #{e1\ 4213}# #{e2\ 4214}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4207" "i4208" "i4209" "i4210")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4198"))) (hygiene guile)) #{in\ 4212}# '() (list #{out\ 4211}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4207" "i4208" "i4209" "i4210")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4198"))) (hygiene guile)) (cons #{e1\ 4213}# #{e2\ 4214}#))))) #{tmp\ 4206}#) (let ((#{tmp\ 4216}# ($sc-dispatch #{tmp\ 4199}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 4216}# (@apply (lambda (#{out\ 4221}# #{in\ 4222}# #{e1\ 4223}# #{e2\ 4224}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4217" "i4218" "i4219" "i4220")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4198"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4217" "i4218" "i4219" "i4220")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4198"))) (hygiene guile)) #{in\ 4222}#) '() (list #{out\ 4221}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4217" "i4218" "i4219" "i4220")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4198"))) (hygiene guile)) (cons #{e1\ 4223}# #{e2\ 4224}#))))) #{tmp\ 4216}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4199}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x\ 4228}#) (let ((#{tmp\ 4230}# #{x\ 4228}#)) (let ((#{tmp\ 4231}# ($sc-dispatch #{tmp\ 4230}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp\ 4231}# (@apply (lambda (#{k\ 4236}# #{keyword\ 4237}# #{pattern\ 4238}# #{template\ 4239}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) #{pattern\ 4238}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) (cons #{k\ 4236}# (map (lambda (#{tmp\ 4243}# #{tmp\ 4242}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) #{tmp\ 4242}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) #{tmp\ 4243}#))) #{template\ 4239}# #{pattern\ 4238}#)))))) #{tmp\ 4231}#) (let ((#{tmp\ 4244}# ($sc-dispatch #{tmp\ 4230}# '(_ each-any any . #(each ((any . any) any)))))) (if (if #{tmp\ 4244}# (@apply (lambda (#{k\ 4250}# #{docstring\ 4251}# #{keyword\ 4252}# #{pattern\ 4253}# #{template\ 4254}#) (string? (syntax->datum #{docstring\ 4251}#))) #{tmp\ 4244}#) #f) (@apply (lambda (#{k\ 4260}# #{docstring\ 4261}# #{keyword\ 4262}# #{pattern\ 4263}# #{template\ 4264}#) (list '#(syntax-object lambda ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile))) #{docstring\ 4261}# (vector '(#(syntax-object macro-type ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) #{pattern\ 4263}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) (cons #{k\ 4260}# (map (lambda (#{tmp\ 4268}# #{tmp\ 4267}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) #{tmp\ 4267}#) (list '#(syntax-object syntax ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4255" "i4256" "i4257" "i4258" "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4229"))) (hygiene guile)) #{tmp\ 4268}#))) #{template\ 4264}# #{pattern\ 4263}#)))))) #{tmp\ 4244}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4230}#))))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x\ 4269}#) (let ((#{tmp\ 4271}# #{x\ 4269}#)) (let ((#{tmp\ 4272}# ($sc-dispatch #{tmp\ 4271}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp\ 4272}# (@apply (lambda (#{let*\ 4278}# #{x\ 4279}# #{v\ 4280}# #{e1\ 4281}# #{e2\ 4282}#) (and-map identifier? #{x\ 4279}#)) #{tmp\ 4272}#) #f) (@apply (lambda (#{let*\ 4289}# #{x\ 4290}# #{v\ 4291}# #{e1\ 4292}# #{e2\ 4293}#) (letrec* ((#{f\ 4296}# (lambda (#{bindings\ 4297}#) (if (null? #{bindings\ 4297}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4294" "i4295")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4284" "i4285" "i4286" "i4287" "i4288")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4270"))) (hygiene guile)) (cons '() (cons #{e1\ 4292}# #{e2\ 4293}#))) (let ((#{tmp\ 4302}# (list (#{f\ 4296}# (cdr #{bindings\ 4297}#)) (car #{bindings\ 4297}#)))) (let ((#{tmp\ 4303}# ($sc-dispatch #{tmp\ 4302}# '(any any)))) (if #{tmp\ 4303}# (@apply (lambda (#{body\ 4306}# #{binding\ 4307}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i4304" "i4305")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4294" "i4295")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4284" "i4285" "i4286" "i4287" "i4288")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4270"))) (hygiene guile)) (list #{binding\ 4307}#) #{body\ 4306}#)) #{tmp\ 4303}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4302}#)))))))) (begin (#{f\ 4296}# (map list #{x\ 4290}# #{v\ 4291}#))))) #{tmp\ 4272}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4271}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x\ 4308}#) (let ((#{tmp\ 4310}# #{orig-x\ 4308}#)) (let ((#{tmp\ 4311}# ($sc-dispatch #{tmp\ 4310}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp\ 4311}# (@apply (lambda (#{var\ 4318}# #{init\ 4319}# #{step\ 4320}# #{e0\ 4321}# #{e1\ 4322}# #{c\ 4323}#) (let ((#{tmp\ 4325}# (map (lambda (#{v\ 4346}# #{s\ 4347}#) (let ((#{tmp\ 4350}# #{s\ 4347}#)) (let ((#{tmp\ 4351}# ($sc-dispatch #{tmp\ 4350}# '()))) (if #{tmp\ 4351}# (@apply (lambda () #{v\ 4346}#) #{tmp\ 4351}#) (let ((#{tmp\ 4352}# ($sc-dispatch #{tmp\ 4350}# '(any)))) (if #{tmp\ 4352}# (@apply (lambda (#{e\ 4354}#) #{e\ 4354}#) #{tmp\ 4352}#) (let ((#{_\ 4356}# #{tmp\ 4350}#)) (syntax-violation 'do "bad step expression" #{orig-x\ 4308}# #{s\ 4347}#)))))))) #{var\ 4318}# #{step\ 4320}#))) (let ((#{tmp\ 4326}# ($sc-dispatch #{tmp\ 4325}# (quote each-any)))) (if #{tmp\ 4326}# (@apply (lambda (#{step\ 4328}#) (let ((#{tmp\ 4329}# #{e1\ 4322}#)) (let ((#{tmp\ 4330}# ($sc-dispatch #{tmp\ 4329}# (quote ())))) (if #{tmp\ 4330}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) (map list #{var\ 4318}# #{init\ 4319}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) #{e0\ 4321}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) (append #{c\ 4323}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) #{step\ 4328}#))))))) #{tmp\ 4330}#) (let ((#{tmp\ 4335}# ($sc-dispatch #{tmp\ 4329}# '(any . each-any)))) (if #{tmp\ 4335}# (@apply (lambda (#{e1\ 4338}# #{e2\ 4339}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4336" "i4337")) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4336" "i4337")) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) (map list #{var\ 4318}# #{init\ 4319}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4336" "i4337")) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) #{e0\ 4321}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4336" "i4337")) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) (cons #{e1\ 4338}# #{e2\ 4339}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4336" "i4337")) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) (append #{c\ 4323}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4336" "i4337")) #(ribcage #(step) #((top)) #("i4327")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4312" "i4313" "i4314" "i4315" "i4316" "i4317")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4309"))) (hygiene guile)) #{step\ 4328}#))))))) #{tmp\ 4335}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4329}#))))))) #{tmp\ 4326}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4325}#))))) #{tmp\ 4311}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4310}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasicons\ 4363}# (lambda (#{x\ 4367}# #{y\ 4368}#) (let ((#{tmp\ 4372}# (list #{x\ 4367}# #{y\ 4368}#))) (let ((#{tmp\ 4373}# ($sc-dispatch #{tmp\ 4372}# (quote (any any))))) (if #{tmp\ 4373}# (@apply (lambda (#{x\ 4376}# #{y\ 4377}#) (let ((#{tmp\ 4378}# #{y\ 4377}#)) (let ((#{tmp\ 4379}# ($sc-dispatch #{tmp\ 4378}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) any)))) (if #{tmp\ 4379}# (@apply (lambda (#{dy\ 4381}#) (let ((#{tmp\ 4382}# #{x\ 4376}#)) (let ((#{tmp\ 4383}# ($sc-dispatch #{tmp\ 4382}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(dy) #((top)) #("i4380")) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) any)))) (if #{tmp\ 4383}# (@apply (lambda (#{dx\ 4385}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) #("i4384")) #(ribcage #(dy) #((top)) #("i4380")) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) (cons #{dx\ 4385}# #{dy\ 4381}#))) #{tmp\ 4383}#) (let ((#{_\ 4387}# #{tmp\ 4382}#)) (if (null? #{dy\ 4381}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) #("i4386")) #(ribcage #(dy) #((top)) #("i4380")) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{x\ 4376}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) #("i4386")) #(ribcage #(dy) #((top)) #("i4380")) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{x\ 4376}# #{y\ 4377}#))))))) #{tmp\ 4379}#) (let ((#{tmp\ 4388}# ($sc-dispatch #{tmp\ 4378}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) . any)))) (if #{tmp\ 4388}# (@apply (lambda (#{stuff\ 4390}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) #("i4389")) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) (cons #{x\ 4376}# #{stuff\ 4390}#))) #{tmp\ 4388}#) (let ((#{else\ 4392}# #{tmp\ 4378}#)) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) #("i4391")) #(ribcage #(x y) #((top) (top)) #("i4374" "i4375")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4369" "i4370")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{x\ 4376}# #{y\ 4377}#)))))))) #{tmp\ 4373}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4372}#)))))) (#{quasiappend\ 4364}# (lambda (#{x\ 4393}# #{y\ 4394}#) (let ((#{tmp\ 4398}# (list #{x\ 4393}# #{y\ 4394}#))) (let ((#{tmp\ 4399}# ($sc-dispatch #{tmp\ 4398}# (quote (any any))))) (if #{tmp\ 4399}# (@apply (lambda (#{x\ 4402}# #{y\ 4403}#) (let ((#{tmp\ 4404}# #{y\ 4403}#)) (let ((#{tmp\ 4405}# ($sc-dispatch #{tmp\ 4404}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4400" "i4401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4395" "i4396")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) ())))) (if #{tmp\ 4405}# (@apply (lambda () #{x\ 4402}#) #{tmp\ 4405}#) (let ((#{_\ 4407}# #{tmp\ 4404}#)) (list '#(syntax-object append ((top) #(ribcage #(_) #((top)) #("i4406")) #(ribcage #(x y) #((top) (top)) #("i4400" "i4401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4395" "i4396")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{x\ 4402}# #{y\ 4403}#)))))) #{tmp\ 4399}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4398}#)))))) (#{quasivector\ 4365}# (lambda (#{x\ 4408}#) (let ((#{tmp\ 4411}# #{x\ 4408}#)) (let ((#{x\ 4413}# #{tmp\ 4411}#)) (let ((#{tmp\ 4414}# #{x\ 4413}#)) (let ((#{tmp\ 4415}# ($sc-dispatch #{tmp\ 4414}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4412")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4409")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) each-any)))) (if #{tmp\ 4415}# (@apply (lambda (#{x\ 4417}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4416")) #(ribcage #(x) #((top)) #("i4412")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4409")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) (list->vector #{x\ 4417}#))) #{tmp\ 4415}#) (let ((#{tmp\ 4419}# ($sc-dispatch #{tmp\ 4414}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x) #((top)) #("i4412")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4409")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) . each-any)))) (if #{tmp\ 4419}# (@apply (lambda (#{x\ 4421}#) (cons '#(syntax-object vector ((top) #(ribcage #(x) #((top)) #("i4420")) #(ribcage #(x) #((top)) #("i4412")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4409")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{x\ 4421}#)) #{tmp\ 4419}#) (let ((#{_\ 4424}# #{tmp\ 4414}#)) (list '#(syntax-object list->vector ((top) #(ribcage #(_) #((top)) #("i4423")) #(ribcage #(x) #((top)) #("i4412")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4409")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{x\ 4413}#))))))))))) (#{quasi\ 4366}# (lambda (#{p\ 4425}# #{lev\ 4426}#) (let ((#{tmp\ 4429}# #{p\ 4425}#)) (let ((#{tmp\ 4430}# ($sc-dispatch #{tmp\ 4429}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) any)))) (if #{tmp\ 4430}# (@apply (lambda (#{p\ 4432}#) (if (= #{lev\ 4426}# 0) #{p\ 4432}# (#{quasicons\ 4363}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) (#{quasi\ 4366}# (list #{p\ 4432}#) (1- #{lev\ 4426}#))))) #{tmp\ 4430}#) (let ((#{tmp\ 4433}# ($sc-dispatch #{tmp\ 4429}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) . any)))) (if (if #{tmp\ 4433}# (@apply (lambda (#{args\ 4435}#) (= #{lev\ 4426}# 0)) #{tmp\ 4433}#) #f) (@apply (lambda (#{args\ 4437}#) (syntax-violation 'unquote "unquote takes exactly one argument" #{p\ 4425}# (cons '#(syntax-object unquote ((top) #(ribcage #(args) #((top)) #("i4436")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{args\ 4437}#))) #{tmp\ 4433}#) (let ((#{tmp\ 4438}# ($sc-dispatch #{tmp\ 4429}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) any) . any)))) (if #{tmp\ 4438}# (@apply (lambda (#{p\ 4441}# #{q\ 4442}#) (if (= #{lev\ 4426}# 0) (#{quasiappend\ 4364}# #{p\ 4441}# (#{quasi\ 4366}# #{q\ 4442}# #{lev\ 4426}#)) (#{quasicons\ 4363}# (#{quasicons\ 4363}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) #("i4439" "i4440")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4439" "i4440")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) (#{quasi\ 4366}# (list #{p\ 4441}#) (1- #{lev\ 4426}#))) (#{quasi\ 4366}# #{q\ 4442}# #{lev\ 4426}#)))) #{tmp\ 4438}#) (let ((#{tmp\ 4443}# ($sc-dispatch #{tmp\ 4429}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) . any) . any)))) (if (if #{tmp\ 4443}# (@apply (lambda (#{args\ 4446}# #{q\ 4447}#) (= #{lev\ 4426}# 0)) #{tmp\ 4443}#) #f) (@apply (lambda (#{args\ 4450}# #{q\ 4451}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" #{p\ 4425}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) #("i4448" "i4449")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{args\ 4450}#))) #{tmp\ 4443}#) (let ((#{tmp\ 4452}# ($sc-dispatch #{tmp\ 4429}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) any)))) (if #{tmp\ 4452}# (@apply (lambda (#{p\ 4454}#) (#{quasicons\ 4363}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4453")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4453")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile))) (#{quasi\ 4366}# (list #{p\ 4454}#) (1+ #{lev\ 4426}#)))) #{tmp\ 4452}#) (let ((#{tmp\ 4455}# ($sc-dispatch #{tmp\ 4429}# '(any . any)))) (if #{tmp\ 4455}# (@apply (lambda (#{p\ 4458}# #{q\ 4459}#) (#{quasicons\ 4363}# (#{quasi\ 4366}# #{p\ 4458}# #{lev\ 4426}#) (#{quasi\ 4366}# #{q\ 4459}# #{lev\ 4426}#))) #{tmp\ 4455}#) (let ((#{tmp\ 4460}# ($sc-dispatch #{tmp\ 4429}# '#(vector each-any)))) (if #{tmp\ 4460}# (@apply (lambda (#{x\ 4462}#) (#{quasivector\ 4365}# (#{quasi\ 4366}# #{x\ 4462}# #{lev\ 4426}#))) #{tmp\ 4460}#) (let ((#{p\ 4465}# #{tmp\ 4429}#)) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4464")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4427" "i4428")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4359" "i4360" "i4361" "i4362"))) (hygiene guile)) #{p\ 4465}#)))))))))))))))))))) (begin (lambda (#{x\ 4466}#) (let ((#{tmp\ 4468}# #{x\ 4466}#)) (let ((#{tmp\ 4469}# ($sc-dispatch #{tmp\ 4468}# (quote (_ any))))) (if #{tmp\ 4469}# (@apply (lambda (#{e\ 4471}#) (#{quasi\ 4366}# #{e\ 4471}# 0)) #{tmp\ 4469}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4468}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x\ 4472}#) (letrec* ((#{read-file\ 4475}# (lambda (#{fn\ 4476}# #{k\ 4477}#) (begin (let ((#{p\ 4481}# (open-input-file #{fn\ 4476}#))) (letrec* ((#{f\ 4485}# (lambda (#{x\ 4486}# #{result\ 4487}#) (if (eof-object? #{x\ 4486}#) (begin (close-input-port #{p\ 4481}#) (reverse #{result\ 4487}#)) (#{f\ 4485}# (read #{p\ 4481}#) (cons (datum->syntax #{k\ 4477}# #{x\ 4486}#) #{result\ 4487}#)))))) (begin (#{f\ 4485}# (read #{p\ 4481}#) (quote ()))))))))) (begin (let ((#{tmp\ 4488}# #{x\ 4472}#)) (let ((#{tmp\ 4489}# ($sc-dispatch #{tmp\ 4488}# (quote (any any))))) (if #{tmp\ 4489}# (@apply (lambda (#{k\ 4492}# #{filename\ 4493}#) (begin (let ((#{fn\ 4495}# (syntax->datum #{filename\ 4493}#))) (let ((#{tmp\ 4497}# (#{read-file\ 4475}# #{fn\ 4495}# #{filename\ 4493}#))) (let ((#{tmp\ 4498}# ($sc-dispatch #{tmp\ 4497}# 'each-any))) (if #{tmp\ 4498}# (@apply (lambda (#{exp\ 4500}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i4499")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4494")) #(ribcage #(k filename) #((top) (top)) #("i4490" "i4491")) #(ribcage (read-file) ((top)) ("i4474")) #(ribcage #(x) #((top)) #("i4473"))) (hygiene guile)) #{exp\ 4500}#)) #{tmp\ 4498}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4497}#))))))) #{tmp\ 4489}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4488}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x\ 4502}#) (let ((#{tmp\ 4504}# #{x\ 4502}#)) (let ((#{tmp\ 4505}# ($sc-dispatch #{tmp\ 4504}# (quote (any any))))) (if #{tmp\ 4505}# (@apply (lambda (#{k\ 4508}# #{filename\ 4509}#) (begin (let ((#{fn\ 4511}# (syntax->datum #{filename\ 4509}#))) (let ((#{tmp\ 4513}# (datum->syntax #{filename\ 4509}# (begin (let ((#{t\ 4518}# (%search-load-path #{fn\ 4511}#))) (if #{t\ 4518}# #{t\ 4518}# (syntax-violation 'include-from-path "file not found in path" #{x\ 4502}# #{filename\ 4509}#))))))) (let ((#{fn\ 4515}# #{tmp\ 4513}#)) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i4514")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4510")) #(ribcage #(k filename) #((top) (top)) #("i4506" "i4507")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4503"))) (hygiene guile)) #{fn\ 4515}#)))))) #{tmp\ 4505}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4504}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x\ 4520}#) (let ((#{tmp\ 4522}# #{x\ 4520}#)) (let ((#{tmp\ 4523}# ($sc-dispatch #{tmp\ 4522}# (quote (_ any))))) (if #{tmp\ 4523}# (@apply (lambda (#{e\ 4525}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 4520}#)) #{tmp\ 4523}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4522}#))))))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x\ 4526}#) (let ((#{tmp\ 4528}# #{x\ 4526}#)) (let ((#{tmp\ 4529}# ($sc-dispatch #{tmp\ 4528}# (quote (_ any))))) (if #{tmp\ 4529}# (@apply (lambda (#{e\ 4531}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 4526}#)) #{tmp\ 4529}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4528}#))))))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x\ 4532}#) (let ((#{tmp\ 4534}# #{x\ 4532}#)) (let ((#{tmp\ 4535}# ($sc-dispatch #{tmp\ 4534}# '(_ any any . each-any)))) (if #{tmp\ 4535}# (@apply (lambda (#{e\ 4539}# #{m1\ 4540}# #{m2\ 4541}#) (let ((#{tmp\ 4543}# (letrec* ((#{f\ 4549}# (lambda (#{clause\ 4550}# #{clauses\ 4551}#) (if (null? #{clauses\ 4551}#) (let ((#{tmp\ 4553}# #{clause\ 4550}#)) (let ((#{tmp\ 4554}# ($sc-dispatch #{tmp\ 4553}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile))) any . each-any)))) (if #{tmp\ 4554}# (@apply (lambda (#{e1\ 4557}# #{e2\ 4558}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4555" "i4556")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (cons #{e1\ 4557}# #{e2\ 4558}#))) #{tmp\ 4554}#) (let ((#{tmp\ 4560}# ($sc-dispatch #{tmp\ 4553}# '(each-any any . each-any)))) (if #{tmp\ 4560}# (@apply (lambda (#{k\ 4564}# #{e1\ 4565}# #{e2\ 4566}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4561" "i4562" "i4563")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4561" "i4562" "i4563")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4561" "i4562" "i4563")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4561" "i4562" "i4563")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) #{k\ 4564}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4561" "i4562" "i4563")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (cons #{e1\ 4565}# #{e2\ 4566}#)))) #{tmp\ 4560}#) (let ((#{_\ 4570}# #{tmp\ 4553}#)) (syntax-violation 'case "bad clause" #{x\ 4532}# #{clause\ 4550}#))))))) (let ((#{tmp\ 4572}# (#{f\ 4549}# (car #{clauses\ 4551}#) (cdr #{clauses\ 4551}#)))) (let ((#{rest\ 4574}# #{tmp\ 4572}#)) (let ((#{tmp\ 4575}# #{clause\ 4550}#)) (let ((#{tmp\ 4576}# ($sc-dispatch #{tmp\ 4575}# '(each-any any . each-any)))) (if #{tmp\ 4576}# (@apply (lambda (#{k\ 4580}# #{e1\ 4581}# #{e2\ 4582}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4577" "i4578" "i4579")) #(ribcage #(rest) #((top)) #("i4573")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4577" "i4578" "i4579")) #(ribcage #(rest) #((top)) #("i4573")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4577" "i4578" "i4579")) #(ribcage #(rest) #((top)) #("i4573")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4577" "i4578" "i4579")) #(ribcage #(rest) #((top)) #("i4573")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) #{k\ 4580}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4577" "i4578" "i4579")) #(ribcage #(rest) #((top)) #("i4573")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4546" "i4547" "i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (cons #{e1\ 4581}# #{e2\ 4582}#)) #{rest\ 4574}#)) #{tmp\ 4576}#) (let ((#{_\ 4586}# #{tmp\ 4575}#)) (syntax-violation 'case "bad clause" #{x\ 4532}# #{clause\ 4550}#))))))))))) (begin (#{f\ 4549}# #{m1\ 4540}# #{m2\ 4541}#))))) (let ((#{body\ 4545}# #{tmp\ 4543}#)) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i4544")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i4544")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4536" "i4537" "i4538")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4533"))) (hygiene guile)) #{e\ 4539}#)) #{body\ 4545}#)))) #{tmp\ 4535}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4534}#))))))) (define make-variable-transformer (lambda (#{proc\ 4587}#) (if (procedure? #{proc\ 4587}#) (begin (letrec* ((#{trans\ 4590}# (lambda (#{x\ 4591}#) (#{proc\ 4587}# #{x\ 4591}#)))) (begin (set-procedure-property! #{trans\ 4590}# 'variable-transformer #t) #{trans\ 4590}#))) (error "variable transformer not a procedure" #{proc\ 4587}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x\ 4593}#) (let ((#{tmp\ 4595}# #{x\ 4593}#)) (let ((#{tmp\ 4596}# ($sc-dispatch #{tmp\ 4595}# (quote (_ any))))) (if #{tmp\ 4596}# (@apply (lambda (#{e\ 4598}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #{e\ 4598}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) (cons #{e\ 4598}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4597")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile))))))))) #{tmp\ 4596}#) (let ((#{tmp\ 4599}# ($sc-dispatch #{tmp\ 4595}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile))) any any) any))))) (if (if #{tmp\ 4599}# (@apply (lambda (#{id\ 4605}# #{exp1\ 4606}# #{var\ 4607}# #{val\ 4608}# #{exp2\ 4609}#) (if (identifier? #{id\ 4605}#) (identifier? #{var\ 4607}#) #f)) #{tmp\ 4599}#) #f) (@apply (lambda (#{id\ 4617}# #{exp1\ 4618}# #{var\ 4619}# #{val\ 4620}# #{exp2\ 4621}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #{var\ 4619}# #{val\ 4620}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #{exp2\ 4621}#)) (list (cons #{id\ 4617}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) (cons #{exp1\ 4618}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)))))) (list #{id\ 4617}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #{id\ 4617}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4612" "i4613" "i4614" "i4615" "i4616")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4594"))) (hygiene guile)) #{exp1\ 4618}#)))))) #{tmp\ 4599}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4595}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x\ 4622}#) (let ((#{tmp\ 4624}# #{x\ 4622}#)) (let ((#{tmp\ 4625}# ($sc-dispatch #{tmp\ 4624}# '(_ (any . any) any . each-any)))) (if #{tmp\ 4625}# (@apply (lambda (#{id\ 4630}# #{args\ 4631}# #{b0\ 4632}# #{b1\ 4633}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4626" "i4627" "i4628" "i4629")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4623"))) (hygiene guile)) #{id\ 4630}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4626" "i4627" "i4628" "i4629")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4623"))) (hygiene guile)) (cons #{args\ 4631}# (cons #{b0\ 4632}# #{b1\ 4633}#))))) #{tmp\ 4625}#) (let ((#{tmp\ 4635}# ($sc-dispatch #{tmp\ 4624}# (quote (_ any any))))) (if (if #{tmp\ 4635}# (@apply (lambda (#{id\ 4638}# #{val\ 4639}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4636" "i4637")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4623"))) (hygiene guile)))) #{tmp\ 4635}#) #f) (@apply (lambda (#{id\ 4642}# #{val\ 4643}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4640" "i4641")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4623"))) (hygiene guile)) #{id\ 4642}# #{val\ 4643}#)) #{tmp\ 4635}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4624}#)))))))))