(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}#))) (module-define! (current-module) #{n\ 1854}# (if (variable? #{old\ 1863}#) (variable-ref #{old\ 1863}#) #f))))) (begin (let ((#{x\ 1866}# (#{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\ 1866}# #{mod\ 1772}#)) #{x\ 1866}#)))) (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\ 1872}# (#{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\ 1872}# #{mod\ 1772}#)) #{x\ 1872}#)))))))))))) (#{chi\ 461}# (lambda (#{e\ 1873}# #{r\ 1874}# #{w\ 1875}# #{mod\ 1876}#) (call-with-values (lambda () (#{syntax-type\ 457}# #{e\ 1873}# #{r\ 1874}# #{w\ 1875}# (#{source-annotation\ 360}# #{e\ 1873}#) #f #{mod\ 1876}# #f)) (lambda (#{type\ 1881}# #{value\ 1882}# #{e\ 1883}# #{w\ 1884}# #{s\ 1885}# #{mod\ 1886}#) (#{chi-expr\ 463}# #{type\ 1881}# #{value\ 1882}# #{e\ 1883}# #{r\ 1874}# #{w\ 1884}# #{s\ 1885}# #{mod\ 1886}#))))) (#{chi-expr\ 463}# (lambda (#{type\ 1893}# #{value\ 1894}# #{e\ 1895}# #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#) (if (eqv? #{type\ 1893}# 'lexical) (#{build-lexical-reference\ 311}# 'value #{s\ 1898}# #{e\ 1895}# #{value\ 1894}#) (if (if (eqv? #{type\ 1893}# 'core) #t (eqv? #{type\ 1893}# 'core-form)) (#{value\ 1894}# #{e\ 1895}# #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#) (if (eqv? #{type\ 1893}# 'module-ref) (call-with-values (lambda () (#{value\ 1894}# #{e\ 1895}# #{r\ 1896}# #{w\ 1897}#)) (lambda (#{e\ 1910}# #{r\ 1911}# #{w\ 1912}# #{s\ 1913}# #{mod\ 1914}#) (#{chi\ 461}# #{e\ 1910}# #{r\ 1911}# #{w\ 1912}# #{mod\ 1914}#))) (if (eqv? #{type\ 1893}# 'lexical-call) (#{chi-application\ 465}# (begin (let ((#{id\ 1922}# (car #{e\ 1895}#))) (#{build-lexical-reference\ 311}# 'fun (#{source-annotation\ 360}# #{id\ 1922}#) (if (#{syntax-object?\ 345}# #{id\ 1922}#) (syntax->datum #{id\ 1922}#) #{id\ 1922}#) #{value\ 1894}#))) #{e\ 1895}# #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#) (if (eqv? #{type\ 1893}# 'global-call) (#{chi-application\ 465}# (#{build-global-reference\ 317}# (#{source-annotation\ 360}# (car #{e\ 1895}#)) (if (#{syntax-object?\ 345}# #{value\ 1894}#) (#{syntax-object-expression\ 347}# #{value\ 1894}#) #{value\ 1894}#) (if (#{syntax-object?\ 345}# #{value\ 1894}#) (#{syntax-object-module\ 351}# #{value\ 1894}#) #{mod\ 1899}#)) #{e\ 1895}# #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#) (if (eqv? #{type\ 1893}# 'constant) (#{build-data\ 331}# #{s\ 1898}# (#{strip\ 487}# (#{source-wrap\ 447}# #{e\ 1895}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#) '(()))) (if (eqv? #{type\ 1893}# 'global) (#{build-global-reference\ 317}# #{s\ 1898}# #{value\ 1894}# #{mod\ 1899}#) (if (eqv? #{type\ 1893}# 'call) (#{chi-application\ 465}# (#{chi\ 461}# (car #{e\ 1895}#) #{r\ 1896}# #{w\ 1897}# #{mod\ 1899}#) #{e\ 1895}# #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#) (if (eqv? #{type\ 1893}# 'begin-form) (let ((#{tmp\ 1929}# #{e\ 1895}#)) (let ((#{tmp\ 1930}# ($sc-dispatch #{tmp\ 1929}# '(_ any . each-any)))) (if #{tmp\ 1930}# (@apply (lambda (#{e1\ 1933}# #{e2\ 1934}#) (#{chi-sequence\ 449}# (cons #{e1\ 1933}# #{e2\ 1934}#) #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#)) #{tmp\ 1930}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1929}#)))) (if (eqv? #{type\ 1893}# 'local-syntax-form) (#{chi-local-syntax\ 471}# #{value\ 1894}# #{e\ 1895}# #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}# #{chi-sequence\ 449}#) (if (eqv? #{type\ 1893}# 'eval-when-form) (let ((#{tmp\ 1938}# #{e\ 1895}#)) (let ((#{tmp\ 1939}# ($sc-dispatch #{tmp\ 1938}# '(_ each-any any . each-any)))) (if #{tmp\ 1939}# (@apply (lambda (#{x\ 1943}# #{e1\ 1944}# #{e2\ 1945}#) (begin (let ((#{when-list\ 1947}# (#{chi-when-list\ 455}# #{e\ 1895}# #{x\ 1943}# #{w\ 1897}#))) (if (memq 'eval #{when-list\ 1947}#) (#{chi-sequence\ 449}# (cons #{e1\ 1944}# #{e2\ 1945}#) #{r\ 1896}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#) (#{chi-void\ 475}#))))) #{tmp\ 1939}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1938}#)))) (if (if (eqv? #{type\ 1893}# 'define-form) #t (eqv? #{type\ 1893}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 1895}# (#{wrap\ 445}# #{value\ 1894}# #{w\ 1897}# #{mod\ 1899}#)) (if (eqv? #{type\ 1893}# 'syntax) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 447}# #{e\ 1895}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#)) (if (eqv? #{type\ 1893}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 447}# #{e\ 1895}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 447}# #{e\ 1895}# #{w\ 1897}# #{s\ 1898}# #{mod\ 1899}#)))))))))))))))))) (#{chi-application\ 465}# (lambda (#{x\ 1954}# #{e\ 1955}# #{r\ 1956}# #{w\ 1957}# #{s\ 1958}# #{mod\ 1959}#) (let ((#{tmp\ 1966}# #{e\ 1955}#)) (let ((#{tmp\ 1967}# ($sc-dispatch #{tmp\ 1966}# '(any . each-any)))) (if #{tmp\ 1967}# (@apply (lambda (#{e0\ 1970}# #{e1\ 1971}#) (#{build-application\ 305}# #{s\ 1958}# #{x\ 1954}# (map (lambda (#{e\ 1972}#) (#{chi\ 461}# #{e\ 1972}# #{r\ 1956}# #{w\ 1957}# #{mod\ 1959}#)) #{e1\ 1971}#))) #{tmp\ 1967}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1966}#)))))) (#{chi-macro\ 467}# (lambda (#{p\ 1975}# #{e\ 1976}# #{r\ 1977}# #{w\ 1978}# #{s\ 1979}# #{rib\ 1980}# #{mod\ 1981}#) (letrec* ((#{rebuild-macro-output\ 1990}# (lambda (#{x\ 1991}# #{m\ 1992}#) (if (pair? #{x\ 1991}#) (#{decorate-source\ 299}# (cons (#{rebuild-macro-output\ 1990}# (car #{x\ 1991}#) #{m\ 1992}#) (#{rebuild-macro-output\ 1990}# (cdr #{x\ 1991}#) #{m\ 1992}#)) #{s\ 1979}#) (if (#{syntax-object?\ 345}# #{x\ 1991}#) (begin (let ((#{w\ 2000}# (#{syntax-object-wrap\ 349}# #{x\ 1991}#))) (begin (let ((#{ms\ 2003}# (car #{w\ 2000}#)) (#{s\ 2004}# (cdr #{w\ 2000}#))) (if (if (pair? #{ms\ 2003}#) (eq? (car #{ms\ 2003}#) #f) #f) (#{make-syntax-object\ 343}# (#{syntax-object-expression\ 347}# #{x\ 1991}#) (cons (cdr #{ms\ 2003}#) (if #{rib\ 1980}# (cons #{rib\ 1980}# (cdr #{s\ 2004}#)) (cdr #{s\ 2004}#))) (#{syntax-object-module\ 351}# #{x\ 1991}#)) (#{make-syntax-object\ 343}# (#{decorate-source\ 299}# (#{syntax-object-expression\ 347}# #{x\ 1991}#) #{s\ 2004}#) (cons (cons #{m\ 1992}# #{ms\ 2003}#) (if #{rib\ 1980}# (cons #{rib\ 1980}# (cons 'shift #{s\ 2004}#)) (cons 'shift #{s\ 2004}#))) (#{syntax-object-module\ 351}# #{x\ 1991}#))))))) (if (vector? #{x\ 1991}#) (begin (let ((#{n\ 2016}# (vector-length #{x\ 1991}#))) (begin (let ((#{v\ 2018}# (#{decorate-source\ 299}# (make-vector #{n\ 2016}#) #{x\ 1991}#))) (letrec* ((#{loop\ 2021}# (lambda (#{i\ 2022}#) (if (#{fx=\ 286}# #{i\ 2022}# #{n\ 2016}#) (begin (if #f #f) #{v\ 2018}#) (begin (vector-set! #{v\ 2018}# #{i\ 2022}# (#{rebuild-macro-output\ 1990}# (vector-ref #{x\ 1991}# #{i\ 2022}#) #{m\ 1992}#)) (#{loop\ 2021}# (#{fx+\ 282}# #{i\ 2022}# 1))))))) (begin (#{loop\ 2021}# 0))))))) (if (symbol? #{x\ 1991}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 447}# #{e\ 1976}# #{w\ 1978}# (cdr #{w\ 1978}#) #{mod\ 1981}#) #{x\ 1991}#) (#{decorate-source\ 299}# #{x\ 1991}# #{s\ 1979}#)))))))) (begin (#{rebuild-macro-output\ 1990}# (#{p\ 1975}# (#{source-wrap\ 447}# #{e\ 1976}# (#{anti-mark\ 417}# #{w\ 1978}#) #{s\ 1979}# #{mod\ 1981}#)) (gensym "m")))))) (#{chi-body\ 469}# (lambda (#{body\ 2030}# #{outer-form\ 2031}# #{r\ 2032}# #{w\ 2033}# #{mod\ 2034}#) (begin (let ((#{r\ 2042}# (cons '("placeholder" placeholder) #{r\ 2032}#))) (begin (let ((#{ribcage\ 2044}# (#{make-ribcage\ 397}# '() '() '()))) (begin (let ((#{w\ 2047}# (cons (car #{w\ 2033}#) (cons #{ribcage\ 2044}# (cdr #{w\ 2033}#))))) (letrec* ((#{parse\ 2059}# (lambda (#{body\ 2060}# #{ids\ 2061}# #{labels\ 2062}# #{var-ids\ 2063}# #{vars\ 2064}# #{vals\ 2065}# #{bindings\ 2066}#) (if (null? #{body\ 2060}#) (syntax-violation #f "no expressions in body" #{outer-form\ 2031}#) (begin (let ((#{e\ 2071}# (cdr (car #{body\ 2060}#))) (#{er\ 2072}# (car (car #{body\ 2060}#)))) (call-with-values (lambda () (#{syntax-type\ 457}# #{e\ 2071}# #{er\ 2072}# '(()) (#{source-annotation\ 360}# #{er\ 2072}#) #{ribcage\ 2044}# #{mod\ 2034}# #f)) (lambda (#{type\ 2074}# #{value\ 2075}# #{e\ 2076}# #{w\ 2077}# #{s\ 2078}# #{mod\ 2079}#) (if (eqv? #{type\ 2074}# 'define-form) (begin (let ((#{id\ 2089}# (#{wrap\ 445}# #{value\ 2075}# #{w\ 2077}# #{mod\ 2079}#)) (#{label\ 2090}# (#{gen-label\ 392}#))) (begin (let ((#{var\ 2092}# (#{gen-var\ 489}# #{id\ 2089}#))) (begin (#{extend-ribcage!\ 421}# #{ribcage\ 2044}# #{id\ 2089}# #{label\ 2090}#) (#{parse\ 2059}# (cdr #{body\ 2060}#) (cons #{id\ 2089}# #{ids\ 2061}#) (cons #{label\ 2090}# #{labels\ 2062}#) (cons #{id\ 2089}# #{var-ids\ 2063}#) (cons #{var\ 2092}# #{vars\ 2064}#) (cons (cons #{er\ 2072}# (#{wrap\ 445}# #{e\ 2076}# #{w\ 2077}# #{mod\ 2079}#)) #{vals\ 2065}#) (cons (cons 'lexical #{var\ 2092}#) #{bindings\ 2066}#))))))) (if (eqv? #{type\ 2074}# 'define-syntax-form) (begin (let ((#{id\ 2097}# (#{wrap\ 445}# #{value\ 2075}# #{w\ 2077}# #{mod\ 2079}#)) (#{label\ 2098}# (#{gen-label\ 392}#))) (begin (#{extend-ribcage!\ 421}# #{ribcage\ 2044}# #{id\ 2097}# #{label\ 2098}#) (#{parse\ 2059}# (cdr #{body\ 2060}#) (cons #{id\ 2097}# #{ids\ 2061}#) (cons #{label\ 2098}# #{labels\ 2062}#) #{var-ids\ 2063}# #{vars\ 2064}# #{vals\ 2065}# (cons (cons 'macro (cons #{er\ 2072}# (#{wrap\ 445}# #{e\ 2076}# #{w\ 2077}# #{mod\ 2079}#))) #{bindings\ 2066}#))))) (if (eqv? #{type\ 2074}# 'begin-form) (let ((#{tmp\ 2101}# #{e\ 2076}#)) (let ((#{tmp\ 2102}# ($sc-dispatch #{tmp\ 2101}# '(_ . each-any)))) (if #{tmp\ 2102}# (@apply (lambda (#{e1\ 2104}#) (#{parse\ 2059}# (letrec* ((#{f\ 2107}# (lambda (#{forms\ 2108}#) (if (null? #{forms\ 2108}#) (cdr #{body\ 2060}#) (cons (cons #{er\ 2072}# (#{wrap\ 445}# (car #{forms\ 2108}#) #{w\ 2077}# #{mod\ 2079}#)) (#{f\ 2107}# (cdr #{forms\ 2108}#))))))) (begin (#{f\ 2107}# #{e1\ 2104}#))) #{ids\ 2061}# #{labels\ 2062}# #{var-ids\ 2063}# #{vars\ 2064}# #{vals\ 2065}# #{bindings\ 2066}#)) #{tmp\ 2102}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2101}#)))) (if (eqv? #{type\ 2074}# 'local-syntax-form) (#{chi-local-syntax\ 471}# #{value\ 2075}# #{e\ 2076}# #{er\ 2072}# #{w\ 2077}# #{s\ 2078}# #{mod\ 2079}# (lambda (#{forms\ 2111}# #{er\ 2112}# #{w\ 2113}# #{s\ 2114}# #{mod\ 2115}#) (#{parse\ 2059}# (letrec* ((#{f\ 2123}# (lambda (#{forms\ 2124}#) (if (null? #{forms\ 2124}#) (cdr #{body\ 2060}#) (cons (cons #{er\ 2112}# (#{wrap\ 445}# (car #{forms\ 2124}#) #{w\ 2113}# #{mod\ 2115}#)) (#{f\ 2123}# (cdr #{forms\ 2124}#))))))) (begin (#{f\ 2123}# #{forms\ 2111}#))) #{ids\ 2061}# #{labels\ 2062}# #{var-ids\ 2063}# #{vars\ 2064}# #{vals\ 2065}# #{bindings\ 2066}#))) (if (null? #{ids\ 2061}#) (#{build-sequence\ 333}# #f (map (lambda (#{x\ 2127}#) (#{chi\ 461}# (cdr #{x\ 2127}#) (car #{x\ 2127}#) '(()) #{mod\ 2079}#)) (cons (cons #{er\ 2072}# (#{source-wrap\ 447}# #{e\ 2076}# #{w\ 2077}# #{s\ 2078}# #{mod\ 2079}#)) (cdr #{body\ 2060}#)))) (begin (if (not (#{valid-bound-ids?\ 439}# #{ids\ 2061}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 2031}#)) (letrec* ((#{loop\ 2134}# (lambda (#{bs\ 2135}# #{er-cache\ 2136}# #{r-cache\ 2137}#) (if (not (null? #{bs\ 2135}#)) (begin (let ((#{b\ 2140}# (car #{bs\ 2135}#))) (if (eq? (car #{b\ 2140}#) 'macro) (begin (let ((#{er\ 2143}# (car (cdr #{b\ 2140}#)))) (begin (let ((#{r-cache\ 2145}# (if (eq? #{er\ 2143}# #{er-cache\ 2136}#) #{r-cache\ 2137}# (#{macros-only-env\ 371}# #{er\ 2143}#)))) (begin (set-cdr! #{b\ 2140}# (#{eval-local-transformer\ 473}# (#{chi\ 461}# (cdr (cdr #{b\ 2140}#)) #{r-cache\ 2145}# '(()) #{mod\ 2079}#) #{mod\ 2079}#)) (#{loop\ 2134}# (cdr #{bs\ 2135}#) #{er\ 2143}# #{r-cache\ 2145}#)))))) (#{loop\ 2134}# (cdr #{bs\ 2135}#) #{er-cache\ 2136}# #{r-cache\ 2137}#)))))))) (begin (#{loop\ 2134}# #{bindings\ 2066}# #f #f))) (set-cdr! #{r\ 2042}# (#{extend-env\ 367}# #{labels\ 2062}# #{bindings\ 2066}# (cdr #{r\ 2042}#))) (#{build-letrec\ 339}# #f #t (reverse (map syntax->datum #{var-ids\ 2063}#)) (reverse #{vars\ 2064}#) (map (lambda (#{x\ 2148}#) (#{chi\ 461}# (cdr #{x\ 2148}#) (car #{x\ 2148}#) '(()) #{mod\ 2079}#)) (reverse #{vals\ 2065}#)) (#{build-sequence\ 333}# #f (map (lambda (#{x\ 2152}#) (#{chi\ 461}# (cdr #{x\ 2152}#) (car #{x\ 2152}#) '(()) #{mod\ 2079}#)) (cons (cons #{er\ 2072}# (#{source-wrap\ 447}# #{e\ 2076}# #{w\ 2077}# #{s\ 2078}# #{mod\ 2079}#)) (cdr #{body\ 2060}#))))))))))))))))))) (begin (#{parse\ 2059}# (map (lambda (#{x\ 2067}#) (cons #{r\ 2042}# (#{wrap\ 445}# #{x\ 2067}# #{w\ 2047}# #{mod\ 2034}#))) #{body\ 2030}#) '() '() '() '() '() '()))))))))))) (#{chi-local-syntax\ 471}# (lambda (#{rec?\ 2155}# #{e\ 2156}# #{r\ 2157}# #{w\ 2158}# #{s\ 2159}# #{mod\ 2160}# #{k\ 2161}#) (let ((#{tmp\ 2169}# #{e\ 2156}#)) (let ((#{tmp\ 2170}# ($sc-dispatch #{tmp\ 2169}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 2170}# (@apply (lambda (#{id\ 2175}# #{val\ 2176}# #{e1\ 2177}# #{e2\ 2178}#) (begin (let ((#{ids\ 2180}# #{id\ 2175}#)) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 2180}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 2156}#) (begin (let ((#{labels\ 2183}# (#{gen-labels\ 394}# #{ids\ 2180}#))) (begin (let ((#{new-w\ 2185}# (#{make-binding-wrap\ 423}# #{ids\ 2180}# #{labels\ 2183}# #{w\ 2158}#))) (#{k\ 2161}# (cons #{e1\ 2177}# #{e2\ 2178}#) (#{extend-env\ 367}# #{labels\ 2183}# (begin (let ((#{w\ 2189}# (if #{rec?\ 2155}# #{new-w\ 2185}# #{w\ 2158}#)) (#{trans-r\ 2190}# (#{macros-only-env\ 371}# #{r\ 2157}#))) (map (lambda (#{x\ 2191}#) (cons 'macro (#{eval-local-transformer\ 473}# (#{chi\ 461}# #{x\ 2191}# #{trans-r\ 2190}# #{w\ 2189}# #{mod\ 2160}#) #{mod\ 2160}#))) #{val\ 2176}#))) #{r\ 2157}#) #{new-w\ 2185}# #{s\ 2159}# #{mod\ 2160}#))))))))) #{tmp\ 2170}#) (let ((#{_\ 2196}# #{tmp\ 2169}#)) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 447}# #{e\ 2156}# #{w\ 2158}# #{s\ 2159}# #{mod\ 2160}#)))))))) (#{eval-local-transformer\ 473}# (lambda (#{expanded\ 2197}# #{mod\ 2198}#) (begin (let ((#{p\ 2202}# (#{local-eval-hook\ 292}# #{expanded\ 2197}# #{mod\ 2198}#))) (if (procedure? #{p\ 2202}#) #{p\ 2202}# (syntax-violation #f "nonprocedure transformer" #{p\ 2202}#)))))) (#{chi-void\ 475}# (lambda () (#{build-void\ 303}# #f))) (#{ellipsis?\ 477}# (lambda (#{x\ 2204}#) (if (#{nonsymbol-id?\ 377}# #{x\ 2204}#) (#{free-id=?\ 435}# #{x\ 2204}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i2205")) #(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\ 2208}#) (letrec* ((#{req\ 2211}# (lambda (#{args\ 2214}# #{rreq\ 2215}#) (let ((#{tmp\ 2218}# #{args\ 2214}#)) (let ((#{tmp\ 2219}# ($sc-dispatch #{tmp\ 2218}# '()))) (if #{tmp\ 2219}# (@apply (lambda () (#{check\ 2213}# (reverse #{rreq\ 2215}#) #f)) #{tmp\ 2219}#) (let ((#{tmp\ 2220}# ($sc-dispatch #{tmp\ 2218}# '(any . any)))) (if (if #{tmp\ 2220}# (@apply (lambda (#{a\ 2223}# #{b\ 2224}#) (#{id?\ 379}# #{a\ 2223}#)) #{tmp\ 2220}#) #f) (@apply (lambda (#{a\ 2227}# #{b\ 2228}#) (#{req\ 2211}# #{b\ 2228}# (cons #{a\ 2227}# #{rreq\ 2215}#))) #{tmp\ 2220}#) (let ((#{tmp\ 2229}# (list #{tmp\ 2218}#))) (if (if #{tmp\ 2229}# (@apply (lambda (#{r\ 2231}#) (#{id?\ 379}# #{r\ 2231}#)) #{tmp\ 2229}#) #f) (@apply (lambda (#{r\ 2233}#) (#{check\ 2213}# (reverse #{rreq\ 2215}#) #{r\ 2233}#)) #{tmp\ 2229}#) (let ((#{else\ 2235}# #{tmp\ 2218}#)) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 2208}# #{args\ 2214}#))))))))))) (#{check\ 2213}# (lambda (#{req\ 2236}# #{rest\ 2237}#) (if (#{distinct-bound-ids?\ 441}# (if #{rest\ 2237}# (cons #{rest\ 2237}# #{req\ 2236}#) #{req\ 2236}#)) (values #{req\ 2236}# #f #{rest\ 2237}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 2208}#))))) (begin (#{req\ 2211}# #{orig-args\ 2208}# '()))))) (#{chi-simple-lambda\ 481}# (lambda (#{e\ 2243}# #{r\ 2244}# #{w\ 2245}# #{s\ 2246}# #{mod\ 2247}# #{req\ 2248}# #{rest\ 2249}# #{meta\ 2250}# #{body\ 2251}#) (begin (let ((#{ids\ 2263}# (if #{rest\ 2249}# (append #{req\ 2248}# (list #{rest\ 2249}#)) #{req\ 2248}#))) (begin (let ((#{vars\ 2265}# (map #{gen-var\ 489}# #{ids\ 2263}#))) (begin (let ((#{labels\ 2267}# (#{gen-labels\ 394}# #{ids\ 2263}#))) (#{build-simple-lambda\ 323}# #{s\ 2246}# (map syntax->datum #{req\ 2248}#) (if #{rest\ 2249}# (syntax->datum #{rest\ 2249}#) #f) #{vars\ 2265}# #{meta\ 2250}# (#{chi-body\ 469}# #{body\ 2251}# (#{source-wrap\ 447}# #{e\ 2243}# #{w\ 2245}# #{s\ 2246}# #{mod\ 2247}#) (#{extend-var-env\ 369}# #{labels\ 2267}# #{vars\ 2265}# #{r\ 2244}#) (#{make-binding-wrap\ 423}# #{ids\ 2263}# #{labels\ 2267}# #{w\ 2245}#) #{mod\ 2247}#)))))))))) (#{lambda*-formals\ 483}# (lambda (#{orig-args\ 2270}#) (letrec* ((#{req\ 2273}# (lambda (#{args\ 2282}# #{rreq\ 2283}#) (let ((#{tmp\ 2286}# #{args\ 2282}#)) (let ((#{tmp\ 2287}# ($sc-dispatch #{tmp\ 2286}# '()))) (if #{tmp\ 2287}# (@apply (lambda () (#{check\ 2281}# (reverse #{rreq\ 2283}#) '() #f '())) #{tmp\ 2287}#) (let ((#{tmp\ 2288}# ($sc-dispatch #{tmp\ 2286}# '(any . any)))) (if (if #{tmp\ 2288}# (@apply (lambda (#{a\ 2291}# #{b\ 2292}#) (#{id?\ 379}# #{a\ 2291}#)) #{tmp\ 2288}#) #f) (@apply (lambda (#{a\ 2295}# #{b\ 2296}#) (#{req\ 2273}# #{b\ 2296}# (cons #{a\ 2295}# #{rreq\ 2283}#))) #{tmp\ 2288}#) (let ((#{tmp\ 2297}# ($sc-dispatch #{tmp\ 2286}# '(any . any)))) (if (if #{tmp\ 2297}# (@apply (lambda (#{a\ 2300}# #{b\ 2301}#) (eq? (syntax->datum #{a\ 2300}#) #:optional)) #{tmp\ 2297}#) #f) (@apply (lambda (#{a\ 2304}# #{b\ 2305}#) (#{opt\ 2275}# #{b\ 2305}# (reverse #{rreq\ 2283}#) '())) #{tmp\ 2297}#) (let ((#{tmp\ 2306}# ($sc-dispatch #{tmp\ 2286}# '(any . any)))) (if (if #{tmp\ 2306}# (@apply (lambda (#{a\ 2309}# #{b\ 2310}#) (eq? (syntax->datum #{a\ 2309}#) #:key)) #{tmp\ 2306}#) #f) (@apply (lambda (#{a\ 2313}# #{b\ 2314}#) (#{key\ 2277}# #{b\ 2314}# (reverse #{rreq\ 2283}#) '() '())) #{tmp\ 2306}#) (let ((#{tmp\ 2315}# ($sc-dispatch #{tmp\ 2286}# '(any any)))) (if (if #{tmp\ 2315}# (@apply (lambda (#{a\ 2318}# #{b\ 2319}#) (eq? (syntax->datum #{a\ 2318}#) #:rest)) #{tmp\ 2315}#) #f) (@apply (lambda (#{a\ 2322}# #{b\ 2323}#) (#{rest\ 2279}# #{b\ 2323}# (reverse #{rreq\ 2283}#) '() '())) #{tmp\ 2315}#) (let ((#{tmp\ 2324}# (list #{tmp\ 2286}#))) (if (if #{tmp\ 2324}# (@apply (lambda (#{r\ 2326}#) (#{id?\ 379}# #{r\ 2326}#)) #{tmp\ 2324}#) #f) (@apply (lambda (#{r\ 2328}#) (#{rest\ 2279}# #{r\ 2328}# (reverse #{rreq\ 2283}#) '() '())) #{tmp\ 2324}#) (let ((#{else\ 2330}# #{tmp\ 2286}#)) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 2270}# #{args\ 2282}#))))))))))))))))) (#{opt\ 2275}# (lambda (#{args\ 2331}# #{req\ 2332}# #{ropt\ 2333}#) (let ((#{tmp\ 2337}# #{args\ 2331}#)) (let ((#{tmp\ 2338}# ($sc-dispatch #{tmp\ 2337}# '()))) (if #{tmp\ 2338}# (@apply (lambda () (#{check\ 2281}# #{req\ 2332}# (reverse #{ropt\ 2333}#) #f '())) #{tmp\ 2338}#) (let ((#{tmp\ 2339}# ($sc-dispatch #{tmp\ 2337}# '(any . any)))) (if (if #{tmp\ 2339}# (@apply (lambda (#{a\ 2342}# #{b\ 2343}#) (#{id?\ 379}# #{a\ 2342}#)) #{tmp\ 2339}#) #f) (@apply (lambda (#{a\ 2346}# #{b\ 2347}#) (#{opt\ 2275}# #{b\ 2347}# #{req\ 2332}# (cons (cons #{a\ 2346}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i2344" "i2345")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i2334" "i2335" "i2336")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2280" "i2278" "i2276" "i2274" "i2272")) #(ribcage #(orig-args) #((top)) #("i2271")) #(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\ 2333}#))) #{tmp\ 2339}#) (let ((#{tmp\ 2348}# ($sc-dispatch #{tmp\ 2337}# '((any any) . any)))) (if (if #{tmp\ 2348}# (@apply (lambda (#{a\ 2352}# #{init\ 2353}# #{b\ 2354}#) (#{id?\ 379}# #{a\ 2352}#)) #{tmp\ 2348}#) #f) (@apply (lambda (#{a\ 2358}# #{init\ 2359}# #{b\ 2360}#) (#{opt\ 2275}# #{b\ 2360}# #{req\ 2332}# (cons (list #{a\ 2358}# #{init\ 2359}#) #{ropt\ 2333}#))) #{tmp\ 2348}#) (let ((#{tmp\ 2361}# ($sc-dispatch #{tmp\ 2337}# '(any . any)))) (if (if #{tmp\ 2361}# (@apply (lambda (#{a\ 2364}# #{b\ 2365}#) (eq? (syntax->datum #{a\ 2364}#) #:key)) #{tmp\ 2361}#) #f) (@apply (lambda (#{a\ 2368}# #{b\ 2369}#) (#{key\ 2277}# #{b\ 2369}# #{req\ 2332}# (reverse #{ropt\ 2333}#) '())) #{tmp\ 2361}#) (let ((#{tmp\ 2370}# ($sc-dispatch #{tmp\ 2337}# '(any any)))) (if (if #{tmp\ 2370}# (@apply (lambda (#{a\ 2373}# #{b\ 2374}#) (eq? (syntax->datum #{a\ 2373}#) #:rest)) #{tmp\ 2370}#) #f) (@apply (lambda (#{a\ 2377}# #{b\ 2378}#) (#{rest\ 2279}# #{b\ 2378}# #{req\ 2332}# (reverse #{ropt\ 2333}#) '())) #{tmp\ 2370}#) (let ((#{tmp\ 2379}# (list #{tmp\ 2337}#))) (if (if #{tmp\ 2379}# (@apply (lambda (#{r\ 2381}#) (#{id?\ 379}# #{r\ 2381}#)) #{tmp\ 2379}#) #f) (@apply (lambda (#{r\ 2383}#) (#{rest\ 2279}# #{r\ 2383}# #{req\ 2332}# (reverse #{ropt\ 2333}#) '())) #{tmp\ 2379}#) (let ((#{else\ 2385}# #{tmp\ 2337}#)) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 2270}# #{args\ 2331}#))))))))))))))))) (#{key\ 2277}# (lambda (#{args\ 2386}# #{req\ 2387}# #{opt\ 2388}# #{rkey\ 2389}#) (let ((#{tmp\ 2394}# #{args\ 2386}#)) (let ((#{tmp\ 2395}# ($sc-dispatch #{tmp\ 2394}# '()))) (if #{tmp\ 2395}# (@apply (lambda () (#{check\ 2281}# #{req\ 2387}# #{opt\ 2388}# #f (cons #f (reverse #{rkey\ 2389}#)))) #{tmp\ 2395}#) (let ((#{tmp\ 2396}# ($sc-dispatch #{tmp\ 2394}# '(any . any)))) (if (if #{tmp\ 2396}# (@apply (lambda (#{a\ 2399}# #{b\ 2400}#) (#{id?\ 379}# #{a\ 2399}#)) #{tmp\ 2396}#) #f) (@apply (lambda (#{a\ 2403}# #{b\ 2404}#) (let ((#{tmp\ 2406}# (symbol->keyword (syntax->datum #{a\ 2403}#)))) (let ((#{k\ 2408}# #{tmp\ 2406}#)) (#{key\ 2277}# #{b\ 2404}# #{req\ 2387}# #{opt\ 2388}# (cons (cons #{k\ 2408}# (cons #{a\ 2403}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i2407")) #(ribcage #(a b) #((top) (top)) #("i2401" "i2402")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i2390" "i2391" "i2392" "i2393")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i2280" "i2278" "i2276" "i2274" "i2272")) #(ribcage #(orig-args) #((top)) #("i2271")) #(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\ 2389}#))))) #{tmp\ 2396}#) (let ((#{tmp\ 2409}# ($sc-dispatch #{tmp\ 2394}# '((any any) . any)))) (if (if #{tmp\ 2409}# (@apply (lambda (#{a\ 2413}# #{init\ 2414}# #{b\ 2415}#) (#{id?\ 379}# #{a\ 2413}#)) #{tmp\ 2409}#) #f) (@apply (lambda (#{a\ 2419}# #{init\ 2420}# #{b\ 2421}#) (let ((#{tmp\ 2423}# (symbol->keyword (syntax->datum #{a\ 2419}#)))) (let ((#{k\ 2425}# #{tmp\ 2423}#)) (#{key\ 2277}# #{b\ 2421}# #{req\ 2387}# #{opt\ 2388}# (cons (list #{k\ 2425}# #{a\ 2419}# #{init\ 2420}#) #{rkey\ 2389}#))))) #{tmp\ 2409}#) (let ((#{tmp\ 2426}# ($sc-dispatch #{tmp\ 2394}# '((any any any) . any)))) (if (if #{tmp\ 2426}# (@apply (lambda (#{a\ 2431}# #{init\ 2432}# #{k\ 2433}# #{b\ 2434}#) (if (#{id?\ 379}# #{a\ 2431}#) (keyword? (syntax->datum #{k\ 2433}#)) #f)) #{tmp\ 2426}#) #f) (@apply (lambda (#{a\ 2441}# #{init\ 2442}# #{k\ 2443}# #{b\ 2444}#) (#{key\ 2277}# #{b\ 2444}# #{req\ 2387}# #{opt\ 2388}# (cons (list #{k\ 2443}# #{a\ 2441}# #{init\ 2442}#) #{rkey\ 2389}#))) #{tmp\ 2426}#) (let ((#{tmp\ 2445}# ($sc-dispatch #{tmp\ 2394}# '(any)))) (if (if #{tmp\ 2445}# (@apply (lambda (#{aok\ 2447}#) (eq? (syntax->datum #{aok\ 2447}#) #:allow-other-keys)) #{tmp\ 2445}#) #f) (@apply (lambda (#{aok\ 2449}#) (#{check\ 2281}# #{req\ 2387}# #{opt\ 2388}# #f (cons #t (reverse #{rkey\ 2389}#)))) #{tmp\ 2445}#) (let ((#{tmp\ 2450}# ($sc-dispatch #{tmp\ 2394}# '(any any any)))) (if (if #{tmp\ 2450}# (@apply (lambda (#{aok\ 2454}# #{a\ 2455}# #{b\ 2456}#) (if (eq? (syntax->datum #{aok\ 2454}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 2455}#) #:rest) #f)) #{tmp\ 2450}#) #f) (@apply (lambda (#{aok\ 2462}# #{a\ 2463}# #{b\ 2464}#) (#{rest\ 2279}# #{b\ 2464}# #{req\ 2387}# #{opt\ 2388}# (cons #t (reverse #{rkey\ 2389}#)))) #{tmp\ 2450}#) (let ((#{tmp\ 2465}# ($sc-dispatch #{tmp\ 2394}# '(any . any)))) (if (if #{tmp\ 2465}# (@apply (lambda (#{aok\ 2468}# #{r\ 2469}#) (if (eq? (syntax->datum #{aok\ 2468}#) #:allow-other-keys) (#{id?\ 379}# #{r\ 2469}#) #f)) #{tmp\ 2465}#) #f) (@apply (lambda (#{aok\ 2474}# #{r\ 2475}#) (#{rest\ 2279}# #{r\ 2475}# #{req\ 2387}# #{opt\ 2388}# (cons #t (reverse #{rkey\ 2389}#)))) #{tmp\ 2465}#) (let ((#{tmp\ 2476}# ($sc-dispatch #{tmp\ 2394}# '(any any)))) (if (if #{tmp\ 2476}# (@apply (lambda (#{a\ 2479}# #{b\ 2480}#) (eq? (syntax->datum #{a\ 2479}#) #:rest)) #{tmp\ 2476}#) #f) (@apply (lambda (#{a\ 2483}# #{b\ 2484}#) (#{rest\ 2279}# #{b\ 2484}# #{req\ 2387}# #{opt\ 2388}# (cons #f (reverse #{rkey\ 2389}#)))) #{tmp\ 2476}#) (let ((#{tmp\ 2485}# (list #{tmp\ 2394}#))) (if (if #{tmp\ 2485}# (@apply (lambda (#{r\ 2487}#) (#{id?\ 379}# #{r\ 2487}#)) #{tmp\ 2485}#) #f) (@apply (lambda (#{r\ 2489}#) (#{rest\ 2279}# #{r\ 2489}# #{req\ 2387}# #{opt\ 2388}# (cons #f (reverse #{rkey\ 2389}#)))) #{tmp\ 2485}#) (let ((#{else\ 2491}# #{tmp\ 2394}#)) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 2270}# #{args\ 2386}#))))))))))))))))))))))) (#{rest\ 2279}# (lambda (#{args\ 2492}# #{req\ 2493}# #{opt\ 2494}# #{kw\ 2495}#) (let ((#{tmp\ 2500}# #{args\ 2492}#)) (let ((#{tmp\ 2501}# (list #{tmp\ 2500}#))) (if (if #{tmp\ 2501}# (@apply (lambda (#{r\ 2503}#) (#{id?\ 379}# #{r\ 2503}#)) #{tmp\ 2501}#) #f) (@apply (lambda (#{r\ 2505}#) (#{check\ 2281}# #{req\ 2493}# #{opt\ 2494}# #{r\ 2505}# #{kw\ 2495}#)) #{tmp\ 2501}#) (let ((#{else\ 2507}# #{tmp\ 2500}#)) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 2270}# #{args\ 2492}#))))))) (#{check\ 2281}# (lambda (#{req\ 2508}# #{opt\ 2509}# #{rest\ 2510}# #{kw\ 2511}#) (if (#{distinct-bound-ids?\ 441}# (append #{req\ 2508}# (map car #{opt\ 2509}#) (if #{rest\ 2510}# (list #{rest\ 2510}#) '()) (if (pair? #{kw\ 2511}#) (map cadr (cdr #{kw\ 2511}#)) '()))) (values #{req\ 2508}# #{opt\ 2509}# #{rest\ 2510}# #{kw\ 2511}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 2270}#))))) (begin (#{req\ 2273}# #{orig-args\ 2270}# '()))))) (#{chi-lambda-case\ 485}# (lambda (#{e\ 2519}# #{r\ 2520}# #{w\ 2521}# #{s\ 2522}# #{mod\ 2523}# #{get-formals\ 2524}# #{clauses\ 2525}#) (letrec* ((#{expand-req\ 2534}# (lambda (#{req\ 2541}# #{opt\ 2542}# #{rest\ 2543}# #{kw\ 2544}# #{body\ 2545}#) (begin (let ((#{vars\ 2553}# (map #{gen-var\ 489}# #{req\ 2541}#)) (#{labels\ 2554}# (#{gen-labels\ 394}# #{req\ 2541}#))) (begin (let ((#{r*\ 2557}# (#{extend-var-env\ 369}# #{labels\ 2554}# #{vars\ 2553}# #{r\ 2520}#)) (#{w*\ 2558}# (#{make-binding-wrap\ 423}# #{req\ 2541}# #{labels\ 2554}# #{w\ 2521}#))) (#{expand-opt\ 2536}# (map syntax->datum #{req\ 2541}#) #{opt\ 2542}# #{rest\ 2543}# #{kw\ 2544}# #{body\ 2545}# (reverse #{vars\ 2553}#) #{r*\ 2557}# #{w*\ 2558}# '() '()))))))) (#{expand-opt\ 2536}# (lambda (#{req\ 2559}# #{opt\ 2560}# #{rest\ 2561}# #{kw\ 2562}# #{body\ 2563}# #{vars\ 2564}# #{r*\ 2565}# #{w*\ 2566}# #{out\ 2567}# #{inits\ 2568}#) (if (pair? #{opt\ 2560}#) (let ((#{tmp\ 2581}# (car #{opt\ 2560}#))) (let ((#{tmp\ 2582}# ($sc-dispatch #{tmp\ 2581}# '(any any)))) (if #{tmp\ 2582}# (@apply (lambda (#{id\ 2585}# #{i\ 2586}#) (begin (let ((#{v\ 2589}# (#{gen-var\ 489}# #{id\ 2585}#))) (begin (let ((#{l\ 2591}# (#{gen-labels\ 394}# (list #{v\ 2589}#)))) (begin (let ((#{r**\ 2593}# (#{extend-var-env\ 369}# #{l\ 2591}# (list #{v\ 2589}#) #{r*\ 2565}#))) (begin (let ((#{w**\ 2595}# (#{make-binding-wrap\ 423}# (list #{id\ 2585}#) #{l\ 2591}# #{w*\ 2566}#))) (#{expand-opt\ 2536}# #{req\ 2559}# (cdr #{opt\ 2560}#) #{rest\ 2561}# #{kw\ 2562}# #{body\ 2563}# (cons #{v\ 2589}# #{vars\ 2564}#) #{r**\ 2593}# #{w**\ 2595}# (cons (syntax->datum #{id\ 2585}#) #{out\ 2567}#) (cons (#{chi\ 461}# #{i\ 2586}# #{r*\ 2565}# #{w*\ 2566}# #{mod\ 2523}#) #{inits\ 2568}#))))))))))) #{tmp\ 2582}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2581}#)))) (if #{rest\ 2561}# (begin (let ((#{v\ 2600}# (#{gen-var\ 489}# #{rest\ 2561}#))) (begin (let ((#{l\ 2602}# (#{gen-labels\ 394}# (list #{v\ 2600}#)))) (begin (let ((#{r*\ 2604}# (#{extend-var-env\ 369}# #{l\ 2602}# (list #{v\ 2600}#) #{r*\ 2565}#))) (begin (let ((#{w*\ 2606}# (#{make-binding-wrap\ 423}# (list #{rest\ 2561}#) #{l\ 2602}# #{w*\ 2566}#))) (#{expand-kw\ 2538}# #{req\ 2559}# (if (pair? #{out\ 2567}#) (reverse #{out\ 2567}#) #f) (syntax->datum #{rest\ 2561}#) (if (pair? #{kw\ 2562}#) (cdr #{kw\ 2562}#) #{kw\ 2562}#) #{body\ 2563}# (cons #{v\ 2600}# #{vars\ 2564}#) #{r*\ 2604}# #{w*\ 2606}# (if (pair? #{kw\ 2562}#) (car #{kw\ 2562}#) #f) '() #{inits\ 2568}#))))))))) (#{expand-kw\ 2538}# #{req\ 2559}# (if (pair? #{out\ 2567}#) (reverse #{out\ 2567}#) #f) #f (if (pair? #{kw\ 2562}#) (cdr #{kw\ 2562}#) #{kw\ 2562}#) #{body\ 2563}# #{vars\ 2564}# #{r*\ 2565}# #{w*\ 2566}# (if (pair? #{kw\ 2562}#) (car #{kw\ 2562}#) #f) '() #{inits\ 2568}#))))) (#{expand-kw\ 2538}# (lambda (#{req\ 2608}# #{opt\ 2609}# #{rest\ 2610}# #{kw\ 2611}# #{body\ 2612}# #{vars\ 2613}# #{r*\ 2614}# #{w*\ 2615}# #{aok\ 2616}# #{out\ 2617}# #{inits\ 2618}#) (if (pair? #{kw\ 2611}#) (let ((#{tmp\ 2632}# (car #{kw\ 2611}#))) (let ((#{tmp\ 2633}# ($sc-dispatch #{tmp\ 2632}# '(any any any)))) (if #{tmp\ 2633}# (@apply (lambda (#{k\ 2637}# #{id\ 2638}# #{i\ 2639}#) (begin (let ((#{v\ 2642}# (#{gen-var\ 489}# #{id\ 2638}#))) (begin (let ((#{l\ 2644}# (#{gen-labels\ 394}# (list #{v\ 2642}#)))) (begin (let ((#{r**\ 2646}# (#{extend-var-env\ 369}# #{l\ 2644}# (list #{v\ 2642}#) #{r*\ 2614}#))) (begin (let ((#{w**\ 2648}# (#{make-binding-wrap\ 423}# (list #{id\ 2638}#) #{l\ 2644}# #{w*\ 2615}#))) (#{expand-kw\ 2538}# #{req\ 2608}# #{opt\ 2609}# #{rest\ 2610}# (cdr #{kw\ 2611}#) #{body\ 2612}# (cons #{v\ 2642}# #{vars\ 2613}#) #{r**\ 2646}# #{w**\ 2648}# #{aok\ 2616}# (cons (list (syntax->datum #{k\ 2637}#) (syntax->datum #{id\ 2638}#) #{v\ 2642}#) #{out\ 2617}#) (cons (#{chi\ 461}# #{i\ 2639}# #{r*\ 2614}# #{w*\ 2615}# #{mod\ 2523}#) #{inits\ 2618}#))))))))))) #{tmp\ 2633}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2632}#)))) (#{expand-body\ 2540}# #{req\ 2608}# #{opt\ 2609}# #{rest\ 2610}# (if (begin (let ((#{t\ 2652}# #{aok\ 2616}#)) (if #{t\ 2652}# #{t\ 2652}# (pair? #{out\ 2617}#)))) (cons #{aok\ 2616}# (reverse #{out\ 2617}#)) #f) #{body\ 2612}# (reverse #{vars\ 2613}#) #{r*\ 2614}# #{w*\ 2615}# (reverse #{inits\ 2618}#) '())))) (#{expand-body\ 2540}# (lambda (#{req\ 2654}# #{opt\ 2655}# #{rest\ 2656}# #{kw\ 2657}# #{body\ 2658}# #{vars\ 2659}# #{r*\ 2660}# #{w*\ 2661}# #{inits\ 2662}# #{meta\ 2663}#) (let ((#{tmp\ 2674}# #{body\ 2658}#)) (let ((#{tmp\ 2675}# ($sc-dispatch #{tmp\ 2674}# '(any any . each-any)))) (if (if #{tmp\ 2675}# (@apply (lambda (#{docstring\ 2679}# #{e1\ 2680}# #{e2\ 2681}#) (string? (syntax->datum #{docstring\ 2679}#))) #{tmp\ 2675}#) #f) (@apply (lambda (#{docstring\ 2685}# #{e1\ 2686}# #{e2\ 2687}#) (#{expand-body\ 2540}# #{req\ 2654}# #{opt\ 2655}# #{rest\ 2656}# #{kw\ 2657}# (cons #{e1\ 2686}# #{e2\ 2687}#) #{vars\ 2659}# #{r*\ 2660}# #{w*\ 2661}# #{inits\ 2662}# (append #{meta\ 2663}# (list (cons 'documentation (syntax->datum #{docstring\ 2685}#)))))) #{tmp\ 2675}#) (let ((#{tmp\ 2690}# ($sc-dispatch #{tmp\ 2674}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 2690}# (@apply (lambda (#{k\ 2695}# #{v\ 2696}# #{e1\ 2697}# #{e2\ 2698}#) (#{expand-body\ 2540}# #{req\ 2654}# #{opt\ 2655}# #{rest\ 2656}# #{kw\ 2657}# (cons #{e1\ 2697}# #{e2\ 2698}#) #{vars\ 2659}# #{r*\ 2660}# #{w*\ 2661}# #{inits\ 2662}# (append #{meta\ 2663}# (syntax->datum (map cons #{k\ 2695}# #{v\ 2696}#))))) #{tmp\ 2690}#) (let ((#{tmp\ 2702}# ($sc-dispatch #{tmp\ 2674}# '(any . each-any)))) (if #{tmp\ 2702}# (@apply (lambda (#{e1\ 2705}# #{e2\ 2706}#) (values #{meta\ 2663}# #{req\ 2654}# #{opt\ 2655}# #{rest\ 2656}# #{kw\ 2657}# #{inits\ 2662}# #{vars\ 2659}# (#{chi-body\ 469}# (cons #{e1\ 2705}# #{e2\ 2706}#) (#{source-wrap\ 447}# #{e\ 2519}# #{w\ 2521}# #{s\ 2522}# #{mod\ 2523}#) #{r*\ 2660}# #{w*\ 2661}# #{mod\ 2523}#))) #{tmp\ 2702}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2674}#))))))))))) (begin (let ((#{tmp\ 2708}# #{clauses\ 2525}#)) (let ((#{tmp\ 2709}# ($sc-dispatch #{tmp\ 2708}# '()))) (if #{tmp\ 2709}# (@apply (lambda () (values '() #f)) #{tmp\ 2709}#) (let ((#{tmp\ 2710}# ($sc-dispatch #{tmp\ 2708}# '((any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 2710}# (@apply (lambda (#{args\ 2717}# #{e1\ 2718}# #{e2\ 2719}# #{args*\ 2720}# #{e1*\ 2721}# #{e2*\ 2722}#) (call-with-values (lambda () (#{get-formals\ 2524}# #{args\ 2717}#)) (lambda (#{req\ 2723}# #{opt\ 2724}# #{rest\ 2725}# #{kw\ 2726}#) (call-with-values (lambda () (#{expand-req\ 2534}# #{req\ 2723}# #{opt\ 2724}# #{rest\ 2725}# #{kw\ 2726}# (cons #{e1\ 2718}# #{e2\ 2719}#))) (lambda (#{meta\ 2732}# #{req\ 2733}# #{opt\ 2734}# #{rest\ 2735}# #{kw\ 2736}# #{inits\ 2737}# #{vars\ 2738}# #{body\ 2739}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 2519}# #{r\ 2520}# #{w\ 2521}# #{s\ 2522}# #{mod\ 2523}# #{get-formals\ 2524}# (map (lambda (#{tmp\ 2750}# #{tmp\ 2749}# #{tmp\ 2748}#) (cons #{tmp\ 2748}# (cons #{tmp\ 2749}# #{tmp\ 2750}#))) #{e2*\ 2722}# #{e1*\ 2721}# #{args*\ 2720}#))) (lambda (#{meta*\ 2752}# #{else*\ 2753}#) (values (append #{meta\ 2732}# #{meta*\ 2752}#) (#{build-lambda-case\ 327}# #{s\ 2522}# #{req\ 2733}# #{opt\ 2734}# #{rest\ 2735}# #{kw\ 2736}# #{inits\ 2737}# #{vars\ 2738}# #{body\ 2739}# #{else*\ 2753}#))))))))) #{tmp\ 2710}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 2708}#)))))))))) (#{strip\ 487}# (lambda (#{x\ 2756}# #{w\ 2757}#) (if (memq 'top (car #{w\ 2757}#)) #{x\ 2756}# (letrec* ((#{f\ 2764}# (lambda (#{x\ 2765}#) (if (#{syntax-object?\ 345}# #{x\ 2765}#) (#{strip\ 487}# (#{syntax-object-expression\ 347}# #{x\ 2765}#) (#{syntax-object-wrap\ 349}# #{x\ 2765}#)) (if (pair? #{x\ 2765}#) (begin (let ((#{a\ 2772}# (#{f\ 2764}# (car #{x\ 2765}#))) (#{d\ 2773}# (#{f\ 2764}# (cdr #{x\ 2765}#)))) (if (if (eq? #{a\ 2772}# (car #{x\ 2765}#)) (eq? #{d\ 2773}# (cdr #{x\ 2765}#)) #f) #{x\ 2765}# (cons #{a\ 2772}# #{d\ 2773}#)))) (if (vector? #{x\ 2765}#) (begin (let ((#{old\ 2779}# (vector->list #{x\ 2765}#))) (begin (let ((#{new\ 2781}# (map #{f\ 2764}# #{old\ 2779}#))) (if (#{and-map*\ 37}# eq? #{old\ 2779}# #{new\ 2781}#) #{x\ 2765}# (list->vector #{new\ 2781}#)))))) #{x\ 2765}#)))))) (begin (#{f\ 2764}# #{x\ 2756}#)))))) (#{gen-var\ 489}# (lambda (#{id\ 2783}#) (begin (let ((#{id\ 2786}# (if (#{syntax-object?\ 345}# #{id\ 2783}#) (#{syntax-object-expression\ 347}# #{id\ 2783}#) #{id\ 2783}#))) (gensym (string-append (symbol->string #{id\ 2786}#) " ")))))) (#{lambda-var-list\ 491}# (lambda (#{vars\ 2788}#) (letrec* ((#{lvl\ 2794}# (lambda (#{vars\ 2795}# #{ls\ 2796}# #{w\ 2797}#) (if (pair? #{vars\ 2795}#) (#{lvl\ 2794}# (cdr #{vars\ 2795}#) (cons (#{wrap\ 445}# (car #{vars\ 2795}#) #{w\ 2797}# #f) #{ls\ 2796}#) #{w\ 2797}#) (if (#{id?\ 379}# #{vars\ 2795}#) (cons (#{wrap\ 445}# #{vars\ 2795}# #{w\ 2797}# #f) #{ls\ 2796}#) (if (null? #{vars\ 2795}#) #{ls\ 2796}# (if (#{syntax-object?\ 345}# #{vars\ 2795}#) (#{lvl\ 2794}# (#{syntax-object-expression\ 347}# #{vars\ 2795}#) #{ls\ 2796}# (#{join-wraps\ 427}# #{w\ 2797}# (#{syntax-object-wrap\ 349}# #{vars\ 2795}#))) (cons #{vars\ 2795}# #{ls\ 2796}#)))))))) (begin (#{lvl\ 2794}# #{vars\ 2788}# '() '(()))))))) (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\ 2808}# #{r\ 2809}# #{w\ 2810}# #{s\ 2811}# #{mod\ 2812}#) (let ((#{tmp\ 2818}# #{e\ 2808}#)) (let ((#{tmp\ 2819}# ($sc-dispatch #{tmp\ 2818}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 2819}# (@apply (lambda (#{var\ 2824}# #{val\ 2825}# #{e1\ 2826}# #{e2\ 2827}#) (#{valid-bound-ids?\ 439}# #{var\ 2824}#)) #{tmp\ 2819}#) #f) (@apply (lambda (#{var\ 2833}# #{val\ 2834}# #{e1\ 2835}# #{e2\ 2836}#) (begin (let ((#{names\ 2838}# (map (lambda (#{x\ 2839}#) (#{id-var-name\ 433}# #{x\ 2839}# #{w\ 2810}#)) #{var\ 2833}#))) (begin (for-each (lambda (#{id\ 2842}# #{n\ 2843}#) (begin (let ((#{atom-key\ 2848}# (car (#{lookup\ 373}# #{n\ 2843}# #{r\ 2809}# #{mod\ 2812}#)))) (if (eqv? #{atom-key\ 2848}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 2808}# (#{source-wrap\ 447}# #{id\ 2842}# #{w\ 2810}# #{s\ 2811}# #{mod\ 2812}#)))))) #{var\ 2833}# #{names\ 2838}#) (#{chi-body\ 469}# (cons #{e1\ 2835}# #{e2\ 2836}#) (#{source-wrap\ 447}# #{e\ 2808}# #{w\ 2810}# #{s\ 2811}# #{mod\ 2812}#) (#{extend-env\ 367}# #{names\ 2838}# (begin (let ((#{trans-r\ 2854}# (#{macros-only-env\ 371}# #{r\ 2809}#))) (map (lambda (#{x\ 2855}#) (cons 'macro (#{eval-local-transformer\ 473}# (#{chi\ 461}# #{x\ 2855}# #{trans-r\ 2854}# #{w\ 2810}# #{mod\ 2812}#) #{mod\ 2812}#))) #{val\ 2834}#))) #{r\ 2809}#) #{w\ 2810}# #{mod\ 2812}#))))) #{tmp\ 2819}#) (let ((#{_\ 2860}# #{tmp\ 2818}#)) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 447}# #{e\ 2808}# #{w\ 2810}# #{s\ 2811}# #{mod\ 2812}#)))))))) (#{global-extend\ 375}# 'core 'quote (lambda (#{e\ 2861}# #{r\ 2862}# #{w\ 2863}# #{s\ 2864}# #{mod\ 2865}#) (let ((#{tmp\ 2871}# #{e\ 2861}#)) (let ((#{tmp\ 2872}# ($sc-dispatch #{tmp\ 2871}# '(_ any)))) (if #{tmp\ 2872}# (@apply (lambda (#{e\ 2874}#) (#{build-data\ 331}# #{s\ 2864}# (#{strip\ 487}# #{e\ 2874}# #{w\ 2863}#))) #{tmp\ 2872}#) (let ((#{_\ 2876}# #{tmp\ 2871}#)) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 447}# #{e\ 2861}# #{w\ 2863}# #{s\ 2864}# #{mod\ 2865}#)))))))) (#{global-extend\ 375}# 'core 'syntax (letrec* ((#{gen-syntax\ 2878}# (lambda (#{src\ 2893}# #{e\ 2894}# #{r\ 2895}# #{maps\ 2896}# #{ellipsis?\ 2897}# #{mod\ 2898}#) (if (#{id?\ 379}# #{e\ 2894}#) (begin (let ((#{label\ 2906}# (#{id-var-name\ 433}# #{e\ 2894}# '(())))) (begin (let ((#{b\ 2909}# (#{lookup\ 373}# #{label\ 2906}# #{r\ 2895}# #{mod\ 2898}#))) (if (eq? (car #{b\ 2909}#) 'syntax) (call-with-values (lambda () (begin (let ((#{var.lev\ 2912}# (cdr #{b\ 2909}#))) (#{gen-ref\ 2880}# #{src\ 2893}# (car #{var.lev\ 2912}#) (cdr #{var.lev\ 2912}#) #{maps\ 2896}#)))) (lambda (#{var\ 2914}# #{maps\ 2915}#) (values (list 'ref #{var\ 2914}#) #{maps\ 2915}#))) (if (#{ellipsis?\ 2897}# #{e\ 2894}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 2893}#) (values (list 'quote #{e\ 2894}#) #{maps\ 2896}#))))))) (let ((#{tmp\ 2920}# #{e\ 2894}#)) (let ((#{tmp\ 2921}# ($sc-dispatch #{tmp\ 2920}# '(any any)))) (if (if #{tmp\ 2921}# (@apply (lambda (#{dots\ 2924}# #{e\ 2925}#) (#{ellipsis?\ 2897}# #{dots\ 2924}#)) #{tmp\ 2921}#) #f) (@apply (lambda (#{dots\ 2928}# #{e\ 2929}#) (#{gen-syntax\ 2878}# #{src\ 2893}# #{e\ 2929}# #{r\ 2895}# #{maps\ 2896}# (lambda (#{x\ 2930}#) #f) #{mod\ 2898}#)) #{tmp\ 2921}#) (let ((#{tmp\ 2932}# ($sc-dispatch #{tmp\ 2920}# '(any any . any)))) (if (if #{tmp\ 2932}# (@apply (lambda (#{x\ 2936}# #{dots\ 2937}# #{y\ 2938}#) (#{ellipsis?\ 2897}# #{dots\ 2937}#)) #{tmp\ 2932}#) #f) (@apply (lambda (#{x\ 2942}# #{dots\ 2943}# #{y\ 2944}#) (letrec* ((#{f\ 2948}# (lambda (#{y\ 2949}# #{k\ 2950}#) (let ((#{tmp\ 2957}# #{y\ 2949}#)) (let ((#{tmp\ 2958}# ($sc-dispatch #{tmp\ 2957}# '(any . any)))) (if (if #{tmp\ 2958}# (@apply (lambda (#{dots\ 2961}# #{y\ 2962}#) (#{ellipsis?\ 2897}# #{dots\ 2961}#)) #{tmp\ 2958}#) #f) (@apply (lambda (#{dots\ 2965}# #{y\ 2966}#) (#{f\ 2948}# #{y\ 2966}# (lambda (#{maps\ 2967}#) (call-with-values (lambda () (#{k\ 2950}# (cons '() #{maps\ 2967}#))) (lambda (#{x\ 2969}# #{maps\ 2970}#) (if (null? (car #{maps\ 2970}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2893}#) (values (#{gen-mappend\ 2882}# #{x\ 2969}# (car #{maps\ 2970}#)) (cdr #{maps\ 2970}#)))))))) #{tmp\ 2958}#) (let ((#{_\ 2974}# #{tmp\ 2957}#)) (call-with-values (lambda () (#{gen-syntax\ 2878}# #{src\ 2893}# #{y\ 2949}# #{r\ 2895}# #{maps\ 2896}# #{ellipsis?\ 2897}# #{mod\ 2898}#)) (lambda (#{y\ 2975}# #{maps\ 2976}#) (call-with-values (lambda () (#{k\ 2950}# #{maps\ 2976}#)) (lambda (#{x\ 2979}# #{maps\ 2980}#) (values (#{gen-append\ 2888}# #{x\ 2979}# #{y\ 2975}#) #{maps\ 2980}#)))))))))))) (begin (#{f\ 2948}# #{y\ 2944}# (lambda (#{maps\ 2951}#) (call-with-values (lambda () (#{gen-syntax\ 2878}# #{src\ 2893}# #{x\ 2942}# #{r\ 2895}# (cons '() #{maps\ 2951}#) #{ellipsis?\ 2897}# #{mod\ 2898}#)) (lambda (#{x\ 2953}# #{maps\ 2954}#) (if (null? (car #{maps\ 2954}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2893}#) (values (#{gen-map\ 2884}# #{x\ 2953}# (car #{maps\ 2954}#)) (cdr #{maps\ 2954}#)))))))))) #{tmp\ 2932}#) (let ((#{tmp\ 2983}# ($sc-dispatch #{tmp\ 2920}# '(any . any)))) (if #{tmp\ 2983}# (@apply (lambda (#{x\ 2986}# #{y\ 2987}#) (call-with-values (lambda () (#{gen-syntax\ 2878}# #{src\ 2893}# #{x\ 2986}# #{r\ 2895}# #{maps\ 2896}# #{ellipsis?\ 2897}# #{mod\ 2898}#)) (lambda (#{x\ 2988}# #{maps\ 2989}#) (call-with-values (lambda () (#{gen-syntax\ 2878}# #{src\ 2893}# #{y\ 2987}# #{r\ 2895}# #{maps\ 2989}# #{ellipsis?\ 2897}# #{mod\ 2898}#)) (lambda (#{y\ 2992}# #{maps\ 2993}#) (values (#{gen-cons\ 2886}# #{x\ 2988}# #{y\ 2992}#) #{maps\ 2993}#)))))) #{tmp\ 2983}#) (let ((#{tmp\ 2996}# ($sc-dispatch #{tmp\ 2920}# '#(vector (any . each-any))))) (if #{tmp\ 2996}# (@apply (lambda (#{e1\ 2999}# #{e2\ 3000}#) (call-with-values (lambda () (#{gen-syntax\ 2878}# #{src\ 2893}# (cons #{e1\ 2999}# #{e2\ 3000}#) #{r\ 2895}# #{maps\ 2896}# #{ellipsis?\ 2897}# #{mod\ 2898}#)) (lambda (#{e\ 3002}# #{maps\ 3003}#) (values (#{gen-vector\ 2890}# #{e\ 3002}#) #{maps\ 3003}#)))) #{tmp\ 2996}#) (let ((#{_\ 3007}# #{tmp\ 2920}#)) (values (list 'quote #{e\ 2894}#) #{maps\ 2896}#)))))))))))))) (#{gen-ref\ 2880}# (lambda (#{src\ 3009}# #{var\ 3010}# #{level\ 3011}# #{maps\ 3012}#) (if (#{fx=\ 286}# #{level\ 3011}# 0) (values #{var\ 3010}# #{maps\ 3012}#) (if (null? #{maps\ 3012}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 3009}#) (call-with-values (lambda () (#{gen-ref\ 2880}# #{src\ 3009}# #{var\ 3010}# (#{fx-\ 284}# #{level\ 3011}# 1) (cdr #{maps\ 3012}#))) (lambda (#{outer-var\ 3017}# #{outer-maps\ 3018}#) (begin (let ((#{b\ 3022}# (assq #{outer-var\ 3017}# (car #{maps\ 3012}#)))) (if #{b\ 3022}# (values (cdr #{b\ 3022}#) #{maps\ 3012}#) (begin (let ((#{inner-var\ 3024}# (#{gen-var\ 489}# 'tmp))) (values #{inner-var\ 3024}# (cons (cons (cons #{outer-var\ 3017}# #{inner-var\ 3024}#) (car #{maps\ 3012}#)) #{outer-maps\ 3018}#))))))))))))) (#{gen-mappend\ 2882}# (lambda (#{e\ 3025}# #{map-env\ 3026}#) (list 'apply '(primitive append) (#{gen-map\ 2884}# #{e\ 3025}# #{map-env\ 3026}#)))) (#{gen-map\ 2884}# (lambda (#{e\ 3030}# #{map-env\ 3031}#) (begin (let ((#{formals\ 3036}# (map cdr #{map-env\ 3031}#)) (#{actuals\ 3037}# (map (lambda (#{x\ 3038}#) (list 'ref (car #{x\ 3038}#))) #{map-env\ 3031}#))) (if (eq? (car #{e\ 3030}#) 'ref) (car #{actuals\ 3037}#) (if (and-map (lambda (#{x\ 3045}#) (if (eq? (car #{x\ 3045}#) 'ref) (memq (car (cdr #{x\ 3045}#)) #{formals\ 3036}#) #f)) (cdr #{e\ 3030}#)) (cons 'map (cons (list 'primitive (car #{e\ 3030}#)) (map (begin (let ((#{r\ 3051}# (map cons #{formals\ 3036}# #{actuals\ 3037}#))) (lambda (#{x\ 3052}#) (cdr (assq (car (cdr #{x\ 3052}#)) #{r\ 3051}#))))) (cdr #{e\ 3030}#)))) (cons 'map (cons (list 'lambda #{formals\ 3036}# #{e\ 3030}#) #{actuals\ 3037}#)))))))) (#{gen-cons\ 2886}# (lambda (#{x\ 3056}# #{y\ 3057}#) (begin (let ((#{atom-key\ 3062}# (car #{y\ 3057}#))) (if (eqv? #{atom-key\ 3062}# 'quote) (if (eq? (car #{x\ 3056}#) 'quote) (list 'quote (cons (car (cdr #{x\ 3056}#)) (car (cdr #{y\ 3057}#)))) (if (eq? (car (cdr #{y\ 3057}#)) '()) (list 'list #{x\ 3056}#) (list 'cons #{x\ 3056}# #{y\ 3057}#))) (if (eqv? #{atom-key\ 3062}# 'list) (cons 'list (cons #{x\ 3056}# (cdr #{y\ 3057}#))) (list 'cons #{x\ 3056}# #{y\ 3057}#))))))) (#{gen-append\ 2888}# (lambda (#{x\ 3071}# #{y\ 3072}#) (if (equal? #{y\ 3072}# ''()) #{x\ 3071}# (list 'append #{x\ 3071}# #{y\ 3072}#)))) (#{gen-vector\ 2890}# (lambda (#{x\ 3076}#) (if (eq? (car #{x\ 3076}#) 'list) (cons 'vector (cdr #{x\ 3076}#)) (if (eq? (car #{x\ 3076}#) 'quote) (list 'quote (list->vector (car (cdr #{x\ 3076}#)))) (list 'list->vector #{x\ 3076}#))))) (#{regen\ 2892}# (lambda (#{x\ 3086}#) (begin (let ((#{atom-key\ 3090}# (car #{x\ 3086}#))) (if (eqv? #{atom-key\ 3090}# 'ref) (#{build-lexical-reference\ 311}# 'value #f (car (cdr #{x\ 3086}#)) (car (cdr #{x\ 3086}#))) (if (eqv? #{atom-key\ 3090}# 'primitive) (#{build-primref\ 329}# #f (car (cdr #{x\ 3086}#))) (if (eqv? #{atom-key\ 3090}# 'quote) (#{build-data\ 331}# #f (car (cdr #{x\ 3086}#))) (if (eqv? #{atom-key\ 3090}# 'lambda) (if (list? (car (cdr #{x\ 3086}#))) (#{build-simple-lambda\ 323}# #f (car (cdr #{x\ 3086}#)) #f (car (cdr #{x\ 3086}#)) '() (#{regen\ 2892}# (car (cdr (cdr #{x\ 3086}#))))) (error "how did we get here" #{x\ 3086}#)) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f (car #{x\ 3086}#)) (map #{regen\ 2892}# (cdr #{x\ 3086}#)))))))))))) (begin (lambda (#{e\ 3102}# #{r\ 3103}# #{w\ 3104}# #{s\ 3105}# #{mod\ 3106}#) (begin (let ((#{e\ 3113}# (#{source-wrap\ 447}# #{e\ 3102}# #{w\ 3104}# #{s\ 3105}# #{mod\ 3106}#))) (let ((#{tmp\ 3114}# #{e\ 3113}#)) (let ((#{tmp\ 3115}# ($sc-dispatch #{tmp\ 3114}# '(_ any)))) (if #{tmp\ 3115}# (@apply (lambda (#{x\ 3117}#) (call-with-values (lambda () (#{gen-syntax\ 2878}# #{e\ 3113}# #{x\ 3117}# #{r\ 3103}# '() #{ellipsis?\ 477}# #{mod\ 3106}#)) (lambda (#{e\ 3118}# #{maps\ 3119}#) (#{regen\ 2892}# #{e\ 3118}#)))) #{tmp\ 3115}#) (let ((#{_\ 3123}# #{tmp\ 3114}#)) (syntax-violation 'syntax "bad `syntax' form" #{e\ 3113}#))))))))))) (#{global-extend\ 375}# 'core 'lambda (lambda (#{e\ 3124}# #{r\ 3125}# #{w\ 3126}# #{s\ 3127}# #{mod\ 3128}#) (let ((#{tmp\ 3134}# #{e\ 3124}#)) (let ((#{tmp\ 3135}# ($sc-dispatch #{tmp\ 3134}# '(_ any any . each-any)))) (if #{tmp\ 3135}# (@apply (lambda (#{args\ 3139}# #{e1\ 3140}# #{e2\ 3141}#) (call-with-values (lambda () (#{lambda-formals\ 479}# #{args\ 3139}#)) (lambda (#{req\ 3142}# #{opt\ 3143}# #{rest\ 3144}# #{kw\ 3145}#) (letrec* ((#{lp\ 3153}# (lambda (#{body\ 3154}# #{meta\ 3155}#) (let ((#{tmp\ 3157}# #{body\ 3154}#)) (let ((#{tmp\ 3158}# ($sc-dispatch #{tmp\ 3157}# '(any any . each-any)))) (if (if #{tmp\ 3158}# (@apply (lambda (#{docstring\ 3162}# #{e1\ 3163}# #{e2\ 3164}#) (string? (syntax->datum #{docstring\ 3162}#))) #{tmp\ 3158}#) #f) (@apply (lambda (#{docstring\ 3168}# #{e1\ 3169}# #{e2\ 3170}#) (#{lp\ 3153}# (cons #{e1\ 3169}# #{e2\ 3170}#) (append #{meta\ 3155}# (list (cons 'documentation (syntax->datum #{docstring\ 3168}#)))))) #{tmp\ 3158}#) (let ((#{tmp\ 3173}# ($sc-dispatch #{tmp\ 3157}# '(#(vector #(each (any . any))) any . each-any)))) (if #{tmp\ 3173}# (@apply (lambda (#{k\ 3178}# #{v\ 3179}# #{e1\ 3180}# #{e2\ 3181}#) (#{lp\ 3153}# (cons #{e1\ 3180}# #{e2\ 3181}#) (append #{meta\ 3155}# (syntax->datum (map cons #{k\ 3178}# #{v\ 3179}#))))) #{tmp\ 3173}#) (let ((#{_\ 3186}# #{tmp\ 3157}#)) (#{chi-simple-lambda\ 481}# #{e\ 3124}# #{r\ 3125}# #{w\ 3126}# #{s\ 3127}# #{mod\ 3128}# #{req\ 3142}# #{rest\ 3144}# #{meta\ 3155}# #{body\ 3154}#)))))))))) (begin (#{lp\ 3153}# (cons #{e1\ 3140}# #{e2\ 3141}#) '())))))) #{tmp\ 3135}#) (let ((#{_\ 3188}# #{tmp\ 3134}#)) (syntax-violation 'lambda "bad lambda" #{e\ 3124}#))))))) (#{global-extend\ 375}# 'core 'lambda* (lambda (#{e\ 3189}# #{r\ 3190}# #{w\ 3191}# #{s\ 3192}# #{mod\ 3193}#) (let ((#{tmp\ 3199}# #{e\ 3189}#)) (let ((#{tmp\ 3200}# ($sc-dispatch #{tmp\ 3199}# '(_ any any . each-any)))) (if #{tmp\ 3200}# (@apply (lambda (#{args\ 3204}# #{e1\ 3205}# #{e2\ 3206}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 3189}# #{r\ 3190}# #{w\ 3191}# #{s\ 3192}# #{mod\ 3193}# #{lambda*-formals\ 483}# (list (cons #{args\ 3204}# (cons #{e1\ 3205}# #{e2\ 3206}#))))) (lambda (#{meta\ 3208}# #{lcase\ 3209}#) (#{build-case-lambda\ 325}# #{s\ 3192}# #{meta\ 3208}# #{lcase\ 3209}#)))) #{tmp\ 3200}#) (let ((#{_\ 3213}# #{tmp\ 3199}#)) (syntax-violation 'lambda "bad lambda*" #{e\ 3189}#))))))) (#{global-extend\ 375}# 'core 'case-lambda (lambda (#{e\ 3214}# #{r\ 3215}# #{w\ 3216}# #{s\ 3217}# #{mod\ 3218}#) (let ((#{tmp\ 3224}# #{e\ 3214}#)) (let ((#{tmp\ 3225}# ($sc-dispatch #{tmp\ 3224}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3225}# (@apply (lambda (#{args\ 3232}# #{e1\ 3233}# #{e2\ 3234}# #{args*\ 3235}# #{e1*\ 3236}# #{e2*\ 3237}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 3214}# #{r\ 3215}# #{w\ 3216}# #{s\ 3217}# #{mod\ 3218}# #{lambda-formals\ 479}# (cons (cons #{args\ 3232}# (cons #{e1\ 3233}# #{e2\ 3234}#)) (map (lambda (#{tmp\ 3241}# #{tmp\ 3240}# #{tmp\ 3239}#) (cons #{tmp\ 3239}# (cons #{tmp\ 3240}# #{tmp\ 3241}#))) #{e2*\ 3237}# #{e1*\ 3236}# #{args*\ 3235}#)))) (lambda (#{meta\ 3243}# #{lcase\ 3244}#) (#{build-case-lambda\ 325}# #{s\ 3217}# #{meta\ 3243}# #{lcase\ 3244}#)))) #{tmp\ 3225}#) (let ((#{_\ 3248}# #{tmp\ 3224}#)) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 3214}#))))))) (#{global-extend\ 375}# 'core 'case-lambda* (lambda (#{e\ 3249}# #{r\ 3250}# #{w\ 3251}# #{s\ 3252}# #{mod\ 3253}#) (let ((#{tmp\ 3259}# #{e\ 3249}#)) (let ((#{tmp\ 3260}# ($sc-dispatch #{tmp\ 3259}# '(_ (any any . each-any) . #(each (any any . each-any)))))) (if #{tmp\ 3260}# (@apply (lambda (#{args\ 3267}# #{e1\ 3268}# #{e2\ 3269}# #{args*\ 3270}# #{e1*\ 3271}# #{e2*\ 3272}#) (call-with-values (lambda () (#{chi-lambda-case\ 485}# #{e\ 3249}# #{r\ 3250}# #{w\ 3251}# #{s\ 3252}# #{mod\ 3253}# #{lambda*-formals\ 483}# (cons (cons #{args\ 3267}# (cons #{e1\ 3268}# #{e2\ 3269}#)) (map (lambda (#{tmp\ 3276}# #{tmp\ 3275}# #{tmp\ 3274}#) (cons #{tmp\ 3274}# (cons #{tmp\ 3275}# #{tmp\ 3276}#))) #{e2*\ 3272}# #{e1*\ 3271}# #{args*\ 3270}#)))) (lambda (#{meta\ 3278}# #{lcase\ 3279}#) (#{build-case-lambda\ 325}# #{s\ 3252}# #{meta\ 3278}# #{lcase\ 3279}#)))) #{tmp\ 3260}#) (let ((#{_\ 3283}# #{tmp\ 3259}#)) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 3249}#))))))) (#{global-extend\ 375}# 'core 'let (letrec* ((#{chi-let\ 3285}# (lambda (#{e\ 3286}# #{r\ 3287}# #{w\ 3288}# #{s\ 3289}# #{mod\ 3290}# #{constructor\ 3291}# #{ids\ 3292}# #{vals\ 3293}# #{exps\ 3294}#) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 3292}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 3286}#) (begin (let ((#{labels\ 3306}# (#{gen-labels\ 394}# #{ids\ 3292}#)) (#{new-vars\ 3307}# (map #{gen-var\ 489}# #{ids\ 3292}#))) (begin (let ((#{nw\ 3310}# (#{make-binding-wrap\ 423}# #{ids\ 3292}# #{labels\ 3306}# #{w\ 3288}#)) (#{nr\ 3311}# (#{extend-var-env\ 369}# #{labels\ 3306}# #{new-vars\ 3307}# #{r\ 3287}#))) (#{constructor\ 3291}# #{s\ 3289}# (map syntax->datum #{ids\ 3292}#) #{new-vars\ 3307}# (map (lambda (#{x\ 3312}#) (#{chi\ 461}# #{x\ 3312}# #{r\ 3287}# #{w\ 3288}# #{mod\ 3290}#)) #{vals\ 3293}#) (#{chi-body\ 469}# #{exps\ 3294}# (#{source-wrap\ 447}# #{e\ 3286}# #{nw\ 3310}# #{s\ 3289}# #{mod\ 3290}#) #{nr\ 3311}# #{nw\ 3310}# #{mod\ 3290}#)))))))))) (begin (lambda (#{e\ 3314}# #{r\ 3315}# #{w\ 3316}# #{s\ 3317}# #{mod\ 3318}#) (let ((#{tmp\ 3324}# #{e\ 3314}#)) (let ((#{tmp\ 3325}# ($sc-dispatch #{tmp\ 3324}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3325}# (@apply (lambda (#{id\ 3330}# #{val\ 3331}# #{e1\ 3332}# #{e2\ 3333}#) (and-map #{id?\ 379}# #{id\ 3330}#)) #{tmp\ 3325}#) #f) (@apply (lambda (#{id\ 3339}# #{val\ 3340}# #{e1\ 3341}# #{e2\ 3342}#) (#{chi-let\ 3285}# #{e\ 3314}# #{r\ 3315}# #{w\ 3316}# #{s\ 3317}# #{mod\ 3318}# #{build-let\ 335}# #{id\ 3339}# #{val\ 3340}# (cons #{e1\ 3341}# #{e2\ 3342}#))) #{tmp\ 3325}#) (let ((#{tmp\ 3346}# ($sc-dispatch #{tmp\ 3324}# '(_ any #(each (any any)) any . each-any)))) (if (if #{tmp\ 3346}# (@apply (lambda (#{f\ 3352}# #{id\ 3353}# #{val\ 3354}# #{e1\ 3355}# #{e2\ 3356}#) (if (#{id?\ 379}# #{f\ 3352}#) (and-map #{id?\ 379}# #{id\ 3353}#) #f)) #{tmp\ 3346}#) #f) (@apply (lambda (#{f\ 3365}# #{id\ 3366}# #{val\ 3367}# #{e1\ 3368}# #{e2\ 3369}#) (#{chi-let\ 3285}# #{e\ 3314}# #{r\ 3315}# #{w\ 3316}# #{s\ 3317}# #{mod\ 3318}# #{build-named-let\ 337}# (cons #{f\ 3365}# #{id\ 3366}#) #{val\ 3367}# (cons #{e1\ 3368}# #{e2\ 3369}#))) #{tmp\ 3346}#) (let ((#{_\ 3374}# #{tmp\ 3324}#)) (syntax-violation 'let "bad let" (#{source-wrap\ 447}# #{e\ 3314}# #{w\ 3316}# #{s\ 3317}# #{mod\ 3318}#)))))))))))) (#{global-extend\ 375}# 'core 'letrec (lambda (#{e\ 3375}# #{r\ 3376}# #{w\ 3377}# #{s\ 3378}# #{mod\ 3379}#) (let ((#{tmp\ 3385}# #{e\ 3375}#)) (let ((#{tmp\ 3386}# ($sc-dispatch #{tmp\ 3385}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3386}# (@apply (lambda (#{id\ 3391}# #{val\ 3392}# #{e1\ 3393}# #{e2\ 3394}#) (and-map #{id?\ 379}# #{id\ 3391}#)) #{tmp\ 3386}#) #f) (@apply (lambda (#{id\ 3400}# #{val\ 3401}# #{e1\ 3402}# #{e2\ 3403}#) (begin (let ((#{ids\ 3405}# #{id\ 3400}#)) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 3405}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 3375}#) (begin (let ((#{labels\ 3409}# (#{gen-labels\ 394}# #{ids\ 3405}#)) (#{new-vars\ 3410}# (map #{gen-var\ 489}# #{ids\ 3405}#))) (begin (let ((#{w\ 3413}# (#{make-binding-wrap\ 423}# #{ids\ 3405}# #{labels\ 3409}# #{w\ 3377}#)) (#{r\ 3414}# (#{extend-var-env\ 369}# #{labels\ 3409}# #{new-vars\ 3410}# #{r\ 3376}#))) (#{build-letrec\ 339}# #{s\ 3378}# #f (map syntax->datum #{ids\ 3405}#) #{new-vars\ 3410}# (map (lambda (#{x\ 3415}#) (#{chi\ 461}# #{x\ 3415}# #{r\ 3414}# #{w\ 3413}# #{mod\ 3379}#)) #{val\ 3401}#) (#{chi-body\ 469}# (cons #{e1\ 3402}# #{e2\ 3403}#) (#{source-wrap\ 447}# #{e\ 3375}# #{w\ 3413}# #{s\ 3378}# #{mod\ 3379}#) #{r\ 3414}# #{w\ 3413}# #{mod\ 3379}#)))))))))) #{tmp\ 3386}#) (let ((#{_\ 3420}# #{tmp\ 3385}#)) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 447}# #{e\ 3375}# #{w\ 3377}# #{s\ 3378}# #{mod\ 3379}#)))))))) (#{global-extend\ 375}# 'core 'letrec* (lambda (#{e\ 3421}# #{r\ 3422}# #{w\ 3423}# #{s\ 3424}# #{mod\ 3425}#) (let ((#{tmp\ 3431}# #{e\ 3421}#)) (let ((#{tmp\ 3432}# ($sc-dispatch #{tmp\ 3431}# '(_ #(each (any any)) any . each-any)))) (if (if #{tmp\ 3432}# (@apply (lambda (#{id\ 3437}# #{val\ 3438}# #{e1\ 3439}# #{e2\ 3440}#) (and-map #{id?\ 379}# #{id\ 3437}#)) #{tmp\ 3432}#) #f) (@apply (lambda (#{id\ 3446}# #{val\ 3447}# #{e1\ 3448}# #{e2\ 3449}#) (begin (let ((#{ids\ 3451}# #{id\ 3446}#)) (if (not (#{valid-bound-ids?\ 439}# #{ids\ 3451}#)) (syntax-violation 'letrec* "duplicate bound variable" #{e\ 3421}#) (begin (let ((#{labels\ 3455}# (#{gen-labels\ 394}# #{ids\ 3451}#)) (#{new-vars\ 3456}# (map #{gen-var\ 489}# #{ids\ 3451}#))) (begin (let ((#{w\ 3459}# (#{make-binding-wrap\ 423}# #{ids\ 3451}# #{labels\ 3455}# #{w\ 3423}#)) (#{r\ 3460}# (#{extend-var-env\ 369}# #{labels\ 3455}# #{new-vars\ 3456}# #{r\ 3422}#))) (#{build-letrec\ 339}# #{s\ 3424}# #t (map syntax->datum #{ids\ 3451}#) #{new-vars\ 3456}# (map (lambda (#{x\ 3461}#) (#{chi\ 461}# #{x\ 3461}# #{r\ 3460}# #{w\ 3459}# #{mod\ 3425}#)) #{val\ 3447}#) (#{chi-body\ 469}# (cons #{e1\ 3448}# #{e2\ 3449}#) (#{source-wrap\ 447}# #{e\ 3421}# #{w\ 3459}# #{s\ 3424}# #{mod\ 3425}#) #{r\ 3460}# #{w\ 3459}# #{mod\ 3425}#)))))))))) #{tmp\ 3432}#) (let ((#{_\ 3466}# #{tmp\ 3431}#)) (syntax-violation 'letrec* "bad letrec*" (#{source-wrap\ 447}# #{e\ 3421}# #{w\ 3423}# #{s\ 3424}# #{mod\ 3425}#)))))))) (#{global-extend\ 375}# 'core 'set! (lambda (#{e\ 3467}# #{r\ 3468}# #{w\ 3469}# #{s\ 3470}# #{mod\ 3471}#) (let ((#{tmp\ 3477}# #{e\ 3467}#)) (let ((#{tmp\ 3478}# ($sc-dispatch #{tmp\ 3477}# '(_ any any)))) (if (if #{tmp\ 3478}# (@apply (lambda (#{id\ 3481}# #{val\ 3482}#) (#{id?\ 379}# #{id\ 3481}#)) #{tmp\ 3478}#) #f) (@apply (lambda (#{id\ 3485}# #{val\ 3486}#) (begin (let ((#{n\ 3489}# (#{id-var-name\ 433}# #{id\ 3485}# #{w\ 3469}#)) (#{id-mod\ 3490}# (if (#{syntax-object?\ 345}# #{id\ 3485}#) (#{syntax-object-module\ 351}# #{id\ 3485}#) #{mod\ 3471}#))) (begin (let ((#{b\ 3492}# (#{lookup\ 373}# #{n\ 3489}# #{r\ 3468}# #{id-mod\ 3490}#))) (begin (let ((#{atom-key\ 3495}# (car #{b\ 3492}#))) (if (eqv? #{atom-key\ 3495}# 'lexical) (#{build-lexical-assignment\ 313}# #{s\ 3470}# (syntax->datum #{id\ 3485}#) (cdr #{b\ 3492}#) (#{chi\ 461}# #{val\ 3486}# #{r\ 3468}# #{w\ 3469}# #{mod\ 3471}#)) (if (eqv? #{atom-key\ 3495}# 'global) (#{build-global-assignment\ 319}# #{s\ 3470}# #{n\ 3489}# (#{chi\ 461}# #{val\ 3486}# #{r\ 3468}# #{w\ 3469}# #{mod\ 3471}#) #{id-mod\ 3490}#) (if (eqv? #{atom-key\ 3495}# 'macro) (begin (let ((#{p\ 3502}# (cdr #{b\ 3492}#))) (if (procedure-property #{p\ 3502}# 'variable-transformer) (#{chi\ 461}# (#{chi-macro\ 467}# #{p\ 3502}# #{e\ 3467}# #{r\ 3468}# #{w\ 3469}# #{s\ 3470}# #f #{mod\ 3471}#) #{r\ 3468}# '(()) #{mod\ 3471}#) (syntax-violation 'set! "not a variable transformer" (#{wrap\ 445}# #{e\ 3467}# #{w\ 3469}# #{mod\ 3471}#) (#{wrap\ 445}# #{id\ 3485}# #{w\ 3469}# #{id-mod\ 3490}#))))) (if (eqv? #{atom-key\ 3495}# 'displaced-lexical) (syntax-violation 'set! "identifier out of context" (#{wrap\ 445}# #{id\ 3485}# #{w\ 3469}# #{mod\ 3471}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 447}# #{e\ 3467}# #{w\ 3469}# #{s\ 3470}# #{mod\ 3471}#))))))))))))) #{tmp\ 3478}#) (let ((#{tmp\ 3507}# ($sc-dispatch #{tmp\ 3477}# '(_ (any . each-any) any)))) (if #{tmp\ 3507}# (@apply (lambda (#{head\ 3511}# #{tail\ 3512}# #{val\ 3513}#) (call-with-values (lambda () (#{syntax-type\ 457}# #{head\ 3511}# #{r\ 3468}# '(()) #f #f #{mod\ 3471}# #t)) (lambda (#{type\ 3516}# #{value\ 3517}# #{ee\ 3518}# #{ww\ 3519}# #{ss\ 3520}# #{modmod\ 3521}#) (if (eqv? #{type\ 3516}# 'module-ref) (begin (let ((#{val\ 3530}# (#{chi\ 461}# #{val\ 3513}# #{r\ 3468}# #{w\ 3469}# #{mod\ 3471}#))) (call-with-values (lambda () (#{value\ 3517}# (cons #{head\ 3511}# #{tail\ 3512}#) #{r\ 3468}# #{w\ 3469}#)) (lambda (#{e\ 3532}# #{r\ 3533}# #{w\ 3534}# #{s*\ 3535}# #{mod\ 3536}#) (let ((#{tmp\ 3542}# #{e\ 3532}#)) (let ((#{tmp\ 3543}# (list #{tmp\ 3542}#))) (if (if #{tmp\ 3543}# (@apply (lambda (#{e\ 3545}#) (#{id?\ 379}# #{e\ 3545}#)) #{tmp\ 3543}#) #f) (@apply (lambda (#{e\ 3547}#) (#{build-global-assignment\ 319}# #{s\ 3470}# (syntax->datum #{e\ 3547}#) #{val\ 3530}# #{mod\ 3536}#)) #{tmp\ 3543}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3542}#)))))))) (#{build-application\ 305}# #{s\ 3470}# (#{chi\ 461}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3522" "i3523" "i3524" "i3525" "i3526" "i3527")) #(ribcage #(head tail val) #((top) (top) (top)) #("i3508" "i3509" "i3510")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3472" "i3473" "i3474" "i3475" "i3476")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void maybe-name-value! decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("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\ 3511}#) #{r\ 3468}# #{w\ 3469}# #{mod\ 3471}#) (map (lambda (#{e\ 3549}#) (#{chi\ 461}# #{e\ 3549}# #{r\ 3468}# #{w\ 3469}# #{mod\ 3471}#)) (append #{tail\ 3512}# (list #{val\ 3513}#)))))))) #{tmp\ 3507}#) (let ((#{_\ 3553}# #{tmp\ 3477}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 447}# #{e\ 3467}# #{w\ 3469}# #{s\ 3470}# #{mod\ 3471}#)))))))))) (#{global-extend\ 375}# 'module-ref '@ (lambda (#{e\ 3554}# #{r\ 3555}# #{w\ 3556}#) (let ((#{tmp\ 3560}# #{e\ 3554}#)) (let ((#{tmp\ 3561}# ($sc-dispatch #{tmp\ 3560}# '(_ each-any any)))) (if (if #{tmp\ 3561}# (@apply (lambda (#{mod\ 3564}# #{id\ 3565}#) (if (and-map #{id?\ 379}# #{mod\ 3564}#) (#{id?\ 379}# #{id\ 3565}#) #f)) #{tmp\ 3561}#) #f) (@apply (lambda (#{mod\ 3571}# #{id\ 3572}#) (values (syntax->datum #{id\ 3572}#) #{r\ 3555}# #{w\ 3556}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(mod id) #((top) (top)) #("i3569" "i3570")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3557" "i3558" "i3559")) #(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\ 3571}#)))) #{tmp\ 3561}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3560}#)))))) (#{global-extend\ 375}# 'module-ref '@@ (lambda (#{e\ 3574}# #{r\ 3575}# #{w\ 3576}#) (letrec* ((#{remodulate\ 3581}# (lambda (#{x\ 3582}# #{mod\ 3583}#) (if (pair? #{x\ 3582}#) (cons (#{remodulate\ 3581}# (car #{x\ 3582}#) #{mod\ 3583}#) (#{remodulate\ 3581}# (cdr #{x\ 3582}#) #{mod\ 3583}#)) (if (#{syntax-object?\ 345}# #{x\ 3582}#) (#{make-syntax-object\ 343}# (#{remodulate\ 3581}# (#{syntax-object-expression\ 347}# #{x\ 3582}#) #{mod\ 3583}#) (#{syntax-object-wrap\ 349}# #{x\ 3582}#) #{mod\ 3583}#) (if (vector? #{x\ 3582}#) (begin (let ((#{n\ 3594}# (vector-length #{x\ 3582}#))) (begin (let ((#{v\ 3596}# (make-vector #{n\ 3594}#))) (letrec* ((#{loop\ 3599}# (lambda (#{i\ 3600}#) (if (#{fx=\ 286}# #{i\ 3600}# #{n\ 3594}#) (begin (if #f #f) #{v\ 3596}#) (begin (vector-set! #{v\ 3596}# #{i\ 3600}# (#{remodulate\ 3581}# (vector-ref #{x\ 3582}# #{i\ 3600}#) #{mod\ 3583}#)) (#{loop\ 3599}# (#{fx+\ 282}# #{i\ 3600}# 1))))))) (begin (#{loop\ 3599}# 0))))))) #{x\ 3582}#)))))) (begin (let ((#{tmp\ 3604}# #{e\ 3574}#)) (let ((#{tmp\ 3605}# ($sc-dispatch #{tmp\ 3604}# '(_ each-any any)))) (if (if #{tmp\ 3605}# (@apply (lambda (#{mod\ 3608}# #{exp\ 3609}#) (and-map #{id?\ 379}# #{mod\ 3608}#)) #{tmp\ 3605}#) #f) (@apply (lambda (#{mod\ 3613}# #{exp\ 3614}#) (begin (let ((#{mod\ 3616}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(mod exp) #((top) (top)) #("i3611" "i3612")) #(ribcage (remodulate) ((top)) ("i3580")) #(ribcage #(e r w) #((top) (top) (top)) #("i3577" "i3578" "i3579")) #(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\ 3613}#)))) (values (#{remodulate\ 3581}# #{exp\ 3614}# #{mod\ 3616}#) #{r\ 3575}# #{w\ 3576}# (#{source-annotation\ 360}# #{exp\ 3614}#) #{mod\ 3616}#)))) #{tmp\ 3605}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3604}#)))))))) (#{global-extend\ 375}# 'core 'if (lambda (#{e\ 3618}# #{r\ 3619}# #{w\ 3620}# #{s\ 3621}# #{mod\ 3622}#) (let ((#{tmp\ 3628}# #{e\ 3618}#)) (let ((#{tmp\ 3629}# ($sc-dispatch #{tmp\ 3628}# '(_ any any)))) (if #{tmp\ 3629}# (@apply (lambda (#{test\ 3632}# #{then\ 3633}#) (#{build-conditional\ 307}# #{s\ 3621}# (#{chi\ 461}# #{test\ 3632}# #{r\ 3619}# #{w\ 3620}# #{mod\ 3622}#) (#{chi\ 461}# #{then\ 3633}# #{r\ 3619}# #{w\ 3620}# #{mod\ 3622}#) (#{build-void\ 303}# #f))) #{tmp\ 3629}#) (let ((#{tmp\ 3635}# ($sc-dispatch #{tmp\ 3628}# '(_ any any any)))) (if #{tmp\ 3635}# (@apply (lambda (#{test\ 3639}# #{then\ 3640}# #{else\ 3641}#) (#{build-conditional\ 307}# #{s\ 3621}# (#{chi\ 461}# #{test\ 3639}# #{r\ 3619}# #{w\ 3620}# #{mod\ 3622}#) (#{chi\ 461}# #{then\ 3640}# #{r\ 3619}# #{w\ 3620}# #{mod\ 3622}#) (#{chi\ 461}# #{else\ 3641}# #{r\ 3619}# #{w\ 3620}# #{mod\ 3622}#))) #{tmp\ 3635}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3628}#)))))))) (#{global-extend\ 375}# 'core 'with-fluids (lambda (#{e\ 3642}# #{r\ 3643}# #{w\ 3644}# #{s\ 3645}# #{mod\ 3646}#) (let ((#{tmp\ 3652}# #{e\ 3642}#)) (let ((#{tmp\ 3653}# ($sc-dispatch #{tmp\ 3652}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 3653}# (@apply (lambda (#{fluid\ 3658}# #{val\ 3659}# #{b\ 3660}# #{b*\ 3661}#) (#{build-dynlet\ 309}# #{s\ 3645}# (map (lambda (#{x\ 3662}#) (#{chi\ 461}# #{x\ 3662}# #{r\ 3643}# #{w\ 3644}# #{mod\ 3646}#)) #{fluid\ 3658}#) (map (lambda (#{x\ 3665}#) (#{chi\ 461}# #{x\ 3665}# #{r\ 3643}# #{w\ 3644}# #{mod\ 3646}#)) #{val\ 3659}#) (#{chi-body\ 469}# (cons #{b\ 3660}# #{b*\ 3661}#) (#{source-wrap\ 447}# #{e\ 3642}# #{w\ 3644}# #{s\ 3645}# #{mod\ 3646}#) #{r\ 3643}# #{w\ 3644}# #{mod\ 3646}#))) #{tmp\ 3653}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3652}#)))))) (#{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\ 3670}# (lambda (#{pattern\ 3677}# #{keys\ 3678}#) (letrec* ((#{cvt*\ 3682}# (lambda (#{p*\ 3685}# #{n\ 3686}# #{ids\ 3687}#) (if (null? #{p*\ 3685}#) (values '() #{ids\ 3687}#) (call-with-values (lambda () (#{cvt*\ 3682}# (cdr #{p*\ 3685}#) #{n\ 3686}# #{ids\ 3687}#)) (lambda (#{y\ 3691}# #{ids\ 3692}#) (call-with-values (lambda () (#{cvt\ 3684}# (car #{p*\ 3685}#) #{n\ 3686}# #{ids\ 3692}#)) (lambda (#{x\ 3695}# #{ids\ 3696}#) (values (cons #{x\ 3695}# #{y\ 3691}#) #{ids\ 3696}#)))))))) (#{cvt\ 3684}# (lambda (#{p\ 3699}# #{n\ 3700}# #{ids\ 3701}#) (if (#{id?\ 379}# #{p\ 3699}#) (if (#{bound-id-member?\ 443}# #{p\ 3699}# #{keys\ 3678}#) (values (vector 'free-id #{p\ 3699}#) #{ids\ 3701}#) (if (#{free-id=?\ 435}# #{p\ 3699}# '#(syntax-object _ ((top) #(ribcage () () ()) #(ribcage #(p n ids) #((top) (top) (top)) #("i3702" "i3703" "i3704")) #(ribcage (cvt cvt*) ((top) (top)) ("i3683" "i3681")) #(ribcage #(pattern keys) #((top) (top)) #("i3679" "i3680")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3675" "i3673" "i3671" "i3669")) #(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\ 3701}#) (values 'any (cons (cons #{p\ 3699}# #{n\ 3700}#) #{ids\ 3701}#)))) (let ((#{tmp\ 3710}# #{p\ 3699}#)) (let ((#{tmp\ 3711}# ($sc-dispatch #{tmp\ 3710}# '(any any)))) (if (if #{tmp\ 3711}# (@apply (lambda (#{x\ 3714}# #{dots\ 3715}#) (#{ellipsis?\ 477}# #{dots\ 3715}#)) #{tmp\ 3711}#) #f) (@apply (lambda (#{x\ 3718}# #{dots\ 3719}#) (call-with-values (lambda () (#{cvt\ 3684}# #{x\ 3718}# (#{fx+\ 282}# #{n\ 3700}# 1) #{ids\ 3701}#)) (lambda (#{p\ 3720}# #{ids\ 3721}#) (values (if (eq? #{p\ 3720}# 'any) 'each-any (vector 'each #{p\ 3720}#)) #{ids\ 3721}#)))) #{tmp\ 3711}#) (let ((#{tmp\ 3724}# ($sc-dispatch #{tmp\ 3710}# '(any any . each-any)))) (if (if #{tmp\ 3724}# (@apply (lambda (#{x\ 3728}# #{dots\ 3729}# #{ys\ 3730}#) (#{ellipsis?\ 477}# #{dots\ 3729}#)) #{tmp\ 3724}#) #f) (@apply (lambda (#{x\ 3734}# #{dots\ 3735}# #{ys\ 3736}#) (call-with-values (lambda () (#{cvt*\ 3682}# #{ys\ 3736}# #{n\ 3700}# #{ids\ 3701}#)) (lambda (#{ys\ 3738}# #{ids\ 3739}#) (call-with-values (lambda () (#{cvt\ 3684}# #{x\ 3734}# (1+ #{n\ 3700}#) #{ids\ 3739}#)) (lambda (#{x\ 3742}# #{ids\ 3743}#) (values (list->vector (cons 'each+ (cons #{x\ 3742}# (cons (reverse #{ys\ 3738}#) '(()))))) #{ids\ 3743}#)))))) #{tmp\ 3724}#) (let ((#{tmp\ 3747}# ($sc-dispatch #{tmp\ 3710}# '(any . any)))) (if #{tmp\ 3747}# (@apply (lambda (#{x\ 3750}# #{y\ 3751}#) (call-with-values (lambda () (#{cvt\ 3684}# #{y\ 3751}# #{n\ 3700}# #{ids\ 3701}#)) (lambda (#{y\ 3752}# #{ids\ 3753}#) (call-with-values (lambda () (#{cvt\ 3684}# #{x\ 3750}# #{n\ 3700}# #{ids\ 3753}#)) (lambda (#{x\ 3756}# #{ids\ 3757}#) (values (cons #{x\ 3756}# #{y\ 3752}#) #{ids\ 3757}#)))))) #{tmp\ 3747}#) (let ((#{tmp\ 3760}# ($sc-dispatch #{tmp\ 3710}# '()))) (if #{tmp\ 3760}# (@apply (lambda () (values '() #{ids\ 3701}#)) #{tmp\ 3760}#) (let ((#{tmp\ 3761}# ($sc-dispatch #{tmp\ 3710}# '#(vector each-any)))) (if #{tmp\ 3761}# (@apply (lambda (#{x\ 3763}#) (call-with-values (lambda () (#{cvt\ 3684}# #{x\ 3763}# #{n\ 3700}# #{ids\ 3701}#)) (lambda (#{p\ 3765}# #{ids\ 3766}#) (values (vector 'vector #{p\ 3765}#) #{ids\ 3766}#)))) #{tmp\ 3761}#) (let ((#{x\ 3770}# #{tmp\ 3710}#)) (values (vector 'atom (#{strip\ 487}# #{p\ 3699}# '(()))) #{ids\ 3701}#))))))))))))))))) (begin (#{cvt\ 3684}# #{pattern\ 3677}# 0 '()))))) (#{build-dispatch-call\ 3672}# (lambda (#{pvars\ 3772}# #{exp\ 3773}# #{y\ 3774}# #{r\ 3775}# #{mod\ 3776}#) (begin (map cdr #{pvars\ 3772}#) (let ((#{ids\ 3784}# (map car #{pvars\ 3772}#))) (begin (let ((#{labels\ 3788}# (#{gen-labels\ 394}# #{ids\ 3784}#)) (#{new-vars\ 3789}# (map #{gen-var\ 489}# #{ids\ 3784}#))) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f 'apply) (list (#{build-simple-lambda\ 323}# #f (map syntax->datum #{ids\ 3784}#) #f #{new-vars\ 3789}# '() (#{chi\ 461}# #{exp\ 3773}# (#{extend-env\ 367}# #{labels\ 3788}# (map (lambda (#{var\ 3793}# #{level\ 3794}#) (cons 'syntax (cons #{var\ 3793}# #{level\ 3794}#))) #{new-vars\ 3789}# (map cdr #{pvars\ 3772}#)) #{r\ 3775}#) (#{make-binding-wrap\ 423}# #{ids\ 3784}# #{labels\ 3788}# '(())) #{mod\ 3776}#)) #{y\ 3774}#)))))))) (#{gen-clause\ 3674}# (lambda (#{x\ 3800}# #{keys\ 3801}# #{clauses\ 3802}# #{r\ 3803}# #{pat\ 3804}# #{fender\ 3805}# #{exp\ 3806}# #{mod\ 3807}#) (call-with-values (lambda () (#{convert-pattern\ 3670}# #{pat\ 3804}# #{keys\ 3801}#)) (lambda (#{p\ 3816}# #{pvars\ 3817}#) (if (not (#{distinct-bound-ids?\ 441}# (map car #{pvars\ 3817}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 3804}#) (if (not (and-map (lambda (#{x\ 3824}#) (not (#{ellipsis?\ 477}# (car #{x\ 3824}#)))) #{pvars\ 3817}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 3804}#) (begin (let ((#{y\ 3828}# (#{gen-var\ 489}# 'tmp))) (#{build-application\ 305}# #f (#{build-simple-lambda\ 323}# #f (list 'tmp) #f (list #{y\ 3828}#) '() (begin (let ((#{y\ 3832}# (#{build-lexical-reference\ 311}# 'value #f 'tmp #{y\ 3828}#))) (#{build-conditional\ 307}# #f (let ((#{tmp\ 3835}# #{fender\ 3805}#)) (let ((#{tmp\ 3836}# ($sc-dispatch #{tmp\ 3835}# '#(atom #t)))) (if #{tmp\ 3836}# (@apply (lambda () #{y\ 3832}#) #{tmp\ 3836}#) (let ((#{_\ 3838}# #{tmp\ 3835}#)) (#{build-conditional\ 307}# #f #{y\ 3832}# (#{build-dispatch-call\ 3672}# #{pvars\ 3817}# #{fender\ 3805}# #{y\ 3832}# #{r\ 3803}# #{mod\ 3807}#) (#{build-data\ 331}# #f #f)))))) (#{build-dispatch-call\ 3672}# #{pvars\ 3817}# #{exp\ 3806}# #{y\ 3832}# #{r\ 3803}# #{mod\ 3807}#) (#{gen-syntax-case\ 3676}# #{x\ 3800}# #{keys\ 3801}# #{clauses\ 3802}# #{r\ 3803}# #{mod\ 3807}#))))) (list (if (eq? #{p\ 3816}# 'any) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f 'list) (list #{x\ 3800}#)) (#{build-application\ 305}# #f (#{build-primref\ 329}# #f '$sc-dispatch) (list #{x\ 3800}# (#{build-data\ 331}# #f #{p\ 3816}#)))))))))))))) (#{gen-syntax-case\ 3676}# (lambda (#{x\ 3846}# #{keys\ 3847}# #{clauses\ 3848}# #{r\ 3849}# #{mod\ 3850}#) (if (null? #{clauses\ 3848}#) (#{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\ 3846}#)) (let ((#{tmp\ 3860}# (car #{clauses\ 3848}#))) (let ((#{tmp\ 3861}# ($sc-dispatch #{tmp\ 3860}# '(any any)))) (if #{tmp\ 3861}# (@apply (lambda (#{pat\ 3864}# #{exp\ 3865}#) (if (if (#{id?\ 379}# #{pat\ 3864}#) (and-map (lambda (#{x\ 3868}#) (not (#{free-id=?\ 435}# #{pat\ 3864}# #{x\ 3868}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3862" "i3863")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3851" "i3852" "i3853" "i3854" "i3855")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3675" "i3673" "i3671" "i3669")) #(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\ 3847}#)) #f) (if (#{free-id=?\ 435}# '#(syntax-object pad ((top) #(ribcage #(pat exp) #((top) (top)) #("i3862" "i3863")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3851" "i3852" "i3853" "i3854" "i3855")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3675" "i3673" "i3671" "i3669")) #(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)) #("i3862" "i3863")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3851" "i3852" "i3853" "i3854" "i3855")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3675" "i3673" "i3671" "i3669")) #(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\ 3865}# #{r\ 3849}# '(()) #{mod\ 3850}#) (begin (let ((#{labels\ 3873}# (list (#{gen-label\ 392}#))) (#{var\ 3874}# (#{gen-var\ 489}# #{pat\ 3864}#))) (#{build-application\ 305}# #f (#{build-simple-lambda\ 323}# #f (list (syntax->datum #{pat\ 3864}#)) #f (list #{var\ 3874}#) '() (#{chi\ 461}# #{exp\ 3865}# (#{extend-env\ 367}# #{labels\ 3873}# (list (cons 'syntax (cons #{var\ 3874}# 0))) #{r\ 3849}#) (#{make-binding-wrap\ 423}# (list #{pat\ 3864}#) #{labels\ 3873}# '(())) #{mod\ 3850}#)) (list #{x\ 3846}#))))) (#{gen-clause\ 3674}# #{x\ 3846}# #{keys\ 3847}# (cdr #{clauses\ 3848}#) #{r\ 3849}# #{pat\ 3864}# #t #{exp\ 3865}# #{mod\ 3850}#))) #{tmp\ 3861}#) (let ((#{tmp\ 3880}# ($sc-dispatch #{tmp\ 3860}# '(any any any)))) (if #{tmp\ 3880}# (@apply (lambda (#{pat\ 3884}# #{fender\ 3885}# #{exp\ 3886}#) (#{gen-clause\ 3674}# #{x\ 3846}# #{keys\ 3847}# (cdr #{clauses\ 3848}#) #{r\ 3849}# #{pat\ 3884}# #{fender\ 3885}# #{exp\ 3886}# #{mod\ 3850}#)) #{tmp\ 3880}#) (let ((#{_\ 3888}# #{tmp\ 3860}#)) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 3848}#)))))))))))) (begin (lambda (#{e\ 3889}# #{r\ 3890}# #{w\ 3891}# #{s\ 3892}# #{mod\ 3893}#) (begin (let ((#{e\ 3900}# (#{source-wrap\ 447}# #{e\ 3889}# #{w\ 3891}# #{s\ 3892}# #{mod\ 3893}#))) (let ((#{tmp\ 3901}# #{e\ 3900}#)) (let ((#{tmp\ 3902}# ($sc-dispatch #{tmp\ 3901}# '(_ any each-any . each-any)))) (if #{tmp\ 3902}# (@apply (lambda (#{val\ 3906}# #{key\ 3907}# #{m\ 3908}#) (if (and-map (lambda (#{x\ 3909}#) (if (#{id?\ 379}# #{x\ 3909}#) (not (#{ellipsis?\ 477}# #{x\ 3909}#)) #f)) #{key\ 3907}#) (begin (let ((#{x\ 3915}# (#{gen-var\ 489}# 'tmp))) (#{build-application\ 305}# #{s\ 3892}# (#{build-simple-lambda\ 323}# #f (list 'tmp) #f (list #{x\ 3915}#) '() (#{gen-syntax-case\ 3676}# (#{build-lexical-reference\ 311}# 'value #f 'tmp #{x\ 3915}#) #{key\ 3907}# #{m\ 3908}# #{r\ 3890}# #{mod\ 3893}#)) (list (#{chi\ 461}# #{val\ 3906}# #{r\ 3890}# '(()) #{mod\ 3893}#))))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 3900}#))) #{tmp\ 3902}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3901}#)))))))))) (set! macroexpand (lambda* (#{x\ 3921}# #:optional (#{m\ 3923}# 'e) (#{esew\ 3925}# '(eval))) (#{chi-top\ 459}# #{x\ 3921}# '() '((top)) #{m\ 3923}# #{esew\ 3925}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x\ 3929}#) (#{nonsymbol-id?\ 377}# #{x\ 3929}#))) (set! datum->syntax (lambda (#{id\ 3931}# #{datum\ 3932}#) (#{make-syntax-object\ 343}# #{datum\ 3932}# (#{syntax-object-wrap\ 349}# #{id\ 3931}#) (#{syntax-object-module\ 351}# #{id\ 3931}#)))) (set! syntax->datum (lambda (#{x\ 3935}#) (#{strip\ 487}# #{x\ 3935}# '(())))) (set! syntax-source (lambda (#{x\ 3938}#) (#{source-annotation\ 360}# #{x\ 3938}#))) (set! generate-temporaries (lambda (#{ls\ 3940}#) (begin (begin (let ((#{x\ 3944}# #{ls\ 3940}#)) (if (not (list? #{x\ 3944}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 3944}#)))) (map (lambda (#{x\ 3945}#) (#{wrap\ 445}# (gensym) '((top)) #f)) #{ls\ 3940}#)))) (set! free-identifier=? (lambda (#{x\ 3949}# #{y\ 3950}#) (begin (begin (let ((#{x\ 3955}# #{x\ 3949}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3955}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3955}#)))) (begin (let ((#{x\ 3958}# #{y\ 3950}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3958}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3958}#)))) (#{free-id=?\ 435}# #{x\ 3949}# #{y\ 3950}#)))) (set! bound-identifier=? (lambda (#{x\ 3959}# #{y\ 3960}#) (begin (begin (let ((#{x\ 3965}# #{x\ 3959}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3965}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3965}#)))) (begin (let ((#{x\ 3968}# #{y\ 3960}#)) (if (not (#{nonsymbol-id?\ 377}# #{x\ 3968}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3968}#)))) (#{bound-id=?\ 437}# #{x\ 3959}# #{y\ 3960}#)))) (set! syntax-violation (lambda* (#{who\ 3969}# #{message\ 3970}# #{form\ 3971}# #:optional (#{subform\ 3975}# #f)) (begin (begin (let ((#{x\ 3979}# #{who\ 3969}#)) (if (not (let ((#{x\ 3980}# #{x\ 3979}#)) (begin (let ((#{t\ 3984}# (not #{x\ 3980}#))) (if #{t\ 3984}# #{t\ 3984}# (begin (let ((#{t\ 3987}# (string? #{x\ 3980}#))) (if #{t\ 3987}# #{t\ 3987}# (symbol? #{x\ 3980}#))))))))) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3979}#)))) (begin (let ((#{x\ 3991}# #{message\ 3970}#)) (if (not (string? #{x\ 3991}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3991}#)))) (throw 'syntax-error #{who\ 3969}# #{message\ 3970}# (#{source-annotation\ 360}# (begin (let ((#{t\ 3994}# #{form\ 3971}#)) (if #{t\ 3994}# #{t\ 3994}# #{subform\ 3975}#)))) (#{strip\ 487}# #{form\ 3971}# '(())) (if #{subform\ 3975}# (#{strip\ 487}# #{subform\ 3975}# '(())) #f))))) (letrec* ((#{match-each\ 4001}# (lambda (#{e\ 4014}# #{p\ 4015}# #{w\ 4016}# #{mod\ 4017}#) (if (pair? #{e\ 4014}#) (begin (let ((#{first\ 4025}# (#{match\ 4013}# (car #{e\ 4014}#) #{p\ 4015}# #{w\ 4016}# '() #{mod\ 4017}#))) (if #{first\ 4025}# (begin (let ((#{rest\ 4029}# (#{match-each\ 4001}# (cdr #{e\ 4014}#) #{p\ 4015}# #{w\ 4016}# #{mod\ 4017}#))) (if #{rest\ 4029}# (cons #{first\ 4025}# #{rest\ 4029}#) #f))) #f))) (if (null? #{e\ 4014}#) '() (if (#{syntax-object?\ 345}# #{e\ 4014}#) (#{match-each\ 4001}# (#{syntax-object-expression\ 347}# #{e\ 4014}#) #{p\ 4015}# (#{join-wraps\ 427}# #{w\ 4016}# (#{syntax-object-wrap\ 349}# #{e\ 4014}#)) (#{syntax-object-module\ 351}# #{e\ 4014}#)) #f))))) (#{match-each+\ 4003}# (lambda (#{e\ 4037}# #{x-pat\ 4038}# #{y-pat\ 4039}# #{z-pat\ 4040}# #{w\ 4041}# #{r\ 4042}# #{mod\ 4043}#) (letrec* ((#{f\ 4054}# (lambda (#{e\ 4055}# #{w\ 4056}#) (if (pair? #{e\ 4055}#) (call-with-values (lambda () (#{f\ 4054}# (cdr #{e\ 4055}#) #{w\ 4056}#)) (lambda (#{xr*\ 4059}# #{y-pat\ 4060}# #{r\ 4061}#) (if #{r\ 4061}# (if (null? #{y-pat\ 4060}#) (begin (let ((#{xr\ 4066}# (#{match\ 4013}# (car #{e\ 4055}#) #{x-pat\ 4038}# #{w\ 4056}# '() #{mod\ 4043}#))) (if #{xr\ 4066}# (values (cons #{xr\ 4066}# #{xr*\ 4059}#) #{y-pat\ 4060}# #{r\ 4061}#) (values #f #f #f)))) (values '() (cdr #{y-pat\ 4060}#) (#{match\ 4013}# (car #{e\ 4055}#) (car #{y-pat\ 4060}#) #{w\ 4056}# #{r\ 4061}# #{mod\ 4043}#))) (values #f #f #f)))) (if (#{syntax-object?\ 345}# #{e\ 4055}#) (#{f\ 4054}# (#{syntax-object-expression\ 347}# #{e\ 4055}#) (#{join-wraps\ 427}# #{w\ 4056}# #{e\ 4055}#)) (values '() #{y-pat\ 4039}# (#{match\ 4013}# #{e\ 4055}# #{z-pat\ 4040}# #{w\ 4056}# #{r\ 4042}# #{mod\ 4043}#))))))) (begin (#{f\ 4054}# #{e\ 4037}# #{w\ 4041}#))))) (#{match-each-any\ 4005}# (lambda (#{e\ 4070}# #{w\ 4071}# #{mod\ 4072}#) (if (pair? #{e\ 4070}#) (begin (let ((#{l\ 4079}# (#{match-each-any\ 4005}# (cdr #{e\ 4070}#) #{w\ 4071}# #{mod\ 4072}#))) (if #{l\ 4079}# (cons (#{wrap\ 445}# (car #{e\ 4070}#) #{w\ 4071}# #{mod\ 4072}#) #{l\ 4079}#) #f))) (if (null? #{e\ 4070}#) '() (if (#{syntax-object?\ 345}# #{e\ 4070}#) (#{match-each-any\ 4005}# (#{syntax-object-expression\ 347}# #{e\ 4070}#) (#{join-wraps\ 427}# #{w\ 4071}# (#{syntax-object-wrap\ 349}# #{e\ 4070}#)) #{mod\ 4072}#) #f))))) (#{match-empty\ 4007}# (lambda (#{p\ 4087}# #{r\ 4088}#) (if (null? #{p\ 4087}#) #{r\ 4088}# (if (eq? #{p\ 4087}# '_) #{r\ 4088}# (if (eq? #{p\ 4087}# 'any) (cons '() #{r\ 4088}#) (if (pair? #{p\ 4087}#) (#{match-empty\ 4007}# (car #{p\ 4087}#) (#{match-empty\ 4007}# (cdr #{p\ 4087}#) #{r\ 4088}#)) (if (eq? #{p\ 4087}# 'each-any) (cons '() #{r\ 4088}#) (begin (let ((#{atom-key\ 4104}# (vector-ref #{p\ 4087}# 0))) (if (eqv? #{atom-key\ 4104}# 'each) (#{match-empty\ 4007}# (vector-ref #{p\ 4087}# 1) #{r\ 4088}#) (if (eqv? #{atom-key\ 4104}# 'each+) (#{match-empty\ 4007}# (vector-ref #{p\ 4087}# 1) (#{match-empty\ 4007}# (reverse (vector-ref #{p\ 4087}# 2)) (#{match-empty\ 4007}# (vector-ref #{p\ 4087}# 3) #{r\ 4088}#))) (if (if (eqv? #{atom-key\ 4104}# 'free-id) #t (eqv? #{atom-key\ 4104}# 'atom)) #{r\ 4088}# (if (eqv? #{atom-key\ 4104}# 'vector) (#{match-empty\ 4007}# (vector-ref #{p\ 4087}# 1) #{r\ 4088}#)))))))))))))) (#{combine\ 4009}# (lambda (#{r*\ 4109}# #{r\ 4110}#) (if (null? (car #{r*\ 4109}#)) #{r\ 4110}# (cons (map car #{r*\ 4109}#) (#{combine\ 4009}# (map cdr #{r*\ 4109}#) #{r\ 4110}#))))) (#{match*\ 4011}# (lambda (#{e\ 4113}# #{p\ 4114}# #{w\ 4115}# #{r\ 4116}# #{mod\ 4117}#) (if (null? #{p\ 4114}#) (if (null? #{e\ 4113}#) #{r\ 4116}# #f) (if (pair? #{p\ 4114}#) (if (pair? #{e\ 4113}#) (#{match\ 4013}# (car #{e\ 4113}#) (car #{p\ 4114}#) #{w\ 4115}# (#{match\ 4013}# (cdr #{e\ 4113}#) (cdr #{p\ 4114}#) #{w\ 4115}# #{r\ 4116}# #{mod\ 4117}#) #{mod\ 4117}#) #f) (if (eq? #{p\ 4114}# 'each-any) (begin (let ((#{l\ 4134}# (#{match-each-any\ 4005}# #{e\ 4113}# #{w\ 4115}# #{mod\ 4117}#))) (if #{l\ 4134}# (cons #{l\ 4134}# #{r\ 4116}#) #f))) (begin (let ((#{atom-key\ 4140}# (vector-ref #{p\ 4114}# 0))) (if (eqv? #{atom-key\ 4140}# 'each) (if (null? #{e\ 4113}#) (#{match-empty\ 4007}# (vector-ref #{p\ 4114}# 1) #{r\ 4116}#) (begin (let ((#{l\ 4143}# (#{match-each\ 4001}# #{e\ 4113}# (vector-ref #{p\ 4114}# 1) #{w\ 4115}# #{mod\ 4117}#))) (if #{l\ 4143}# (letrec* ((#{collect\ 4148}# (lambda (#{l\ 4149}#) (if (null? (car #{l\ 4149}#)) #{r\ 4116}# (cons (map car #{l\ 4149}#) (#{collect\ 4148}# (map cdr #{l\ 4149}#))))))) (begin (#{collect\ 4148}# #{l\ 4143}#))) #f)))) (if (eqv? #{atom-key\ 4140}# 'each+) (call-with-values (lambda () (#{match-each+\ 4003}# #{e\ 4113}# (vector-ref #{p\ 4114}# 1) (vector-ref #{p\ 4114}# 2) (vector-ref #{p\ 4114}# 3) #{w\ 4115}# #{r\ 4116}# #{mod\ 4117}#)) (lambda (#{xr*\ 4151}# #{y-pat\ 4152}# #{r\ 4153}#) (if #{r\ 4153}# (if (null? #{y-pat\ 4152}#) (if (null? #{xr*\ 4151}#) (#{match-empty\ 4007}# (vector-ref #{p\ 4114}# 1) #{r\ 4153}#) (#{combine\ 4009}# #{xr*\ 4151}# #{r\ 4153}#)) #f) #f))) (if (eqv? #{atom-key\ 4140}# 'free-id) (if (#{id?\ 379}# #{e\ 4113}#) (if (#{free-id=?\ 435}# (#{wrap\ 445}# #{e\ 4113}# #{w\ 4115}# #{mod\ 4117}#) (vector-ref #{p\ 4114}# 1)) #{r\ 4116}# #f) #f) (if (eqv? #{atom-key\ 4140}# 'atom) (if (equal? (vector-ref #{p\ 4114}# 1) (#{strip\ 487}# #{e\ 4113}# #{w\ 4115}#)) #{r\ 4116}# #f) (if (eqv? #{atom-key\ 4140}# 'vector) (if (vector? #{e\ 4113}#) (#{match\ 4013}# (vector->list #{e\ 4113}#) (vector-ref #{p\ 4114}# 1) #{w\ 4115}# #{r\ 4116}# #{mod\ 4117}#) #f))))))))))))) (#{match\ 4013}# (lambda (#{e\ 4170}# #{p\ 4171}# #{w\ 4172}# #{r\ 4173}# #{mod\ 4174}#) (if (not #{r\ 4173}#) #f (if (eq? #{p\ 4171}# '_) #{r\ 4173}# (if (eq? #{p\ 4171}# 'any) (cons (#{wrap\ 445}# #{e\ 4170}# #{w\ 4172}# #{mod\ 4174}#) #{r\ 4173}#) (if (#{syntax-object?\ 345}# #{e\ 4170}#) (#{match*\ 4011}# (#{syntax-object-expression\ 347}# #{e\ 4170}#) #{p\ 4171}# (#{join-wraps\ 427}# #{w\ 4172}# (#{syntax-object-wrap\ 349}# #{e\ 4170}#)) #{r\ 4173}# (#{syntax-object-module\ 351}# #{e\ 4170}#)) (#{match*\ 4011}# #{e\ 4170}# #{p\ 4171}# #{w\ 4172}# #{r\ 4173}# #{mod\ 4174}#)))))))) (begin (set! $sc-dispatch (lambda (#{e\ 4189}# #{p\ 4190}#) (if (eq? #{p\ 4190}# 'any) (list #{e\ 4189}#) (if (eq? #{p\ 4190}# '_) '() (if (#{syntax-object?\ 345}# #{e\ 4189}#) (#{match*\ 4011}# (#{syntax-object-expression\ 347}# #{e\ 4189}#) #{p\ 4190}# (#{syntax-object-wrap\ 349}# #{e\ 4189}#) '() (#{syntax-object-module\ 351}# #{e\ 4189}#)) (#{match*\ 4011}# #{e\ 4189}# #{p\ 4190}# '(()) '() #f)))))))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x\ 4201}#) (let ((#{tmp\ 4203}# #{x\ 4201}#)) (let ((#{tmp\ 4204}# ($sc-dispatch #{tmp\ 4203}# '(_ () any . each-any)))) (if #{tmp\ 4204}# (@apply (lambda (#{e1\ 4207}# #{e2\ 4208}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4205" "i4206")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4202"))) (hygiene guile)) (cons #{e1\ 4207}# #{e2\ 4208}#))) #{tmp\ 4204}#) (let ((#{tmp\ 4210}# ($sc-dispatch #{tmp\ 4203}# '(_ ((any any)) any . each-any)))) (if #{tmp\ 4210}# (@apply (lambda (#{out\ 4215}# #{in\ 4216}# #{e1\ 4217}# #{e2\ 4218}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4211" "i4212" "i4213" "i4214")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4202"))) (hygiene guile)) #{in\ 4216}# '() (list #{out\ 4215}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4211" "i4212" "i4213" "i4214")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4202"))) (hygiene guile)) (cons #{e1\ 4217}# #{e2\ 4218}#))))) #{tmp\ 4210}#) (let ((#{tmp\ 4220}# ($sc-dispatch #{tmp\ 4203}# '(_ #(each (any any)) any . each-any)))) (if #{tmp\ 4220}# (@apply (lambda (#{out\ 4225}# #{in\ 4226}# #{e1\ 4227}# #{e2\ 4228}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4221" "i4222" "i4223" "i4224")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4202"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4221" "i4222" "i4223" "i4224")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4202"))) (hygiene guile)) #{in\ 4226}#) '() (list #{out\ 4225}# (cons '#(syntax-object begin ((top) #(ribcage #(out in e1 e2) #((top) (top) (top) (top)) #("i4221" "i4222" "i4223" "i4224")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4202"))) (hygiene guile)) (cons #{e1\ 4227}# #{e2\ 4228}#))))) #{tmp\ 4220}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4203}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x\ 4232}#) (let ((#{tmp\ 4234}# #{x\ 4232}#)) (let ((#{tmp\ 4235}# ($sc-dispatch #{tmp\ 4234}# '(_ each-any . #(each ((any . any) any)))))) (if #{tmp\ 4235}# (@apply (lambda (#{k\ 4240}# #{keyword\ 4241}# #{pattern\ 4242}# #{template\ 4243}#) (list '#(syntax-object lambda ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{pattern\ 4242}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons #{k\ 4240}# (map (lambda (#{tmp\ 4247}# #{tmp\ 4246}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{tmp\ 4246}#) (list '#(syntax-object syntax ((top) #(ribcage #(k keyword pattern template) #((top) (top) (top) (top)) #("i4236" "i4237" "i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{tmp\ 4247}#))) #{template\ 4243}# #{pattern\ 4242}#)))))) #{tmp\ 4235}#) (let ((#{tmp\ 4248}# ($sc-dispatch #{tmp\ 4234}# '(_ each-any any . #(each ((any . any) any)))))) (if (if #{tmp\ 4248}# (@apply (lambda (#{k\ 4254}# #{docstring\ 4255}# #{keyword\ 4256}# #{pattern\ 4257}# #{template\ 4258}#) (string? (syntax->datum #{docstring\ 4255}#))) #{tmp\ 4248}#) #f) (@apply (lambda (#{k\ 4264}# #{docstring\ 4265}# #{keyword\ 4266}# #{pattern\ 4267}# #{template\ 4268}#) (list '#(syntax-object lambda ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile))) #{docstring\ 4265}# (vector '(#(syntax-object macro-type ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{pattern\ 4267}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) (cons #{k\ 4264}# (map (lambda (#{tmp\ 4272}# #{tmp\ 4271}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{tmp\ 4271}#) (list '#(syntax-object syntax ((top) #(ribcage #(k docstring keyword pattern template) #((top) (top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262" "i4263")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4233"))) (hygiene guile)) #{tmp\ 4272}#))) #{template\ 4268}# #{pattern\ 4267}#)))))) #{tmp\ 4248}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4234}#))))))))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x\ 4273}#) (let ((#{tmp\ 4275}# #{x\ 4273}#)) (let ((#{tmp\ 4276}# ($sc-dispatch #{tmp\ 4275}# '(any #(each (any any)) any . each-any)))) (if (if #{tmp\ 4276}# (@apply (lambda (#{let*\ 4282}# #{x\ 4283}# #{v\ 4284}# #{e1\ 4285}# #{e2\ 4286}#) (and-map identifier? #{x\ 4283}#)) #{tmp\ 4276}#) #f) (@apply (lambda (#{let*\ 4293}# #{x\ 4294}# #{v\ 4295}# #{e1\ 4296}# #{e2\ 4297}#) (letrec* ((#{f\ 4300}# (lambda (#{bindings\ 4301}#) (if (null? #{bindings\ 4301}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4298" "i4299")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4288" "i4289" "i4290" "i4291" "i4292")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4274"))) (hygiene guile)) (cons '() (cons #{e1\ 4296}# #{e2\ 4297}#))) (let ((#{tmp\ 4306}# (list (#{f\ 4300}# (cdr #{bindings\ 4301}#)) (car #{bindings\ 4301}#)))) (let ((#{tmp\ 4307}# ($sc-dispatch #{tmp\ 4306}# '(any any)))) (if #{tmp\ 4307}# (@apply (lambda (#{body\ 4310}# #{binding\ 4311}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i4308" "i4309")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4298" "i4299")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4288" "i4289" "i4290" "i4291" "i4292")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4274"))) (hygiene guile)) (list #{binding\ 4311}#) #{body\ 4310}#)) #{tmp\ 4307}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4306}#)))))))) (begin (#{f\ 4300}# (map list #{x\ 4294}# #{v\ 4295}#))))) #{tmp\ 4276}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4275}#))))))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x\ 4312}#) (let ((#{tmp\ 4314}# #{orig-x\ 4312}#)) (let ((#{tmp\ 4315}# ($sc-dispatch #{tmp\ 4314}# '(_ #(each (any any . any)) (any . each-any) . each-any)))) (if #{tmp\ 4315}# (@apply (lambda (#{var\ 4322}# #{init\ 4323}# #{step\ 4324}# #{e0\ 4325}# #{e1\ 4326}# #{c\ 4327}#) (let ((#{tmp\ 4329}# (map (lambda (#{v\ 4350}# #{s\ 4351}#) (let ((#{tmp\ 4354}# #{s\ 4351}#)) (let ((#{tmp\ 4355}# ($sc-dispatch #{tmp\ 4354}# '()))) (if #{tmp\ 4355}# (@apply (lambda () #{v\ 4350}#) #{tmp\ 4355}#) (let ((#{tmp\ 4356}# ($sc-dispatch #{tmp\ 4354}# '(any)))) (if #{tmp\ 4356}# (@apply (lambda (#{e\ 4358}#) #{e\ 4358}#) #{tmp\ 4356}#) (let ((#{_\ 4360}# #{tmp\ 4354}#)) (syntax-violation 'do "bad step expression" #{orig-x\ 4312}# #{s\ 4351}#)))))))) #{var\ 4322}# #{step\ 4324}#))) (let ((#{tmp\ 4330}# ($sc-dispatch #{tmp\ 4329}# 'each-any))) (if #{tmp\ 4330}# (@apply (lambda (#{step\ 4332}#) (let ((#{tmp\ 4333}# #{e1\ 4326}#)) (let ((#{tmp\ 4334}# ($sc-dispatch #{tmp\ 4333}# '()))) (if #{tmp\ 4334}# (@apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) (map list #{var\ 4322}# #{init\ 4323}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) #{e0\ 4325}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) (append #{c\ 4327}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) #{step\ 4332}#))))))) #{tmp\ 4334}#) (let ((#{tmp\ 4339}# ($sc-dispatch #{tmp\ 4333}# '(any . each-any)))) (if #{tmp\ 4339}# (@apply (lambda (#{e1\ 4342}# #{e2\ 4343}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4340" "i4341")) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4340" "i4341")) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) (map list #{var\ 4322}# #{init\ 4323}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4340" "i4341")) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) #{e0\ 4325}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4340" "i4341")) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) (cons #{e1\ 4342}# #{e2\ 4343}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4340" "i4341")) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) (append #{c\ 4327}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4340" "i4341")) #(ribcage #(step) #((top)) #("i4331")) #(ribcage #(var init step e0 e1 c) #((top) (top) (top) (top) (top) (top)) #("i4316" "i4317" "i4318" "i4319" "i4320" "i4321")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4313"))) (hygiene guile)) #{step\ 4332}#))))))) #{tmp\ 4339}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4333}#))))))) #{tmp\ 4330}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4329}#))))) #{tmp\ 4315}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4314}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* ((#{quasicons\ 4367}# (lambda (#{x\ 4371}# #{y\ 4372}#) (let ((#{tmp\ 4376}# (list #{x\ 4371}# #{y\ 4372}#))) (let ((#{tmp\ 4377}# ($sc-dispatch #{tmp\ 4376}# '(any any)))) (if #{tmp\ 4377}# (@apply (lambda (#{x\ 4380}# #{y\ 4381}#) (let ((#{tmp\ 4382}# #{y\ 4381}#)) (let ((#{tmp\ 4383}# ($sc-dispatch #{tmp\ 4382}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) any)))) (if #{tmp\ 4383}# (@apply (lambda (#{dy\ 4385}#) (let ((#{tmp\ 4386}# #{x\ 4380}#)) (let ((#{tmp\ 4387}# ($sc-dispatch #{tmp\ 4386}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(dy) #((top)) #("i4384")) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) any)))) (if #{tmp\ 4387}# (@apply (lambda (#{dx\ 4389}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) #("i4388")) #(ribcage #(dy) #((top)) #("i4384")) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) (cons #{dx\ 4389}# #{dy\ 4385}#))) #{tmp\ 4387}#) (let ((#{_\ 4391}# #{tmp\ 4386}#)) (if (null? #{dy\ 4385}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) #("i4390")) #(ribcage #(dy) #((top)) #("i4384")) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{x\ 4380}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) #("i4390")) #(ribcage #(dy) #((top)) #("i4384")) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{x\ 4380}# #{y\ 4381}#))))))) #{tmp\ 4383}#) (let ((#{tmp\ 4392}# ($sc-dispatch #{tmp\ 4382}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) . any)))) (if #{tmp\ 4392}# (@apply (lambda (#{stuff\ 4394}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) #("i4393")) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) (cons #{x\ 4380}# #{stuff\ 4394}#))) #{tmp\ 4392}#) (let ((#{else\ 4396}# #{tmp\ 4382}#)) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) #("i4395")) #(ribcage #(x y) #((top) (top)) #("i4378" "i4379")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4373" "i4374")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{x\ 4380}# #{y\ 4381}#)))))))) #{tmp\ 4377}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4376}#)))))) (#{quasiappend\ 4368}# (lambda (#{x\ 4397}# #{y\ 4398}#) (let ((#{tmp\ 4402}# (list #{x\ 4397}# #{y\ 4398}#))) (let ((#{tmp\ 4403}# ($sc-dispatch #{tmp\ 4402}# '(any any)))) (if #{tmp\ 4403}# (@apply (lambda (#{x\ 4406}# #{y\ 4407}#) (let ((#{tmp\ 4408}# #{y\ 4407}#)) (let ((#{tmp\ 4409}# ($sc-dispatch #{tmp\ 4408}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4404" "i4405")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4399" "i4400")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) ())))) (if #{tmp\ 4409}# (@apply (lambda () #{x\ 4406}#) #{tmp\ 4409}#) (let ((#{_\ 4411}# #{tmp\ 4408}#)) (list '#(syntax-object append ((top) #(ribcage #(_) #((top)) #("i4410")) #(ribcage #(x y) #((top) (top)) #("i4404" "i4405")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4399" "i4400")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{x\ 4406}# #{y\ 4407}#)))))) #{tmp\ 4403}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4402}#)))))) (#{quasivector\ 4369}# (lambda (#{x\ 4412}#) (let ((#{tmp\ 4415}# #{x\ 4412}#)) (let ((#{x\ 4417}# #{tmp\ 4415}#)) (let ((#{tmp\ 4418}# #{x\ 4417}#)) (let ((#{tmp\ 4419}# ($sc-dispatch #{tmp\ 4418}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4416")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4413")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) each-any)))) (if #{tmp\ 4419}# (@apply (lambda (#{x\ 4421}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4420")) #(ribcage #(x) #((top)) #("i4416")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4413")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) (list->vector #{x\ 4421}#))) #{tmp\ 4419}#) (let ((#{tmp\ 4423}# ($sc-dispatch #{tmp\ 4418}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x) #((top)) #("i4416")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4413")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) . each-any)))) (if #{tmp\ 4423}# (@apply (lambda (#{x\ 4425}#) (cons '#(syntax-object vector ((top) #(ribcage #(x) #((top)) #("i4424")) #(ribcage #(x) #((top)) #("i4416")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4413")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{x\ 4425}#)) #{tmp\ 4423}#) (let ((#{_\ 4428}# #{tmp\ 4418}#)) (list '#(syntax-object list->vector ((top) #(ribcage #(_) #((top)) #("i4427")) #(ribcage #(x) #((top)) #("i4416")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4413")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{x\ 4417}#))))))))))) (#{quasi\ 4370}# (lambda (#{p\ 4429}# #{lev\ 4430}#) (let ((#{tmp\ 4433}# #{p\ 4429}#)) (let ((#{tmp\ 4434}# ($sc-dispatch #{tmp\ 4433}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) any)))) (if #{tmp\ 4434}# (@apply (lambda (#{p\ 4436}#) (if (= #{lev\ 4430}# 0) #{p\ 4436}# (#{quasicons\ 4367}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4435")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) (#{quasi\ 4370}# (list #{p\ 4436}#) (1- #{lev\ 4430}#))))) #{tmp\ 4434}#) (let ((#{tmp\ 4437}# ($sc-dispatch #{tmp\ 4433}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) . any)))) (if (if #{tmp\ 4437}# (@apply (lambda (#{args\ 4439}#) (= #{lev\ 4430}# 0)) #{tmp\ 4437}#) #f) (@apply (lambda (#{args\ 4441}#) (syntax-violation 'unquote "unquote takes exactly one argument" #{p\ 4429}# (cons '#(syntax-object unquote ((top) #(ribcage #(args) #((top)) #("i4440")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{args\ 4441}#))) #{tmp\ 4437}#) (let ((#{tmp\ 4442}# ($sc-dispatch #{tmp\ 4433}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) any) . any)))) (if #{tmp\ 4442}# (@apply (lambda (#{p\ 4445}# #{q\ 4446}#) (if (= #{lev\ 4430}# 0) (#{quasiappend\ 4368}# #{p\ 4445}# (#{quasi\ 4370}# #{q\ 4446}# #{lev\ 4430}#)) (#{quasicons\ 4367}# (#{quasicons\ 4367}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) #("i4443" "i4444")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4443" "i4444")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) (#{quasi\ 4370}# (list #{p\ 4445}#) (1- #{lev\ 4430}#))) (#{quasi\ 4370}# #{q\ 4446}# #{lev\ 4430}#)))) #{tmp\ 4442}#) (let ((#{tmp\ 4447}# ($sc-dispatch #{tmp\ 4433}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) . any) . any)))) (if (if #{tmp\ 4447}# (@apply (lambda (#{args\ 4450}# #{q\ 4451}#) (= #{lev\ 4430}# 0)) #{tmp\ 4447}#) #f) (@apply (lambda (#{args\ 4454}# #{q\ 4455}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" #{p\ 4429}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) #("i4452" "i4453")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{args\ 4454}#))) #{tmp\ 4447}#) (let ((#{tmp\ 4456}# ($sc-dispatch #{tmp\ 4433}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) any)))) (if #{tmp\ 4456}# (@apply (lambda (#{p\ 4458}#) (#{quasicons\ 4367}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4457")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4457")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile))) (#{quasi\ 4370}# (list #{p\ 4458}#) (1+ #{lev\ 4430}#)))) #{tmp\ 4456}#) (let ((#{tmp\ 4459}# ($sc-dispatch #{tmp\ 4433}# '(any . any)))) (if #{tmp\ 4459}# (@apply (lambda (#{p\ 4462}# #{q\ 4463}#) (#{quasicons\ 4367}# (#{quasi\ 4370}# #{p\ 4462}# #{lev\ 4430}#) (#{quasi\ 4370}# #{q\ 4463}# #{lev\ 4430}#))) #{tmp\ 4459}#) (let ((#{tmp\ 4464}# ($sc-dispatch #{tmp\ 4433}# '#(vector each-any)))) (if #{tmp\ 4464}# (@apply (lambda (#{x\ 4466}#) (#{quasivector\ 4369}# (#{quasi\ 4370}# #{x\ 4466}# #{lev\ 4430}#))) #{tmp\ 4464}#) (let ((#{p\ 4469}# #{tmp\ 4433}#)) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4468")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4431" "i4432")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4363" "i4364" "i4365" "i4366"))) (hygiene guile)) #{p\ 4469}#)))))))))))))))))))) (begin (lambda (#{x\ 4470}#) (let ((#{tmp\ 4472}# #{x\ 4470}#)) (let ((#{tmp\ 4473}# ($sc-dispatch #{tmp\ 4472}# '(_ any)))) (if #{tmp\ 4473}# (@apply (lambda (#{e\ 4475}#) (#{quasi\ 4370}# #{e\ 4475}# 0)) #{tmp\ 4473}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4472}#))))))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x\ 4476}#) (letrec* ((#{read-file\ 4479}# (lambda (#{fn\ 4480}# #{k\ 4481}#) (begin (let ((#{p\ 4485}# (open-input-file #{fn\ 4480}#))) (letrec* ((#{f\ 4489}# (lambda (#{x\ 4490}# #{result\ 4491}#) (if (eof-object? #{x\ 4490}#) (begin (close-input-port #{p\ 4485}#) (reverse #{result\ 4491}#)) (#{f\ 4489}# (read #{p\ 4485}#) (cons (datum->syntax #{k\ 4481}# #{x\ 4490}#) #{result\ 4491}#)))))) (begin (#{f\ 4489}# (read #{p\ 4485}#) '())))))))) (begin (let ((#{tmp\ 4492}# #{x\ 4476}#)) (let ((#{tmp\ 4493}# ($sc-dispatch #{tmp\ 4492}# '(any any)))) (if #{tmp\ 4493}# (@apply (lambda (#{k\ 4496}# #{filename\ 4497}#) (begin (let ((#{fn\ 4499}# (syntax->datum #{filename\ 4497}#))) (let ((#{tmp\ 4501}# (#{read-file\ 4479}# #{fn\ 4499}# #{filename\ 4497}#))) (let ((#{tmp\ 4502}# ($sc-dispatch #{tmp\ 4501}# 'each-any))) (if #{tmp\ 4502}# (@apply (lambda (#{exp\ 4504}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i4503")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4498")) #(ribcage #(k filename) #((top) (top)) #("i4494" "i4495")) #(ribcage (read-file) ((top)) ("i4478")) #(ribcage #(x) #((top)) #("i4477"))) (hygiene guile)) #{exp\ 4504}#)) #{tmp\ 4502}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4501}#))))))) #{tmp\ 4493}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4492}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x\ 4506}#) (let ((#{tmp\ 4508}# #{x\ 4506}#)) (let ((#{tmp\ 4509}# ($sc-dispatch #{tmp\ 4508}# '(any any)))) (if #{tmp\ 4509}# (@apply (lambda (#{k\ 4512}# #{filename\ 4513}#) (begin (let ((#{fn\ 4515}# (syntax->datum #{filename\ 4513}#))) (let ((#{tmp\ 4517}# (datum->syntax #{filename\ 4513}# (begin (let ((#{t\ 4522}# (%search-load-path #{fn\ 4515}#))) (if #{t\ 4522}# #{t\ 4522}# (syntax-violation 'include-from-path "file not found in path" #{x\ 4506}# #{filename\ 4513}#))))))) (let ((#{fn\ 4519}# #{tmp\ 4517}#)) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i4518")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4514")) #(ribcage #(k filename) #((top) (top)) #("i4510" "i4511")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4507"))) (hygiene guile)) #{fn\ 4519}#)))))) #{tmp\ 4509}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4508}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x\ 4524}#) (let ((#{tmp\ 4526}# #{x\ 4524}#)) (let ((#{tmp\ 4527}# ($sc-dispatch #{tmp\ 4526}# '(_ any)))) (if #{tmp\ 4527}# (@apply (lambda (#{e\ 4529}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 4524}#)) #{tmp\ 4527}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4526}#))))))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x\ 4530}#) (let ((#{tmp\ 4532}# #{x\ 4530}#)) (let ((#{tmp\ 4533}# ($sc-dispatch #{tmp\ 4532}# '(_ any)))) (if #{tmp\ 4533}# (@apply (lambda (#{e\ 4535}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 4530}#)) #{tmp\ 4533}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4532}#))))))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x\ 4536}#) (let ((#{tmp\ 4538}# #{x\ 4536}#)) (let ((#{tmp\ 4539}# ($sc-dispatch #{tmp\ 4538}# '(_ any any . each-any)))) (if #{tmp\ 4539}# (@apply (lambda (#{e\ 4543}# #{m1\ 4544}# #{m2\ 4545}#) (let ((#{tmp\ 4547}# (letrec* ((#{f\ 4553}# (lambda (#{clause\ 4554}# #{clauses\ 4555}#) (if (null? #{clauses\ 4555}#) (let ((#{tmp\ 4557}# #{clause\ 4554}#)) (let ((#{tmp\ 4558}# ($sc-dispatch #{tmp\ 4557}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile))) any . each-any)))) (if #{tmp\ 4558}# (@apply (lambda (#{e1\ 4561}# #{e2\ 4562}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4559" "i4560")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (cons #{e1\ 4561}# #{e2\ 4562}#))) #{tmp\ 4558}#) (let ((#{tmp\ 4564}# ($sc-dispatch #{tmp\ 4557}# '(each-any any . each-any)))) (if #{tmp\ 4564}# (@apply (lambda (#{k\ 4568}# #{e1\ 4569}# #{e2\ 4570}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4565" "i4566" "i4567")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4565" "i4566" "i4567")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4565" "i4566" "i4567")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4565" "i4566" "i4567")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) #{k\ 4568}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4565" "i4566" "i4567")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (cons #{e1\ 4569}# #{e2\ 4570}#)))) #{tmp\ 4564}#) (let ((#{_\ 4574}# #{tmp\ 4557}#)) (syntax-violation 'case "bad clause" #{x\ 4536}# #{clause\ 4554}#))))))) (let ((#{tmp\ 4576}# (#{f\ 4553}# (car #{clauses\ 4555}#) (cdr #{clauses\ 4555}#)))) (let ((#{rest\ 4578}# #{tmp\ 4576}#)) (let ((#{tmp\ 4579}# #{clause\ 4554}#)) (let ((#{tmp\ 4580}# ($sc-dispatch #{tmp\ 4579}# '(each-any any . each-any)))) (if #{tmp\ 4580}# (@apply (lambda (#{k\ 4584}# #{e1\ 4585}# #{e2\ 4586}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4581" "i4582" "i4583")) #(ribcage #(rest) #((top)) #("i4577")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4581" "i4582" "i4583")) #(ribcage #(rest) #((top)) #("i4577")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4581" "i4582" "i4583")) #(ribcage #(rest) #((top)) #("i4577")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4581" "i4582" "i4583")) #(ribcage #(rest) #((top)) #("i4577")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) #{k\ 4584}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4581" "i4582" "i4583")) #(ribcage #(rest) #((top)) #("i4577")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4550" "i4551" "i4552")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (cons #{e1\ 4585}# #{e2\ 4586}#)) #{rest\ 4578}#)) #{tmp\ 4580}#) (let ((#{_\ 4590}# #{tmp\ 4579}#)) (syntax-violation 'case "bad clause" #{x\ 4536}# #{clause\ 4554}#))))))))))) (begin (#{f\ 4553}# #{m1\ 4544}# #{m2\ 4545}#))))) (let ((#{body\ 4549}# #{tmp\ 4547}#)) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i4548")) #(ribcage #(e m1 m2) #((top) (top) (top)) #("i4540" "i4541" "i4542")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4537"))) (hygiene guile)) #{e\ 4543}#)) #{body\ 4549}#)))) #{tmp\ 4539}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4538}#))))))) (define make-variable-transformer (lambda (#{proc\ 4591}#) (if (procedure? #{proc\ 4591}#) (begin (letrec* ((#{trans\ 4594}# (lambda (#{x\ 4595}#) (#{proc\ 4591}# #{x\ 4595}#)))) (begin (set-procedure-property! #{trans\ 4594}# 'variable-transformer #t) #{trans\ 4594}#))) (error "variable transformer not a procedure" #{proc\ 4591}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x\ 4597}#) (let ((#{tmp\ 4599}# #{x\ 4597}#)) (let ((#{tmp\ 4600}# ($sc-dispatch #{tmp\ 4599}# '(_ any)))) (if #{tmp\ 4600}# (@apply (lambda (#{e\ 4602}#) (list '#(syntax-object lambda ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #{e\ 4602}#)) (list '(#(syntax-object _ ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile))) (list '#(syntax-object syntax ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) (cons #{e\ 4602}# '(#(syntax-object x ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(e) #((top)) #("i4601")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile))))))))) #{tmp\ 4600}#) (let ((#{tmp\ 4603}# ($sc-dispatch #{tmp\ 4599}# '(_ (any any) ((#(free-id #(syntax-object set! ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile))) any any) any))))) (if (if #{tmp\ 4603}# (@apply (lambda (#{id\ 4609}# #{exp1\ 4610}# #{var\ 4611}# #{val\ 4612}# #{exp2\ 4613}#) (if (identifier? #{id\ 4609}#) (identifier? #{var\ 4611}#) #f)) #{tmp\ 4603}#) #f) (@apply (lambda (#{id\ 4621}# #{exp1\ 4622}# #{var\ 4623}# #{val\ 4624}# #{exp2\ 4625}#) (list '#(syntax-object make-variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) (list '#(syntax-object lambda ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) . #(syntax-object variable-transformer ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) '(#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile))) (list (list '#(syntax-object set! ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #{var\ 4623}# #{val\ 4624}#) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #{exp2\ 4625}#)) (list (cons #{id\ 4621}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) (cons #{exp1\ 4622}# '(#(syntax-object x ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)))))) (list #{id\ 4621}# (list '#(syntax-object identifier? ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #{id\ 4621}#)) (list '#(syntax-object syntax ((top) #(ribcage #(id exp1 var val exp2) #((top) (top) (top) (top) (top)) #("i4616" "i4617" "i4618" "i4619" "i4620")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4598"))) (hygiene guile)) #{exp1\ 4622}#)))))) #{tmp\ 4603}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4599}#))))))))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x\ 4626}#) (let ((#{tmp\ 4628}# #{x\ 4626}#)) (let ((#{tmp\ 4629}# ($sc-dispatch #{tmp\ 4628}# '(_ (any . any) any . each-any)))) (if #{tmp\ 4629}# (@apply (lambda (#{id\ 4634}# #{args\ 4635}# #{b0\ 4636}# #{b1\ 4637}#) (list '#(syntax-object define ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4630" "i4631" "i4632" "i4633")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4627"))) (hygiene guile)) #{id\ 4634}# (cons '#(syntax-object lambda* ((top) #(ribcage #(id args b0 b1) #((top) (top) (top) (top)) #("i4630" "i4631" "i4632" "i4633")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4627"))) (hygiene guile)) (cons #{args\ 4635}# (cons #{b0\ 4636}# #{b1\ 4637}#))))) #{tmp\ 4629}#) (let ((#{tmp\ 4639}# ($sc-dispatch #{tmp\ 4628}# '(_ any any)))) (if (if #{tmp\ 4639}# (@apply (lambda (#{id\ 4642}# #{val\ 4643}#) (identifier? '#(syntax-object x ((top) #(ribcage #(id val) #((top) (top)) #("i4640" "i4641")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4627"))) (hygiene guile)))) #{tmp\ 4639}#) #f) (@apply (lambda (#{id\ 4646}# #{val\ 4647}#) (list '#(syntax-object define ((top) #(ribcage #(id val) #((top) (top)) #("i4644" "i4645")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4627"))) (hygiene guile)) #{id\ 4646}# #{val\ 4647}#)) #{tmp\ 4639}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4628}#)))))))))