(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec* ((#{and-map*\ 37}# (lambda (#{f\ 201}# #{first\ 202}# . #{rest\ 203}#) (begin (let ((#{t\ 209}# (null? #{first\ 202}#))) (if #{t\ 209}# #{t\ 209}# (if (null? #{rest\ 203}#) (letrec* ((#{andmap\ 213}# (lambda (#{first\ 214}#) (begin (let ((#{x\ 217}# (car #{first\ 214}#)) (#{first\ 218}# (cdr #{first\ 214}#))) (if (null? #{first\ 218}#) (#{f\ 201}# #{x\ 217}#) (if (#{f\ 201}# #{x\ 217}#) (#{andmap\ 213}# #{first\ 218}#) #f))))))) (begin (#{andmap\ 213}# #{first\ 202}#))) (letrec* ((#{andmap\ 224}# (lambda (#{first\ 225}# #{rest\ 226}#) (begin (let ((#{x\ 231}# (car #{first\ 225}#)) (#{xr\ 232}# (map car #{rest\ 226}#)) (#{first\ 233}# (cdr #{first\ 225}#)) (#{rest\ 234}# (map cdr #{rest\ 226}#))) (if (null? #{first\ 233}#) (@apply #{f\ 201}# #{x\ 231}# #{xr\ 232}#) (if (@apply #{f\ 201}# #{x\ 231}# #{xr\ 232}#) (#{andmap\ 224}# #{first\ 233}# #{rest\ 234}#) #f))))))) (begin (#{andmap\ 224}# #{first\ 202}# #{rest\ 203}#)))))))))) (begin (let ((#{make-primitive-ref\ 243}# (if #f #f)) (#{fx+\ 282}# (if #f #f)) (#{fx-\ 284}# (if #f #f)) (#{fx=\ 286}# (if #f #f)) (#{fx<\ 288}# (if #f #f)) (#{set-syntax-object-expression!\ 353}# (if #f #f)) (#{set-syntax-object-wrap!\ 355}# (if #f #f)) (#{set-syntax-object-module!\ 357}# (if #f #f)) (#{ribcage?\ 399}# (if #f #f))) (letrec* ((#{make-void\ 239}# (lambda (#{src\ 751}#) (make-struct/no-tail (vector-ref %expanded-vtables 0) #{src\ 751}#))) (#{make-const\ 241}# (lambda (#{src\ 753}# #{exp\ 754}#) (make-struct/no-tail (vector-ref %expanded-vtables 1) #{src\ 753}# #{exp\ 754}#))) (#{make-lexical-ref\ 245}# (lambda (#{src\ 761}# #{name\ 762}# #{gensym\ 763}#) (make-struct/no-tail (vector-ref %expanded-vtables 3) #{src\ 761}# #{name\ 762}# #{gensym\ 763}#))) (#{make-lexical-set\ 247}# (lambda (#{src\ 767}# #{name\ 768}# #{gensym\ 769}# #{exp\ 770}#) (make-struct/no-tail (vector-ref %expanded-vtables 4) #{src\ 767}# #{name\ 768}# #{gensym\ 769}# #{exp\ 770}#))) (#{make-module-ref\ 249}# (lambda (#{src\ 775}# #{mod\ 776}# #{name\ 777}# #{public?\ 778}#) (make-struct/no-tail (vector-ref %expanded-vtables 5) #{src\ 775}# #{mod\ 776}# #{name\ 777}# #{public?\ 778}#))) (#{make-module-set\ 251}# (lambda (#{src\ 783}# #{mod\ 784}# #{name\ 785}# #{public?\ 786}# #{exp\ 787}#) (make-struct/no-tail (vector-ref %expanded-vtables 6) #{src\ 783}# #{mod\ 784}# #{name\ 785}# #{public?\ 786}# #{exp\ 787}#))) (#{make-toplevel-ref\ 253}# (lambda (#{src\ 793}# #{name\ 794}#) (make-struct/no-tail (vector-ref %expanded-vtables 7) #{src\ 793}# #{name\ 794}#))) (#{make-toplevel-set\ 255}# (lambda (#{src\ 797}# #{name\ 798}# #{exp\ 799}#) (make-struct/no-tail (vector-ref %expanded-vtables 8) #{src\ 797}# #{name\ 798}# #{exp\ 799}#))) (#{make-toplevel-define\ 257}# (lambda (#{src\ 803}# #{name\ 804}# #{exp\ 805}#) (make-struct/no-tail (vector-ref %expanded-vtables 9) #{src\ 803}# #{name\ 804}# #{exp\ 805}#))) (#{make-conditional\ 259}# (lambda (#{src\ 809}# #{test\ 810}# #{consequent\ 811}# #{alternate\ 812}#) (make-struct/no-tail (vector-ref %expanded-vtables 10) #{src\ 809}# #{test\ 810}# #{consequent\ 811}# #{alternate\ 812}#))) (#{make-application\ 261}# (lambda (#{src\ 817}# #{proc\ 818}# #{args\ 819}#) (make-struct/no-tail (vector-ref %expanded-vtables 11) #{src\ 817}# #{proc\ 818}# #{args\ 819}#))) (#{make-sequence\ 263}# (lambda (#{src\ 823}# #{exps\ 824}#) (make-struct/no-tail (vector-ref %expanded-vtables 12) #{src\ 823}# #{exps\ 824}#))) (#{make-lambda\ 265}# (lambda (#{src\ 827}# #{meta\ 828}# #{body\ 829}#) (make-struct/no-tail (vector-ref %expanded-vtables 13) #{src\ 827}# #{meta\ 828}# #{body\ 829}#))) (#{make-lambda-case\ 267}# (lambda (#{src\ 833}# #{req\ 834}# #{opt\ 835}# #{rest\ 836}# #{kw\ 837}# #{inits\ 838}# #{gensyms\ 839}# #{body\ 840}# #{alternate\ 841}#) (make-struct/no-tail (vector-ref %expanded-vtables 14) #{src\ 833}# #{req\ 834}# #{opt\ 835}# #{rest\ 836}# #{kw\ 837}# #{inits\ 838}# #{gensyms\ 839}# #{body\ 840}# #{alternate\ 841}#))) (#{make-let\ 269}# (lambda (#{src\ 851}# #{names\ 852}# #{gensyms\ 853}# #{vals\ 854}# #{body\ 855}#) (make-struct/no-tail (vector-ref %expanded-vtables 15) #{src\ 851}# #{names\ 852}# #{gensyms\ 853}# #{vals\ 854}# #{body\ 855}#))) (#{make-letrec\ 271}# (lambda (#{src\ 861}# #{in-order?\ 862}# #{names\ 863}# #{gensyms\ 864}# #{vals\ 865}# #{body\ 866}#) (make-struct/no-tail (vector-ref %expanded-vtables 16) #{src\ 861}# #{in-order?\ 862}# #{names\ 863}# #{gensyms\ 864}# #{vals\ 865}# #{body\ 866}#))) (#{make-dynlet\ 273}# (lambda (#{src\ 873}# #{fluids\ 874}# #{vals\ 875}# #{body\ 876}#) (make-struct/no-tail (vector-ref %expanded-vtables 17) #{src\ 873}# #{fluids\ 874}# #{vals\ 875}# #{body\ 876}#))) (#{lambda?\ 276}# (lambda (#{x\ 881}#) (if (struct? #{x\ 881}#) (eq? (struct-vtable #{x\ 881}#) (vector-ref %expanded-vtables 13)) #f))) (#{lambda-meta\ 278}# (lambda (#{x\ 885}#) (struct-ref #{x\ 885}# 1))) (#{set-lambda-meta!\ 280}# (lambda (#{x\ 887}# #{v\ 888}#) (struct-set! #{x\ 887}# 1 #{v\ 888}#))) (#{top-level-eval-hook\ 290}# (lambda (#{x\ 891}# #{mod\ 892}#) (primitive-eval #{x\ 891}#))) (#{local-eval-hook\ 292}# (lambda (#{x\ 895}# #{mod\ 896}#) (primitive-eval #{x\ 895}#))) (#{put-global-definition-hook\ 295}# (lambda (#{symbol\ 899}# #{type\ 900}# #{val\ 901}#) (module-define! (current-module) #{symbol\ 899}# (make-syntax-transformer #{symbol\ 899}# #{type\ 900}# #{val\ 901}#)))) (#{get-global-definition-hook\ 297}# (lambda (#{symbol\ 905}# #{module\ 906}#) (begin (if (if (not #{module\ 906}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol\ 905}#)) (begin (let ((#{v\ 912}# (module-variable (if #{module\ 906}# (resolve-module (cdr #{module\ 906}#)) (current-module)) #{symbol\ 905}#))) (if #{v\ 912}# (if (variable-bound? #{v\ 912}#) (begin (let ((#{val\ 917}# (variable-ref #{v\ 912}#))) (if (macro? #{val\ 917}#) (if (macro-type #{val\ 917}#) (cons (macro-type #{val\ 917}#) (macro-binding #{val\ 917}#)) #f) #f))) #f) #f)))))) (#{decorate-source\ 299}# (lambda (#{e\ 921}# #{s\ 922}#) (begin (if (if (pair? #{e\ 921}#) #{s\ 922}# #f) (set-source-properties! #{e\ 921}# #{s\ 922}#)) #{e\ 921}#))) (#{maybe-name-value!\ 301}# (lambda (#{name\ 927}# #{val\ 928}#) (if (#{lambda?\ 276}# #{val\ 928}#) (begin (let ((#{meta\ 932}# (#{lambda-meta\ 278}# #{val\ 928}#))) (if (not (assq 'name #{meta\ 932}#)) (#{set-lambda-meta!\ 280}# #{val\ 928}# (cons (cons 'name #{name\ 927}#) #{meta\ 932}#)))))))) (#{build-void\ 303}# (lambda (#{source\ 933}#) (#{make-void\ 239}# #{source\ 933}#))) (#{build-application\ 305}# (lambda (#{source\ 935}# #{fun-exp\ 936}# #{arg-exps\ 937}#) (#{make-application\ 261}# #{source\ 935}# #{fun-exp\ 936}# #{arg-exps\ 937}#))) (#{build-conditional\ 307}# (lambda (#{source\ 941}# #{test-exp\ 942}# #{then-exp\ 943}# #{else-exp\ 944}#) (#{make-conditional\ 259}# #{source\ 941}# #{test-exp\ 942}# #{then-exp\ 943}# #{else-exp\ 944}#))) (#{build-dynlet\ 309}# (lambda (#{source\ 949}# #{fluids\ 950}# #{vals\ 951}# #{body\ 952}#) (#{make-dynlet\ 273}# #{source\ 949}# #{fluids\ 950}# #{vals\ 951}# #{body\ 952}#))) (#{build-lexical-reference\ 311}# (lambda (#{type\ 957}# #{source\ 958}# #{name\ 959}# #{var\ 960}#) (#{make-lexical-ref\ 245}# #{source\ 958}# #{name\ 959}# #{var\ 960}#))) (#{build-lexical-assignment\ 313}# (lambda (#{source\ 965}# #{name\ 966}# #{var\ 967}# #{exp\ 968}#) (begin (#{maybe-name-value!\ 301}# #{name\ 966}# #{exp\ 968}#) (#{make-lexical-set\ 247}# #{source\ 965}# #{name\ 966}# #{var\ 967}# #{exp\ 968}#)))) (#{analyze-variable\ 315}# (lambda (#{mod\ 973}# #{var\ 974}# #{modref-cont\ 975}# #{bare-cont\ 976}#) (if (not #{mod\ 973}#) (#{bare-cont\ 976}# #{var\ 974}#) (begin (let ((#{kind\ 983}# (car #{mod\ 973}#)) (#{mod\ 984}# (cdr #{mod\ 973}#))) (if (eqv? #{kind\ 983}# 'public) (#{modref-cont\ 975}# #{mod\ 984}# #{var\ 974}# #t) (if (eqv? #{kind\ 983}# 'private) (if (not (equal? #{mod\ 984}# (module-name (current-module)))) (#{modref-cont\ 975}# #{mod\ 984}# #{var\ 974}# #f) (#{bare-cont\ 976}# #{var\ 974}#)) (if (eqv? #{kind\ 983}# 'bare) (#{bare-cont\ 976}# #{var\ 974}#) (if (eqv? #{kind\ 983}# 'hygiene) (if (if (not (equal? #{mod\ 984}# (module-name (current-module)))) (module-variable (resolve-module #{mod\ 984}#) #{var\ 974}#) #f) (#{modref-cont\ 975}# #{mod\ 984}# #{var\ 974}# #f) (#{bare-cont\ 976}# #{var\ 974}#)) (syntax-violation #f "bad module kind" #{var\ 974}# #{mod\ 984}#)))))))))) (#{build-global-reference\ 317}# (lambda (#{source\ 992}# #{var\ 993}# #{mod\ 994}#) (#{analyze-variable\ 315}# #{mod\ 994}# #{var\ 993}# (lambda (#{mod\ 998}# #{var\ 999}# #{public?\ 1000}#) (#{make-module-ref\ 249}# #{source\ 992}# #{mod\ 998}# #{var\ 999}# #{public?\ 1000}#)) (lambda (#{var\ 1004}#) (#{make-toplevel-ref\ 253}# #{source\ 992}# #{var\ 1004}#))))) (#{build-global-assignment\ 319}# (lambda (#{source\ 1006}# #{var\ 1007}# #{exp\ 1008}# #{mod\ 1009}#) (begin (#{maybe-name-value!\ 301}# #{var\ 1007}# #{exp\ 1008}#) (#{analyze-variable\ 315}# #{mod\ 1009}# #{var\ 1007}# (lambda (#{mod\ 1014}# #{var\ 1015}# #{public?\ 1016}#) (#{make-module-set\ 251}# #{source\ 1006}# #{mod\ 1014}# #{var\ 1015}# #{public?\ 1016}# #{exp\ 1008}#)) (lambda (#{var\ 1020}#) (#{make-toplevel-set\ 255}# #{source\ 1006}# #{var\ 1020}# #{exp\ 1008}#)))))) (#{build-global-definition\ 321}# (lambda (#{source\ 1022}# #{var\ 1023}# #{exp\ 1024}#) (begin (#{maybe-name-value!\ 301}# #{var\ 1023}# #{exp\ 1024}#) (#{make-toplevel-define\ 257}# #{source\ 1022}# #{var\ 1023}# #{exp\ 1024}#)))) (#{build-simple-lambda\ 323}# (lambda (#{src\ 1028}# #{req\ 1029}# #{rest\ 1030}# #{vars\ 1031}# #{meta\ 1032}# #{exp\ 1033}#) (#{make-lambda\ 265}# #{src\ 1028}# #{meta\ 1032}# (#{make-lambda-case\ 267}# #{src\ 1028}# #{req\ 1029}# #f #{rest\ 1030}# #f '() #{vars\ 1031}# #{exp\ 1033}# #f)))) (#{build-case-lambda\ 325}# (lambda (#{src\ 1040}# #{meta\ 1041}# #{body\ 1042}#) (#{make-lambda\ 265}# #{src\ 1040}# #{meta\ 1041}# #{body\ 1042}#))) (#{build-lambda-case\ 327}# (lambda (#{src\ 1046}# #{req\ 1047}# #{opt\ 1048}# #{rest\ 1049}# #{kw\ 1050}# #{inits\ 1051}# #{vars\ 1052}# #{body\ 1053}# #{else-case\ 1054}#) (#{make-lambda-case\ 267}# #{src\ 1046}# #{req\ 1047}# #{opt\ 1048}# #{rest\ 1049}# #{kw\ 1050}# #{inits\ 1051}# #{vars\ 1052}# #{body\ 1053}# #{else-case\ 1054}#))) (#{build-primref\ 329}# (lambda (#{src\ 1064}# #{name\ 1065}#) (if (equal? (module-name (current-module)) '(guile)) (#{make-toplevel-ref\ 253}# #{src\ 1064}# #{name\ 1065}#) (#{make-module-ref\ 249}# #{src\ 1064}# '(guile) #{name\ 1065}# #f)))) (#{build-data\ 331}# (lambda (#{src\ 1068}# #{exp\ 1069}#) (#{make-const\ 241}# #{src\ 1068}# #{exp\ 1069}#))) (#{build-sequence\ 333}# (lambda (#{src\ 1072}# #{exps\ 1073}#) (if (null? (cdr #{exps\ 1073}#)) (car #{exps\ 1073}#) (#{make-sequence\ 263}# #{src\ 1072}# #{exps\ 1073}#)))) (#{build-let\ 335}# (lambda (#{src\ 1076}# #{ids\ 1077}# #{vars\ 1078}# #{val-exps\ 1079}# #{body-exp\ 1080}#) (begin (for-each #{maybe-name-value!\ 301}# #{ids\ 1077}# #{val-exps\ 1079}#) (if (null? #{vars\ 1078}#) #{body-exp\ 1080}# (#{make-let\ 269}# #{src\ 1076}# #{ids\ 1077}# #{vars\ 1078}# #{val-exps\ 1079}# #{body-exp\ 1080}#))))) (#{build-named-let\ 337}# (lambda (#{src\ 1086}# #{ids\ 1087}# #{vars\ 1088}# #{val-exps\ 1089}# #{body-exp\ 1090}#) (begin (let ((#{f\ 1100}# (car #{vars\ 1088}#)) (#{f-name\ 1101}# (car #{ids\ 1087}#)) (#{vars\ 1102}# (cdr #{vars\ 1088}#)) (#{ids\ 1103}# (cdr #{ids\ 1087}#))) (begin (let ((#{proc\ 1105}# (#{build-simple-lambda\ 323}# #{src\ 1086}# #{ids\ 1103}# #f #{vars\ 1102}# '() #{body-exp\ 1090}#))) (begin (#{maybe-name-value!\ 301}# #{f-name\ 1101}# #{proc\ 1105}#) (for-each #{maybe-name-value!\ 301}# #{ids\ 1103}# #{val-exps\ 1089}#) (#{make-letrec\ 271}# #{src\ 1086}# #f (list #{f-name\ 1101}#) (list #{f\ 1100}#) (list #{proc\ 1105}#) (#{build-application\ 305}# #{src\ 1086}# (#{build-lexical-reference\ 311}# 'fun #{src\ 1086}# #{f-name\ 1101}# #{f\ 1100}#) #{val-exps\ 1089}#))))))))) (#{build-letrec\ 339}# (lambda (#{src\ 1106}# #{in-order?\ 1107}# #{ids\ 1108}# #{vars\ 1109}# #{val-exps\ 1110}# #{body-exp\ 1111}#) (if (null? #{vars\ 1109}#) #{body-exp\ 1111}# (begin (for-each #{maybe-name-value!\ 301}# #{ids\ 1108}# #{val-exps\ 1110}#) (#{make-letrec\ 271}# #{src\ 1106}# #{in-order?\ 1107}# #{ids\ 1108}# #{vars\ 1109}# #{val-exps\ 1110}# #{body-exp\ 1111}#))))) (#{make-syntax-object\ 343}# (lambda (#{expression\ 1118}# #{wrap\ 1119}# #{module\ 1120}#) (vector 'syntax-object #{expression\ 1118}# #{wrap\ 1119}# #{module\ 1120}#))) (#{syntax-object?\ 345}# (lambda (#{x\ 1124}#) (if (vector? #{x\ 1124}#) (if (= (vector-length #{x\ 1124}#) 4) (eq? (vector-ref #{x\ 1124}# 0) 'syntax-object) #f) #f))) (#{syntax-object-expression\ 347}# (lambda (#{x\ 1129}#) (vector-ref #{x\ 1129}# 1))) (#{syntax-object-wrap\ 349}# (lambda (#{x\ 1131}#) (vector-ref #{x\ 1131}# 2))) (#{syntax-object-module\ 351}# (lambda (#{x\ 1133}#) (vector-ref #{x\ 1133}# 3))) (#{source-annotation\ 360}# (lambda (#{x\ 1147}#) (if (#{syntax-object?\ 345}# #{x\ 1147}#) (#{source-annotation\ 360}# (#{syntax-object-expression\ 347}# #{x\ 1147}#)) (if (pair? #{x\ 1147}#) (begin (let ((#{props\ 1154}# (source-properties #{x\ 1147}#))) (if (pair? #{props\ 1154}#) #{props\ 1154}# #f))) #f)))) (#{extend-env\ 367}# (lambda (#{labels\ 1156}# #{bindings\ 1157}# #{r\ 1158}#) (if (null? #{labels\ 1156}#) #{r\ 1158}# (#{extend-env\ 367}# (cdr #{labels\ 1156}#) (cdr #{bindings\ 1157}#) (cons (cons (car #{labels\ 1156}#) (car #{bindings\ 1157}#)) #{r\ 1158}#))))) (#{extend-var-env\ 369}# (lambda (#{labels\ 1162}# #{vars\ 1163}# #{r\ 1164}#) (if (null? #{labels\ 1162}#) #{r\ 1164}# (#{extend-var-env\ 369}# (cdr #{labels\ 1162}#) (cdr #{vars\ 1163}#) (cons (cons (car #{labels\ 1162}#) (cons 'lexical (car #{vars\ 1163}#))) #{r\ 1164}#))))) (#{macros-only-env\ 371}# (lambda (#{r\ 1169}#) (if (null? #{r\ 1169}#) '() (begin (let ((#{a\ 1172}# (car #{r\ 1169}#))) (if (eq? (car (cdr #{a\ 1172}#)) 'macro) (cons #{a\ 1172}# (#{macros-only-env\ 371}# (cdr #{r\ 1169}#))) (#{macros-only-env\ 371}# (cdr #{r\ 1169}#)))))))) (#{lookup\ 373}# (lambda (#{x\ 1173}# #{r\ 1174}# #{mod\ 1175}#) (begin (let ((#{t\ 1181}# (assq #{x\ 1173}# #{r\ 1174}#))) (if #{t\ 1181}# (cdr #{t\ 1181}#) (if (symbol? #{x\ 1173}#) (begin (let ((#{t\ 1187}# (#{get-global-definition-hook\ 297}# #{x\ 1173}# #{mod\ 1175}#))) (if #{t\ 1187}# #{t\ 1187}# '(global)))) '(displaced-lexical))))))) (#{global-extend\ 375}# (lambda (#{type\ 1192}# #{sym\ 1193}# #{val\ 1194}#) (#{put-global-definition-hook\ 295}# #{sym\ 1193}# #{type\ 1192}# #{val\ 1194}#))) (#{nonsymbol-id?\ 377}# (lambda (#{x\ 1198}#) (if (#{syntax-object?\ 345}# #{x\ 1198}#) (symbol? (#{syntax-object-expression\ 347}# #{x\ 1198}#)) #f))) (#{id?\ 379}# (lambda (#{x\ 1202}#) (if (symbol? #{x\ 1202}#) #t (if (#{syntax-object?\ 345}# #{x\ 1202}#) (symbol? (#{syntax-object-expression\ 347}# #{x\ 1202}#)) #f)))) (#{id-sym-name&marks\ 382}# (lambda (#{x\ 1209}# #{w\ 1210}#) (if (#{syntax-object?\ 345}# #{x\ 1209}#) (values (#{syntax-object-expression\ 347}# #{x\ 1209}#) (#{join-marks\ 429}# (car #{w\ 1210}#) (car (#{syntax-object-wrap\ 349}# #{x\ 1209}#)))) (values #{x\ 1209}# (car #{w\ 1210}#))))) (#{gen-label\ 392}# (lambda () (symbol->string (gensym "i")))) (#{gen-labels\ 394}# (lambda (#{ls\ 1216}#) (if (null? #{ls\ 1216}#) '() (cons (#{gen-label\ 392}#) (#{gen-labels\ 394}# (cdr #{ls\ 1216}#)))))) (#{make-ribcage\ 397}# (lambda (#{symnames\ 1218}# #{marks\ 1219}# #{labels\ 1220}#) (vector 'ribcage #{symnames\ 1218}# #{marks\ 1219}# #{labels\ 1220}#))) (#{ribcage-symnames\ 401}# (lambda (#{x\ 1229}#) (vector-ref #{x\ 1229}# 1))) (#{ribcage-marks\ 403}# (lambda (#{x\ 1231}#) (vector-ref #{x\ 1231}# 2))) (#{ribcage-labels\ 405}# (lambda (#{x\ 1233}#) (vector-ref #{x\ 1233}# 3))) (#{set-ribcage-symnames!\ 407}# (lambda (#{x\ 1235}# #{update\ 1236}#) (vector-set! #{x\ 1235}# 1 #{update\ 1236}#))) (#{set-ribcage-marks!\ 409}# (lambda (#{x\ 1239}# #{update\ 1240}#) (vector-set! #{x\ 1239}# 2 #{update\ 1240}#))) (#{set-ribcage-labels!\ 411}# (lambda (#{x\ 1243}# #{update\ 1244}#) (vector-set! #{x\ 1243}# 3 #{update\ 1244}#))) (#{anti-mark\ 417}# (lambda (#{w\ 1247}#) (cons (cons #f (car #{w\ 1247}#)) (cons 'shift (cdr #{w\ 1247}#))))) (#{extend-ribcage!\ 421}# (lambda (#{ribcage\ 1253}# #{id\ 1254}# #{label\ 1255}#) (begin (#{set-ribcage-symnames!\ 407}# #{ribcage\ 1253}# (cons (#{syntax-object-expression\ 347}# #{id\ 1254}#) (#{ribcage-symnames\ 401}# #{ribcage\ 1253}#))) (#{set-ribcage-marks!\ 409}# #{ribcage\ 1253}# (cons (car (#{syntax-object-wrap\ 349}# #{id\ 1254}#)) (#{ribcage-marks\ 403}# #{ribcage\ 1253}#))) (#{set-ribcage-labels!\ 411}# #{ribcage\ 1253}# (cons #{label\ 1255}# (#{ribcage-labels\ 405}# #{ribcage\ 1253}#)))))) (#{make-binding-wrap\ 423}# (lambda (#{ids\ 1260}# #{labels\ 1261}# #{w\ 1262}#) (if (null? #{ids\ 1260}#) #{w\ 1262}# (cons (car #{w\ 1262}#) (cons (begin (let ((#{labelvec\ 1269}# (list->vector #{labels\ 1261}#))) (begin (let ((#{n\ 1271}# (vector-length #{labelvec\ 1269}#))) (begin (let ((#{symnamevec\ 1274}# (make-vector #{n\ 1271}#)) (#{marksvec\ 1275}# (make-vector #{n\ 1271}#))) (begin (letrec* ((#{f\ 1279}# (lambda (#{ids\ 1280}# #{i\ 1281}#) (if (not (null? #{ids\ 1280}#)) (call-with-values (lambda () (#{id-sym-name&marks\ 382}# (car #{ids\ 1280}#) #{w\ 1262}#)) (lambda (#{symname\ 1282}# #{marks\ 1283}#) (begin (vector-set! #{symnamevec\ 1274}# #{i\ 1281}# #{symname\ 1282}#) (vector-set! #{marksvec\ 1275}# #{i\ 1281}# #{marks\ 1283}#) (#{f\ 1279}# (cdr #{ids\ 1280}#) (#{fx+\ 282}# #{i\ 1281}# 1))))))))) (begin (#{f\ 1279}# #{ids\ 1260}# 0))) (#{make-ribcage\ 397}# #{symnamevec\ 1274}# #{marksvec\ 1275}# #{labelvec\ 1269}#)))))))) (cdr #{w\ 1262}#)))))) (#{smart-append\ 425}# (lambda (#{m1\ 1287}# #{m2\ 1288}#) (if (null? #{m2\ 1288}#) #{m1\ 1287}# (append #{m1\ 1287}# #{m2\ 1288}#)))) (#{join-wraps\ 427}# (lambda (#{w1\ 1291}# #{w2\ 1292}#) (begin (let ((#{m1\ 1297}# (car #{w1\ 1291}#)) (#{s1\ 1298}# (cdr #{w1\ 1291}#))) (if (null? #{m1\ 1297}#) (if (null? #{s1\ 1298}#) #{w2\ 1292}# (cons (car #{w2\ 1292}#) (#{smart-append\ 425}# #{s1\ 1298}# (cdr #{w2\ 1292}#)))) (cons (#{smart-append\ 425}# #{m1\ 1297}# (car #{w2\ 1292}#)) (#{smart-append\ 425}# #{s1\ 1298}# (cdr #{w2\ 1292}#)))))))) (#{join-marks\ 429}# (lambda (#{m1\ 1307}# #{m2\ 1308}#) (#{smart-append\ 425}# #{m1\ 1307}# #{m2\ 1308}#))) (#{same-marks?\ 431}# (lambda (#{x\ 1311}# #{y\ 1312}#) (begin (let ((#{t\ 1317}# (eq? #{x\ 1311}# #{y\ 1312}#))) (if #{t\ 1317}# #{t\ 1317}# (if (not (null? #{x\ 1311}#)) (if (not (null? #{y\ 1312}#)) (if (eq? (car #{x\ 1311}#) (car #{y\ 1312}#)) (#{same-marks?\ 431}# (cdr #{x\ 1311}#) (cdr #{y\ 1312}#)) #f) #f) #f)))))) (#{id-var-name\ 433}# (lambda (#{id\ 1323}# #{w\ 1324}#) (letrec* ((#{search\ 1329}# (lambda (#{sym\ 1345}# #{subst\ 1346}# #{marks\ 1347}#) (if (null? #{subst\ 1346}#) (values #f #{marks\ 1347}#) (begin (let ((#{fst\ 1352}# (car #{subst\ 1346}#))) (if (eq? #{fst\ 1352}# 'shift) (#{search\ 1329}# #{sym\ 1345}# (cdr #{subst\ 1346}#) (cdr #{marks\ 1347}#)) (begin (let ((#{symnames\ 1354}# (#{ribcage-symnames\ 401}# #{fst\ 1352}#))) (if (vector? #{symnames\ 1354}#) (#{search-vector-rib\ 1333}# #{sym\ 1345}# #{subst\ 1346}# #{marks\ 1347}# #{symnames\ 1354}# #{fst\ 1352}#) (#{search-list-rib\ 1331}# #{sym\ 1345}# #{subst\ 1346}# #{marks\ 1347}# #{symnames\ 1354}# #{fst\ 1352}#)))))))))) (#{search-list-rib\ 1331}# (lambda (#{sym\ 1355}# #{subst\ 1356}# #{marks\ 1357}# #{symnames\ 1358}# #{ribcage\ 1359}#) (letrec* ((#{f\ 1368}# (lambda (#{symnames\ 1369}# #{i\ 1370}#) (if (null? #{symnames\ 1369}#) (#{search\ 1329}# #{sym\ 1355}# (cdr #{subst\ 1356}#) #{marks\ 1357}#) (if (if (eq? (car #{symnames\ 1369}#) #{sym\ 1355}#) (#{same-marks?\ 431}# #{marks\ 1357}# (list-ref (#{ribcage-marks\ 403}# #{ribcage\ 1359}#) #{i\ 1370}#)) #f) (values (list-ref (#{ribcage-labels\ 405}# #{ribcage\ 1359}#) #{i\ 1370}#) #{marks\ 1357}#) (#{f\ 1368}# (cdr #{symnames\ 1369}#) (#{fx+\ 282}# #{i\ 1370}# 1))))))) (begin (#{f\ 1368}# #{symnames\ 1358}# 0))))) (#{search-vector-rib\ 1333}# (lambda (#{sym\ 1378}# #{subst\ 1379}# #{marks\ 1380}# #{symnames\ 1381}# #{ribcage\ 1382}#) (begin (let ((#{n\ 1389}# (vector-length #{symnames\ 1381}#))) (letrec* ((#{f\ 1392}# (lambda (#{i\ 1393}#) (if (#{fx=\ 286}# #{i\ 1393}# #{n\ 1389}#) (#{search\ 1329}# #{sym\ 1378}# (cdr #{subst\ 1379}#) #{marks\ 1380}#) (if (if (eq? (vector-ref #{symnames\ 1381}# #{i\ 1393}#) #{sym\ 1378}#) (#{same-marks?\ 431}# #{marks\ 1380}# (vector-ref (#{ribcage-marks\ 403}# #{ribcage\ 1382}#) #{i\ 1393}#)) #f) (values (vector-ref (#{ribcage-labels\ 405}# #{ribcage\ 1382}#) #{i\ 1393}#) #{marks\ 1380}#) (#{f\ 1392}# (#{fx+\ 282}# #{i\ 1393}# 1))))))) (begin (#{f\ 1392}# 0)))))))) (begin (if (symbol? #{id\ 1323}#) (begin (let ((#{t\ 1403}# (call-with-values (lambda () (#{search\ 1329}# #{id\ 1323}# (cdr #{w\ 1324}#) (car #{w\ 1324}#))) (lambda (#{x\ 1407}# . #{ignore\ 1408}#) #{x\ 1407}#)))) (if #{t\ 1403}# #{t\ 1403}# #{id\ 1323}#))) (if (#{syntax-object?\ 345}# #{id\ 1323}#) (begin (let ((#{id\ 1416}# (#{syntax-object-expression\ 347}# #{id\ 1323}#)) (#{w1\ 1417}# (#{syntax-object-wrap\ 349}# #{id\ 1323}#))) (begin (let ((#{marks\ 1419}# (#{join-marks\ 429}# (car #{w\ 1324}#) (car #{w1\ 1417}#)))) (call-with-values (lambda () (#{search\ 1329}# #{id\ 1416}# (cdr #{w\ 1324}#) #{marks\ 1419}#)) (lambda (#{new-id\ 1423}# #{marks\ 1424}#) (begin (let ((#{t\ 1429}# #{new-id\ 1423}#)) (if #{t\ 1429}# #{t\ 1429}# (begin (let ((#{t\ 1432}# (call-with-values (lambda () (#{search\ 1329}# #{id\ 1416}# (cdr #{w1\ 1417}#) #{marks\ 1424}#)) (lambda (#{x\ 1435}# . #{ignore\ 1436}#) #{x\ 1435}#)))) (if #{t\ 1432}# #{t\ 1432}# #{id\ 1416}#)))))))))))) (syntax-violation 'id-var-name "invalid id" #{id\ 1323}#))))))) (#{free-id=?\ 435}# (lambda (#{i\ 1441}# #{j\ 1442}#) (if (eq? (begin (let ((#{x\ 1448}# #{i\ 1441}#)) (if (#{syntax-object?\ 345}# #{x\ 1448}#) (#{syntax-object-expression\ 347}# #{x\ 1448}#) #{x\ 1448}#))) (begin (let ((#{x\ 1451}# #{j\ 1442}#)) (if (#{syntax-object?\ 345}# #{x\ 1451}#) (#{syntax-object-expression\ 347}# #{x\ 1451}#) #{x\ 1451}#)))) (eq? (#{id-var-name\ 433}# #{i\ 1441}# '(())) (#{id-var-name\ 433}# #{j\ 1442}# '(()))) #f))) (#{bound-id=?\ 437}# (lambda (#{i\ 1455}# #{j\ 1456}#) (if (if (#{syntax-object?\ 345}# #{i\ 1455}#) (#{syntax-object?\ 345}# #{j\ 1456}#) #f) (if (eq? (#{syntax-object-expression\ 347}# #{i\ 1455}#) (#{syntax-object-expression\ 347}# #{j\ 1456}#)) (#{same-marks?\ 431}# (car (#{syntax-object-wrap\ 349}# #{i\ 1455}#)) (car (#{syntax-object-wrap\ 349}# #{j\ 1456}#))) #f) (eq? #{i\ 1455}# #{j\ 1456}#)))) (#{valid-bound-ids?\ 439}# (lambda (#{ids\ 1465}#) (if (letrec* ((#{all-ids?\ 1470}# (lambda (#{ids\ 1471}#) (begin (let ((#{t\ 1474}# (null? #{ids\ 1471}#))) (if #{t\ 1474}# #{t\ 1474}# (if (#{id?\ 379}# (car #{ids\ 1471}#)) (#{all-ids?\ 1470}# (cdr #{ids\ 1471}#)) #f))))))) (begin (#{all-ids?\ 1470}# #{ids\ 1465}#))) (#{distinct-bound-ids?\ 441}# #{ids\ 1465}#) #f))) (#{distinct-bound-ids?\ 441}# (lambda (#{ids\ 1479}#) (letrec* ((#{distinct?\ 1483}# (lambda (#{ids\ 1484}#) (begin (let ((#{t\ 1487}# (null? #{ids\ 1484}#))) (if #{t\ 1487}# #{t\ 1487}# (if (not (#{bound-id-member?\ 443}# (car #{ids\ 1484}#) (cdr #{ids\ 1484}#))) (#{distinct?\ 1483}# (cdr #{ids\ 1484}#)) #f))))))) (begin (#{distinct?\ 1483}# #{ids\ 1479}#))))) (#{bound-id-member?\ 443}# (lambda (#{x\ 1491}# #{list\ 1492}#) (if (not (null? #{list\ 1492}#)) (begin (let ((#{t\ 1499}# (#{bound-id=?\ 437}# #{x\ 1491}# (car #{list\ 1492}#)))) (if #{t\ 1499}# #{t\ 1499}# (#{bound-id-member?\ 443}# #{x\ 1491}# (cdr #{list\ 1492}#))))) #f))) (#{wrap\ 445}# (lambda (#{x\ 1501}# #{w\ 1502}# #{defmod\ 1503}#) (if (if (null? (car #{w\ 1502}#)) (null? (cdr #{w\ 1502}#)) #f) #{x\ 1501}# (if (#{syntax-object?\ 345}# #{x\ 1501}#) (#{make-syntax-object\ 343}# (#{syntax-object-expression\ 347}# #{x\ 1501}#) (#{join-wraps\ 427}# #{w\ 1502}# (#{syntax-object-wrap\ 349}# #{x\ 1501}#)) (#{syntax-object-module\ 351}# #{x\ 1501}#)) (if (null? #{x\ 1501}#) #{x\ 1501}# (#{make-syntax-object\ 343}# #{x\ 1501}# #{w\ 1502}# #{defmod\ 1503}#)))))) (#{source-wrap\ 447}# (lambda (#{x\ 1518}# #{w\ 1519}# #{s\ 1520}# #{defmod\ 1521}#) (#{wrap\ 445}# (#{decorate-source\ 299}# #{x\ 1518}# #{s\ 1520}#) #{w\ 1519}# #{defmod\ 1521}#))) (#{chi-sequence\ 449}# (lambda (#{body\ 1526}# #{r\ 1527}# #{w\ 1528}# #{s\ 1529}# #{mod\ 1530}#) (#{build-sequence\ 333}# #{s\ 1529}# (letrec* ((#{dobody\ 1541}# (lambda (#{body\ 1542}# #{r\ 1543}# #{w\ 1544}# #{mod\ 1545}#) (if (null? #{body\ 1542}#) '() (begin (let ((#{first\ 1547}# (#{chi\ 461}# (car #{body\ 1542}#) #{r\ 1543}# #{w\ 1544}# #{mod\ 1545}#))) (cons #{first\ 1547}# (#{dobody\ 1541}# (cdr #{body\ 1542}#) #{r\ 1543}# #{w\ 1544}# #{mod\ 1545}#)))))))) (begin (#{dobody\ 1541}# #{body\ 1526}# #{r\ 1527}# #{w\ 1528}# #{mod\ 1530}#)))))) (#{chi-top-sequence\ 451}# (lambda (#{body\ 1548}# #{r\ 1549}# #{w\ 1550}# #{s\ 1551}# #{m\ 1552}# #{esew\ 1553}# #{mod\ 1554}#) (#{build-sequence\ 333}# #{s\ 1551}# (letrec* ((#{dobody\ 1570}# (lambda (#{body\ 1571}# #{r\ 1572}# #{w\ 1573}# #{m\ 1574}# #{esew\ 1575}# #{mod\ 1576}# #{out\ 1577}#) (if (null? #{body\ 1571}#) (reverse #{out\ 1577}#) (#{dobody\ 1570}# (cdr #{body\ 1571}#) #{r\ 1572}# #{w\ 1573}# #{m\ 1574}# #{esew\ 1575}# #{mod\ 1576}# (cons (#{chi-top\ 459}# (car #{body\ 1571}#) #{r\ 1572}# #{w\ 1573}# #{m\ 1574}# #{esew\ 1575}# #{mod\ 1576}#) #{out\ 1577}#)))))) (begin (#{dobody\ 1570}# #{body\ 1548}# #{r\ 1549}# #{w\ 1550}# #{m\ 1552}# #{esew\ 1553}# #{mod\ 1554}# '())))))) (#{chi-install-global\ 453}# (lambda (#{name\ 1578}# #{e\ 1579}#) (#{build-global-definition\ 321}# #f #{name\ 1578}# (#{build-application\ 305}# #f (#{build-primref\ 329}# #f 'make-syntax-transformer) (list (#{build-data\ 331}# #f #{name\ 1578}#) (#{build-data\ 331}# #f 'macro) #{e\ 1579}#))))) (#{chi-when-list\ 455}# (lambda (#{e\ 1587}# #{when-list\ 1588}# #{w\ 1589}#) (letrec* ((#{f\ 1596}# (lambda (#{when-list\ 1597}# #{situations\ 1598}#) (if (null? #{when-list\ 1597}#) #{situations\ 1598}# (#{f\ 1596}# (cdr #{when-list\ 1597}#) (cons (begin (let ((#{x\ 1600}# (car #{when-list\ 1597}#))) (if (#{free-id=?\ 435}# #{x\ 1600}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1599")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1593" "i1594" "i1595")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1590" "i1591" "i1592")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) 'compile (if (#{free-id=?\ 435}# #{x\ 1600}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1599")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1593" "i1594" "i1595")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1590" "i1591" "i1592")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) 'load (if (#{free-id=?\ 435}# #{x\ 1600}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1599")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1593" "i1594" "i1595")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1590" "i1591" "i1592")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) 'eval (if (#{free-id=?\ 435}# #{x\ 1600}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1599")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1593" "i1594" "i1595")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1590" "i1591" "i1592")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e\ 1587}# (#{wrap\ 445}# #{x\ 1600}# #{w\ 1589}# #f)))))))) #{situations\ 1598}#)))))) (begin (#{f\ 1596}# #{when-list\ 1588}# '()))))) (#{syntax-type\ 457}# (lambda (#{e\ 1610}# #{r\ 1611}# #{w\ 1612}# #{s\ 1613}# #{rib\ 1614}# #{mod\ 1615}# #{for-car?\ 1616}#) (if (symbol? #{e\ 1610}#) (begin (let ((#{n\ 1628}# (#{id-var-name\ 433}# #{e\ 1610}# #{w\ 1612}#))) (begin (let ((#{b\ 1630}# (#{lookup\ 373}# #{n\ 1628}# #{r\ 1611}# #{mod\ 1615}#))) (begin (let ((#{type\ 1632}# (car #{b\ 1630}#))) (if (eqv? #{type\ 1632}# 'lexical) (values #{type\ 1632}# (cdr #{b\ 1630}#) #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{type\ 1632}# 'global) (values #{type\ 1632}# #{n\ 1628}# #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{type\ 1632}# 'macro) (if #{for-car?\ 1616}# (values #{type\ 1632}# (cdr #{b\ 1630}#) #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (#{syntax-type\ 457}# (#{chi-macro\ 467}# (cdr #{b\ 1630}#) #{e\ 1610}# #{r\ 1611}# #{w\ 1612}# #{s\ 1613}# #{rib\ 1614}# #{mod\ 1615}#) #{r\ 1611}# '(()) #{s\ 1613}# #{rib\ 1614}# #{mod\ 1615}# #f)) (values #{type\ 1632}# (cdr #{b\ 1630}#) #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#)))))))))) (if (pair? #{e\ 1610}#) (begin (let ((#{first\ 1646}# (car #{e\ 1610}#))) (call-with-values (lambda () (#{syntax-type\ 457}# #{first\ 1646}# #{r\ 1611}# #{w\ 1612}# #{s\ 1613}# #{rib\ 1614}# #{mod\ 1615}# #t)) (lambda (#{ftype\ 1647}# #{fval\ 1648}# #{fe\ 1649}# #{fw\ 1650}# #{fs\ 1651}# #{fmod\ 1652}#) (if (eqv? #{ftype\ 1647}# 'lexical) (values 'lexical-call #{fval\ 1648}# #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{ftype\ 1647}# 'global) (values 'global-call (#{make-syntax-object\ 343}# #{fval\ 1648}# #{w\ 1612}# #{fmod\ 1652}#) #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{ftype\ 1647}# 'macro) (#{syntax-type\ 457}# (#{chi-macro\ 467}# #{fval\ 1648}# #{e\ 1610}# #{r\ 1611}# #{w\ 1612}# #{s\ 1613}# #{rib\ 1614}# #{mod\ 1615}#) #{r\ 1611}# '(()) #{s\ 1613}# #{rib\ 1614}# #{mod\ 1615}# #{for-car?\ 1616}#) (if (eqv? #{ftype\ 1647}# 'module-ref) (call-with-values (lambda () (#{fval\ 1648}# #{e\ 1610}# #{r\ 1611}# #{w\ 1612}#)) (lambda (#{e\ 1664}# #{r\ 1665}# #{w\ 1666}# #{s\ 1667}# #{mod\ 1668}#) (#{syntax-type\ 457}# #{e\ 1664}# #{r\ 1665}# #{w\ 1666}# #{s\ 1667}# #{rib\ 1614}# #{mod\ 1668}# #{for-car?\ 1616}#))) (if (eqv? #{ftype\ 1647}# 'core) (values 'core-form #{fval\ 1648}# #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{ftype\ 1647}# 'local-syntax) (values 'local-syntax-form #{fval\ 1648}# #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{ftype\ 1647}# 'begin) (values 'begin-form #f #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{ftype\ 1647}# 'eval-when) (values 'eval-when-form #f #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (if (eqv? #{ftype\ 1647}# 'define) (let ((#{tmp\ 1679}# #{e\ 1610}#)) (let ((#{tmp\ 1680}# ($sc-dispatch #{tmp\ 1679}# '(_ any any)))) (if (if #{tmp\ 1680}# (@apply (lambda (#{name\ 1683}# #{val\ 1684}#) (#{id?\ 379}# #{name\ 1683}#)) #{tmp\ 1680}#) #f) (@apply (lambda (#{name\ 1687}# #{val\ 1688}#) (values 'define-form #{name\ 1687}# #{val\ 1688}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#)) #{tmp\ 1680}#) (let ((#{tmp\ 1689}# ($sc-dispatch #{tmp\ 1679}# '(_ (any . any) any . each-any)))) (if (if #{tmp\ 1689}# (@apply (lambda (#{name\ 1694}# #{args\ 1695}# #{e1\ 1696}# #{e2\ 1697}#) (if (#{id?\ 379}# #{name\ 1694}#) (#{valid-bound-ids?\ 439}# (#{lambda-var-list\ 491}# #{args\ 1695}#)) #f)) #{tmp\ 1689}#) #f) (@apply (lambda (#{name\ 1704}# #{args\ 1705}# #{e1\ 1706}# #{e2\ 1707}#) (values 'define-form (#{wrap\ 445}# #{name\ 1704}# #{w\ 1612}# #{mod\ 1615}#) (#{decorate-source\ 299}# (cons '#(syntax-object lambda ((top) #(ribcage #(name args e1 e2) #((top) (top) (top) (top)) #("i1700" "i1701" "i1702" "i1703")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1653" "i1654" "i1655" "i1656" "i1657" "i1658")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1645")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1617" "i1618" "i1619" "i1620" "i1621" "i1622" "i1623")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) (#{wrap\ 445}# (cons #{args\ 1705}# (cons #{e1\ 1706}# #{e2\ 1707}#)) #{w\ 1612}# #{mod\ 1615}#)) #{s\ 1613}#) '(()) #{s\ 1613}# #{mod\ 1615}#)) #{tmp\ 1689}#) (let ((#{tmp\ 1710}# ($sc-dispatch #{tmp\ 1679}# '(_ any)))) (if (if #{tmp\ 1710}# (@apply (lambda (#{name\ 1712}#) (#{id?\ 379}# #{name\ 1712}#)) #{tmp\ 1710}#) #f) (@apply (lambda (#{name\ 1714}#) (values 'define-form (#{wrap\ 445}# #{name\ 1714}# #{w\ 1612}# #{mod\ 1615}#) '(#(syntax-object if ((top) #(ribcage #(name) #((top)) #("i1713")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1653" "i1654" "i1655" "i1656" "i1657" "i1658")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1645")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1617" "i1618" "i1619" "i1620" "i1621" "i1622" "i1623")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1713")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1653" "i1654" "i1655" "i1656" "i1657" "i1658")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1645")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1617" "i1618" "i1619" "i1620" "i1621" "i1622" "i1623")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(name) #((top)) #("i1713")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1653" "i1654" "i1655" "i1656" "i1657" "i1658")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1645")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1617" "i1618" "i1619" "i1620" "i1621" "i1622" "i1623")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) '(()) #{s\ 1613}# #{mod\ 1615}#)) #{tmp\ 1710}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1679}#)))))))) (if (eqv? #{ftype\ 1647}# 'define-syntax) (let ((#{tmp\ 1717}# #{e\ 1610}#)) (let ((#{tmp\ 1718}# ($sc-dispatch #{tmp\ 1717}# '(_ any any)))) (if (if #{tmp\ 1718}# (@apply (lambda (#{name\ 1721}# #{val\ 1722}#) (#{id?\ 379}# #{name\ 1721}#)) #{tmp\ 1718}#) #f) (@apply (lambda (#{name\ 1725}# #{val\ 1726}#) (values 'define-syntax-form #{name\ 1725}# #{val\ 1726}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#)) #{tmp\ 1718}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1717}#)))) (values 'call #f #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#))))))))))))))) (if (#{syntax-object?\ 345}# #{e\ 1610}#) (#{syntax-type\ 457}# (#{syntax-object-expression\ 347}# #{e\ 1610}#) #{r\ 1611}# (#{join-wraps\ 427}# #{w\ 1612}# (#{syntax-object-wrap\ 349}# #{e\ 1610}#)) (begin (let ((#{t\ 1732}# (#{source-annotation\ 360}# #{e\ 1610}#))) (if #{t\ 1732}# #{t\ 1732}# #{s\ 1613}#))) #{rib\ 1614}# (begin (let ((#{t\ 1736}# (#{syntax-object-module\ 351}# #{e\ 1610}#))) (if #{t\ 1736}# #{t\ 1736}# #{mod\ 1615}#))) #{for-car?\ 1616}#) (if (self-evaluating? #{e\ 1610}#) (values 'constant #f #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#) (values 'other #f #{e\ 1610}# #{w\ 1612}# #{s\ 1613}# #{mod\ 1615}#))))))) (#{chi-top\ 459}# (lambda (#{e\ 1741}# #{r\ 1742}# #{w\ 1743}# #{m\ 1744}# #{esew\ 1745}# #{mod\ 1746}#) (call-with-values (lambda () (#{syntax-type\ 457}# #{e\ 1741}# #{r\ 1742}# #{w\ 1743}# (#{source-annotation\ 360}# #{e\ 1741}#) #f #{mod\ 1746}# #f)) (lambda (#{type\ 1767}# #{value\ 1768}# #{e\ 1769}# #{w\ 1770}# #{s\ 1771}# #{mod\ 1772}#) (if (eqv? #{type\ 1767}# 'begin-form) (let ((#{tmp\ 1780}# #{e\ 1769}#)) (let ((#{tmp\ 1781}# ($sc-dispatch #{tmp\ 1780}# '(_)))) (if #{tmp\ 1781}# (@apply (lambda () (#{chi-void\ 475}#)) #{tmp\ 1781}#) (let ((#{tmp\ 1782}# ($sc-dispatch #{tmp\ 1780}# '(_ any . each-any)))) (if #{tmp\ 1782}# (@apply (lambda (#{e1\ 1785}# #{e2\ 1786}#) (#{chi-top-sequence\ 451}# (cons #{e1\ 1785}# #{e2\ 1786}#) #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# #{m\ 1744}# #{esew\ 1745}# #{mod\ 1772}#)) #{tmp\ 1782}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1780}#)))))) (if (eqv? #{type\ 1767}# 'local-syntax-form) (#{chi-local-syntax\ 471}# #{value\ 1768}# #{e\ 1769}# #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# #{mod\ 1772}# (lambda (#{body\ 1789}# #{r\ 1790}# #{w\ 1791}# #{s\ 1792}# #{mod\ 1793}#) (#{chi-top-sequence\ 451}# #{body\ 1789}# #{r\ 1790}# #{w\ 1791}# #{s\ 1792}# #{m\ 1744}# #{esew\ 1745}# #{mod\ 1793}#))) (if (eqv? #{type\ 1767}# 'eval-when-form) (let ((#{tmp\ 1800}# #{e\ 1769}#)) (let ((#{tmp\ 1801}# ($sc-dispatch #{tmp\ 1800}# '(_ each-any any . each-any)))) (if #{tmp\ 1801}# (@apply (lambda (#{x\ 1805}# #{e1\ 1806}# #{e2\ 1807}#) (begin (let ((#{when-list\ 1810}# (#{chi-when-list\ 455}# #{e\ 1769}# #{x\ 1805}# #{w\ 1770}#)) (#{body\ 1811}# (cons #{e1\ 1806}# #{e2\ 1807}#))) (if (eq? #{m\ 1744}# 'e) (if (memq 'eval #{when-list\ 1810}#) (#{chi-top-sequence\ 451}# #{body\ 1811}# #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# (if (memq 'expand #{when-list\ 1810}#) 'c&e 'e) '(eval) #{mod\ 1772}#) (begin (if (memq 'expand #{when-list\ 1810}#) (#{top-level-eval-hook\ 290}# (#{chi-top-sequence\ 451}# #{body\ 1811}# #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# 'e '(eval) #{mod\ 1772}#) #{mod\ 1772}#)) (#{chi-void\ 475}#))) (if (memq 'load #{when-list\ 1810}#) (if (begin (let ((#{t\ 1820}# (memq 'compile #{when-list\ 1810}#))) (if #{t\ 1820}# #{t\ 1820}# (begin (let ((#{t\ 1823}# (memq 'expand #{when-list\ 1810}#))) (if #{t\ 1823}# #{t\ 1823}# (if (eq? #{m\ 1744}# 'c&e) (memq 'eval #{when-list\ 1810}#) #f))))))) (#{chi-top-sequence\ 451}# #{body\ 1811}# #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# 'c&e '(compile load) #{mod\ 1772}#) (if (if (eq? #{m\ 1744}# 'c) #t (eq? #{m\ 1744}# 'c&e)) (#{chi-top-sequence\ 451}# #{body\ 1811}# #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# 'c '(load) #{mod\ 1772}#) (#{chi-void\ 475}#))) (if (begin (let ((#{t\ 1831}# (memq 'compile #{when-list\ 1810}#))) (if #{t\ 1831}# #{t\ 1831}# (begin (let ((#{t\ 1834}# (memq 'expand #{when-list\ 1810}#))) (if #{t\ 1834}# #{t\ 1834}# (if (eq? #{m\ 1744}# 'c&e) (memq 'eval #{when-list\ 1810}#) #f))))))) (begin (#{top-level-eval-hook\ 290}# (#{chi-top-sequence\ 451}# #{body\ 1811}# #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# 'e '(eval) #{mod\ 1772}#) #{mod\ 1772}#) (#{chi-void\ 475}#)) (#{chi-void\ 475}#))))))) #{tmp\ 1801}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1800}#)))) (if (eqv? #{type\ 1767}# 'define-syntax-form) (begin (let ((#{n\ 1842}# (#{id-var-name\ 433}# #{value\ 1768}# #{w\ 1770}#)) (#{r\ 1843}# (#{macros-only-env\ 371}# #{r\ 1742}#))) (if (eqv? #{m\ 1744}# 'c) (if (memq 'compile #{esew\ 1745}#) (begin (let ((#{e\ 1846}# (#{chi-install-global\ 453}# #{n\ 1842}# (#{chi\ 461}# #{e\ 1769}# #{r\ 1843}# #{w\ 1770}# #{mod\ 1772}#)))) (begin (#{top-level-eval-hook\ 290}# #{e\ 1846}# #{mod\ 1772}#) (if (memq 'load #{esew\ 1745}#) #{e\ 1846}# (#{chi-void\ 475}#))))) (if (memq 'load #{esew\ 1745}#) (#{chi-install-global\ 453}# #{n\ 1842}# (#{chi\ 461}# #{e\ 1769}# #{r\ 1843}# #{w\ 1770}# #{mod\ 1772}#)) (#{chi-void\ 475}#))) (if (eqv? #{m\ 1744}# 'c&e) (begin (let ((#{e\ 1849}# (#{chi-install-global\ 453}# #{n\ 1842}# (#{chi\ 461}# #{e\ 1769}# #{r\ 1843}# #{w\ 1770}# #{mod\ 1772}#)))) (begin (#{top-level-eval-hook\ 290}# #{e\ 1849}# #{mod\ 1772}#) #{e\ 1849}#))) (begin (if (memq 'eval #{esew\ 1745}#) (#{top-level-eval-hook\ 290}# (#{chi-install-global\ 453}# #{n\ 1842}# (#{chi\ 461}# #{e\ 1769}# #{r\ 1843}# #{w\ 1770}# #{mod\ 1772}#)) #{mod\ 1772}#)) (#{chi-void\ 475}#)))))) (if (eqv? #{type\ 1767}# 'define-form) (begin (let ((#{n\ 1854}# (#{id-var-name\ 433}# #{value\ 1768}# #{w\ 1770}#))) (begin (let ((#{type\ 1856}# (car (#{lookup\ 373}# #{n\ 1854}# #{r\ 1742}# #{mod\ 1772}#)))) (if (if (eqv? #{type\ 1856}# 'global) #t (if (eqv? #{type\ 1856}# 'core) #t (if (eqv? #{type\ 1856}# 'macro) #t (eqv? #{type\ 1856}# 'module-ref)))) (begin (if (if (if (eq? #{m\ 1744}# 'c) #t (eq? #{m\ 1744}# 'c&e)) (if (not (module-local-variable (current-module) #{n\ 1854}#)) (current-module) #f) #f) (begin (let ((#{old\ 1863}# (module-variable (current-module) #{n\ 1854}#))) (if (if (variable? #{old\ 1863}#) (variable-bound? #{old\ 1863}#) #f) (module-define! (current-module) #{n\ 1854}# (variable-ref #{old\ 1863}#)) (module-add! (current-module) #{n\ 1854}# (make-undefined-variable)))))) (begin (let ((#{x\ 1868}# (#{build-global-definition\ 321}# #{s\ 1771}# #{n\ 1854}# (#{chi\ 461}# #{e\ 1769}# #{r\ 1742}# #{w\ 1770}# #{mod\ 1772}#)))) (begin (if (eq? #{m\ 1744}# 'c&e) (#{top-level-eval-hook\ 290}# #{x\ 1868}# #{mod\ 1772}#)) #{x\ 1868}#)))) (if (eqv? #{type\ 1856}# 'displaced-lexical) (syntax-violation #f "identifier out of context" #{e\ 1769}# (#{wrap\ 445}# #{value\ 1768}# #{w\ 1770}# #{mod\ 1772}#)) (syntax-violation #f "cannot define keyword at top level" #{e\ 1769}# (#{wrap\ 445}# #{value\ 1768}# #{w\ 1770}# #{mod\ 1772}#)))))))) (begin (let ((#{x\ 1874}# (#{chi-expr\ 463}# #{type\ 1767}# #{value\ 1768}# #{e\ 1769}# #{r\ 1742}# #{w\ 1770}# #{s\ 1771}# #{mod\ 1772}#))) (begin (if (eq? #{m\ 1744}# 'c&e) (#{top-level-eval-hook\ 290}# #{x\ 1874}# #{mod\ 1772}#)) #{x\ 1874}#)))))))))))) (#{chi\ 461}# (lambda (#{e\ 1875}# #{r\ 1876}# #{w\ 1877}# #{mod\ 1878}#) (call-with-values (lambda () (#{syntax-type\ 457}# #{e\ 1875}# #{r\ 1876}# #{w\ 1877}# (#{source-annotation\ 360}# #{e\ 1875}#) #f #{mod\ 1878}# #f)) (lambda (#{type\ 1883}# #{value\ 1884}# #{e\ 1885}# #{w\ 1886}# #{s\ 1887}# #{mod\ 1888}#) (#{chi-expr\ 463}# #{type\ 1883}# #{value\ 1884}# #{e\ 1885}# #{r\ 1876}# #{w\ 1886}# #{s\ 1887}# #{mod\ 1888}#))))) (#{chi-expr\ 463}# (lambda (#{type\ 1895}# #{value\ 1896}# #{e\ 1897}# #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#) (if (eqv? #{type\ 1895}# 'lexical) (#{build-lexical-reference\ 311}# 'value #{s\ 1900}# #{e\ 1897}# #{value\ 1896}#) (if (if (eqv? #{type\ 1895}# 'core) #t (eqv? #{type\ 1895}# 'core-form)) (#{value\ 1896}# #{e\ 1897}# #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#) (if (eqv? #{type\ 1895}# 'module-ref) (call-with-values (lambda () (#{value\ 1896}# #{e\ 1897}# #{r\ 1898}# #{w\ 1899}#)) (lambda (#{e\ 1912}# #{r\ 1913}# #{w\ 1914}# #{s\ 1915}# #{mod\ 1916}#) (#{chi\ 461}# #{e\ 1912}# #{r\ 1913}# #{w\ 1914}# #{mod\ 1916}#))) (if (eqv? #{type\ 1895}# 'lexical-call) (#{chi-application\ 465}# (begin (let ((#{id\ 1924}# (car #{e\ 1897}#))) (#{build-lexical-reference\ 311}# 'fun (#{source-annotation\ 360}# #{id\ 1924}#) (if (#{syntax-object?\ 345}# #{id\ 1924}#) (syntax->datum #{id\ 1924}#) #{id\ 1924}#) #{value\ 1896}#))) #{e\ 1897}# #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#) (if (eqv? #{type\ 1895}# 'global-call) (#{chi-application\ 465}# (#{build-global-reference\ 317}# (#{source-annotation\ 360}# (car #{e\ 1897}#)) (if (#{syntax-object?\ 345}# #{value\ 1896}#) (#{syntax-object-expression\ 347}# #{value\ 1896}#) #{value\ 1896}#) (if (#{syntax-object?\ 345}# #{value\ 1896}#) (#{syntax-object-module\ 351}# #{value\ 1896}#) #{mod\ 1901}#)) #{e\ 1897}# #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#) (if (eqv? #{type\ 1895}# 'constant) (#{build-data\ 331}# #{s\ 1900}# (#{strip\ 487}# (#{source-wrap\ 447}# #{e\ 1897}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#) '(()))) (if (eqv? #{type\ 1895}# 'global) (#{build-global-reference\ 317}# #{s\ 1900}# #{value\ 1896}# #{mod\ 1901}#) (if (eqv? #{type\ 1895}# 'call) (#{chi-application\ 465}# (#{chi\ 461}# (car #{e\ 1897}#) #{r\ 1898}# #{w\ 1899}# #{mod\ 1901}#) #{e\ 1897}# #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#) (if (eqv? #{type\ 1895}# 'begin-form) (let ((#{tmp\ 1931}# #{e\ 1897}#)) (let ((#{tmp\ 1932}# ($sc-dispatch #{tmp\ 1931}# '(_ any . each-any)))) (if #{tmp\ 1932}# (@apply (lambda (#{e1\ 1935}# #{e2\ 1936}#) (#{chi-sequence\ 449}# (cons #{e1\ 1935}# #{e2\ 1936}#) #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#)) #{tmp\ 1932}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1931}#)))) (if (eqv? #{type\ 1895}# 'local-syntax-form) (#{chi-local-syntax\ 471}# #{value\ 1896}# #{e\ 1897}# #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}# #{chi-sequence\ 449}#) (if (eqv? #{type\ 1895}# 'eval-when-form) (let ((#{tmp\ 1940}# #{e\ 1897}#)) (let ((#{tmp\ 1941}# ($sc-dispatch #{tmp\ 1940}# '(_ each-any any . each-any)))) (if #{tmp\ 1941}# (@apply (lambda (#{x\ 1945}# #{e1\ 1946}# #{e2\ 1947}#) (begin (let ((#{when-list\ 1949}# (#{chi-when-list\ 455}# #{e\ 1897}# #{x\ 1945}# #{w\ 1899}#))) (if (memq 'eval #{when-list\ 1949}#) (#{chi-sequence\ 449}# (cons #{e1\ 1946}# #{e2\ 1947}#) #{r\ 1898}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#) (#{chi-void\ 475}#))))) #{tmp\ 1941}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1940}#)))) (if (if (eqv? #{type\ 1895}# 'define-form) #t (eqv? #{type\ 1895}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 1897}# (#{wrap\ 445}# #{value\ 1896}# #{w\ 1899}# #{mod\ 1901}#)) (if (eqv? #{type\ 1895}# 'syntax) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 447}# #{e\ 1897}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#)) (if (eqv? #{type\ 1895}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 447}# #{e\ 1897}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 447}# #{e\ 1897}# #{w\ 1899}# #{s\ 1900}# #{mod\ 1901}#)))))))))))))))))) (#{chi-application\ 465}# (lambda (#{x\ 1956}# #{e\ 1957}# #{r\ 1958}# #{w\ 1959}# #{s\ 1960}# #{mod\ 1961}#) (let ((#{tmp\ 1968}# #{e\ 1957}#)) (let ((#{tmp\ 1969}# ($sc-dispatch #{tmp\ 1968}# '(any . each-any)))) (if #{tmp\ 1969}# (@apply (lambda (#{e0\ 1972}# #{e1\ 1973}#) (#{build-application\ 305}# #{s\ 1960}# #{x\ 1956}# (map (lambda (#{e\ 1974}#) (#{chi\ 461}# #{e\ 1974}# #{r\ 1958}# #{w\ 1959}# #{mod\ 1961}#)) #{e1\ 1973}#))) #{tmp\ 1969}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1968}#)))))) (#{chi-macro\ 467}# (lambda (#{p\ 1977}# #{e\ 1978}# #{r\ 1979}# #{w\ 1980}# #{s\ 1981}# #{rib\ 1982}# #{mod\ 1983}#) (letrec* ((#{rebuild-macro-output\ 1992}# (lambda (#{x\ 1993}# #{m\ 1994}#) (if (pair? #{x\ 1993}#) (#{decorate-source\ 299}# (cons (#{rebuild-macro-output\ 1992}# (car #{x\ 1993}#) #{m\ 1994}#) (#{rebuild-macro-output\ 1992}# (cdr #{x\ 1993}#) #{m\ 1994}#)) #{s\ 1981}#) (if (#{syntax-object?\ 345}# #{x\ 1993}#) (begin (let ((#{w\ 2002}# (#{syntax-object-wrap\ 349}# #{x\ 1993}#))) (begin (let ((#{ms\ 2005}# (car #{w\ 2002}#)) (#{s\ 2006}# (cdr #{w\ 2002}#))) (if (if (pair? #{ms\ 2005}#) (eq? (car #{ms\ 2005}#) #f) #f) (#{make-syntax-object\ 343}# (#{syntax-object-expression\ 347}# #{x\ 1993}#) (cons (cdr #{ms\ 2005}#) (if #{rib\ 1982}# (cons #{rib\ 1982}# (cdr #{s\ 2006}#)) (cdr #{s\ 2006}#))) (#{syntax-object-module\ 351}# #{x\ 1993}#)) (#{make-syntax-object\ 343}# (#{decorate-source\ 299}# (#{syntax-object-expression\ 347}# #{x\ 1993}#) #{s\ 2006}#) (cons (cons #{m\ 1994}# #{ms\ 2005}#) (if #{rib\ 1982}# (cons #{rib\ 1982}# (cons 'shift #{s\ 2006}#)) (cons 'shift #{s\ 2006}#))) (#{syntax-object-module\ 351}# #{x\ 1993}#))))))) (if (vector? #{x\ 1993}#) (begin (let ((#{n\ 2018}# (vector-length #{x\ 1993}#))) (begin (let ((#{v\ 2020}# (#{decorate-source\ 299}# (make-vector #{n\ 2018}#) #{x\ 1993}#))) (letrec* ((#{loop\ 2023}# (lambda (#{i\ 2024}#) (if (#{fx=\ 286}# #{i\ 2024}# #{n\ 2018}#) (begin (if #f #f) #{v\ 2020}#) (begin (vector-set! #{v\ 2020}# #{i\ 2024}# (#{rebuild-macro-output\ 1992}# (vector-ref #{x\ 1993}# #{i\ 2024}#) #{m\ 1994}#)) (#{loop\ 2023}# (#{fx+\ 282}# #{i\ 2024}# 1))))))) (begin (#{loop\ 2023}# 0))))))) (if (symbol? #{x\ 1993}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 447}# #{e\ 1978}# #{w\ 1980}# (cdr #{w\ 1980}#) #{mod\ 1983}#) #{x\ 1993}#) (#{decorate-source\ 299}# #{x\ 1993}# #{s\ 1981}#)))))))) (begin (#{rebuild-macro-output\ 1992}# (#{p\ 1977}# (#{source-wrap\ 447}# #{e\ 1978}# (#{anti-mark\ 417}# #{w\ 1980}#) #{s\ 1981}# #{mod\ 1983}#)) (gensym "m")))))) (#{chi-body\ 469}# (lambda (#{body\ 2032}# #{outer-form\ 2033}# #{r\ 2034}# #{w\ 2035}# #{mod\ 2036}#) (begin (let ((#{r\ 2044}# (cons '("placeholder" placeholder) #{r\ 2034}#))) (begin (let ((#{ribcage\ 2046}# (#{make-ribcage\ 397}# '() '() '()))) (begin (let ((#{w\ 2049}# (cons (car #{w\ 2035}#) (cons #{ribcage\ 2046}# (cdr #{w\ 2035}#))))) (letrec* ((#{parse\ 2061}# (lambda (#{body\ 2062}# #{ids\ 2063}# #{labels\ 2064}# #{var-ids\ 2065}# #{vars\ 2066}# #{vals\ 2067}# #{bindings\ 2068}#) (if (null? #{body\ 2062}#) (syntax-violation #f "no expressions in body" #{outer-form\ 2033}#) (begin (let ((#{e\ 2073}# (cdr (car #{body\ 2062}#))) (#{er\ 2074}# (car (car #{body\ 2062}#)))) (call-with-values (lambda () (#{syntax-type\ 457}# #{e\ 2073}# #{er\ 2074}# '(()) (#{source-annotation\ 360}# #{er\ 2074}#) #{ribcage\ 2046}# #{mod\ 2036}# #f)) (lambda (#{type\ 2076}# #{value\ 2077}# #{e\ 2078}# #{w\ 2079}# #{s\ 2080}# #{mod\ 2081}#) (if (eqv? #{type\ 2076}# 'define-form) (begin (let ((#{id\ 2091}# (#{wrap\ 445}# #{value\ 2077}# #{w\ 2079}# #{mod\ 2081}#)) (#{label\ 2092}# (#{gen-label\ 392}#))) (begin (let ((#{var\ 2094}# (#{gen-var\ 489}# #{id\ 2091}#))) (begin (#{extend-ribcage!\ 421}# #{ribcage\ 2046}# #{id\ 2091}# #{label\ 2092}#) (#{parse\ 2061}# (cdr #{body\ 2062}#) (cons #{id\ 2091}# #{ids\ 2063}#) (cons #{label\ 2092}# #{labels\ 2064}#) (cons #{id\ 2091}# #{var-ids\ 2065}#) (cons #{var\ 2094}# #{vars\ 2066}#) (cons (cons #{er\ 2074}# (#{wrap\ 445}# #{e\ 2078}# #{w\ 2079}# #{mod\ 2081}#)) #{vals\ 2067}#) (cons (cons 'lexical #{var\ 2094}#) #{bindings\ 2068}#))))))) (if (eqv? #{type\ 2076}# 'define-syntax-form) (begin (let ((#{id\ 2099}# (#{wrap\ 445}# #{value\ 2077}# #{w\ 2079}# #{mod\ 2081}#)) (#{label\ 2100}# (#{gen-label\ 392}#))) (begin (#{extend-ribcage!\ 421}# #{ribcage\ 2046}# #{id\ 2099}# #{label\ 2100}#) (#{parse\ 2061}# (cdr #{body\ 2062}#) (cons #{id\ 2099}# #{ids\ 2063}#) (cons #{label\ 2100}# #{labels\ 2064}#) #{var-ids\ 2065}# #{vars\ 2066}# #{vals\ 2067}# (cons (cons 'macro (cons #{er\ 2074}# (#{wrap\ 445}# #{e\ 2078}# #{w\ 2079}# #{mod\ 2081}#))) #{bindings\ 2068}#))))) (if (eqv? #{type\ 2076}# 'begin-form) (let ((#{tmp\ 2103}# #{e\ 2078}#)) (let ((#{tmp\ 2104}# ($sc-dispatch #{tmp\ 2103}# '(_ . each-any)))) (if #{tmp\ 2104}# (@apply (lambda (#{e1\ 2106}#) (#{parse\ 2061}# (letrec* ((#{f\ 2109}# (lambda (#{forms\ 2110}#) (if (null? #{forms\ 2110}#) (cdr #{body\ 2062}#) (cons (cons #{er\ 2074}# (#{wrap\ 445}# (car #{forms\ 2110}#) #{w\ 2079}# #{mod\ 2081}#)) (#{f\ 2109}# (cdr #{forms\ 2110}#))))))) (begin (#{f\ 2109}# #{e1\ 2106}#))) #{ids\ 2063}# #{labels\ 2064}# #{var-ids\ 2065}# #{vars\ 2066}# #{vals\ 2067}# #{bindings\ 2068}#)) #{tmp\ 2104}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2103}#)))) (if (eqv? #{type\ 2076}# 'local-syntax-form) (#{chi-local-syntax\ 471}# #{value\ 2077}# #{e\ 2078}# #{er\ 2074}# #{w\ 2079}# #{s\ 2080}# #{mod\ 2081}# (lambda (#{forms\ 2113}# #{er\ 2114}# #{w\ 2115}# #{s\ 2116}# #{mod\ 2117}#) (#{parse\ 2061}# (letrec* ((#{f\ 2125}# (lambda (#{forms\ 2126}#) (if (null? #{forms\ 2126}#) (cdr #{body\ 2062}#) (cons (cons #{er\ 2114}# (#{wrap\ 445}# (car #{forms\ 2126}#) #{w\ 2115}# #{mod\ 2117}#)) (#{f\ 2125}# (cdr #{forms\ 2126}#))))))) (begin (#{f\ 2125}# #{forms\ 2113}#))) #{ids\ 2063}# #{labels\ 2064}# #{var-ids\ 2065}# #{vars\ 2066}# #{vals\ 2067}# #{bindings\ 2068}#))) (if (null? #{ids\ 2063}#) (#{build-sequence\ 333}# #f (map (lambda (#{x\ 2129}#) (#{chi\ 461}# (cdr #{x\ 2129}#) (car #{x\ 2129}#) '(()) #{mod\ 2081}#)) (cons (cons #{er\ 2074}# (#{source-wrap\ 447}# #{e\ 2078}# #{w\ 2079}# #{s\ 2080}# #{mod\ 2081}#)) (cdr #{body\ 2062}#)))) (begin (if (not (#{valid-bound-ids?\ 439}# #{ids\ 2063}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 2033}#)) (letrec* ((#{loop\ 2136}# (lambda (#{bs\ 2137}# #{er-cache\ 2138}# #{r-cache\ 2139}#) (if (not (null? #{bs\ 2137}#)) (begin (let ((#{b\ 2142}# (car #{bs\ 2137}#))) (if (eq? (car #{b\ 2142}#) 'macro) (begin (let ((#{er\ 2145}# (car (cdr #{b\ 2142}#)))) (begin (let ((#{r-cache\ 2147}# (if (eq? #{er\ 2145}# #{er-cache\ 2138}#) #{r-cache\ 2139}# (#{macros-only-env\ 371}# #{er\ 2145}#)))) (begin (set-cdr! #{b\ 2142}# (#{eval-local-transformer\ 473}# (#{chi\ 461}# (cdr (cdr #{b\ 2142}#)) #{r-cache\ 2147}# '(()) #{mod\ 2081}#) #{mod\ 2081}#)) (#{loop\ 2136}# (cdr #{bs\ 2137}#) #{er\ 2145}# #{r-cache\ 2147}#)))))) (#{loop\ 2136}# (cdr #{bs\ 2137}#) #{er-cache\ 2138}# #{r-cache\ 2139}#)))))))) (begin (#{loop\ 2136}# #{bindings\ 2068}# #f #f))) (set-cdr! #{r\ 2044}# (#{extend-env\ 367}# #{labels\ 2064}# #{bindings\ 2068}# (cdr #{r\ 2044}#))) (#{build-letrec\ 339}# #f #t (reverse (map syntax->datum #{var-ids\ 2065}#)) (reverse #{vars\ 2066}#) (map (lambda (#{x\ 2150}#) (#{chi\ 461}# (cdr #{x\ 2150}#) (car #{x\ 2150}#) '(()) #{mod\ 2081}#)) (reverse #{vals\ 2067}#)) (#{build-sequence\ 333}# #f (map (lambda (#{x\ 2154}#) (#{chi\ 461}# (cdr #{x\ 2154}#) (car #{x\ 2154}#) '(()) #{mod\ 2081}#)) (cons (cons #{er\ 2074}# (#{source-wrap\ 447}# #{e\ 2078}# #{w\ 2079}# #{s\ 2080}# #{mod\ 2081}#)) (cdr #{body\ 2062}#))))))))))))))))))) (begin (#{parse\ 2061}# (map (lambda (#{x\ 2069}#) (cons #{r\ 2044}# (#{wrap\ 445}# #{x\ 2069}# #{w\ 2049}# #{mod\ 2036}#))) #{body\ 2032}#) '() '() '() '() '() '()))))))))))) (#{chi-local-syntax\ 471}# (lambda (#{rec?\ 2157}# #{e\ 2158}# #{r\ 2159}# #{w\ 2160}# #{s\ 2161}# #{mod\ 2162}# #{k\ 2163}#) (let ((#{tmp\ 2171}# #{e\ 2158}#)) (let ((#{tmp\ 2172}# ($sc-dispatch #{tmp\ 2171}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 2172}# (@apply (lambda (#{id\ 2177}# #{val\ 2178}# #{e1\ 2179}# #{e2\ 2180}#) (begin (let ((#{ids\ 2182}# #{id\ 2177}#)) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 2182}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 2158}#) (begin (let ((#{labels\ 2185}# (#{gen-labels\ 394}# #{ids\ 2182}#))) (begin (let ((#{new-w\ 2187}# (#{make-binding-wrap\ 423}# #{ids\ 2182}# #{labels\ 2185}# #{w\ 2160}#))) (#{k\ 2163}# (cons #{e1\ 2179}# #{e2\ 2180}#) (#{extend-env\ 367}# #{labels\ 2185}# (begin (let ((#{w\ 2191}# (if #{rec?\ 2157}# #{new-w\ 2187}# #{w\ 2160}#)) (#{trans-r\ 2192}# (#{macros-only-env\ 371}# #{r\ 2159}#))) (map (lambda (#{x\ 2193}#) (cons 'macro (#{eval-local-transformer\ 473}# (#{chi\ 461}# #{x\ 2193}# #{trans-r\ 2192}# #{w\ 2191}# #{mod\ 2162}#) #{mod\ 2162}#))) #{val\ 2178}#))) #{r\ 2159}#) #{new-w\ 2187}# #{s\ 2161}# #{mod\ 2162}#))))))))) #{tmp\ 2172}#) (let ((#{_\ 2198}# #{tmp\ 2171}#)) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 447}# #{e\ 2158}# #{w\ 2160}# #{s\ 2161}# #{mod\ 2162}#)))))))) (#{eval-local-transformer\ 473}# (lambda (#{expanded\ 2199}# #{mod\ 2200}#) (begin (let ((#{p\ 2204}# (#{local-eval-hook\ 292}# #{expanded\ 2199}# #{mod\ 2200}#))) (if (procedure? #{p\ 2204}#) #{p\ 2204}# (syntax-violation #f "nonprocedure transformer" #{p\ 2204}#)))))) (#{chi-void\ 475}# (lambda () (#{build-void\ 303}# #f))) (#{ellipsis?\ 477}# (lambda (#{x\ 2206}#) (if (#{nonsymbol-id?\ 377}# #{x\ 2206}#) (#{free-id=?\ 435}# #{x\ 2206}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i2207")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) #f))) (#{lambda-formals\ 479}# (lambda (#{orig-args\ 2210}#) (letrec* ((#{req\ 2213}# (lambda (#{args\ 2216}# #{rreq\ 2217}#) (let ((#{tmp\ 2220}# #{args\ 2216}#)) (let ((#{tmp\ 2221}# ($sc-dispatch #{tmp\ 2220}# '()))) (if #{tmp\ 2221}# (@apply (lambda () (#{check\ 2215}# (reverse #{rreq\ 2217}#) #f)) #{tmp\ 2221}#) (let ((#{tmp\ 2222}# ($sc-dispatch #{tmp\ 2220}# '(any . any)))) (if (if #{tmp\ 2222}# (@apply (lambda (#{a\ 2225}# #{b\ 2226}#) (#{id?\ 379}# #{a\ 2225}#)) #{tmp\ 2222}#) #f) (@apply (lambda (#{a\ 2229}# #{b\ 2230}#) (#{req\ 2213}# #{b\ 2230}# (cons #{a\ 2229}# #{rreq\ 2217}#))) #{tmp\ 2222}#) (let ((#{tmp\ 2231}# (list #{tmp\ 2220}#))) (if (if #{tmp\ 2231}# (@apply (lambda (#{r\ 2233}#) (#{id?\ 379}# #{r\ 2233}#)) #{tmp\ 2231}#) #f) (@apply (lambda (#{r\ 2235}#) (#{check\ 2215}# (reverse #{rreq\ 2217}#) #{r\ 2235}#)) #{tmp\ 2231}#) (let ((#{else\ 2237}# #{tmp\ 2220}#)) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 2210}# #{args\ 2216}#))))))))))) (#{check\ 2215}# (lambda (#{req\ 2238}# #{rest\ 2239}#) (if (#{distinct-bound-ids?\ 441}# (if #{rest\ 2239}# (cons #{rest\ 2239}# #{req\ 2238}#) #{req\ 2238}#)) (values #{req\ 2238}# #f #{rest\ 2239}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 2210}#))))) (begin (#{req\ 2213}# #{orig-args\ 2210}# '()))))) (#{chi-simple-lambda\ 481}# (lambda (#{e\ 2245}# #{r\ 2246}# #{w\ 2247}# #{s\ 2248}# #{mod\ 2249}# #{req\ 2250}# #{rest\ 2251}# #{meta\ 2252}# #{body\ 2253}#) (begin (let ((#{ids\ 2265}# (if #{rest\ 2251}# (append #{req\ 2250}# (list #{rest\ 2251}#)) #{req\ 2250}#))) (begin (let ((#{vars\ 2267}# (map #{gen-var\ 489}# #{ids\ 2265}#))) (begin (let ((#{labels\ 2269}# (#{gen-labels\ 394}# #{ids\ 2265}#))) (#{build-simple-lambda\ 323}# #{s\ 2248}# (map syntax->datum #{req\ 2250}#) (if #{rest\ 2251}# (syntax->datum #{rest\ 2251}#) #f) #{vars\ 2267}# #{meta\ 2252}# (#{chi-body\ 469}# #{body\ 2253}# (#{source-wrap\ 447}# #{e\ 2245}# #{w\ 2247}# #{s\ 2248}# #{mod\ 2249}#) (#{extend-var-env\ 369}# #{labels\ 2269}# #{vars\ 2267}# #{r\ 2246}#) (#{make-binding-wrap\ 423}# #{ids\ 2265}# #{labels\ 2269}# #{w\ 2247}#) #{mod\ 2249}#)))))))))) (#{lambda*-formals\ 483}# (lambda (#{orig-args\ 2272}#) (letrec* ((#{req\ 2275}# (lambda (#{args\ 2284}# #{rreq\ 2285}#) (let ((#{tmp\ 2288}# #{args\ 2284}#)) (let ((#{tmp\ 2289}# ($sc-dispatch #{tmp\ 2288}# '()))) (if #{tmp\ 2289}# (@apply (lambda () (#{check\ 2283}# (reverse #{rreq\ 2285}#) '() #f '())) #{tmp\ 2289}#) (let ((#{tmp\ 2290}# ($sc-dispatch #{tmp\ 2288}# '(any . any)))) (if (if #{tmp\ 2290}# (@apply (lambda (#{a\ 2293}# #{b\ 2294}#) (#{id?\ 379}# #{a\ 2293}#)) #{tmp\ 2290}#) #f) (@apply (lambda (#{a\ 2297}# #{b\ 2298}#) (#{req\ 2275}# #{b\ 2298}# (cons #{a\ 2297}# #{rreq\ 2285}#))) #{tmp\ 2290}#) (let ((#{tmp\ 2299}# ($sc-dispatch #{tmp\ 2288}# '(any . any)))) (if (if #{tmp\ 2299}# (@apply (lambda (#{a\ 2302}# #{b\ 2303}#) (eq? (syntax->datum #{a\ 2302}#) #:optional)) #{tmp\ 2299}#) #f) (@apply (lambda (#{a\ 2306}# #{b\ 2307}#) (#{opt\ 2277}# #{b\ 2307}# (reverse #{rreq\ 2285}#) '())) #{tmp\ 2299}#) (let ((#{tmp\ 2308}# ($sc-dispatch #{tmp\ 2288}# '(any . any)))) (if (if #{tmp\ 2308}# (@apply (lambda (#{a\ 2311}# #{b\ 2312}#) (eq? (syntax->datum #{a\ 2311}#) #:key)) #{tmp\ 2308}#) #f) (@apply (lambda (#{a\ 2315}# #{b\ 2316}#) (#{key\ 2279}# #{b\ 2316}# (reverse #{rreq\ 2285}#) '() '())) #{tmp\ 2308}#) (let ((#{tmp\ 2317}# ($sc-dispatch #{tmp\ 2288}# '(any any)))) (if (if #{tmp\ 2317}# (@apply (lambda (#{a\ 2320}# #{b\ 2321}#) (eq? (syntax->datum #{a\ 2320}#) #:rest)) #{tmp\ 2317}#) #f) (@apply (lambda (#{a\ 2324}# #{b\ 2325}#) (#{rest\ 2281}# #{b\ 2325}# (reverse #{rreq\ 2285}#) '() '())) #{tmp\ 2317}#) (let ((#{tmp\ 2326}# (list #{tmp\ 2288}#))) (if (if #{tmp\ 2326}# (@apply (lambda (#{r\ 2328}#) (#{id?\ 379}# #{r\ 2328}#)) #{tmp\ 2326}#) #f) (@apply (lambda (#{r\ 2330}#) (#{rest\ 2281}# #{r\ 2330}# (reverse #{rreq\ 2285}#) '() '())) #{tmp\ 2326}#) (let ((#{else\ 2332}# #{tmp\ 2288}#)) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 2272}# #{args\ 2284}#))))))))))))))))) (#{opt\ 2277}# (lambda (#{args\ 2333}# #{req\ 2334}# #{ropt\ 2335}#) (let ((#{tmp\ 2339}# #{args\ 2333}#)) (let ((#{tmp\ 2340}# ($sc-dispatch #{tmp\ 2339}# '()))) (if #{tmp\ 2340}# (@apply (lambda () (#{check\ 2283}# #{req\ 2334}# (reverse #{ropt\ 2335}#) #f '())) #{tmp\ 2340}#) (let ((#{tmp\ 2341}# ($sc-dispatch #{tmp\ 2339}# '(any . any)))) (if (if #{tmp\ 2341}# (@apply (lambda (#{a\ 2344}# #{b\ 2345}#) (#{id?\ 379}# #{a\ 2344}#)) #{tmp\ 2341}#) #f) (@apply (lambda (#{a\ 2348}# #{b\ 2349}#) (#{opt\ 2277}# #{b\ 2349}# #{req\ 2334}# (cons (cons #{a\ 2348}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i2346" "i2347")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i2336" "i2337" "i2338")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2282" "i2280" "i2278" "i2276" "i2274")) #(ribcage #(orig-args) #((top)) #("i2273")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)))) #{ropt\ 2335}#))) #{tmp\ 2341}#) (let ((#{tmp\ 2350}# ($sc-dispatch #{tmp\ 2339}# '((any any) . any)))) (if (if #{tmp\ 2350}# (@apply (lambda (#{a\ 2354}# #{init\ 2355}# #{b\ 2356}#) (#{id?\ 379}# #{a\ 2354}#)) #{tmp\ 2350}#) #f) (@apply (lambda (#{a\ 2360}# #{init\ 2361}# #{b\ 2362}#) (#{opt\ 2277}# #{b\ 2362}# #{req\ 2334}# (cons (list #{a\ 2360}# #{init\ 2361}#) #{ropt\ 2335}#))) #{tmp\ 2350}#) (let ((#{tmp\ 2363}# ($sc-dispatch #{tmp\ 2339}# '(any . any)))) (if (if #{tmp\ 2363}# (@apply (lambda (#{a\ 2366}# #{b\ 2367}#) (eq? (syntax->datum #{a\ 2366}#) #:key)) #{tmp\ 2363}#) #f) (@apply (lambda (#{a\ 2370}# #{b\ 2371}#) (#{key\ 2279}# #{b\ 2371}# #{req\ 2334}# (reverse #{ropt\ 2335}#) '())) #{tmp\ 2363}#) (let ((#{tmp\ 2372}# ($sc-dispatch #{tmp\ 2339}# '(any any)))) (if (if #{tmp\ 2372}# (@apply (lambda (#{a\ 2375}# #{b\ 2376}#) (eq? (syntax->datum #{a\ 2375}#) #:rest)) #{tmp\ 2372}#) #f) (@apply (lambda (#{a\ 2379}# #{b\ 2380}#) (#{rest\ 2281}# #{b\ 2380}# #{req\ 2334}# (reverse #{ropt\ 2335}#) '())) #{tmp\ 2372}#) (let ((#{tmp\ 2381}# (list #{tmp\ 2339}#))) (if (if #{tmp\ 2381}# (@apply (lambda (#{r\ 2383}#) (#{id?\ 379}# #{r\ 2383}#)) #{tmp\ 2381}#) #f) (@apply (lambda (#{r\ 2385}#) (#{rest\ 2281}# #{r\ 2385}# #{req\ 2334}# (reverse #{ropt\ 2335}#) '())) #{tmp\ 2381}#) (let ((#{else\ 2387}# #{tmp\ 2339}#)) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 2272}# #{args\ 2333}#))))))))))))))))) (#{key\ 2279}# (lambda (#{args\ 2388}# #{req\ 2389}# #{opt\ 2390}# #{rkey\ 2391}#) (let ((#{tmp\ 2396}# #{args\ 2388}#)) (let ((#{tmp\ 2397}# ($sc-dispatch #{tmp\ 2396}# '()))) (if #{tmp\ 2397}# (@apply (lambda () (#{check\ 2283}# #{req\ 2389}# #{opt\ 2390}# #f (cons #f (reverse #{rkey\ 2391}#)))) #{tmp\ 2397}#) (let ((#{tmp\ 2398}# ($sc-dispatch #{tmp\ 2396}# '(any . any)))) (if (if #{tmp\ 2398}# (@apply (lambda (#{a\ 2401}# #{b\ 2402}#) (#{id?\ 379}# #{a\ 2401}#)) #{tmp\ 2398}#) #f) (@apply (lambda (#{a\ 2405}# #{b\ 2406}#) (let ((#{tmp\ 2408}# (symbol->keyword (syntax->datum #{a\ 2405}#)))) (let ((#{k\ 2410}# #{tmp\ 2408}#)) (#{key\ 2279}# #{b\ 2406}# #{req\ 2389}# #{opt\ 2390}# (cons (cons #{k\ 2410}# (cons #{a\ 2405}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i2409")) #(ribcage #(a b) #((top) (top)) #("i2403" "i2404")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i2392" "i2393" "i2394" "i2395")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2282" "i2280" "i2278" "i2276" "i2274")) #(ribcage #(orig-args) #((top)) #("i2273")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))))) #{rkey\ 2391}#))))) #{tmp\ 2398}#) (let ((#{tmp\ 2411}# ($sc-dispatch #{tmp\ 2396}# '((any any) . any)))) (if (if #{tmp\ 2411}# (@apply (lambda (#{a\ 2415}# #{init\ 2416}# #{b\ 2417}#) (#{id?\ 379}# #{a\ 2415}#)) #{tmp\ 2411}#) #f) (@apply (lambda (#{a\ 2421}# #{init\ 2422}# #{b\ 2423}#) (let ((#{tmp\ 2425}# (symbol->keyword (syntax->datum #{a\ 2421}#)))) (let ((#{k\ 2427}# #{tmp\ 2425}#)) (#{key\ 2279}# #{b\ 2423}# #{req\ 2389}# #{opt\ 2390}# (cons (list #{k\ 2427}# #{a\ 2421}# #{init\ 2422}#) #{rkey\ 2391}#))))) #{tmp\ 2411}#) (let ((#{tmp\ 2428}# ($sc-dispatch #{tmp\ 2396}# '((any any any) . any)))) (if (if #{tmp\ 2428}# (@apply (lambda (#{a\ 2433}# #{init\ 2434}# #{k\ 2435}# #{b\ 2436}#) (if (#{id?\ 379}# #{a\ 2433}#) (keyword? (syntax->datum #{k\ 2435}#)) #f)) #{tmp\ 2428}#) #f) (@apply (lambda (#{a\ 2443}# #{init\ 2444}# #{k\ 2445}# #{b\ 2446}#) (#{key\ 2279}# #{b\ 2446}# #{req\ 2389}# #{opt\ 2390}# (cons (list #{k\ 2445}# #{a\ 2443}# #{init\ 2444}#) #{rkey\ 2391}#))) #{tmp\ 2428}#) (let ((#{tmp\ 2447}# ($sc-dispatch #{tmp\ 2396}# '(any)))) (if (if #{tmp\ 2447}# (@apply (lambda (#{aok\ 2449}#) (eq? (syntax->datum #{aok\ 2449}#) #:allow-other-keys)) #{tmp\ 2447}#) #f) (@apply (lambda (#{aok\ 2451}#) (#{check\ 2283}# #{req\ 2389}# #{opt\ 2390}# #f (cons #t (reverse #{rkey\ 2391}#)))) #{tmp\ 2447}#) (let ((#{tmp\ 2452}# ($sc-dispatch #{tmp\ 2396}# '(any any any)))) (if (if #{tmp\ 2452}# (@apply (lambda (#{aok\ 2456}# #{a\ 2457}# #{b\ 2458}#) (if (eq? (syntax->datum #{aok\ 2456}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 2457}#) #:rest) #f)) #{tmp\ 2452}#) #f) (@apply (lambda (#{aok\ 2464}# #{a\ 2465}# #{b\ 2466}#) (#{rest\ 2281}# #{b\ 2466}# #{req\ 2389}# #{opt\ 2390}# (cons #t (reverse #{rkey\ 2391}#)))) #{tmp\ 2452}#) (let ((#{tmp\ 2467}# ($sc-dispatch #{tmp\ 2396}# '(any . any)))) (if (if #{tmp\ 2467}# (@apply (lambda (#{aok\ 2470}# #{r\ 2471}#) (if (eq? (syntax->datum #{aok\ 2470}#) #:allow-other-keys) (#{id?\ 379}# #{r\ 2471}#) #f)) #{tmp\ 2467}#) #f) (@apply (lambda (#{aok\ 2476}# #{r\ 2477}#) (#{rest\ 2281}# #{r\ 2477}# #{req\ 2389}# #{opt\ 2390}# (cons #t (reverse #{rkey\ 2391}#)))) #{tmp\ 2467}#) (let ((#{tmp\ 2478}# ($sc-dispatch #{tmp\ 2396}# '(any any)))) (if (if #{tmp\ 2478}# (@apply (lambda (#{a\ 2481}# #{b\ 2482}#) (eq? (syntax->datum #{a\ 2481}#) #:rest)) #{tmp\ 2478}#) #f) (@apply (lambda (#{a\ 2485}# #{b\ 2486}#) (#{rest\ 2281}# #{b\ 2486}# #{req\ 2389}# #{opt\ 2390}# (cons #f (reverse #{rkey\ 2391}#)))) #{tmp\ 2478}#) (let ((#{tmp\ 2487}# (list #{tmp\ 2396}#))) (if (if #{tmp\ 2487}# (@apply (lambda (#{r\ 2489}#) (#{id?\ 379}# #{r\ 2489}#)) #{tmp\ 2487}#) #f) (@apply (lambda (#{r\ 2491}#) (#{rest\ 2281}# #{r\ 2491}# #{req\ 2389}# #{opt\ 2390}# (cons #f (reverse #{rkey\ 2391}#)))) #{tmp\ 2487}#) (let ((#{else\ 2493}# #{tmp\ 2396}#)) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 2272}# #{args\ 2388}#))))))))))))))))))))))) (#{rest\ 2281}# (lambda (#{args\ 2494}# #{req\ 2495}# #{opt\ 2496}# #{kw\ 2497}#) (let ((#{tmp\ 2502}# #{args\ 2494}#)) (let ((#{tmp\ 2503}# (list #{tmp\ 2502}#))) (if (if #{tmp\ 2503}# (@apply (lambda (#{r\ 2505}#) (#{id?\ 379}# #{r\ 2505}#)) #{tmp\ 2503}#) #f) (@apply (lambda (#{r\ 2507}#) (#{check\ 2283}# #{req\ 2495}# #{opt\ 2496}# #{r\ 2507}# #{kw\ 2497}#)) #{tmp\ 2503}#) (let ((#{else\ 2509}# #{tmp\ 2502}#)) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 2272}# #{args\ 2494}#))))))) (#{check\ 2283}# (lambda (#{req\ 2510}# #{opt\ 2511}# #{rest\ 2512}# #{kw\ 2513}#) (if (#{distinct-bound-ids?\ 441}# (append #{req\ 2510}# (map car #{opt\ 2511}#) (if #{rest\ 2512}# (list #{rest\ 2512}#) '()) (if (pair? #{kw\ 2513}#) (map cadr (cdr #{kw\ 2513}#)) '()))) (values #{req\ 2510}# #{opt\ 2511}# #{rest\ 2512}# #{kw\ 2513}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 2272}#))))) (begin (#{req\ 2275}# #{orig-args\ 2272}# '()))))) (#{chi-lambda-case\ 485}# (lambda (#{e\ 2521}# #{r\ 2522}# #{w\ 2523}# #{s\ 2524}# #{mod\ 2525}# #{get-formals\ 2526}# #{clauses\ 2527}#) (letrec* ((#{expand-req\ 2536}# (lambda (#{req\ 2543}# #{opt\ 2544}# #{rest\ 2545}# #{kw\ 2546}# #{body\ 2547}#) (begin (let ((#{vars\ 2555}# (map #{gen-var\ 489}# #{req\ 2543}#)) (#{labels\ 2556}# (#{gen-labels\ 394}# #{req\ 2543}#))) (begin (let ((#{r*\ 2559}# (#{extend-var-env\ 369}# #{labels\ 2556}# #{vars\ 2555}# #{r\ 2522}#)) (#{w*\ 2560}# (#{make-binding-wrap\ 423}# #{req\ 2543}# #{labels\ 2556}# #{w\ 2523}#))) (#{expand-opt\ 2538}# (map syntax->datum #{req\ 2543}#) #{opt\ 2544}# #{rest\ 2545}# #{kw\ 2546}# #{body\ 2547}# (reverse #{vars\ 2555}#) #{r*\ 2559}# #{w*\ 2560}# '() '()))))))) (#{expand-opt\ 2538}# (lambda (#{req\ 2561}# #{opt\ 2562}# #{rest\ 2563}# #{kw\ 2564}# #{body\ 2565}# #{vars\ 2566}# #{r*\ 2567}# #{w*\ 2568}# #{out\ 2569}# #{inits\ 2570}#) (if (pair? #{opt\ 2562}#) (let ((#{tmp\ 2583}# (car #{opt\ 2562}#))) (let ((#{tmp\ 2584}# ($sc-dispatch #{tmp\ 2583}# '(any any)))) (if #{tmp\ 2584}# (@apply (lambda (#{id\ 2587}# #{i\ 2588}#) (begin (let ((#{v\ 2591}# (#{gen-var\ 489}# #{id\ 2587}#))) (begin (let ((#{l\ 2593}# (#{gen-labels\ 394}# (list #{v\ 2591}#)))) (begin (let ((#{r**\ 2595}# (#{extend-var-env\ 369}# #{l\ 2593}# (list #{v\ 2591}#) #{r*\ 2567}#))) (begin (let ((#{w**\ 2597}# (#{make-binding-wrap\ 423}# (list #{id\ 2587}#) #{l\ 2593}# #{w*\ 2568}#))) (#{expand-opt\ 2538}# #{req\ 2561}# (cdr #{opt\ 2562}#) #{rest\ 2563}# #{kw\ 2564}# #{body\ 2565}# (cons #{v\ 2591}# #{vars\ 2566}#) #{r**\ 2595}# #{w**\ 2597}# (cons (syntax->datum #{id\ 2587}#) #{out\ 2569}#) (cons (#{chi\ 461}# #{i\ 2588}# #{r*\ 2567}# #{w*\ 2568}# #{mod\ 2525}#) #{inits\ 2570}#))))))))))) #{tmp\ 2584}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2583}#)))) (if #{rest\ 2563}# (begin (let ((#{v\ 2602}# (#{gen-var\ 489}# #{rest\ 2563}#))) (begin (let ((#{l\ 2604}# (#{gen-labels\ 394}# (list #{v\ 2602}#)))) (begin (let ((#{r*\ 2606}# (#{extend-var-env\ 369}# #{l\ 2604}# (list #{v\ 2602}#) #{r*\ 2567}#))) (begin (let ((#{w*\ 2608}# (#{make-binding-wrap\ 423}# (list #{rest\ 2563}#) #{l\ 2604}# #{w*\ 2568}#))) (#{expand-kw\ 2540}# #{req\ 2561}# (if (pair? #{out\ 2569}#) (reverse #{out\ 2569}#) #f) (syntax->datum #{rest\ 2563}#) (if (pair? #{kw\ 2564}#) (cdr #{kw\ 2564}#) #{kw\ 2564}#) #{body\ 2565}# (cons #{v\ 2602}# #{vars\ 2566}#) #{r*\ 2606}# #{w*\ 2608}# (if (pair? #{kw\ 2564}#) (car #{kw\ 2564}#) #f) '() #{inits\ 2570}#))))))))) (#{expand-kw\ 2540}# #{req\ 2561}# (if (pair? #{out\ 2569}#) (reverse #{out\ 2569}#) #f) #f (if (pair? #{kw\ 2564}#) (cdr #{kw\ 2564}#) #{kw\ 2564}#) #{body\ 2565}# #{vars\ 2566}# #{r*\ 2567}# #{w*\ 2568}# (if (pair? #{kw\ 2564}#) (car #{kw\ 2564}#) #f) '() #{inits\ 2570}#))))) (#{expand-kw\ 2540}# (lambda (#{req\ 2610}# #{opt\ 2611}# #{rest\ 2612}# #{kw\ 2613}# #{body\ 2614}# #{vars\ 2615}# #{r*\ 2616}# #{w*\ 2617}# #{aok\ 2618}# #{out\ 2619}# #{inits\ 2620}#) (if (pair? #{kw\ 2613}#) (let ((#{tmp\ 2634}# (car #{kw\ 2613}#))) (let ((#{tmp\ 2635}# ($sc-dispatch #{tmp\ 2634}# '(any any any)))) (if #{tmp\ 2635}# (@apply (lambda (#{k\ 2639}# #{id\ 2640}# #{i\ 2641}#) (begin (let ((#{v\ 2644}# (#{gen-var\ 489}# #{id\ 2640}#))) (begin (let ((#{l\ 2646}# (#{gen-labels\ 394}# (list #{v\ 2644}#)))) (begin (let ((#{r**\ 2648}# (#{extend-var-env\ 369}# #{l\ 2646}# (list #{v\ 2644}#) #{r*\ 2616}#))) (begin (let ((#{w**\ 2650}# (#{make-binding-wrap\ 423}# (list #{id\ 2640}#) #{l\ 2646}# #{w*\ 2617}#))) (#{expand-kw\ 2540}# #{req\ 2610}# #{opt\ 2611}# #{rest\ 2612}# (cdr #{kw\ 2613}#) #{body\ 2614}# (cons #{v\ 2644}# #{vars\ 2615}#) #{r**\ 2648}# #{w**\ 2650}# #{aok\ 2618}# (cons (list (syntax->datum #{k\ 2639}#) (syntax->datum #{id\ 2640}#) #{v\ 2644}#) #{out\ 2619}#) (cons (#{chi\ 461}# #{i\ 2641}# #{r*\ 2616}# #{w*\ 2617}# #{mod\ 2525}#) #{inits\ 2620}#))))))))))) #{tmp\ 2635}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2634}#)))) (#{expand-body\ 2542}# #{req\ 2610}# #{opt\ 2611}# #{rest\ 2612}# (if (begin (let ((#{t\ 2654}# #{aok\ 2618}#)) (if #{t\ 2654}# #{t\ 2654}# (pair? #{out\ 2619}#)))) (cons #{aok\ 2618}# (reverse #{out\ 2619}#)) #f) #{body\ 2614}# (reverse #{vars\ 2615}#) #{r*\ 2616}# #{w*\ 2617}# (reverse #{inits\ 2620}#) '())))) (#{expand-body\ 2542}# (lambda (#{req\ 2656}# #{opt\ 2657}# #{rest\ 2658}# #{kw\ 2659}# #{body\ 2660}# #{vars\ 2661}# #{r*\ 2662}# #{w*\ 2663}# #{inits\ 2664}# #{meta\ 2665}#) (let ((#{tmp\ 2676}# #{body\ 2660}#)) (let ((#{tmp\ 2677}# ($sc-dispatch #{tmp\ 2676}# '(any any . each-any)))) (if (if #{tmp\ 2677}# (@apply (lambda (#{docstring\ 2681}# #{e1\ 2682}# #{e2\ 2683}#) (string? (syntax->datum #{docstring\ 2681}#))) #{tmp\ 2677}#) #f) (@apply (lambda (#{docstring\ 2687}# #{e1\ 2688}# #{e2\ 2689}#) (#{expand-body\ 2542}# #{req\ 2656}# #{opt\ 2657}# #{rest\ 2658}# #{kw\ 2659}# (cons #{e1\ 2688}# #{e2\ 2689}#) #{vars\ 2661}# #{r*\ 2662}# #{w*\ 2663}# #{inits\ 2664}# (append #{meta\ 2665}# (list (cons 'documentation (syntax->datum #{docstring\ 2687}#)))))) #{tmp\ 2677}#) (let ((#{tmp\ 2692}# ($sc-dispatch #{tmp\ 2676}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 2692}# (@apply (lambda (#{k\ 2697}# #{v\ 2698}# #{e1\ 2699}# #{e2\ 2700}#) (#{expand-body\ 2542}# #{req\ 2656}# #{opt\ 2657}# #{rest\ 2658}# #{kw\ 2659}# (cons #{e1\ 2699}# #{e2\ 2700}#) #{vars\ 2661}# #{r*\ 2662}# #{w*\ 2663}# #{inits\ 2664}# (append #{meta\ 2665}# (syntax->datum (map cons #{k\ 2697}# #{v\ 2698}#))))) #{tmp\ 2692}#) (let ((#{tmp\ 2704}# ($sc-dispatch #{tmp\ 2676}# '(any . each-any)))) (if #{tmp\ 2704}# (@apply (lambda (#{e1\ 2707}# #{e2\ 2708}#) (values #{meta\ 2665}# #{req\ 2656}# #{opt\ 2657}# #{rest\ 2658}# #{kw\ 2659}# #{inits\ 2664}# #{vars\ 2661}# (#{chi-body\ 469}# (cons #{e1\ 2707}# #{e2\ 2708}#) (#{source-wrap\ 447}# #{e\ 2521}# #{w\ 2523}# #{s\ 2524}# #{mod\ 2525}#) #{r*\ 2662}# #{w*\ 2663}# #{mod\ 2525}#))) #{tmp\ 2704}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2676}#))))))))))) (begin (let ((#{tmp\ 2710}# #{clauses\ 2527}#)) (let ((#{tmp\ 2711}# ($sc-dispatch #{tmp\ 2710}# '()))) (if #{tmp\ 2711}# (@apply (lambda () (values '() #f)) #{tmp\ 2711}#) (let ((#{tmp\ 2712}# ($sc-dispatch #{tmp\ 2710}# '((any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 2712}# (@apply (lambda (#{args\ 2719}# #{e1\ 2720}# #{e2\ 2721}# #{args*\ 2722}# #{e1*\ 2723}# #{e2*\ 2724}#) (call-with-values (lambda () (#{get-formals\ 2526}# #{args\ 2719}#)) (lambda (#{req\ 2725}# #{opt\ 2726}# #{rest\ 2727}# #{kw\ 2728}#) (call-with-values (lambda () (#{expand-req\ 2536}# #{req\ 2725}# #{opt\ 2726}# #{rest\ 2727}# #{kw\ 2728}# (cons #{e1\ 2720}# #{e2\ 2721}#))) (lambda (#{meta\ 2734}# #{req\ 2735}# #{opt\ 2736}# #{rest\ 2737}# #{kw\ 2738}# #{inits\ 2739}# #{vars\ 2740}# #{body\ 2741}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 2521}# #{r\ 2522}# #{w\ 2523}# #{s\ 2524}# #{mod\ 2525}# #{get-formals\ 2526}# (map (lambda (#{tmp\ 2752}# #{tmp\ 2751}# #{tmp\ 2750}#) (cons #{tmp\ 2750}# (cons #{tmp\ 2751}# #{tmp\ 2752}#))) #{e2*\ 2724}# #{e1*\ 2723}# #{args*\ 2722}#))) (lambda (#{meta*\ 2754}# #{else*\ 2755}#) (values (append #{meta\ 2734}# #{meta*\ 2754}#) (#{build-lambda-case\ 327}# #{s\ 2524}# #{req\ 2735}# #{opt\ 2736}# #{rest\ 2737}# #{kw\ 2738}# #{inits\ 2739}# #{vars\ 2740}# #{body\ 2741}# #{else*\ 2755}#))))))))) #{tmp\ 2712}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2710}#)))))))))) (#{strip\ 487}# (lambda (#{x\ 2758}# #{w\ 2759}#) (if (memq 'top (car #{w\ 2759}#)) #{x\ 2758}# (letrec* ((#{f\ 2766}# (lambda (#{x\ 2767}#) (if (#{syntax-object?\ 345}# #{x\ 2767}#) (#{strip\ 487}# (#{syntax-object-expression\ 347}# #{x\ 2767}#) (#{syntax-object-wrap\ 349}# #{x\ 2767}#)) (if (pair? #{x\ 2767}#) (begin (let ((#{a\ 2774}# (#{f\ 2766}# (car #{x\ 2767}#))) (#{d\ 2775}# (#{f\ 2766}# (cdr #{x\ 2767}#)))) (if (if (eq? #{a\ 2774}# (car #{x\ 2767}#)) (eq? #{d\ 2775}# (cdr #{x\ 2767}#)) #f) #{x\ 2767}# (cons #{a\ 2774}# #{d\ 2775}#)))) (if (vector? #{x\ 2767}#) (begin (let ((#{old\ 2781}# (vector->list #{x\ 2767}#))) (begin (let ((#{new\ 2783}# (map #{f\ 2766}# #{old\ 2781}#))) (if (#{and-map*\ 37}# eq? #{old\ 2781}# #{new\ 2783}#) #{x\ 2767}# (list->vector #{new\ 2783}#)))))) #{x\ 2767}#)))))) (begin (#{f\ 2766}# #{x\ 2758}#)))))) (#{gen-var\ 489}# (lambda (#{id\ 2785}#) (begin (let ((#{id\ 2788}# (if (#{syntax-object?\ 345}# #{id\ 2785}#) (#{syntax-object-expression\ 347}# #{id\ 2785}#) #{id\ 2785}#))) (gensym (string-append (symbol->string #{id\ 2788}#) " ")))))) (#{lambda-var-list\ 491}# (lambda (#{vars\ 2790}#) (letrec* ((#{lvl\ 2796}# (lambda (#{vars\ 2797}# #{ls\ 2798}# #{w\ 2799}#) (if (pair? #{vars\ 2797}#) (#{lvl\ 2796}# (cdr #{vars\ 2797}#) (cons (#{wrap\ 445}# (car #{vars\ 2797}#) #{w\ 2799}# #f) #{ls\ 2798}#) #{w\ 2799}#) (if (#{id?\ 379}# #{vars\ 2797}#) (cons (#{wrap\ 445}# #{vars\ 2797}# #{w\ 2799}# #f) #{ls\ 2798}#) (if (null? #{vars\ 2797}#) #{ls\ 2798}# (if (#{syntax-object?\ 345}# #{vars\ 2797}#) (#{lvl\ 2796}# (#{syntax-object-expression\ 347}# #{vars\ 2797}#) #{ls\ 2798}# (#{join-wraps\ 427}# #{w\ 2799}# (#{syntax-object-wrap\ 349}# #{vars\ 2797}#))) (cons #{vars\ 2797}# #{ls\ 2798}#)))))))) (begin (#{lvl\ 2796}# #{vars\ 2790}# '() '(()))))))) (begin (set! #{make-primitive-ref\ 243}# (lambda (#{src\ 757}# #{name\ 758}#) (make-struct/no-tail (vector-ref %expanded-vtables 2) #{src\ 757}# #{name\ 758}#))) (set! #{fx+\ 282}# +) (set! #{fx-\ 284}# -) (set! #{fx=\ 286}# =) (set! #{fx<\ 288}# <) (set! #{set-syntax-object-expression!\ 353}# (lambda (#{x\ 1135}# #{update\ 1136}#) (vector-set! #{x\ 1135}# 1 #{update\ 1136}#))) (set! #{set-syntax-object-wrap!\ 355}# (lambda (#{x\ 1139}# #{update\ 1140}#) (vector-set! #{x\ 1139}# 2 #{update\ 1140}#))) (set! #{set-syntax-object-module!\ 357}# (lambda (#{x\ 1143}# #{update\ 1144}#) (vector-set! #{x\ 1143}# 3 #{update\ 1144}#))) (set! #{ribcage?\ 399}# (lambda (#{x\ 1224}#) (if (vector? #{x\ 1224}#) (if (= (vector-length #{x\ 1224}#) 4) (eq? (vector-ref #{x\ 1224}# 0) '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\ 2810}# #{r\ 2811}# #{w\ 2812}# #{s\ 2813}# #{mod\ 2814}#) (let ((#{tmp\ 2820}# #{e\ 2810}#)) (let ((#{tmp\ 2821}# ($sc-dispatch #{tmp\ 2820}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 2821}# (@apply (lambda (#{var\ 2826}# #{val\ 2827}# #{e1\ 2828}# #{e2\ 2829}#) (#{valid-bound-ids?\ 439}# #{var\ 2826}#)) #{tmp\ 2821}#) #f) (@apply (lambda (#{var\ 2835}# #{val\ 2836}# #{e1\ 2837}# #{e2\ 2838}#) (begin (let ((#{names\ 2840}# (map (lambda (#{x\ 2841}#) (#{id-var-name\ 433}# #{x\ 2841}# #{w\ 2812}#)) #{var\ 2835}#))) (begin (for-each (lambda (#{id\ 2844}# #{n\ 2845}#) (begin (let ((#{atom-key\ 2850}# (car (#{lookup\ 373}# #{n\ 2845}# #{r\ 2811}# #{mod\ 2814}#)))) (if (eqv? #{atom-key\ 2850}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 2810}# (#{source-wrap\ 447}# #{id\ 2844}# #{w\ 2812}# #{s\ 2813}# #{mod\ 2814}#)))))) #{var\ 2835}# #{names\ 2840}#) (#{chi-body\ 469}# (cons #{e1\ 2837}# #{e2\ 2838}#) (#{source-wrap\ 447}# #{e\ 2810}# #{w\ 2812}# #{s\ 2813}# #{mod\ 2814}#) (#{extend-env\ 367}# #{names\ 2840}# (begin (let ((#{trans-r\ 2856}# (#{macros-only-env\ 371}# #{r\ 2811}#))) (map (lambda (#{x\ 2857}#) (cons 'macro (#{eval-local-transformer\ 473}# (#{chi\ 461}# #{x\ 2857}# #{trans-r\ 2856}# #{w\ 2812}# #{mod\ 2814}#) #{mod\ 2814}#))) #{val\ 2836}#))) #{r\ 2811}#) #{w\ 2812}# #{mod\ 2814}#))))) #{tmp\ 2821}#) (let ((#{_\ 2862}# #{tmp\ 2820}#)) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 447}# #{e\ 2810}# #{w\ 2812}# #{s\ 2813}# #{mod\ 2814}#)))))))) (#{global-extend\ 375}# 'core 'quote (lambda (#{e\ 2863}# #{r\ 2864}# #{w\ 2865}# #{s\ 2866}# #{mod\ 2867}#) (let ((#{tmp\ 2873}# #{e\ 2863}#)) (let ((#{tmp\ 2874}# ($sc-dispatch #{tmp\ 2873}# '(_ any)))) (if #{tmp\ 2874}# (@apply (lambda (#{e\ 2876}#) (#{build-data\ 331}# #{s\ 2866}# (#{strip\ 487}# #{e\ 2876}# #{w\ 2865}#))) #{tmp\ 2874}#) (let ((#{_\ 2878}# #{tmp\ 2873}#)) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 447}# #{e\ 2863}# #{w\ 2865}# #{s\ 2866}# #{mod\ 2867}#)))))))) (#{global-extend\ 375}# 'core 'syntax (letrec* ((#{gen-syntax\ 2880}# (lambda (#{src\ 2895}# #{e\ 2896}# #{r\ 2897}# #{maps\ 2898}# #{ellipsis?\ 2899}# #{mod\ 2900}#) (if (#{id?\ 379}# #{e\ 2896}#) (begin (let ((#{label\ 2908}# (#{id-var-name\ 433}# #{e\ 2896}# '(())))) (begin (let ((#{b\ 2911}# (#{lookup\ 373}# #{label\ 2908}# #{r\ 2897}# #{mod\ 2900}#))) (if (eq? (car #{b\ 2911}#) 'syntax) (call-with-values (lambda () (begin (let ((#{var.lev\ 2914}# (cdr #{b\ 2911}#))) (#{gen-ref\ 2882}# #{src\ 2895}# (car #{var.lev\ 2914}#) (cdr #{var.lev\ 2914}#) #{maps\ 2898}#)))) (lambda (#{var\ 2916}# #{maps\ 2917}#) (values (list 'ref #{var\ 2916}#) #{maps\ 2917}#))) (if (#{ellipsis?\ 2899}# #{e\ 2896}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 2895}#) (values (list 'quote #{e\ 2896}#) #{maps\ 2898}#))))))) (let ((#{tmp\ 2922}# #{e\ 2896}#)) (let ((#{tmp\ 2923}# ($sc-dispatch #{tmp\ 2922}# '(any any)))) (if (if #{tmp\ 2923}# (@apply (lambda (#{dots\ 2926}# #{e\ 2927}#) (#{ellipsis?\ 2899}# #{dots\ 2926}#)) #{tmp\ 2923}#) #f) (@apply (lambda (#{dots\ 2930}# #{e\ 2931}#) (#{gen-syntax\ 2880}# #{src\ 2895}# #{e\ 2931}# #{r\ 2897}# #{maps\ 2898}# (lambda (#{x\ 2932}#) #f) #{mod\ 2900}#)) #{tmp\ 2923}#) (let ((#{tmp\ 2934}# ($sc-dispatch #{tmp\ 2922}# '(any any . any)))) (if (if #{tmp\ 2934}# (@apply (lambda (#{x\ 2938}# #{dots\ 2939}# #{y\ 2940}#) (#{ellipsis?\ 2899}# #{dots\ 2939}#)) #{tmp\ 2934}#) #f) (@apply (lambda (#{x\ 2944}# #{dots\ 2945}# #{y\ 2946}#) (letrec* ((#{f\ 2950}# (lambda (#{y\ 2951}# #{k\ 2952}#) (let ((#{tmp\ 2959}# #{y\ 2951}#)) (let ((#{tmp\ 2960}# ($sc-dispatch #{tmp\ 2959}# '(any . any)))) (if (if #{tmp\ 2960}# (@apply (lambda (#{dots\ 2963}# #{y\ 2964}#) (#{ellipsis?\ 2899}# #{dots\ 2963}#)) #{tmp\ 2960}#) #f) (@apply (lambda (#{dots\ 2967}# #{y\ 2968}#) (#{f\ 2950}# #{y\ 2968}# (lambda (#{maps\ 2969}#) (call-with-values (lambda () (#{k\ 2952}# (cons '() #{maps\ 2969}#))) (lambda (#{x\ 2971}# #{maps\ 2972}#) (if (null? (car #{maps\ 2972}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2895}#) (values (#{gen-mappend\ 2884}# #{x\ 2971}# (car #{maps\ 2972}#)) (cdr #{maps\ 2972}#)))))))) #{tmp\ 2960}#) (let ((#{_\ 2976}# #{tmp\ 2959}#)) (call-with-values (lambda () (#{gen-syntax\ 2880}# #{src\ 2895}# #{y\ 2951}# #{r\ 2897}# #{maps\ 2898}# #{ellipsis?\ 2899}# #{mod\ 2900}#)) (lambda (#{y\ 2977}# #{maps\ 2978}#) (call-with-values (lambda () (#{k\ 2952}# #{maps\ 2978}#)) (lambda (#{x\ 2981}# #{maps\ 2982}#) (values (#{gen-append\ 2890}# #{x\ 2981}# #{y\ 2977}#) #{maps\ 2982}#)))))))))))) (begin (#{f\ 2950}# #{y\ 2946}# (lambda (#{maps\ 2953}#) (call-with-values (lambda () (#{gen-syntax\ 2880}# #{src\ 2895}# #{x\ 2944}# #{r\ 2897}# (cons '() #{maps\ 2953}#) #{ellipsis?\ 2899}# #{mod\ 2900}#)) (lambda (#{x\ 2955}# #{maps\ 2956}#) (if (null? (car #{maps\ 2956}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2895}#) (values (#{gen-map\ 2886}# #{x\ 2955}# (car #{maps\ 2956}#)) (cdr #{maps\ 2956}#)))))))))) #{tmp\ 2934}#) (let ((#{tmp\ 2985}# ($sc-dispatch #{tmp\ 2922}# '(any . any)))) (if #{tmp\ 2985}# (@apply (lambda (#{x\ 2988}# #{y\ 2989}#) (call-with-values (lambda () (#{gen-syntax\ 2880}# #{src\ 2895}# #{x\ 2988}# #{r\ 2897}# #{maps\ 2898}# #{ellipsis?\ 2899}# #{mod\ 2900}#)) (lambda (#{x\ 2990}# #{maps\ 2991}#) (call-with-values (lambda () (#{gen-syntax\ 2880}# #{src\ 2895}# #{y\ 2989}# #{r\ 2897}# #{maps\ 2991}# #{ellipsis?\ 2899}# #{mod\ 2900}#)) (lambda (#{y\ 2994}# #{maps\ 2995}#) (values (#{gen-cons\ 2888}# #{x\ 2990}# #{y\ 2994}#) #{maps\ 2995}#)))))) #{tmp\ 2985}#) (let ((#{tmp\ 2998}# ($sc-dispatch #{tmp\ 2922}# '#(vector (any . each-any))))) (if #{tmp\ 2998}# (@apply (lambda (#{e1\ 3001}# #{e2\ 3002}#) (call-with-values (lambda () (#{gen-syntax\ 2880}# #{src\ 2895}# (cons #{e1\ 3001}# #{e2\ 3002}#) #{r\ 2897}# #{maps\ 2898}# #{ellipsis?\ 2899}# #{mod\ 2900}#)) (lambda (#{e\ 3004}# #{maps\ 3005}#) (values (#{gen-vector\ 2892}# #{e\ 3004}#) #{maps\ 3005}#)))) #{tmp\ 2998}#) (let ((#{_\ 3009}# #{tmp\ 2922}#)) (values (list 'quote #{e\ 2896}#) #{maps\ 2898}#)))))))))))))) (#{gen-ref\ 2882}# (lambda (#{src\ 3011}# #{var\ 3012}# #{level\ 3013}# #{maps\ 3014}#) (if (#{fx=\ 286}# #{level\ 3013}# 0) (values #{var\ 3012}# #{maps\ 3014}#) (if (null? #{maps\ 3014}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 3011}#) (call-with-values (lambda () (#{gen-ref\ 2882}# #{src\ 3011}# #{var\ 3012}# (#{fx-\ 284}# #{level\ 3013}# 1) (cdr #{maps\ 3014}#))) (lambda (#{outer-var\ 3019}# #{outer-maps\ 3020}#) (begin (let ((#{b\ 3024}# (assq #{outer-var\ 3019}# (car #{maps\ 3014}#)))) (if #{b\ 3024}# (values (cdr #{b\ 3024}#) #{maps\ 3014}#) (begin (let ((#{inner-var\ 3026}# (#{gen-var\ 489}# 'tmp))) (values #{inner-var\ 3026}# (cons (cons (cons #{outer-var\ 3019}# #{inner-var\ 3026}#) (car #{maps\ 3014}#)) #{outer-maps\ 3020}#))))))))))))) (#{gen-mappend\ 2884}# (lambda (#{e\ 3027}# #{map-env\ 3028}#) (list 'apply '(primitive append) (#{gen-map\ 2886}# #{e\ 3027}# #{map-env\ 3028}#)))) (#{gen-map\ 2886}# (lambda (#{e\ 3032}# #{map-env\ 3033}#) (begin (let ((#{formals\ 3038}# (map cdr #{map-env\ 3033}#)) (#{actuals\ 3039}# (map (lambda (#{x\ 3040}#) (list 'ref (car #{x\ 3040}#))) #{map-env\ 3033}#))) (if (eq? (car #{e\ 3032}#) 'ref) (car #{actuals\ 3039}#) (if (and-map (lambda (#{x\ 3047}#) (if (eq? (car #{x\ 3047}#) 'ref) (memq (car (cdr #{x\ 3047}#)) #{formals\ 3038}#) #f)) (cdr #{e\ 3032}#)) (cons 'map (cons (list 'primitive (car #{e\ 3032}#)) (map (begin (let ((#{r\ 3053}# (map cons #{formals\ 3038}# #{actuals\ 3039}#))) (lambda (#{x\ 3054}#) (cdr (assq (car (cdr #{x\ 3054}#)) #{r\ 3053}#))))) (cdr #{e\ 3032}#)))) (cons 'map (cons (list 'lambda #{formals\ 3038}# #{e\ 3032}#) #{actuals\ 3039}#)))))))) (#{gen-cons\ 2888}# (lambda (#{x\ 3058}# #{y\ 3059}#) (begin (let ((#{atom-key\ 3064}# (car #{y\ 3059}#))) (if (eqv? #{atom-key\ 3064}# 'quote) (if (eq? (car #{x\ 3058}#) 'quote) (list 'quote (cons (car (cdr #{x\ 3058}#)) (car (cdr #{y\ 3059}#)))) (if (eq? (car (cdr #{y\ 3059}#)) '()) (list 'list #{x\ 3058}#) (list 'cons #{x\ 3058}# #{y\ 3059}#))) (if (eqv? #{atom-key\ 3064}# 'list) (cons 'list (cons #{x\ 3058}# (cdr #{y\ 3059}#))) (list 'cons #{x\ 3058}# #{y\ 3059}#))))))) (#{gen-append\ 2890}# (lambda (#{x\ 3073}# #{y\ 3074}#) (if (equal? #{y\ 3074}# ''()) #{x\ 3073}# (list 'append #{x\ 3073}# #{y\ 3074}#)))) (#{gen-vector\ 2892}# (lambda (#{x\ 3078}#) (if (eq? (car #{x\ 3078}#) 'list) (cons 'vector (cdr #{x\ 3078}#)) (if (eq? (car #{x\ 3078}#) 'quote) (list 'quote (list->vector (car (cdr #{x\ 3078}#)))) (list 'list->vector #{x\ 3078}#))))) (#{regen\ 2894}# (lambda (#{x\ 3088}#) (begin (let ((#{atom-key\ 3092}# (car #{x\ 3088}#))) (if (eqv? #{atom-key\ 3092}# 'ref) (#{build-lexical-reference\ 311}# 'value #f (car (cdr #{x\ 3088}#)) (car (cdr #{x\ 3088}#))) (if (eqv? #{atom-key\ 3092}# 'primitive) (#{build-primref\ 329}# #f (car (cdr #{x\ 3088}#))) (if (eqv? #{atom-key\ 3092}# 'quote) (#{build-data\ 331}# #f (car (cdr #{x\ 3088}#))) (if (eqv? #{atom-key\ 3092}# 'lambda) (if (list? (car (cdr #{x\ 3088}#))) (#{build-simple-lambda\ 323}# #f (car (cdr #{x\ 3088}#)) #f (car (cdr #{x\ 3088}#)) '() (#{regen\ 2894}# (car (cdr (cdr #{x\ 3088}#))))) (error "how did we get here" #{x\ 3088}#)) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f (car #{x\ 3088}#)) (map #{regen\ 2894}# (cdr #{x\ 3088}#)))))))))))) (begin (lambda (#{e\ 3104}# #{r\ 3105}# #{w\ 3106}# #{s\ 3107}# #{mod\ 3108}#) (begin (let ((#{e\ 3115}# (#{source-wrap\ 447}# #{e\ 3104}# #{w\ 3106}# #{s\ 3107}# #{mod\ 3108}#))) (let ((#{tmp\ 3116}# #{e\ 3115}#)) (let ((#{tmp\ 3117}# ($sc-dispatch #{tmp\ 3116}# '(_ any)))) (if #{tmp\ 3117}# (@apply (lambda (#{x\ 3119}#) (call-with-values (lambda () (#{gen-syntax\ 2880}# #{e\ 3115}# #{x\ 3119}# #{r\ 3105}# '() #{ellipsis?\ 477}# #{mod\ 3108}#)) (lambda (#{e\ 3120}# #{maps\ 3121}#) (#{regen\ 2894}# #{e\ 3120}#)))) #{tmp\ 3117}#) (let ((#{_\ 3125}# #{tmp\ 3116}#)) (syntax-violation 'syntax "bad `syntax' form" #{e\ 3115}#))))))))))) (#{global-extend\ 375}# 'core 'lambda (lambda (#{e\ 3126}# #{r\ 3127}# #{w\ 3128}# #{s\ 3129}# #{mod\ 3130}#) (let ((#{tmp\ 3136}# #{e\ 3126}#)) (let ((#{tmp\ 3137}# ($sc-dispatch #{tmp\ 3136}# '(_ any any . each-any)))) (if #{tmp\ 3137}# (@apply (lambda (#{args\ 3141}# #{e1\ 3142}# #{e2\ 3143}#) (call-with-values (lambda () (#{lambda-formals\ 479}# #{args\ 3141}#)) (lambda (#{req\ 3144}# #{opt\ 3145}# #{rest\ 3146}# #{kw\ 3147}#) (letrec* ((#{lp\ 3155}# (lambda (#{body\ 3156}# #{meta\ 3157}#) (let ((#{tmp\ 3159}# #{body\ 3156}#)) (let ((#{tmp\ 3160}# ($sc-dispatch #{tmp\ 3159}# '(any any . each-any)))) (if (if #{tmp\ 3160}# (@apply (lambda (#{docstring\ 3164}# #{e1\ 3165}# #{e2\ 3166}#) (string? (syntax->datum #{docstring\ 3164}#))) #{tmp\ 3160}#) #f) (@apply (lambda (#{docstring\ 3170}# #{e1\ 3171}# #{e2\ 3172}#) (#{lp\ 3155}# (cons #{e1\ 3171}# #{e2\ 3172}#) (append #{meta\ 3157}# (list (cons 'documentation (syntax->datum #{docstring\ 3170}#)))))) #{tmp\ 3160}#) (let ((#{tmp\ 3175}# ($sc-dispatch #{tmp\ 3159}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 3175}# (@apply (lambda (#{k\ 3180}# #{v\ 3181}# #{e1\ 3182}# #{e2\ 3183}#) (#{lp\ 3155}# (cons #{e1\ 3182}# #{e2\ 3183}#) (append #{meta\ 3157}# (syntax->datum (map cons #{k\ 3180}# #{v\ 3181}#))))) #{tmp\ 3175}#) (let ((#{_\ 3188}# #{tmp\ 3159}#)) (#{chi-simple-lambda\ 481}# #{e\ 3126}# #{r\ 3127}# #{w\ 3128}# #{s\ 3129}# #{mod\ 3130}# #{req\ 3144}# #{rest\ 3146}# #{meta\ 3157}# #{body\ 3156}#)))))))))) (begin (#{lp\ 3155}# (cons #{e1\ 3142}# #{e2\ 3143}#) '())))))) #{tmp\ 3137}#) (let ((#{_\ 3190}# #{tmp\ 3136}#)) (syntax-violation 'lambda "bad lambda" #{e\ 3126}#))))))) (#{global-extend\ 375}# 'core 'lambda* (lambda (#{e\ 3191}# #{r\ 3192}# #{w\ 3193}# #{s\ 3194}# #{mod\ 3195}#) (let ((#{tmp\ 3201}# #{e\ 3191}#)) (let ((#{tmp\ 3202}# ($sc-dispatch #{tmp\ 3201}# '(_ any any . each-any)))) (if #{tmp\ 3202}# (@apply (lambda (#{args\ 3206}# #{e1\ 3207}# #{e2\ 3208}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 3191}# #{r\ 3192}# #{w\ 3193}# #{s\ 3194}# #{mod\ 3195}# #{lambda*-formals\ 483}# (list (cons #{args\ 3206}# (cons #{e1\ 3207}# #{e2\ 3208}#))))) (lambda (#{meta\ 3210}# #{lcase\ 3211}#) (#{build-case-lambda\ 325}# #{s\ 3194}# #{meta\ 3210}# #{lcase\ 3211}#)))) #{tmp\ 3202}#) (let ((#{_\ 3215}# #{tmp\ 3201}#)) (syntax-violation 'lambda "bad lambda*" #{e\ 3191}#))))))) (#{global-extend\ 375}# 'core 'case-lambda (lambda (#{e\ 3216}# #{r\ 3217}# #{w\ 3218}# #{s\ 3219}# #{mod\ 3220}#) (let ((#{tmp\ 3226}# #{e\ 3216}#)) (let ((#{tmp\ 3227}# ($sc-dispatch #{tmp\ 3226}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3227}# (@apply (lambda (#{args\ 3234}# #{e1\ 3235}# #{e2\ 3236}# #{args*\ 3237}# #{e1*\ 3238}# #{e2*\ 3239}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 3216}# #{r\ 3217}# #{w\ 3218}# #{s\ 3219}# #{mod\ 3220}# #{lambda-formals\ 479}# (cons (cons #{args\ 3234}# (cons #{e1\ 3235}# #{e2\ 3236}#)) (map (lambda (#{tmp\ 3243}# #{tmp\ 3242}# #{tmp\ 3241}#) (cons #{tmp\ 3241}# (cons #{tmp\ 3242}# #{tmp\ 3243}#))) #{e2*\ 3239}# #{e1*\ 3238}# #{args*\ 3237}#)))) (lambda (#{meta\ 3245}# #{lcase\ 3246}#) (#{build-case-lambda\ 325}# #{s\ 3219}# #{meta\ 3245}# #{lcase\ 3246}#)))) #{tmp\ 3227}#) (let ((#{_\ 3250}# #{tmp\ 3226}#)) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 3216}#))))))) (#{global-extend\ 375}# 'core 'case-lambda* (lambda (#{e\ 3251}# #{r\ 3252}# #{w\ 3253}# #{s\ 3254}# #{mod\ 3255}#) (let ((#{tmp\ 3261}# #{e\ 3251}#)) (let ((#{tmp\ 3262}# ($sc-dispatch #{tmp\ 3261}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3262}# (@apply (lambda (#{args\ 3269}# #{e1\ 3270}# #{e2\ 3271}# #{args*\ 3272}# #{e1*\ 3273}# #{e2*\ 3274}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 3251}# #{r\ 3252}# #{w\ 3253}# #{s\ 3254}# #{mod\ 3255}# #{lambda*-formals\ 483}# (cons (cons #{args\ 3269}# (cons #{e1\ 3270}# #{e2\ 3271}#)) (map (lambda (#{tmp\ 3278}# #{tmp\ 3277}# #{tmp\ 3276}#) (cons #{tmp\ 3276}# (cons #{tmp\ 3277}# #{tmp\ 3278}#))) #{e2*\ 3274}# #{e1*\ 3273}# #{args*\ 3272}#)))) (lambda (#{meta\ 3280}# #{lcase\ 3281}#) (#{build-case-lambda\ 325}# #{s\ 3254}# #{meta\ 3280}# #{lcase\ 3281}#)))) #{tmp\ 3262}#) (let ((#{_\ 3285}# #{tmp\ 3261}#)) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 3251}#))))))) (#{global-extend\ 375}# 'core 'let (letrec* ((#{chi-let\ 3287}# (lambda (#{e\ 3288}# #{r\ 3289}# #{w\ 3290}# #{s\ 3291}# #{mod\ 3292}# #{constructor\ 3293}# #{ids\ 3294}# #{vals\ 3295}# #{exps\ 3296}#) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 3294}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 3288}#) (begin (let ((#{labels\ 3308}# (#{gen-labels\ 394}# #{ids\ 3294}#)) (#{new-vars\ 3309}# (map #{gen-var\ 489}# #{ids\ 3294}#))) (begin (let ((#{nw\ 3312}# (#{make-binding-wrap\ 423}# #{ids\ 3294}# #{labels\ 3308}# #{w\ 3290}#)) (#{nr\ 3313}# (#{extend-var-env\ 369}# #{labels\ 3308}# #{new-vars\ 3309}# #{r\ 3289}#))) (#{constructor\ 3293}# #{s\ 3291}# (map syntax->datum #{ids\ 3294}#) #{new-vars\ 3309}# (map (lambda (#{x\ 3314}#) (#{chi\ 461}# #{x\ 3314}# #{r\ 3289}# #{w\ 3290}# #{mod\ 3292}#)) #{vals\ 3295}#) (#{chi-body\ 469}# #{exps\ 3296}# (#{source-wrap\ 447}# #{e\ 3288}# #{nw\ 3312}# #{s\ 3291}# #{mod\ 3292}#) #{nr\ 3313}# #{nw\ 3312}# #{mod\ 3292}#)))))))))) (begin (lambda (#{e\ 3316}# #{r\ 3317}# #{w\ 3318}# #{s\ 3319}# #{mod\ 3320}#) (let ((#{tmp\ 3326}# #{e\ 3316}#)) (let ((#{tmp\ 3327}# ($sc-dispatch #{tmp\ 3326}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3327}# (@apply (lambda (#{id\ 3332}# #{val\ 3333}# #{e1\ 3334}# #{e2\ 3335}#) (and-map #{id?\ 379}# #{id\ 3332}#)) #{tmp\ 3327}#) #f) (@apply (lambda (#{id\ 3341}# #{val\ 3342}# #{e1\ 3343}# #{e2\ 3344}#) (#{chi-let\ 3287}# #{e\ 3316}# #{r\ 3317}# #{w\ 3318}# #{s\ 3319}# #{mod\ 3320}# #{build-let\ 335}# #{id\ 3341}# #{val\ 3342}# (cons #{e1\ 3343}# #{e2\ 3344}#))) #{tmp\ 3327}#) (let ((#{tmp\ 3348}# ($sc-dispatch #{tmp\ 3326}# '(_ any #(each (any any)) any . each-any)))) (if (if #{tmp\ 3348}# (@apply (lambda (#{f\ 3354}# #{id\ 3355}# #{val\ 3356}# #{e1\ 3357}# #{e2\ 3358}#) (if (#{id?\ 379}# #{f\ 3354}#) (and-map #{id?\ 379}# #{id\ 3355}#) #f)) #{tmp\ 3348}#) #f) (@apply (lambda (#{f\ 3367}# #{id\ 3368}# #{val\ 3369}# #{e1\ 3370}# #{e2\ 3371}#) (#{chi-let\ 3287}# #{e\ 3316}# #{r\ 3317}# #{w\ 3318}# #{s\ 3319}# #{mod\ 3320}# #{build-named-let\ 337}# (cons #{f\ 3367}# #{id\ 3368}#) #{val\ 3369}# (cons #{e1\ 3370}# #{e2\ 3371}#))) #{tmp\ 3348}#) (let ((#{_\ 3376}# #{tmp\ 3326}#)) (syntax-violation 'let "bad let" (#{source-wrap\ 447}# #{e\ 3316}# #{w\ 3318}# #{s\ 3319}# #{mod\ 3320}#)))))))))))) (#{global-extend\ 375}# 'core 'letrec (lambda (#{e\ 3377}# #{r\ 3378}# #{w\ 3379}# #{s\ 3380}# #{mod\ 3381}#) (let ((#{tmp\ 3387}# #{e\ 3377}#)) (let ((#{tmp\ 3388}# ($sc-dispatch #{tmp\ 3387}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3388}# (@apply (lambda (#{id\ 3393}# #{val\ 3394}# #{e1\ 3395}# #{e2\ 3396}#) (and-map #{id?\ 379}# #{id\ 3393}#)) #{tmp\ 3388}#) #f) (@apply (lambda (#{id\ 3402}# #{val\ 3403}# #{e1\ 3404}# #{e2\ 3405}#) (begin (let ((#{ids\ 3407}# #{id\ 3402}#)) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 3407}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 3377}#) (begin (let ((#{labels\ 3411}# (#{gen-labels\ 394}# #{ids\ 3407}#)) (#{new-vars\ 3412}# (map #{gen-var\ 489}# #{ids\ 3407}#))) (begin (let ((#{w\ 3415}# (#{make-binding-wrap\ 423}# #{ids\ 3407}# #{labels\ 3411}# #{w\ 3379}#)) (#{r\ 3416}# (#{extend-var-env\ 369}# #{labels\ 3411}# #{new-vars\ 3412}# #{r\ 3378}#))) (#{build-letrec\ 339}# #{s\ 3380}# #f (map syntax->datum #{ids\ 3407}#) #{new-vars\ 3412}# (map (lambda (#{x\ 3417}#) (#{chi\ 461}# #{x\ 3417}# #{r\ 3416}# #{w\ 3415}# #{mod\ 3381}#)) #{val\ 3403}#) (#{chi-body\ 469}# (cons #{e1\ 3404}# #{e2\ 3405}#) (#{source-wrap\ 447}# #{e\ 3377}# #{w\ 3415}# #{s\ 3380}# #{mod\ 3381}#) #{r\ 3416}# #{w\ 3415}# #{mod\ 3381}#)))))))))) #{tmp\ 3388}#) (let ((#{_\ 3422}# #{tmp\ 3387}#)) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 447}# #{e\ 3377}# #{w\ 3379}# #{s\ 3380}# #{mod\ 3381}#)))))))) (#{global-extend\ 375}# 'core 'letrec* (lambda (#{e\ 3423}# #{r\ 3424}# #{w\ 3425}# #{s\ 3426}# #{mod\ 3427}#) (let ((#{tmp\ 3433}# #{e\ 3423}#)) (let ((#{tmp\ 3434}# ($sc-dispatch #{tmp\ 3433}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3434}# (@apply (lambda (#{id\ 3439}# #{val\ 3440}# #{e1\ 3441}# #{e2\ 3442}#) (and-map #{id?\ 379}# #{id\ 3439}#)) #{tmp\ 3434}#) #f) (@apply (lambda (#{id\ 3448}# #{val\ 3449}# #{e1\ 3450}# #{e2\ 3451}#) (begin (let ((#{ids\ 3453}# #{id\ 3448}#)) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 3453}#)) (syntax-violation 'letrec* "duplicate bound variable" #{e\ 3423}#) (begin (let ((#{labels\ 3457}# (#{gen-labels\ 394}# #{ids\ 3453}#)) (#{new-vars\ 3458}# (map #{gen-var\ 489}# #{ids\ 3453}#))) (begin (let ((#{w\ 3461}# (#{make-binding-wrap\ 423}# #{ids\ 3453}# #{labels\ 3457}# #{w\ 3425}#)) (#{r\ 3462}# (#{extend-var-env\ 369}# #{labels\ 3457}# #{new-vars\ 3458}# #{r\ 3424}#))) (#{build-letrec\ 339}# #{s\ 3426}# #t (map syntax->datum #{ids\ 3453}#) #{new-vars\ 3458}# (map (lambda (#{x\ 3463}#) (#{chi\ 461}# #{x\ 3463}# #{r\ 3462}# #{w\ 3461}# #{mod\ 3427}#)) #{val\ 3449}#) (#{chi-body\ 469}# (cons #{e1\ 3450}# #{e2\ 3451}#) (#{source-wrap\ 447}# #{e\ 3423}# #{w\ 3461}# #{s\ 3426}# #{mod\ 3427}#) #{r\ 3462}# #{w\ 3461}# #{mod\ 3427}#)))))))))) #{tmp\ 3434}#) (let ((#{_\ 3468}# #{tmp\ 3433}#)) (syntax-violation 'letrec* "bad letrec*" (#{source-wrap\ 447}# #{e\ 3423}# #{w\ 3425}# #{s\ 3426}# #{mod\ 3427}#)))))))) (#{global-extend\ 375}# 'core 'set! (lambda (#{e\ 3469}# #{r\ 3470}# #{w\ 3471}# #{s\ 3472}# #{mod\ 3473}#) (let ((#{tmp\ 3479}# #{e\ 3469}#)) (let ((#{tmp\ 3480}# ($sc-dispatch #{tmp\ 3479}# '(_ any any)))) (if (if #{tmp\ 3480}# (@apply (lambda (#{id\ 3483}# #{val\ 3484}#) (#{id?\ 379}# #{id\ 3483}#)) #{tmp\ 3480}#) #f) (@apply (lambda (#{id\ 3487}# #{val\ 3488}#) (begin (let ((#{n\ 3491}# (#{id-var-name\ 433}# #{id\ 3487}# #{w\ 3471}#)) (#{id-mod\ 3492}# (if (#{syntax-object?\ 345}# #{id\ 3487}#) (#{syntax-object-module\ 351}# #{id\ 3487}#) #{mod\ 3473}#))) (begin (let ((#{b\ 3494}# (#{lookup\ 373}# #{n\ 3491}# #{r\ 3470}# #{id-mod\ 3492}#))) (begin (let ((#{atom-key\ 3497}# (car #{b\ 3494}#))) (if (eqv? #{atom-key\ 3497}# 'lexical) (#{build-lexical-assignment\ 313}# #{s\ 3472}# (syntax->datum #{id\ 3487}#) (cdr #{b\ 3494}#) (#{chi\ 461}# #{val\ 3488}# #{r\ 3470}# #{w\ 3471}# #{mod\ 3473}#)) (if (eqv? #{atom-key\ 3497}# 'global) (#{build-global-assignment\ 319}# #{s\ 3472}# #{n\ 3491}# (#{chi\ 461}# #{val\ 3488}# #{r\ 3470}# #{w\ 3471}# #{mod\ 3473}#) #{id-mod\ 3492}#) (if (eqv? #{atom-key\ 3497}# 'macro) (begin (let ((#{p\ 3504}# (cdr #{b\ 3494}#))) (if (procedure-property #{p\ 3504}# 'variable-transformer) (#{chi\ 461}# (#{chi-macro\ 467}# #{p\ 3504}# #{e\ 3469}# #{r\ 3470}# #{w\ 3471}# #{s\ 3472}# #f #{mod\ 3473}#) #{r\ 3470}# '(()) #{mod\ 3473}#) (syntax-violation 'set! "not a variable transformer" (#{wrap\ 445}# #{e\ 3469}# #{w\ 3471}# #{mod\ 3473}#) (#{wrap\ 445}# #{id\ 3487}# #{w\ 3471}# #{id-mod\ 3492}#))))) (if (eqv? #{atom-key\ 3497}# 'displaced-lexical) (syntax-violation 'set! "identifier out of context" (#{wrap\ 445}# #{id\ 3487}# #{w\ 3471}# #{mod\ 3473}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 447}# #{e\ 3469}# #{w\ 3471}# #{s\ 3472}# #{mod\ 3473}#))))))))))))) #{tmp\ 3480}#) (let ((#{tmp\ 3509}# ($sc-dispatch #{tmp\ 3479}# '(_ (any . each-any) any)))) (if #{tmp\ 3509}# (@apply (lambda (#{head\ 3513}# #{tail\ 3514}# #{val\ 3515}#) (call-with-values (lambda () (#{syntax-type\ 457}# #{head\ 3513}# #{r\ 3470}# '(()) #f #f #{mod\ 3473}# #t)) (lambda (#{type\ 3518}# #{value\ 3519}# #{ee\ 3520}# #{ww\ 3521}# #{ss\ 3522}# #{modmod\ 3523}#) (if (eqv? #{type\ 3518}# 'module-ref) (begin (let ((#{val\ 3532}# (#{chi\ 461}# #{val\ 3515}# #{r\ 3470}# #{w\ 3471}# #{mod\ 3473}#))) (call-with-values (lambda () (#{value\ 3519}# (cons #{head\ 3513}# #{tail\ 3514}#) #{r\ 3470}# #{w\ 3471}#)) (lambda (#{e\ 3534}# #{r\ 3535}# #{w\ 3536}# #{s*\ 3537}# #{mod\ 3538}#) (let ((#{tmp\ 3544}# #{e\ 3534}#)) (let ((#{tmp\ 3545}# (list #{tmp\ 3544}#))) (if (if #{tmp\ 3545}# (@apply (lambda (#{e\ 3547}#) (#{id?\ 379}# #{e\ 3547}#)) #{tmp\ 3545}#) #f) (@apply (lambda (#{e\ 3549}#) (#{build-global-assignment\ 319}# #{s\ 3472}# (syntax->datum #{e\ 3549}#) #{val\ 3532}# #{mod\ 3538}#)) #{tmp\ 3545}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3544}#)))))))) (#{build-application\ 305}# #{s\ 3472}# (#{chi\ 461}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3524" "i3525" "i3526" "i3527" "i3528" "i3529")) #(ribcage #(head tail val) #((top) (top) (top)) #("i3510" "i3511" "i3512")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3474" "i3475" "i3476" "i3477" "i3478")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) #{head\ 3513}#) #{r\ 3470}# #{w\ 3471}# #{mod\ 3473}#) (map (lambda (#{e\ 3551}#) (#{chi\ 461}# #{e\ 3551}# #{r\ 3470}# #{w\ 3471}# #{mod\ 3473}#)) (append #{tail\ 3514}# (list #{val\ 3515}#)))))))) #{tmp\ 3509}#) (let ((#{_\ 3555}# #{tmp\ 3479}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 447}# #{e\ 3469}# #{w\ 3471}# #{s\ 3472}# #{mod\ 3473}#)))))))))) (#{global-extend\ 375}# 'module-ref '@ (lambda (#{e\ 3556}# #{r\ 3557}# #{w\ 3558}#) (let ((#{tmp\ 3562}# #{e\ 3556}#)) (let ((#{tmp\ 3563}# ($sc-dispatch #{tmp\ 3562}# '(_ each-any any)))) (if (if #{tmp\ 3563}# (@apply (lambda (#{mod\ 3566}# #{id\ 3567}#) (if (and-map #{id?\ 379}# #{mod\ 3566}#) (#{id?\ 379}# #{id\ 3567}#) #f)) #{tmp\ 3563}#) #f) (@apply (lambda (#{mod\ 3573}# #{id\ 3574}#) (values (syntax->datum #{id\ 3574}#) #{r\ 3557}# #{w\ 3558}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(mod id) #((top) (top)) #("i3571" "i3572")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3559" "i3560" "i3561")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) #{mod\ 3573}#)))) #{tmp\ 3563}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3562}#)))))) (#{global-extend\ 375}# 'module-ref '@@ (lambda (#{e\ 3576}# #{r\ 3577}# #{w\ 3578}#) (letrec* ((#{remodulate\ 3583}# (lambda (#{x\ 3584}# #{mod\ 3585}#) (if (pair? #{x\ 3584}#) (cons (#{remodulate\ 3583}# (car #{x\ 3584}#) #{mod\ 3585}#) (#{remodulate\ 3583}# (cdr #{x\ 3584}#) #{mod\ 3585}#)) (if (#{syntax-object?\ 345}# #{x\ 3584}#) (#{make-syntax-object\ 343}# (#{remodulate\ 3583}# (#{syntax-object-expression\ 347}# #{x\ 3584}#) #{mod\ 3585}#) (#{syntax-object-wrap\ 349}# #{x\ 3584}#) #{mod\ 3585}#) (if (vector? #{x\ 3584}#) (begin (let ((#{n\ 3596}# (vector-length #{x\ 3584}#))) (begin (let ((#{v\ 3598}# (make-vector #{n\ 3596}#))) (letrec* ((#{loop\ 3601}# (lambda (#{i\ 3602}#) (if (#{fx=\ 286}# #{i\ 3602}# #{n\ 3596}#) (begin (if #f #f) #{v\ 3598}#) (begin (vector-set! #{v\ 3598}# #{i\ 3602}# (#{remodulate\ 3583}# (vector-ref #{x\ 3584}# #{i\ 3602}#) #{mod\ 3585}#)) (#{loop\ 3601}# (#{fx+\ 282}# #{i\ 3602}# 1))))))) (begin (#{loop\ 3601}# 0))))))) #{x\ 3584}#)))))) (begin (let ((#{tmp\ 3606}# #{e\ 3576}#)) (let ((#{tmp\ 3607}# ($sc-dispatch #{tmp\ 3606}# '(_ each-any any)))) (if (if #{tmp\ 3607}# (@apply (lambda (#{mod\ 3610}# #{exp\ 3611}#) (and-map #{id?\ 379}# #{mod\ 3610}#)) #{tmp\ 3607}#) #f) (@apply (lambda (#{mod\ 3615}# #{exp\ 3616}#) (begin (let ((#{mod\ 3618}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(mod exp) #((top) (top)) #("i3613" "i3614")) #(ribcage (remodulate) ((top)) ("i3582")) #(ribcage #(e r w) #((top) (top) (top)) #("i3579" "i3580" "i3581")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) #{mod\ 3615}#)))) (values (#{remodulate\ 3583}# #{exp\ 3616}# #{mod\ 3618}#) #{r\ 3577}# #{w\ 3578}# (#{source-annotation\ 360}# #{exp\ 3616}#) #{mod\ 3618}#)))) #{tmp\ 3607}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3606}#)))))))) (#{global-extend\ 375}# 'core 'if (lambda (#{e\ 3620}# #{r\ 3621}# #{w\ 3622}# #{s\ 3623}# #{mod\ 3624}#) (let ((#{tmp\ 3630}# #{e\ 3620}#)) (let ((#{tmp\ 3631}# ($sc-dispatch #{tmp\ 3630}# '(_ any any)))) (if #{tmp\ 3631}# (@apply (lambda (#{test\ 3634}# #{then\ 3635}#) (#{build-conditional\ 307}# #{s\ 3623}# (#{chi\ 461}# #{test\ 3634}# #{r\ 3621}# #{w\ 3622}# #{mod\ 3624}#) (#{chi\ 461}# #{then\ 3635}# #{r\ 3621}# #{w\ 3622}# #{mod\ 3624}#) (#{build-void\ 303}# #f))) #{tmp\ 3631}#) (let ((#{tmp\ 3637}# ($sc-dispatch #{tmp\ 3630}# '(_ any any any)))) (if #{tmp\ 3637}# (@apply (lambda (#{test\ 3641}# #{then\ 3642}# #{else\ 3643}#) (#{build-conditional\ 307}# #{s\ 3623}# (#{chi\ 461}# #{test\ 3641}# #{r\ 3621}# #{w\ 3622}# #{mod\ 3624}#) (#{chi\ 461}# #{then\ 3642}# #{r\ 3621}# #{w\ 3622}# #{mod\ 3624}#) (#{chi\ 461}# #{else\ 3643}# #{r\ 3621}# #{w\ 3622}# #{mod\ 3624}#))) #{tmp\ 3637}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3630}#)))))))) (#{global-extend\ 375}# 'core 'with-fluids (lambda (#{e\ 3644}# #{r\ 3645}# #{w\ 3646}# #{s\ 3647}# #{mod\ 3648}#) (let ((#{tmp\ 3654}# #{e\ 3644}#)) (let ((#{tmp\ 3655}# ($sc-dispatch #{tmp\ 3654}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 3655}# (@apply (lambda (#{fluid\ 3660}# #{val\ 3661}# #{b\ 3662}# #{b*\ 3663}#) (#{build-dynlet\ 309}# #{s\ 3647}# (map (lambda (#{x\ 3664}#) (#{chi\ 461}# #{x\ 3664}# #{r\ 3645}# #{w\ 3646}# #{mod\ 3648}#)) #{fluid\ 3660}#) (map (lambda (#{x\ 3667}#) (#{chi\ 461}# #{x\ 3667}# #{r\ 3645}# #{w\ 3646}# #{mod\ 3648}#)) #{val\ 3661}#) (#{chi-body\ 469}# (cons #{b\ 3662}# #{b*\ 3663}#) (#{source-wrap\ 447}# #{e\ 3644}# #{w\ 3646}# #{s\ 3647}# #{mod\ 3648}#) #{r\ 3645}# #{w\ 3646}# #{mod\ 3648}#))) #{tmp\ 3655}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3654}#)))))) (#{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\ 3672}# (lambda (#{pattern\ 3679}# #{keys\ 3680}#) (letrec* ((#{cvt*\ 3684}# (lambda (#{p*\ 3687}# #{n\ 3688}# #{ids\ 3689}#) (if (null? #{p*\ 3687}#) (values '() #{ids\ 3689}#) (call-with-values (lambda () (#{cvt*\ 3684}# (cdr #{p*\ 3687}#) #{n\ 3688}# #{ids\ 3689}#)) (lambda (#{y\ 3693}# #{ids\ 3694}#) (call-with-values (lambda () (#{cvt\ 3686}# (car #{p*\ 3687}#) #{n\ 3688}# #{ids\ 3694}#)) (lambda (#{x\ 3697}# #{ids\ 3698}#) (values (cons #{x\ 3697}# #{y\ 3693}#) #{ids\ 3698}#)))))))) (#{cvt\ 3686}# (lambda (#{p\ 3701}# #{n\ 3702}# #{ids\ 3703}#) (if (#{id?\ 379}# #{p\ 3701}#) (if (#{bound-id-member?\ 443}# #{p\ 3701}# #{keys\ 3680}#) (values (vector 'free-id #{p\ 3701}#) #{ids\ 3703}#) (if (#{free-id=?\ 435}# #{p\ 3701}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3704" "i3705" "i3706")) #(ribcage (cvt cvt*) ((top) (top)) ("i3685" "i3683")) #(ribcage #(pattern keys) #((top) (top)) #("i3681" "i3682")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3677" "i3675" "i3673" "i3671")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) (values '_ #{ids\ 3703}#) (values 'any (cons (cons #{p\ 3701}# #{n\ 3702}#) #{ids\ 3703}#)))) (let ((#{tmp\ 3712}# #{p\ 3701}#)) (let ((#{tmp\ 3713}# ($sc-dispatch #{tmp\ 3712}# '(any any)))) (if (if #{tmp\ 3713}# (@apply (lambda (#{x\ 3716}# #{dots\ 3717}#) (#{ellipsis?\ 477}# #{dots\ 3717}#)) #{tmp\ 3713}#) #f) (@apply (lambda (#{x\ 3720}# #{dots\ 3721}#) (call-with-values (lambda () (#{cvt\ 3686}# #{x\ 3720}# (#{fx+\ 282}# #{n\ 3702}# 1) #{ids\ 3703}#)) (lambda (#{p\ 3722}# #{ids\ 3723}#) (values (if (eq? #{p\ 3722}# 'any) 'each-any (vector 'each #{p\ 3722}#)) #{ids\ 3723}#)))) #{tmp\ 3713}#) (let ((#{tmp\ 3726}# ($sc-dispatch #{tmp\ 3712}# '(any any . each-any)))) (if (if #{tmp\ 3726}# (@apply (lambda (#{x\ 3730}# #{dots\ 3731}# #{ys\ 3732}#) (#{ellipsis?\ 477}# #{dots\ 3731}#)) #{tmp\ 3726}#) #f) (@apply (lambda (#{x\ 3736}# #{dots\ 3737}# #{ys\ 3738}#) (call-with-values (lambda () (#{cvt*\ 3684}# #{ys\ 3738}# #{n\ 3702}# #{ids\ 3703}#)) (lambda (#{ys\ 3740}# #{ids\ 3741}#) (call-with-values (lambda () (#{cvt\ 3686}# #{x\ 3736}# (1+ #{n\ 3702}#) #{ids\ 3741}#)) (lambda (#{x\ 3744}# #{ids\ 3745}#) (values (vector 'each+ #{x\ 3744}# (reverse #{ys\ 3740}#) '()) #{ids\ 3745}#)))))) #{tmp\ 3726}#) (let ((#{tmp\ 3749}# ($sc-dispatch #{tmp\ 3712}# '(any . any)))) (if #{tmp\ 3749}# (@apply (lambda (#{x\ 3752}# #{y\ 3753}#) (call-with-values (lambda () (#{cvt\ 3686}# #{y\ 3753}# #{n\ 3702}# #{ids\ 3703}#)) (lambda (#{y\ 3754}# #{ids\ 3755}#) (call-with-values (lambda () (#{cvt\ 3686}# #{x\ 3752}# #{n\ 3702}# #{ids\ 3755}#)) (lambda (#{x\ 3758}# #{ids\ 3759}#) (values (cons #{x\ 3758}# #{y\ 3754}#) #{ids\ 3759}#)))))) #{tmp\ 3749}#) (let ((#{tmp\ 3762}# ($sc-dispatch #{tmp\ 3712}# '()))) (if #{tmp\ 3762}# (@apply (lambda () (values '() #{ids\ 3703}#)) #{tmp\ 3762}#) (let ((#{tmp\ 3763}# ($sc-dispatch #{tmp\ 3712}# '#(vector each-any)))) (if #{tmp\ 3763}# (@apply (lambda (#{x\ 3765}#) (call-with-values (lambda () (#{cvt\ 3686}# #{x\ 3765}# #{n\ 3702}# #{ids\ 3703}#)) (lambda (#{p\ 3767}# #{ids\ 3768}#) (values (vector 'vector #{p\ 3767}#) #{ids\ 3768}#)))) #{tmp\ 3763}#) (let ((#{x\ 3772}# #{tmp\ 3712}#)) (values (vector 'atom (#{strip\ 487}# #{p\ 3701}# '(()))) #{ids\ 3703}#))))))))))))))))) (begin (#{cvt\ 3686}# #{pattern\ 3679}# 0 '()))))) (#{build-dispatch-call\ 3674}# (lambda (#{pvars\ 3774}# #{exp\ 3775}# #{y\ 3776}# #{r\ 3777}# #{mod\ 3778}#) (begin (map cdr #{pvars\ 3774}#) (let ((#{ids\ 3786}# (map car #{pvars\ 3774}#))) (begin (let ((#{labels\ 3790}# (#{gen-labels\ 394}# #{ids\ 3786}#)) (#{new-vars\ 3791}# (map #{gen-var\ 489}# #{ids\ 3786}#))) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f 'apply) (list (#{build-simple-lambda\ 323}# #f (map syntax->datum #{ids\ 3786}#) #f #{new-vars\ 3791}# '() (#{chi\ 461}# #{exp\ 3775}# (#{extend-env\ 367}# #{labels\ 3790}# (map (lambda (#{var\ 3795}# #{level\ 3796}#) (cons 'syntax (cons #{var\ 3795}# #{level\ 3796}#))) #{new-vars\ 3791}# (map cdr #{pvars\ 3774}#)) #{r\ 3777}#) (#{make-binding-wrap\ 423}# #{ids\ 3786}# #{labels\ 3790}# '(())) #{mod\ 3778}#)) #{y\ 3776}#)))))))) (#{gen-clause\ 3676}# (lambda (#{x\ 3802}# #{keys\ 3803}# #{clauses\ 3804}# #{r\ 3805}# #{pat\ 3806}# #{fender\ 3807}# #{exp\ 3808}# #{mod\ 3809}#) (call-with-values (lambda () (#{convert-pattern\ 3672}# #{pat\ 3806}# #{keys\ 3803}#)) (lambda (#{p\ 3818}# #{pvars\ 3819}#) (if (not (#{distinct-bound-ids?\ 441}# (map car #{pvars\ 3819}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 3806}#) (if (not (and-map (lambda (#{x\ 3826}#) (not (#{ellipsis?\ 477}# (car #{x\ 3826}#)))) #{pvars\ 3819}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 3806}#) (begin (let ((#{y\ 3830}# (#{gen-var\ 489}# 'tmp))) (#{build-application\ 305}# #f (#{build-simple-lambda\ 323}# #f (list 'tmp) #f (list #{y\ 3830}#) '() (begin (let ((#{y\ 3834}# (#{build-lexical-reference\ 311}# 'value #f 'tmp #{y\ 3830}#))) (#{build-conditional\ 307}# #f (let ((#{tmp\ 3837}# #{fender\ 3807}#)) (let ((#{tmp\ 3838}# ($sc-dispatch #{tmp\ 3837}# '#(atom #t)))) (if #{tmp\ 3838}# (@apply (lambda () #{y\ 3834}#) #{tmp\ 3838}#) (let ((#{_\ 3840}# #{tmp\ 3837}#)) (#{build-conditional\ 307}# #f #{y\ 3834}# (#{build-dispatch-call\ 3674}# #{pvars\ 3819}# #{fender\ 3807}# #{y\ 3834}# #{r\ 3805}# #{mod\ 3809}#) (#{build-data\ 331}# #f #f)))))) (#{build-dispatch-call\ 3674}# #{pvars\ 3819}# #{exp\ 3808}# #{y\ 3834}# #{r\ 3805}# #{mod\ 3809}#) (#{gen-syntax-case\ 3678}# #{x\ 3802}# #{keys\ 3803}# #{clauses\ 3804}# #{r\ 3805}# #{mod\ 3809}#))))) (list (if (eq? #{p\ 3818}# 'any) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f 'list) (list #{x\ 3802}#)) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f '$sc-dispatch) (list #{x\ 3802}# (#{build-data\ 331}# #f #{p\ 3818}#)))))))))))))) (#{gen-syntax-case\ 3678}# (lambda (#{x\ 3848}# #{keys\ 3849}# #{clauses\ 3850}# #{r\ 3851}# #{mod\ 3852}#) (if (null? #{clauses\ 3850}#) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f 'syntax-violation) (list (#{build-data\ 331}# #f #f) (#{build-data\ 331}# #f "source expression failed to match any pattern") #{x\ 3848}#)) (let ((#{tmp\ 3862}# (car #{clauses\ 3850}#))) (let ((#{tmp\ 3863}# ($sc-dispatch #{tmp\ 3862}# '(any any)))) (if #{tmp\ 3863}# (@apply (lambda (#{pat\ 3866}# #{exp\ 3867}#) (if (if (#{id?\ 379}# #{pat\ 3866}#) (and-map (lambda (#{x\ 3870}#) (not (#{free-id=?\ 435}# #{pat\ 3866}# #{x\ 3870}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3864" "i3865")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3853" "i3854" "i3855" "i3856" "i3857")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3677" "i3675" "i3673" "i3671")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) #{keys\ 3849}#)) #f) (if (#{free-id=?\ 435}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3864" "i3865")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3853" "i3854" "i3855" "i3856" "i3857")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3677" "i3675" "i3673" "i3671")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile)) '#(syntax-object _ ((top) #(ribcage #(pat exp) #((top) (top)) #("i3864" "i3865")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3853" "i3854" "i3855" "i3856" "i3857")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3677" "i3675" "i3673" "i3671")) #(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)) ("i490" "i488" "i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i419" "i418" "i416" "i415" "i414" "i413" "i412" "i410" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i393" "i391" "i390" "i389" "i388" "i387" "i386" "i385" "i384" "i383" "i381" "i380" "i378" "i376" "i374" "i372" "i370" "i368" "i366" "i365" "i364" "i363" "i362" "i361" "i359" "i358" "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" "i293" "i291" "i289" "i287" "i285" "i283" "i281" "i279" "i277" "i275" "i272" "i270" "i268" "i266" "i264" "i262" "i260" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i240" "i238")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i40" "i39" "i38" "i36"))) (hygiene guile))) (#{chi\ 461}# #{exp\ 3867}# #{r\ 3851}# '(()) #{mod\ 3852}#) (begin (let ((#{labels\ 3875}# (list (#{gen-label\ 392}#))) (#{var\ 3876}# (#{gen-var\ 489}# #{pat\ 3866}#))) (#{build-application\ 305}# #f (#{build-simple-lambda\ 323}# #f (list (syntax->datum #{pat\ 3866}#)) #f (list #{var\ 3876}#) '() (#{chi\ 461}# #{exp\ 3867}# (#{extend-env\ 367}# #{labels\ 3875}# (list (cons 'syntax (cons #{var\ 3876}# 0))) #{r\ 3851}#) (#{make-binding-wrap\ 423}# (list #{pat\ 3866}#) #{labels\ 3875}# '(())) #{mod\ 3852}#)) (list #{x\ 3848}#))))) (#{gen-clause\ 3676}# #{x\ 3848}# #{keys\ 3849}# (cdr #{clauses\ 3850}#) #{r\ 3851}# #{pat\ 3866}# #t #{exp\ 3867}# #{mod\ 3852}#))) #{tmp\ 3863}#) (let ((#{tmp\ 3882}# ($sc-dispatch #{tmp\ 3862}# '(any any any)))) (if #{tmp\ 3882}# (@apply (lambda (#{pat\ 3886}# #{fender\ 3887}# #{exp\ 3888}#) (#{gen-clause\ 3676}# #{x\ 3848}# #{keys\ 3849}# (cdr #{clauses\ 3850}#) #{r\ 3851}# #{pat\ 3886}# #{fender\ 3887}# #{exp\ 3888}# #{mod\ 3852}#)) #{tmp\ 3882}#) (let ((#{_\ 3890}# #{tmp\ 3862}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 3850}#)))))))))))) (begin (lambda (#{e\ 3891}# #{r\ 3892}# #{w\ 3893}# #{s\ 3894}# #{mod\ 3895}#) (begin (let ((#{e\ 3902}# (#{source-wrap\ 447}# #{e\ 3891}# #{w\ 3893}# #{s\ 3894}# #{mod\ 3895}#))) (let ((#{tmp\ 3903}# #{e\ 3902}#)) (let ((#{tmp\ 3904}# ($sc-dispatch #{tmp\ 3903}# '(_ any each-any . each-any)))) (if #{tmp\ 3904}# (@apply (lambda (#{val\ 3908}# #{key\ 3909}# #{m\ 3910}#) (if (and-map (lambda (#{x\ 3911}#) (if (#{id?\ 379}# #{x\ 3911}#) (not (#{ellipsis?\ 477}# #{x\ 3911}#)) #f)) #{key\ 3909}#) (begin (let ((#{x\ 3917}# (#{gen-var\ 489}# 'tmp))) (#{build-application\ 305}# #{s\ 3894}# (#{build-simple-lambda\ 323}# #f (list 'tmp) #f (list #{x\ 3917}#) '() (#{gen-syntax-case\ 3678}# (#{build-lexical-reference\ 311}# 'value #f 'tmp #{x\ 3917}#) #{key\ 3909}# #{m\ 3910}# #{r\ 3892}# #{mod\ 3895}#)) (list (#{chi\ 461}# #{val\ 3908}# #{r\ 3892}# '(()) #{mod\ 3895}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 3902}#))) #{tmp\ 3904}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3903}#)))))))))) (set! macroexpand (lambda* (#{x\ 3923}# #:optional (#{m\ 3925}# 'e) (#{esew\ 3927}# '(eval))) (#{chi-top\ 459}# #{x\ 3923}# '() '((top)) #{m\ 3925}# #{esew\ 3927}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x\ 3931}#) (#{nonsymbol-id?\ 377}# #{x\ 3931}#))) (set! datum->syntax (lambda (#{id\ 3933}# #{datum\ 3934}#) (#{make-syntax-object\ 343}# #{datum\ 3934}# (#{syntax-object-wrap\ 349}# #{id\ 3933}#) (#{syntax-object-module\ 351}# #{id\ 3933}#)))) (set! syntax->datum (lambda (#{x\ 3937}#) (#{strip\ 487}# #{x\ 3937}# '(())))) (set! syntax-source (lambda (#{x\ 3940}#) (#{source-annotation\ 360}# #{x\ 3940}#))) (set! generate-temporaries (lambda (#{ls\ 3942}#) (begin (begin (let ((#{x\ 3946}# #{ls\ 3942}#)) (if (not (list? #{x\ 3946}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 3946}#)))) (map (lambda (#{x\ 3947}#) (#{wrap\ 445}# (gensym) '((top)) #f)) #{ls\ 3942}#)))) (set! free-identifier=? (lambda (#{x\ 3951}# #{y\ 3952}#) (begin (begin (let ((#{x\ 3957}# #{x\ 3951}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3957}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3957}#)))) (begin (let ((#{x\ 3960}# #{y\ 3952}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3960}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3960}#)))) (#{free-id=?\ 435}# #{x\ 3951}# #{y\ 3952}#)))) (set! bound-identifier=? (lambda (#{x\ 3961}# #{y\ 3962}#) (begin (begin (let ((#{x\ 3967}# #{x\ 3961}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3967}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3967}#)))) (begin (let ((#{x\ 3970}# #{y\ 3962}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3970}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3970}#)))) (#{bound-id=?\ 437}# #{x\ 3961}# #{y\ 3962}#)))) (set! syntax-violation (lambda* (#{who\ 3971}# #{message\ 3972}# #{form\ 3973}# #:optional (#{subform\ 3977}# #f)) (begin (begin (let ((#{x\ 3981}# #{who\ 3971}#)) (if (not (let ((#{x\ 3982}# #{x\ 3981}#)) (begin (let ((#{t\ 3986}# (not #{x\ 3982}#))) (if #{t\ 3986}# #{t\ 3986}# (begin (let ((#{t\ 3989}# (string? #{x\ 3982}#))) (if #{t\ 3989}# #{t\ 3989}# (symbol? #{x\ 3982}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3981}#)))) (begin (let ((#{x\ 3993}# #{message\ 3972}#)) (if (not (string? #{x\ 3993}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3993}#)))) (throw 'syntax-error #{who\ 3971}# #{message\ 3972}# (#{source-annotation\ 360}# (begin (let ((#{t\ 3996}# #{form\ 3973}#)) (if #{t\ 3996}# #{t\ 3996}# #{subform\ 3977}#)))) (#{strip\ 487}# #{form\ 3973}# '(())) (if #{subform\ 3977}# (#{strip\ 487}# #{subform\ 3977}# '(())) #f))))) (letrec* ((#{match-each\ 4003}# (lambda (#{e\ 4016}# #{p\ 4017}# #{w\ 4018}# #{mod\ 4019}#) (if (pair? #{e\ 4016}#) (begin (let ((#{first\ 4027}# (#{match\ 4015}# (car #{e\ 4016}#) #{p\ 4017}# #{w\ 4018}# '() #{mod\ 4019}#))) (if #{first\ 4027}# (begin (let ((#{rest\ 4031}# (#{match-each\ 4003}# (cdr #{e\ 4016}#) #{p\ 4017}# #{w\ 4018}# #{mod\ 4019}#))) (if #{rest\ 4031}# (cons #{first\ 4027}# #{rest\ 4031}#) #f))) #f))) (if (null? #{e\ 4016}#) '() (if (#{syntax-object?\ 345}# #{e\ 4016}#) (#{match-each\ 4003}# (#{syntax-object-expression\ 347}# #{e\ 4016}#) #{p\ 4017}# (#{join-wraps\ 427}# #{w\ 4018}# (#{syntax-object-wrap\ 349}# #{e\ 4016}#)) (#{syntax-object-module\ 351}# #{e\ 4016}#)) #f))))) (#{match-each+\ 4005}# (lambda (#{e\ 4039}# #{x-pat\ 4040}# #{y-pat\ 4041}# #{z-pat\ 4042}# #{w\ 4043}# #{r\ 4044}# #{mod\ 4045}#) (letrec* ((#{f\ 4056}# (lambda (#{e\ 4057}# #{w\ 4058}#) (if (pair? #{e\ 4057}#) (call-with-values (lambda () (#{f\ 4056}# (cdr #{e\ 4057}#) #{w\ 4058}#)) (lambda (#{xr*\ 4061}# #{y-pat\ 4062}# #{r\ 4063}#) (if #{r\ 4063}# (if (null? #{y-pat\ 4062}#) (begin (let ((#{xr\ 4068}# (#{match\ 4015}# (car #{e\ 4057}#) #{x-pat\ 4040}# #{w\ 4058}# '() #{mod\ 4045}#))) (if #{xr\ 4068}# (values (cons #{xr\ 4068}# #{xr*\ 4061}#) #{y-pat\ 4062}# #{r\ 4063}#) (values #f #f #f)))) (values '() (cdr #{y-pat\ 4062}#) (#{match\ 4015}# (car #{e\ 4057}#) (car #{y-pat\ 4062}#) #{w\ 4058}# #{r\ 4063}# #{mod\ 4045}#))) (values #f #f #f)))) (if (#{syntax-object?\ 345}# #{e\ 4057}#) (#{f\ 4056}# (#{syntax-object-expression\ 347}# #{e\ 4057}#) (#{join-wraps\ 427}# #{w\ 4058}# #{e\ 4057}#)) (values '() #{y-pat\ 4041}# (#{match\ 4015}# #{e\ 4057}# #{z-pat\ 4042}# #{w\ 4058}# #{r\ 4044}# #{mod\ 4045}#))))))) (begin (#{f\ 4056}# #{e\ 4039}# #{w\ 4043}#))))) (#{match-each-any\ 4007}# (lambda (#{e\ 4072}# #{w\ 4073}# #{mod\ 4074}#) (if (pair? #{e\ 4072}#) (begin (let ((#{l\ 4081}# (#{match-each-any\ 4007}# (cdr #{e\ 4072}#) #{w\ 4073}# #{mod\ 4074}#))) (if #{l\ 4081}# (cons (#{wrap\ 445}# (car #{e\ 4072}#) #{w\ 4073}# #{mod\ 4074}#) #{l\ 4081}#) #f))) (if (null? #{e\ 4072}#) '() (if (#{syntax-object?\ 345}# #{e\ 4072}#) (#{match-each-any\ 4007}# (#{syntax-object-expression\ 347}# #{e\ 4072}#) (#{join-wraps\ 427}# #{w\ 4073}# (#{syntax-object-wrap\ 349}# #{e\ 4072}#)) #{mod\ 4074}#) #f))))) (#{match-empty\ 4009}# (lambda (#{p\ 4089}# #{r\ 4090}#) (if (null? #{p\ 4089}#) #{r\ 4090}# (if (eq? #{p\ 4089}# '_) #{r\ 4090}# (if (eq? #{p\ 4089}# 'any) (cons '() #{r\ 4090}#) (if (pair? #{p\ 4089}#) (#{match-empty\ 4009}# (car #{p\ 4089}#) (#{match-empty\ 4009}# (cdr #{p\ 4089}#) #{r\ 4090}#)) (if (eq? #{p\ 4089}# 'each-any) (cons '() #{r\ 4090}#) (begin (let ((#{atom-key\ 4106}# (vector-ref #{p\ 4089}# 0))) (if (eqv? #{atom-key\ 4106}# 'each) (#{match-empty\ 4009}# (vector-ref #{p\ 4089}# 1) #{r\ 4090}#) (if (eqv? #{atom-key\ 4106}# 'each+) (#{match-empty\ 4009}# (vector-ref #{p\ 4089}# 1) (#{match-empty\ 4009}# (reverse (vector-ref #{p\ 4089}# 2)) (#{match-empty\ 4009}# (vector-ref #{p\ 4089}# 3) #{r\ 4090}#))) (if (if (eqv? #{atom-key\ 4106}# 'free-id) #t (eqv? #{atom-key\ 4106}# 'atom)) #{r\ 4090}# (if (eqv? #{atom-key\ 4106}# 'vector) (#{match-empty\ 4009}# (vector-ref #{p\ 4089}# 1) #{r\ 4090}#)))))))))))))) (#{combine\ 4011}# (lambda (#{r*\ 4111}# #{r\ 4112}#) (if (null? (car #{r*\ 4111}#)) #{r\ 4112}# (cons (map car #{r*\ 4111}#) (#{combine\ 4011}# (map cdr #{r*\ 4111}#) #{r\ 4112}#))))) (#{match*\ 4013}# (lambda (#{e\ 4115}# #{p\ 4116}# #{w\ 4117}# #{r\ 4118}# #{mod\ 4119}#) (if (null? #{p\ 4116}#) (if (null? #{e\ 4115}#) #{r\ 4118}# #f) (if (pair? #{p\ 4116}#) (if (pair? #{e\ 4115}#) (#{match\ 4015}# (car #{e\ 4115}#) (car #{p\ 4116}#) #{w\ 4117}# (#{match\ 4015}# (cdr #{e\ 4115}#) (cdr #{p\ 4116}#) #{w\ 4117}# #{r\ 4118}# #{mod\ 4119}#) #{mod\ 4119}#) #f) (if (eq? #{p\ 4116}# 'each-any) (begin (let ((#{l\ 4136}# (#{match-each-any\ 4007}# #{e\ 4115}# #{w\ 4117}# #{mod\ 4119}#))) (if #{l\ 4136}# (cons #{l\ 4136}# #{r\ 4118}#) #f))) (begin (let ((#{atom-key\ 4142}# (vector-ref #{p\ 4116}# 0))) (if (eqv? #{atom-key\ 4142}# 'each) (if (null? #{e\ 4115}#) (#{match-empty\ 4009}# (vector-ref #{p\ 4116}# 1) #{r\ 4118}#) (begin (let ((#{l\ 4145}# (#{match-each\ 4003}# #{e\ 4115}# (vector-ref #{p\ 4116}# 1) #{w\ 4117}# #{mod\ 4119}#))) (if #{l\ 4145}# (letrec* ((#{collect\ 4150}# (lambda (#{l\ 4151}#) (if (null? (car #{l\ 4151}#)) #{r\ 4118}# (cons (map car #{l\ 4151}#) (#{collect\ 4150}# (map cdr #{l\ 4151}#))))))) (begin (#{collect\ 4150}# #{l\ 4145}#))) #f)))) (if (eqv? #{atom-key\ 4142}# 'each+) (call-with-values (lambda () (#{match-each+\ 4005}# #{e\ 4115}# (vector-ref #{p\ 4116}# 1) (vector-ref #{p\ 4116}# 2) (vector-ref #{p\ 4116}# 3) #{w\ 4117}# #{r\ 4118}# #{mod\ 4119}#)) (lambda (#{xr*\ 4153}# #{y-pat\ 4154}# #{r\ 4155}#) (if #{r\ 4155}# (if (null? #{y-pat\ 4154}#) (if (null? #{xr*\ 4153}#) (#{match-empty\ 4009}# (vector-ref #{p\ 4116}# 1) #{r\ 4155}#) (#{combine\ 4011}# #{xr*\ 4153}# #{r\ 4155}#)) #f) #f))) (if (eqv? #{atom-key\ 4142}# 'free-id) (if (#{id?\ 379}# #{e\ 4115}#) (if (#{free-id=?\ 435}# (#{wrap\ 445}# #{e\ 4115}# #{w\ 4117}# #{mod\ 4119}#) (vector-ref #{p\ 4116}# 1)) #{r\ 4118}# #f) #f) (if (eqv? #{atom-key\ 4142}# 'atom) (if (equal? (vector-ref #{p\ 4116}# 1) (#{strip\ 487}# #{e\ 4115}# #{w\ 4117}#)) #{r\ 4118}# #f) (if (eqv? #{atom-key\ 4142}# 'vector) (if (vector? #{e\ 4115}#) (#{match\ 4015}# (vector->list #{e\ 4115}#) (vector-ref #{p\ 4116}# 1) #{w\ 4117}# #{r\ 4118}# #{mod\ 4119}#) #f))))))))))))) (#{match\ 4015}# (lambda (#{e\ 4172}# #{p\ 4173}# #{w\ 4174}# #{r\ 4175}# #{mod\ 4176}#) (if (not #{r\ 4175}#) #f (if (eq? #{p\ 4173}# '_) #{r\ 4175}# (if (eq? #{p\ 4173}# 'any) (cons (#{wrap\ 445}# #{e\ 4172}# #{w\ 4174}# #{mod\ 4176}#) #{r\ 4175}#) (if (#{syntax-object?\ 345}# #{e\ 4172}#) (#{match*\ 4013}# (#{syntax-object-expression\ 347}# #{e\ 4172}#) #{p\ 4173}# (#{join-wraps\ 427}# #{w\ 4174}# (#{syntax-object-wrap\ 349}# #{e\ 4172}#)) #{r\ 4175}# (#{syntax-object-module\ 351}# #{e\ 4172}#)) (#{match*\ 4013}# #{e\ 4172}# #{p\ 4173}# #{w\ 4174}# #{r\ 4175}# #{mod\ 4176}#)))))))) (begin (set! $sc-dispatch (lambda (#{e\ 4191}# #{p\ 4192}#) (if (eq? #{p\ 4192}# 'any) (list #{e\ 4191}#) (if (eq? #{p\ 4192}# '_) '() (if (#{syntax-object?\ 345}# #{e\ 4191}#) (#{match*\ 4013}# (#{syntax-object-expression\ 347}# #{e\ 4191}#) #{p\ 4192}# (#{syntax-object-wrap\ 349}# #{e\ 4191}#) '() (#{syntax-object-module\ 351}# #{e\ 4191}#)) (#{match*\ 4013}# #{e\ 4191}# #{p\ 4192}# '(()) '() #f)))))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x\ 4203}#) (let ((#{tmp\ 4205}# #{x\ 4203}#)) (let ((#{tmp\ 4206}# ($sc-dispatch #{tmp\ 4205}# '(_ () any . each-any)))) (if #{tmp\ 4206}# (@apply (lambda (#{e1\ 4209}# #{e2\ 4210}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4207" "i4208")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4204"))) (hygiene guile)) (cons #{e1\ 4209}# #{e2\ 4210}#))) #{tmp\ 4206}#) (let ((#{tmp\ 4212}# ($sc-dispatch #{tmp\ 4205}# '(_ ((any any)) any . each-any)))) (if #{tmp\ 4212}# (@apply (lambda (#{out\ 4217}# #{in\ 4218}# #{e1\ 4219}# #{e2\ 4220}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4204"))) (hygiene guile)) #{in\ 4218}# '() (list #{out\ 4217}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4204"))) (hygiene guile)) (cons #{e1\ 4219}# #{e2\ 4220}#))))) #{tmp\ 4212}#) (let ((#{tmp\ 4222}# ($sc-dispatch #{tmp\ 4205}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 4222}# (@apply (lambda (#{out\ 4227}# #{in\ 4228}# #{e1\ 4229}# #{e2\ 4230}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4223" "i4224" "i4225" "i4226")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4204"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4223" "i4224" "i4225" "i4226")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4204"))) (hygiene guile)) #{in\ 4228}#) '() (list #{out\ 4227}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4223" "i4224" "i4225" "i4226")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4204"))) (hygiene guile)) (cons #{e1\ 4229}# #{e2\ 4230}#))))) #{tmp\ 4222}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4205}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x\ 4234}#) (let ((#{tmp\ 4236}# #{x\ 4234}#)) (let ((#{tmp\ 4237}# ($sc-dispatch #{tmp\ 4236}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp\ 4237}# (@apply (lambda (#{k\ 4242}# #{keyword\ 4243}# #{pattern\ 4244}# #{template\ 4245}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) #{pattern\ 4244}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) (cons #{k\ 4242}# (map (lambda (#{tmp\ 4249}# #{tmp\ 4248}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) #{tmp\ 4248}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4238" "i4239" "i4240" "i4241")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) #{tmp\ 4249}#))) #{template\ 4245}# #{pattern\ 4244}#)))))) #{tmp\ 4237}#) (let ((#{tmp\ 4250}# ($sc-dispatch #{tmp\ 4236}# '(_ each-any any . #(each ((any . any) any)))))) (if (if #{tmp\ 4250}# (@apply (lambda (#{k\ 4256}# #{docstring\ 4257}# #{keyword\ 4258}# #{pattern\ 4259}# #{template\ 4260}#) (string? (syntax->datum #{docstring\ 4257}#))) #{tmp\ 4250}#) #f) (@apply (lambda (#{k\ 4266}# #{docstring\ 4267}# #{keyword\ 4268}# #{pattern\ 4269}# #{template\ 4270}#) (list '#(syntax-object lambda ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile))) #{docstring\ 4267}# (vector '(#(syntax-object macro-type ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) #{pattern\ 4269}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) (cons #{k\ 4266}# (map (lambda (#{tmp\ 4274}# #{tmp\ 4273}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) #{tmp\ 4273}#) (list '#(syntax-object syntax ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4261" "i4262" "i4263" "i4264" "i4265")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) #{tmp\ 4274}#))) #{template\ 4270}# #{pattern\ 4269}#)))))) #{tmp\ 4250}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4236}#))))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x\ 4275}#) (let ((#{tmp\ 4277}# #{x\ 4275}#)) (let ((#{tmp\ 4278}# ($sc-dispatch #{tmp\ 4277}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp\ 4278}# (@apply (lambda (#{let*\ 4284}# #{x\ 4285}# #{v\ 4286}# #{e1\ 4287}# #{e2\ 4288}#) (and-map identifier? #{x\ 4285}#)) #{tmp\ 4278}#) #f) (@apply (lambda (#{let*\ 4295}# #{x\ 4296}# #{v\ 4297}# #{e1\ 4298}# #{e2\ 4299}#) (letrec* ((#{f\ 4302}# (lambda (#{bindings\ 4303}#) (if (null? #{bindings\ 4303}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4300" "i4301")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4276"))) (hygiene guile)) (cons '() (cons #{e1\ 4298}# #{e2\ 4299}#))) (let ((#{tmp\ 4308}# (list (#{f\ 4302}# (cdr #{bindings\ 4303}#)) (car #{bindings\ 4303}#)))) (let ((#{tmp\ 4309}# ($sc-dispatch #{tmp\ 4308}# '(any any)))) (if #{tmp\ 4309}# (@apply (lambda (#{body\ 4312}# #{binding\ 4313}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i4310" "i4311")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4300" "i4301")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4290" "i4291" "i4292" "i4293" "i4294")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4276"))) (hygiene guile)) (list #{binding\ 4313}#) #{body\ 4312}#)) #{tmp\ 4309}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4308}#)))))))) (begin (#{f\ 4302}# (map list #{x\ 4296}# #{v\ 4297}#))))) #{tmp\ 4278}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4277}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x\ 4314}#) (let ((#{tmp\ 4316}# #{orig-x\ 4314}#)) (let ((#{tmp\ 4317}# ($sc-dispatch #{tmp\ 4316}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp\ 4317}# (@apply (lambda (#{var\ 4324}# #{init\ 4325}# #{step\ 4326}# #{e0\ 4327}# #{e1\ 4328}# #{c\ 4329}#) (let ((#{tmp\ 4331}# (map (lambda (#{v\ 4352}# #{s\ 4353}#) (let ((#{tmp\ 4356}# #{s\ 4353}#)) (let ((#{tmp\ 4357}# ($sc-dispatch #{tmp\ 4356}# '()))) (if #{tmp\ 4357}# (@apply (lambda () #{v\ 4352}#) #{tmp\ 4357}#) (let ((#{tmp\ 4358}# ($sc-dispatch #{tmp\ 4356}# '(any)))) (if #{tmp\ 4358}# (@apply (lambda (#{e\ 4360}#) #{e\ 4360}#) #{tmp\ 4358}#) (let ((#{_\ 4362}# #{tmp\ 4356}#)) (syntax-violation 'do "bad step expression" #{orig-x\ 4314}# #{s\ 4353}#)))))))) #{var\ 4324}# #{step\ 4326}#))) (let ((#{tmp\ 4332}# ($sc-dispatch #{tmp\ 4331}# 'each-any))) (if #{tmp\ 4332}# (@apply (lambda (#{step\ 4334}#) (let ((#{tmp\ 4335}# #{e1\ 4328}#)) (let ((#{tmp\ 4336}# ($sc-dispatch #{tmp\ 4335}# '()))) (if #{tmp\ 4336}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) (map list #{var\ 4324}# #{init\ 4325}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) #{e0\ 4327}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) (append #{c\ 4329}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) #{step\ 4334}#))))))) #{tmp\ 4336}#) (let ((#{tmp\ 4341}# ($sc-dispatch #{tmp\ 4335}# '(any . each-any)))) (if #{tmp\ 4341}# (@apply (lambda (#{e1\ 4344}# #{e2\ 4345}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4342" "i4343")) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4342" "i4343")) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) (map list #{var\ 4324}# #{init\ 4325}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4342" "i4343")) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) #{e0\ 4327}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4342" "i4343")) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) (cons #{e1\ 4344}# #{e2\ 4345}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4342" "i4343")) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) (append #{c\ 4329}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4342" "i4343")) #(ribcage #(step) #((top)) #("i4333")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4318" "i4319" "i4320" "i4321" "i4322" "i4323")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4315"))) (hygiene guile)) #{step\ 4334}#))))))) #{tmp\ 4341}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4335}#))))))) #{tmp\ 4332}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4331}#))))) #{tmp\ 4317}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4316}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasi\ 4366}# (lambda (#{p\ 4379}# #{lev\ 4380}#) (let ((#{tmp\ 4383}# #{p\ 4379}#)) (let ((#{tmp\ 4384}# ($sc-dispatch #{tmp\ 4383}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) any)))) (if #{tmp\ 4384}# (@apply (lambda (#{p\ 4386}#) (if (= #{lev\ 4380}# 0) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{p\ 4386}#) (#{quasicons\ 4370}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) (#{quasi\ 4366}# (list #{p\ 4386}#) (1- #{lev\ 4380}#))))) #{tmp\ 4384}#) (let ((#{tmp\ 4387}# ($sc-dispatch #{tmp\ 4383}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) any)))) (if #{tmp\ 4387}# (@apply (lambda (#{p\ 4389}#) (#{quasicons\ 4370}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4388")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4388")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) (#{quasi\ 4366}# (list #{p\ 4389}#) (1+ #{lev\ 4380}#)))) #{tmp\ 4387}#) (let ((#{tmp\ 4390}# ($sc-dispatch #{tmp\ 4383}# '(any . any)))) (if #{tmp\ 4390}# (@apply (lambda (#{p\ 4393}# #{q\ 4394}#) (let ((#{tmp\ 4395}# #{p\ 4393}#)) (let ((#{tmp\ 4396}# ($sc-dispatch #{tmp\ 4395}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) . each-any)))) (if #{tmp\ 4396}# (@apply (lambda (#{p\ 4398}#) (if (= #{lev\ 4380}# 0) (#{quasilist*\ 4374}# (map (lambda (#{tmp\ 4399}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4397")) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{tmp\ 4399}#)) #{p\ 4398}#) (#{quasi\ 4366}# #{q\ 4394}# #{lev\ 4380}#)) (#{quasicons\ 4370}# (#{quasicons\ 4370}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4397")) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4397")) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) (#{quasi\ 4366}# #{p\ 4398}# (1- #{lev\ 4380}#))) (#{quasi\ 4366}# #{q\ 4394}# #{lev\ 4380}#)))) #{tmp\ 4396}#) (let ((#{tmp\ 4401}# ($sc-dispatch #{tmp\ 4395}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) . each-any)))) (if #{tmp\ 4401}# (@apply (lambda (#{p\ 4403}#) (if (= #{lev\ 4380}# 0) (#{quasiappend\ 4372}# (map (lambda (#{tmp\ 4404}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4402")) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{tmp\ 4404}#)) #{p\ 4403}#) (#{quasi\ 4366}# #{q\ 4394}# #{lev\ 4380}#)) (#{quasicons\ 4370}# (#{quasicons\ 4370}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4402")) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4402")) #(ribcage #(p q) #((top) (top)) #("i4391" "i4392")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) (#{quasi\ 4366}# #{p\ 4403}# (1- #{lev\ 4380}#))) (#{quasi\ 4366}# #{q\ 4394}# #{lev\ 4380}#)))) #{tmp\ 4401}#) (let ((#{_\ 4407}# #{tmp\ 4395}#)) (#{quasicons\ 4370}# (#{quasi\ 4366}# #{p\ 4393}# #{lev\ 4380}#) (#{quasi\ 4366}# #{q\ 4394}# #{lev\ 4380}#))))))))) #{tmp\ 4390}#) (let ((#{tmp\ 4408}# ($sc-dispatch #{tmp\ 4383}# '#(vector each-any)))) (if #{tmp\ 4408}# (@apply (lambda (#{x\ 4410}#) (#{quasivector\ 4376}# (#{vquasi\ 4368}# #{x\ 4410}# #{lev\ 4380}#))) #{tmp\ 4408}#) (let ((#{p\ 4413}# #{tmp\ 4383}#)) (list '#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4412")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4381" "i4382")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{p\ 4413}#))))))))))))) (#{vquasi\ 4368}# (lambda (#{p\ 4414}# #{lev\ 4415}#) (let ((#{tmp\ 4418}# #{p\ 4414}#)) (let ((#{tmp\ 4419}# ($sc-dispatch #{tmp\ 4418}# '(any . any)))) (if #{tmp\ 4419}# (@apply (lambda (#{p\ 4422}# #{q\ 4423}#) (let ((#{tmp\ 4424}# #{p\ 4422}#)) (let ((#{tmp\ 4425}# ($sc-dispatch #{tmp\ 4424}# '(#(free-id #(syntax-object unquote ((top) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) . each-any)))) (if #{tmp\ 4425}# (@apply (lambda (#{p\ 4427}#) (if (= #{lev\ 4415}# 0) (#{quasilist*\ 4374}# (map (lambda (#{tmp\ 4428}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4426")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{tmp\ 4428}#)) #{p\ 4427}#) (#{vquasi\ 4368}# #{q\ 4423}# #{lev\ 4415}#)) (#{quasicons\ 4370}# (#{quasicons\ 4370}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4426")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4426")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) (#{quasi\ 4366}# #{p\ 4427}# (1- #{lev\ 4415}#))) (#{vquasi\ 4368}# #{q\ 4423}# #{lev\ 4415}#)))) #{tmp\ 4425}#) (let ((#{tmp\ 4430}# ($sc-dispatch #{tmp\ 4424}# '(#(free-id #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) . each-any)))) (if #{tmp\ 4430}# (@apply (lambda (#{p\ 4432}#) (if (= #{lev\ 4415}# 0) (#{quasiappend\ 4372}# (map (lambda (#{tmp\ 4433}#) (list '#(syntax-object "value" ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{tmp\ 4433}#)) #{p\ 4432}#) (#{vquasi\ 4368}# #{q\ 4423}# #{lev\ 4415}#)) (#{quasicons\ 4370}# (#{quasicons\ 4370}# '(#(syntax-object "quote" ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p) #((top)) #("i4431")) #(ribcage #(p q) #((top) (top)) #("i4420" "i4421")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile))) (#{quasi\ 4366}# #{p\ 4432}# (1- #{lev\ 4415}#))) (#{vquasi\ 4368}# #{q\ 4423}# #{lev\ 4415}#)))) #{tmp\ 4430}#) (let ((#{_\ 4436}# #{tmp\ 4424}#)) (#{quasicons\ 4370}# (#{quasi\ 4366}# #{p\ 4422}# #{lev\ 4415}#) (#{vquasi\ 4368}# #{q\ 4423}# #{lev\ 4415}#))))))))) #{tmp\ 4419}#) (let ((#{tmp\ 4437}# ($sc-dispatch #{tmp\ 4418}# '()))) (if #{tmp\ 4437}# (@apply (lambda () '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4416" "i4417")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) ())) #{tmp\ 4437}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4418}#)))))))) (#{quasicons\ 4370}# (lambda (#{x\ 4438}# #{y\ 4439}#) (let ((#{tmp\ 4443}# (list #{x\ 4438}# #{y\ 4439}#))) (let ((#{tmp\ 4444}# ($sc-dispatch #{tmp\ 4443}# '(any any)))) (if #{tmp\ 4444}# (@apply (lambda (#{x\ 4447}# #{y\ 4448}#) (let ((#{tmp\ 4449}# #{y\ 4448}#)) (let ((#{tmp\ 4450}# ($sc-dispatch #{tmp\ 4449}# '(#(atom "quote") any)))) (if #{tmp\ 4450}# (@apply (lambda (#{dy\ 4452}#) (let ((#{tmp\ 4453}# #{x\ 4447}#)) (let ((#{tmp\ 4454}# ($sc-dispatch #{tmp\ 4453}# '(#(atom "quote") any)))) (if #{tmp\ 4454}# (@apply (lambda (#{dx\ 4456}#) (list '#(syntax-object "quote" ((top) #(ribcage #(dx) #((top)) #("i4455")) #(ribcage #(dy) #((top)) #("i4451")) #(ribcage #(x y) #((top) (top)) #("i4445" "i4446")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4440" "i4441")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) (cons #{dx\ 4456}# #{dy\ 4452}#))) #{tmp\ 4454}#) (let ((#{_\ 4458}# #{tmp\ 4453}#)) (if (null? #{dy\ 4452}#) (list '#(syntax-object "list" ((top) #(ribcage #(_) #((top)) #("i4457")) #(ribcage #(dy) #((top)) #("i4451")) #(ribcage #(x y) #((top) (top)) #("i4445" "i4446")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4440" "i4441")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{x\ 4447}#) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4457")) #(ribcage #(dy) #((top)) #("i4451")) #(ribcage #(x y) #((top) (top)) #("i4445" "i4446")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4440" "i4441")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{x\ 4447}# #{y\ 4448}#))))))) #{tmp\ 4450}#) (let ((#{tmp\ 4459}# ($sc-dispatch #{tmp\ 4449}# '(#(atom "list") . any)))) (if #{tmp\ 4459}# (@apply (lambda (#{stuff\ 4461}#) (cons '#(syntax-object "list" ((top) #(ribcage #(stuff) #((top)) #("i4460")) #(ribcage #(x y) #((top) (top)) #("i4445" "i4446")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4440" "i4441")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) (cons #{x\ 4447}# #{stuff\ 4461}#))) #{tmp\ 4459}#) (let ((#{tmp\ 4462}# ($sc-dispatch #{tmp\ 4449}# '(#(atom "list*") . any)))) (if #{tmp\ 4462}# (@apply (lambda (#{stuff\ 4464}#) (cons '#(syntax-object "list*" ((top) #(ribcage #(stuff) #((top)) #("i4463")) #(ribcage #(x y) #((top) (top)) #("i4445" "i4446")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4440" "i4441")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) (cons #{x\ 4447}# #{stuff\ 4464}#))) #{tmp\ 4462}#) (let ((#{_\ 4466}# #{tmp\ 4449}#)) (list '#(syntax-object "list*" ((top) #(ribcage #(_) #((top)) #("i4465")) #(ribcage #(x y) #((top) (top)) #("i4445" "i4446")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4440" "i4441")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{x\ 4447}# #{y\ 4448}#)))))))))) #{tmp\ 4444}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4443}#)))))) (#{quasiappend\ 4372}# (lambda (#{x\ 4467}# #{y\ 4468}#) (let ((#{tmp\ 4471}# #{y\ 4468}#)) (let ((#{tmp\ 4472}# ($sc-dispatch #{tmp\ 4471}# '(#(atom "quote") ())))) (if #{tmp\ 4472}# (@apply (lambda () (if (null? #{x\ 4467}#) '(#(syntax-object "quote" ((top) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) ()) (if (null? (cdr #{x\ 4467}#)) (car #{x\ 4467}#) (let ((#{tmp\ 4479}# #{x\ 4467}#)) (let ((#{tmp\ 4480}# ($sc-dispatch #{tmp\ 4479}# 'each-any))) (if #{tmp\ 4480}# (@apply (lambda (#{p\ 4482}#) (cons '#(syntax-object "append" ((top) #(ribcage #(p) #((top)) #("i4481")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{p\ 4482}#)) #{tmp\ 4480}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4479}#))))))) #{tmp\ 4472}#) (let ((#{_\ 4485}# #{tmp\ 4471}#)) (if (null? #{x\ 4467}#) #{y\ 4468}# (let ((#{tmp\ 4490}# (list #{x\ 4467}# #{y\ 4468}#))) (let ((#{tmp\ 4491}# ($sc-dispatch #{tmp\ 4490}# '(each-any any)))) (if #{tmp\ 4491}# (@apply (lambda (#{p\ 4494}# #{y\ 4495}#) (cons '#(syntax-object "append" ((top) #(ribcage #(p y) #((top) (top)) #("i4492" "i4493")) #(ribcage #(_) #((top)) #("i4484")) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4469" "i4470")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) (append #{p\ 4494}# (list #{y\ 4495}#)))) #{tmp\ 4491}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4490}#))))))))))) (#{quasilist*\ 4374}# (lambda (#{x\ 4497}# #{y\ 4498}#) (letrec* ((#{f\ 4503}# (lambda (#{x\ 4504}#) (if (null? #{x\ 4504}#) #{y\ 4498}# (#{quasicons\ 4370}# (car #{x\ 4504}#) (#{f\ 4503}# (cdr #{x\ 4504}#))))))) (begin (#{f\ 4503}# #{x\ 4497}#))))) (#{quasivector\ 4376}# (lambda (#{x\ 4505}#) (let ((#{tmp\ 4507}# #{x\ 4505}#)) (let ((#{tmp\ 4508}# ($sc-dispatch #{tmp\ 4507}# '(#(atom "quote") each-any)))) (if #{tmp\ 4508}# (@apply (lambda (#{x\ 4510}#) (list '#(syntax-object "quote" ((top) #(ribcage #(x) #((top)) #("i4509")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4506")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) (list->vector #{x\ 4510}#))) #{tmp\ 4508}#) (let ((#{_\ 4513}# #{tmp\ 4507}#)) (letrec* ((#{f\ 4517}# (lambda (#{y\ 4518}# #{k\ 4519}#) (let ((#{tmp\ 4530}# #{y\ 4518}#)) (let ((#{tmp\ 4531}# ($sc-dispatch #{tmp\ 4530}# '(#(atom "quote") each-any)))) (if #{tmp\ 4531}# (@apply (lambda (#{y\ 4533}#) (#{k\ 4519}# (map (lambda (#{tmp\ 4534}#) (list '#(syntax-object "quote" ((top) #(ribcage #(y) #((top)) #("i4532")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4514" "i4515" "i4516")) #(ribcage #(_) #((top)) #("i4512")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4506")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{tmp\ 4534}#)) #{y\ 4533}#))) #{tmp\ 4531}#) (let ((#{tmp\ 4535}# ($sc-dispatch #{tmp\ 4530}# '(#(atom "list") . each-any)))) (if #{tmp\ 4535}# (@apply (lambda (#{y\ 4537}#) (#{k\ 4519}# #{y\ 4537}#)) #{tmp\ 4535}#) (let ((#{tmp\ 4539}# ($sc-dispatch #{tmp\ 4530}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp\ 4539}# (@apply (lambda (#{y\ 4542}# #{z\ 4543}#) (#{f\ 4517}# #{z\ 4543}# (lambda (#{ls\ 4544}#) (#{k\ 4519}# (append #{y\ 4542}# #{ls\ 4544}#))))) #{tmp\ 4539}#) (let ((#{else\ 4548}# #{tmp\ 4530}#)) (let ((#{tmp\ 4552}# #{x\ 4505}#)) (let ((#{\ g4549\ 4554}# #{tmp\ 4552}#)) (list '#(syntax-object "list->vector" ((top) #(ribcage #(#{\ g4549}#) #((m4550 top)) #("i4553")) #(ribcage #(else) #((top)) #("i4547")) #(ribcage () () ()) #(ribcage #(f y k) #((top) (top) (top)) #("i4514" "i4515" "i4516")) #(ribcage #(_) #((top)) #("i4512")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4506")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{\ g4549\ 4554}#)))))))))))))) (begin (#{f\ 4517}# #{x\ 4505}# (lambda (#{ls\ 4520}#) (let ((#{tmp\ 4525}# #{ls\ 4520}#)) (let ((#{tmp\ 4526}# ($sc-dispatch #{tmp\ 4525}# 'each-any))) (if #{tmp\ 4526}# (@apply (lambda (#{\ g4522\ 4528}#) (cons '#(syntax-object "vector" ((top) #(ribcage #(#{\ g4522}#) #((m4523 top)) #("i4527")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ls) #((top)) #("i4521")) #(ribcage #(_) #((top)) #("i4512")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4506")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{\ g4522\ 4528}#)) #{tmp\ 4526}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4525}#)))))))))))))) (#{emit\ 4378}# (lambda (#{x\ 4555}#) (let ((#{tmp\ 4557}# #{x\ 4555}#)) (let ((#{tmp\ 4558}# ($sc-dispatch #{tmp\ 4557}# '(#(atom "quote") any)))) (if #{tmp\ 4558}# (@apply (lambda (#{x\ 4560}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4559")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4556")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{x\ 4560}#)) #{tmp\ 4558}#) (let ((#{tmp\ 4561}# ($sc-dispatch #{tmp\ 4557}# '(#(atom "list") . each-any)))) (if #{tmp\ 4561}# (@apply (lambda (#{x\ 4563}#) (let ((#{tmp\ 4567}# (map #{emit\ 4378}# #{x\ 4563}#))) (let ((#{tmp\ 4568}# ($sc-dispatch #{tmp\ 4567}# 'each-any))) (if #{tmp\ 4568}# (@apply (lambda (#{\ g4564\ 4570}#) (cons '#(syntax-object list ((top) #(ribcage #(#{\ g4564}#) #((m4565 top)) #("i4569")) #(ribcage #(x) #((top)) #("i4562")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4556")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{\ g4564\ 4570}#)) #{tmp\ 4568}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4567}#))))) #{tmp\ 4561}#) (let ((#{tmp\ 4573}# ($sc-dispatch #{tmp\ 4557}# '(#(atom "list*") . #(each+ any (any) ()))))) (if #{tmp\ 4573}# (@apply (lambda (#{x\ 4576}# #{y\ 4577}#) (letrec* ((#{f\ 4580}# (lambda (#{x*\ 4581}#) (if (null? #{x*\ 4581}#) (#{emit\ 4378}# #{y\ 4577}#) (let ((#{tmp\ 4587}# (list (#{emit\ 4378}# (car #{x*\ 4581}#)) (#{f\ 4580}# (cdr #{x*\ 4581}#))))) (let ((#{tmp\ 4588}# ($sc-dispatch #{tmp\ 4587}# '(any any)))) (if #{tmp\ 4588}# (@apply (lambda (#{\ g4584\ 4591}# #{\ g4583\ 4592}#) (list '#(syntax-object cons ((top) #(ribcage #(#{\ g4584}# #{\ g4583}#) #((m4585 top) (m4585 top)) #("i4589" "i4590")) #(ribcage () () ()) #(ribcage #(f x*) #((top) (top)) #("i4578" "i4579")) #(ribcage #(x y) #((top) (top)) #("i4574" "i4575")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4556")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{\ g4584\ 4591}# #{\ g4583\ 4592}#)) #{tmp\ 4588}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4587}#)))))))) (begin (#{f\ 4580}# #{x\ 4576}#)))) #{tmp\ 4573}#) (let ((#{tmp\ 4593}# ($sc-dispatch #{tmp\ 4557}# '(#(atom "append") . each-any)))) (if #{tmp\ 4593}# (@apply (lambda (#{x\ 4595}#) (let ((#{tmp\ 4599}# (map #{emit\ 4378}# #{x\ 4595}#))) (let ((#{tmp\ 4600}# ($sc-dispatch #{tmp\ 4599}# 'each-any))) (if #{tmp\ 4600}# (@apply (lambda (#{\ g4596\ 4602}#) (cons '#(syntax-object append ((top) #(ribcage #(#{\ g4596}#) #((m4597 top)) #("i4601")) #(ribcage #(x) #((top)) #("i4594")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4556")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{\ g4596\ 4602}#)) #{tmp\ 4600}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4599}#))))) #{tmp\ 4593}#) (let ((#{tmp\ 4605}# ($sc-dispatch #{tmp\ 4557}# '(#(atom "vector") . each-any)))) (if #{tmp\ 4605}# (@apply (lambda (#{x\ 4607}#) (let ((#{tmp\ 4611}# (map #{emit\ 4378}# #{x\ 4607}#))) (let ((#{tmp\ 4612}# ($sc-dispatch #{tmp\ 4611}# 'each-any))) (if #{tmp\ 4612}# (@apply (lambda (#{\ g4608\ 4614}#) (cons '#(syntax-object vector ((top) #(ribcage #(#{\ g4608}#) #((m4609 top)) #("i4613")) #(ribcage #(x) #((top)) #("i4606")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4556")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{\ g4608\ 4614}#)) #{tmp\ 4612}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4611}#))))) #{tmp\ 4605}#) (let ((#{tmp\ 4617}# ($sc-dispatch #{tmp\ 4557}# '(#(atom "list->vector") any)))) (if #{tmp\ 4617}# (@apply (lambda (#{x\ 4619}#) (let ((#{tmp\ 4623}# (#{emit\ 4378}# #{x\ 4619}#))) (let ((#{\ g4620\ 4625}# #{tmp\ 4623}#)) (list '#(syntax-object list->vector ((top) #(ribcage #(#{\ g4620}#) #((m4621 top)) #("i4624")) #(ribcage #(x) #((top)) #("i4618")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4556")) #(ribcage (emit quasivector quasilist* quasiappend quasicons vquasi quasi) ((top) (top) (top) (top) (top) (top) (top)) ("i4377" "i4375" "i4373" "i4371" "i4369" "i4367" "i4365"))) (hygiene guile)) #{\ g4620\ 4625}#)))) #{tmp\ 4617}#) (let ((#{tmp\ 4626}# ($sc-dispatch #{tmp\ 4557}# '(#(atom "value") any)))) (if #{tmp\ 4626}# (@apply (lambda (#{x\ 4628}#) #{x\ 4628}#) #{tmp\ 4626}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4557}#))))))))))))))))))) (begin (lambda (#{x\ 4629}#) (let ((#{tmp\ 4631}# #{x\ 4629}#)) (let ((#{tmp\ 4632}# ($sc-dispatch #{tmp\ 4631}# '(_ any)))) (if #{tmp\ 4632}# (@apply (lambda (#{e\ 4634}#) (#{emit\ 4378}# (#{quasi\ 4366}# #{e\ 4634}# 0))) #{tmp\ 4632}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4631}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x\ 4635}#) (letrec* ((#{read-file\ 4638}# (lambda (#{fn\ 4639}# #{k\ 4640}#) (begin (let ((#{p\ 4644}# (open-input-file #{fn\ 4639}#))) (letrec* ((#{f\ 4648}# (lambda (#{x\ 4649}# #{result\ 4650}#) (if (eof-object? #{x\ 4649}#) (begin (close-input-port #{p\ 4644}#) (reverse #{result\ 4650}#)) (#{f\ 4648}# (read #{p\ 4644}#) (cons (datum->syntax #{k\ 4640}# #{x\ 4649}#) #{result\ 4650}#)))))) (begin (#{f\ 4648}# (read #{p\ 4644}#) '())))))))) (begin (let ((#{tmp\ 4651}# #{x\ 4635}#)) (let ((#{tmp\ 4652}# ($sc-dispatch #{tmp\ 4651}# '(any any)))) (if #{tmp\ 4652}# (@apply (lambda (#{k\ 4655}# #{filename\ 4656}#) (begin (let ((#{fn\ 4658}# (syntax->datum #{filename\ 4656}#))) (let ((#{tmp\ 4660}# (#{read-file\ 4638}# #{fn\ 4658}# #{filename\ 4656}#))) (let ((#{tmp\ 4661}# ($sc-dispatch #{tmp\ 4660}# 'each-any))) (if #{tmp\ 4661}# (@apply (lambda (#{exp\ 4663}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i4662")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4657")) #(ribcage #(k filename) #((top) (top)) #("i4653" "i4654")) #(ribcage (read-file) ((top)) ("i4637")) #(ribcage #(x) #((top)) #("i4636"))) (hygiene guile)) #{exp\ 4663}#)) #{tmp\ 4661}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4660}#))))))) #{tmp\ 4652}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4651}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x\ 4665}#) (let ((#{tmp\ 4667}# #{x\ 4665}#)) (let ((#{tmp\ 4668}# ($sc-dispatch #{tmp\ 4667}# '(any any)))) (if #{tmp\ 4668}# (@apply (lambda (#{k\ 4671}# #{filename\ 4672}#) (begin (let ((#{fn\ 4674}# (syntax->datum #{filename\ 4672}#))) (let ((#{tmp\ 4676}# (datum->syntax #{filename\ 4672}# (begin (let ((#{t\ 4681}# (%search-load-path #{fn\ 4674}#))) (if #{t\ 4681}# #{t\ 4681}# (syntax-violation 'include-from-path "file not found in path" #{x\ 4665}# #{filename\ 4672}#))))))) (let ((#{fn\ 4678}# #{tmp\ 4676}#)) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i4677")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4673")) #(ribcage #(k filename) #((top) (top)) #("i4669" "i4670")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4666"))) (hygiene guile)) #{fn\ 4678}#)))))) #{tmp\ 4668}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4667}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x\ 4683}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 4683}#)))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x\ 4685}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 4685}#)))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x\ 4687}#) (let ((#{tmp\ 4689}# #{x\ 4687}#)) (let ((#{tmp\ 4690}# ($sc-dispatch #{tmp\ 4689}# '(_ any any . each-any)))) (if #{tmp\ 4690}# (@apply (lambda (#{e\ 4694}# #{m1\ 4695}# #{m2\ 4696}#) (let ((#{tmp\ 4698}# (letrec* ((#{f\ 4704}# (lambda (#{clause\ 4705}# #{clauses\ 4706}#) (if (null? #{clauses\ 4706}#) (let ((#{tmp\ 4708}# #{clause\ 4705}#)) (let ((#{tmp\ 4709}# ($sc-dispatch #{tmp\ 4708}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile))) any . each-any)))) (if #{tmp\ 4709}# (@apply (lambda (#{e1\ 4712}# #{e2\ 4713}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4710" "i4711")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (cons #{e1\ 4712}# #{e2\ 4713}#))) #{tmp\ 4709}#) (let ((#{tmp\ 4715}# ($sc-dispatch #{tmp\ 4708}# '(each-any any . each-any)))) (if #{tmp\ 4715}# (@apply (lambda (#{k\ 4719}# #{e1\ 4720}# #{e2\ 4721}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4716" "i4717" "i4718")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4716" "i4717" "i4718")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4716" "i4717" "i4718")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4716" "i4717" "i4718")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) #{k\ 4719}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4716" "i4717" "i4718")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (cons #{e1\ 4720}# #{e2\ 4721}#)))) #{tmp\ 4715}#) (let ((#{_\ 4725}# #{tmp\ 4708}#)) (syntax-violation 'case "bad clause" #{x\ 4687}# #{clause\ 4705}#))))))) (let ((#{tmp\ 4727}# (#{f\ 4704}# (car #{clauses\ 4706}#) (cdr #{clauses\ 4706}#)))) (let ((#{rest\ 4729}# #{tmp\ 4727}#)) (let ((#{tmp\ 4730}# #{clause\ 4705}#)) (let ((#{tmp\ 4731}# ($sc-dispatch #{tmp\ 4730}# '(each-any any . each-any)))) (if #{tmp\ 4731}# (@apply (lambda (#{k\ 4735}# #{e1\ 4736}# #{e2\ 4737}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4732" "i4733" "i4734")) #(ribcage #(rest) #((top)) #("i4728")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4732" "i4733" "i4734")) #(ribcage #(rest) #((top)) #("i4728")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4732" "i4733" "i4734")) #(ribcage #(rest) #((top)) #("i4728")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4732" "i4733" "i4734")) #(ribcage #(rest) #((top)) #("i4728")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) #{k\ 4735}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4732" "i4733" "i4734")) #(ribcage #(rest) #((top)) #("i4728")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4701" "i4702" "i4703")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (cons #{e1\ 4736}# #{e2\ 4737}#)) #{rest\ 4729}#)) #{tmp\ 4731}#) (let ((#{_\ 4741}# #{tmp\ 4730}#)) (syntax-violation 'case "bad clause" #{x\ 4687}# #{clause\ 4705}#))))))))))) (begin (#{f\ 4704}# #{m1\ 4695}# #{m2\ 4696}#))))) (let ((#{body\ 4700}# #{tmp\ 4698}#)) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i4699")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i4699")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4691" "i4692" "i4693")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4688"))) (hygiene guile)) #{e\ 4694}#)) #{body\ 4700}#)))) #{tmp\ 4690}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4689}#))))))) (define make-variable-transformer (lambda (#{proc\ 4742}#) (if (procedure? #{proc\ 4742}#) (begin (letrec* ((#{trans\ 4745}# (lambda (#{x\ 4746}#) (#{proc\ 4742}# #{x\ 4746}#)))) (begin (set-procedure-property! #{trans\ 4745}# 'variable-transformer #t) #{trans\ 4745}#))) (error "variable transformer not a procedure" #{proc\ 4742}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x\ 4748}#) (let ((#{tmp\ 4750}# #{x\ 4748}#)) (let ((#{tmp\ 4751}# ($sc-dispatch #{tmp\ 4750}# '(_ any)))) (if #{tmp\ 4751}# (@apply (lambda (#{e\ 4753}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #{e\ 4753}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) (cons #{e\ 4753}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4752")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile))))))))) #{tmp\ 4751}#) (let ((#{tmp\ 4754}# ($sc-dispatch #{tmp\ 4750}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile))) any any) any))))) (if (if #{tmp\ 4754}# (@apply (lambda (#{id\ 4760}# #{exp1\ 4761}# #{var\ 4762}# #{val\ 4763}# #{exp2\ 4764}#) (if (identifier? #{id\ 4760}#) (identifier? #{var\ 4762}#) #f)) #{tmp\ 4754}#) #f) (@apply (lambda (#{id\ 4772}# #{exp1\ 4773}# #{var\ 4774}# #{val\ 4775}# #{exp2\ 4776}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #{var\ 4774}# #{val\ 4775}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #{exp2\ 4776}#)) (list (cons #{id\ 4772}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) (cons #{exp1\ 4773}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)))))) (list #{id\ 4772}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #{id\ 4772}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4767" "i4768" "i4769" "i4770" "i4771")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4749"))) (hygiene guile)) #{exp1\ 4773}#)))))) #{tmp\ 4754}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4750}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x\ 4777}#) (let ((#{tmp\ 4779}# #{x\ 4777}#)) (let ((#{tmp\ 4780}# ($sc-dispatch #{tmp\ 4779}# '(_ (any . any) any . each-any)))) (if #{tmp\ 4780}# (@apply (lambda (#{id\ 4785}# #{args\ 4786}# #{b0\ 4787}# #{b1\ 4788}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #{id\ 4785}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4781" "i4782" "i4783" "i4784")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) (cons #{args\ 4786}# (cons #{b0\ 4787}# #{b1\ 4788}#))))) #{tmp\ 4780}#) (let ((#{tmp\ 4790}# ($sc-dispatch #{tmp\ 4779}# '(_ any any)))) (if (if #{tmp\ 4790}# (@apply (lambda (#{id\ 4793}# #{val\ 4794}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4791" "i4792")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)))) #{tmp\ 4790}#) #f) (@apply (lambda (#{id\ 4797}# #{val\ 4798}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4795" "i4796")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4778"))) (hygiene guile)) #{id\ 4797}# #{val\ 4798}#)) #{tmp\ 4790}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4779}#)))))))))