(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec* ((#{and-map*\ 35}# (lambda (#{f\ 199}# #{first\ 200}# . #{rest\ 201}#) (begin (let ((#{t\ 207}# (null? #{first\ 200}#))) (if #{t\ 207}# #{t\ 207}# (if (null? #{rest\ 201}#) (letrec* ((#{andmap\ 211}# (lambda (#{first\ 212}#) (begin (let ((#{x\ 215}# (car #{first\ 212}#)) (#{first\ 216}# (cdr #{first\ 212}#))) (if (null? #{first\ 216}#) (#{f\ 199}# #{x\ 215}#) (if (#{f\ 199}# #{x\ 215}#) (#{andmap\ 211}# #{first\ 216}#) #f))))))) (begin (#{andmap\ 211}# #{first\ 200}#))) (letrec* ((#{andmap\ 222}# (lambda (#{first\ 223}# #{rest\ 224}#) (begin (let ((#{x\ 229}# (car #{first\ 223}#)) (#{xr\ 230}# (map car #{rest\ 224}#)) (#{first\ 231}# (cdr #{first\ 223}#)) (#{rest\ 232}# (map cdr #{rest\ 224}#))) (if (null? #{first\ 231}#) (@apply #{f\ 199}# (cons #{x\ 229}# #{xr\ 230}#)) (if (@apply #{f\ 199}# (cons #{x\ 229}# #{xr\ 230}#)) (#{andmap\ 222}# #{first\ 231}# #{rest\ 232}#) #f))))))) (begin (#{andmap\ 222}# #{first\ 200}# #{rest\ 201}#)))))))))) (begin (let ((#{make-primitive-ref\ 241}# (if #f #f)) (#{fx+\ 280}# (if #f #f)) (#{fx-\ 282}# (if #f #f)) (#{fx=\ 284}# (if #f #f)) (#{fx<\ 286}# (if #f #f)) (#{set-syntax-object-expression!\ 351}# (if #f #f)) (#{set-syntax-object-wrap!\ 353}# (if #f #f)) (#{set-syntax-object-module!\ 355}# (if #f #f)) (#{binding-type\ 362}# (if #f #f)) (#{binding-value\ 364}# (if #f #f)) (#{make-wrap\ 384}# (if #f #f)) (#{wrap-marks\ 386}# (if #f #f)) (#{wrap-subst\ 388}# (if #f #f)) (#{ribcage?\ 402}# (if #f #f))) (letrec* ((#{make-void\ 237}# (lambda (#{src\ 697}#) (make-struct/no-tail (vector-ref %expanded-vtables 0) #{src\ 697}#))) (#{make-const\ 239}# (lambda (#{src\ 699}# #{exp\ 700}#) (make-struct/no-tail (vector-ref %expanded-vtables 1) #{src\ 699}# #{exp\ 700}#))) (#{make-lexical-ref\ 243}# (lambda (#{src\ 707}# #{name\ 708}# #{gensym\ 709}#) (make-struct/no-tail (vector-ref %expanded-vtables 3) #{src\ 707}# #{name\ 708}# #{gensym\ 709}#))) (#{make-lexical-set\ 245}# (lambda (#{src\ 713}# #{name\ 714}# #{gensym\ 715}# #{exp\ 716}#) (make-struct/no-tail (vector-ref %expanded-vtables 4) #{src\ 713}# #{name\ 714}# #{gensym\ 715}# #{exp\ 716}#))) (#{make-module-ref\ 247}# (lambda (#{src\ 721}# #{mod\ 722}# #{name\ 723}# #{public?\ 724}#) (make-struct/no-tail (vector-ref %expanded-vtables 5) #{src\ 721}# #{mod\ 722}# #{name\ 723}# #{public?\ 724}#))) (#{make-module-set\ 249}# (lambda (#{src\ 729}# #{mod\ 730}# #{name\ 731}# #{public?\ 732}# #{exp\ 733}#) (make-struct/no-tail (vector-ref %expanded-vtables 6) #{src\ 729}# #{mod\ 730}# #{name\ 731}# #{public?\ 732}# #{exp\ 733}#))) (#{make-toplevel-ref\ 251}# (lambda (#{src\ 739}# #{name\ 740}#) (make-struct/no-tail (vector-ref %expanded-vtables 7) #{src\ 739}# #{name\ 740}#))) (#{make-toplevel-set\ 253}# (lambda (#{src\ 743}# #{name\ 744}# #{exp\ 745}#) (make-struct/no-tail (vector-ref %expanded-vtables 8) #{src\ 743}# #{name\ 744}# #{exp\ 745}#))) (#{make-toplevel-define\ 255}# (lambda (#{src\ 749}# #{name\ 750}# #{exp\ 751}#) (make-struct/no-tail (vector-ref %expanded-vtables 9) #{src\ 749}# #{name\ 750}# #{exp\ 751}#))) (#{make-conditional\ 257}# (lambda (#{src\ 755}# #{test\ 756}# #{consequent\ 757}# #{alternate\ 758}#) (make-struct/no-tail (vector-ref %expanded-vtables 10) #{src\ 755}# #{test\ 756}# #{consequent\ 757}# #{alternate\ 758}#))) (#{make-application\ 259}# (lambda (#{src\ 763}# #{proc\ 764}# #{args\ 765}#) (make-struct/no-tail (vector-ref %expanded-vtables 11) #{src\ 763}# #{proc\ 764}# #{args\ 765}#))) (#{make-sequence\ 261}# (lambda (#{src\ 769}# #{exps\ 770}#) (make-struct/no-tail (vector-ref %expanded-vtables 12) #{src\ 769}# #{exps\ 770}#))) (#{make-lambda\ 263}# (lambda (#{src\ 773}# #{meta\ 774}# #{body\ 775}#) (make-struct/no-tail (vector-ref %expanded-vtables 13) #{src\ 773}# #{meta\ 774}# #{body\ 775}#))) (#{make-lambda-case\ 265}# (lambda (#{src\ 779}# #{req\ 780}# #{opt\ 781}# #{rest\ 782}# #{kw\ 783}# #{inits\ 784}# #{gensyms\ 785}# #{body\ 786}# #{alternate\ 787}#) (make-struct/no-tail (vector-ref %expanded-vtables 14) #{src\ 779}# #{req\ 780}# #{opt\ 781}# #{rest\ 782}# #{kw\ 783}# #{inits\ 784}# #{gensyms\ 785}# #{body\ 786}# #{alternate\ 787}#))) (#{make-let\ 267}# (lambda (#{src\ 797}# #{names\ 798}# #{gensyms\ 799}# #{vals\ 800}# #{body\ 801}#) (make-struct/no-tail (vector-ref %expanded-vtables 15) #{src\ 797}# #{names\ 798}# #{gensyms\ 799}# #{vals\ 800}# #{body\ 801}#))) (#{make-letrec\ 269}# (lambda (#{src\ 807}# #{in-order?\ 808}# #{names\ 809}# #{gensyms\ 810}# #{vals\ 811}# #{body\ 812}#) (make-struct/no-tail (vector-ref %expanded-vtables 16) #{src\ 807}# #{in-order?\ 808}# #{names\ 809}# #{gensyms\ 810}# #{vals\ 811}# #{body\ 812}#))) (#{make-dynlet\ 271}# (lambda (#{src\ 819}# #{fluids\ 820}# #{vals\ 821}# #{body\ 822}#) (make-struct/no-tail (vector-ref %expanded-vtables 17) #{src\ 819}# #{fluids\ 820}# #{vals\ 821}# #{body\ 822}#))) (#{lambda?\ 274}# (lambda (#{x\ 827}#) (if (struct? #{x\ 827}#) (eq? (struct-vtable #{x\ 827}#) (vector-ref %expanded-vtables 13)) #f))) (#{lambda-meta\ 276}# (lambda (#{x\ 831}#) (struct-ref #{x\ 831}# 1))) (#{set-lambda-meta!\ 278}# (lambda (#{x\ 833}# #{v\ 834}#) (struct-set! #{x\ 833}# 1 #{v\ 834}#))) (#{top-level-eval-hook\ 288}# (lambda (#{x\ 837}# #{mod\ 838}#) (primitive-eval #{x\ 837}#))) (#{local-eval-hook\ 290}# (lambda (#{x\ 841}# #{mod\ 842}#) (primitive-eval #{x\ 841}#))) (#{put-global-definition-hook\ 293}# (lambda (#{symbol\ 845}# #{type\ 846}# #{val\ 847}#) (module-define! (current-module) #{symbol\ 845}# (make-syntax-transformer #{symbol\ 845}# #{type\ 846}# #{val\ 847}#)))) (#{get-global-definition-hook\ 295}# (lambda (#{symbol\ 851}# #{module\ 852}#) (begin (if (if (not #{module\ 852}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol\ 851}#)) (begin (let ((#{v\ 858}# (module-variable (if #{module\ 852}# (resolve-module (cdr #{module\ 852}#)) (current-module)) #{symbol\ 851}#))) (if #{v\ 858}# (if (variable-bound? #{v\ 858}#) (begin (let ((#{val\ 863}# (variable-ref #{v\ 858}#))) (if (macro? #{val\ 863}#) (if (macro-type #{val\ 863}#) (cons (macro-type #{val\ 863}#) (macro-binding #{val\ 863}#)) #f) #f))) #f) #f)))))) (#{decorate-source\ 297}# (lambda (#{e\ 867}# #{s\ 868}#) (begin (if (if (pair? #{e\ 867}#) #{s\ 868}# #f) (set-source-properties! #{e\ 867}# #{s\ 868}#)) #{e\ 867}#))) (#{maybe-name-value!\ 299}# (lambda (#{name\ 873}# #{val\ 874}#) (if (#{lambda?\ 274}# #{val\ 874}#) (begin (let ((#{meta\ 878}# (#{lambda-meta\ 276}# #{val\ 874}#))) (if (not (assq (quote name) #{meta\ 878}#)) (#{set-lambda-meta!\ 278}# #{val\ 874}# (cons (cons (quote name) #{name\ 873}#) #{meta\ 878}#)))))))) (#{build-void\ 301}# (lambda (#{source\ 879}#) (#{make-void\ 237}# #{source\ 879}#))) (#{build-application\ 303}# (lambda (#{source\ 881}# #{fun-exp\ 882}# #{arg-exps\ 883}#) (#{make-application\ 259}# #{source\ 881}# #{fun-exp\ 882}# #{arg-exps\ 883}#))) (#{build-conditional\ 305}# (lambda (#{source\ 887}# #{test-exp\ 888}# #{then-exp\ 889}# #{else-exp\ 890}#) (#{make-conditional\ 257}# #{source\ 887}# #{test-exp\ 888}# #{then-exp\ 889}# #{else-exp\ 890}#))) (#{build-dynlet\ 307}# (lambda (#{source\ 895}# #{fluids\ 896}# #{vals\ 897}# #{body\ 898}#) (#{make-dynlet\ 271}# #{source\ 895}# #{fluids\ 896}# #{vals\ 897}# #{body\ 898}#))) (#{build-lexical-reference\ 309}# (lambda (#{type\ 903}# #{source\ 904}# #{name\ 905}# #{var\ 906}#) (#{make-lexical-ref\ 243}# #{source\ 904}# #{name\ 905}# #{var\ 906}#))) (#{build-lexical-assignment\ 311}# (lambda (#{source\ 911}# #{name\ 912}# #{var\ 913}# #{exp\ 914}#) (begin (#{maybe-name-value!\ 299}# #{name\ 912}# #{exp\ 914}#) (#{make-lexical-set\ 245}# #{source\ 911}# #{name\ 912}# #{var\ 913}# #{exp\ 914}#)))) (#{analyze-variable\ 313}# (lambda (#{mod\ 919}# #{var\ 920}# #{modref-cont\ 921}# #{bare-cont\ 922}#) (if (not #{mod\ 919}#) (#{bare-cont\ 922}# #{var\ 920}#) (begin (let ((#{kind\ 929}# (car #{mod\ 919}#)) (#{mod\ 930}# (cdr #{mod\ 919}#))) (if (eqv? #{kind\ 929}# (quote public)) (#{modref-cont\ 921}# #{mod\ 930}# #{var\ 920}# #t) (if (eqv? #{kind\ 929}# (quote private)) (if (not (equal? #{mod\ 930}# (module-name (current-module)))) (#{modref-cont\ 921}# #{mod\ 930}# #{var\ 920}# #f) (#{bare-cont\ 922}# #{var\ 920}#)) (if (eqv? #{kind\ 929}# (quote bare)) (#{bare-cont\ 922}# #{var\ 920}#) (if (eqv? #{kind\ 929}# (quote hygiene)) (if (if (not (equal? #{mod\ 930}# (module-name (current-module)))) (module-variable (resolve-module #{mod\ 930}#) #{var\ 920}#) #f) (#{modref-cont\ 921}# #{mod\ 930}# #{var\ 920}# #f) (#{bare-cont\ 922}# #{var\ 920}#)) (syntax-violation #f "bad module kind" #{var\ 920}# #{mod\ 930}#)))))))))) (#{build-global-reference\ 315}# (lambda (#{source\ 938}# #{var\ 939}# #{mod\ 940}#) (#{analyze-variable\ 313}# #{mod\ 940}# #{var\ 939}# (lambda (#{mod\ 944}# #{var\ 945}# #{public?\ 946}#) (#{make-module-ref\ 247}# #{source\ 938}# #{mod\ 944}# #{var\ 945}# #{public?\ 946}#)) (lambda (#{var\ 950}#) (#{make-toplevel-ref\ 251}# #{source\ 938}# #{var\ 950}#))))) (#{build-global-assignment\ 317}# (lambda (#{source\ 952}# #{var\ 953}# #{exp\ 954}# #{mod\ 955}#) (begin (#{maybe-name-value!\ 299}# #{var\ 953}# #{exp\ 954}#) (#{analyze-variable\ 313}# #{mod\ 955}# #{var\ 953}# (lambda (#{mod\ 960}# #{var\ 961}# #{public?\ 962}#) (#{make-module-set\ 249}# #{source\ 952}# #{mod\ 960}# #{var\ 961}# #{public?\ 962}# #{exp\ 954}#)) (lambda (#{var\ 966}#) (#{make-toplevel-set\ 253}# #{source\ 952}# #{var\ 966}# #{exp\ 954}#)))))) (#{build-global-definition\ 319}# (lambda (#{source\ 968}# #{var\ 969}# #{exp\ 970}#) (begin (#{maybe-name-value!\ 299}# #{var\ 969}# #{exp\ 970}#) (#{make-toplevel-define\ 255}# #{source\ 968}# #{var\ 969}# #{exp\ 970}#)))) (#{build-simple-lambda\ 321}# (lambda (#{src\ 974}# #{req\ 975}# #{rest\ 976}# #{vars\ 977}# #{meta\ 978}# #{exp\ 979}#) (#{make-lambda\ 263}# #{src\ 974}# #{meta\ 978}# (#{make-lambda-case\ 265}# #{src\ 974}# #{req\ 975}# #f #{rest\ 976}# #f '() #{vars\ 977}# #{exp\ 979}# #f)))) (#{build-case-lambda\ 323}# (lambda (#{src\ 986}# #{meta\ 987}# #{body\ 988}#) (#{make-lambda\ 263}# #{src\ 986}# #{meta\ 987}# #{body\ 988}#))) (#{build-lambda-case\ 325}# (lambda (#{src\ 992}# #{req\ 993}# #{opt\ 994}# #{rest\ 995}# #{kw\ 996}# #{inits\ 997}# #{vars\ 998}# #{body\ 999}# #{else-case\ 1000}#) (#{make-lambda-case\ 265}# #{src\ 992}# #{req\ 993}# #{opt\ 994}# #{rest\ 995}# #{kw\ 996}# #{inits\ 997}# #{vars\ 998}# #{body\ 999}# #{else-case\ 1000}#))) (#{build-primref\ 327}# (lambda (#{src\ 1010}# #{name\ 1011}#) (if (equal? (module-name (current-module)) '(guile)) (#{make-toplevel-ref\ 251}# #{src\ 1010}# #{name\ 1011}#) (#{make-module-ref\ 247}# #{src\ 1010}# '(guile) #{name\ 1011}# #f)))) (#{build-data\ 329}# (lambda (#{src\ 1014}# #{exp\ 1015}#) (#{make-const\ 239}# #{src\ 1014}# #{exp\ 1015}#))) (#{build-sequence\ 331}# (lambda (#{src\ 1018}# #{exps\ 1019}#) (if (null? (cdr #{exps\ 1019}#)) (car #{exps\ 1019}#) (#{make-sequence\ 261}# #{src\ 1018}# #{exps\ 1019}#)))) (#{build-let\ 333}# (lambda (#{src\ 1022}# #{ids\ 1023}# #{vars\ 1024}# #{val-exps\ 1025}# #{body-exp\ 1026}#) (begin (for-each #{maybe-name-value!\ 299}# #{ids\ 1023}# #{val-exps\ 1025}#) (if (null? #{vars\ 1024}#) #{body-exp\ 1026}# (#{make-let\ 267}# #{src\ 1022}# #{ids\ 1023}# #{vars\ 1024}# #{val-exps\ 1025}# #{body-exp\ 1026}#))))) (#{build-named-let\ 335}# (lambda (#{src\ 1032}# #{ids\ 1033}# #{vars\ 1034}# #{val-exps\ 1035}# #{body-exp\ 1036}#) (begin (let ((#{f\ 1046}# (car #{vars\ 1034}#)) (#{f-name\ 1047}# (car #{ids\ 1033}#)) (#{vars\ 1048}# (cdr #{vars\ 1034}#)) (#{ids\ 1049}# (cdr #{ids\ 1033}#))) (begin (let ((#{proc\ 1051}# (#{build-simple-lambda\ 321}# #{src\ 1032}# #{ids\ 1049}# #f #{vars\ 1048}# '() #{body-exp\ 1036}#))) (begin (#{maybe-name-value!\ 299}# #{f-name\ 1047}# #{proc\ 1051}#) (for-each #{maybe-name-value!\ 299}# #{ids\ 1049}# #{val-exps\ 1035}#) (#{make-letrec\ 269}# #{src\ 1032}# #f (list #{f-name\ 1047}#) (list #{f\ 1046}#) (list #{proc\ 1051}#) (#{build-application\ 303}# #{src\ 1032}# (#{build-lexical-reference\ 309}# 'fun #{src\ 1032}# #{f-name\ 1047}# #{f\ 1046}#) #{val-exps\ 1035}#))))))))) (#{build-letrec\ 337}# (lambda (#{src\ 1052}# #{in-order?\ 1053}# #{ids\ 1054}# #{vars\ 1055}# #{val-exps\ 1056}# #{body-exp\ 1057}#) (if (null? #{vars\ 1055}#) #{body-exp\ 1057}# (begin (for-each #{maybe-name-value!\ 299}# #{ids\ 1054}# #{val-exps\ 1056}#) (#{make-letrec\ 269}# #{src\ 1052}# #{in-order?\ 1053}# #{ids\ 1054}# #{vars\ 1055}# #{val-exps\ 1056}# #{body-exp\ 1057}#))))) (#{make-syntax-object\ 341}# (lambda (#{expression\ 1064}# #{wrap\ 1065}# #{module\ 1066}#) (vector 'syntax-object #{expression\ 1064}# #{wrap\ 1065}# #{module\ 1066}#))) (#{syntax-object?\ 343}# (lambda (#{x\ 1070}#) (if (vector? #{x\ 1070}#) (if (= (vector-length #{x\ 1070}#) 4) (eq? (vector-ref #{x\ 1070}# 0) 'syntax-object) #f) #f))) (#{syntax-object-expression\ 345}# (lambda (#{x\ 1075}#) (vector-ref #{x\ 1075}# 1))) (#{syntax-object-wrap\ 347}# (lambda (#{x\ 1077}#) (vector-ref #{x\ 1077}# 2))) (#{syntax-object-module\ 349}# (lambda (#{x\ 1079}#) (vector-ref #{x\ 1079}# 3))) (#{source-annotation\ 358}# (lambda (#{x\ 1093}#) (if (#{syntax-object?\ 343}# #{x\ 1093}#) (#{source-annotation\ 358}# (#{syntax-object-expression\ 345}# #{x\ 1093}#)) (if (pair? #{x\ 1093}#) (begin (let ((#{props\ 1100}# (source-properties #{x\ 1093}#))) (if (pair? #{props\ 1100}#) #{props\ 1100}# #f))) #f)))) (#{extend-env\ 367}# (lambda (#{labels\ 1102}# #{bindings\ 1103}# #{r\ 1104}#) (if (null? #{labels\ 1102}#) #{r\ 1104}# (#{extend-env\ 367}# (cdr #{labels\ 1102}#) (cdr #{bindings\ 1103}#) (cons (cons (car #{labels\ 1102}#) (car #{bindings\ 1103}#)) #{r\ 1104}#))))) (#{extend-var-env\ 369}# (lambda (#{labels\ 1108}# #{vars\ 1109}# #{r\ 1110}#) (if (null? #{labels\ 1108}#) #{r\ 1110}# (#{extend-var-env\ 369}# (cdr #{labels\ 1108}#) (cdr #{vars\ 1109}#) (cons (cons (car #{labels\ 1108}#) (cons (quote lexical) (car #{vars\ 1109}#))) #{r\ 1110}#))))) (#{macros-only-env\ 371}# (lambda (#{r\ 1115}#) (if (null? #{r\ 1115}#) '() (begin (let ((#{a\ 1118}# (car #{r\ 1115}#))) (if (eq? (car (cdr #{a\ 1118}#)) (quote macro)) (cons #{a\ 1118}# (#{macros-only-env\ 371}# (cdr #{r\ 1115}#))) (#{macros-only-env\ 371}# (cdr #{r\ 1115}#)))))))) (#{lookup\ 373}# (lambda (#{x\ 1119}# #{r\ 1120}# #{mod\ 1121}#) (begin (let ((#{t\ 1127}# (assq #{x\ 1119}# #{r\ 1120}#))) (if #{t\ 1127}# (cdr #{t\ 1127}#) (if (symbol? #{x\ 1119}#) (begin (let ((#{t\ 1133}# (#{get-global-definition-hook\ 295}# #{x\ 1119}# #{mod\ 1121}#))) (if #{t\ 1133}# #{t\ 1133}# (quote (global))))) '(displaced-lexical))))))) (#{global-extend\ 375}# (lambda (#{type\ 1138}# #{sym\ 1139}# #{val\ 1140}#) (#{put-global-definition-hook\ 293}# #{sym\ 1139}# #{type\ 1138}# #{val\ 1140}#))) (#{nonsymbol-id?\ 377}# (lambda (#{x\ 1144}#) (if (#{syntax-object?\ 343}# #{x\ 1144}#) (symbol? (#{syntax-object-expression\ 345}# #{x\ 1144}#)) #f))) (#{id?\ 379}# (lambda (#{x\ 1148}#) (if (symbol? #{x\ 1148}#) #t (if (#{syntax-object?\ 343}# #{x\ 1148}#) (symbol? (#{syntax-object-expression\ 345}# #{x\ 1148}#)) #f)))) (#{id-sym-name&marks\ 382}# (lambda (#{x\ 1155}# #{w\ 1156}#) (if (#{syntax-object?\ 343}# #{x\ 1155}#) (values (#{syntax-object-expression\ 345}# #{x\ 1155}#) (#{join-marks\ 432}# (#{wrap-marks\ 386}# #{w\ 1156}#) (#{wrap-marks\ 386}# (#{syntax-object-wrap\ 347}# #{x\ 1155}#)))) (values #{x\ 1155}# (#{wrap-marks\ 386}# #{w\ 1156}#))))) (#{gen-label\ 395}# (lambda () (symbol->string (gensym "i")))) (#{gen-labels\ 397}# (lambda (#{ls\ 1159}#) (if (null? #{ls\ 1159}#) '() (cons (#{gen-label\ 395}#) (#{gen-labels\ 397}# (cdr #{ls\ 1159}#)))))) (#{make-ribcage\ 400}# (lambda (#{symnames\ 1161}# #{marks\ 1162}# #{labels\ 1163}#) (vector 'ribcage #{symnames\ 1161}# #{marks\ 1162}# #{labels\ 1163}#))) (#{ribcage-symnames\ 404}# (lambda (#{x\ 1172}#) (vector-ref #{x\ 1172}# 1))) (#{ribcage-marks\ 406}# (lambda (#{x\ 1174}#) (vector-ref #{x\ 1174}# 2))) (#{ribcage-labels\ 408}# (lambda (#{x\ 1176}#) (vector-ref #{x\ 1176}# 3))) (#{set-ribcage-symnames!\ 410}# (lambda (#{x\ 1178}# #{update\ 1179}#) (vector-set! #{x\ 1178}# 1 #{update\ 1179}#))) (#{set-ribcage-marks!\ 412}# (lambda (#{x\ 1182}# #{update\ 1183}#) (vector-set! #{x\ 1182}# 2 #{update\ 1183}#))) (#{set-ribcage-labels!\ 414}# (lambda (#{x\ 1186}# #{update\ 1187}#) (vector-set! #{x\ 1186}# 3 #{update\ 1187}#))) (#{anti-mark\ 420}# (lambda (#{w\ 1190}#) (#{make-wrap\ 384}# (cons #f (#{wrap-marks\ 386}# #{w\ 1190}#)) (cons 'shift (#{wrap-subst\ 388}# #{w\ 1190}#))))) (#{extend-ribcage!\ 424}# (lambda (#{ribcage\ 1193}# #{id\ 1194}# #{label\ 1195}#) (begin (#{set-ribcage-symnames!\ 410}# #{ribcage\ 1193}# (cons (#{syntax-object-expression\ 345}# #{id\ 1194}#) (#{ribcage-symnames\ 404}# #{ribcage\ 1193}#))) (#{set-ribcage-marks!\ 412}# #{ribcage\ 1193}# (cons (#{wrap-marks\ 386}# (#{syntax-object-wrap\ 347}# #{id\ 1194}#)) (#{ribcage-marks\ 406}# #{ribcage\ 1193}#))) (#{set-ribcage-labels!\ 414}# #{ribcage\ 1193}# (cons #{label\ 1195}# (#{ribcage-labels\ 408}# #{ribcage\ 1193}#)))))) (#{make-binding-wrap\ 426}# (lambda (#{ids\ 1199}# #{labels\ 1200}# #{w\ 1201}#) (if (null? #{ids\ 1199}#) #{w\ 1201}# (#{make-wrap\ 384}# (#{wrap-marks\ 386}# #{w\ 1201}#) (cons (begin (let ((#{labelvec\ 1206}# (list->vector #{labels\ 1200}#))) (begin (let ((#{n\ 1208}# (vector-length #{labelvec\ 1206}#))) (begin (let ((#{symnamevec\ 1211}# (make-vector #{n\ 1208}#)) (#{marksvec\ 1212}# (make-vector #{n\ 1208}#))) (begin (letrec* ((#{f\ 1216}# (lambda (#{ids\ 1217}# #{i\ 1218}#) (if (not (null? #{ids\ 1217}#)) (call-with-values (lambda () (#{id-sym-name&marks\ 382}# (car #{ids\ 1217}#) #{w\ 1201}#)) (lambda (#{symname\ 1219}# #{marks\ 1220}#) (begin (vector-set! #{symnamevec\ 1211}# #{i\ 1218}# #{symname\ 1219}#) (vector-set! #{marksvec\ 1212}# #{i\ 1218}# #{marks\ 1220}#) (#{f\ 1216}# (cdr #{ids\ 1217}#) (#{fx+\ 280}# #{i\ 1218}# 1))))))))) (begin (#{f\ 1216}# #{ids\ 1199}# 0))) (#{make-ribcage\ 400}# #{symnamevec\ 1211}# #{marksvec\ 1212}# #{labelvec\ 1206}#)))))))) (#{wrap-subst\ 388}# #{w\ 1201}#)))))) (#{smart-append\ 428}# (lambda (#{m1\ 1223}# #{m2\ 1224}#) (if (null? #{m2\ 1224}#) #{m1\ 1223}# (append #{m1\ 1223}# #{m2\ 1224}#)))) (#{join-wraps\ 430}# (lambda (#{w1\ 1227}# #{w2\ 1228}#) (begin (let ((#{m1\ 1233}# (#{wrap-marks\ 386}# #{w1\ 1227}#)) (#{s1\ 1234}# (#{wrap-subst\ 388}# #{w1\ 1227}#))) (if (null? #{m1\ 1233}#) (if (null? #{s1\ 1234}#) #{w2\ 1228}# (#{make-wrap\ 384}# (#{wrap-marks\ 386}# #{w2\ 1228}#) (#{smart-append\ 428}# #{s1\ 1234}# (#{wrap-subst\ 388}# #{w2\ 1228}#)))) (#{make-wrap\ 384}# (#{smart-append\ 428}# #{m1\ 1233}# (#{wrap-marks\ 386}# #{w2\ 1228}#)) (#{smart-append\ 428}# #{s1\ 1234}# (#{wrap-subst\ 388}# #{w2\ 1228}#)))))))) (#{join-marks\ 432}# (lambda (#{m1\ 1235}# #{m2\ 1236}#) (#{smart-append\ 428}# #{m1\ 1235}# #{m2\ 1236}#))) (#{same-marks?\ 434}# (lambda (#{x\ 1239}# #{y\ 1240}#) (begin (let ((#{t\ 1245}# (eq? #{x\ 1239}# #{y\ 1240}#))) (if #{t\ 1245}# #{t\ 1245}# (if (not (null? #{x\ 1239}#)) (if (not (null? #{y\ 1240}#)) (if (eq? (car #{x\ 1239}#) (car #{y\ 1240}#)) (#{same-marks?\ 434}# (cdr #{x\ 1239}#) (cdr #{y\ 1240}#)) #f) #f) #f)))))) (#{id-var-name\ 436}# (lambda (#{id\ 1251}# #{w\ 1252}#) (letrec* ((#{search\ 1257}# (lambda (#{sym\ 1273}# #{subst\ 1274}# #{marks\ 1275}#) (if (null? #{subst\ 1274}#) (values #f #{marks\ 1275}#) (begin (let ((#{fst\ 1280}# (car #{subst\ 1274}#))) (if (eq? #{fst\ 1280}# (quote shift)) (#{search\ 1257}# #{sym\ 1273}# (cdr #{subst\ 1274}#) (cdr #{marks\ 1275}#)) (begin (let ((#{symnames\ 1282}# (#{ribcage-symnames\ 404}# #{fst\ 1280}#))) (if (vector? #{symnames\ 1282}#) (#{search-vector-rib\ 1261}# #{sym\ 1273}# #{subst\ 1274}# #{marks\ 1275}# #{symnames\ 1282}# #{fst\ 1280}#) (#{search-list-rib\ 1259}# #{sym\ 1273}# #{subst\ 1274}# #{marks\ 1275}# #{symnames\ 1282}# #{fst\ 1280}#)))))))))) (#{search-list-rib\ 1259}# (lambda (#{sym\ 1283}# #{subst\ 1284}# #{marks\ 1285}# #{symnames\ 1286}# #{ribcage\ 1287}#) (letrec* ((#{f\ 1296}# (lambda (#{symnames\ 1297}# #{i\ 1298}#) (if (null? #{symnames\ 1297}#) (#{search\ 1257}# #{sym\ 1283}# (cdr #{subst\ 1284}#) #{marks\ 1285}#) (if (if (eq? (car #{symnames\ 1297}#) #{sym\ 1283}#) (#{same-marks?\ 434}# #{marks\ 1285}# (list-ref (#{ribcage-marks\ 406}# #{ribcage\ 1287}#) #{i\ 1298}#)) #f) (values (list-ref (#{ribcage-labels\ 408}# #{ribcage\ 1287}#) #{i\ 1298}#) #{marks\ 1285}#) (#{f\ 1296}# (cdr #{symnames\ 1297}#) (#{fx+\ 280}# #{i\ 1298}# 1))))))) (begin (#{f\ 1296}# #{symnames\ 1286}# 0))))) (#{search-vector-rib\ 1261}# (lambda (#{sym\ 1306}# #{subst\ 1307}# #{marks\ 1308}# #{symnames\ 1309}# #{ribcage\ 1310}#) (begin (let ((#{n\ 1317}# (vector-length #{symnames\ 1309}#))) (letrec* ((#{f\ 1320}# (lambda (#{i\ 1321}#) (if (#{fx=\ 284}# #{i\ 1321}# #{n\ 1317}#) (#{search\ 1257}# #{sym\ 1306}# (cdr #{subst\ 1307}#) #{marks\ 1308}#) (if (if (eq? (vector-ref #{symnames\ 1309}# #{i\ 1321}#) #{sym\ 1306}#) (#{same-marks?\ 434}# #{marks\ 1308}# (vector-ref (#{ribcage-marks\ 406}# #{ribcage\ 1310}#) #{i\ 1321}#)) #f) (values (vector-ref (#{ribcage-labels\ 408}# #{ribcage\ 1310}#) #{i\ 1321}#) #{marks\ 1308}#) (#{f\ 1320}# (#{fx+\ 280}# #{i\ 1321}# 1))))))) (begin (#{f\ 1320}# 0)))))))) (begin (if (symbol? #{id\ 1251}#) (begin (let ((#{t\ 1331}# (call-with-values (lambda () (#{search\ 1257}# #{id\ 1251}# (#{wrap-subst\ 388}# #{w\ 1252}#) (#{wrap-marks\ 386}# #{w\ 1252}#))) (lambda (#{x\ 1333}# . #{ignore\ 1334}#) #{x\ 1333}#)))) (if #{t\ 1331}# #{t\ 1331}# #{id\ 1251}#))) (if (#{syntax-object?\ 343}# #{id\ 1251}#) (begin (let ((#{id\ 1342}# (#{syntax-object-expression\ 345}# #{id\ 1251}#)) (#{w1\ 1343}# (#{syntax-object-wrap\ 347}# #{id\ 1251}#))) (begin (let ((#{marks\ 1345}# (#{join-marks\ 432}# (#{wrap-marks\ 386}# #{w\ 1252}#) (#{wrap-marks\ 386}# #{w1\ 1343}#)))) (call-with-values (lambda () (#{search\ 1257}# #{id\ 1342}# (#{wrap-subst\ 388}# #{w\ 1252}#) #{marks\ 1345}#)) (lambda (#{new-id\ 1346}# #{marks\ 1347}#) (begin (let ((#{t\ 1352}# #{new-id\ 1346}#)) (if #{t\ 1352}# #{t\ 1352}# (begin (let ((#{t\ 1355}# (call-with-values (lambda () (#{search\ 1257}# #{id\ 1342}# (#{wrap-subst\ 388}# #{w1\ 1343}#) #{marks\ 1347}#)) (lambda (#{x\ 1357}# . #{ignore\ 1358}#) #{x\ 1357}#)))) (if #{t\ 1355}# #{t\ 1355}# #{id\ 1342}#)))))))))))) (syntax-violation 'id-var-name "invalid id" #{id\ 1251}#))))))) (#{free-id=?\ 438}# (lambda (#{i\ 1363}# #{j\ 1364}#) (if (eq? (begin (let ((#{x\ 1370}# #{i\ 1363}#)) (if (#{syntax-object?\ 343}# #{x\ 1370}#) (#{syntax-object-expression\ 345}# #{x\ 1370}#) #{x\ 1370}#))) (begin (let ((#{x\ 1373}# #{j\ 1364}#)) (if (#{syntax-object?\ 343}# #{x\ 1373}#) (#{syntax-object-expression\ 345}# #{x\ 1373}#) #{x\ 1373}#)))) (eq? (#{id-var-name\ 436}# #{i\ 1363}# (quote (()))) (#{id-var-name\ 436}# #{j\ 1364}# (quote (())))) #f))) (#{bound-id=?\ 440}# (lambda (#{i\ 1377}# #{j\ 1378}#) (if (if (#{syntax-object?\ 343}# #{i\ 1377}#) (#{syntax-object?\ 343}# #{j\ 1378}#) #f) (if (eq? (#{syntax-object-expression\ 345}# #{i\ 1377}#) (#{syntax-object-expression\ 345}# #{j\ 1378}#)) (#{same-marks?\ 434}# (#{wrap-marks\ 386}# (#{syntax-object-wrap\ 347}# #{i\ 1377}#)) (#{wrap-marks\ 386}# (#{syntax-object-wrap\ 347}# #{j\ 1378}#))) #f) (eq? #{i\ 1377}# #{j\ 1378}#)))) (#{valid-bound-ids?\ 442}# (lambda (#{ids\ 1385}#) (if (letrec* ((#{all-ids?\ 1390}# (lambda (#{ids\ 1391}#) (begin (let ((#{t\ 1394}# (null? #{ids\ 1391}#))) (if #{t\ 1394}# #{t\ 1394}# (if (#{id?\ 379}# (car #{ids\ 1391}#)) (#{all-ids?\ 1390}# (cdr #{ids\ 1391}#)) #f))))))) (begin (#{all-ids?\ 1390}# #{ids\ 1385}#))) (#{distinct-bound-ids?\ 444}# #{ids\ 1385}#) #f))) (#{distinct-bound-ids?\ 444}# (lambda (#{ids\ 1399}#) (letrec* ((#{distinct?\ 1403}# (lambda (#{ids\ 1404}#) (begin (let ((#{t\ 1407}# (null? #{ids\ 1404}#))) (if #{t\ 1407}# #{t\ 1407}# (if (not (#{bound-id-member?\ 446}# (car #{ids\ 1404}#) (cdr #{ids\ 1404}#))) (#{distinct?\ 1403}# (cdr #{ids\ 1404}#)) #f))))))) (begin (#{distinct?\ 1403}# #{ids\ 1399}#))))) (#{bound-id-member?\ 446}# (lambda (#{x\ 1411}# #{list\ 1412}#) (if (not (null? #{list\ 1412}#)) (begin (let ((#{t\ 1419}# (#{bound-id=?\ 440}# #{x\ 1411}# (car #{list\ 1412}#)))) (if #{t\ 1419}# #{t\ 1419}# (#{bound-id-member?\ 446}# #{x\ 1411}# (cdr #{list\ 1412}#))))) #f))) (#{wrap\ 448}# (lambda (#{x\ 1421}# #{w\ 1422}# #{defmod\ 1423}#) (if (if (null? (#{wrap-marks\ 386}# #{w\ 1422}#)) (null? (#{wrap-subst\ 388}# #{w\ 1422}#)) #f) #{x\ 1421}# (if (#{syntax-object?\ 343}# #{x\ 1421}#) (#{make-syntax-object\ 341}# (#{syntax-object-expression\ 345}# #{x\ 1421}#) (#{join-wraps\ 430}# #{w\ 1422}# (#{syntax-object-wrap\ 347}# #{x\ 1421}#)) (#{syntax-object-module\ 349}# #{x\ 1421}#)) (if (null? #{x\ 1421}#) #{x\ 1421}# (#{make-syntax-object\ 341}# #{x\ 1421}# #{w\ 1422}# #{defmod\ 1423}#)))))) (#{source-wrap\ 450}# (lambda (#{x\ 1436}# #{w\ 1437}# #{s\ 1438}# #{defmod\ 1439}#) (#{wrap\ 448}# (#{decorate-source\ 297}# #{x\ 1436}# #{s\ 1438}#) #{w\ 1437}# #{defmod\ 1439}#))) (#{chi-sequence\ 452}# (lambda (#{body\ 1444}# #{r\ 1445}# #{w\ 1446}# #{s\ 1447}# #{mod\ 1448}#) (#{build-sequence\ 331}# #{s\ 1447}# (letrec* ((#{dobody\ 1459}# (lambda (#{body\ 1460}# #{r\ 1461}# #{w\ 1462}# #{mod\ 1463}#) (if (null? #{body\ 1460}#) '() (begin (let ((#{first\ 1465}# (#{chi\ 464}# (car #{body\ 1460}#) #{r\ 1461}# #{w\ 1462}# #{mod\ 1463}#))) (cons #{first\ 1465}# (#{dobody\ 1459}# (cdr #{body\ 1460}#) #{r\ 1461}# #{w\ 1462}# #{mod\ 1463}#)))))))) (begin (#{dobody\ 1459}# #{body\ 1444}# #{r\ 1445}# #{w\ 1446}# #{mod\ 1448}#)))))) (#{chi-top-sequence\ 454}# (lambda (#{body\ 1466}# #{r\ 1467}# #{w\ 1468}# #{s\ 1469}# #{m\ 1470}# #{esew\ 1471}# #{mod\ 1472}#) (#{build-sequence\ 331}# #{s\ 1469}# (letrec* ((#{dobody\ 1488}# (lambda (#{body\ 1489}# #{r\ 1490}# #{w\ 1491}# #{m\ 1492}# #{esew\ 1493}# #{mod\ 1494}# #{out\ 1495}#) (if (null? #{body\ 1489}#) (reverse #{out\ 1495}#) (#{dobody\ 1488}# (cdr #{body\ 1489}#) #{r\ 1490}# #{w\ 1491}# #{m\ 1492}# #{esew\ 1493}# #{mod\ 1494}# (cons (#{chi-top\ 462}# (car #{body\ 1489}#) #{r\ 1490}# #{w\ 1491}# #{m\ 1492}# #{esew\ 1493}# #{mod\ 1494}#) #{out\ 1495}#)))))) (begin (#{dobody\ 1488}# #{body\ 1466}# #{r\ 1467}# #{w\ 1468}# #{m\ 1470}# #{esew\ 1471}# #{mod\ 1472}# '())))))) (#{chi-install-global\ 456}# (lambda (#{name\ 1496}# #{e\ 1497}#) (#{build-global-definition\ 319}# #f #{name\ 1496}# (#{build-application\ 303}# #f (#{build-primref\ 327}# #f 'make-syntax-transformer) (list (#{build-data\ 329}# #f #{name\ 1496}#) (#{build-data\ 329}# #f (quote macro)) #{e\ 1497}#))))) (#{chi-when-list\ 458}# (lambda (#{e\ 1505}# #{when-list\ 1506}# #{w\ 1507}#) (letrec* ((#{f\ 1514}# (lambda (#{when-list\ 1515}# #{situations\ 1516}#) (if (null? #{when-list\ 1515}#) #{situations\ 1516}# (#{f\ 1514}# (cdr #{when-list\ 1515}#) (cons (begin (let ((#{x\ 1518}# (car #{when-list\ 1515}#))) (if (#{free-id=?\ 438}# #{x\ 1518}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1517")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1511" "i1512" "i1513")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1508" "i1509" "i1510")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) 'compile (if (#{free-id=?\ 438}# #{x\ 1518}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1517")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1511" "i1512" "i1513")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1508" "i1509" "i1510")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) 'load (if (#{free-id=?\ 438}# #{x\ 1518}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1517")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1511" "i1512" "i1513")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1508" "i1509" "i1510")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) 'eval (if (#{free-id=?\ 438}# #{x\ 1518}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1517")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1511" "i1512" "i1513")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1508" "i1509" "i1510")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e\ 1505}# (#{wrap\ 448}# #{x\ 1518}# #{w\ 1507}# #f)))))))) #{situations\ 1516}#)))))) (begin (#{f\ 1514}# #{when-list\ 1506}# (quote ())))))) (#{syntax-type\ 460}# (lambda (#{e\ 1528}# #{r\ 1529}# #{w\ 1530}# #{s\ 1531}# #{rib\ 1532}# #{mod\ 1533}# #{for-car?\ 1534}#) (if (symbol? #{e\ 1528}#) (begin (let ((#{n\ 1546}# (#{id-var-name\ 436}# #{e\ 1528}# #{w\ 1530}#))) (begin (let ((#{b\ 1548}# (#{lookup\ 373}# #{n\ 1546}# #{r\ 1529}# #{mod\ 1533}#))) (begin (let ((#{type\ 1550}# (#{binding-type\ 362}# #{b\ 1548}#))) (if (eqv? #{type\ 1550}# (quote lexical)) (values #{type\ 1550}# (#{binding-value\ 364}# #{b\ 1548}#) #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{type\ 1550}# (quote global)) (values #{type\ 1550}# #{n\ 1546}# #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{type\ 1550}# (quote macro)) (if #{for-car?\ 1534}# (values #{type\ 1550}# (#{binding-value\ 364}# #{b\ 1548}#) #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (#{syntax-type\ 460}# (#{chi-macro\ 470}# (#{binding-value\ 364}# #{b\ 1548}#) #{e\ 1528}# #{r\ 1529}# #{w\ 1530}# #{s\ 1531}# #{rib\ 1532}# #{mod\ 1533}#) #{r\ 1529}# '(()) #{s\ 1531}# #{rib\ 1532}# #{mod\ 1533}# #f)) (values #{type\ 1550}# (#{binding-value\ 364}# #{b\ 1548}#) #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#)))))))))) (if (pair? #{e\ 1528}#) (begin (let ((#{first\ 1559}# (car #{e\ 1528}#))) (call-with-values (lambda () (#{syntax-type\ 460}# #{first\ 1559}# #{r\ 1529}# #{w\ 1530}# #{s\ 1531}# #{rib\ 1532}# #{mod\ 1533}# #t)) (lambda (#{ftype\ 1560}# #{fval\ 1561}# #{fe\ 1562}# #{fw\ 1563}# #{fs\ 1564}# #{fmod\ 1565}#) (if (eqv? #{ftype\ 1560}# (quote lexical)) (values 'lexical-call #{fval\ 1561}# #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{ftype\ 1560}# (quote global)) (values 'global-call (#{make-syntax-object\ 341}# #{fval\ 1561}# #{w\ 1530}# #{fmod\ 1565}#) #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{ftype\ 1560}# (quote macro)) (#{syntax-type\ 460}# (#{chi-macro\ 470}# #{fval\ 1561}# #{e\ 1528}# #{r\ 1529}# #{w\ 1530}# #{s\ 1531}# #{rib\ 1532}# #{mod\ 1533}#) #{r\ 1529}# '(()) #{s\ 1531}# #{rib\ 1532}# #{mod\ 1533}# #{for-car?\ 1534}#) (if (eqv? #{ftype\ 1560}# (quote module-ref)) (call-with-values (lambda () (#{fval\ 1561}# #{e\ 1528}# #{r\ 1529}# #{w\ 1530}#)) (lambda (#{e\ 1577}# #{r\ 1578}# #{w\ 1579}# #{s\ 1580}# #{mod\ 1581}#) (#{syntax-type\ 460}# #{e\ 1577}# #{r\ 1578}# #{w\ 1579}# #{s\ 1580}# #{rib\ 1532}# #{mod\ 1581}# #{for-car?\ 1534}#))) (if (eqv? #{ftype\ 1560}# (quote core)) (values 'core-form #{fval\ 1561}# #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{ftype\ 1560}# 'local-syntax) (values 'local-syntax-form #{fval\ 1561}# #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{ftype\ 1560}# (quote begin)) (values 'begin-form #f #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{ftype\ 1560}# 'eval-when) (values 'eval-when-form #f #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (if (eqv? #{ftype\ 1560}# 'define) (let ((#{tmp\ 1592}# #{e\ 1528}#)) (let ((#{tmp\ 1593}# ($sc-dispatch #{tmp\ 1592}# '(_ any any)))) (if (if #{tmp\ 1593}# (@apply (lambda (#{name\ 1596}# #{val\ 1597}#) (#{id?\ 379}# #{name\ 1596}#)) #{tmp\ 1593}#) #f) (@apply (lambda (#{name\ 1600}# #{val\ 1601}#) (values 'define-form #{name\ 1600}# #{val\ 1601}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#)) #{tmp\ 1593}#) (let ((#{tmp\ 1602}# ($sc-dispatch #{tmp\ 1592}# '(_ (any . any) any . each-any)))) (if (if #{tmp\ 1602}# (@apply (lambda (#{name\ 1607}# #{args\ 1608}# #{e1\ 1609}# #{e2\ 1610}#) (if (#{id?\ 379}# #{name\ 1607}#) (#{valid-bound-ids?\ 442}# (#{lambda-var-list\ 494}# #{args\ 1608}#)) #f)) #{tmp\ 1602}#) #f) (@apply (lambda (#{name\ 1617}# #{args\ 1618}# #{e1\ 1619}# #{e2\ 1620}#) (values 'define-form (#{wrap\ 448}# #{name\ 1617}# #{w\ 1530}# #{mod\ 1533}#) (#{decorate-source\ 297}# (cons '#(syntax-object lambda ((top) #(ribcage #(name args e1 e2) #((top) (top) (top) (top)) #("i1613" "i1614" "i1615" "i1616")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1566" "i1567" "i1568" "i1569" "i1570" "i1571")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1558")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1535" "i1536" "i1537" "i1538" "i1539" "i1540" "i1541")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) (#{wrap\ 448}# (cons #{args\ 1618}# (cons #{e1\ 1619}# #{e2\ 1620}#)) #{w\ 1530}# #{mod\ 1533}#)) #{s\ 1531}#) '(()) #{s\ 1531}# #{mod\ 1533}#)) #{tmp\ 1602}#) (let ((#{tmp\ 1623}# ($sc-dispatch #{tmp\ 1592}# '(_ any)))) (if (if #{tmp\ 1623}# (@apply (lambda (#{name\ 1625}#) (#{id?\ 379}# #{name\ 1625}#)) #{tmp\ 1623}#) #f) (@apply (lambda (#{name\ 1627}#) (values 'define-form (#{wrap\ 448}# #{name\ 1627}# #{w\ 1530}# #{mod\ 1533}#) '(#(syntax-object if ((top) #(ribcage #(name) #((top)) #("i1626")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1566" "i1567" "i1568" "i1569" "i1570" "i1571")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1558")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1535" "i1536" "i1537" "i1538" "i1539" "i1540" "i1541")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1626")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1566" "i1567" "i1568" "i1569" "i1570" "i1571")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1558")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1535" "i1536" "i1537" "i1538" "i1539" "i1540" "i1541")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1626")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1566" "i1567" "i1568" "i1569" "i1570" "i1571")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1558")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1535" "i1536" "i1537" "i1538" "i1539" "i1540" "i1541")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) '(()) #{s\ 1531}# #{mod\ 1533}#)) #{tmp\ 1623}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1592}#)))))))) (if (eqv? #{ftype\ 1560}# 'define-syntax) (let ((#{tmp\ 1630}# #{e\ 1528}#)) (let ((#{tmp\ 1631}# ($sc-dispatch #{tmp\ 1630}# '(_ any any)))) (if (if #{tmp\ 1631}# (@apply (lambda (#{name\ 1634}# #{val\ 1635}#) (#{id?\ 379}# #{name\ 1634}#)) #{tmp\ 1631}#) #f) (@apply (lambda (#{name\ 1638}# #{val\ 1639}#) (values 'define-syntax-form #{name\ 1638}# #{val\ 1639}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#)) #{tmp\ 1631}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1630}#)))) (values 'call #f #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#))))))))))))))) (if (#{syntax-object?\ 343}# #{e\ 1528}#) (#{syntax-type\ 460}# (#{syntax-object-expression\ 345}# #{e\ 1528}#) #{r\ 1529}# (#{join-wraps\ 430}# #{w\ 1530}# (#{syntax-object-wrap\ 347}# #{e\ 1528}#)) (begin (let ((#{t\ 1645}# (#{source-annotation\ 358}# #{e\ 1528}#))) (if #{t\ 1645}# #{t\ 1645}# #{s\ 1531}#))) #{rib\ 1532}# (begin (let ((#{t\ 1649}# (#{syntax-object-module\ 349}# #{e\ 1528}#))) (if #{t\ 1649}# #{t\ 1649}# #{mod\ 1533}#))) #{for-car?\ 1534}#) (if (self-evaluating? #{e\ 1528}#) (values 'constant #f #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#) (values 'other #f #{e\ 1528}# #{w\ 1530}# #{s\ 1531}# #{mod\ 1533}#))))))) (#{chi-top\ 462}# (lambda (#{e\ 1654}# #{r\ 1655}# #{w\ 1656}# #{m\ 1657}# #{esew\ 1658}# #{mod\ 1659}#) (call-with-values (lambda () (#{syntax-type\ 460}# #{e\ 1654}# #{r\ 1655}# #{w\ 1656}# (#{source-annotation\ 358}# #{e\ 1654}#) #f #{mod\ 1659}# #f)) (lambda (#{type\ 1680}# #{value\ 1681}# #{e\ 1682}# #{w\ 1683}# #{s\ 1684}# #{mod\ 1685}#) (if (eqv? #{type\ 1680}# (quote begin-form)) (let ((#{tmp\ 1693}# #{e\ 1682}#)) (let ((#{tmp\ 1694}# ($sc-dispatch #{tmp\ 1693}# (quote (_))))) (if #{tmp\ 1694}# (@apply (lambda () (#{chi-void\ 478}#)) #{tmp\ 1694}#) (let ((#{tmp\ 1695}# ($sc-dispatch #{tmp\ 1693}# '(_ any . each-any)))) (if #{tmp\ 1695}# (@apply (lambda (#{e1\ 1698}# #{e2\ 1699}#) (#{chi-top-sequence\ 454}# (cons #{e1\ 1698}# #{e2\ 1699}#) #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# #{m\ 1657}# #{esew\ 1658}# #{mod\ 1685}#)) #{tmp\ 1695}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1693}#)))))) (if (eqv? #{type\ 1680}# (quote local-syntax-form)) (#{chi-local-syntax\ 474}# #{value\ 1681}# #{e\ 1682}# #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# #{mod\ 1685}# (lambda (#{body\ 1702}# #{r\ 1703}# #{w\ 1704}# #{s\ 1705}# #{mod\ 1706}#) (#{chi-top-sequence\ 454}# #{body\ 1702}# #{r\ 1703}# #{w\ 1704}# #{s\ 1705}# #{m\ 1657}# #{esew\ 1658}# #{mod\ 1706}#))) (if (eqv? #{type\ 1680}# (quote eval-when-form)) (let ((#{tmp\ 1713}# #{e\ 1682}#)) (let ((#{tmp\ 1714}# ($sc-dispatch #{tmp\ 1713}# '(_ each-any any . each-any)))) (if #{tmp\ 1714}# (@apply (lambda (#{x\ 1718}# #{e1\ 1719}# #{e2\ 1720}#) (begin (let ((#{when-list\ 1723}# (#{chi-when-list\ 458}# #{e\ 1682}# #{x\ 1718}# #{w\ 1683}#)) (#{body\ 1724}# (cons #{e1\ 1719}# #{e2\ 1720}#))) (if (eq? #{m\ 1657}# (quote e)) (if (memq 'eval #{when-list\ 1723}#) (#{chi-top-sequence\ 454}# #{body\ 1724}# #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# (if (memq 'expand #{when-list\ 1723}#) 'c&e 'e) '(eval) #{mod\ 1685}#) (begin (if (memq 'expand #{when-list\ 1723}#) (#{top-level-eval-hook\ 288}# (#{chi-top-sequence\ 454}# #{body\ 1724}# #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# 'e '(eval) #{mod\ 1685}#) #{mod\ 1685}#)) (#{chi-void\ 478}#))) (if (memq 'load #{when-list\ 1723}#) (if (begin (let ((#{t\ 1733}# (memq 'compile #{when-list\ 1723}#))) (if #{t\ 1733}# #{t\ 1733}# (begin (let ((#{t\ 1736}# (memq 'expand #{when-list\ 1723}#))) (if #{t\ 1736}# #{t\ 1736}# (if (eq? #{m\ 1657}# 'c&e) (memq 'eval #{when-list\ 1723}#) #f))))))) (#{chi-top-sequence\ 454}# #{body\ 1724}# #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# 'c&e '(compile load) #{mod\ 1685}#) (if (if (eq? #{m\ 1657}# (quote c)) #t (eq? #{m\ 1657}# (quote c&e))) (#{chi-top-sequence\ 454}# #{body\ 1724}# #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# 'c '(load) #{mod\ 1685}#) (#{chi-void\ 478}#))) (if (begin (let ((#{t\ 1744}# (memq 'compile #{when-list\ 1723}#))) (if #{t\ 1744}# #{t\ 1744}# (begin (let ((#{t\ 1747}# (memq 'expand #{when-list\ 1723}#))) (if #{t\ 1747}# #{t\ 1747}# (if (eq? #{m\ 1657}# 'c&e) (memq 'eval #{when-list\ 1723}#) #f))))))) (begin (#{top-level-eval-hook\ 288}# (#{chi-top-sequence\ 454}# #{body\ 1724}# #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# 'e '(eval) #{mod\ 1685}#) #{mod\ 1685}#) (#{chi-void\ 478}#)) (#{chi-void\ 478}#))))))) #{tmp\ 1714}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1713}#)))) (if (eqv? #{type\ 1680}# (quote define-syntax-form)) (begin (let ((#{n\ 1755}# (#{id-var-name\ 436}# #{value\ 1681}# #{w\ 1683}#)) (#{r\ 1756}# (#{macros-only-env\ 371}# #{r\ 1655}#))) (if (eqv? #{m\ 1657}# (quote c)) (if (memq (quote compile) #{esew\ 1658}#) (begin (let ((#{e\ 1759}# (#{chi-install-global\ 456}# #{n\ 1755}# (#{chi\ 464}# #{e\ 1682}# #{r\ 1756}# #{w\ 1683}# #{mod\ 1685}#)))) (begin (#{top-level-eval-hook\ 288}# #{e\ 1759}# #{mod\ 1685}#) (if (memq (quote load) #{esew\ 1658}#) #{e\ 1759}# (#{chi-void\ 478}#))))) (if (memq (quote load) #{esew\ 1658}#) (#{chi-install-global\ 456}# #{n\ 1755}# (#{chi\ 464}# #{e\ 1682}# #{r\ 1756}# #{w\ 1683}# #{mod\ 1685}#)) (#{chi-void\ 478}#))) (if (eqv? #{m\ 1657}# (quote c&e)) (begin (let ((#{e\ 1762}# (#{chi-install-global\ 456}# #{n\ 1755}# (#{chi\ 464}# #{e\ 1682}# #{r\ 1756}# #{w\ 1683}# #{mod\ 1685}#)))) (begin (#{top-level-eval-hook\ 288}# #{e\ 1762}# #{mod\ 1685}#) #{e\ 1762}#))) (begin (if (memq (quote eval) #{esew\ 1658}#) (#{top-level-eval-hook\ 288}# (#{chi-install-global\ 456}# #{n\ 1755}# (#{chi\ 464}# #{e\ 1682}# #{r\ 1756}# #{w\ 1683}# #{mod\ 1685}#)) #{mod\ 1685}#)) (#{chi-void\ 478}#)))))) (if (eqv? #{type\ 1680}# (quote define-form)) (begin (let ((#{n\ 1767}# (#{id-var-name\ 436}# #{value\ 1681}# #{w\ 1683}#))) (begin (let ((#{type\ 1769}# (#{binding-type\ 362}# (#{lookup\ 373}# #{n\ 1767}# #{r\ 1655}# #{mod\ 1685}#)))) (if (if (eqv? #{type\ 1769}# (quote global)) #t (if (eqv? #{type\ 1769}# (quote core)) #t (if (eqv? #{type\ 1769}# 'macro) #t (eqv? #{type\ 1769}# 'module-ref)))) (begin (if (if (if (eq? #{m\ 1657}# (quote c)) #t (eq? #{m\ 1657}# (quote c&e))) (if (not (module-local-variable (current-module) #{n\ 1767}#)) (current-module) #f) #f) (begin (let ((#{old\ 1775}# (module-variable (current-module) #{n\ 1767}#))) (module-define! (current-module) #{n\ 1767}# (if (variable? #{old\ 1775}#) (variable-ref #{old\ 1775}#) #f))))) (begin (let ((#{x\ 1778}# (#{build-global-definition\ 319}# #{s\ 1684}# #{n\ 1767}# (#{chi\ 464}# #{e\ 1682}# #{r\ 1655}# #{w\ 1683}# #{mod\ 1685}#)))) (begin (if (eq? #{m\ 1657}# (quote c&e)) (#{top-level-eval-hook\ 288}# #{x\ 1778}# #{mod\ 1685}#)) #{x\ 1778}#)))) (if (eqv? #{type\ 1769}# 'displaced-lexical) (syntax-violation #f "identifier out of context" #{e\ 1682}# (#{wrap\ 448}# #{value\ 1681}# #{w\ 1683}# #{mod\ 1685}#)) (syntax-violation #f "cannot define keyword at top level" #{e\ 1682}# (#{wrap\ 448}# #{value\ 1681}# #{w\ 1683}# #{mod\ 1685}#)))))))) (begin (let ((#{x\ 1784}# (#{chi-expr\ 466}# #{type\ 1680}# #{value\ 1681}# #{e\ 1682}# #{r\ 1655}# #{w\ 1683}# #{s\ 1684}# #{mod\ 1685}#))) (begin (if (eq? #{m\ 1657}# (quote c&e)) (#{top-level-eval-hook\ 288}# #{x\ 1784}# #{mod\ 1685}#)) #{x\ 1784}#)))))))))))) (#{chi\ 464}# (lambda (#{e\ 1785}# #{r\ 1786}# #{w\ 1787}# #{mod\ 1788}#) (call-with-values (lambda () (#{syntax-type\ 460}# #{e\ 1785}# #{r\ 1786}# #{w\ 1787}# (#{source-annotation\ 358}# #{e\ 1785}#) #f #{mod\ 1788}# #f)) (lambda (#{type\ 1793}# #{value\ 1794}# #{e\ 1795}# #{w\ 1796}# #{s\ 1797}# #{mod\ 1798}#) (#{chi-expr\ 466}# #{type\ 1793}# #{value\ 1794}# #{e\ 1795}# #{r\ 1786}# #{w\ 1796}# #{s\ 1797}# #{mod\ 1798}#))))) (#{chi-expr\ 466}# (lambda (#{type\ 1805}# #{value\ 1806}# #{e\ 1807}# #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#) (if (eqv? #{type\ 1805}# (quote lexical)) (#{build-lexical-reference\ 309}# 'value #{s\ 1810}# #{e\ 1807}# #{value\ 1806}#) (if (if (eqv? #{type\ 1805}# (quote core)) #t (eqv? #{type\ 1805}# (quote core-form))) (#{value\ 1806}# #{e\ 1807}# #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#) (if (eqv? #{type\ 1805}# (quote module-ref)) (call-with-values (lambda () (#{value\ 1806}# #{e\ 1807}# #{r\ 1808}# #{w\ 1809}#)) (lambda (#{e\ 1822}# #{r\ 1823}# #{w\ 1824}# #{s\ 1825}# #{mod\ 1826}#) (#{chi\ 464}# #{e\ 1822}# #{r\ 1823}# #{w\ 1824}# #{mod\ 1826}#))) (if (eqv? #{type\ 1805}# (quote lexical-call)) (#{chi-application\ 468}# (begin (let ((#{id\ 1834}# (car #{e\ 1807}#))) (#{build-lexical-reference\ 309}# 'fun (#{source-annotation\ 358}# #{id\ 1834}#) (if (#{syntax-object?\ 343}# #{id\ 1834}#) (syntax->datum #{id\ 1834}#) #{id\ 1834}#) #{value\ 1806}#))) #{e\ 1807}# #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#) (if (eqv? #{type\ 1805}# (quote global-call)) (#{chi-application\ 468}# (#{build-global-reference\ 315}# (#{source-annotation\ 358}# (car #{e\ 1807}#)) (if (#{syntax-object?\ 343}# #{value\ 1806}#) (#{syntax-object-expression\ 345}# #{value\ 1806}#) #{value\ 1806}#) (if (#{syntax-object?\ 343}# #{value\ 1806}#) (#{syntax-object-module\ 349}# #{value\ 1806}#) #{mod\ 1811}#)) #{e\ 1807}# #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#) (if (eqv? #{type\ 1805}# (quote constant)) (#{build-data\ 329}# #{s\ 1810}# (#{strip\ 490}# (#{source-wrap\ 450}# #{e\ 1807}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#) '(()))) (if (eqv? #{type\ 1805}# (quote global)) (#{build-global-reference\ 315}# #{s\ 1810}# #{value\ 1806}# #{mod\ 1811}#) (if (eqv? #{type\ 1805}# (quote call)) (#{chi-application\ 468}# (#{chi\ 464}# (car #{e\ 1807}#) #{r\ 1808}# #{w\ 1809}# #{mod\ 1811}#) #{e\ 1807}# #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#) (if (eqv? #{type\ 1805}# (quote begin-form)) (let ((#{tmp\ 1841}# #{e\ 1807}#)) (let ((#{tmp\ 1842}# ($sc-dispatch #{tmp\ 1841}# '(_ any . each-any)))) (if #{tmp\ 1842}# (@apply (lambda (#{e1\ 1845}# #{e2\ 1846}#) (#{chi-sequence\ 452}# (cons #{e1\ 1845}# #{e2\ 1846}#) #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#)) #{tmp\ 1842}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1841}#)))) (if (eqv? #{type\ 1805}# 'local-syntax-form) (#{chi-local-syntax\ 474}# #{value\ 1806}# #{e\ 1807}# #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}# #{chi-sequence\ 452}#) (if (eqv? #{type\ 1805}# 'eval-when-form) (let ((#{tmp\ 1850}# #{e\ 1807}#)) (let ((#{tmp\ 1851}# ($sc-dispatch #{tmp\ 1850}# '(_ each-any any . each-any)))) (if #{tmp\ 1851}# (@apply (lambda (#{x\ 1855}# #{e1\ 1856}# #{e2\ 1857}#) (begin (let ((#{when-list\ 1859}# (#{chi-when-list\ 458}# #{e\ 1807}# #{x\ 1855}# #{w\ 1809}#))) (if (memq 'eval #{when-list\ 1859}#) (#{chi-sequence\ 452}# (cons #{e1\ 1856}# #{e2\ 1857}#) #{r\ 1808}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#) (#{chi-void\ 478}#))))) #{tmp\ 1851}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1850}#)))) (if (if (eqv? #{type\ 1805}# 'define-form) #t (eqv? #{type\ 1805}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 1807}# (#{wrap\ 448}# #{value\ 1806}# #{w\ 1809}# #{mod\ 1811}#)) (if (eqv? #{type\ 1805}# (quote syntax)) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 450}# #{e\ 1807}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#)) (if (eqv? #{type\ 1805}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 450}# #{e\ 1807}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 450}# #{e\ 1807}# #{w\ 1809}# #{s\ 1810}# #{mod\ 1811}#)))))))))))))))))) (#{chi-application\ 468}# (lambda (#{x\ 1866}# #{e\ 1867}# #{r\ 1868}# #{w\ 1869}# #{s\ 1870}# #{mod\ 1871}#) (let ((#{tmp\ 1878}# #{e\ 1867}#)) (let ((#{tmp\ 1879}# ($sc-dispatch #{tmp\ 1878}# '(any . each-any)))) (if #{tmp\ 1879}# (@apply (lambda (#{e0\ 1882}# #{e1\ 1883}#) (#{build-application\ 303}# #{s\ 1870}# #{x\ 1866}# (map (lambda (#{e\ 1884}#) (#{chi\ 464}# #{e\ 1884}# #{r\ 1868}# #{w\ 1869}# #{mod\ 1871}#)) #{e1\ 1883}#))) #{tmp\ 1879}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1878}#)))))) (#{chi-macro\ 470}# (lambda (#{p\ 1887}# #{e\ 1888}# #{r\ 1889}# #{w\ 1890}# #{s\ 1891}# #{rib\ 1892}# #{mod\ 1893}#) (letrec* ((#{rebuild-macro-output\ 1902}# (lambda (#{x\ 1903}# #{m\ 1904}#) (if (pair? #{x\ 1903}#) (#{decorate-source\ 297}# (cons (#{rebuild-macro-output\ 1902}# (car #{x\ 1903}#) #{m\ 1904}#) (#{rebuild-macro-output\ 1902}# (cdr #{x\ 1903}#) #{m\ 1904}#)) #{s\ 1891}#) (if (#{syntax-object?\ 343}# #{x\ 1903}#) (begin (let ((#{w\ 1912}# (#{syntax-object-wrap\ 347}# #{x\ 1903}#))) (begin (let ((#{ms\ 1915}# (#{wrap-marks\ 386}# #{w\ 1912}#)) (#{s\ 1916}# (#{wrap-subst\ 388}# #{w\ 1912}#))) (if (if (pair? #{ms\ 1915}#) (eq? (car #{ms\ 1915}#) #f) #f) (#{make-syntax-object\ 341}# (#{syntax-object-expression\ 345}# #{x\ 1903}#) (#{make-wrap\ 384}# (cdr #{ms\ 1915}#) (if #{rib\ 1892}# (cons #{rib\ 1892}# (cdr #{s\ 1916}#)) (cdr #{s\ 1916}#))) (#{syntax-object-module\ 349}# #{x\ 1903}#)) (#{make-syntax-object\ 341}# (#{decorate-source\ 297}# (#{syntax-object-expression\ 345}# #{x\ 1903}#) #{s\ 1916}#) (#{make-wrap\ 384}# (cons #{m\ 1904}# #{ms\ 1915}#) (if #{rib\ 1892}# (cons #{rib\ 1892}# (cons (quote shift) #{s\ 1916}#)) (cons (quote shift) #{s\ 1916}#))) (#{syntax-object-module\ 349}# #{x\ 1903}#))))))) (if (vector? #{x\ 1903}#) (begin (let ((#{n\ 1924}# (vector-length #{x\ 1903}#))) (begin (let ((#{v\ 1926}# (#{decorate-source\ 297}# (make-vector #{n\ 1924}#) #{x\ 1903}#))) (letrec* ((#{loop\ 1929}# (lambda (#{i\ 1930}#) (if (#{fx=\ 284}# #{i\ 1930}# #{n\ 1924}#) (begin (if #f #f) #{v\ 1926}#) (begin (vector-set! #{v\ 1926}# #{i\ 1930}# (#{rebuild-macro-output\ 1902}# (vector-ref #{x\ 1903}# #{i\ 1930}#) #{m\ 1904}#)) (#{loop\ 1929}# (#{fx+\ 280}# #{i\ 1930}# 1))))))) (begin (#{loop\ 1929}# 0))))))) (if (symbol? #{x\ 1903}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 450}# #{e\ 1888}# #{w\ 1890}# (#{wrap-subst\ 388}# #{w\ 1890}#) #{mod\ 1893}#) #{x\ 1903}#) (#{decorate-source\ 297}# #{x\ 1903}# #{s\ 1891}#)))))))) (begin (#{rebuild-macro-output\ 1902}# (#{p\ 1887}# (#{source-wrap\ 450}# #{e\ 1888}# (#{anti-mark\ 420}# #{w\ 1890}#) #{s\ 1891}# #{mod\ 1893}#)) (gensym "m")))))) (#{chi-body\ 472}# (lambda (#{body\ 1937}# #{outer-form\ 1938}# #{r\ 1939}# #{w\ 1940}# #{mod\ 1941}#) (begin (let ((#{r\ 1949}# (cons '("placeholder" placeholder) #{r\ 1939}#))) (begin (let ((#{ribcage\ 1951}# (#{make-ribcage\ 400}# '() '() '()))) (begin (let ((#{w\ 1954}# (#{make-wrap\ 384}# (#{wrap-marks\ 386}# #{w\ 1940}#) (cons #{ribcage\ 1951}# (#{wrap-subst\ 388}# #{w\ 1940}#))))) (letrec* ((#{parse\ 1963}# (lambda (#{body\ 1964}# #{ids\ 1965}# #{labels\ 1966}# #{var-ids\ 1967}# #{vars\ 1968}# #{vals\ 1969}# #{bindings\ 1970}#) (if (null? #{body\ 1964}#) (syntax-violation #f "no expressions in body" #{outer-form\ 1938}#) (begin (let ((#{e\ 1975}# (cdr (car #{body\ 1964}#))) (#{er\ 1976}# (car (car #{body\ 1964}#)))) (call-with-values (lambda () (#{syntax-type\ 460}# #{e\ 1975}# #{er\ 1976}# '(()) (#{source-annotation\ 358}# #{er\ 1976}#) #{ribcage\ 1951}# #{mod\ 1941}# #f)) (lambda (#{type\ 1978}# #{value\ 1979}# #{e\ 1980}# #{w\ 1981}# #{s\ 1982}# #{mod\ 1983}#) (if (eqv? #{type\ 1978}# 'define-form) (begin (let ((#{id\ 1993}# (#{wrap\ 448}# #{value\ 1979}# #{w\ 1981}# #{mod\ 1983}#)) (#{label\ 1994}# (#{gen-label\ 395}#))) (begin (let ((#{var\ 1996}# (#{gen-var\ 492}# #{id\ 1993}#))) (begin (#{extend-ribcage!\ 424}# #{ribcage\ 1951}# #{id\ 1993}# #{label\ 1994}#) (#{parse\ 1963}# (cdr #{body\ 1964}#) (cons #{id\ 1993}# #{ids\ 1965}#) (cons #{label\ 1994}# #{labels\ 1966}#) (cons #{id\ 1993}# #{var-ids\ 1967}#) (cons #{var\ 1996}# #{vars\ 1968}#) (cons (cons #{er\ 1976}# (#{wrap\ 448}# #{e\ 1980}# #{w\ 1981}# #{mod\ 1983}#)) #{vals\ 1969}#) (cons (cons 'lexical #{var\ 1996}#) #{bindings\ 1970}#))))))) (if (eqv? #{type\ 1978}# 'define-syntax-form) (begin (let ((#{id\ 2001}# (#{wrap\ 448}# #{value\ 1979}# #{w\ 1981}# #{mod\ 1983}#)) (#{label\ 2002}# (#{gen-label\ 395}#))) (begin (#{extend-ribcage!\ 424}# #{ribcage\ 1951}# #{id\ 2001}# #{label\ 2002}#) (#{parse\ 1963}# (cdr #{body\ 1964}#) (cons #{id\ 2001}# #{ids\ 1965}#) (cons #{label\ 2002}# #{labels\ 1966}#) #{var-ids\ 1967}# #{vars\ 1968}# #{vals\ 1969}# (cons (cons 'macro (cons #{er\ 1976}# (#{wrap\ 448}# #{e\ 1980}# #{w\ 1981}# #{mod\ 1983}#))) #{bindings\ 1970}#))))) (if (eqv? #{type\ 1978}# 'begin-form) (let ((#{tmp\ 2005}# #{e\ 1980}#)) (let ((#{tmp\ 2006}# ($sc-dispatch #{tmp\ 2005}# '(_ . each-any)))) (if #{tmp\ 2006}# (@apply (lambda (#{e1\ 2008}#) (#{parse\ 1963}# (letrec* ((#{f\ 2011}# (lambda (#{forms\ 2012}#) (if (null? #{forms\ 2012}#) (cdr #{body\ 1964}#) (cons (cons #{er\ 1976}# (#{wrap\ 448}# (car #{forms\ 2012}#) #{w\ 1981}# #{mod\ 1983}#)) (#{f\ 2011}# (cdr #{forms\ 2012}#))))))) (begin (#{f\ 2011}# #{e1\ 2008}#))) #{ids\ 1965}# #{labels\ 1966}# #{var-ids\ 1967}# #{vars\ 1968}# #{vals\ 1969}# #{bindings\ 1970}#)) #{tmp\ 2006}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2005}#)))) (if (eqv? #{type\ 1978}# 'local-syntax-form) (#{chi-local-syntax\ 474}# #{value\ 1979}# #{e\ 1980}# #{er\ 1976}# #{w\ 1981}# #{s\ 1982}# #{mod\ 1983}# (lambda (#{forms\ 2015}# #{er\ 2016}# #{w\ 2017}# #{s\ 2018}# #{mod\ 2019}#) (#{parse\ 1963}# (letrec* ((#{f\ 2027}# (lambda (#{forms\ 2028}#) (if (null? #{forms\ 2028}#) (cdr #{body\ 1964}#) (cons (cons #{er\ 2016}# (#{wrap\ 448}# (car #{forms\ 2028}#) #{w\ 2017}# #{mod\ 2019}#)) (#{f\ 2027}# (cdr #{forms\ 2028}#))))))) (begin (#{f\ 2027}# #{forms\ 2015}#))) #{ids\ 1965}# #{labels\ 1966}# #{var-ids\ 1967}# #{vars\ 1968}# #{vals\ 1969}# #{bindings\ 1970}#))) (if (null? #{ids\ 1965}#) (#{build-sequence\ 331}# #f (map (lambda (#{x\ 2031}#) (#{chi\ 464}# (cdr #{x\ 2031}#) (car #{x\ 2031}#) '(()) #{mod\ 1983}#)) (cons (cons #{er\ 1976}# (#{source-wrap\ 450}# #{e\ 1980}# #{w\ 1981}# #{s\ 1982}# #{mod\ 1983}#)) (cdr #{body\ 1964}#)))) (begin (if (not (#{valid-bound-ids?\ 442}# #{ids\ 1965}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 1938}#)) (letrec* ((#{loop\ 2038}# (lambda (#{bs\ 2039}# #{er-cache\ 2040}# #{r-cache\ 2041}#) (if (not (null? #{bs\ 2039}#)) (begin (let ((#{b\ 2044}# (car #{bs\ 2039}#))) (if (eq? (car #{b\ 2044}#) 'macro) (begin (let ((#{er\ 2047}# (car (cdr #{b\ 2044}#)))) (begin (let ((#{r-cache\ 2049}# (if (eq? #{er\ 2047}# #{er-cache\ 2040}#) #{r-cache\ 2041}# (#{macros-only-env\ 371}# #{er\ 2047}#)))) (begin (set-cdr! #{b\ 2044}# (#{eval-local-transformer\ 476}# (#{chi\ 464}# (cdr (cdr #{b\ 2044}#)) #{r-cache\ 2049}# '(()) #{mod\ 1983}#) #{mod\ 1983}#)) (#{loop\ 2038}# (cdr #{bs\ 2039}#) #{er\ 2047}# #{r-cache\ 2049}#)))))) (#{loop\ 2038}# (cdr #{bs\ 2039}#) #{er-cache\ 2040}# #{r-cache\ 2041}#)))))))) (begin (#{loop\ 2038}# #{bindings\ 1970}# #f #f))) (set-cdr! #{r\ 1949}# (#{extend-env\ 367}# #{labels\ 1966}# #{bindings\ 1970}# (cdr #{r\ 1949}#))) (#{build-letrec\ 337}# #f #t (reverse (map syntax->datum #{var-ids\ 1967}#)) (reverse #{vars\ 1968}#) (map (lambda (#{x\ 2052}#) (#{chi\ 464}# (cdr #{x\ 2052}#) (car #{x\ 2052}#) '(()) #{mod\ 1983}#)) (reverse #{vals\ 1969}#)) (#{build-sequence\ 331}# #f (map (lambda (#{x\ 2056}#) (#{chi\ 464}# (cdr #{x\ 2056}#) (car #{x\ 2056}#) '(()) #{mod\ 1983}#)) (cons (cons #{er\ 1976}# (#{source-wrap\ 450}# #{e\ 1980}# #{w\ 1981}# #{s\ 1982}# #{mod\ 1983}#)) (cdr #{body\ 1964}#))))))))))))))))))) (begin (#{parse\ 1963}# (map (lambda (#{x\ 1971}#) (cons #{r\ 1949}# (#{wrap\ 448}# #{x\ 1971}# #{w\ 1954}# #{mod\ 1941}#))) #{body\ 1937}#) '() '() '() '() '() '()))))))))))) (#{chi-local-syntax\ 474}# (lambda (#{rec?\ 2059}# #{e\ 2060}# #{r\ 2061}# #{w\ 2062}# #{s\ 2063}# #{mod\ 2064}# #{k\ 2065}#) (let ((#{tmp\ 2073}# #{e\ 2060}#)) (let ((#{tmp\ 2074}# ($sc-dispatch #{tmp\ 2073}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 2074}# (@apply (lambda (#{id\ 2079}# #{val\ 2080}# #{e1\ 2081}# #{e2\ 2082}#) (begin (let ((#{ids\ 2084}# #{id\ 2079}#)) (if (not (#{valid-bound-ids?\ 442}# #{ids\ 2084}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 2060}#) (begin (let ((#{labels\ 2087}# (#{gen-labels\ 397}# #{ids\ 2084}#))) (begin (let ((#{new-w\ 2089}# (#{make-binding-wrap\ 426}# #{ids\ 2084}# #{labels\ 2087}# #{w\ 2062}#))) (#{k\ 2065}# (cons #{e1\ 2081}# #{e2\ 2082}#) (#{extend-env\ 367}# #{labels\ 2087}# (begin (let ((#{w\ 2093}# (if #{rec?\ 2059}# #{new-w\ 2089}# #{w\ 2062}#)) (#{trans-r\ 2094}# (#{macros-only-env\ 371}# #{r\ 2061}#))) (map (lambda (#{x\ 2095}#) (cons 'macro (#{eval-local-transformer\ 476}# (#{chi\ 464}# #{x\ 2095}# #{trans-r\ 2094}# #{w\ 2093}# #{mod\ 2064}#) #{mod\ 2064}#))) #{val\ 2080}#))) #{r\ 2061}#) #{new-w\ 2089}# #{s\ 2063}# #{mod\ 2064}#))))))))) #{tmp\ 2074}#) (let ((#{_\ 2100}# #{tmp\ 2073}#)) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 450}# #{e\ 2060}# #{w\ 2062}# #{s\ 2063}# #{mod\ 2064}#)))))))) (#{eval-local-transformer\ 476}# (lambda (#{expanded\ 2101}# #{mod\ 2102}#) (begin (let ((#{p\ 2106}# (#{local-eval-hook\ 290}# #{expanded\ 2101}# #{mod\ 2102}#))) (if (procedure? #{p\ 2106}#) #{p\ 2106}# (syntax-violation #f "nonprocedure transformer" #{p\ 2106}#)))))) (#{chi-void\ 478}# (lambda () (#{build-void\ 301}# #f))) (#{ellipsis?\ 480}# (lambda (#{x\ 2108}#) (if (#{nonsymbol-id?\ 377}# #{x\ 2108}#) (#{free-id=?\ 438}# #{x\ 2108}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i2109")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) #f))) (#{lambda-formals\ 482}# (lambda (#{orig-args\ 2112}#) (letrec* ((#{req\ 2115}# (lambda (#{args\ 2118}# #{rreq\ 2119}#) (let ((#{tmp\ 2122}# #{args\ 2118}#)) (let ((#{tmp\ 2123}# ($sc-dispatch #{tmp\ 2122}# (quote ())))) (if #{tmp\ 2123}# (@apply (lambda () (#{check\ 2117}# (reverse #{rreq\ 2119}#) #f)) #{tmp\ 2123}#) (let ((#{tmp\ 2124}# ($sc-dispatch #{tmp\ 2122}# '(any . any)))) (if (if #{tmp\ 2124}# (@apply (lambda (#{a\ 2127}# #{b\ 2128}#) (#{id?\ 379}# #{a\ 2127}#)) #{tmp\ 2124}#) #f) (@apply (lambda (#{a\ 2131}# #{b\ 2132}#) (#{req\ 2115}# #{b\ 2132}# (cons #{a\ 2131}# #{rreq\ 2119}#))) #{tmp\ 2124}#) (let ((#{tmp\ 2133}# (list #{tmp\ 2122}#))) (if (if #{tmp\ 2133}# (@apply (lambda (#{r\ 2135}#) (#{id?\ 379}# #{r\ 2135}#)) #{tmp\ 2133}#) #f) (@apply (lambda (#{r\ 2137}#) (#{check\ 2117}# (reverse #{rreq\ 2119}#) #{r\ 2137}#)) #{tmp\ 2133}#) (let ((#{else\ 2139}# #{tmp\ 2122}#)) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 2112}# #{args\ 2118}#))))))))))) (#{check\ 2117}# (lambda (#{req\ 2140}# #{rest\ 2141}#) (if (#{distinct-bound-ids?\ 444}# (if #{rest\ 2141}# (cons #{rest\ 2141}# #{req\ 2140}#) #{req\ 2140}#)) (values #{req\ 2140}# #f #{rest\ 2141}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 2112}#))))) (begin (#{req\ 2115}# #{orig-args\ 2112}# (quote ())))))) (#{chi-simple-lambda\ 484}# (lambda (#{e\ 2147}# #{r\ 2148}# #{w\ 2149}# #{s\ 2150}# #{mod\ 2151}# #{req\ 2152}# #{rest\ 2153}# #{meta\ 2154}# #{body\ 2155}#) (begin (let ((#{ids\ 2167}# (if #{rest\ 2153}# (append #{req\ 2152}# (list #{rest\ 2153}#)) #{req\ 2152}#))) (begin (let ((#{vars\ 2169}# (map #{gen-var\ 492}# #{ids\ 2167}#))) (begin (let ((#{labels\ 2171}# (#{gen-labels\ 397}# #{ids\ 2167}#))) (#{build-simple-lambda\ 321}# #{s\ 2150}# (map syntax->datum #{req\ 2152}#) (if #{rest\ 2153}# (syntax->datum #{rest\ 2153}#) #f) #{vars\ 2169}# #{meta\ 2154}# (#{chi-body\ 472}# #{body\ 2155}# (#{source-wrap\ 450}# #{e\ 2147}# #{w\ 2149}# #{s\ 2150}# #{mod\ 2151}#) (#{extend-var-env\ 369}# #{labels\ 2171}# #{vars\ 2169}# #{r\ 2148}#) (#{make-binding-wrap\ 426}# #{ids\ 2167}# #{labels\ 2171}# #{w\ 2149}#) #{mod\ 2151}#)))))))))) (#{lambda*-formals\ 486}# (lambda (#{orig-args\ 2174}#) (letrec* ((#{req\ 2177}# (lambda (#{args\ 2186}# #{rreq\ 2187}#) (let ((#{tmp\ 2190}# #{args\ 2186}#)) (let ((#{tmp\ 2191}# ($sc-dispatch #{tmp\ 2190}# (quote ())))) (if #{tmp\ 2191}# (@apply (lambda () (#{check\ 2185}# (reverse #{rreq\ 2187}#) '() #f '())) #{tmp\ 2191}#) (let ((#{tmp\ 2192}# ($sc-dispatch #{tmp\ 2190}# '(any . any)))) (if (if #{tmp\ 2192}# (@apply (lambda (#{a\ 2195}# #{b\ 2196}#) (#{id?\ 379}# #{a\ 2195}#)) #{tmp\ 2192}#) #f) (@apply (lambda (#{a\ 2199}# #{b\ 2200}#) (#{req\ 2177}# #{b\ 2200}# (cons #{a\ 2199}# #{rreq\ 2187}#))) #{tmp\ 2192}#) (let ((#{tmp\ 2201}# ($sc-dispatch #{tmp\ 2190}# '(any . any)))) (if (if #{tmp\ 2201}# (@apply (lambda (#{a\ 2204}# #{b\ 2205}#) (eq? (syntax->datum #{a\ 2204}#) #:optional)) #{tmp\ 2201}#) #f) (@apply (lambda (#{a\ 2208}# #{b\ 2209}#) (#{opt\ 2179}# #{b\ 2209}# (reverse #{rreq\ 2187}#) '())) #{tmp\ 2201}#) (let ((#{tmp\ 2210}# ($sc-dispatch #{tmp\ 2190}# '(any . any)))) (if (if #{tmp\ 2210}# (@apply (lambda (#{a\ 2213}# #{b\ 2214}#) (eq? (syntax->datum #{a\ 2213}#) #:key)) #{tmp\ 2210}#) #f) (@apply (lambda (#{a\ 2217}# #{b\ 2218}#) (#{key\ 2181}# #{b\ 2218}# (reverse #{rreq\ 2187}#) '() '())) #{tmp\ 2210}#) (let ((#{tmp\ 2219}# ($sc-dispatch #{tmp\ 2190}# '(any any)))) (if (if #{tmp\ 2219}# (@apply (lambda (#{a\ 2222}# #{b\ 2223}#) (eq? (syntax->datum #{a\ 2222}#) #:rest)) #{tmp\ 2219}#) #f) (@apply (lambda (#{a\ 2226}# #{b\ 2227}#) (#{rest\ 2183}# #{b\ 2227}# (reverse #{rreq\ 2187}#) '() '())) #{tmp\ 2219}#) (let ((#{tmp\ 2228}# (list #{tmp\ 2190}#))) (if (if #{tmp\ 2228}# (@apply (lambda (#{r\ 2230}#) (#{id?\ 379}# #{r\ 2230}#)) #{tmp\ 2228}#) #f) (@apply (lambda (#{r\ 2232}#) (#{rest\ 2183}# #{r\ 2232}# (reverse #{rreq\ 2187}#) '() '())) #{tmp\ 2228}#) (let ((#{else\ 2234}# #{tmp\ 2190}#)) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 2174}# #{args\ 2186}#))))))))))))))))) (#{opt\ 2179}# (lambda (#{args\ 2235}# #{req\ 2236}# #{ropt\ 2237}#) (let ((#{tmp\ 2241}# #{args\ 2235}#)) (let ((#{tmp\ 2242}# ($sc-dispatch #{tmp\ 2241}# (quote ())))) (if #{tmp\ 2242}# (@apply (lambda () (#{check\ 2185}# #{req\ 2236}# (reverse #{ropt\ 2237}#) #f '())) #{tmp\ 2242}#) (let ((#{tmp\ 2243}# ($sc-dispatch #{tmp\ 2241}# '(any . any)))) (if (if #{tmp\ 2243}# (@apply (lambda (#{a\ 2246}# #{b\ 2247}#) (#{id?\ 379}# #{a\ 2246}#)) #{tmp\ 2243}#) #f) (@apply (lambda (#{a\ 2250}# #{b\ 2251}#) (#{opt\ 2179}# #{b\ 2251}# #{req\ 2236}# (cons (cons #{a\ 2250}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i2248" "i2249")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i2238" "i2239" "i2240")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2184" "i2182" "i2180" "i2178" "i2176")) #(ribcage #(orig-args) #((top)) #("i2175")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)))) #{ropt\ 2237}#))) #{tmp\ 2243}#) (let ((#{tmp\ 2252}# ($sc-dispatch #{tmp\ 2241}# '((any any) . any)))) (if (if #{tmp\ 2252}# (@apply (lambda (#{a\ 2256}# #{init\ 2257}# #{b\ 2258}#) (#{id?\ 379}# #{a\ 2256}#)) #{tmp\ 2252}#) #f) (@apply (lambda (#{a\ 2262}# #{init\ 2263}# #{b\ 2264}#) (#{opt\ 2179}# #{b\ 2264}# #{req\ 2236}# (cons (list #{a\ 2262}# #{init\ 2263}#) #{ropt\ 2237}#))) #{tmp\ 2252}#) (let ((#{tmp\ 2265}# ($sc-dispatch #{tmp\ 2241}# '(any . any)))) (if (if #{tmp\ 2265}# (@apply (lambda (#{a\ 2268}# #{b\ 2269}#) (eq? (syntax->datum #{a\ 2268}#) #:key)) #{tmp\ 2265}#) #f) (@apply (lambda (#{a\ 2272}# #{b\ 2273}#) (#{key\ 2181}# #{b\ 2273}# #{req\ 2236}# (reverse #{ropt\ 2237}#) '())) #{tmp\ 2265}#) (let ((#{tmp\ 2274}# ($sc-dispatch #{tmp\ 2241}# '(any any)))) (if (if #{tmp\ 2274}# (@apply (lambda (#{a\ 2277}# #{b\ 2278}#) (eq? (syntax->datum #{a\ 2277}#) #:rest)) #{tmp\ 2274}#) #f) (@apply (lambda (#{a\ 2281}# #{b\ 2282}#) (#{rest\ 2183}# #{b\ 2282}# #{req\ 2236}# (reverse #{ropt\ 2237}#) '())) #{tmp\ 2274}#) (let ((#{tmp\ 2283}# (list #{tmp\ 2241}#))) (if (if #{tmp\ 2283}# (@apply (lambda (#{r\ 2285}#) (#{id?\ 379}# #{r\ 2285}#)) #{tmp\ 2283}#) #f) (@apply (lambda (#{r\ 2287}#) (#{rest\ 2183}# #{r\ 2287}# #{req\ 2236}# (reverse #{ropt\ 2237}#) '())) #{tmp\ 2283}#) (let ((#{else\ 2289}# #{tmp\ 2241}#)) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 2174}# #{args\ 2235}#))))))))))))))))) (#{key\ 2181}# (lambda (#{args\ 2290}# #{req\ 2291}# #{opt\ 2292}# #{rkey\ 2293}#) (let ((#{tmp\ 2298}# #{args\ 2290}#)) (let ((#{tmp\ 2299}# ($sc-dispatch #{tmp\ 2298}# (quote ())))) (if #{tmp\ 2299}# (@apply (lambda () (#{check\ 2185}# #{req\ 2291}# #{opt\ 2292}# #f (cons #f (reverse #{rkey\ 2293}#)))) #{tmp\ 2299}#) (let ((#{tmp\ 2300}# ($sc-dispatch #{tmp\ 2298}# '(any . any)))) (if (if #{tmp\ 2300}# (@apply (lambda (#{a\ 2303}# #{b\ 2304}#) (#{id?\ 379}# #{a\ 2303}#)) #{tmp\ 2300}#) #f) (@apply (lambda (#{a\ 2307}# #{b\ 2308}#) (let ((#{tmp\ 2310}# (symbol->keyword (syntax->datum #{a\ 2307}#)))) (let ((#{k\ 2312}# #{tmp\ 2310}#)) (#{key\ 2181}# #{b\ 2308}# #{req\ 2291}# #{opt\ 2292}# (cons (cons #{k\ 2312}# (cons #{a\ 2307}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i2311")) #(ribcage #(a b) #((top) (top)) #("i2305" "i2306")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i2294" "i2295" "i2296" "i2297")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2184" "i2182" "i2180" "i2178" "i2176")) #(ribcage #(orig-args) #((top)) #("i2175")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))))) #{rkey\ 2293}#))))) #{tmp\ 2300}#) (let ((#{tmp\ 2313}# ($sc-dispatch #{tmp\ 2298}# '((any any) . any)))) (if (if #{tmp\ 2313}# (@apply (lambda (#{a\ 2317}# #{init\ 2318}# #{b\ 2319}#) (#{id?\ 379}# #{a\ 2317}#)) #{tmp\ 2313}#) #f) (@apply (lambda (#{a\ 2323}# #{init\ 2324}# #{b\ 2325}#) (let ((#{tmp\ 2327}# (symbol->keyword (syntax->datum #{a\ 2323}#)))) (let ((#{k\ 2329}# #{tmp\ 2327}#)) (#{key\ 2181}# #{b\ 2325}# #{req\ 2291}# #{opt\ 2292}# (cons (list #{k\ 2329}# #{a\ 2323}# #{init\ 2324}#) #{rkey\ 2293}#))))) #{tmp\ 2313}#) (let ((#{tmp\ 2330}# ($sc-dispatch #{tmp\ 2298}# '((any any any) . any)))) (if (if #{tmp\ 2330}# (@apply (lambda (#{a\ 2335}# #{init\ 2336}# #{k\ 2337}# #{b\ 2338}#) (if (#{id?\ 379}# #{a\ 2335}#) (keyword? (syntax->datum #{k\ 2337}#)) #f)) #{tmp\ 2330}#) #f) (@apply (lambda (#{a\ 2345}# #{init\ 2346}# #{k\ 2347}# #{b\ 2348}#) (#{key\ 2181}# #{b\ 2348}# #{req\ 2291}# #{opt\ 2292}# (cons (list #{k\ 2347}# #{a\ 2345}# #{init\ 2346}#) #{rkey\ 2293}#))) #{tmp\ 2330}#) (let ((#{tmp\ 2349}# ($sc-dispatch #{tmp\ 2298}# '(any)))) (if (if #{tmp\ 2349}# (@apply (lambda (#{aok\ 2351}#) (eq? (syntax->datum #{aok\ 2351}#) #:allow-other-keys)) #{tmp\ 2349}#) #f) (@apply (lambda (#{aok\ 2353}#) (#{check\ 2185}# #{req\ 2291}# #{opt\ 2292}# #f (cons #t (reverse #{rkey\ 2293}#)))) #{tmp\ 2349}#) (let ((#{tmp\ 2354}# ($sc-dispatch #{tmp\ 2298}# '(any any any)))) (if (if #{tmp\ 2354}# (@apply (lambda (#{aok\ 2358}# #{a\ 2359}# #{b\ 2360}#) (if (eq? (syntax->datum #{aok\ 2358}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 2359}#) #:rest) #f)) #{tmp\ 2354}#) #f) (@apply (lambda (#{aok\ 2366}# #{a\ 2367}# #{b\ 2368}#) (#{rest\ 2183}# #{b\ 2368}# #{req\ 2291}# #{opt\ 2292}# (cons #t (reverse #{rkey\ 2293}#)))) #{tmp\ 2354}#) (let ((#{tmp\ 2369}# ($sc-dispatch #{tmp\ 2298}# '(any . any)))) (if (if #{tmp\ 2369}# (@apply (lambda (#{aok\ 2372}# #{r\ 2373}#) (if (eq? (syntax->datum #{aok\ 2372}#) #:allow-other-keys) (#{id?\ 379}# #{r\ 2373}#) #f)) #{tmp\ 2369}#) #f) (@apply (lambda (#{aok\ 2378}# #{r\ 2379}#) (#{rest\ 2183}# #{r\ 2379}# #{req\ 2291}# #{opt\ 2292}# (cons #t (reverse #{rkey\ 2293}#)))) #{tmp\ 2369}#) (let ((#{tmp\ 2380}# ($sc-dispatch #{tmp\ 2298}# '(any any)))) (if (if #{tmp\ 2380}# (@apply (lambda (#{a\ 2383}# #{b\ 2384}#) (eq? (syntax->datum #{a\ 2383}#) #:rest)) #{tmp\ 2380}#) #f) (@apply (lambda (#{a\ 2387}# #{b\ 2388}#) (#{rest\ 2183}# #{b\ 2388}# #{req\ 2291}# #{opt\ 2292}# (cons #f (reverse #{rkey\ 2293}#)))) #{tmp\ 2380}#) (let ((#{tmp\ 2389}# (list #{tmp\ 2298}#))) (if (if #{tmp\ 2389}# (@apply (lambda (#{r\ 2391}#) (#{id?\ 379}# #{r\ 2391}#)) #{tmp\ 2389}#) #f) (@apply (lambda (#{r\ 2393}#) (#{rest\ 2183}# #{r\ 2393}# #{req\ 2291}# #{opt\ 2292}# (cons #f (reverse #{rkey\ 2293}#)))) #{tmp\ 2389}#) (let ((#{else\ 2395}# #{tmp\ 2298}#)) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 2174}# #{args\ 2290}#))))))))))))))))))))))) (#{rest\ 2183}# (lambda (#{args\ 2396}# #{req\ 2397}# #{opt\ 2398}# #{kw\ 2399}#) (let ((#{tmp\ 2404}# #{args\ 2396}#)) (let ((#{tmp\ 2405}# (list #{tmp\ 2404}#))) (if (if #{tmp\ 2405}# (@apply (lambda (#{r\ 2407}#) (#{id?\ 379}# #{r\ 2407}#)) #{tmp\ 2405}#) #f) (@apply (lambda (#{r\ 2409}#) (#{check\ 2185}# #{req\ 2397}# #{opt\ 2398}# #{r\ 2409}# #{kw\ 2399}#)) #{tmp\ 2405}#) (let ((#{else\ 2411}# #{tmp\ 2404}#)) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 2174}# #{args\ 2396}#))))))) (#{check\ 2185}# (lambda (#{req\ 2412}# #{opt\ 2413}# #{rest\ 2414}# #{kw\ 2415}#) (if (#{distinct-bound-ids?\ 444}# (append #{req\ 2412}# (map car #{opt\ 2413}#) (if #{rest\ 2414}# (list #{rest\ 2414}#) '()) (if (pair? #{kw\ 2415}#) (map cadr (cdr #{kw\ 2415}#)) '()))) (values #{req\ 2412}# #{opt\ 2413}# #{rest\ 2414}# #{kw\ 2415}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 2174}#))))) (begin (#{req\ 2177}# #{orig-args\ 2174}# (quote ())))))) (#{chi-lambda-case\ 488}# (lambda (#{e\ 2423}# #{r\ 2424}# #{w\ 2425}# #{s\ 2426}# #{mod\ 2427}# #{get-formals\ 2428}# #{clauses\ 2429}#) (letrec* ((#{expand-req\ 2438}# (lambda (#{req\ 2445}# #{opt\ 2446}# #{rest\ 2447}# #{kw\ 2448}# #{body\ 2449}#) (begin (let ((#{vars\ 2457}# (map #{gen-var\ 492}# #{req\ 2445}#)) (#{labels\ 2458}# (#{gen-labels\ 397}# #{req\ 2445}#))) (begin (let ((#{r*\ 2461}# (#{extend-var-env\ 369}# #{labels\ 2458}# #{vars\ 2457}# #{r\ 2424}#)) (#{w*\ 2462}# (#{make-binding-wrap\ 426}# #{req\ 2445}# #{labels\ 2458}# #{w\ 2425}#))) (#{expand-opt\ 2440}# (map syntax->datum #{req\ 2445}#) #{opt\ 2446}# #{rest\ 2447}# #{kw\ 2448}# #{body\ 2449}# (reverse #{vars\ 2457}#) #{r*\ 2461}# #{w*\ 2462}# '() '()))))))) (#{expand-opt\ 2440}# (lambda (#{req\ 2463}# #{opt\ 2464}# #{rest\ 2465}# #{kw\ 2466}# #{body\ 2467}# #{vars\ 2468}# #{r*\ 2469}# #{w*\ 2470}# #{out\ 2471}# #{inits\ 2472}#) (if (pair? #{opt\ 2464}#) (let ((#{tmp\ 2485}# (car #{opt\ 2464}#))) (let ((#{tmp\ 2486}# ($sc-dispatch #{tmp\ 2485}# '(any any)))) (if #{tmp\ 2486}# (@apply (lambda (#{id\ 2489}# #{i\ 2490}#) (begin (let ((#{v\ 2493}# (#{gen-var\ 492}# #{id\ 2489}#))) (begin (let ((#{l\ 2495}# (#{gen-labels\ 397}# (list #{v\ 2493}#)))) (begin (let ((#{r**\ 2497}# (#{extend-var-env\ 369}# #{l\ 2495}# (list #{v\ 2493}#) #{r*\ 2469}#))) (begin (let ((#{w**\ 2499}# (#{make-binding-wrap\ 426}# (list #{id\ 2489}#) #{l\ 2495}# #{w*\ 2470}#))) (#{expand-opt\ 2440}# #{req\ 2463}# (cdr #{opt\ 2464}#) #{rest\ 2465}# #{kw\ 2466}# #{body\ 2467}# (cons #{v\ 2493}# #{vars\ 2468}#) #{r**\ 2497}# #{w**\ 2499}# (cons (syntax->datum #{id\ 2489}#) #{out\ 2471}#) (cons (#{chi\ 464}# #{i\ 2490}# #{r*\ 2469}# #{w*\ 2470}# #{mod\ 2427}#) #{inits\ 2472}#))))))))))) #{tmp\ 2486}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2485}#)))) (if #{rest\ 2465}# (begin (let ((#{v\ 2504}# (#{gen-var\ 492}# #{rest\ 2465}#))) (begin (let ((#{l\ 2506}# (#{gen-labels\ 397}# (list #{v\ 2504}#)))) (begin (let ((#{r*\ 2508}# (#{extend-var-env\ 369}# #{l\ 2506}# (list #{v\ 2504}#) #{r*\ 2469}#))) (begin (let ((#{w*\ 2510}# (#{make-binding-wrap\ 426}# (list #{rest\ 2465}#) #{l\ 2506}# #{w*\ 2470}#))) (#{expand-kw\ 2442}# #{req\ 2463}# (if (pair? #{out\ 2471}#) (reverse #{out\ 2471}#) #f) (syntax->datum #{rest\ 2465}#) (if (pair? #{kw\ 2466}#) (cdr #{kw\ 2466}#) #{kw\ 2466}#) #{body\ 2467}# (cons #{v\ 2504}# #{vars\ 2468}#) #{r*\ 2508}# #{w*\ 2510}# (if (pair? #{kw\ 2466}#) (car #{kw\ 2466}#) #f) '() #{inits\ 2472}#))))))))) (#{expand-kw\ 2442}# #{req\ 2463}# (if (pair? #{out\ 2471}#) (reverse #{out\ 2471}#) #f) #f (if (pair? #{kw\ 2466}#) (cdr #{kw\ 2466}#) #{kw\ 2466}#) #{body\ 2467}# #{vars\ 2468}# #{r*\ 2469}# #{w*\ 2470}# (if (pair? #{kw\ 2466}#) (car #{kw\ 2466}#) #f) '() #{inits\ 2472}#))))) (#{expand-kw\ 2442}# (lambda (#{req\ 2512}# #{opt\ 2513}# #{rest\ 2514}# #{kw\ 2515}# #{body\ 2516}# #{vars\ 2517}# #{r*\ 2518}# #{w*\ 2519}# #{aok\ 2520}# #{out\ 2521}# #{inits\ 2522}#) (if (pair? #{kw\ 2515}#) (let ((#{tmp\ 2536}# (car #{kw\ 2515}#))) (let ((#{tmp\ 2537}# ($sc-dispatch #{tmp\ 2536}# '(any any any)))) (if #{tmp\ 2537}# (@apply (lambda (#{k\ 2541}# #{id\ 2542}# #{i\ 2543}#) (begin (let ((#{v\ 2546}# (#{gen-var\ 492}# #{id\ 2542}#))) (begin (let ((#{l\ 2548}# (#{gen-labels\ 397}# (list #{v\ 2546}#)))) (begin (let ((#{r**\ 2550}# (#{extend-var-env\ 369}# #{l\ 2548}# (list #{v\ 2546}#) #{r*\ 2518}#))) (begin (let ((#{w**\ 2552}# (#{make-binding-wrap\ 426}# (list #{id\ 2542}#) #{l\ 2548}# #{w*\ 2519}#))) (#{expand-kw\ 2442}# #{req\ 2512}# #{opt\ 2513}# #{rest\ 2514}# (cdr #{kw\ 2515}#) #{body\ 2516}# (cons #{v\ 2546}# #{vars\ 2517}#) #{r**\ 2550}# #{w**\ 2552}# #{aok\ 2520}# (cons (list (syntax->datum #{k\ 2541}#) (syntax->datum #{id\ 2542}#) #{v\ 2546}#) #{out\ 2521}#) (cons (#{chi\ 464}# #{i\ 2543}# #{r*\ 2518}# #{w*\ 2519}# #{mod\ 2427}#) #{inits\ 2522}#))))))))))) #{tmp\ 2537}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2536}#)))) (#{expand-body\ 2444}# #{req\ 2512}# #{opt\ 2513}# #{rest\ 2514}# (if (begin (let ((#{t\ 2556}# #{aok\ 2520}#)) (if #{t\ 2556}# #{t\ 2556}# (pair? #{out\ 2521}#)))) (cons #{aok\ 2520}# (reverse #{out\ 2521}#)) #f) #{body\ 2516}# (reverse #{vars\ 2517}#) #{r*\ 2518}# #{w*\ 2519}# (reverse #{inits\ 2522}#) '())))) (#{expand-body\ 2444}# (lambda (#{req\ 2558}# #{opt\ 2559}# #{rest\ 2560}# #{kw\ 2561}# #{body\ 2562}# #{vars\ 2563}# #{r*\ 2564}# #{w*\ 2565}# #{inits\ 2566}# #{meta\ 2567}#) (let ((#{tmp\ 2578}# #{body\ 2562}#)) (let ((#{tmp\ 2579}# ($sc-dispatch #{tmp\ 2578}# '(any any . each-any)))) (if (if #{tmp\ 2579}# (@apply (lambda (#{docstring\ 2583}# #{e1\ 2584}# #{e2\ 2585}#) (string? (syntax->datum #{docstring\ 2583}#))) #{tmp\ 2579}#) #f) (@apply (lambda (#{docstring\ 2589}# #{e1\ 2590}# #{e2\ 2591}#) (#{expand-body\ 2444}# #{req\ 2558}# #{opt\ 2559}# #{rest\ 2560}# #{kw\ 2561}# (cons #{e1\ 2590}# #{e2\ 2591}#) #{vars\ 2563}# #{r*\ 2564}# #{w*\ 2565}# #{inits\ 2566}# (append #{meta\ 2567}# (list (cons 'documentation (syntax->datum #{docstring\ 2589}#)))))) #{tmp\ 2579}#) (let ((#{tmp\ 2594}# ($sc-dispatch #{tmp\ 2578}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 2594}# (@apply (lambda (#{k\ 2599}# #{v\ 2600}# #{e1\ 2601}# #{e2\ 2602}#) (#{expand-body\ 2444}# #{req\ 2558}# #{opt\ 2559}# #{rest\ 2560}# #{kw\ 2561}# (cons #{e1\ 2601}# #{e2\ 2602}#) #{vars\ 2563}# #{r*\ 2564}# #{w*\ 2565}# #{inits\ 2566}# (append #{meta\ 2567}# (syntax->datum (map cons #{k\ 2599}# #{v\ 2600}#))))) #{tmp\ 2594}#) (let ((#{tmp\ 2606}# ($sc-dispatch #{tmp\ 2578}# '(any . each-any)))) (if #{tmp\ 2606}# (@apply (lambda (#{e1\ 2609}# #{e2\ 2610}#) (values #{meta\ 2567}# #{req\ 2558}# #{opt\ 2559}# #{rest\ 2560}# #{kw\ 2561}# #{inits\ 2566}# #{vars\ 2563}# (#{chi-body\ 472}# (cons #{e1\ 2609}# #{e2\ 2610}#) (#{source-wrap\ 450}# #{e\ 2423}# #{w\ 2425}# #{s\ 2426}# #{mod\ 2427}#) #{r*\ 2564}# #{w*\ 2565}# #{mod\ 2427}#))) #{tmp\ 2606}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2578}#))))))))))) (begin (let ((#{tmp\ 2612}# #{clauses\ 2429}#)) (let ((#{tmp\ 2613}# ($sc-dispatch #{tmp\ 2612}# (quote ())))) (if #{tmp\ 2613}# (@apply (lambda () (values (quote ()) #f)) #{tmp\ 2613}#) (let ((#{tmp\ 2614}# ($sc-dispatch #{tmp\ 2612}# '((any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 2614}# (@apply (lambda (#{args\ 2621}# #{e1\ 2622}# #{e2\ 2623}# #{args*\ 2624}# #{e1*\ 2625}# #{e2*\ 2626}#) (call-with-values (lambda () (#{get-formals\ 2428}# #{args\ 2621}#)) (lambda (#{req\ 2627}# #{opt\ 2628}# #{rest\ 2629}# #{kw\ 2630}#) (call-with-values (lambda () (#{expand-req\ 2438}# #{req\ 2627}# #{opt\ 2628}# #{rest\ 2629}# #{kw\ 2630}# (cons #{e1\ 2622}# #{e2\ 2623}#))) (lambda (#{meta\ 2636}# #{req\ 2637}# #{opt\ 2638}# #{rest\ 2639}# #{kw\ 2640}# #{inits\ 2641}# #{vars\ 2642}# #{body\ 2643}#) (call-with-values (lambda () (#{chi-lambda-case\ 488}# #{e\ 2423}# #{r\ 2424}# #{w\ 2425}# #{s\ 2426}# #{mod\ 2427}# #{get-formals\ 2428}# (map (lambda (#{tmp\ 2654}# #{tmp\ 2653}# #{tmp\ 2652}#) (cons #{tmp\ 2652}# (cons #{tmp\ 2653}# #{tmp\ 2654}#))) #{e2*\ 2626}# #{e1*\ 2625}# #{args*\ 2624}#))) (lambda (#{meta*\ 2656}# #{else*\ 2657}#) (values (append #{meta\ 2636}# #{meta*\ 2656}#) (#{build-lambda-case\ 325}# #{s\ 2426}# #{req\ 2637}# #{opt\ 2638}# #{rest\ 2639}# #{kw\ 2640}# #{inits\ 2641}# #{vars\ 2642}# #{body\ 2643}# #{else*\ 2657}#))))))))) #{tmp\ 2614}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2612}#)))))))))) (#{strip\ 490}# (lambda (#{x\ 2660}# #{w\ 2661}#) (if (memq 'top (#{wrap-marks\ 386}# #{w\ 2661}#)) #{x\ 2660}# (letrec* ((#{f\ 2667}# (lambda (#{x\ 2668}#) (if (#{syntax-object?\ 343}# #{x\ 2668}#) (#{strip\ 490}# (#{syntax-object-expression\ 345}# #{x\ 2668}#) (#{syntax-object-wrap\ 347}# #{x\ 2668}#)) (if (pair? #{x\ 2668}#) (begin (let ((#{a\ 2675}# (#{f\ 2667}# (car #{x\ 2668}#))) (#{d\ 2676}# (#{f\ 2667}# (cdr #{x\ 2668}#)))) (if (if (eq? #{a\ 2675}# (car #{x\ 2668}#)) (eq? #{d\ 2676}# (cdr #{x\ 2668}#)) #f) #{x\ 2668}# (cons #{a\ 2675}# #{d\ 2676}#)))) (if (vector? #{x\ 2668}#) (begin (let ((#{old\ 2682}# (vector->list #{x\ 2668}#))) (begin (let ((#{new\ 2684}# (map #{f\ 2667}# #{old\ 2682}#))) (if (#{and-map*\ 35}# eq? #{old\ 2682}# #{new\ 2684}#) #{x\ 2668}# (list->vector #{new\ 2684}#)))))) #{x\ 2668}#)))))) (begin (#{f\ 2667}# #{x\ 2660}#)))))) (#{gen-var\ 492}# (lambda (#{id\ 2686}#) (begin (let ((#{id\ 2689}# (if (#{syntax-object?\ 343}# #{id\ 2686}#) (#{syntax-object-expression\ 345}# #{id\ 2686}#) #{id\ 2686}#))) (gensym (string-append (symbol->string #{id\ 2689}#) " ")))))) (#{lambda-var-list\ 494}# (lambda (#{vars\ 2691}#) (letrec* ((#{lvl\ 2697}# (lambda (#{vars\ 2698}# #{ls\ 2699}# #{w\ 2700}#) (if (pair? #{vars\ 2698}#) (#{lvl\ 2697}# (cdr #{vars\ 2698}#) (cons (#{wrap\ 448}# (car #{vars\ 2698}#) #{w\ 2700}# #f) #{ls\ 2699}#) #{w\ 2700}#) (if (#{id?\ 379}# #{vars\ 2698}#) (cons (#{wrap\ 448}# #{vars\ 2698}# #{w\ 2700}# #f) #{ls\ 2699}#) (if (null? #{vars\ 2698}#) #{ls\ 2699}# (if (#{syntax-object?\ 343}# #{vars\ 2698}#) (#{lvl\ 2697}# (#{syntax-object-expression\ 345}# #{vars\ 2698}#) #{ls\ 2699}# (#{join-wraps\ 430}# #{w\ 2700}# (#{syntax-object-wrap\ 347}# #{vars\ 2698}#))) (cons #{vars\ 2698}# #{ls\ 2699}#)))))))) (begin (#{lvl\ 2697}# #{vars\ 2691}# '() '(()))))))) (begin (set! #{make-primitive-ref\ 241}# (lambda (#{src\ 703}# #{name\ 704}#) (make-struct/no-tail (vector-ref %expanded-vtables 2) #{src\ 703}# #{name\ 704}#))) (set! #{fx+\ 280}# +) (set! #{fx-\ 282}# -) (set! #{fx=\ 284}# =) (set! #{fx<\ 286}# <) (set! #{set-syntax-object-expression!\ 351}# (lambda (#{x\ 1081}# #{update\ 1082}#) (vector-set! #{x\ 1081}# 1 #{update\ 1082}#))) (set! #{set-syntax-object-wrap!\ 353}# (lambda (#{x\ 1085}# #{update\ 1086}#) (vector-set! #{x\ 1085}# 2 #{update\ 1086}#))) (set! #{set-syntax-object-module!\ 355}# (lambda (#{x\ 1089}# #{update\ 1090}#) (vector-set! #{x\ 1089}# 3 #{update\ 1090}#))) (set! #{binding-type\ 362}# car) (set! #{binding-value\ 364}# cdr) (set! #{make-wrap\ 384}# cons) (set! #{wrap-marks\ 386}# car) (set! #{wrap-subst\ 388}# cdr) (set! #{ribcage?\ 402}# (lambda (#{x\ 1167}#) (if (vector? #{x\ 1167}#) (if (= (vector-length #{x\ 1167}#) 4) (eq? (vector-ref #{x\ 1167}# 0) (quote ribcage)) #f) #f))) (begin (#{global-extend\ 375}# 'local-syntax 'letrec-syntax #t) (#{global-extend\ 375}# 'local-syntax 'let-syntax #f) (#{global-extend\ 375}# 'core 'fluid-let-syntax (lambda (#{e\ 2711}# #{r\ 2712}# #{w\ 2713}# #{s\ 2714}# #{mod\ 2715}#) (let ((#{tmp\ 2721}# #{e\ 2711}#)) (let ((#{tmp\ 2722}# ($sc-dispatch #{tmp\ 2721}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 2722}# (@apply (lambda (#{var\ 2727}# #{val\ 2728}# #{e1\ 2729}# #{e2\ 2730}#) (#{valid-bound-ids?\ 442}# #{var\ 2727}#)) #{tmp\ 2722}#) #f) (@apply (lambda (#{var\ 2736}# #{val\ 2737}# #{e1\ 2738}# #{e2\ 2739}#) (begin (let ((#{names\ 2741}# (map (lambda (#{x\ 2742}#) (#{id-var-name\ 436}# #{x\ 2742}# #{w\ 2713}#)) #{var\ 2736}#))) (begin (for-each (lambda (#{id\ 2745}# #{n\ 2746}#) (begin (let ((#{atom-key\ 2751}# (#{binding-type\ 362}# (#{lookup\ 373}# #{n\ 2746}# #{r\ 2712}# #{mod\ 2715}#)))) (if (eqv? #{atom-key\ 2751}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 2711}# (#{source-wrap\ 450}# #{id\ 2745}# #{w\ 2713}# #{s\ 2714}# #{mod\ 2715}#)))))) #{var\ 2736}# #{names\ 2741}#) (#{chi-body\ 472}# (cons #{e1\ 2738}# #{e2\ 2739}#) (#{source-wrap\ 450}# #{e\ 2711}# #{w\ 2713}# #{s\ 2714}# #{mod\ 2715}#) (#{extend-env\ 367}# #{names\ 2741}# (begin (let ((#{trans-r\ 2756}# (#{macros-only-env\ 371}# #{r\ 2712}#))) (map (lambda (#{x\ 2757}#) (cons 'macro (#{eval-local-transformer\ 476}# (#{chi\ 464}# #{x\ 2757}# #{trans-r\ 2756}# #{w\ 2713}# #{mod\ 2715}#) #{mod\ 2715}#))) #{val\ 2737}#))) #{r\ 2712}#) #{w\ 2713}# #{mod\ 2715}#))))) #{tmp\ 2722}#) (let ((#{_\ 2762}# #{tmp\ 2721}#)) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 450}# #{e\ 2711}# #{w\ 2713}# #{s\ 2714}# #{mod\ 2715}#)))))))) (#{global-extend\ 375}# 'core 'quote (lambda (#{e\ 2763}# #{r\ 2764}# #{w\ 2765}# #{s\ 2766}# #{mod\ 2767}#) (let ((#{tmp\ 2773}# #{e\ 2763}#)) (let ((#{tmp\ 2774}# ($sc-dispatch #{tmp\ 2773}# (quote (_ any))))) (if #{tmp\ 2774}# (@apply (lambda (#{e\ 2776}#) (#{build-data\ 329}# #{s\ 2766}# (#{strip\ 490}# #{e\ 2776}# #{w\ 2765}#))) #{tmp\ 2774}#) (let ((#{_\ 2778}# #{tmp\ 2773}#)) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 450}# #{e\ 2763}# #{w\ 2765}# #{s\ 2766}# #{mod\ 2767}#)))))))) (#{global-extend\ 375}# 'core 'syntax (letrec* ((#{gen-syntax\ 2780}# (lambda (#{src\ 2795}# #{e\ 2796}# #{r\ 2797}# #{maps\ 2798}# #{ellipsis?\ 2799}# #{mod\ 2800}#) (if (#{id?\ 379}# #{e\ 2796}#) (begin (let ((#{label\ 2808}# (#{id-var-name\ 436}# #{e\ 2796}# '(())))) (begin (let ((#{b\ 2811}# (#{lookup\ 373}# #{label\ 2808}# #{r\ 2797}# #{mod\ 2800}#))) (if (eq? (#{binding-type\ 362}# #{b\ 2811}#) 'syntax) (call-with-values (lambda () (begin (let ((#{var.lev\ 2813}# (#{binding-value\ 364}# #{b\ 2811}#))) (#{gen-ref\ 2782}# #{src\ 2795}# (car #{var.lev\ 2813}#) (cdr #{var.lev\ 2813}#) #{maps\ 2798}#)))) (lambda (#{var\ 2814}# #{maps\ 2815}#) (values (list (quote ref) #{var\ 2814}#) #{maps\ 2815}#))) (if (#{ellipsis?\ 2799}# #{e\ 2796}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 2795}#) (values (list (quote quote) #{e\ 2796}#) #{maps\ 2798}#))))))) (let ((#{tmp\ 2820}# #{e\ 2796}#)) (let ((#{tmp\ 2821}# ($sc-dispatch #{tmp\ 2820}# '(any any)))) (if (if #{tmp\ 2821}# (@apply (lambda (#{dots\ 2824}# #{e\ 2825}#) (#{ellipsis?\ 2799}# #{dots\ 2824}#)) #{tmp\ 2821}#) #f) (@apply (lambda (#{dots\ 2828}# #{e\ 2829}#) (#{gen-syntax\ 2780}# #{src\ 2795}# #{e\ 2829}# #{r\ 2797}# #{maps\ 2798}# (lambda (#{x\ 2830}#) #f) #{mod\ 2800}#)) #{tmp\ 2821}#) (let ((#{tmp\ 2832}# ($sc-dispatch #{tmp\ 2820}# '(any any . any)))) (if (if #{tmp\ 2832}# (@apply (lambda (#{x\ 2836}# #{dots\ 2837}# #{y\ 2838}#) (#{ellipsis?\ 2799}# #{dots\ 2837}#)) #{tmp\ 2832}#) #f) (@apply (lambda (#{x\ 2842}# #{dots\ 2843}# #{y\ 2844}#) (letrec* ((#{f\ 2848}# (lambda (#{y\ 2849}# #{k\ 2850}#) (let ((#{tmp\ 2857}# #{y\ 2849}#)) (let ((#{tmp\ 2858}# ($sc-dispatch #{tmp\ 2857}# '(any . any)))) (if (if #{tmp\ 2858}# (@apply (lambda (#{dots\ 2861}# #{y\ 2862}#) (#{ellipsis?\ 2799}# #{dots\ 2861}#)) #{tmp\ 2858}#) #f) (@apply (lambda (#{dots\ 2865}# #{y\ 2866}#) (#{f\ 2848}# #{y\ 2866}# (lambda (#{maps\ 2867}#) (call-with-values (lambda () (#{k\ 2850}# (cons '() #{maps\ 2867}#))) (lambda (#{x\ 2869}# #{maps\ 2870}#) (if (null? (car #{maps\ 2870}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2795}#) (values (#{gen-mappend\ 2784}# #{x\ 2869}# (car #{maps\ 2870}#)) (cdr #{maps\ 2870}#)))))))) #{tmp\ 2858}#) (let ((#{_\ 2874}# #{tmp\ 2857}#)) (call-with-values (lambda () (#{gen-syntax\ 2780}# #{src\ 2795}# #{y\ 2849}# #{r\ 2797}# #{maps\ 2798}# #{ellipsis?\ 2799}# #{mod\ 2800}#)) (lambda (#{y\ 2875}# #{maps\ 2876}#) (call-with-values (lambda () (#{k\ 2850}# #{maps\ 2876}#)) (lambda (#{x\ 2879}# #{maps\ 2880}#) (values (#{gen-append\ 2790}# #{x\ 2879}# #{y\ 2875}#) #{maps\ 2880}#)))))))))))) (begin (#{f\ 2848}# #{y\ 2844}# (lambda (#{maps\ 2851}#) (call-with-values (lambda () (#{gen-syntax\ 2780}# #{src\ 2795}# #{x\ 2842}# #{r\ 2797}# (cons '() #{maps\ 2851}#) #{ellipsis?\ 2799}# #{mod\ 2800}#)) (lambda (#{x\ 2853}# #{maps\ 2854}#) (if (null? (car #{maps\ 2854}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2795}#) (values (#{gen-map\ 2786}# #{x\ 2853}# (car #{maps\ 2854}#)) (cdr #{maps\ 2854}#)))))))))) #{tmp\ 2832}#) (let ((#{tmp\ 2883}# ($sc-dispatch #{tmp\ 2820}# '(any . any)))) (if #{tmp\ 2883}# (@apply (lambda (#{x\ 2886}# #{y\ 2887}#) (call-with-values (lambda () (#{gen-syntax\ 2780}# #{src\ 2795}# #{x\ 2886}# #{r\ 2797}# #{maps\ 2798}# #{ellipsis?\ 2799}# #{mod\ 2800}#)) (lambda (#{x\ 2888}# #{maps\ 2889}#) (call-with-values (lambda () (#{gen-syntax\ 2780}# #{src\ 2795}# #{y\ 2887}# #{r\ 2797}# #{maps\ 2889}# #{ellipsis?\ 2799}# #{mod\ 2800}#)) (lambda (#{y\ 2892}# #{maps\ 2893}#) (values (#{gen-cons\ 2788}# #{x\ 2888}# #{y\ 2892}#) #{maps\ 2893}#)))))) #{tmp\ 2883}#) (let ((#{tmp\ 2896}# ($sc-dispatch #{tmp\ 2820}# '#(vector (any . each-any))))) (if #{tmp\ 2896}# (@apply (lambda (#{e1\ 2899}# #{e2\ 2900}#) (call-with-values (lambda () (#{gen-syntax\ 2780}# #{src\ 2795}# (cons #{e1\ 2899}# #{e2\ 2900}#) #{r\ 2797}# #{maps\ 2798}# #{ellipsis?\ 2799}# #{mod\ 2800}#)) (lambda (#{e\ 2902}# #{maps\ 2903}#) (values (#{gen-vector\ 2792}# #{e\ 2902}#) #{maps\ 2903}#)))) #{tmp\ 2896}#) (let ((#{_\ 2907}# #{tmp\ 2820}#)) (values (list (quote quote) #{e\ 2796}#) #{maps\ 2798}#)))))))))))))) (#{gen-ref\ 2782}# (lambda (#{src\ 2909}# #{var\ 2910}# #{level\ 2911}# #{maps\ 2912}#) (if (#{fx=\ 284}# #{level\ 2911}# 0) (values #{var\ 2910}# #{maps\ 2912}#) (if (null? #{maps\ 2912}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 2909}#) (call-with-values (lambda () (#{gen-ref\ 2782}# #{src\ 2909}# #{var\ 2910}# (#{fx-\ 282}# #{level\ 2911}# 1) (cdr #{maps\ 2912}#))) (lambda (#{outer-var\ 2917}# #{outer-maps\ 2918}#) (begin (let ((#{b\ 2922}# (assq #{outer-var\ 2917}# (car #{maps\ 2912}#)))) (if #{b\ 2922}# (values (cdr #{b\ 2922}#) #{maps\ 2912}#) (begin (let ((#{inner-var\ 2924}# (#{gen-var\ 492}# (quote tmp)))) (values #{inner-var\ 2924}# (cons (cons (cons #{outer-var\ 2917}# #{inner-var\ 2924}#) (car #{maps\ 2912}#)) #{outer-maps\ 2918}#))))))))))))) (#{gen-mappend\ 2784}# (lambda (#{e\ 2925}# #{map-env\ 2926}#) (list 'apply '(primitive append) (#{gen-map\ 2786}# #{e\ 2925}# #{map-env\ 2926}#)))) (#{gen-map\ 2786}# (lambda (#{e\ 2930}# #{map-env\ 2931}#) (begin (let ((#{formals\ 2936}# (map cdr #{map-env\ 2931}#)) (#{actuals\ 2937}# (map (lambda (#{x\ 2938}#) (list (quote ref) (car #{x\ 2938}#))) #{map-env\ 2931}#))) (if (eq? (car #{e\ 2930}#) (quote ref)) (car #{actuals\ 2937}#) (if (and-map (lambda (#{x\ 2945}#) (if (eq? (car #{x\ 2945}#) (quote ref)) (memq (car (cdr #{x\ 2945}#)) #{formals\ 2936}#) #f)) (cdr #{e\ 2930}#)) (cons 'map (cons (list 'primitive (car #{e\ 2930}#)) (map (begin (let ((#{r\ 2951}# (map cons #{formals\ 2936}# #{actuals\ 2937}#))) (lambda (#{x\ 2952}#) (cdr (assq (car (cdr #{x\ 2952}#)) #{r\ 2951}#))))) (cdr #{e\ 2930}#)))) (cons 'map (cons (list 'lambda #{formals\ 2936}# #{e\ 2930}#) #{actuals\ 2937}#)))))))) (#{gen-cons\ 2788}# (lambda (#{x\ 2956}# #{y\ 2957}#) (begin (let ((#{atom-key\ 2962}# (car #{y\ 2957}#))) (if (eqv? #{atom-key\ 2962}# (quote quote)) (if (eq? (car #{x\ 2956}#) (quote quote)) (list 'quote (cons (car (cdr #{x\ 2956}#)) (car (cdr #{y\ 2957}#)))) (if (eq? (car (cdr #{y\ 2957}#)) (quote ())) (list (quote list) #{x\ 2956}#) (list (quote cons) #{x\ 2956}# #{y\ 2957}#))) (if (eqv? #{atom-key\ 2962}# (quote list)) (cons 'list (cons #{x\ 2956}# (cdr #{y\ 2957}#))) (list (quote cons) #{x\ 2956}# #{y\ 2957}#))))))) (#{gen-append\ 2790}# (lambda (#{x\ 2971}# #{y\ 2972}#) (if (equal? #{y\ 2972}# (quote (quote ()))) #{x\ 2971}# (list (quote append) #{x\ 2971}# #{y\ 2972}#)))) (#{gen-vector\ 2792}# (lambda (#{x\ 2976}#) (if (eq? (car #{x\ 2976}#) (quote list)) (cons (quote vector) (cdr #{x\ 2976}#)) (if (eq? (car #{x\ 2976}#) (quote quote)) (list 'quote (list->vector (car (cdr #{x\ 2976}#)))) (list (quote list->vector) #{x\ 2976}#))))) (#{regen\ 2794}# (lambda (#{x\ 2986}#) (begin (let ((#{atom-key\ 2990}# (car #{x\ 2986}#))) (if (eqv? #{atom-key\ 2990}# (quote ref)) (#{build-lexical-reference\ 309}# 'value #f (car (cdr #{x\ 2986}#)) (car (cdr #{x\ 2986}#))) (if (eqv? #{atom-key\ 2990}# (quote primitive)) (#{build-primref\ 327}# #f (car (cdr #{x\ 2986}#))) (if (eqv? #{atom-key\ 2990}# (quote quote)) (#{build-data\ 329}# #f (car (cdr #{x\ 2986}#))) (if (eqv? #{atom-key\ 2990}# (quote lambda)) (if (list? (car (cdr #{x\ 2986}#))) (#{build-simple-lambda\ 321}# #f (car (cdr #{x\ 2986}#)) #f (car (cdr #{x\ 2986}#)) '() (#{regen\ 2794}# (car (cdr (cdr #{x\ 2986}#))))) (error "how did we get here" #{x\ 2986}#)) (#{build-application\ 303}# #f (#{build-primref\ 327}# #f (car #{x\ 2986}#)) (map #{regen\ 2794}# (cdr #{x\ 2986}#)))))))))))) (begin (lambda (#{e\ 3002}# #{r\ 3003}# #{w\ 3004}# #{s\ 3005}# #{mod\ 3006}#) (begin (let ((#{e\ 3013}# (#{source-wrap\ 450}# #{e\ 3002}# #{w\ 3004}# #{s\ 3005}# #{mod\ 3006}#))) (let ((#{tmp\ 3014}# #{e\ 3013}#)) (let ((#{tmp\ 3015}# ($sc-dispatch #{tmp\ 3014}# '(_ any)))) (if #{tmp\ 3015}# (@apply (lambda (#{x\ 3017}#) (call-with-values (lambda () (#{gen-syntax\ 2780}# #{e\ 3013}# #{x\ 3017}# #{r\ 3003}# '() #{ellipsis?\ 480}# #{mod\ 3006}#)) (lambda (#{e\ 3018}# #{maps\ 3019}#) (#{regen\ 2794}# #{e\ 3018}#)))) #{tmp\ 3015}#) (let ((#{_\ 3023}# #{tmp\ 3014}#)) (syntax-violation 'syntax "bad `syntax' form" #{e\ 3013}#))))))))))) (#{global-extend\ 375}# 'core 'lambda (lambda (#{e\ 3024}# #{r\ 3025}# #{w\ 3026}# #{s\ 3027}# #{mod\ 3028}#) (let ((#{tmp\ 3034}# #{e\ 3024}#)) (let ((#{tmp\ 3035}# ($sc-dispatch #{tmp\ 3034}# '(_ any any . each-any)))) (if #{tmp\ 3035}# (@apply (lambda (#{args\ 3039}# #{e1\ 3040}# #{e2\ 3041}#) (call-with-values (lambda () (#{lambda-formals\ 482}# #{args\ 3039}#)) (lambda (#{req\ 3042}# #{opt\ 3043}# #{rest\ 3044}# #{kw\ 3045}#) (letrec* ((#{lp\ 3053}# (lambda (#{body\ 3054}# #{meta\ 3055}#) (let ((#{tmp\ 3057}# #{body\ 3054}#)) (let ((#{tmp\ 3058}# ($sc-dispatch #{tmp\ 3057}# '(any any . each-any)))) (if (if #{tmp\ 3058}# (@apply (lambda (#{docstring\ 3062}# #{e1\ 3063}# #{e2\ 3064}#) (string? (syntax->datum #{docstring\ 3062}#))) #{tmp\ 3058}#) #f) (@apply (lambda (#{docstring\ 3068}# #{e1\ 3069}# #{e2\ 3070}#) (#{lp\ 3053}# (cons #{e1\ 3069}# #{e2\ 3070}#) (append #{meta\ 3055}# (list (cons 'documentation (syntax->datum #{docstring\ 3068}#)))))) #{tmp\ 3058}#) (let ((#{tmp\ 3073}# ($sc-dispatch #{tmp\ 3057}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 3073}# (@apply (lambda (#{k\ 3078}# #{v\ 3079}# #{e1\ 3080}# #{e2\ 3081}#) (#{lp\ 3053}# (cons #{e1\ 3080}# #{e2\ 3081}#) (append #{meta\ 3055}# (syntax->datum (map cons #{k\ 3078}# #{v\ 3079}#))))) #{tmp\ 3073}#) (let ((#{_\ 3086}# #{tmp\ 3057}#)) (#{chi-simple-lambda\ 484}# #{e\ 3024}# #{r\ 3025}# #{w\ 3026}# #{s\ 3027}# #{mod\ 3028}# #{req\ 3042}# #{rest\ 3044}# #{meta\ 3055}# #{body\ 3054}#)))))))))) (begin (#{lp\ 3053}# (cons #{e1\ 3040}# #{e2\ 3041}#) '())))))) #{tmp\ 3035}#) (let ((#{_\ 3088}# #{tmp\ 3034}#)) (syntax-violation 'lambda "bad lambda" #{e\ 3024}#))))))) (#{global-extend\ 375}# 'core 'lambda* (lambda (#{e\ 3089}# #{r\ 3090}# #{w\ 3091}# #{s\ 3092}# #{mod\ 3093}#) (let ((#{tmp\ 3099}# #{e\ 3089}#)) (let ((#{tmp\ 3100}# ($sc-dispatch #{tmp\ 3099}# '(_ any any . each-any)))) (if #{tmp\ 3100}# (@apply (lambda (#{args\ 3104}# #{e1\ 3105}# #{e2\ 3106}#) (call-with-values (lambda () (#{chi-lambda-case\ 488}# #{e\ 3089}# #{r\ 3090}# #{w\ 3091}# #{s\ 3092}# #{mod\ 3093}# #{lambda*-formals\ 486}# (list (cons #{args\ 3104}# (cons #{e1\ 3105}# #{e2\ 3106}#))))) (lambda (#{meta\ 3108}# #{lcase\ 3109}#) (#{build-case-lambda\ 323}# #{s\ 3092}# #{meta\ 3108}# #{lcase\ 3109}#)))) #{tmp\ 3100}#) (let ((#{_\ 3113}# #{tmp\ 3099}#)) (syntax-violation 'lambda "bad lambda*" #{e\ 3089}#))))))) (#{global-extend\ 375}# 'core 'case-lambda (lambda (#{e\ 3114}# #{r\ 3115}# #{w\ 3116}# #{s\ 3117}# #{mod\ 3118}#) (let ((#{tmp\ 3124}# #{e\ 3114}#)) (let ((#{tmp\ 3125}# ($sc-dispatch #{tmp\ 3124}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3125}# (@apply (lambda (#{args\ 3132}# #{e1\ 3133}# #{e2\ 3134}# #{args*\ 3135}# #{e1*\ 3136}# #{e2*\ 3137}#) (call-with-values (lambda () (#{chi-lambda-case\ 488}# #{e\ 3114}# #{r\ 3115}# #{w\ 3116}# #{s\ 3117}# #{mod\ 3118}# #{lambda-formals\ 482}# (cons (cons #{args\ 3132}# (cons #{e1\ 3133}# #{e2\ 3134}#)) (map (lambda (#{tmp\ 3141}# #{tmp\ 3140}# #{tmp\ 3139}#) (cons #{tmp\ 3139}# (cons #{tmp\ 3140}# #{tmp\ 3141}#))) #{e2*\ 3137}# #{e1*\ 3136}# #{args*\ 3135}#)))) (lambda (#{meta\ 3143}# #{lcase\ 3144}#) (#{build-case-lambda\ 323}# #{s\ 3117}# #{meta\ 3143}# #{lcase\ 3144}#)))) #{tmp\ 3125}#) (let ((#{_\ 3148}# #{tmp\ 3124}#)) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 3114}#))))))) (#{global-extend\ 375}# 'core 'case-lambda* (lambda (#{e\ 3149}# #{r\ 3150}# #{w\ 3151}# #{s\ 3152}# #{mod\ 3153}#) (let ((#{tmp\ 3159}# #{e\ 3149}#)) (let ((#{tmp\ 3160}# ($sc-dispatch #{tmp\ 3159}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3160}# (@apply (lambda (#{args\ 3167}# #{e1\ 3168}# #{e2\ 3169}# #{args*\ 3170}# #{e1*\ 3171}# #{e2*\ 3172}#) (call-with-values (lambda () (#{chi-lambda-case\ 488}# #{e\ 3149}# #{r\ 3150}# #{w\ 3151}# #{s\ 3152}# #{mod\ 3153}# #{lambda*-formals\ 486}# (cons (cons #{args\ 3167}# (cons #{e1\ 3168}# #{e2\ 3169}#)) (map (lambda (#{tmp\ 3176}# #{tmp\ 3175}# #{tmp\ 3174}#) (cons #{tmp\ 3174}# (cons #{tmp\ 3175}# #{tmp\ 3176}#))) #{e2*\ 3172}# #{e1*\ 3171}# #{args*\ 3170}#)))) (lambda (#{meta\ 3178}# #{lcase\ 3179}#) (#{build-case-lambda\ 323}# #{s\ 3152}# #{meta\ 3178}# #{lcase\ 3179}#)))) #{tmp\ 3160}#) (let ((#{_\ 3183}# #{tmp\ 3159}#)) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 3149}#))))))) (#{global-extend\ 375}# 'core 'let (letrec* ((#{chi-let\ 3185}# (lambda (#{e\ 3186}# #{r\ 3187}# #{w\ 3188}# #{s\ 3189}# #{mod\ 3190}# #{constructor\ 3191}# #{ids\ 3192}# #{vals\ 3193}# #{exps\ 3194}#) (if (not (#{valid-bound-ids?\ 442}# #{ids\ 3192}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 3186}#) (begin (let ((#{labels\ 3206}# (#{gen-labels\ 397}# #{ids\ 3192}#)) (#{new-vars\ 3207}# (map #{gen-var\ 492}# #{ids\ 3192}#))) (begin (let ((#{nw\ 3210}# (#{make-binding-wrap\ 426}# #{ids\ 3192}# #{labels\ 3206}# #{w\ 3188}#)) (#{nr\ 3211}# (#{extend-var-env\ 369}# #{labels\ 3206}# #{new-vars\ 3207}# #{r\ 3187}#))) (#{constructor\ 3191}# #{s\ 3189}# (map syntax->datum #{ids\ 3192}#) #{new-vars\ 3207}# (map (lambda (#{x\ 3212}#) (#{chi\ 464}# #{x\ 3212}# #{r\ 3187}# #{w\ 3188}# #{mod\ 3190}#)) #{vals\ 3193}#) (#{chi-body\ 472}# #{exps\ 3194}# (#{source-wrap\ 450}# #{e\ 3186}# #{nw\ 3210}# #{s\ 3189}# #{mod\ 3190}#) #{nr\ 3211}# #{nw\ 3210}# #{mod\ 3190}#)))))))))) (begin (lambda (#{e\ 3214}# #{r\ 3215}# #{w\ 3216}# #{s\ 3217}# #{mod\ 3218}#) (let ((#{tmp\ 3224}# #{e\ 3214}#)) (let ((#{tmp\ 3225}# ($sc-dispatch #{tmp\ 3224}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3225}# (@apply (lambda (#{id\ 3230}# #{val\ 3231}# #{e1\ 3232}# #{e2\ 3233}#) (and-map #{id?\ 379}# #{id\ 3230}#)) #{tmp\ 3225}#) #f) (@apply (lambda (#{id\ 3239}# #{val\ 3240}# #{e1\ 3241}# #{e2\ 3242}#) (#{chi-let\ 3185}# #{e\ 3214}# #{r\ 3215}# #{w\ 3216}# #{s\ 3217}# #{mod\ 3218}# #{build-let\ 333}# #{id\ 3239}# #{val\ 3240}# (cons #{e1\ 3241}# #{e2\ 3242}#))) #{tmp\ 3225}#) (let ((#{tmp\ 3246}# ($sc-dispatch #{tmp\ 3224}# '(_ any #(each (any any)) any . each-any)))) (if (if #{tmp\ 3246}# (@apply (lambda (#{f\ 3252}# #{id\ 3253}# #{val\ 3254}# #{e1\ 3255}# #{e2\ 3256}#) (if (#{id?\ 379}# #{f\ 3252}#) (and-map #{id?\ 379}# #{id\ 3253}#) #f)) #{tmp\ 3246}#) #f) (@apply (lambda (#{f\ 3265}# #{id\ 3266}# #{val\ 3267}# #{e1\ 3268}# #{e2\ 3269}#) (#{chi-let\ 3185}# #{e\ 3214}# #{r\ 3215}# #{w\ 3216}# #{s\ 3217}# #{mod\ 3218}# #{build-named-let\ 335}# (cons #{f\ 3265}# #{id\ 3266}#) #{val\ 3267}# (cons #{e1\ 3268}# #{e2\ 3269}#))) #{tmp\ 3246}#) (let ((#{_\ 3274}# #{tmp\ 3224}#)) (syntax-violation 'let "bad let" (#{source-wrap\ 450}# #{e\ 3214}# #{w\ 3216}# #{s\ 3217}# #{mod\ 3218}#)))))))))))) (#{global-extend\ 375}# 'core 'letrec (lambda (#{e\ 3275}# #{r\ 3276}# #{w\ 3277}# #{s\ 3278}# #{mod\ 3279}#) (let ((#{tmp\ 3285}# #{e\ 3275}#)) (let ((#{tmp\ 3286}# ($sc-dispatch #{tmp\ 3285}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3286}# (@apply (lambda (#{id\ 3291}# #{val\ 3292}# #{e1\ 3293}# #{e2\ 3294}#) (and-map #{id?\ 379}# #{id\ 3291}#)) #{tmp\ 3286}#) #f) (@apply (lambda (#{id\ 3300}# #{val\ 3301}# #{e1\ 3302}# #{e2\ 3303}#) (begin (let ((#{ids\ 3305}# #{id\ 3300}#)) (if (not (#{valid-bound-ids?\ 442}# #{ids\ 3305}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 3275}#) (begin (let ((#{labels\ 3309}# (#{gen-labels\ 397}# #{ids\ 3305}#)) (#{new-vars\ 3310}# (map #{gen-var\ 492}# #{ids\ 3305}#))) (begin (let ((#{w\ 3313}# (#{make-binding-wrap\ 426}# #{ids\ 3305}# #{labels\ 3309}# #{w\ 3277}#)) (#{r\ 3314}# (#{extend-var-env\ 369}# #{labels\ 3309}# #{new-vars\ 3310}# #{r\ 3276}#))) (#{build-letrec\ 337}# #{s\ 3278}# #f (map syntax->datum #{ids\ 3305}#) #{new-vars\ 3310}# (map (lambda (#{x\ 3315}#) (#{chi\ 464}# #{x\ 3315}# #{r\ 3314}# #{w\ 3313}# #{mod\ 3279}#)) #{val\ 3301}#) (#{chi-body\ 472}# (cons #{e1\ 3302}# #{e2\ 3303}#) (#{source-wrap\ 450}# #{e\ 3275}# #{w\ 3313}# #{s\ 3278}# #{mod\ 3279}#) #{r\ 3314}# #{w\ 3313}# #{mod\ 3279}#)))))))))) #{tmp\ 3286}#) (let ((#{_\ 3320}# #{tmp\ 3285}#)) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 450}# #{e\ 3275}# #{w\ 3277}# #{s\ 3278}# #{mod\ 3279}#)))))))) (#{global-extend\ 375}# 'core 'letrec* (lambda (#{e\ 3321}# #{r\ 3322}# #{w\ 3323}# #{s\ 3324}# #{mod\ 3325}#) (let ((#{tmp\ 3331}# #{e\ 3321}#)) (let ((#{tmp\ 3332}# ($sc-dispatch #{tmp\ 3331}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3332}# (@apply (lambda (#{id\ 3337}# #{val\ 3338}# #{e1\ 3339}# #{e2\ 3340}#) (and-map #{id?\ 379}# #{id\ 3337}#)) #{tmp\ 3332}#) #f) (@apply (lambda (#{id\ 3346}# #{val\ 3347}# #{e1\ 3348}# #{e2\ 3349}#) (begin (let ((#{ids\ 3351}# #{id\ 3346}#)) (if (not (#{valid-bound-ids?\ 442}# #{ids\ 3351}#)) (syntax-violation 'letrec* "duplicate bound variable" #{e\ 3321}#) (begin (let ((#{labels\ 3355}# (#{gen-labels\ 397}# #{ids\ 3351}#)) (#{new-vars\ 3356}# (map #{gen-var\ 492}# #{ids\ 3351}#))) (begin (let ((#{w\ 3359}# (#{make-binding-wrap\ 426}# #{ids\ 3351}# #{labels\ 3355}# #{w\ 3323}#)) (#{r\ 3360}# (#{extend-var-env\ 369}# #{labels\ 3355}# #{new-vars\ 3356}# #{r\ 3322}#))) (#{build-letrec\ 337}# #{s\ 3324}# #t (map syntax->datum #{ids\ 3351}#) #{new-vars\ 3356}# (map (lambda (#{x\ 3361}#) (#{chi\ 464}# #{x\ 3361}# #{r\ 3360}# #{w\ 3359}# #{mod\ 3325}#)) #{val\ 3347}#) (#{chi-body\ 472}# (cons #{e1\ 3348}# #{e2\ 3349}#) (#{source-wrap\ 450}# #{e\ 3321}# #{w\ 3359}# #{s\ 3324}# #{mod\ 3325}#) #{r\ 3360}# #{w\ 3359}# #{mod\ 3325}#)))))))))) #{tmp\ 3332}#) (let ((#{_\ 3366}# #{tmp\ 3331}#)) (syntax-violation 'letrec* "bad letrec*" (#{source-wrap\ 450}# #{e\ 3321}# #{w\ 3323}# #{s\ 3324}# #{mod\ 3325}#)))))))) (#{global-extend\ 375}# 'core 'set! (lambda (#{e\ 3367}# #{r\ 3368}# #{w\ 3369}# #{s\ 3370}# #{mod\ 3371}#) (let ((#{tmp\ 3377}# #{e\ 3367}#)) (let ((#{tmp\ 3378}# ($sc-dispatch #{tmp\ 3377}# (quote (_ any any))))) (if (if #{tmp\ 3378}# (@apply (lambda (#{id\ 3381}# #{val\ 3382}#) (#{id?\ 379}# #{id\ 3381}#)) #{tmp\ 3378}#) #f) (@apply (lambda (#{id\ 3385}# #{val\ 3386}#) (begin (let ((#{n\ 3389}# (#{id-var-name\ 436}# #{id\ 3385}# #{w\ 3369}#)) (#{id-mod\ 3390}# (if (#{syntax-object?\ 343}# #{id\ 3385}#) (#{syntax-object-module\ 349}# #{id\ 3385}#) #{mod\ 3371}#))) (begin (let ((#{b\ 3392}# (#{lookup\ 373}# #{n\ 3389}# #{r\ 3368}# #{id-mod\ 3390}#))) (begin (let ((#{atom-key\ 3395}# (#{binding-type\ 362}# #{b\ 3392}#))) (if (eqv? #{atom-key\ 3395}# 'lexical) (#{build-lexical-assignment\ 311}# #{s\ 3370}# (syntax->datum #{id\ 3385}#) (#{binding-value\ 364}# #{b\ 3392}#) (#{chi\ 464}# #{val\ 3386}# #{r\ 3368}# #{w\ 3369}# #{mod\ 3371}#)) (if (eqv? #{atom-key\ 3395}# 'global) (#{build-global-assignment\ 317}# #{s\ 3370}# #{n\ 3389}# (#{chi\ 464}# #{val\ 3386}# #{r\ 3368}# #{w\ 3369}# #{mod\ 3371}#) #{id-mod\ 3390}#) (if (eqv? #{atom-key\ 3395}# 'macro) (begin (let ((#{p\ 3400}# (#{binding-value\ 364}# #{b\ 3392}#))) (if (procedure-property #{p\ 3400}# 'variable-transformer) (#{chi\ 464}# (#{chi-macro\ 470}# #{p\ 3400}# #{e\ 3367}# #{r\ 3368}# #{w\ 3369}# #{s\ 3370}# #f #{mod\ 3371}#) #{r\ 3368}# '(()) #{mod\ 3371}#) (syntax-violation 'set! "not a variable transformer" (#{wrap\ 448}# #{e\ 3367}# #{w\ 3369}# #{mod\ 3371}#) (#{wrap\ 448}# #{id\ 3385}# #{w\ 3369}# #{id-mod\ 3390}#))))) (if (eqv? #{atom-key\ 3395}# 'displaced-lexical) (syntax-violation 'set! "identifier out of context" (#{wrap\ 448}# #{id\ 3385}# #{w\ 3369}# #{mod\ 3371}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 450}# #{e\ 3367}# #{w\ 3369}# #{s\ 3370}# #{mod\ 3371}#))))))))))))) #{tmp\ 3378}#) (let ((#{tmp\ 3404}# ($sc-dispatch #{tmp\ 3377}# '(_ (any . each-any) any)))) (if #{tmp\ 3404}# (@apply (lambda (#{head\ 3408}# #{tail\ 3409}# #{val\ 3410}#) (call-with-values (lambda () (#{syntax-type\ 460}# #{head\ 3408}# #{r\ 3368}# '(()) #f #f #{mod\ 3371}# #t)) (lambda (#{type\ 3413}# #{value\ 3414}# #{ee\ 3415}# #{ww\ 3416}# #{ss\ 3417}# #{modmod\ 3418}#) (if (eqv? #{type\ 3413}# (quote module-ref)) (begin (let ((#{val\ 3427}# (#{chi\ 464}# #{val\ 3410}# #{r\ 3368}# #{w\ 3369}# #{mod\ 3371}#))) (call-with-values (lambda () (#{value\ 3414}# (cons #{head\ 3408}# #{tail\ 3409}#) #{r\ 3368}# #{w\ 3369}#)) (lambda (#{e\ 3429}# #{r\ 3430}# #{w\ 3431}# #{s*\ 3432}# #{mod\ 3433}#) (let ((#{tmp\ 3439}# #{e\ 3429}#)) (let ((#{tmp\ 3440}# (list #{tmp\ 3439}#))) (if (if #{tmp\ 3440}# (@apply (lambda (#{e\ 3442}#) (#{id?\ 379}# #{e\ 3442}#)) #{tmp\ 3440}#) #f) (@apply (lambda (#{e\ 3444}#) (#{build-global-assignment\ 317}# #{s\ 3370}# (syntax->datum #{e\ 3444}#) #{val\ 3427}# #{mod\ 3433}#)) #{tmp\ 3440}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3439}#)))))))) (#{build-application\ 303}# #{s\ 3370}# (#{chi\ 464}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3419" "i3420" "i3421" "i3422" "i3423" "i3424")) #(ribcage #(head tail val) #((top) (top) (top)) #("i3405" "i3406" "i3407")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3372" "i3373" "i3374" "i3375" "i3376")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) #{head\ 3408}#) #{r\ 3368}# #{w\ 3369}# #{mod\ 3371}#) (map (lambda (#{e\ 3446}#) (#{chi\ 464}# #{e\ 3446}# #{r\ 3368}# #{w\ 3369}# #{mod\ 3371}#)) (append #{tail\ 3409}# (list #{val\ 3410}#)))))))) #{tmp\ 3404}#) (let ((#{_\ 3450}# #{tmp\ 3377}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 450}# #{e\ 3367}# #{w\ 3369}# #{s\ 3370}# #{mod\ 3371}#)))))))))) (#{global-extend\ 375}# 'module-ref '@ (lambda (#{e\ 3451}# #{r\ 3452}# #{w\ 3453}#) (let ((#{tmp\ 3457}# #{e\ 3451}#)) (let ((#{tmp\ 3458}# ($sc-dispatch #{tmp\ 3457}# '(_ each-any any)))) (if (if #{tmp\ 3458}# (@apply (lambda (#{mod\ 3461}# #{id\ 3462}#) (if (and-map #{id?\ 379}# #{mod\ 3461}#) (#{id?\ 379}# #{id\ 3462}#) #f)) #{tmp\ 3458}#) #f) (@apply (lambda (#{mod\ 3468}# #{id\ 3469}#) (values (syntax->datum #{id\ 3469}#) #{r\ 3452}# #{w\ 3453}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(mod id) #((top) (top)) #("i3466" "i3467")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3454" "i3455" "i3456")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) #{mod\ 3468}#)))) #{tmp\ 3458}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3457}#)))))) (#{global-extend\ 375}# 'module-ref '@@ (lambda (#{e\ 3471}# #{r\ 3472}# #{w\ 3473}#) (letrec* ((#{remodulate\ 3478}# (lambda (#{x\ 3479}# #{mod\ 3480}#) (if (pair? #{x\ 3479}#) (cons (#{remodulate\ 3478}# (car #{x\ 3479}#) #{mod\ 3480}#) (#{remodulate\ 3478}# (cdr #{x\ 3479}#) #{mod\ 3480}#)) (if (#{syntax-object?\ 343}# #{x\ 3479}#) (#{make-syntax-object\ 341}# (#{remodulate\ 3478}# (#{syntax-object-expression\ 345}# #{x\ 3479}#) #{mod\ 3480}#) (#{syntax-object-wrap\ 347}# #{x\ 3479}#) #{mod\ 3480}#) (if (vector? #{x\ 3479}#) (begin (let ((#{n\ 3491}# (vector-length #{x\ 3479}#))) (begin (let ((#{v\ 3493}# (make-vector #{n\ 3491}#))) (letrec* ((#{loop\ 3496}# (lambda (#{i\ 3497}#) (if (#{fx=\ 284}# #{i\ 3497}# #{n\ 3491}#) (begin (if #f #f) #{v\ 3493}#) (begin (vector-set! #{v\ 3493}# #{i\ 3497}# (#{remodulate\ 3478}# (vector-ref #{x\ 3479}# #{i\ 3497}#) #{mod\ 3480}#)) (#{loop\ 3496}# (#{fx+\ 280}# #{i\ 3497}# 1))))))) (begin (#{loop\ 3496}# 0))))))) #{x\ 3479}#)))))) (begin (let ((#{tmp\ 3501}# #{e\ 3471}#)) (let ((#{tmp\ 3502}# ($sc-dispatch #{tmp\ 3501}# '(_ each-any any)))) (if (if #{tmp\ 3502}# (@apply (lambda (#{mod\ 3505}# #{exp\ 3506}#) (and-map #{id?\ 379}# #{mod\ 3505}#)) #{tmp\ 3502}#) #f) (@apply (lambda (#{mod\ 3510}# #{exp\ 3511}#) (begin (let ((#{mod\ 3513}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(mod exp) #((top) (top)) #("i3508" "i3509")) #(ribcage (remodulate) ((top)) ("i3477")) #(ribcage #(e r w) #((top) (top) (top)) #("i3474" "i3475" "i3476")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) #{mod\ 3510}#)))) (values (#{remodulate\ 3478}# #{exp\ 3511}# #{mod\ 3513}#) #{r\ 3472}# #{w\ 3473}# (#{source-annotation\ 358}# #{exp\ 3511}#) #{mod\ 3513}#)))) #{tmp\ 3502}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3501}#)))))))) (#{global-extend\ 375}# 'core 'if (lambda (#{e\ 3515}# #{r\ 3516}# #{w\ 3517}# #{s\ 3518}# #{mod\ 3519}#) (let ((#{tmp\ 3525}# #{e\ 3515}#)) (let ((#{tmp\ 3526}# ($sc-dispatch #{tmp\ 3525}# (quote (_ any any))))) (if #{tmp\ 3526}# (@apply (lambda (#{test\ 3529}# #{then\ 3530}#) (#{build-conditional\ 305}# #{s\ 3518}# (#{chi\ 464}# #{test\ 3529}# #{r\ 3516}# #{w\ 3517}# #{mod\ 3519}#) (#{chi\ 464}# #{then\ 3530}# #{r\ 3516}# #{w\ 3517}# #{mod\ 3519}#) (#{build-void\ 301}# #f))) #{tmp\ 3526}#) (let ((#{tmp\ 3532}# ($sc-dispatch #{tmp\ 3525}# '(_ any any any)))) (if #{tmp\ 3532}# (@apply (lambda (#{test\ 3536}# #{then\ 3537}# #{else\ 3538}#) (#{build-conditional\ 305}# #{s\ 3518}# (#{chi\ 464}# #{test\ 3536}# #{r\ 3516}# #{w\ 3517}# #{mod\ 3519}#) (#{chi\ 464}# #{then\ 3537}# #{r\ 3516}# #{w\ 3517}# #{mod\ 3519}#) (#{chi\ 464}# #{else\ 3538}# #{r\ 3516}# #{w\ 3517}# #{mod\ 3519}#))) #{tmp\ 3532}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3525}#)))))))) (#{global-extend\ 375}# 'core 'with-fluids (lambda (#{e\ 3539}# #{r\ 3540}# #{w\ 3541}# #{s\ 3542}# #{mod\ 3543}#) (let ((#{tmp\ 3549}# #{e\ 3539}#)) (let ((#{tmp\ 3550}# ($sc-dispatch #{tmp\ 3549}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 3550}# (@apply (lambda (#{fluid\ 3555}# #{val\ 3556}# #{b\ 3557}# #{b*\ 3558}#) (#{build-dynlet\ 307}# #{s\ 3542}# (map (lambda (#{x\ 3559}#) (#{chi\ 464}# #{x\ 3559}# #{r\ 3540}# #{w\ 3541}# #{mod\ 3543}#)) #{fluid\ 3555}#) (map (lambda (#{x\ 3562}#) (#{chi\ 464}# #{x\ 3562}# #{r\ 3540}# #{w\ 3541}# #{mod\ 3543}#)) #{val\ 3556}#) (#{chi-body\ 472}# (cons #{b\ 3557}# #{b*\ 3558}#) (#{source-wrap\ 450}# #{e\ 3539}# #{w\ 3541}# #{s\ 3542}# #{mod\ 3543}#) #{r\ 3540}# #{w\ 3541}# #{mod\ 3543}#))) #{tmp\ 3550}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3549}#)))))) (#{global-extend\ 375}# 'begin 'begin '()) (#{global-extend\ 375}# 'define 'define '()) (#{global-extend\ 375}# 'define-syntax 'define-syntax '()) (#{global-extend\ 375}# 'eval-when 'eval-when '()) (#{global-extend\ 375}# 'core 'syntax-case (letrec* ((#{convert-pattern\ 3567}# (lambda (#{pattern\ 3574}# #{keys\ 3575}#) (letrec* ((#{cvt*\ 3579}# (lambda (#{p*\ 3582}# #{n\ 3583}# #{ids\ 3584}#) (if (null? #{p*\ 3582}#) (values (quote ()) #{ids\ 3584}#) (call-with-values (lambda () (#{cvt*\ 3579}# (cdr #{p*\ 3582}#) #{n\ 3583}# #{ids\ 3584}#)) (lambda (#{y\ 3588}# #{ids\ 3589}#) (call-with-values (lambda () (#{cvt\ 3581}# (car #{p*\ 3582}#) #{n\ 3583}# #{ids\ 3589}#)) (lambda (#{x\ 3592}# #{ids\ 3593}#) (values (cons #{x\ 3592}# #{y\ 3588}#) #{ids\ 3593}#)))))))) (#{cvt\ 3581}# (lambda (#{p\ 3596}# #{n\ 3597}# #{ids\ 3598}#) (if (#{id?\ 379}# #{p\ 3596}#) (if (#{bound-id-member?\ 446}# #{p\ 3596}# #{keys\ 3575}#) (values (vector (quote free-id) #{p\ 3596}#) #{ids\ 3598}#) (if (#{free-id=?\ 438}# #{p\ 3596}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3599" "i3600" "i3601")) #(ribcage (cvt cvt*) ((top) (top)) ("i3580" "i3578")) #(ribcage #(pattern keys) #((top) (top)) #("i3576" "i3577")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3572" "i3570" "i3568" "i3566")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) (values (quote _) #{ids\ 3598}#) (values 'any (cons (cons #{p\ 3596}# #{n\ 3597}#) #{ids\ 3598}#)))) (let ((#{tmp\ 3607}# #{p\ 3596}#)) (let ((#{tmp\ 3608}# ($sc-dispatch #{tmp\ 3607}# '(any any)))) (if (if #{tmp\ 3608}# (@apply (lambda (#{x\ 3611}# #{dots\ 3612}#) (#{ellipsis?\ 480}# #{dots\ 3612}#)) #{tmp\ 3608}#) #f) (@apply (lambda (#{x\ 3615}# #{dots\ 3616}#) (call-with-values (lambda () (#{cvt\ 3581}# #{x\ 3615}# (#{fx+\ 280}# #{n\ 3597}# 1) #{ids\ 3598}#)) (lambda (#{p\ 3617}# #{ids\ 3618}#) (values (if (eq? #{p\ 3617}# (quote any)) 'each-any (vector 'each #{p\ 3617}#)) #{ids\ 3618}#)))) #{tmp\ 3608}#) (let ((#{tmp\ 3621}# ($sc-dispatch #{tmp\ 3607}# '(any any . each-any)))) (if (if #{tmp\ 3621}# (@apply (lambda (#{x\ 3625}# #{dots\ 3626}# #{ys\ 3627}#) (#{ellipsis?\ 480}# #{dots\ 3626}#)) #{tmp\ 3621}#) #f) (@apply (lambda (#{x\ 3631}# #{dots\ 3632}# #{ys\ 3633}#) (call-with-values (lambda () (#{cvt*\ 3579}# #{ys\ 3633}# #{n\ 3597}# #{ids\ 3598}#)) (lambda (#{ys\ 3635}# #{ids\ 3636}#) (call-with-values (lambda () (#{cvt\ 3581}# #{x\ 3631}# (1+ #{n\ 3597}#) #{ids\ 3636}#)) (lambda (#{x\ 3639}# #{ids\ 3640}#) (values (list->vector (cons 'each+ (cons #{x\ 3639}# (cons (reverse #{ys\ 3635}#) '(()))))) #{ids\ 3640}#)))))) #{tmp\ 3621}#) (let ((#{tmp\ 3644}# ($sc-dispatch #{tmp\ 3607}# '(any . any)))) (if #{tmp\ 3644}# (@apply (lambda (#{x\ 3647}# #{y\ 3648}#) (call-with-values (lambda () (#{cvt\ 3581}# #{y\ 3648}# #{n\ 3597}# #{ids\ 3598}#)) (lambda (#{y\ 3649}# #{ids\ 3650}#) (call-with-values (lambda () (#{cvt\ 3581}# #{x\ 3647}# #{n\ 3597}# #{ids\ 3650}#)) (lambda (#{x\ 3653}# #{ids\ 3654}#) (values (cons #{x\ 3653}# #{y\ 3649}#) #{ids\ 3654}#)))))) #{tmp\ 3644}#) (let ((#{tmp\ 3657}# ($sc-dispatch #{tmp\ 3607}# '()))) (if #{tmp\ 3657}# (@apply (lambda () (values '() #{ids\ 3598}#)) #{tmp\ 3657}#) (let ((#{tmp\ 3658}# ($sc-dispatch #{tmp\ 3607}# '#(vector each-any)))) (if #{tmp\ 3658}# (@apply (lambda (#{x\ 3660}#) (call-with-values (lambda () (#{cvt\ 3581}# #{x\ 3660}# #{n\ 3597}# #{ids\ 3598}#)) (lambda (#{p\ 3662}# #{ids\ 3663}#) (values (vector 'vector #{p\ 3662}#) #{ids\ 3663}#)))) #{tmp\ 3658}#) (let ((#{x\ 3667}# #{tmp\ 3607}#)) (values (vector 'atom (#{strip\ 490}# #{p\ 3596}# '(()))) #{ids\ 3598}#))))))))))))))))) (begin (#{cvt\ 3581}# #{pattern\ 3574}# 0 (quote ())))))) (#{build-dispatch-call\ 3569}# (lambda (#{pvars\ 3669}# #{exp\ 3670}# #{y\ 3671}# #{r\ 3672}# #{mod\ 3673}#) (begin (map cdr #{pvars\ 3669}#) (let ((#{ids\ 3681}# (map car #{pvars\ 3669}#))) (begin (let ((#{labels\ 3685}# (#{gen-labels\ 397}# #{ids\ 3681}#)) (#{new-vars\ 3686}# (map #{gen-var\ 492}# #{ids\ 3681}#))) (#{build-application\ 303}# #f (#{build-primref\ 327}# #f (quote apply)) (list (#{build-simple-lambda\ 321}# #f (map syntax->datum #{ids\ 3681}#) #f #{new-vars\ 3686}# '() (#{chi\ 464}# #{exp\ 3670}# (#{extend-env\ 367}# #{labels\ 3685}# (map (lambda (#{var\ 3690}# #{level\ 3691}#) (cons 'syntax (cons #{var\ 3690}# #{level\ 3691}#))) #{new-vars\ 3686}# (map cdr #{pvars\ 3669}#)) #{r\ 3672}#) (#{make-binding-wrap\ 426}# #{ids\ 3681}# #{labels\ 3685}# '(())) #{mod\ 3673}#)) #{y\ 3671}#)))))))) (#{gen-clause\ 3571}# (lambda (#{x\ 3697}# #{keys\ 3698}# #{clauses\ 3699}# #{r\ 3700}# #{pat\ 3701}# #{fender\ 3702}# #{exp\ 3703}# #{mod\ 3704}#) (call-with-values (lambda () (#{convert-pattern\ 3567}# #{pat\ 3701}# #{keys\ 3698}#)) (lambda (#{p\ 3713}# #{pvars\ 3714}#) (if (not (#{distinct-bound-ids?\ 444}# (map car #{pvars\ 3714}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 3701}#) (if (not (and-map (lambda (#{x\ 3721}#) (not (#{ellipsis?\ 480}# (car #{x\ 3721}#)))) #{pvars\ 3714}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 3701}#) (begin (let ((#{y\ 3725}# (#{gen-var\ 492}# (quote tmp)))) (#{build-application\ 303}# #f (#{build-simple-lambda\ 321}# #f (list (quote tmp)) #f (list #{y\ 3725}#) '() (begin (let ((#{y\ 3729}# (#{build-lexical-reference\ 309}# 'value #f 'tmp #{y\ 3725}#))) (#{build-conditional\ 305}# #f (let ((#{tmp\ 3732}# #{fender\ 3702}#)) (let ((#{tmp\ 3733}# ($sc-dispatch #{tmp\ 3732}# '#(atom #t)))) (if #{tmp\ 3733}# (@apply (lambda () #{y\ 3729}#) #{tmp\ 3733}#) (let ((#{_\ 3735}# #{tmp\ 3732}#)) (#{build-conditional\ 305}# #f #{y\ 3729}# (#{build-dispatch-call\ 3569}# #{pvars\ 3714}# #{fender\ 3702}# #{y\ 3729}# #{r\ 3700}# #{mod\ 3704}#) (#{build-data\ 329}# #f #f)))))) (#{build-dispatch-call\ 3569}# #{pvars\ 3714}# #{exp\ 3703}# #{y\ 3729}# #{r\ 3700}# #{mod\ 3704}#) (#{gen-syntax-case\ 3573}# #{x\ 3697}# #{keys\ 3698}# #{clauses\ 3699}# #{r\ 3700}# #{mod\ 3704}#))))) (list (if (eq? #{p\ 3713}# (quote any)) (#{build-application\ 303}# #f (#{build-primref\ 327}# #f 'list) (list #{x\ 3697}#)) (#{build-application\ 303}# #f (#{build-primref\ 327}# #f '$sc-dispatch) (list #{x\ 3697}# (#{build-data\ 329}# #f #{p\ 3713}#)))))))))))))) (#{gen-syntax-case\ 3573}# (lambda (#{x\ 3743}# #{keys\ 3744}# #{clauses\ 3745}# #{r\ 3746}# #{mod\ 3747}#) (if (null? #{clauses\ 3745}#) (#{build-application\ 303}# #f (#{build-primref\ 327}# #f 'syntax-violation) (list (#{build-data\ 329}# #f #f) (#{build-data\ 329}# #f "source expression failed to match any pattern") #{x\ 3743}#)) (let ((#{tmp\ 3757}# (car #{clauses\ 3745}#))) (let ((#{tmp\ 3758}# ($sc-dispatch #{tmp\ 3757}# '(any any)))) (if #{tmp\ 3758}# (@apply (lambda (#{pat\ 3761}# #{exp\ 3762}#) (if (if (#{id?\ 379}# #{pat\ 3761}#) (and-map (lambda (#{x\ 3765}#) (not (#{free-id=?\ 438}# #{pat\ 3761}# #{x\ 3765}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3759" "i3760")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3748" "i3749" "i3750" "i3751" "i3752")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3572" "i3570" "i3568" "i3566")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) #{keys\ 3744}#)) #f) (if (#{free-id=?\ 438}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3759" "i3760")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3748" "i3749" "i3750" "i3751" "i3752")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3572" "i3570" "i3568" "i3566")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile)) '#(syntax-object _ ((top) #(ribcage #(pat exp) #((top) (top)) #("i3759" "i3760")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3748" "i3749" "i3750" "i3751" "i3752")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3572" "i3570" "i3568" "i3566")) #(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)) ("i493" "i491" "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" "i422" "i421" "i419" "i418" "i417" "i416" "i415" "i413" "i411" "i409" "i407" "i405" "i403" "i401" "i399" "i396" "i394" "i393" "i392" "i391" "i390" "i389" "i387" "i385" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i363" "i361" "i360" "i359" "i357" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i273" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238" "i236")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i38" "i37" "i36" "i34"))) (hygiene guile))) (#{chi\ 464}# #{exp\ 3762}# #{r\ 3746}# '(()) #{mod\ 3747}#) (begin (let ((#{labels\ 3770}# (list (#{gen-label\ 395}#))) (#{var\ 3771}# (#{gen-var\ 492}# #{pat\ 3761}#))) (#{build-application\ 303}# #f (#{build-simple-lambda\ 321}# #f (list (syntax->datum #{pat\ 3761}#)) #f (list #{var\ 3771}#) '() (#{chi\ 464}# #{exp\ 3762}# (#{extend-env\ 367}# #{labels\ 3770}# (list (cons 'syntax (cons #{var\ 3771}# 0))) #{r\ 3746}#) (#{make-binding-wrap\ 426}# (list #{pat\ 3761}#) #{labels\ 3770}# '(())) #{mod\ 3747}#)) (list #{x\ 3743}#))))) (#{gen-clause\ 3571}# #{x\ 3743}# #{keys\ 3744}# (cdr #{clauses\ 3745}#) #{r\ 3746}# #{pat\ 3761}# #t #{exp\ 3762}# #{mod\ 3747}#))) #{tmp\ 3758}#) (let ((#{tmp\ 3777}# ($sc-dispatch #{tmp\ 3757}# '(any any any)))) (if #{tmp\ 3777}# (@apply (lambda (#{pat\ 3781}# #{fender\ 3782}# #{exp\ 3783}#) (#{gen-clause\ 3571}# #{x\ 3743}# #{keys\ 3744}# (cdr #{clauses\ 3745}#) #{r\ 3746}# #{pat\ 3781}# #{fender\ 3782}# #{exp\ 3783}# #{mod\ 3747}#)) #{tmp\ 3777}#) (let ((#{_\ 3785}# #{tmp\ 3757}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 3745}#)))))))))))) (begin (lambda (#{e\ 3786}# #{r\ 3787}# #{w\ 3788}# #{s\ 3789}# #{mod\ 3790}#) (begin (let ((#{e\ 3797}# (#{source-wrap\ 450}# #{e\ 3786}# #{w\ 3788}# #{s\ 3789}# #{mod\ 3790}#))) (let ((#{tmp\ 3798}# #{e\ 3797}#)) (let ((#{tmp\ 3799}# ($sc-dispatch #{tmp\ 3798}# '(_ any each-any . each-any)))) (if #{tmp\ 3799}# (@apply (lambda (#{val\ 3803}# #{key\ 3804}# #{m\ 3805}#) (if (and-map (lambda (#{x\ 3806}#) (if (#{id?\ 379}# #{x\ 3806}#) (not (#{ellipsis?\ 480}# #{x\ 3806}#)) #f)) #{key\ 3804}#) (begin (let ((#{x\ 3812}# (#{gen-var\ 492}# (quote tmp)))) (#{build-application\ 303}# #{s\ 3789}# (#{build-simple-lambda\ 321}# #f (list (quote tmp)) #f (list #{x\ 3812}#) '() (#{gen-syntax-case\ 3573}# (#{build-lexical-reference\ 309}# 'value #f 'tmp #{x\ 3812}#) #{key\ 3804}# #{m\ 3805}# #{r\ 3787}# #{mod\ 3790}#)) (list (#{chi\ 464}# #{val\ 3803}# #{r\ 3787}# '(()) #{mod\ 3790}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 3797}#))) #{tmp\ 3799}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3798}#)))))))))) (set! macroexpand (lambda* (#{x\ 3818}# #:optional (#{m\ 3820}# (quote e)) (#{esew\ 3822}# (quote (eval)))) (#{chi-top\ 462}# #{x\ 3818}# '() '((top)) #{m\ 3820}# #{esew\ 3822}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x\ 3826}#) (#{nonsymbol-id?\ 377}# #{x\ 3826}#))) (set! datum->syntax (lambda (#{id\ 3828}# #{datum\ 3829}#) (#{make-syntax-object\ 341}# #{datum\ 3829}# (#{syntax-object-wrap\ 347}# #{id\ 3828}#) (#{syntax-object-module\ 349}# #{id\ 3828}#)))) (set! syntax->datum (lambda (#{x\ 3832}#) (#{strip\ 490}# #{x\ 3832}# (quote (()))))) (set! syntax-source (lambda (#{x\ 3835}#) (#{source-annotation\ 358}# #{x\ 3835}#))) (set! generate-temporaries (lambda (#{ls\ 3837}#) (begin (begin (let ((#{x\ 3841}# #{ls\ 3837}#)) (if (not (list? #{x\ 3841}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 3841}#)))) (map (lambda (#{x\ 3842}#) (#{wrap\ 448}# (gensym) (quote ((top))) #f)) #{ls\ 3837}#)))) (set! free-identifier=? (lambda (#{x\ 3846}# #{y\ 3847}#) (begin (begin (let ((#{x\ 3852}# #{x\ 3846}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3852}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3852}#)))) (begin (let ((#{x\ 3855}# #{y\ 3847}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3855}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3855}#)))) (#{free-id=?\ 438}# #{x\ 3846}# #{y\ 3847}#)))) (set! bound-identifier=? (lambda (#{x\ 3856}# #{y\ 3857}#) (begin (begin (let ((#{x\ 3862}# #{x\ 3856}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3862}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3862}#)))) (begin (let ((#{x\ 3865}# #{y\ 3857}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3865}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3865}#)))) (#{bound-id=?\ 440}# #{x\ 3856}# #{y\ 3857}#)))) (set! syntax-violation (lambda (#{who\ 3866}# #{message\ 3867}# #{form\ 3868}# . #{subform\ 3869}#) (begin (begin (let ((#{x\ 3876}# #{who\ 3866}#)) (if (not (let ((#{x\ 3877}# #{x\ 3876}#)) (begin (let ((#{t\ 3881}# (not #{x\ 3877}#))) (if #{t\ 3881}# #{t\ 3881}# (begin (let ((#{t\ 3884}# (string? #{x\ 3877}#))) (if #{t\ 3884}# #{t\ 3884}# (symbol? #{x\ 3877}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3876}#)))) (begin (let ((#{x\ 3888}# #{message\ 3867}#)) (if (not (string? #{x\ 3888}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3888}#)))) (scm-error 'syntax-error 'macroexpand (string-append (if #{who\ 3866}# "~a: " "") "~a " (if (null? #{subform\ 3869}#) "in ~a" "in subform `~s' of `~s'")) (begin (let ((#{tail\ 3890}# (cons #{message\ 3867}# (map (lambda (#{x\ 3891}#) (#{strip\ 490}# #{x\ 3891}# '(()))) (append #{subform\ 3869}# (list #{form\ 3868}#)))))) (if #{who\ 3866}# (cons #{who\ 3866}# #{tail\ 3890}#) #{tail\ 3890}#))) #f)))) (letrec* ((#{match-each\ 3895}# (lambda (#{e\ 3908}# #{p\ 3909}# #{w\ 3910}# #{mod\ 3911}#) (if (pair? #{e\ 3908}#) (begin (let ((#{first\ 3919}# (#{match\ 3907}# (car #{e\ 3908}#) #{p\ 3909}# #{w\ 3910}# '() #{mod\ 3911}#))) (if #{first\ 3919}# (begin (let ((#{rest\ 3923}# (#{match-each\ 3895}# (cdr #{e\ 3908}#) #{p\ 3909}# #{w\ 3910}# #{mod\ 3911}#))) (if #{rest\ 3923}# (cons #{first\ 3919}# #{rest\ 3923}#) #f))) #f))) (if (null? #{e\ 3908}#) '() (if (#{syntax-object?\ 343}# #{e\ 3908}#) (#{match-each\ 3895}# (#{syntax-object-expression\ 345}# #{e\ 3908}#) #{p\ 3909}# (#{join-wraps\ 430}# #{w\ 3910}# (#{syntax-object-wrap\ 347}# #{e\ 3908}#)) (#{syntax-object-module\ 349}# #{e\ 3908}#)) #f))))) (#{match-each+\ 3897}# (lambda (#{e\ 3931}# #{x-pat\ 3932}# #{y-pat\ 3933}# #{z-pat\ 3934}# #{w\ 3935}# #{r\ 3936}# #{mod\ 3937}#) (letrec* ((#{f\ 3948}# (lambda (#{e\ 3949}# #{w\ 3950}#) (if (pair? #{e\ 3949}#) (call-with-values (lambda () (#{f\ 3948}# (cdr #{e\ 3949}#) #{w\ 3950}#)) (lambda (#{xr*\ 3953}# #{y-pat\ 3954}# #{r\ 3955}#) (if #{r\ 3955}# (if (null? #{y-pat\ 3954}#) (begin (let ((#{xr\ 3960}# (#{match\ 3907}# (car #{e\ 3949}#) #{x-pat\ 3932}# #{w\ 3950}# '() #{mod\ 3937}#))) (if #{xr\ 3960}# (values (cons #{xr\ 3960}# #{xr*\ 3953}#) #{y-pat\ 3954}# #{r\ 3955}#) (values #f #f #f)))) (values '() (cdr #{y-pat\ 3954}#) (#{match\ 3907}# (car #{e\ 3949}#) (car #{y-pat\ 3954}#) #{w\ 3950}# #{r\ 3955}# #{mod\ 3937}#))) (values #f #f #f)))) (if (#{syntax-object?\ 343}# #{e\ 3949}#) (#{f\ 3948}# (#{syntax-object-expression\ 345}# #{e\ 3949}#) (#{join-wraps\ 430}# #{w\ 3950}# #{e\ 3949}#)) (values '() #{y-pat\ 3933}# (#{match\ 3907}# #{e\ 3949}# #{z-pat\ 3934}# #{w\ 3950}# #{r\ 3936}# #{mod\ 3937}#))))))) (begin (#{f\ 3948}# #{e\ 3931}# #{w\ 3935}#))))) (#{match-each-any\ 3899}# (lambda (#{e\ 3964}# #{w\ 3965}# #{mod\ 3966}#) (if (pair? #{e\ 3964}#) (begin (let ((#{l\ 3973}# (#{match-each-any\ 3899}# (cdr #{e\ 3964}#) #{w\ 3965}# #{mod\ 3966}#))) (if #{l\ 3973}# (cons (#{wrap\ 448}# (car #{e\ 3964}#) #{w\ 3965}# #{mod\ 3966}#) #{l\ 3973}#) #f))) (if (null? #{e\ 3964}#) '() (if (#{syntax-object?\ 343}# #{e\ 3964}#) (#{match-each-any\ 3899}# (#{syntax-object-expression\ 345}# #{e\ 3964}#) (#{join-wraps\ 430}# #{w\ 3965}# (#{syntax-object-wrap\ 347}# #{e\ 3964}#)) #{mod\ 3966}#) #f))))) (#{match-empty\ 3901}# (lambda (#{p\ 3981}# #{r\ 3982}#) (if (null? #{p\ 3981}#) #{r\ 3982}# (if (eq? #{p\ 3981}# (quote _)) #{r\ 3982}# (if (eq? #{p\ 3981}# (quote any)) (cons (quote ()) #{r\ 3982}#) (if (pair? #{p\ 3981}#) (#{match-empty\ 3901}# (car #{p\ 3981}#) (#{match-empty\ 3901}# (cdr #{p\ 3981}#) #{r\ 3982}#)) (if (eq? #{p\ 3981}# (quote each-any)) (cons (quote ()) #{r\ 3982}#) (begin (let ((#{atom-key\ 3998}# (vector-ref #{p\ 3981}# 0))) (if (eqv? #{atom-key\ 3998}# (quote each)) (#{match-empty\ 3901}# (vector-ref #{p\ 3981}# 1) #{r\ 3982}#) (if (eqv? #{atom-key\ 3998}# (quote each+)) (#{match-empty\ 3901}# (vector-ref #{p\ 3981}# 1) (#{match-empty\ 3901}# (reverse (vector-ref #{p\ 3981}# 2)) (#{match-empty\ 3901}# (vector-ref #{p\ 3981}# 3) #{r\ 3982}#))) (if (if (eqv? #{atom-key\ 3998}# 'free-id) #t (eqv? #{atom-key\ 3998}# 'atom)) #{r\ 3982}# (if (eqv? #{atom-key\ 3998}# 'vector) (#{match-empty\ 3901}# (vector-ref #{p\ 3981}# 1) #{r\ 3982}#)))))))))))))) (#{combine\ 3903}# (lambda (#{r*\ 4003}# #{r\ 4004}#) (if (null? (car #{r*\ 4003}#)) #{r\ 4004}# (cons (map car #{r*\ 4003}#) (#{combine\ 3903}# (map cdr #{r*\ 4003}#) #{r\ 4004}#))))) (#{match*\ 3905}# (lambda (#{e\ 4007}# #{p\ 4008}# #{w\ 4009}# #{r\ 4010}# #{mod\ 4011}#) (if (null? #{p\ 4008}#) (if (null? #{e\ 4007}#) #{r\ 4010}# #f) (if (pair? #{p\ 4008}#) (if (pair? #{e\ 4007}#) (#{match\ 3907}# (car #{e\ 4007}#) (car #{p\ 4008}#) #{w\ 4009}# (#{match\ 3907}# (cdr #{e\ 4007}#) (cdr #{p\ 4008}#) #{w\ 4009}# #{r\ 4010}# #{mod\ 4011}#) #{mod\ 4011}#) #f) (if (eq? #{p\ 4008}# (quote each-any)) (begin (let ((#{l\ 4028}# (#{match-each-any\ 3899}# #{e\ 4007}# #{w\ 4009}# #{mod\ 4011}#))) (if #{l\ 4028}# (cons #{l\ 4028}# #{r\ 4010}#) #f))) (begin (let ((#{atom-key\ 4034}# (vector-ref #{p\ 4008}# 0))) (if (eqv? #{atom-key\ 4034}# (quote each)) (if (null? #{e\ 4007}#) (#{match-empty\ 3901}# (vector-ref #{p\ 4008}# 1) #{r\ 4010}#) (begin (let ((#{l\ 4037}# (#{match-each\ 3895}# #{e\ 4007}# (vector-ref #{p\ 4008}# 1) #{w\ 4009}# #{mod\ 4011}#))) (if #{l\ 4037}# (letrec* ((#{collect\ 4042}# (lambda (#{l\ 4043}#) (if (null? (car #{l\ 4043}#)) #{r\ 4010}# (cons (map car #{l\ 4043}#) (#{collect\ 4042}# (map cdr #{l\ 4043}#))))))) (begin (#{collect\ 4042}# #{l\ 4037}#))) #f)))) (if (eqv? #{atom-key\ 4034}# (quote each+)) (call-with-values (lambda () (#{match-each+\ 3897}# #{e\ 4007}# (vector-ref #{p\ 4008}# 1) (vector-ref #{p\ 4008}# 2) (vector-ref #{p\ 4008}# 3) #{w\ 4009}# #{r\ 4010}# #{mod\ 4011}#)) (lambda (#{xr*\ 4045}# #{y-pat\ 4046}# #{r\ 4047}#) (if #{r\ 4047}# (if (null? #{y-pat\ 4046}#) (if (null? #{xr*\ 4045}#) (#{match-empty\ 3901}# (vector-ref #{p\ 4008}# 1) #{r\ 4047}#) (#{combine\ 3903}# #{xr*\ 4045}# #{r\ 4047}#)) #f) #f))) (if (eqv? #{atom-key\ 4034}# (quote free-id)) (if (#{id?\ 379}# #{e\ 4007}#) (if (#{free-id=?\ 438}# (#{wrap\ 448}# #{e\ 4007}# #{w\ 4009}# #{mod\ 4011}#) (vector-ref #{p\ 4008}# 1)) #{r\ 4010}# #f) #f) (if (eqv? #{atom-key\ 4034}# (quote atom)) (if (equal? (vector-ref #{p\ 4008}# 1) (#{strip\ 490}# #{e\ 4007}# #{w\ 4009}#)) #{r\ 4010}# #f) (if (eqv? #{atom-key\ 4034}# 'vector) (if (vector? #{e\ 4007}#) (#{match\ 3907}# (vector->list #{e\ 4007}#) (vector-ref #{p\ 4008}# 1) #{w\ 4009}# #{r\ 4010}# #{mod\ 4011}#) #f))))))))))))) (#{match\ 3907}# (lambda (#{e\ 4064}# #{p\ 4065}# #{w\ 4066}# #{r\ 4067}# #{mod\ 4068}#) (if (not #{r\ 4067}#) #f (if (eq? #{p\ 4065}# (quote _)) #{r\ 4067}# (if (eq? #{p\ 4065}# (quote any)) (cons (#{wrap\ 448}# #{e\ 4064}# #{w\ 4066}# #{mod\ 4068}#) #{r\ 4067}#) (if (#{syntax-object?\ 343}# #{e\ 4064}#) (#{match*\ 3905}# (#{syntax-object-expression\ 345}# #{e\ 4064}#) #{p\ 4065}# (#{join-wraps\ 430}# #{w\ 4066}# (#{syntax-object-wrap\ 347}# #{e\ 4064}#)) #{r\ 4067}# (#{syntax-object-module\ 349}# #{e\ 4064}#)) (#{match*\ 3905}# #{e\ 4064}# #{p\ 4065}# #{w\ 4066}# #{r\ 4067}# #{mod\ 4068}#)))))))) (begin (set! $sc-dispatch (lambda (#{e\ 4083}# #{p\ 4084}#) (if (eq? #{p\ 4084}# (quote any)) (list #{e\ 4083}#) (if (eq? #{p\ 4084}# (quote _)) '() (if (#{syntax-object?\ 343}# #{e\ 4083}#) (#{match*\ 3905}# (#{syntax-object-expression\ 345}# #{e\ 4083}#) #{p\ 4084}# (#{syntax-object-wrap\ 347}# #{e\ 4083}#) '() (#{syntax-object-module\ 349}# #{e\ 4083}#)) (#{match*\ 3905}# #{e\ 4083}# #{p\ 4084}# '(()) '() #f)))))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x\ 4095}#) (let ((#{tmp\ 4097}# #{x\ 4095}#)) (let ((#{tmp\ 4098}# ($sc-dispatch #{tmp\ 4097}# '(_ () any . each-any)))) (if #{tmp\ 4098}# (@apply (lambda (#{e1\ 4101}# #{e2\ 4102}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4099" "i4100")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4096"))) (hygiene guile)) (cons #{e1\ 4101}# #{e2\ 4102}#))) #{tmp\ 4098}#) (let ((#{tmp\ 4104}# ($sc-dispatch #{tmp\ 4097}# '(_ ((any any)) any . each-any)))) (if #{tmp\ 4104}# (@apply (lambda (#{out\ 4109}# #{in\ 4110}# #{e1\ 4111}# #{e2\ 4112}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4105" "i4106" "i4107" "i4108")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4096"))) (hygiene guile)) #{in\ 4110}# '() (list #{out\ 4109}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4105" "i4106" "i4107" "i4108")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4096"))) (hygiene guile)) (cons #{e1\ 4111}# #{e2\ 4112}#))))) #{tmp\ 4104}#) (let ((#{tmp\ 4114}# ($sc-dispatch #{tmp\ 4097}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 4114}# (@apply (lambda (#{out\ 4119}# #{in\ 4120}# #{e1\ 4121}# #{e2\ 4122}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4115" "i4116" "i4117" "i4118")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4096"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4115" "i4116" "i4117" "i4118")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4096"))) (hygiene guile)) #{in\ 4120}#) '() (list #{out\ 4119}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4115" "i4116" "i4117" "i4118")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4096"))) (hygiene guile)) (cons #{e1\ 4121}# #{e2\ 4122}#))))) #{tmp\ 4114}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4097}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x\ 4126}#) (let ((#{tmp\ 4128}# #{x\ 4126}#)) (let ((#{tmp\ 4129}# ($sc-dispatch #{tmp\ 4128}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp\ 4129}# (@apply (lambda (#{k\ 4134}# #{keyword\ 4135}# #{pattern\ 4136}# #{template\ 4137}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile)) #{pattern\ 4136}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile)) (cons #{k\ 4134}# (map (lambda (#{tmp\ 4141}# #{tmp\ 4140}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile)) #{tmp\ 4140}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4130" "i4131" "i4132" "i4133")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4127"))) (hygiene guile)) #{tmp\ 4141}#))) #{template\ 4137}# #{pattern\ 4136}#)))))) #{tmp\ 4129}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4128}#))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x\ 4142}#) (let ((#{tmp\ 4144}# #{x\ 4142}#)) (let ((#{tmp\ 4145}# ($sc-dispatch #{tmp\ 4144}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp\ 4145}# (@apply (lambda (#{let*\ 4151}# #{x\ 4152}# #{v\ 4153}# #{e1\ 4154}# #{e2\ 4155}#) (and-map identifier? #{x\ 4152}#)) #{tmp\ 4145}#) #f) (@apply (lambda (#{let*\ 4162}# #{x\ 4163}# #{v\ 4164}# #{e1\ 4165}# #{e2\ 4166}#) (letrec* ((#{f\ 4169}# (lambda (#{bindings\ 4170}#) (if (null? #{bindings\ 4170}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4167" "i4168")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4157" "i4158" "i4159" "i4160" "i4161")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4143"))) (hygiene guile)) (cons '() (cons #{e1\ 4165}# #{e2\ 4166}#))) (let ((#{tmp\ 4175}# (list (#{f\ 4169}# (cdr #{bindings\ 4170}#)) (car #{bindings\ 4170}#)))) (let ((#{tmp\ 4176}# ($sc-dispatch #{tmp\ 4175}# '(any any)))) (if #{tmp\ 4176}# (@apply (lambda (#{body\ 4179}# #{binding\ 4180}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i4177" "i4178")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4167" "i4168")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4157" "i4158" "i4159" "i4160" "i4161")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4143"))) (hygiene guile)) (list #{binding\ 4180}#) #{body\ 4179}#)) #{tmp\ 4176}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4175}#)))))))) (begin (#{f\ 4169}# (map list #{x\ 4163}# #{v\ 4164}#))))) #{tmp\ 4145}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4144}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x\ 4181}#) (let ((#{tmp\ 4183}# #{orig-x\ 4181}#)) (let ((#{tmp\ 4184}# ($sc-dispatch #{tmp\ 4183}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp\ 4184}# (@apply (lambda (#{var\ 4191}# #{init\ 4192}# #{step\ 4193}# #{e0\ 4194}# #{e1\ 4195}# #{c\ 4196}#) (let ((#{tmp\ 4198}# (map (lambda (#{v\ 4219}# #{s\ 4220}#) (let ((#{tmp\ 4223}# #{s\ 4220}#)) (let ((#{tmp\ 4224}# ($sc-dispatch #{tmp\ 4223}# '()))) (if #{tmp\ 4224}# (@apply (lambda () #{v\ 4219}#) #{tmp\ 4224}#) (let ((#{tmp\ 4225}# ($sc-dispatch #{tmp\ 4223}# '(any)))) (if #{tmp\ 4225}# (@apply (lambda (#{e\ 4227}#) #{e\ 4227}#) #{tmp\ 4225}#) (let ((#{_\ 4229}# #{tmp\ 4223}#)) (syntax-violation 'do "bad step expression" #{orig-x\ 4181}# #{s\ 4220}#)))))))) #{var\ 4191}# #{step\ 4193}#))) (let ((#{tmp\ 4199}# ($sc-dispatch #{tmp\ 4198}# (quote each-any)))) (if #{tmp\ 4199}# (@apply (lambda (#{step\ 4201}#) (let ((#{tmp\ 4202}# #{e1\ 4195}#)) (let ((#{tmp\ 4203}# ($sc-dispatch #{tmp\ 4202}# (quote ())))) (if #{tmp\ 4203}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) (map list #{var\ 4191}# #{init\ 4192}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) #{e0\ 4194}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) (append #{c\ 4196}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) #{step\ 4201}#))))))) #{tmp\ 4203}#) (let ((#{tmp\ 4208}# ($sc-dispatch #{tmp\ 4202}# '(any . each-any)))) (if #{tmp\ 4208}# (@apply (lambda (#{e1\ 4211}# #{e2\ 4212}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4209" "i4210")) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4209" "i4210")) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) (map list #{var\ 4191}# #{init\ 4192}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4209" "i4210")) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) #{e0\ 4194}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4209" "i4210")) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) (cons #{e1\ 4211}# #{e2\ 4212}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4209" "i4210")) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) (append #{c\ 4196}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4209" "i4210")) #(ribcage #(step) #((top)) #("i4200")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4185" "i4186" "i4187" "i4188" "i4189" "i4190")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4182"))) (hygiene guile)) #{step\ 4201}#))))))) #{tmp\ 4208}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4202}#))))))) #{tmp\ 4199}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4198}#))))) #{tmp\ 4184}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4183}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasicons\ 4236}# (lambda (#{x\ 4240}# #{y\ 4241}#) (let ((#{tmp\ 4245}# (list #{x\ 4240}# #{y\ 4241}#))) (let ((#{tmp\ 4246}# ($sc-dispatch #{tmp\ 4245}# (quote (any any))))) (if #{tmp\ 4246}# (@apply (lambda (#{x\ 4249}# #{y\ 4250}#) (let ((#{tmp\ 4251}# #{y\ 4250}#)) (let ((#{tmp\ 4252}# ($sc-dispatch #{tmp\ 4251}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) any)))) (if #{tmp\ 4252}# (@apply (lambda (#{dy\ 4254}#) (let ((#{tmp\ 4255}# #{x\ 4249}#)) (let ((#{tmp\ 4256}# ($sc-dispatch #{tmp\ 4255}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(dy) #((top)) #("i4253")) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) any)))) (if #{tmp\ 4256}# (@apply (lambda (#{dx\ 4258}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) #("i4257")) #(ribcage #(dy) #((top)) #("i4253")) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) (cons #{dx\ 4258}# #{dy\ 4254}#))) #{tmp\ 4256}#) (let ((#{_\ 4260}# #{tmp\ 4255}#)) (if (null? #{dy\ 4254}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) #("i4259")) #(ribcage #(dy) #((top)) #("i4253")) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{x\ 4249}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) #("i4259")) #(ribcage #(dy) #((top)) #("i4253")) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{x\ 4249}# #{y\ 4250}#))))))) #{tmp\ 4252}#) (let ((#{tmp\ 4261}# ($sc-dispatch #{tmp\ 4251}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) . any)))) (if #{tmp\ 4261}# (@apply (lambda (#{stuff\ 4263}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) #("i4262")) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) (cons #{x\ 4249}# #{stuff\ 4263}#))) #{tmp\ 4261}#) (let ((#{else\ 4265}# #{tmp\ 4251}#)) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) #("i4264")) #(ribcage #(x y) #((top) (top)) #("i4247" "i4248")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4242" "i4243")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{x\ 4249}# #{y\ 4250}#)))))))) #{tmp\ 4246}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4245}#)))))) (#{quasiappend\ 4237}# (lambda (#{x\ 4266}# #{y\ 4267}#) (let ((#{tmp\ 4271}# (list #{x\ 4266}# #{y\ 4267}#))) (let ((#{tmp\ 4272}# ($sc-dispatch #{tmp\ 4271}# (quote (any any))))) (if #{tmp\ 4272}# (@apply (lambda (#{x\ 4275}# #{y\ 4276}#) (let ((#{tmp\ 4277}# #{y\ 4276}#)) (let ((#{tmp\ 4278}# ($sc-dispatch #{tmp\ 4277}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4273" "i4274")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4268" "i4269")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) ())))) (if #{tmp\ 4278}# (@apply (lambda () #{x\ 4275}#) #{tmp\ 4278}#) (let ((#{_\ 4280}# #{tmp\ 4277}#)) (list '#(syntax-object append ((top) #(ribcage #(_) #((top)) #("i4279")) #(ribcage #(x y) #((top) (top)) #("i4273" "i4274")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4268" "i4269")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{x\ 4275}# #{y\ 4276}#)))))) #{tmp\ 4272}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4271}#)))))) (#{quasivector\ 4238}# (lambda (#{x\ 4281}#) (let ((#{tmp\ 4284}# #{x\ 4281}#)) (let ((#{x\ 4286}# #{tmp\ 4284}#)) (let ((#{tmp\ 4287}# #{x\ 4286}#)) (let ((#{tmp\ 4288}# ($sc-dispatch #{tmp\ 4287}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4285")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4282")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) each-any)))) (if #{tmp\ 4288}# (@apply (lambda (#{x\ 4290}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4289")) #(ribcage #(x) #((top)) #("i4285")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4282")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) (list->vector #{x\ 4290}#))) #{tmp\ 4288}#) (let ((#{tmp\ 4292}# ($sc-dispatch #{tmp\ 4287}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x) #((top)) #("i4285")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4282")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) . each-any)))) (if #{tmp\ 4292}# (@apply (lambda (#{x\ 4294}#) (cons '#(syntax-object vector ((top) #(ribcage #(x) #((top)) #("i4293")) #(ribcage #(x) #((top)) #("i4285")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4282")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{x\ 4294}#)) #{tmp\ 4292}#) (let ((#{_\ 4297}# #{tmp\ 4287}#)) (list '#(syntax-object list->vector ((top) #(ribcage #(_) #((top)) #("i4296")) #(ribcage #(x) #((top)) #("i4285")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4282")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{x\ 4286}#))))))))))) (#{quasi\ 4239}# (lambda (#{p\ 4298}# #{lev\ 4299}#) (let ((#{tmp\ 4302}# #{p\ 4298}#)) (let ((#{tmp\ 4303}# ($sc-dispatch #{tmp\ 4302}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) any)))) (if #{tmp\ 4303}# (@apply (lambda (#{p\ 4305}#) (if (= #{lev\ 4299}# 0) #{p\ 4305}# (#{quasicons\ 4236}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4304")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4304")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) (#{quasi\ 4239}# (list #{p\ 4305}#) (1- #{lev\ 4299}#))))) #{tmp\ 4303}#) (let ((#{tmp\ 4306}# ($sc-dispatch #{tmp\ 4302}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) . any)))) (if (if #{tmp\ 4306}# (@apply (lambda (#{args\ 4308}#) (= #{lev\ 4299}# 0)) #{tmp\ 4306}#) #f) (@apply (lambda (#{args\ 4310}#) (syntax-violation 'unquote "unquote takes exactly one argument" #{p\ 4298}# (cons '#(syntax-object unquote ((top) #(ribcage #(args) #((top)) #("i4309")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{args\ 4310}#))) #{tmp\ 4306}#) (let ((#{tmp\ 4311}# ($sc-dispatch #{tmp\ 4302}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) any) . any)))) (if #{tmp\ 4311}# (@apply (lambda (#{p\ 4314}# #{q\ 4315}#) (if (= #{lev\ 4299}# 0) (#{quasiappend\ 4237}# #{p\ 4314}# (#{quasi\ 4239}# #{q\ 4315}# #{lev\ 4299}#)) (#{quasicons\ 4236}# (#{quasicons\ 4236}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) #("i4312" "i4313")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4312" "i4313")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) (#{quasi\ 4239}# (list #{p\ 4314}#) (1- #{lev\ 4299}#))) (#{quasi\ 4239}# #{q\ 4315}# #{lev\ 4299}#)))) #{tmp\ 4311}#) (let ((#{tmp\ 4316}# ($sc-dispatch #{tmp\ 4302}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) . any) . any)))) (if (if #{tmp\ 4316}# (@apply (lambda (#{args\ 4319}# #{q\ 4320}#) (= #{lev\ 4299}# 0)) #{tmp\ 4316}#) #f) (@apply (lambda (#{args\ 4323}# #{q\ 4324}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" #{p\ 4298}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) #("i4321" "i4322")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{args\ 4323}#))) #{tmp\ 4316}#) (let ((#{tmp\ 4325}# ($sc-dispatch #{tmp\ 4302}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) any)))) (if #{tmp\ 4325}# (@apply (lambda (#{p\ 4327}#) (#{quasicons\ 4236}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4326")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4326")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile))) (#{quasi\ 4239}# (list #{p\ 4327}#) (1+ #{lev\ 4299}#)))) #{tmp\ 4325}#) (let ((#{tmp\ 4328}# ($sc-dispatch #{tmp\ 4302}# '(any . any)))) (if #{tmp\ 4328}# (@apply (lambda (#{p\ 4331}# #{q\ 4332}#) (#{quasicons\ 4236}# (#{quasi\ 4239}# #{p\ 4331}# #{lev\ 4299}#) (#{quasi\ 4239}# #{q\ 4332}# #{lev\ 4299}#))) #{tmp\ 4328}#) (let ((#{tmp\ 4333}# ($sc-dispatch #{tmp\ 4302}# '#(vector each-any)))) (if #{tmp\ 4333}# (@apply (lambda (#{x\ 4335}#) (#{quasivector\ 4238}# (#{quasi\ 4239}# #{x\ 4335}# #{lev\ 4299}#))) #{tmp\ 4333}#) (let ((#{p\ 4338}# #{tmp\ 4302}#)) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4337")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4300" "i4301")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4232" "i4233" "i4234" "i4235"))) (hygiene guile)) #{p\ 4338}#)))))))))))))))))))) (begin (lambda (#{x\ 4339}#) (let ((#{tmp\ 4341}# #{x\ 4339}#)) (let ((#{tmp\ 4342}# ($sc-dispatch #{tmp\ 4341}# (quote (_ any))))) (if #{tmp\ 4342}# (@apply (lambda (#{e\ 4344}#) (#{quasi\ 4239}# #{e\ 4344}# 0)) #{tmp\ 4342}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4341}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x\ 4345}#) (letrec* ((#{read-file\ 4348}# (lambda (#{fn\ 4349}# #{k\ 4350}#) (begin (let ((#{p\ 4354}# (open-input-file #{fn\ 4349}#))) (letrec* ((#{f\ 4358}# (lambda (#{x\ 4359}# #{result\ 4360}#) (if (eof-object? #{x\ 4359}#) (begin (close-input-port #{p\ 4354}#) (reverse #{result\ 4360}#)) (#{f\ 4358}# (read #{p\ 4354}#) (cons (datum->syntax #{k\ 4350}# #{x\ 4359}#) #{result\ 4360}#)))))) (begin (#{f\ 4358}# (read #{p\ 4354}#) (quote ()))))))))) (begin (let ((#{tmp\ 4361}# #{x\ 4345}#)) (let ((#{tmp\ 4362}# ($sc-dispatch #{tmp\ 4361}# (quote (any any))))) (if #{tmp\ 4362}# (@apply (lambda (#{k\ 4365}# #{filename\ 4366}#) (begin (let ((#{fn\ 4368}# (syntax->datum #{filename\ 4366}#))) (let ((#{tmp\ 4370}# (#{read-file\ 4348}# #{fn\ 4368}# #{filename\ 4366}#))) (let ((#{tmp\ 4371}# ($sc-dispatch #{tmp\ 4370}# 'each-any))) (if #{tmp\ 4371}# (@apply (lambda (#{exp\ 4373}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i4372")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4367")) #(ribcage #(k filename) #((top) (top)) #("i4363" "i4364")) #(ribcage (read-file) ((top)) ("i4347")) #(ribcage #(x) #((top)) #("i4346"))) (hygiene guile)) #{exp\ 4373}#)) #{tmp\ 4371}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4370}#))))))) #{tmp\ 4362}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4361}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x\ 4375}#) (let ((#{tmp\ 4377}# #{x\ 4375}#)) (let ((#{tmp\ 4378}# ($sc-dispatch #{tmp\ 4377}# (quote (any any))))) (if #{tmp\ 4378}# (@apply (lambda (#{k\ 4381}# #{filename\ 4382}#) (begin (let ((#{fn\ 4384}# (syntax->datum #{filename\ 4382}#))) (let ((#{tmp\ 4386}# (datum->syntax #{filename\ 4382}# (begin (let ((#{t\ 4391}# (%search-load-path #{fn\ 4384}#))) (if #{t\ 4391}# #{t\ 4391}# (syntax-violation 'include-from-path "file not found in path" #{x\ 4375}# #{filename\ 4382}#))))))) (let ((#{fn\ 4388}# #{tmp\ 4386}#)) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i4387")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4383")) #(ribcage #(k filename) #((top) (top)) #("i4379" "i4380")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4376"))) (hygiene guile)) #{fn\ 4388}#)))))) #{tmp\ 4378}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4377}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x\ 4393}#) (let ((#{tmp\ 4395}# #{x\ 4393}#)) (let ((#{tmp\ 4396}# ($sc-dispatch #{tmp\ 4395}# (quote (_ any))))) (if #{tmp\ 4396}# (@apply (lambda (#{e\ 4398}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 4393}#)) #{tmp\ 4396}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4395}#))))))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x\ 4399}#) (let ((#{tmp\ 4401}# #{x\ 4399}#)) (let ((#{tmp\ 4402}# ($sc-dispatch #{tmp\ 4401}# (quote (_ any))))) (if #{tmp\ 4402}# (@apply (lambda (#{e\ 4404}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 4399}#)) #{tmp\ 4402}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4401}#))))))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x\ 4405}#) (let ((#{tmp\ 4407}# #{x\ 4405}#)) (let ((#{tmp\ 4408}# ($sc-dispatch #{tmp\ 4407}# '(_ any any . each-any)))) (if #{tmp\ 4408}# (@apply (lambda (#{e\ 4412}# #{m1\ 4413}# #{m2\ 4414}#) (let ((#{tmp\ 4416}# (letrec* ((#{f\ 4422}# (lambda (#{clause\ 4423}# #{clauses\ 4424}#) (if (null? #{clauses\ 4424}#) (let ((#{tmp\ 4426}# #{clause\ 4423}#)) (let ((#{tmp\ 4427}# ($sc-dispatch #{tmp\ 4426}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile))) any . each-any)))) (if #{tmp\ 4427}# (@apply (lambda (#{e1\ 4430}# #{e2\ 4431}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4428" "i4429")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (cons #{e1\ 4430}# #{e2\ 4431}#))) #{tmp\ 4427}#) (let ((#{tmp\ 4433}# ($sc-dispatch #{tmp\ 4426}# '(each-any any . each-any)))) (if #{tmp\ 4433}# (@apply (lambda (#{k\ 4437}# #{e1\ 4438}# #{e2\ 4439}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4434" "i4435" "i4436")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4434" "i4435" "i4436")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4434" "i4435" "i4436")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4434" "i4435" "i4436")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) #{k\ 4437}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4434" "i4435" "i4436")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (cons #{e1\ 4438}# #{e2\ 4439}#)))) #{tmp\ 4433}#) (let ((#{_\ 4443}# #{tmp\ 4426}#)) (syntax-violation 'case "bad clause" #{x\ 4405}# #{clause\ 4423}#))))))) (let ((#{tmp\ 4445}# (#{f\ 4422}# (car #{clauses\ 4424}#) (cdr #{clauses\ 4424}#)))) (let ((#{rest\ 4447}# #{tmp\ 4445}#)) (let ((#{tmp\ 4448}# #{clause\ 4423}#)) (let ((#{tmp\ 4449}# ($sc-dispatch #{tmp\ 4448}# '(each-any any . each-any)))) (if #{tmp\ 4449}# (@apply (lambda (#{k\ 4453}# #{e1\ 4454}# #{e2\ 4455}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4450" "i4451" "i4452")) #(ribcage #(rest) #((top)) #("i4446")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4450" "i4451" "i4452")) #(ribcage #(rest) #((top)) #("i4446")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4450" "i4451" "i4452")) #(ribcage #(rest) #((top)) #("i4446")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4450" "i4451" "i4452")) #(ribcage #(rest) #((top)) #("i4446")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) #{k\ 4453}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4450" "i4451" "i4452")) #(ribcage #(rest) #((top)) #("i4446")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4419" "i4420" "i4421")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (cons #{e1\ 4454}# #{e2\ 4455}#)) #{rest\ 4447}#)) #{tmp\ 4449}#) (let ((#{_\ 4459}# #{tmp\ 4448}#)) (syntax-violation 'case "bad clause" #{x\ 4405}# #{clause\ 4423}#))))))))))) (begin (#{f\ 4422}# #{m1\ 4413}# #{m2\ 4414}#))))) (let ((#{body\ 4418}# #{tmp\ 4416}#)) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i4417")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i4417")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4406"))) (hygiene guile)) #{e\ 4412}#)) #{body\ 4418}#)))) #{tmp\ 4408}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4407}#))))))) (define make-variable-transformer (lambda (#{proc\ 4460}#) (if (procedure? #{proc\ 4460}#) (begin (letrec* ((#{trans\ 4463}# (lambda (#{x\ 4464}#) (#{proc\ 4460}# #{x\ 4464}#)))) (begin (set-procedure-property! #{trans\ 4463}# 'variable-transformer #t) #{trans\ 4463}#))) (error "variable transformer not a procedure" #{proc\ 4460}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x\ 4466}#) (let ((#{tmp\ 4468}# #{x\ 4466}#)) (let ((#{tmp\ 4469}# ($sc-dispatch #{tmp\ 4468}# (quote (_ any))))) (if #{tmp\ 4469}# (@apply (lambda (#{e\ 4471}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #{e\ 4471}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) (cons #{e\ 4471}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4470")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile))))))))) #{tmp\ 4469}#) (let ((#{tmp\ 4472}# ($sc-dispatch #{tmp\ 4468}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile))) any any) any))))) (if (if #{tmp\ 4472}# (@apply (lambda (#{id\ 4478}# #{exp1\ 4479}# #{var\ 4480}# #{val\ 4481}# #{exp2\ 4482}#) (if (identifier? #{id\ 4478}#) (identifier? #{var\ 4480}#) #f)) #{tmp\ 4472}#) #f) (@apply (lambda (#{id\ 4490}# #{exp1\ 4491}# #{var\ 4492}# #{val\ 4493}# #{exp2\ 4494}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #{var\ 4492}# #{val\ 4493}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #{exp2\ 4494}#)) (list (cons #{id\ 4490}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) (cons #{exp1\ 4491}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)))))) (list #{id\ 4490}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #{id\ 4490}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4485" "i4486" "i4487" "i4488" "i4489")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4467"))) (hygiene guile)) #{exp1\ 4491}#)))))) #{tmp\ 4472}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4468}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x\ 4495}#) (let ((#{tmp\ 4497}# #{x\ 4495}#)) (let ((#{tmp\ 4498}# ($sc-dispatch #{tmp\ 4497}# '(_ (any . any) any . each-any)))) (if #{tmp\ 4498}# (@apply (lambda (#{id\ 4503}# #{args\ 4504}# #{b0\ 4505}# #{b1\ 4506}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4499" "i4500" "i4501" "i4502")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) #{id\ 4503}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4499" "i4500" "i4501" "i4502")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) (cons #{args\ 4504}# (cons #{b0\ 4505}# #{b1\ 4506}#))))) #{tmp\ 4498}#) (let ((#{tmp\ 4508}# ($sc-dispatch #{tmp\ 4497}# (quote (_ any any))))) (if (if #{tmp\ 4508}# (@apply (lambda (#{id\ 4511}# #{val\ 4512}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4509" "i4510")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)))) #{tmp\ 4508}#) #f) (@apply (lambda (#{id\ 4515}# #{val\ 4516}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4513" "i4514")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) #{id\ 4515}# #{val\ 4516}#)) #{tmp\ 4508}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4497}#)))))))))