mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-18 09:40:25 +02:00
* module/ice-9/psyntax.scm (chi-top): When adding to the toplevel environment at compile-time, default to undefined variables, not variables defined to #f. * module/ice-9/psyntax-pp.scm: Regenerate. * module/ice-9/boot-9.scm (module-add!): Add a new pre-modules version of this function, so we can add variables the environment, not just values. (module-define!): Use module-add!.
17764 lines
1 MiB
17764 lines
1 MiB
(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
|
|
(if #f #f)
|
|
|
|
(letrec*
|
|
((#{and-map*\ 37}#
|
|
(lambda (#{f\ 201}# #{first\ 202}# . #{rest\ 203}#)
|
|
(begin
|
|
(let ((#{t\ 209}# (null? #{first\ 202}#)))
|
|
(if #{t\ 209}#
|
|
#{t\ 209}#
|
|
(if (null? #{rest\ 203}#)
|
|
(letrec*
|
|
((#{andmap\ 213}#
|
|
(lambda (#{first\ 214}#)
|
|
(begin
|
|
(let ((#{x\ 217}# (car #{first\ 214}#))
|
|
(#{first\ 218}# (cdr #{first\ 214}#)))
|
|
(if (null? #{first\ 218}#)
|
|
(#{f\ 201}# #{x\ 217}#)
|
|
(if (#{f\ 201}# #{x\ 217}#)
|
|
(#{andmap\ 213}# #{first\ 218}#)
|
|
#f)))))))
|
|
(begin (#{andmap\ 213}# #{first\ 202}#)))
|
|
(letrec*
|
|
((#{andmap\ 224}#
|
|
(lambda (#{first\ 225}# #{rest\ 226}#)
|
|
(begin
|
|
(let ((#{x\ 231}# (car #{first\ 225}#))
|
|
(#{xr\ 232}# (map car #{rest\ 226}#))
|
|
(#{first\ 233}# (cdr #{first\ 225}#))
|
|
(#{rest\ 234}# (map cdr #{rest\ 226}#)))
|
|
(if (null? #{first\ 233}#)
|
|
(@apply #{f\ 201}# #{x\ 231}# #{xr\ 232}#)
|
|
(if (@apply #{f\ 201}# #{x\ 231}# #{xr\ 232}#)
|
|
(#{andmap\ 224}# #{first\ 233}# #{rest\ 234}#)
|
|
#f)))))))
|
|
(begin
|
|
(#{andmap\ 224}# #{first\ 202}# #{rest\ 203}#))))))))))
|
|
(begin
|
|
(let ((#{make-primitive-ref\ 243}# (if #f #f))
|
|
(#{fx+\ 282}# (if #f #f))
|
|
(#{fx-\ 284}# (if #f #f))
|
|
(#{fx=\ 286}# (if #f #f))
|
|
(#{fx<\ 288}# (if #f #f))
|
|
(#{set-syntax-object-expression!\ 353}#
|
|
(if #f #f))
|
|
(#{set-syntax-object-wrap!\ 355}# (if #f #f))
|
|
(#{set-syntax-object-module!\ 357}# (if #f #f))
|
|
(#{ribcage?\ 399}# (if #f #f)))
|
|
(letrec*
|
|
((#{make-void\ 239}#
|
|
(lambda (#{src\ 751}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 0)
|
|
#{src\ 751}#)))
|
|
(#{make-const\ 241}#
|
|
(lambda (#{src\ 753}# #{exp\ 754}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 1)
|
|
#{src\ 753}#
|
|
#{exp\ 754}#)))
|
|
(#{make-lexical-ref\ 245}#
|
|
(lambda (#{src\ 761}# #{name\ 762}# #{gensym\ 763}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 3)
|
|
#{src\ 761}#
|
|
#{name\ 762}#
|
|
#{gensym\ 763}#)))
|
|
(#{make-lexical-set\ 247}#
|
|
(lambda (#{src\ 767}#
|
|
#{name\ 768}#
|
|
#{gensym\ 769}#
|
|
#{exp\ 770}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 4)
|
|
#{src\ 767}#
|
|
#{name\ 768}#
|
|
#{gensym\ 769}#
|
|
#{exp\ 770}#)))
|
|
(#{make-module-ref\ 249}#
|
|
(lambda (#{src\ 775}#
|
|
#{mod\ 776}#
|
|
#{name\ 777}#
|
|
#{public?\ 778}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 5)
|
|
#{src\ 775}#
|
|
#{mod\ 776}#
|
|
#{name\ 777}#
|
|
#{public?\ 778}#)))
|
|
(#{make-module-set\ 251}#
|
|
(lambda (#{src\ 783}#
|
|
#{mod\ 784}#
|
|
#{name\ 785}#
|
|
#{public?\ 786}#
|
|
#{exp\ 787}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 6)
|
|
#{src\ 783}#
|
|
#{mod\ 784}#
|
|
#{name\ 785}#
|
|
#{public?\ 786}#
|
|
#{exp\ 787}#)))
|
|
(#{make-toplevel-ref\ 253}#
|
|
(lambda (#{src\ 793}# #{name\ 794}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 7)
|
|
#{src\ 793}#
|
|
#{name\ 794}#)))
|
|
(#{make-toplevel-set\ 255}#
|
|
(lambda (#{src\ 797}# #{name\ 798}# #{exp\ 799}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 8)
|
|
#{src\ 797}#
|
|
#{name\ 798}#
|
|
#{exp\ 799}#)))
|
|
(#{make-toplevel-define\ 257}#
|
|
(lambda (#{src\ 803}# #{name\ 804}# #{exp\ 805}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 9)
|
|
#{src\ 803}#
|
|
#{name\ 804}#
|
|
#{exp\ 805}#)))
|
|
(#{make-conditional\ 259}#
|
|
(lambda (#{src\ 809}#
|
|
#{test\ 810}#
|
|
#{consequent\ 811}#
|
|
#{alternate\ 812}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 10)
|
|
#{src\ 809}#
|
|
#{test\ 810}#
|
|
#{consequent\ 811}#
|
|
#{alternate\ 812}#)))
|
|
(#{make-application\ 261}#
|
|
(lambda (#{src\ 817}# #{proc\ 818}# #{args\ 819}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 11)
|
|
#{src\ 817}#
|
|
#{proc\ 818}#
|
|
#{args\ 819}#)))
|
|
(#{make-sequence\ 263}#
|
|
(lambda (#{src\ 823}# #{exps\ 824}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 12)
|
|
#{src\ 823}#
|
|
#{exps\ 824}#)))
|
|
(#{make-lambda\ 265}#
|
|
(lambda (#{src\ 827}# #{meta\ 828}# #{body\ 829}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 13)
|
|
#{src\ 827}#
|
|
#{meta\ 828}#
|
|
#{body\ 829}#)))
|
|
(#{make-lambda-case\ 267}#
|
|
(lambda (#{src\ 833}#
|
|
#{req\ 834}#
|
|
#{opt\ 835}#
|
|
#{rest\ 836}#
|
|
#{kw\ 837}#
|
|
#{inits\ 838}#
|
|
#{gensyms\ 839}#
|
|
#{body\ 840}#
|
|
#{alternate\ 841}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 14)
|
|
#{src\ 833}#
|
|
#{req\ 834}#
|
|
#{opt\ 835}#
|
|
#{rest\ 836}#
|
|
#{kw\ 837}#
|
|
#{inits\ 838}#
|
|
#{gensyms\ 839}#
|
|
#{body\ 840}#
|
|
#{alternate\ 841}#)))
|
|
(#{make-let\ 269}#
|
|
(lambda (#{src\ 851}#
|
|
#{names\ 852}#
|
|
#{gensyms\ 853}#
|
|
#{vals\ 854}#
|
|
#{body\ 855}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 15)
|
|
#{src\ 851}#
|
|
#{names\ 852}#
|
|
#{gensyms\ 853}#
|
|
#{vals\ 854}#
|
|
#{body\ 855}#)))
|
|
(#{make-letrec\ 271}#
|
|
(lambda (#{src\ 861}#
|
|
#{in-order?\ 862}#
|
|
#{names\ 863}#
|
|
#{gensyms\ 864}#
|
|
#{vals\ 865}#
|
|
#{body\ 866}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 16)
|
|
#{src\ 861}#
|
|
#{in-order?\ 862}#
|
|
#{names\ 863}#
|
|
#{gensyms\ 864}#
|
|
#{vals\ 865}#
|
|
#{body\ 866}#)))
|
|
(#{make-dynlet\ 273}#
|
|
(lambda (#{src\ 873}#
|
|
#{fluids\ 874}#
|
|
#{vals\ 875}#
|
|
#{body\ 876}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 17)
|
|
#{src\ 873}#
|
|
#{fluids\ 874}#
|
|
#{vals\ 875}#
|
|
#{body\ 876}#)))
|
|
(#{lambda?\ 276}#
|
|
(lambda (#{x\ 881}#)
|
|
(if (struct? #{x\ 881}#)
|
|
(eq? (struct-vtable #{x\ 881}#)
|
|
(vector-ref %expanded-vtables 13))
|
|
#f)))
|
|
(#{lambda-meta\ 278}#
|
|
(lambda (#{x\ 885}#) (struct-ref #{x\ 885}# 1)))
|
|
(#{set-lambda-meta!\ 280}#
|
|
(lambda (#{x\ 887}# #{v\ 888}#)
|
|
(struct-set! #{x\ 887}# 1 #{v\ 888}#)))
|
|
(#{top-level-eval-hook\ 290}#
|
|
(lambda (#{x\ 891}# #{mod\ 892}#)
|
|
(primitive-eval #{x\ 891}#)))
|
|
(#{local-eval-hook\ 292}#
|
|
(lambda (#{x\ 895}# #{mod\ 896}#)
|
|
(primitive-eval #{x\ 895}#)))
|
|
(#{put-global-definition-hook\ 295}#
|
|
(lambda (#{symbol\ 899}# #{type\ 900}# #{val\ 901}#)
|
|
(module-define!
|
|
(current-module)
|
|
#{symbol\ 899}#
|
|
(make-syntax-transformer
|
|
#{symbol\ 899}#
|
|
#{type\ 900}#
|
|
#{val\ 901}#))))
|
|
(#{get-global-definition-hook\ 297}#
|
|
(lambda (#{symbol\ 905}# #{module\ 906}#)
|
|
(begin
|
|
(if (if (not #{module\ 906}#) (current-module) #f)
|
|
(warn "module system is booted, we should have a module"
|
|
#{symbol\ 905}#))
|
|
(begin
|
|
(let ((#{v\ 912}# (module-variable
|
|
(if #{module\ 906}#
|
|
(resolve-module (cdr #{module\ 906}#))
|
|
(current-module))
|
|
#{symbol\ 905}#)))
|
|
(if #{v\ 912}#
|
|
(if (variable-bound? #{v\ 912}#)
|
|
(begin
|
|
(let ((#{val\ 917}# (variable-ref #{v\ 912}#)))
|
|
(if (macro? #{val\ 917}#)
|
|
(if (macro-type #{val\ 917}#)
|
|
(cons (macro-type #{val\ 917}#)
|
|
(macro-binding #{val\ 917}#))
|
|
#f)
|
|
#f)))
|
|
#f)
|
|
#f))))))
|
|
(#{decorate-source\ 299}#
|
|
(lambda (#{e\ 921}# #{s\ 922}#)
|
|
(begin
|
|
(if (if (pair? #{e\ 921}#) #{s\ 922}# #f)
|
|
(set-source-properties! #{e\ 921}# #{s\ 922}#))
|
|
#{e\ 921}#)))
|
|
(#{maybe-name-value!\ 301}#
|
|
(lambda (#{name\ 927}# #{val\ 928}#)
|
|
(if (#{lambda?\ 276}# #{val\ 928}#)
|
|
(begin
|
|
(let ((#{meta\ 932}#
|
|
(#{lambda-meta\ 278}# #{val\ 928}#)))
|
|
(if (not (assq 'name #{meta\ 932}#))
|
|
(#{set-lambda-meta!\ 280}#
|
|
#{val\ 928}#
|
|
(cons (cons 'name #{name\ 927}#) #{meta\ 932}#))))))))
|
|
(#{build-void\ 303}#
|
|
(lambda (#{source\ 933}#)
|
|
(#{make-void\ 239}# #{source\ 933}#)))
|
|
(#{build-application\ 305}#
|
|
(lambda (#{source\ 935}#
|
|
#{fun-exp\ 936}#
|
|
#{arg-exps\ 937}#)
|
|
(#{make-application\ 261}#
|
|
#{source\ 935}#
|
|
#{fun-exp\ 936}#
|
|
#{arg-exps\ 937}#)))
|
|
(#{build-conditional\ 307}#
|
|
(lambda (#{source\ 941}#
|
|
#{test-exp\ 942}#
|
|
#{then-exp\ 943}#
|
|
#{else-exp\ 944}#)
|
|
(#{make-conditional\ 259}#
|
|
#{source\ 941}#
|
|
#{test-exp\ 942}#
|
|
#{then-exp\ 943}#
|
|
#{else-exp\ 944}#)))
|
|
(#{build-dynlet\ 309}#
|
|
(lambda (#{source\ 949}#
|
|
#{fluids\ 950}#
|
|
#{vals\ 951}#
|
|
#{body\ 952}#)
|
|
(#{make-dynlet\ 273}#
|
|
#{source\ 949}#
|
|
#{fluids\ 950}#
|
|
#{vals\ 951}#
|
|
#{body\ 952}#)))
|
|
(#{build-lexical-reference\ 311}#
|
|
(lambda (#{type\ 957}#
|
|
#{source\ 958}#
|
|
#{name\ 959}#
|
|
#{var\ 960}#)
|
|
(#{make-lexical-ref\ 245}#
|
|
#{source\ 958}#
|
|
#{name\ 959}#
|
|
#{var\ 960}#)))
|
|
(#{build-lexical-assignment\ 313}#
|
|
(lambda (#{source\ 965}#
|
|
#{name\ 966}#
|
|
#{var\ 967}#
|
|
#{exp\ 968}#)
|
|
(begin
|
|
(#{maybe-name-value!\ 301}#
|
|
#{name\ 966}#
|
|
#{exp\ 968}#)
|
|
(#{make-lexical-set\ 247}#
|
|
#{source\ 965}#
|
|
#{name\ 966}#
|
|
#{var\ 967}#
|
|
#{exp\ 968}#))))
|
|
(#{analyze-variable\ 315}#
|
|
(lambda (#{mod\ 973}#
|
|
#{var\ 974}#
|
|
#{modref-cont\ 975}#
|
|
#{bare-cont\ 976}#)
|
|
(if (not #{mod\ 973}#)
|
|
(#{bare-cont\ 976}# #{var\ 974}#)
|
|
(begin
|
|
(let ((#{kind\ 983}# (car #{mod\ 973}#))
|
|
(#{mod\ 984}# (cdr #{mod\ 973}#)))
|
|
(if (eqv? #{kind\ 983}# 'public)
|
|
(#{modref-cont\ 975}#
|
|
#{mod\ 984}#
|
|
#{var\ 974}#
|
|
#t)
|
|
(if (eqv? #{kind\ 983}# 'private)
|
|
(if (not (equal?
|
|
#{mod\ 984}#
|
|
(module-name (current-module))))
|
|
(#{modref-cont\ 975}#
|
|
#{mod\ 984}#
|
|
#{var\ 974}#
|
|
#f)
|
|
(#{bare-cont\ 976}# #{var\ 974}#))
|
|
(if (eqv? #{kind\ 983}# 'bare)
|
|
(#{bare-cont\ 976}# #{var\ 974}#)
|
|
(if (eqv? #{kind\ 983}# 'hygiene)
|
|
(if (if (not (equal?
|
|
#{mod\ 984}#
|
|
(module-name (current-module))))
|
|
(module-variable
|
|
(resolve-module #{mod\ 984}#)
|
|
#{var\ 974}#)
|
|
#f)
|
|
(#{modref-cont\ 975}#
|
|
#{mod\ 984}#
|
|
#{var\ 974}#
|
|
#f)
|
|
(#{bare-cont\ 976}# #{var\ 974}#))
|
|
(syntax-violation
|
|
#f
|
|
"bad module kind"
|
|
#{var\ 974}#
|
|
#{mod\ 984}#))))))))))
|
|
(#{build-global-reference\ 317}#
|
|
(lambda (#{source\ 992}# #{var\ 993}# #{mod\ 994}#)
|
|
(#{analyze-variable\ 315}#
|
|
#{mod\ 994}#
|
|
#{var\ 993}#
|
|
(lambda (#{mod\ 998}# #{var\ 999}# #{public?\ 1000}#)
|
|
(#{make-module-ref\ 249}#
|
|
#{source\ 992}#
|
|
#{mod\ 998}#
|
|
#{var\ 999}#
|
|
#{public?\ 1000}#))
|
|
(lambda (#{var\ 1004}#)
|
|
(#{make-toplevel-ref\ 253}#
|
|
#{source\ 992}#
|
|
#{var\ 1004}#)))))
|
|
(#{build-global-assignment\ 319}#
|
|
(lambda (#{source\ 1006}#
|
|
#{var\ 1007}#
|
|
#{exp\ 1008}#
|
|
#{mod\ 1009}#)
|
|
(begin
|
|
(#{maybe-name-value!\ 301}#
|
|
#{var\ 1007}#
|
|
#{exp\ 1008}#)
|
|
(#{analyze-variable\ 315}#
|
|
#{mod\ 1009}#
|
|
#{var\ 1007}#
|
|
(lambda (#{mod\ 1014}# #{var\ 1015}# #{public?\ 1016}#)
|
|
(#{make-module-set\ 251}#
|
|
#{source\ 1006}#
|
|
#{mod\ 1014}#
|
|
#{var\ 1015}#
|
|
#{public?\ 1016}#
|
|
#{exp\ 1008}#))
|
|
(lambda (#{var\ 1020}#)
|
|
(#{make-toplevel-set\ 255}#
|
|
#{source\ 1006}#
|
|
#{var\ 1020}#
|
|
#{exp\ 1008}#))))))
|
|
(#{build-global-definition\ 321}#
|
|
(lambda (#{source\ 1022}# #{var\ 1023}# #{exp\ 1024}#)
|
|
(begin
|
|
(#{maybe-name-value!\ 301}#
|
|
#{var\ 1023}#
|
|
#{exp\ 1024}#)
|
|
(#{make-toplevel-define\ 257}#
|
|
#{source\ 1022}#
|
|
#{var\ 1023}#
|
|
#{exp\ 1024}#))))
|
|
(#{build-simple-lambda\ 323}#
|
|
(lambda (#{src\ 1028}#
|
|
#{req\ 1029}#
|
|
#{rest\ 1030}#
|
|
#{vars\ 1031}#
|
|
#{meta\ 1032}#
|
|
#{exp\ 1033}#)
|
|
(#{make-lambda\ 265}#
|
|
#{src\ 1028}#
|
|
#{meta\ 1032}#
|
|
(#{make-lambda-case\ 267}#
|
|
#{src\ 1028}#
|
|
#{req\ 1029}#
|
|
#f
|
|
#{rest\ 1030}#
|
|
#f
|
|
'()
|
|
#{vars\ 1031}#
|
|
#{exp\ 1033}#
|
|
#f))))
|
|
(#{build-case-lambda\ 325}#
|
|
(lambda (#{src\ 1040}# #{meta\ 1041}# #{body\ 1042}#)
|
|
(#{make-lambda\ 265}#
|
|
#{src\ 1040}#
|
|
#{meta\ 1041}#
|
|
#{body\ 1042}#)))
|
|
(#{build-lambda-case\ 327}#
|
|
(lambda (#{src\ 1046}#
|
|
#{req\ 1047}#
|
|
#{opt\ 1048}#
|
|
#{rest\ 1049}#
|
|
#{kw\ 1050}#
|
|
#{inits\ 1051}#
|
|
#{vars\ 1052}#
|
|
#{body\ 1053}#
|
|
#{else-case\ 1054}#)
|
|
(#{make-lambda-case\ 267}#
|
|
#{src\ 1046}#
|
|
#{req\ 1047}#
|
|
#{opt\ 1048}#
|
|
#{rest\ 1049}#
|
|
#{kw\ 1050}#
|
|
#{inits\ 1051}#
|
|
#{vars\ 1052}#
|
|
#{body\ 1053}#
|
|
#{else-case\ 1054}#)))
|
|
(#{build-primref\ 329}#
|
|
(lambda (#{src\ 1064}# #{name\ 1065}#)
|
|
(if (equal? (module-name (current-module)) '(guile))
|
|
(#{make-toplevel-ref\ 253}#
|
|
#{src\ 1064}#
|
|
#{name\ 1065}#)
|
|
(#{make-module-ref\ 249}#
|
|
#{src\ 1064}#
|
|
'(guile)
|
|
#{name\ 1065}#
|
|
#f))))
|
|
(#{build-data\ 331}#
|
|
(lambda (#{src\ 1068}# #{exp\ 1069}#)
|
|
(#{make-const\ 241}# #{src\ 1068}# #{exp\ 1069}#)))
|
|
(#{build-sequence\ 333}#
|
|
(lambda (#{src\ 1072}# #{exps\ 1073}#)
|
|
(if (null? (cdr #{exps\ 1073}#))
|
|
(car #{exps\ 1073}#)
|
|
(#{make-sequence\ 263}#
|
|
#{src\ 1072}#
|
|
#{exps\ 1073}#))))
|
|
(#{build-let\ 335}#
|
|
(lambda (#{src\ 1076}#
|
|
#{ids\ 1077}#
|
|
#{vars\ 1078}#
|
|
#{val-exps\ 1079}#
|
|
#{body-exp\ 1080}#)
|
|
(begin
|
|
(for-each
|
|
#{maybe-name-value!\ 301}#
|
|
#{ids\ 1077}#
|
|
#{val-exps\ 1079}#)
|
|
(if (null? #{vars\ 1078}#)
|
|
#{body-exp\ 1080}#
|
|
(#{make-let\ 269}#
|
|
#{src\ 1076}#
|
|
#{ids\ 1077}#
|
|
#{vars\ 1078}#
|
|
#{val-exps\ 1079}#
|
|
#{body-exp\ 1080}#)))))
|
|
(#{build-named-let\ 337}#
|
|
(lambda (#{src\ 1086}#
|
|
#{ids\ 1087}#
|
|
#{vars\ 1088}#
|
|
#{val-exps\ 1089}#
|
|
#{body-exp\ 1090}#)
|
|
(begin
|
|
(let ((#{f\ 1100}# (car #{vars\ 1088}#))
|
|
(#{f-name\ 1101}# (car #{ids\ 1087}#))
|
|
(#{vars\ 1102}# (cdr #{vars\ 1088}#))
|
|
(#{ids\ 1103}# (cdr #{ids\ 1087}#)))
|
|
(begin
|
|
(let ((#{proc\ 1105}#
|
|
(#{build-simple-lambda\ 323}#
|
|
#{src\ 1086}#
|
|
#{ids\ 1103}#
|
|
#f
|
|
#{vars\ 1102}#
|
|
'()
|
|
#{body-exp\ 1090}#)))
|
|
(begin
|
|
(#{maybe-name-value!\ 301}#
|
|
#{f-name\ 1101}#
|
|
#{proc\ 1105}#)
|
|
(for-each
|
|
#{maybe-name-value!\ 301}#
|
|
#{ids\ 1103}#
|
|
#{val-exps\ 1089}#)
|
|
(#{make-letrec\ 271}#
|
|
#{src\ 1086}#
|
|
#f
|
|
(list #{f-name\ 1101}#)
|
|
(list #{f\ 1100}#)
|
|
(list #{proc\ 1105}#)
|
|
(#{build-application\ 305}#
|
|
#{src\ 1086}#
|
|
(#{build-lexical-reference\ 311}#
|
|
'fun
|
|
#{src\ 1086}#
|
|
#{f-name\ 1101}#
|
|
#{f\ 1100}#)
|
|
#{val-exps\ 1089}#)))))))))
|
|
(#{build-letrec\ 339}#
|
|
(lambda (#{src\ 1106}#
|
|
#{in-order?\ 1107}#
|
|
#{ids\ 1108}#
|
|
#{vars\ 1109}#
|
|
#{val-exps\ 1110}#
|
|
#{body-exp\ 1111}#)
|
|
(if (null? #{vars\ 1109}#)
|
|
#{body-exp\ 1111}#
|
|
(begin
|
|
(for-each
|
|
#{maybe-name-value!\ 301}#
|
|
#{ids\ 1108}#
|
|
#{val-exps\ 1110}#)
|
|
(#{make-letrec\ 271}#
|
|
#{src\ 1106}#
|
|
#{in-order?\ 1107}#
|
|
#{ids\ 1108}#
|
|
#{vars\ 1109}#
|
|
#{val-exps\ 1110}#
|
|
#{body-exp\ 1111}#)))))
|
|
(#{make-syntax-object\ 343}#
|
|
(lambda (#{expression\ 1118}#
|
|
#{wrap\ 1119}#
|
|
#{module\ 1120}#)
|
|
(vector
|
|
'syntax-object
|
|
#{expression\ 1118}#
|
|
#{wrap\ 1119}#
|
|
#{module\ 1120}#)))
|
|
(#{syntax-object?\ 345}#
|
|
(lambda (#{x\ 1124}#)
|
|
(if (vector? #{x\ 1124}#)
|
|
(if (= (vector-length #{x\ 1124}#) 4)
|
|
(eq? (vector-ref #{x\ 1124}# 0) 'syntax-object)
|
|
#f)
|
|
#f)))
|
|
(#{syntax-object-expression\ 347}#
|
|
(lambda (#{x\ 1129}#) (vector-ref #{x\ 1129}# 1)))
|
|
(#{syntax-object-wrap\ 349}#
|
|
(lambda (#{x\ 1131}#) (vector-ref #{x\ 1131}# 2)))
|
|
(#{syntax-object-module\ 351}#
|
|
(lambda (#{x\ 1133}#) (vector-ref #{x\ 1133}# 3)))
|
|
(#{source-annotation\ 360}#
|
|
(lambda (#{x\ 1147}#)
|
|
(if (#{syntax-object?\ 345}# #{x\ 1147}#)
|
|
(#{source-annotation\ 360}#
|
|
(#{syntax-object-expression\ 347}# #{x\ 1147}#))
|
|
(if (pair? #{x\ 1147}#)
|
|
(begin
|
|
(let ((#{props\ 1154}# (source-properties #{x\ 1147}#)))
|
|
(if (pair? #{props\ 1154}#) #{props\ 1154}# #f)))
|
|
#f))))
|
|
(#{extend-env\ 367}#
|
|
(lambda (#{labels\ 1156}# #{bindings\ 1157}# #{r\ 1158}#)
|
|
(if (null? #{labels\ 1156}#)
|
|
#{r\ 1158}#
|
|
(#{extend-env\ 367}#
|
|
(cdr #{labels\ 1156}#)
|
|
(cdr #{bindings\ 1157}#)
|
|
(cons (cons (car #{labels\ 1156}#)
|
|
(car #{bindings\ 1157}#))
|
|
#{r\ 1158}#)))))
|
|
(#{extend-var-env\ 369}#
|
|
(lambda (#{labels\ 1162}# #{vars\ 1163}# #{r\ 1164}#)
|
|
(if (null? #{labels\ 1162}#)
|
|
#{r\ 1164}#
|
|
(#{extend-var-env\ 369}#
|
|
(cdr #{labels\ 1162}#)
|
|
(cdr #{vars\ 1163}#)
|
|
(cons (cons (car #{labels\ 1162}#)
|
|
(cons 'lexical (car #{vars\ 1163}#)))
|
|
#{r\ 1164}#)))))
|
|
(#{macros-only-env\ 371}#
|
|
(lambda (#{r\ 1169}#)
|
|
(if (null? #{r\ 1169}#)
|
|
'()
|
|
(begin
|
|
(let ((#{a\ 1172}# (car #{r\ 1169}#)))
|
|
(if (eq? (car (cdr #{a\ 1172}#)) 'macro)
|
|
(cons #{a\ 1172}#
|
|
(#{macros-only-env\ 371}# (cdr #{r\ 1169}#)))
|
|
(#{macros-only-env\ 371}# (cdr #{r\ 1169}#))))))))
|
|
(#{lookup\ 373}#
|
|
(lambda (#{x\ 1173}# #{r\ 1174}# #{mod\ 1175}#)
|
|
(begin
|
|
(let ((#{t\ 1181}# (assq #{x\ 1173}# #{r\ 1174}#)))
|
|
(if #{t\ 1181}#
|
|
(cdr #{t\ 1181}#)
|
|
(if (symbol? #{x\ 1173}#)
|
|
(begin
|
|
(let ((#{t\ 1187}#
|
|
(#{get-global-definition-hook\ 297}#
|
|
#{x\ 1173}#
|
|
#{mod\ 1175}#)))
|
|
(if #{t\ 1187}# #{t\ 1187}# '(global))))
|
|
'(displaced-lexical)))))))
|
|
(#{global-extend\ 375}#
|
|
(lambda (#{type\ 1192}# #{sym\ 1193}# #{val\ 1194}#)
|
|
(#{put-global-definition-hook\ 295}#
|
|
#{sym\ 1193}#
|
|
#{type\ 1192}#
|
|
#{val\ 1194}#)))
|
|
(#{nonsymbol-id?\ 377}#
|
|
(lambda (#{x\ 1198}#)
|
|
(if (#{syntax-object?\ 345}# #{x\ 1198}#)
|
|
(symbol?
|
|
(#{syntax-object-expression\ 347}# #{x\ 1198}#))
|
|
#f)))
|
|
(#{id?\ 379}#
|
|
(lambda (#{x\ 1202}#)
|
|
(if (symbol? #{x\ 1202}#)
|
|
#t
|
|
(if (#{syntax-object?\ 345}# #{x\ 1202}#)
|
|
(symbol?
|
|
(#{syntax-object-expression\ 347}# #{x\ 1202}#))
|
|
#f))))
|
|
(#{id-sym-name&marks\ 382}#
|
|
(lambda (#{x\ 1209}# #{w\ 1210}#)
|
|
(if (#{syntax-object?\ 345}# #{x\ 1209}#)
|
|
(values
|
|
(#{syntax-object-expression\ 347}# #{x\ 1209}#)
|
|
(#{join-marks\ 429}#
|
|
(car #{w\ 1210}#)
|
|
(car (#{syntax-object-wrap\ 349}# #{x\ 1209}#))))
|
|
(values #{x\ 1209}# (car #{w\ 1210}#)))))
|
|
(#{gen-label\ 392}#
|
|
(lambda () (symbol->string (gensym "i"))))
|
|
(#{gen-labels\ 394}#
|
|
(lambda (#{ls\ 1216}#)
|
|
(if (null? #{ls\ 1216}#)
|
|
'()
|
|
(cons (#{gen-label\ 392}#)
|
|
(#{gen-labels\ 394}# (cdr #{ls\ 1216}#))))))
|
|
(#{make-ribcage\ 397}#
|
|
(lambda (#{symnames\ 1218}#
|
|
#{marks\ 1219}#
|
|
#{labels\ 1220}#)
|
|
(vector
|
|
'ribcage
|
|
#{symnames\ 1218}#
|
|
#{marks\ 1219}#
|
|
#{labels\ 1220}#)))
|
|
(#{ribcage-symnames\ 401}#
|
|
(lambda (#{x\ 1229}#) (vector-ref #{x\ 1229}# 1)))
|
|
(#{ribcage-marks\ 403}#
|
|
(lambda (#{x\ 1231}#) (vector-ref #{x\ 1231}# 2)))
|
|
(#{ribcage-labels\ 405}#
|
|
(lambda (#{x\ 1233}#) (vector-ref #{x\ 1233}# 3)))
|
|
(#{set-ribcage-symnames!\ 407}#
|
|
(lambda (#{x\ 1235}# #{update\ 1236}#)
|
|
(vector-set! #{x\ 1235}# 1 #{update\ 1236}#)))
|
|
(#{set-ribcage-marks!\ 409}#
|
|
(lambda (#{x\ 1239}# #{update\ 1240}#)
|
|
(vector-set! #{x\ 1239}# 2 #{update\ 1240}#)))
|
|
(#{set-ribcage-labels!\ 411}#
|
|
(lambda (#{x\ 1243}# #{update\ 1244}#)
|
|
(vector-set! #{x\ 1243}# 3 #{update\ 1244}#)))
|
|
(#{anti-mark\ 417}#
|
|
(lambda (#{w\ 1247}#)
|
|
(cons (cons #f (car #{w\ 1247}#))
|
|
(cons 'shift (cdr #{w\ 1247}#)))))
|
|
(#{extend-ribcage!\ 421}#
|
|
(lambda (#{ribcage\ 1253}# #{id\ 1254}# #{label\ 1255}#)
|
|
(begin
|
|
(#{set-ribcage-symnames!\ 407}#
|
|
#{ribcage\ 1253}#
|
|
(cons (#{syntax-object-expression\ 347}# #{id\ 1254}#)
|
|
(#{ribcage-symnames\ 401}# #{ribcage\ 1253}#)))
|
|
(#{set-ribcage-marks!\ 409}#
|
|
#{ribcage\ 1253}#
|
|
(cons (car (#{syntax-object-wrap\ 349}# #{id\ 1254}#))
|
|
(#{ribcage-marks\ 403}# #{ribcage\ 1253}#)))
|
|
(#{set-ribcage-labels!\ 411}#
|
|
#{ribcage\ 1253}#
|
|
(cons #{label\ 1255}#
|
|
(#{ribcage-labels\ 405}# #{ribcage\ 1253}#))))))
|
|
(#{make-binding-wrap\ 423}#
|
|
(lambda (#{ids\ 1260}# #{labels\ 1261}# #{w\ 1262}#)
|
|
(if (null? #{ids\ 1260}#)
|
|
#{w\ 1262}#
|
|
(cons (car #{w\ 1262}#)
|
|
(cons (begin
|
|
(let ((#{labelvec\ 1269}#
|
|
(list->vector #{labels\ 1261}#)))
|
|
(begin
|
|
(let ((#{n\ 1271}#
|
|
(vector-length #{labelvec\ 1269}#)))
|
|
(begin
|
|
(let ((#{symnamevec\ 1274}#
|
|
(make-vector #{n\ 1271}#))
|
|
(#{marksvec\ 1275}#
|
|
(make-vector #{n\ 1271}#)))
|
|
(begin
|
|
(letrec*
|
|
((#{f\ 1279}#
|
|
(lambda (#{ids\ 1280}#
|
|
#{i\ 1281}#)
|
|
(if (not (null? #{ids\ 1280}#))
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{id-sym-name&marks\ 382}#
|
|
(car #{ids\ 1280}#)
|
|
#{w\ 1262}#))
|
|
(lambda (#{symname\ 1282}#
|
|
#{marks\ 1283}#)
|
|
(begin
|
|
(vector-set!
|
|
#{symnamevec\ 1274}#
|
|
#{i\ 1281}#
|
|
#{symname\ 1282}#)
|
|
(vector-set!
|
|
#{marksvec\ 1275}#
|
|
#{i\ 1281}#
|
|
#{marks\ 1283}#)
|
|
(#{f\ 1279}#
|
|
(cdr #{ids\ 1280}#)
|
|
(#{fx+\ 282}#
|
|
#{i\ 1281}#
|
|
1)))))))))
|
|
(begin
|
|
(#{f\ 1279}# #{ids\ 1260}# 0)))
|
|
(#{make-ribcage\ 397}#
|
|
#{symnamevec\ 1274}#
|
|
#{marksvec\ 1275}#
|
|
#{labelvec\ 1269}#))))))))
|
|
(cdr #{w\ 1262}#))))))
|
|
(#{smart-append\ 425}#
|
|
(lambda (#{m1\ 1287}# #{m2\ 1288}#)
|
|
(if (null? #{m2\ 1288}#)
|
|
#{m1\ 1287}#
|
|
(append #{m1\ 1287}# #{m2\ 1288}#))))
|
|
(#{join-wraps\ 427}#
|
|
(lambda (#{w1\ 1291}# #{w2\ 1292}#)
|
|
(begin
|
|
(let ((#{m1\ 1297}# (car #{w1\ 1291}#))
|
|
(#{s1\ 1298}# (cdr #{w1\ 1291}#)))
|
|
(if (null? #{m1\ 1297}#)
|
|
(if (null? #{s1\ 1298}#)
|
|
#{w2\ 1292}#
|
|
(cons (car #{w2\ 1292}#)
|
|
(#{smart-append\ 425}#
|
|
#{s1\ 1298}#
|
|
(cdr #{w2\ 1292}#))))
|
|
(cons (#{smart-append\ 425}#
|
|
#{m1\ 1297}#
|
|
(car #{w2\ 1292}#))
|
|
(#{smart-append\ 425}#
|
|
#{s1\ 1298}#
|
|
(cdr #{w2\ 1292}#))))))))
|
|
(#{join-marks\ 429}#
|
|
(lambda (#{m1\ 1307}# #{m2\ 1308}#)
|
|
(#{smart-append\ 425}# #{m1\ 1307}# #{m2\ 1308}#)))
|
|
(#{same-marks?\ 431}#
|
|
(lambda (#{x\ 1311}# #{y\ 1312}#)
|
|
(begin
|
|
(let ((#{t\ 1317}# (eq? #{x\ 1311}# #{y\ 1312}#)))
|
|
(if #{t\ 1317}#
|
|
#{t\ 1317}#
|
|
(if (not (null? #{x\ 1311}#))
|
|
(if (not (null? #{y\ 1312}#))
|
|
(if (eq? (car #{x\ 1311}#) (car #{y\ 1312}#))
|
|
(#{same-marks?\ 431}#
|
|
(cdr #{x\ 1311}#)
|
|
(cdr #{y\ 1312}#))
|
|
#f)
|
|
#f)
|
|
#f))))))
|
|
(#{id-var-name\ 433}#
|
|
(lambda (#{id\ 1323}# #{w\ 1324}#)
|
|
(letrec*
|
|
((#{search\ 1329}#
|
|
(lambda (#{sym\ 1345}# #{subst\ 1346}# #{marks\ 1347}#)
|
|
(if (null? #{subst\ 1346}#)
|
|
(values #f #{marks\ 1347}#)
|
|
(begin
|
|
(let ((#{fst\ 1352}# (car #{subst\ 1346}#)))
|
|
(if (eq? #{fst\ 1352}# 'shift)
|
|
(#{search\ 1329}#
|
|
#{sym\ 1345}#
|
|
(cdr #{subst\ 1346}#)
|
|
(cdr #{marks\ 1347}#))
|
|
(begin
|
|
(let ((#{symnames\ 1354}#
|
|
(#{ribcage-symnames\ 401}#
|
|
#{fst\ 1352}#)))
|
|
(if (vector? #{symnames\ 1354}#)
|
|
(#{search-vector-rib\ 1333}#
|
|
#{sym\ 1345}#
|
|
#{subst\ 1346}#
|
|
#{marks\ 1347}#
|
|
#{symnames\ 1354}#
|
|
#{fst\ 1352}#)
|
|
(#{search-list-rib\ 1331}#
|
|
#{sym\ 1345}#
|
|
#{subst\ 1346}#
|
|
#{marks\ 1347}#
|
|
#{symnames\ 1354}#
|
|
#{fst\ 1352}#))))))))))
|
|
(#{search-list-rib\ 1331}#
|
|
(lambda (#{sym\ 1355}#
|
|
#{subst\ 1356}#
|
|
#{marks\ 1357}#
|
|
#{symnames\ 1358}#
|
|
#{ribcage\ 1359}#)
|
|
(letrec*
|
|
((#{f\ 1368}#
|
|
(lambda (#{symnames\ 1369}# #{i\ 1370}#)
|
|
(if (null? #{symnames\ 1369}#)
|
|
(#{search\ 1329}#
|
|
#{sym\ 1355}#
|
|
(cdr #{subst\ 1356}#)
|
|
#{marks\ 1357}#)
|
|
(if (if (eq? (car #{symnames\ 1369}#)
|
|
#{sym\ 1355}#)
|
|
(#{same-marks?\ 431}#
|
|
#{marks\ 1357}#
|
|
(list-ref
|
|
(#{ribcage-marks\ 403}#
|
|
#{ribcage\ 1359}#)
|
|
#{i\ 1370}#))
|
|
#f)
|
|
(values
|
|
(list-ref
|
|
(#{ribcage-labels\ 405}# #{ribcage\ 1359}#)
|
|
#{i\ 1370}#)
|
|
#{marks\ 1357}#)
|
|
(#{f\ 1368}#
|
|
(cdr #{symnames\ 1369}#)
|
|
(#{fx+\ 282}# #{i\ 1370}# 1)))))))
|
|
(begin (#{f\ 1368}# #{symnames\ 1358}# 0)))))
|
|
(#{search-vector-rib\ 1333}#
|
|
(lambda (#{sym\ 1378}#
|
|
#{subst\ 1379}#
|
|
#{marks\ 1380}#
|
|
#{symnames\ 1381}#
|
|
#{ribcage\ 1382}#)
|
|
(begin
|
|
(let ((#{n\ 1389}# (vector-length #{symnames\ 1381}#)))
|
|
(letrec*
|
|
((#{f\ 1392}#
|
|
(lambda (#{i\ 1393}#)
|
|
(if (#{fx=\ 286}# #{i\ 1393}# #{n\ 1389}#)
|
|
(#{search\ 1329}#
|
|
#{sym\ 1378}#
|
|
(cdr #{subst\ 1379}#)
|
|
#{marks\ 1380}#)
|
|
(if (if (eq? (vector-ref
|
|
#{symnames\ 1381}#
|
|
#{i\ 1393}#)
|
|
#{sym\ 1378}#)
|
|
(#{same-marks?\ 431}#
|
|
#{marks\ 1380}#
|
|
(vector-ref
|
|
(#{ribcage-marks\ 403}#
|
|
#{ribcage\ 1382}#)
|
|
#{i\ 1393}#))
|
|
#f)
|
|
(values
|
|
(vector-ref
|
|
(#{ribcage-labels\ 405}#
|
|
#{ribcage\ 1382}#)
|
|
#{i\ 1393}#)
|
|
#{marks\ 1380}#)
|
|
(#{f\ 1392}#
|
|
(#{fx+\ 282}# #{i\ 1393}# 1)))))))
|
|
(begin (#{f\ 1392}# 0))))))))
|
|
(begin
|
|
(if (symbol? #{id\ 1323}#)
|
|
(begin
|
|
(let ((#{t\ 1403}#
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{search\ 1329}#
|
|
#{id\ 1323}#
|
|
(cdr #{w\ 1324}#)
|
|
(car #{w\ 1324}#)))
|
|
(lambda (#{x\ 1407}# . #{ignore\ 1408}#)
|
|
#{x\ 1407}#))))
|
|
(if #{t\ 1403}# #{t\ 1403}# #{id\ 1323}#)))
|
|
(if (#{syntax-object?\ 345}# #{id\ 1323}#)
|
|
(begin
|
|
(let ((#{id\ 1416}#
|
|
(#{syntax-object-expression\ 347}#
|
|
#{id\ 1323}#))
|
|
(#{w1\ 1417}#
|
|
(#{syntax-object-wrap\ 349}# #{id\ 1323}#)))
|
|
(begin
|
|
(let ((#{marks\ 1419}#
|
|
(#{join-marks\ 429}#
|
|
(car #{w\ 1324}#)
|
|
(car #{w1\ 1417}#))))
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{search\ 1329}#
|
|
#{id\ 1416}#
|
|
(cdr #{w\ 1324}#)
|
|
#{marks\ 1419}#))
|
|
(lambda (#{new-id\ 1423}# #{marks\ 1424}#)
|
|
(begin
|
|
(let ((#{t\ 1429}# #{new-id\ 1423}#))
|
|
(if #{t\ 1429}#
|
|
#{t\ 1429}#
|
|
(begin
|
|
(let ((#{t\ 1432}#
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{search\ 1329}#
|
|
#{id\ 1416}#
|
|
(cdr #{w1\ 1417}#)
|
|
#{marks\ 1424}#))
|
|
(lambda (#{x\ 1435}#
|
|
.
|
|
#{ignore\ 1436}#)
|
|
#{x\ 1435}#))))
|
|
(if #{t\ 1432}#
|
|
#{t\ 1432}#
|
|
#{id\ 1416}#))))))))))))
|
|
(syntax-violation
|
|
'id-var-name
|
|
"invalid id"
|
|
#{id\ 1323}#)))))))
|
|
(#{free-id=?\ 435}#
|
|
(lambda (#{i\ 1441}# #{j\ 1442}#)
|
|
(if (eq? (begin
|
|
(let ((#{x\ 1448}# #{i\ 1441}#))
|
|
(if (#{syntax-object?\ 345}# #{x\ 1448}#)
|
|
(#{syntax-object-expression\ 347}# #{x\ 1448}#)
|
|
#{x\ 1448}#)))
|
|
(begin
|
|
(let ((#{x\ 1451}# #{j\ 1442}#))
|
|
(if (#{syntax-object?\ 345}# #{x\ 1451}#)
|
|
(#{syntax-object-expression\ 347}# #{x\ 1451}#)
|
|
#{x\ 1451}#))))
|
|
(eq? (#{id-var-name\ 433}# #{i\ 1441}# '(()))
|
|
(#{id-var-name\ 433}# #{j\ 1442}# '(())))
|
|
#f)))
|
|
(#{bound-id=?\ 437}#
|
|
(lambda (#{i\ 1455}# #{j\ 1456}#)
|
|
(if (if (#{syntax-object?\ 345}# #{i\ 1455}#)
|
|
(#{syntax-object?\ 345}# #{j\ 1456}#)
|
|
#f)
|
|
(if (eq? (#{syntax-object-expression\ 347}# #{i\ 1455}#)
|
|
(#{syntax-object-expression\ 347}# #{j\ 1456}#))
|
|
(#{same-marks?\ 431}#
|
|
(car (#{syntax-object-wrap\ 349}# #{i\ 1455}#))
|
|
(car (#{syntax-object-wrap\ 349}# #{j\ 1456}#)))
|
|
#f)
|
|
(eq? #{i\ 1455}# #{j\ 1456}#))))
|
|
(#{valid-bound-ids?\ 439}#
|
|
(lambda (#{ids\ 1465}#)
|
|
(if (letrec*
|
|
((#{all-ids?\ 1470}#
|
|
(lambda (#{ids\ 1471}#)
|
|
(begin
|
|
(let ((#{t\ 1474}# (null? #{ids\ 1471}#)))
|
|
(if #{t\ 1474}#
|
|
#{t\ 1474}#
|
|
(if (#{id?\ 379}# (car #{ids\ 1471}#))
|
|
(#{all-ids?\ 1470}# (cdr #{ids\ 1471}#))
|
|
#f)))))))
|
|
(begin (#{all-ids?\ 1470}# #{ids\ 1465}#)))
|
|
(#{distinct-bound-ids?\ 441}# #{ids\ 1465}#)
|
|
#f)))
|
|
(#{distinct-bound-ids?\ 441}#
|
|
(lambda (#{ids\ 1479}#)
|
|
(letrec*
|
|
((#{distinct?\ 1483}#
|
|
(lambda (#{ids\ 1484}#)
|
|
(begin
|
|
(let ((#{t\ 1487}# (null? #{ids\ 1484}#)))
|
|
(if #{t\ 1487}#
|
|
#{t\ 1487}#
|
|
(if (not (#{bound-id-member?\ 443}#
|
|
(car #{ids\ 1484}#)
|
|
(cdr #{ids\ 1484}#)))
|
|
(#{distinct?\ 1483}# (cdr #{ids\ 1484}#))
|
|
#f)))))))
|
|
(begin (#{distinct?\ 1483}# #{ids\ 1479}#)))))
|
|
(#{bound-id-member?\ 443}#
|
|
(lambda (#{x\ 1491}# #{list\ 1492}#)
|
|
(if (not (null? #{list\ 1492}#))
|
|
(begin
|
|
(let ((#{t\ 1499}#
|
|
(#{bound-id=?\ 437}#
|
|
#{x\ 1491}#
|
|
(car #{list\ 1492}#))))
|
|
(if #{t\ 1499}#
|
|
#{t\ 1499}#
|
|
(#{bound-id-member?\ 443}#
|
|
#{x\ 1491}#
|
|
(cdr #{list\ 1492}#)))))
|
|
#f)))
|
|
(#{wrap\ 445}#
|
|
(lambda (#{x\ 1501}# #{w\ 1502}# #{defmod\ 1503}#)
|
|
(if (if (null? (car #{w\ 1502}#))
|
|
(null? (cdr #{w\ 1502}#))
|
|
#f)
|
|
#{x\ 1501}#
|
|
(if (#{syntax-object?\ 345}# #{x\ 1501}#)
|
|
(#{make-syntax-object\ 343}#
|
|
(#{syntax-object-expression\ 347}# #{x\ 1501}#)
|
|
(#{join-wraps\ 427}#
|
|
#{w\ 1502}#
|
|
(#{syntax-object-wrap\ 349}# #{x\ 1501}#))
|
|
(#{syntax-object-module\ 351}# #{x\ 1501}#))
|
|
(if (null? #{x\ 1501}#)
|
|
#{x\ 1501}#
|
|
(#{make-syntax-object\ 343}#
|
|
#{x\ 1501}#
|
|
#{w\ 1502}#
|
|
#{defmod\ 1503}#))))))
|
|
(#{source-wrap\ 447}#
|
|
(lambda (#{x\ 1518}#
|
|
#{w\ 1519}#
|
|
#{s\ 1520}#
|
|
#{defmod\ 1521}#)
|
|
(#{wrap\ 445}#
|
|
(#{decorate-source\ 299}#
|
|
#{x\ 1518}#
|
|
#{s\ 1520}#)
|
|
#{w\ 1519}#
|
|
#{defmod\ 1521}#)))
|
|
(#{chi-sequence\ 449}#
|
|
(lambda (#{body\ 1526}#
|
|
#{r\ 1527}#
|
|
#{w\ 1528}#
|
|
#{s\ 1529}#
|
|
#{mod\ 1530}#)
|
|
(#{build-sequence\ 333}#
|
|
#{s\ 1529}#
|
|
(letrec*
|
|
((#{dobody\ 1541}#
|
|
(lambda (#{body\ 1542}#
|
|
#{r\ 1543}#
|
|
#{w\ 1544}#
|
|
#{mod\ 1545}#)
|
|
(if (null? #{body\ 1542}#)
|
|
'()
|
|
(begin
|
|
(let ((#{first\ 1547}#
|
|
(#{chi\ 461}#
|
|
(car #{body\ 1542}#)
|
|
#{r\ 1543}#
|
|
#{w\ 1544}#
|
|
#{mod\ 1545}#)))
|
|
(cons #{first\ 1547}#
|
|
(#{dobody\ 1541}#
|
|
(cdr #{body\ 1542}#)
|
|
#{r\ 1543}#
|
|
#{w\ 1544}#
|
|
#{mod\ 1545}#))))))))
|
|
(begin
|
|
(#{dobody\ 1541}#
|
|
#{body\ 1526}#
|
|
#{r\ 1527}#
|
|
#{w\ 1528}#
|
|
#{mod\ 1530}#))))))
|
|
(#{chi-top-sequence\ 451}#
|
|
(lambda (#{body\ 1548}#
|
|
#{r\ 1549}#
|
|
#{w\ 1550}#
|
|
#{s\ 1551}#
|
|
#{m\ 1552}#
|
|
#{esew\ 1553}#
|
|
#{mod\ 1554}#)
|
|
(#{build-sequence\ 333}#
|
|
#{s\ 1551}#
|
|
(letrec*
|
|
((#{dobody\ 1570}#
|
|
(lambda (#{body\ 1571}#
|
|
#{r\ 1572}#
|
|
#{w\ 1573}#
|
|
#{m\ 1574}#
|
|
#{esew\ 1575}#
|
|
#{mod\ 1576}#
|
|
#{out\ 1577}#)
|
|
(if (null? #{body\ 1571}#)
|
|
(reverse #{out\ 1577}#)
|
|
(#{dobody\ 1570}#
|
|
(cdr #{body\ 1571}#)
|
|
#{r\ 1572}#
|
|
#{w\ 1573}#
|
|
#{m\ 1574}#
|
|
#{esew\ 1575}#
|
|
#{mod\ 1576}#
|
|
(cons (#{chi-top\ 459}#
|
|
(car #{body\ 1571}#)
|
|
#{r\ 1572}#
|
|
#{w\ 1573}#
|
|
#{m\ 1574}#
|
|
#{esew\ 1575}#
|
|
#{mod\ 1576}#)
|
|
#{out\ 1577}#))))))
|
|
(begin
|
|
(#{dobody\ 1570}#
|
|
#{body\ 1548}#
|
|
#{r\ 1549}#
|
|
#{w\ 1550}#
|
|
#{m\ 1552}#
|
|
#{esew\ 1553}#
|
|
#{mod\ 1554}#
|
|
'()))))))
|
|
(#{chi-install-global\ 453}#
|
|
(lambda (#{name\ 1578}# #{e\ 1579}#)
|
|
(#{build-global-definition\ 321}#
|
|
#f
|
|
#{name\ 1578}#
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-primref\ 329}#
|
|
#f
|
|
'make-syntax-transformer)
|
|
(list (#{build-data\ 331}# #f #{name\ 1578}#)
|
|
(#{build-data\ 331}# #f 'macro)
|
|
#{e\ 1579}#)))))
|
|
(#{chi-when-list\ 455}#
|
|
(lambda (#{e\ 1587}# #{when-list\ 1588}# #{w\ 1589}#)
|
|
(letrec*
|
|
((#{f\ 1596}#
|
|
(lambda (#{when-list\ 1597}# #{situations\ 1598}#)
|
|
(if (null? #{when-list\ 1597}#)
|
|
#{situations\ 1598}#
|
|
(#{f\ 1596}#
|
|
(cdr #{when-list\ 1597}#)
|
|
(cons (begin
|
|
(let ((#{x\ 1600}# (car #{when-list\ 1597}#)))
|
|
(if (#{free-id=?\ 435}#
|
|
#{x\ 1600}#
|
|
'#(syntax-object
|
|
compile
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i1599"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f when-list situations)
|
|
#((top) (top) (top))
|
|
#("i1593" "i1594" "i1595"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(e when-list w)
|
|
#((top) (top) (top))
|
|
#("i1590" "i1591" "i1592"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile)))
|
|
'compile
|
|
(if (#{free-id=?\ 435}#
|
|
#{x\ 1600}#
|
|
'#(syntax-object
|
|
load
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i1599"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f when-list situations)
|
|
#((top) (top) (top))
|
|
#("i1593" "i1594" "i1595"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(e when-list w)
|
|
#((top) (top) (top))
|
|
#("i1590" "i1591" "i1592"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile)))
|
|
'load
|
|
(if (#{free-id=?\ 435}#
|
|
#{x\ 1600}#
|
|
'#(syntax-object
|
|
eval
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i1599"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f when-list situations)
|
|
#((top) (top) (top))
|
|
#("i1593" "i1594" "i1595"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(e when-list w)
|
|
#((top) (top) (top))
|
|
#("i1590" "i1591" "i1592"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile)))
|
|
'eval
|
|
(if (#{free-id=?\ 435}#
|
|
#{x\ 1600}#
|
|
'#(syntax-object
|
|
expand
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i1599"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f when-list situations)
|
|
#((top) (top) (top))
|
|
#("i1593" "i1594" "i1595"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(e when-list w)
|
|
#((top) (top) (top))
|
|
#("i1590" "i1591" "i1592"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile)))
|
|
'expand
|
|
(syntax-violation
|
|
'eval-when
|
|
"invalid situation"
|
|
#{e\ 1587}#
|
|
(#{wrap\ 445}#
|
|
#{x\ 1600}#
|
|
#{w\ 1589}#
|
|
#f))))))))
|
|
#{situations\ 1598}#))))))
|
|
(begin (#{f\ 1596}# #{when-list\ 1588}# '())))))
|
|
(#{syntax-type\ 457}#
|
|
(lambda (#{e\ 1610}#
|
|
#{r\ 1611}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{rib\ 1614}#
|
|
#{mod\ 1615}#
|
|
#{for-car?\ 1616}#)
|
|
(if (symbol? #{e\ 1610}#)
|
|
(begin
|
|
(let ((#{n\ 1628}#
|
|
(#{id-var-name\ 433}# #{e\ 1610}# #{w\ 1612}#)))
|
|
(begin
|
|
(let ((#{b\ 1630}#
|
|
(#{lookup\ 373}#
|
|
#{n\ 1628}#
|
|
#{r\ 1611}#
|
|
#{mod\ 1615}#)))
|
|
(begin
|
|
(let ((#{type\ 1632}# (car #{b\ 1630}#)))
|
|
(if (eqv? #{type\ 1632}# 'lexical)
|
|
(values
|
|
#{type\ 1632}#
|
|
(cdr #{b\ 1630}#)
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{type\ 1632}# 'global)
|
|
(values
|
|
#{type\ 1632}#
|
|
#{n\ 1628}#
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{type\ 1632}# 'macro)
|
|
(if #{for-car?\ 1616}#
|
|
(values
|
|
#{type\ 1632}#
|
|
(cdr #{b\ 1630}#)
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(#{syntax-type\ 457}#
|
|
(#{chi-macro\ 467}#
|
|
(cdr #{b\ 1630}#)
|
|
#{e\ 1610}#
|
|
#{r\ 1611}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{rib\ 1614}#
|
|
#{mod\ 1615}#)
|
|
#{r\ 1611}#
|
|
'(())
|
|
#{s\ 1613}#
|
|
#{rib\ 1614}#
|
|
#{mod\ 1615}#
|
|
#f))
|
|
(values
|
|
#{type\ 1632}#
|
|
(cdr #{b\ 1630}#)
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#))))))))))
|
|
(if (pair? #{e\ 1610}#)
|
|
(begin
|
|
(let ((#{first\ 1646}# (car #{e\ 1610}#)))
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{syntax-type\ 457}#
|
|
#{first\ 1646}#
|
|
#{r\ 1611}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{rib\ 1614}#
|
|
#{mod\ 1615}#
|
|
#t))
|
|
(lambda (#{ftype\ 1647}#
|
|
#{fval\ 1648}#
|
|
#{fe\ 1649}#
|
|
#{fw\ 1650}#
|
|
#{fs\ 1651}#
|
|
#{fmod\ 1652}#)
|
|
(if (eqv? #{ftype\ 1647}# 'lexical)
|
|
(values
|
|
'lexical-call
|
|
#{fval\ 1648}#
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{ftype\ 1647}# 'global)
|
|
(values
|
|
'global-call
|
|
(#{make-syntax-object\ 343}#
|
|
#{fval\ 1648}#
|
|
#{w\ 1612}#
|
|
#{fmod\ 1652}#)
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{ftype\ 1647}# 'macro)
|
|
(#{syntax-type\ 457}#
|
|
(#{chi-macro\ 467}#
|
|
#{fval\ 1648}#
|
|
#{e\ 1610}#
|
|
#{r\ 1611}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{rib\ 1614}#
|
|
#{mod\ 1615}#)
|
|
#{r\ 1611}#
|
|
'(())
|
|
#{s\ 1613}#
|
|
#{rib\ 1614}#
|
|
#{mod\ 1615}#
|
|
#{for-car?\ 1616}#)
|
|
(if (eqv? #{ftype\ 1647}# 'module-ref)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{fval\ 1648}#
|
|
#{e\ 1610}#
|
|
#{r\ 1611}#
|
|
#{w\ 1612}#))
|
|
(lambda (#{e\ 1664}#
|
|
#{r\ 1665}#
|
|
#{w\ 1666}#
|
|
#{s\ 1667}#
|
|
#{mod\ 1668}#)
|
|
(#{syntax-type\ 457}#
|
|
#{e\ 1664}#
|
|
#{r\ 1665}#
|
|
#{w\ 1666}#
|
|
#{s\ 1667}#
|
|
#{rib\ 1614}#
|
|
#{mod\ 1668}#
|
|
#{for-car?\ 1616}#)))
|
|
(if (eqv? #{ftype\ 1647}# 'core)
|
|
(values
|
|
'core-form
|
|
#{fval\ 1648}#
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{ftype\ 1647}# 'local-syntax)
|
|
(values
|
|
'local-syntax-form
|
|
#{fval\ 1648}#
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{ftype\ 1647}# 'begin)
|
|
(values
|
|
'begin-form
|
|
#f
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{ftype\ 1647}# 'eval-when)
|
|
(values
|
|
'eval-when-form
|
|
#f
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(if (eqv? #{ftype\ 1647}# 'define)
|
|
(let ((#{tmp\ 1679}# #{e\ 1610}#))
|
|
(let ((#{tmp\ 1680}#
|
|
($sc-dispatch
|
|
#{tmp\ 1679}#
|
|
'(_ any any))))
|
|
(if (if #{tmp\ 1680}#
|
|
(@apply
|
|
(lambda (#{name\ 1683}#
|
|
#{val\ 1684}#)
|
|
(#{id?\ 379}#
|
|
#{name\ 1683}#))
|
|
#{tmp\ 1680}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{name\ 1687}#
|
|
#{val\ 1688}#)
|
|
(values
|
|
'define-form
|
|
#{name\ 1687}#
|
|
#{val\ 1688}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#))
|
|
#{tmp\ 1680}#)
|
|
(let ((#{tmp\ 1689}#
|
|
($sc-dispatch
|
|
#{tmp\ 1679}#
|
|
'(_ (any . any)
|
|
any
|
|
.
|
|
each-any))))
|
|
(if (if #{tmp\ 1689}#
|
|
(@apply
|
|
(lambda (#{name\ 1694}#
|
|
#{args\ 1695}#
|
|
#{e1\ 1696}#
|
|
#{e2\ 1697}#)
|
|
(if (#{id?\ 379}#
|
|
#{name\ 1694}#)
|
|
(#{valid-bound-ids?\ 439}#
|
|
(#{lambda-var-list\ 491}#
|
|
#{args\ 1695}#))
|
|
#f))
|
|
#{tmp\ 1689}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{name\ 1704}#
|
|
#{args\ 1705}#
|
|
#{e1\ 1706}#
|
|
#{e2\ 1707}#)
|
|
(values
|
|
'define-form
|
|
(#{wrap\ 445}#
|
|
#{name\ 1704}#
|
|
#{w\ 1612}#
|
|
#{mod\ 1615}#)
|
|
(#{decorate-source\ 299}#
|
|
(cons '#(syntax-object
|
|
lambda
|
|
((top)
|
|
#(ribcage
|
|
#(name
|
|
args
|
|
e1
|
|
e2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1700"
|
|
"i1701"
|
|
"i1702"
|
|
"i1703"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(ftype
|
|
fval
|
|
fe
|
|
fw
|
|
fs
|
|
fmod)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1653"
|
|
"i1654"
|
|
"i1655"
|
|
"i1656"
|
|
"i1657"
|
|
"i1658"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(first)
|
|
#((top))
|
|
#("i1645"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(e
|
|
r
|
|
w
|
|
s
|
|
rib
|
|
mod
|
|
for-car?)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1617"
|
|
"i1618"
|
|
"i1619"
|
|
"i1620"
|
|
"i1621"
|
|
"i1622"
|
|
"i1623"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene
|
|
guile))
|
|
(#{wrap\ 445}#
|
|
(cons #{args\ 1705}#
|
|
(cons #{e1\ 1706}#
|
|
#{e2\ 1707}#))
|
|
#{w\ 1612}#
|
|
#{mod\ 1615}#))
|
|
#{s\ 1613}#)
|
|
'(())
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#))
|
|
#{tmp\ 1689}#)
|
|
(let ((#{tmp\ 1710}#
|
|
($sc-dispatch
|
|
#{tmp\ 1679}#
|
|
'(_ any))))
|
|
(if (if #{tmp\ 1710}#
|
|
(@apply
|
|
(lambda (#{name\ 1712}#)
|
|
(#{id?\ 379}#
|
|
#{name\ 1712}#))
|
|
#{tmp\ 1710}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{name\ 1714}#)
|
|
(values
|
|
'define-form
|
|
(#{wrap\ 445}#
|
|
#{name\ 1714}#
|
|
#{w\ 1612}#
|
|
#{mod\ 1615}#)
|
|
'(#(syntax-object
|
|
if
|
|
((top)
|
|
#(ribcage
|
|
#(name)
|
|
#((top))
|
|
#("i1713"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(ftype
|
|
fval
|
|
fe
|
|
fw
|
|
fs
|
|
fmod)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1653"
|
|
"i1654"
|
|
"i1655"
|
|
"i1656"
|
|
"i1657"
|
|
"i1658"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(first)
|
|
#((top))
|
|
#("i1645"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(e
|
|
r
|
|
w
|
|
s
|
|
rib
|
|
mod
|
|
for-car?)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1617"
|
|
"i1618"
|
|
"i1619"
|
|
"i1620"
|
|
"i1621"
|
|
"i1622"
|
|
"i1623"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene
|
|
guile))
|
|
#(syntax-object
|
|
#f
|
|
((top)
|
|
#(ribcage
|
|
#(name)
|
|
#((top))
|
|
#("i1713"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(ftype
|
|
fval
|
|
fe
|
|
fw
|
|
fs
|
|
fmod)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1653"
|
|
"i1654"
|
|
"i1655"
|
|
"i1656"
|
|
"i1657"
|
|
"i1658"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(first)
|
|
#((top))
|
|
#("i1645"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(e
|
|
r
|
|
w
|
|
s
|
|
rib
|
|
mod
|
|
for-car?)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1617"
|
|
"i1618"
|
|
"i1619"
|
|
"i1620"
|
|
"i1621"
|
|
"i1622"
|
|
"i1623"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene
|
|
guile))
|
|
#(syntax-object
|
|
#f
|
|
((top)
|
|
#(ribcage
|
|
#(name)
|
|
#((top))
|
|
#("i1713"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(ftype
|
|
fval
|
|
fe
|
|
fw
|
|
fs
|
|
fmod)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1653"
|
|
"i1654"
|
|
"i1655"
|
|
"i1656"
|
|
"i1657"
|
|
"i1658"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(first)
|
|
#((top))
|
|
#("i1645"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(e
|
|
r
|
|
w
|
|
s
|
|
rib
|
|
mod
|
|
for-car?)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i1617"
|
|
"i1618"
|
|
"i1619"
|
|
"i1620"
|
|
"i1621"
|
|
"i1622"
|
|
"i1623"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene
|
|
guile)))
|
|
'(())
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#))
|
|
#{tmp\ 1710}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 1679}#))))))))
|
|
(if (eqv? #{ftype\ 1647}#
|
|
'define-syntax)
|
|
(let ((#{tmp\ 1717}# #{e\ 1610}#))
|
|
(let ((#{tmp\ 1718}#
|
|
($sc-dispatch
|
|
#{tmp\ 1717}#
|
|
'(_ any any))))
|
|
(if (if #{tmp\ 1718}#
|
|
(@apply
|
|
(lambda (#{name\ 1721}#
|
|
#{val\ 1722}#)
|
|
(#{id?\ 379}#
|
|
#{name\ 1721}#))
|
|
#{tmp\ 1718}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{name\ 1725}#
|
|
#{val\ 1726}#)
|
|
(values
|
|
'define-syntax-form
|
|
#{name\ 1725}#
|
|
#{val\ 1726}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#))
|
|
#{tmp\ 1718}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 1717}#))))
|
|
(values
|
|
'call
|
|
#f
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)))))))))))))))
|
|
(if (#{syntax-object?\ 345}# #{e\ 1610}#)
|
|
(#{syntax-type\ 457}#
|
|
(#{syntax-object-expression\ 347}# #{e\ 1610}#)
|
|
#{r\ 1611}#
|
|
(#{join-wraps\ 427}#
|
|
#{w\ 1612}#
|
|
(#{syntax-object-wrap\ 349}# #{e\ 1610}#))
|
|
(begin
|
|
(let ((#{t\ 1732}#
|
|
(#{source-annotation\ 360}# #{e\ 1610}#)))
|
|
(if #{t\ 1732}# #{t\ 1732}# #{s\ 1613}#)))
|
|
#{rib\ 1614}#
|
|
(begin
|
|
(let ((#{t\ 1736}#
|
|
(#{syntax-object-module\ 351}# #{e\ 1610}#)))
|
|
(if #{t\ 1736}# #{t\ 1736}# #{mod\ 1615}#)))
|
|
#{for-car?\ 1616}#)
|
|
(if (self-evaluating? #{e\ 1610}#)
|
|
(values
|
|
'constant
|
|
#f
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)
|
|
(values
|
|
'other
|
|
#f
|
|
#{e\ 1610}#
|
|
#{w\ 1612}#
|
|
#{s\ 1613}#
|
|
#{mod\ 1615}#)))))))
|
|
(#{chi-top\ 459}#
|
|
(lambda (#{e\ 1741}#
|
|
#{r\ 1742}#
|
|
#{w\ 1743}#
|
|
#{m\ 1744}#
|
|
#{esew\ 1745}#
|
|
#{mod\ 1746}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{syntax-type\ 457}#
|
|
#{e\ 1741}#
|
|
#{r\ 1742}#
|
|
#{w\ 1743}#
|
|
(#{source-annotation\ 360}# #{e\ 1741}#)
|
|
#f
|
|
#{mod\ 1746}#
|
|
#f))
|
|
(lambda (#{type\ 1767}#
|
|
#{value\ 1768}#
|
|
#{e\ 1769}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
#{mod\ 1772}#)
|
|
(if (eqv? #{type\ 1767}# 'begin-form)
|
|
(let ((#{tmp\ 1780}# #{e\ 1769}#))
|
|
(let ((#{tmp\ 1781}# ($sc-dispatch #{tmp\ 1780}# '(_))))
|
|
(if #{tmp\ 1781}#
|
|
(@apply
|
|
(lambda () (#{chi-void\ 475}#))
|
|
#{tmp\ 1781}#)
|
|
(let ((#{tmp\ 1782}#
|
|
($sc-dispatch
|
|
#{tmp\ 1780}#
|
|
'(_ any . each-any))))
|
|
(if #{tmp\ 1782}#
|
|
(@apply
|
|
(lambda (#{e1\ 1785}# #{e2\ 1786}#)
|
|
(#{chi-top-sequence\ 451}#
|
|
(cons #{e1\ 1785}# #{e2\ 1786}#)
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
#{m\ 1744}#
|
|
#{esew\ 1745}#
|
|
#{mod\ 1772}#))
|
|
#{tmp\ 1782}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 1780}#))))))
|
|
(if (eqv? #{type\ 1767}# 'local-syntax-form)
|
|
(#{chi-local-syntax\ 471}#
|
|
#{value\ 1768}#
|
|
#{e\ 1769}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
#{mod\ 1772}#
|
|
(lambda (#{body\ 1789}#
|
|
#{r\ 1790}#
|
|
#{w\ 1791}#
|
|
#{s\ 1792}#
|
|
#{mod\ 1793}#)
|
|
(#{chi-top-sequence\ 451}#
|
|
#{body\ 1789}#
|
|
#{r\ 1790}#
|
|
#{w\ 1791}#
|
|
#{s\ 1792}#
|
|
#{m\ 1744}#
|
|
#{esew\ 1745}#
|
|
#{mod\ 1793}#)))
|
|
(if (eqv? #{type\ 1767}# 'eval-when-form)
|
|
(let ((#{tmp\ 1800}# #{e\ 1769}#))
|
|
(let ((#{tmp\ 1801}#
|
|
($sc-dispatch
|
|
#{tmp\ 1800}#
|
|
'(_ each-any any . each-any))))
|
|
(if #{tmp\ 1801}#
|
|
(@apply
|
|
(lambda (#{x\ 1805}# #{e1\ 1806}# #{e2\ 1807}#)
|
|
(begin
|
|
(let ((#{when-list\ 1810}#
|
|
(#{chi-when-list\ 455}#
|
|
#{e\ 1769}#
|
|
#{x\ 1805}#
|
|
#{w\ 1770}#))
|
|
(#{body\ 1811}#
|
|
(cons #{e1\ 1806}# #{e2\ 1807}#)))
|
|
(if (eq? #{m\ 1744}# 'e)
|
|
(if (memq 'eval #{when-list\ 1810}#)
|
|
(#{chi-top-sequence\ 451}#
|
|
#{body\ 1811}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
(if (memq 'expand
|
|
#{when-list\ 1810}#)
|
|
'c&e
|
|
'e)
|
|
'(eval)
|
|
#{mod\ 1772}#)
|
|
(begin
|
|
(if (memq 'expand
|
|
#{when-list\ 1810}#)
|
|
(#{top-level-eval-hook\ 290}#
|
|
(#{chi-top-sequence\ 451}#
|
|
#{body\ 1811}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
'e
|
|
'(eval)
|
|
#{mod\ 1772}#)
|
|
#{mod\ 1772}#))
|
|
(#{chi-void\ 475}#)))
|
|
(if (memq 'load #{when-list\ 1810}#)
|
|
(if (begin
|
|
(let ((#{t\ 1820}#
|
|
(memq 'compile
|
|
#{when-list\ 1810}#)))
|
|
(if #{t\ 1820}#
|
|
#{t\ 1820}#
|
|
(begin
|
|
(let ((#{t\ 1823}#
|
|
(memq 'expand
|
|
#{when-list\ 1810}#)))
|
|
(if #{t\ 1823}#
|
|
#{t\ 1823}#
|
|
(if (eq? #{m\ 1744}#
|
|
'c&e)
|
|
(memq 'eval
|
|
#{when-list\ 1810}#)
|
|
#f)))))))
|
|
(#{chi-top-sequence\ 451}#
|
|
#{body\ 1811}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
'c&e
|
|
'(compile load)
|
|
#{mod\ 1772}#)
|
|
(if (if (eq? #{m\ 1744}# 'c)
|
|
#t
|
|
(eq? #{m\ 1744}# 'c&e))
|
|
(#{chi-top-sequence\ 451}#
|
|
#{body\ 1811}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
'c
|
|
'(load)
|
|
#{mod\ 1772}#)
|
|
(#{chi-void\ 475}#)))
|
|
(if (begin
|
|
(let ((#{t\ 1831}#
|
|
(memq 'compile
|
|
#{when-list\ 1810}#)))
|
|
(if #{t\ 1831}#
|
|
#{t\ 1831}#
|
|
(begin
|
|
(let ((#{t\ 1834}#
|
|
(memq 'expand
|
|
#{when-list\ 1810}#)))
|
|
(if #{t\ 1834}#
|
|
#{t\ 1834}#
|
|
(if (eq? #{m\ 1744}#
|
|
'c&e)
|
|
(memq 'eval
|
|
#{when-list\ 1810}#)
|
|
#f)))))))
|
|
(begin
|
|
(#{top-level-eval-hook\ 290}#
|
|
(#{chi-top-sequence\ 451}#
|
|
#{body\ 1811}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
'e
|
|
'(eval)
|
|
#{mod\ 1772}#)
|
|
#{mod\ 1772}#)
|
|
(#{chi-void\ 475}#))
|
|
(#{chi-void\ 475}#)))))))
|
|
#{tmp\ 1801}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 1800}#))))
|
|
(if (eqv? #{type\ 1767}# 'define-syntax-form)
|
|
(begin
|
|
(let ((#{n\ 1842}#
|
|
(#{id-var-name\ 433}#
|
|
#{value\ 1768}#
|
|
#{w\ 1770}#))
|
|
(#{r\ 1843}#
|
|
(#{macros-only-env\ 371}# #{r\ 1742}#)))
|
|
(if (eqv? #{m\ 1744}# 'c)
|
|
(if (memq 'compile #{esew\ 1745}#)
|
|
(begin
|
|
(let ((#{e\ 1846}#
|
|
(#{chi-install-global\ 453}#
|
|
#{n\ 1842}#
|
|
(#{chi\ 461}#
|
|
#{e\ 1769}#
|
|
#{r\ 1843}#
|
|
#{w\ 1770}#
|
|
#{mod\ 1772}#))))
|
|
(begin
|
|
(#{top-level-eval-hook\ 290}#
|
|
#{e\ 1846}#
|
|
#{mod\ 1772}#)
|
|
(if (memq 'load #{esew\ 1745}#)
|
|
#{e\ 1846}#
|
|
(#{chi-void\ 475}#)))))
|
|
(if (memq 'load #{esew\ 1745}#)
|
|
(#{chi-install-global\ 453}#
|
|
#{n\ 1842}#
|
|
(#{chi\ 461}#
|
|
#{e\ 1769}#
|
|
#{r\ 1843}#
|
|
#{w\ 1770}#
|
|
#{mod\ 1772}#))
|
|
(#{chi-void\ 475}#)))
|
|
(if (eqv? #{m\ 1744}# 'c&e)
|
|
(begin
|
|
(let ((#{e\ 1849}#
|
|
(#{chi-install-global\ 453}#
|
|
#{n\ 1842}#
|
|
(#{chi\ 461}#
|
|
#{e\ 1769}#
|
|
#{r\ 1843}#
|
|
#{w\ 1770}#
|
|
#{mod\ 1772}#))))
|
|
(begin
|
|
(#{top-level-eval-hook\ 290}#
|
|
#{e\ 1849}#
|
|
#{mod\ 1772}#)
|
|
#{e\ 1849}#)))
|
|
(begin
|
|
(if (memq 'eval #{esew\ 1745}#)
|
|
(#{top-level-eval-hook\ 290}#
|
|
(#{chi-install-global\ 453}#
|
|
#{n\ 1842}#
|
|
(#{chi\ 461}#
|
|
#{e\ 1769}#
|
|
#{r\ 1843}#
|
|
#{w\ 1770}#
|
|
#{mod\ 1772}#))
|
|
#{mod\ 1772}#))
|
|
(#{chi-void\ 475}#))))))
|
|
(if (eqv? #{type\ 1767}# 'define-form)
|
|
(begin
|
|
(let ((#{n\ 1854}#
|
|
(#{id-var-name\ 433}#
|
|
#{value\ 1768}#
|
|
#{w\ 1770}#)))
|
|
(begin
|
|
(let ((#{type\ 1856}#
|
|
(car (#{lookup\ 373}#
|
|
#{n\ 1854}#
|
|
#{r\ 1742}#
|
|
#{mod\ 1772}#))))
|
|
(if (if (eqv? #{type\ 1856}# 'global)
|
|
#t
|
|
(if (eqv? #{type\ 1856}# 'core)
|
|
#t
|
|
(if (eqv? #{type\ 1856}# 'macro)
|
|
#t
|
|
(eqv? #{type\ 1856}#
|
|
'module-ref))))
|
|
(begin
|
|
(if (if (if (eq? #{m\ 1744}# 'c)
|
|
#t
|
|
(eq? #{m\ 1744}# 'c&e))
|
|
(if (not (module-local-variable
|
|
(current-module)
|
|
#{n\ 1854}#))
|
|
(current-module)
|
|
#f)
|
|
#f)
|
|
(begin
|
|
(let ((#{old\ 1863}#
|
|
(module-variable
|
|
(current-module)
|
|
#{n\ 1854}#)))
|
|
(if (if (variable? #{old\ 1863}#)
|
|
(variable-bound?
|
|
#{old\ 1863}#)
|
|
#f)
|
|
(module-define!
|
|
(current-module)
|
|
#{n\ 1854}#
|
|
(variable-ref #{old\ 1863}#))
|
|
(module-add!
|
|
(current-module)
|
|
#{n\ 1854}#
|
|
(make-undefined-variable))))))
|
|
(begin
|
|
(let ((#{x\ 1868}#
|
|
(#{build-global-definition\ 321}#
|
|
#{s\ 1771}#
|
|
#{n\ 1854}#
|
|
(#{chi\ 461}#
|
|
#{e\ 1769}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{mod\ 1772}#))))
|
|
(begin
|
|
(if (eq? #{m\ 1744}# 'c&e)
|
|
(#{top-level-eval-hook\ 290}#
|
|
#{x\ 1868}#
|
|
#{mod\ 1772}#))
|
|
#{x\ 1868}#))))
|
|
(if (eqv? #{type\ 1856}#
|
|
'displaced-lexical)
|
|
(syntax-violation
|
|
#f
|
|
"identifier out of context"
|
|
#{e\ 1769}#
|
|
(#{wrap\ 445}#
|
|
#{value\ 1768}#
|
|
#{w\ 1770}#
|
|
#{mod\ 1772}#))
|
|
(syntax-violation
|
|
#f
|
|
"cannot define keyword at top level"
|
|
#{e\ 1769}#
|
|
(#{wrap\ 445}#
|
|
#{value\ 1768}#
|
|
#{w\ 1770}#
|
|
#{mod\ 1772}#))))))))
|
|
(begin
|
|
(let ((#{x\ 1874}#
|
|
(#{chi-expr\ 463}#
|
|
#{type\ 1767}#
|
|
#{value\ 1768}#
|
|
#{e\ 1769}#
|
|
#{r\ 1742}#
|
|
#{w\ 1770}#
|
|
#{s\ 1771}#
|
|
#{mod\ 1772}#)))
|
|
(begin
|
|
(if (eq? #{m\ 1744}# 'c&e)
|
|
(#{top-level-eval-hook\ 290}#
|
|
#{x\ 1874}#
|
|
#{mod\ 1772}#))
|
|
#{x\ 1874}#))))))))))))
|
|
(#{chi\ 461}#
|
|
(lambda (#{e\ 1875}#
|
|
#{r\ 1876}#
|
|
#{w\ 1877}#
|
|
#{mod\ 1878}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{syntax-type\ 457}#
|
|
#{e\ 1875}#
|
|
#{r\ 1876}#
|
|
#{w\ 1877}#
|
|
(#{source-annotation\ 360}# #{e\ 1875}#)
|
|
#f
|
|
#{mod\ 1878}#
|
|
#f))
|
|
(lambda (#{type\ 1883}#
|
|
#{value\ 1884}#
|
|
#{e\ 1885}#
|
|
#{w\ 1886}#
|
|
#{s\ 1887}#
|
|
#{mod\ 1888}#)
|
|
(#{chi-expr\ 463}#
|
|
#{type\ 1883}#
|
|
#{value\ 1884}#
|
|
#{e\ 1885}#
|
|
#{r\ 1876}#
|
|
#{w\ 1886}#
|
|
#{s\ 1887}#
|
|
#{mod\ 1888}#)))))
|
|
(#{chi-expr\ 463}#
|
|
(lambda (#{type\ 1895}#
|
|
#{value\ 1896}#
|
|
#{e\ 1897}#
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#)
|
|
(if (eqv? #{type\ 1895}# 'lexical)
|
|
(#{build-lexical-reference\ 311}#
|
|
'value
|
|
#{s\ 1900}#
|
|
#{e\ 1897}#
|
|
#{value\ 1896}#)
|
|
(if (if (eqv? #{type\ 1895}# 'core)
|
|
#t
|
|
(eqv? #{type\ 1895}# 'core-form))
|
|
(#{value\ 1896}#
|
|
#{e\ 1897}#
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#)
|
|
(if (eqv? #{type\ 1895}# 'module-ref)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{value\ 1896}#
|
|
#{e\ 1897}#
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#))
|
|
(lambda (#{e\ 1912}#
|
|
#{r\ 1913}#
|
|
#{w\ 1914}#
|
|
#{s\ 1915}#
|
|
#{mod\ 1916}#)
|
|
(#{chi\ 461}#
|
|
#{e\ 1912}#
|
|
#{r\ 1913}#
|
|
#{w\ 1914}#
|
|
#{mod\ 1916}#)))
|
|
(if (eqv? #{type\ 1895}# 'lexical-call)
|
|
(#{chi-application\ 465}#
|
|
(begin
|
|
(let ((#{id\ 1924}# (car #{e\ 1897}#)))
|
|
(#{build-lexical-reference\ 311}#
|
|
'fun
|
|
(#{source-annotation\ 360}# #{id\ 1924}#)
|
|
(if (#{syntax-object?\ 345}# #{id\ 1924}#)
|
|
(syntax->datum #{id\ 1924}#)
|
|
#{id\ 1924}#)
|
|
#{value\ 1896}#)))
|
|
#{e\ 1897}#
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#)
|
|
(if (eqv? #{type\ 1895}# 'global-call)
|
|
(#{chi-application\ 465}#
|
|
(#{build-global-reference\ 317}#
|
|
(#{source-annotation\ 360}# (car #{e\ 1897}#))
|
|
(if (#{syntax-object?\ 345}# #{value\ 1896}#)
|
|
(#{syntax-object-expression\ 347}#
|
|
#{value\ 1896}#)
|
|
#{value\ 1896}#)
|
|
(if (#{syntax-object?\ 345}# #{value\ 1896}#)
|
|
(#{syntax-object-module\ 351}# #{value\ 1896}#)
|
|
#{mod\ 1901}#))
|
|
#{e\ 1897}#
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#)
|
|
(if (eqv? #{type\ 1895}# 'constant)
|
|
(#{build-data\ 331}#
|
|
#{s\ 1900}#
|
|
(#{strip\ 487}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 1897}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#)
|
|
'(())))
|
|
(if (eqv? #{type\ 1895}# 'global)
|
|
(#{build-global-reference\ 317}#
|
|
#{s\ 1900}#
|
|
#{value\ 1896}#
|
|
#{mod\ 1901}#)
|
|
(if (eqv? #{type\ 1895}# 'call)
|
|
(#{chi-application\ 465}#
|
|
(#{chi\ 461}#
|
|
(car #{e\ 1897}#)
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{mod\ 1901}#)
|
|
#{e\ 1897}#
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#)
|
|
(if (eqv? #{type\ 1895}# 'begin-form)
|
|
(let ((#{tmp\ 1931}# #{e\ 1897}#))
|
|
(let ((#{tmp\ 1932}#
|
|
($sc-dispatch
|
|
#{tmp\ 1931}#
|
|
'(_ any . each-any))))
|
|
(if #{tmp\ 1932}#
|
|
(@apply
|
|
(lambda (#{e1\ 1935}# #{e2\ 1936}#)
|
|
(#{chi-sequence\ 449}#
|
|
(cons #{e1\ 1935}# #{e2\ 1936}#)
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#))
|
|
#{tmp\ 1932}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 1931}#))))
|
|
(if (eqv? #{type\ 1895}# 'local-syntax-form)
|
|
(#{chi-local-syntax\ 471}#
|
|
#{value\ 1896}#
|
|
#{e\ 1897}#
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#
|
|
#{chi-sequence\ 449}#)
|
|
(if (eqv? #{type\ 1895}# 'eval-when-form)
|
|
(let ((#{tmp\ 1940}# #{e\ 1897}#))
|
|
(let ((#{tmp\ 1941}#
|
|
($sc-dispatch
|
|
#{tmp\ 1940}#
|
|
'(_ each-any any . each-any))))
|
|
(if #{tmp\ 1941}#
|
|
(@apply
|
|
(lambda (#{x\ 1945}#
|
|
#{e1\ 1946}#
|
|
#{e2\ 1947}#)
|
|
(begin
|
|
(let ((#{when-list\ 1949}#
|
|
(#{chi-when-list\ 455}#
|
|
#{e\ 1897}#
|
|
#{x\ 1945}#
|
|
#{w\ 1899}#)))
|
|
(if (memq 'eval
|
|
#{when-list\ 1949}#)
|
|
(#{chi-sequence\ 449}#
|
|
(cons #{e1\ 1946}#
|
|
#{e2\ 1947}#)
|
|
#{r\ 1898}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#)
|
|
(#{chi-void\ 475}#)))))
|
|
#{tmp\ 1941}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 1940}#))))
|
|
(if (if (eqv? #{type\ 1895}# 'define-form)
|
|
#t
|
|
(eqv? #{type\ 1895}#
|
|
'define-syntax-form))
|
|
(syntax-violation
|
|
#f
|
|
"definition in expression context"
|
|
#{e\ 1897}#
|
|
(#{wrap\ 445}#
|
|
#{value\ 1896}#
|
|
#{w\ 1899}#
|
|
#{mod\ 1901}#))
|
|
(if (eqv? #{type\ 1895}# 'syntax)
|
|
(syntax-violation
|
|
#f
|
|
"reference to pattern variable outside syntax form"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 1897}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#))
|
|
(if (eqv? #{type\ 1895}#
|
|
'displaced-lexical)
|
|
(syntax-violation
|
|
#f
|
|
"reference to identifier outside its scope"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 1897}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#))
|
|
(syntax-violation
|
|
#f
|
|
"unexpected syntax"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 1897}#
|
|
#{w\ 1899}#
|
|
#{s\ 1900}#
|
|
#{mod\ 1901}#))))))))))))))))))
|
|
(#{chi-application\ 465}#
|
|
(lambda (#{x\ 1956}#
|
|
#{e\ 1957}#
|
|
#{r\ 1958}#
|
|
#{w\ 1959}#
|
|
#{s\ 1960}#
|
|
#{mod\ 1961}#)
|
|
(let ((#{tmp\ 1968}# #{e\ 1957}#))
|
|
(let ((#{tmp\ 1969}#
|
|
($sc-dispatch #{tmp\ 1968}# '(any . each-any))))
|
|
(if #{tmp\ 1969}#
|
|
(@apply
|
|
(lambda (#{e0\ 1972}# #{e1\ 1973}#)
|
|
(#{build-application\ 305}#
|
|
#{s\ 1960}#
|
|
#{x\ 1956}#
|
|
(map (lambda (#{e\ 1974}#)
|
|
(#{chi\ 461}#
|
|
#{e\ 1974}#
|
|
#{r\ 1958}#
|
|
#{w\ 1959}#
|
|
#{mod\ 1961}#))
|
|
#{e1\ 1973}#)))
|
|
#{tmp\ 1969}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 1968}#))))))
|
|
(#{chi-macro\ 467}#
|
|
(lambda (#{p\ 1977}#
|
|
#{e\ 1978}#
|
|
#{r\ 1979}#
|
|
#{w\ 1980}#
|
|
#{s\ 1981}#
|
|
#{rib\ 1982}#
|
|
#{mod\ 1983}#)
|
|
(letrec*
|
|
((#{rebuild-macro-output\ 1992}#
|
|
(lambda (#{x\ 1993}# #{m\ 1994}#)
|
|
(if (pair? #{x\ 1993}#)
|
|
(#{decorate-source\ 299}#
|
|
(cons (#{rebuild-macro-output\ 1992}#
|
|
(car #{x\ 1993}#)
|
|
#{m\ 1994}#)
|
|
(#{rebuild-macro-output\ 1992}#
|
|
(cdr #{x\ 1993}#)
|
|
#{m\ 1994}#))
|
|
#{s\ 1981}#)
|
|
(if (#{syntax-object?\ 345}# #{x\ 1993}#)
|
|
(begin
|
|
(let ((#{w\ 2002}#
|
|
(#{syntax-object-wrap\ 349}# #{x\ 1993}#)))
|
|
(begin
|
|
(let ((#{ms\ 2005}# (car #{w\ 2002}#))
|
|
(#{s\ 2006}# (cdr #{w\ 2002}#)))
|
|
(if (if (pair? #{ms\ 2005}#)
|
|
(eq? (car #{ms\ 2005}#) #f)
|
|
#f)
|
|
(#{make-syntax-object\ 343}#
|
|
(#{syntax-object-expression\ 347}#
|
|
#{x\ 1993}#)
|
|
(cons (cdr #{ms\ 2005}#)
|
|
(if #{rib\ 1982}#
|
|
(cons #{rib\ 1982}#
|
|
(cdr #{s\ 2006}#))
|
|
(cdr #{s\ 2006}#)))
|
|
(#{syntax-object-module\ 351}#
|
|
#{x\ 1993}#))
|
|
(#{make-syntax-object\ 343}#
|
|
(#{decorate-source\ 299}#
|
|
(#{syntax-object-expression\ 347}#
|
|
#{x\ 1993}#)
|
|
#{s\ 2006}#)
|
|
(cons (cons #{m\ 1994}# #{ms\ 2005}#)
|
|
(if #{rib\ 1982}#
|
|
(cons #{rib\ 1982}#
|
|
(cons 'shift #{s\ 2006}#))
|
|
(cons 'shift #{s\ 2006}#)))
|
|
(#{syntax-object-module\ 351}#
|
|
#{x\ 1993}#)))))))
|
|
(if (vector? #{x\ 1993}#)
|
|
(begin
|
|
(let ((#{n\ 2018}# (vector-length #{x\ 1993}#)))
|
|
(begin
|
|
(let ((#{v\ 2020}#
|
|
(#{decorate-source\ 299}#
|
|
(make-vector #{n\ 2018}#)
|
|
#{x\ 1993}#)))
|
|
(letrec*
|
|
((#{loop\ 2023}#
|
|
(lambda (#{i\ 2024}#)
|
|
(if (#{fx=\ 286}#
|
|
#{i\ 2024}#
|
|
#{n\ 2018}#)
|
|
(begin (if #f #f) #{v\ 2020}#)
|
|
(begin
|
|
(vector-set!
|
|
#{v\ 2020}#
|
|
#{i\ 2024}#
|
|
(#{rebuild-macro-output\ 1992}#
|
|
(vector-ref
|
|
#{x\ 1993}#
|
|
#{i\ 2024}#)
|
|
#{m\ 1994}#))
|
|
(#{loop\ 2023}#
|
|
(#{fx+\ 282}#
|
|
#{i\ 2024}#
|
|
1)))))))
|
|
(begin (#{loop\ 2023}# 0)))))))
|
|
(if (symbol? #{x\ 1993}#)
|
|
(syntax-violation
|
|
#f
|
|
"encountered raw symbol in macro output"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 1978}#
|
|
#{w\ 1980}#
|
|
(cdr #{w\ 1980}#)
|
|
#{mod\ 1983}#)
|
|
#{x\ 1993}#)
|
|
(#{decorate-source\ 299}#
|
|
#{x\ 1993}#
|
|
#{s\ 1981}#))))))))
|
|
(begin
|
|
(#{rebuild-macro-output\ 1992}#
|
|
(#{p\ 1977}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 1978}#
|
|
(#{anti-mark\ 417}# #{w\ 1980}#)
|
|
#{s\ 1981}#
|
|
#{mod\ 1983}#))
|
|
(gensym "m"))))))
|
|
(#{chi-body\ 469}#
|
|
(lambda (#{body\ 2032}#
|
|
#{outer-form\ 2033}#
|
|
#{r\ 2034}#
|
|
#{w\ 2035}#
|
|
#{mod\ 2036}#)
|
|
(begin
|
|
(let ((#{r\ 2044}#
|
|
(cons '("placeholder" placeholder) #{r\ 2034}#)))
|
|
(begin
|
|
(let ((#{ribcage\ 2046}#
|
|
(#{make-ribcage\ 397}# '() '() '())))
|
|
(begin
|
|
(let ((#{w\ 2049}#
|
|
(cons (car #{w\ 2035}#)
|
|
(cons #{ribcage\ 2046}#
|
|
(cdr #{w\ 2035}#)))))
|
|
(letrec*
|
|
((#{parse\ 2061}#
|
|
(lambda (#{body\ 2062}#
|
|
#{ids\ 2063}#
|
|
#{labels\ 2064}#
|
|
#{var-ids\ 2065}#
|
|
#{vars\ 2066}#
|
|
#{vals\ 2067}#
|
|
#{bindings\ 2068}#)
|
|
(if (null? #{body\ 2062}#)
|
|
(syntax-violation
|
|
#f
|
|
"no expressions in body"
|
|
#{outer-form\ 2033}#)
|
|
(begin
|
|
(let ((#{e\ 2073}#
|
|
(cdr (car #{body\ 2062}#)))
|
|
(#{er\ 2074}#
|
|
(car (car #{body\ 2062}#))))
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{syntax-type\ 457}#
|
|
#{e\ 2073}#
|
|
#{er\ 2074}#
|
|
'(())
|
|
(#{source-annotation\ 360}#
|
|
#{er\ 2074}#)
|
|
#{ribcage\ 2046}#
|
|
#{mod\ 2036}#
|
|
#f))
|
|
(lambda (#{type\ 2076}#
|
|
#{value\ 2077}#
|
|
#{e\ 2078}#
|
|
#{w\ 2079}#
|
|
#{s\ 2080}#
|
|
#{mod\ 2081}#)
|
|
(if (eqv? #{type\ 2076}#
|
|
'define-form)
|
|
(begin
|
|
(let ((#{id\ 2091}#
|
|
(#{wrap\ 445}#
|
|
#{value\ 2077}#
|
|
#{w\ 2079}#
|
|
#{mod\ 2081}#))
|
|
(#{label\ 2092}#
|
|
(#{gen-label\ 392}#)))
|
|
(begin
|
|
(let ((#{var\ 2094}#
|
|
(#{gen-var\ 489}#
|
|
#{id\ 2091}#)))
|
|
(begin
|
|
(#{extend-ribcage!\ 421}#
|
|
#{ribcage\ 2046}#
|
|
#{id\ 2091}#
|
|
#{label\ 2092}#)
|
|
(#{parse\ 2061}#
|
|
(cdr #{body\ 2062}#)
|
|
(cons #{id\ 2091}#
|
|
#{ids\ 2063}#)
|
|
(cons #{label\ 2092}#
|
|
#{labels\ 2064}#)
|
|
(cons #{id\ 2091}#
|
|
#{var-ids\ 2065}#)
|
|
(cons #{var\ 2094}#
|
|
#{vars\ 2066}#)
|
|
(cons (cons #{er\ 2074}#
|
|
(#{wrap\ 445}#
|
|
#{e\ 2078}#
|
|
#{w\ 2079}#
|
|
#{mod\ 2081}#))
|
|
#{vals\ 2067}#)
|
|
(cons (cons 'lexical
|
|
#{var\ 2094}#)
|
|
#{bindings\ 2068}#)))))))
|
|
(if (eqv? #{type\ 2076}#
|
|
'define-syntax-form)
|
|
(begin
|
|
(let ((#{id\ 2099}#
|
|
(#{wrap\ 445}#
|
|
#{value\ 2077}#
|
|
#{w\ 2079}#
|
|
#{mod\ 2081}#))
|
|
(#{label\ 2100}#
|
|
(#{gen-label\ 392}#)))
|
|
(begin
|
|
(#{extend-ribcage!\ 421}#
|
|
#{ribcage\ 2046}#
|
|
#{id\ 2099}#
|
|
#{label\ 2100}#)
|
|
(#{parse\ 2061}#
|
|
(cdr #{body\ 2062}#)
|
|
(cons #{id\ 2099}#
|
|
#{ids\ 2063}#)
|
|
(cons #{label\ 2100}#
|
|
#{labels\ 2064}#)
|
|
#{var-ids\ 2065}#
|
|
#{vars\ 2066}#
|
|
#{vals\ 2067}#
|
|
(cons (cons 'macro
|
|
(cons #{er\ 2074}#
|
|
(#{wrap\ 445}#
|
|
#{e\ 2078}#
|
|
#{w\ 2079}#
|
|
#{mod\ 2081}#)))
|
|
#{bindings\ 2068}#)))))
|
|
(if (eqv? #{type\ 2076}#
|
|
'begin-form)
|
|
(let ((#{tmp\ 2103}#
|
|
#{e\ 2078}#))
|
|
(let ((#{tmp\ 2104}#
|
|
($sc-dispatch
|
|
#{tmp\ 2103}#
|
|
'(_ . each-any))))
|
|
(if #{tmp\ 2104}#
|
|
(@apply
|
|
(lambda (#{e1\ 2106}#)
|
|
(#{parse\ 2061}#
|
|
(letrec*
|
|
((#{f\ 2109}#
|
|
(lambda (#{forms\ 2110}#)
|
|
(if (null? #{forms\ 2110}#)
|
|
(cdr #{body\ 2062}#)
|
|
(cons (cons #{er\ 2074}#
|
|
(#{wrap\ 445}#
|
|
(car #{forms\ 2110}#)
|
|
#{w\ 2079}#
|
|
#{mod\ 2081}#))
|
|
(#{f\ 2109}#
|
|
(cdr #{forms\ 2110}#)))))))
|
|
(begin
|
|
(#{f\ 2109}#
|
|
#{e1\ 2106}#)))
|
|
#{ids\ 2063}#
|
|
#{labels\ 2064}#
|
|
#{var-ids\ 2065}#
|
|
#{vars\ 2066}#
|
|
#{vals\ 2067}#
|
|
#{bindings\ 2068}#))
|
|
#{tmp\ 2104}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 2103}#))))
|
|
(if (eqv? #{type\ 2076}#
|
|
'local-syntax-form)
|
|
(#{chi-local-syntax\ 471}#
|
|
#{value\ 2077}#
|
|
#{e\ 2078}#
|
|
#{er\ 2074}#
|
|
#{w\ 2079}#
|
|
#{s\ 2080}#
|
|
#{mod\ 2081}#
|
|
(lambda (#{forms\ 2113}#
|
|
#{er\ 2114}#
|
|
#{w\ 2115}#
|
|
#{s\ 2116}#
|
|
#{mod\ 2117}#)
|
|
(#{parse\ 2061}#
|
|
(letrec*
|
|
((#{f\ 2125}#
|
|
(lambda (#{forms\ 2126}#)
|
|
(if (null? #{forms\ 2126}#)
|
|
(cdr #{body\ 2062}#)
|
|
(cons (cons #{er\ 2114}#
|
|
(#{wrap\ 445}#
|
|
(car #{forms\ 2126}#)
|
|
#{w\ 2115}#
|
|
#{mod\ 2117}#))
|
|
(#{f\ 2125}#
|
|
(cdr #{forms\ 2126}#)))))))
|
|
(begin
|
|
(#{f\ 2125}#
|
|
#{forms\ 2113}#)))
|
|
#{ids\ 2063}#
|
|
#{labels\ 2064}#
|
|
#{var-ids\ 2065}#
|
|
#{vars\ 2066}#
|
|
#{vals\ 2067}#
|
|
#{bindings\ 2068}#)))
|
|
(if (null? #{ids\ 2063}#)
|
|
(#{build-sequence\ 333}#
|
|
#f
|
|
(map (lambda (#{x\ 2129}#)
|
|
(#{chi\ 461}#
|
|
(cdr #{x\ 2129}#)
|
|
(car #{x\ 2129}#)
|
|
'(())
|
|
#{mod\ 2081}#))
|
|
(cons (cons #{er\ 2074}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2078}#
|
|
#{w\ 2079}#
|
|
#{s\ 2080}#
|
|
#{mod\ 2081}#))
|
|
(cdr #{body\ 2062}#))))
|
|
(begin
|
|
(if (not (#{valid-bound-ids?\ 439}#
|
|
#{ids\ 2063}#))
|
|
(syntax-violation
|
|
#f
|
|
"invalid or duplicate identifier in definition"
|
|
#{outer-form\ 2033}#))
|
|
(letrec*
|
|
((#{loop\ 2136}#
|
|
(lambda (#{bs\ 2137}#
|
|
#{er-cache\ 2138}#
|
|
#{r-cache\ 2139}#)
|
|
(if (not (null? #{bs\ 2137}#))
|
|
(begin
|
|
(let ((#{b\ 2142}#
|
|
(car #{bs\ 2137}#)))
|
|
(if (eq? (car #{b\ 2142}#)
|
|
'macro)
|
|
(begin
|
|
(let ((#{er\ 2145}#
|
|
(car (cdr #{b\ 2142}#))))
|
|
(begin
|
|
(let ((#{r-cache\ 2147}#
|
|
(if (eq? #{er\ 2145}#
|
|
#{er-cache\ 2138}#)
|
|
#{r-cache\ 2139}#
|
|
(#{macros-only-env\ 371}#
|
|
#{er\ 2145}#))))
|
|
(begin
|
|
(set-cdr!
|
|
#{b\ 2142}#
|
|
(#{eval-local-transformer\ 473}#
|
|
(#{chi\ 461}#
|
|
(cdr (cdr #{b\ 2142}#))
|
|
#{r-cache\ 2147}#
|
|
'(())
|
|
#{mod\ 2081}#)
|
|
#{mod\ 2081}#))
|
|
(#{loop\ 2136}#
|
|
(cdr #{bs\ 2137}#)
|
|
#{er\ 2145}#
|
|
#{r-cache\ 2147}#))))))
|
|
(#{loop\ 2136}#
|
|
(cdr #{bs\ 2137}#)
|
|
#{er-cache\ 2138}#
|
|
#{r-cache\ 2139}#))))))))
|
|
(begin
|
|
(#{loop\ 2136}#
|
|
#{bindings\ 2068}#
|
|
#f
|
|
#f)))
|
|
(set-cdr!
|
|
#{r\ 2044}#
|
|
(#{extend-env\ 367}#
|
|
#{labels\ 2064}#
|
|
#{bindings\ 2068}#
|
|
(cdr #{r\ 2044}#)))
|
|
(#{build-letrec\ 339}#
|
|
#f
|
|
#t
|
|
(reverse
|
|
(map syntax->datum
|
|
#{var-ids\ 2065}#))
|
|
(reverse
|
|
#{vars\ 2066}#)
|
|
(map (lambda (#{x\ 2150}#)
|
|
(#{chi\ 461}#
|
|
(cdr #{x\ 2150}#)
|
|
(car #{x\ 2150}#)
|
|
'(())
|
|
#{mod\ 2081}#))
|
|
(reverse
|
|
#{vals\ 2067}#))
|
|
(#{build-sequence\ 333}#
|
|
#f
|
|
(map (lambda (#{x\ 2154}#)
|
|
(#{chi\ 461}#
|
|
(cdr #{x\ 2154}#)
|
|
(car #{x\ 2154}#)
|
|
'(())
|
|
#{mod\ 2081}#))
|
|
(cons (cons #{er\ 2074}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2078}#
|
|
#{w\ 2079}#
|
|
#{s\ 2080}#
|
|
#{mod\ 2081}#))
|
|
(cdr #{body\ 2062}#)))))))))))))))))))
|
|
(begin
|
|
(#{parse\ 2061}#
|
|
(map (lambda (#{x\ 2069}#)
|
|
(cons #{r\ 2044}#
|
|
(#{wrap\ 445}#
|
|
#{x\ 2069}#
|
|
#{w\ 2049}#
|
|
#{mod\ 2036}#)))
|
|
#{body\ 2032}#)
|
|
'()
|
|
'()
|
|
'()
|
|
'()
|
|
'()
|
|
'())))))))))))
|
|
(#{chi-local-syntax\ 471}#
|
|
(lambda (#{rec?\ 2157}#
|
|
#{e\ 2158}#
|
|
#{r\ 2159}#
|
|
#{w\ 2160}#
|
|
#{s\ 2161}#
|
|
#{mod\ 2162}#
|
|
#{k\ 2163}#)
|
|
(let ((#{tmp\ 2171}# #{e\ 2158}#))
|
|
(let ((#{tmp\ 2172}#
|
|
($sc-dispatch
|
|
#{tmp\ 2171}#
|
|
'(_ #(each (any any)) any . each-any))))
|
|
(if #{tmp\ 2172}#
|
|
(@apply
|
|
(lambda (#{id\ 2177}#
|
|
#{val\ 2178}#
|
|
#{e1\ 2179}#
|
|
#{e2\ 2180}#)
|
|
(begin
|
|
(let ((#{ids\ 2182}# #{id\ 2177}#))
|
|
(if (not (#{valid-bound-ids?\ 439}# #{ids\ 2182}#))
|
|
(syntax-violation
|
|
#f
|
|
"duplicate bound keyword"
|
|
#{e\ 2158}#)
|
|
(begin
|
|
(let ((#{labels\ 2185}#
|
|
(#{gen-labels\ 394}# #{ids\ 2182}#)))
|
|
(begin
|
|
(let ((#{new-w\ 2187}#
|
|
(#{make-binding-wrap\ 423}#
|
|
#{ids\ 2182}#
|
|
#{labels\ 2185}#
|
|
#{w\ 2160}#)))
|
|
(#{k\ 2163}#
|
|
(cons #{e1\ 2179}# #{e2\ 2180}#)
|
|
(#{extend-env\ 367}#
|
|
#{labels\ 2185}#
|
|
(begin
|
|
(let ((#{w\ 2191}#
|
|
(if #{rec?\ 2157}#
|
|
#{new-w\ 2187}#
|
|
#{w\ 2160}#))
|
|
(#{trans-r\ 2192}#
|
|
(#{macros-only-env\ 371}#
|
|
#{r\ 2159}#)))
|
|
(map (lambda (#{x\ 2193}#)
|
|
(cons 'macro
|
|
(#{eval-local-transformer\ 473}#
|
|
(#{chi\ 461}#
|
|
#{x\ 2193}#
|
|
#{trans-r\ 2192}#
|
|
#{w\ 2191}#
|
|
#{mod\ 2162}#)
|
|
#{mod\ 2162}#)))
|
|
#{val\ 2178}#)))
|
|
#{r\ 2159}#)
|
|
#{new-w\ 2187}#
|
|
#{s\ 2161}#
|
|
#{mod\ 2162}#)))))))))
|
|
#{tmp\ 2172}#)
|
|
(let ((#{_\ 2198}# #{tmp\ 2171}#))
|
|
(syntax-violation
|
|
#f
|
|
"bad local syntax definition"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2158}#
|
|
#{w\ 2160}#
|
|
#{s\ 2161}#
|
|
#{mod\ 2162}#))))))))
|
|
(#{eval-local-transformer\ 473}#
|
|
(lambda (#{expanded\ 2199}# #{mod\ 2200}#)
|
|
(begin
|
|
(let ((#{p\ 2204}#
|
|
(#{local-eval-hook\ 292}#
|
|
#{expanded\ 2199}#
|
|
#{mod\ 2200}#)))
|
|
(if (procedure? #{p\ 2204}#)
|
|
#{p\ 2204}#
|
|
(syntax-violation
|
|
#f
|
|
"nonprocedure transformer"
|
|
#{p\ 2204}#))))))
|
|
(#{chi-void\ 475}#
|
|
(lambda () (#{build-void\ 303}# #f)))
|
|
(#{ellipsis?\ 477}#
|
|
(lambda (#{x\ 2206}#)
|
|
(if (#{nonsymbol-id?\ 377}# #{x\ 2206}#)
|
|
(#{free-id=?\ 435}#
|
|
#{x\ 2206}#
|
|
'#(syntax-object
|
|
...
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i2207"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile)))
|
|
#f)))
|
|
(#{lambda-formals\ 479}#
|
|
(lambda (#{orig-args\ 2210}#)
|
|
(letrec*
|
|
((#{req\ 2213}#
|
|
(lambda (#{args\ 2216}# #{rreq\ 2217}#)
|
|
(let ((#{tmp\ 2220}# #{args\ 2216}#))
|
|
(let ((#{tmp\ 2221}# ($sc-dispatch #{tmp\ 2220}# '())))
|
|
(if #{tmp\ 2221}#
|
|
(@apply
|
|
(lambda ()
|
|
(#{check\ 2215}# (reverse #{rreq\ 2217}#) #f))
|
|
#{tmp\ 2221}#)
|
|
(let ((#{tmp\ 2222}#
|
|
($sc-dispatch #{tmp\ 2220}# '(any . any))))
|
|
(if (if #{tmp\ 2222}#
|
|
(@apply
|
|
(lambda (#{a\ 2225}# #{b\ 2226}#)
|
|
(#{id?\ 379}# #{a\ 2225}#))
|
|
#{tmp\ 2222}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2229}# #{b\ 2230}#)
|
|
(#{req\ 2213}#
|
|
#{b\ 2230}#
|
|
(cons #{a\ 2229}# #{rreq\ 2217}#)))
|
|
#{tmp\ 2222}#)
|
|
(let ((#{tmp\ 2231}# (list #{tmp\ 2220}#)))
|
|
(if (if #{tmp\ 2231}#
|
|
(@apply
|
|
(lambda (#{r\ 2233}#)
|
|
(#{id?\ 379}# #{r\ 2233}#))
|
|
#{tmp\ 2231}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{r\ 2235}#)
|
|
(#{check\ 2215}#
|
|
(reverse #{rreq\ 2217}#)
|
|
#{r\ 2235}#))
|
|
#{tmp\ 2231}#)
|
|
(let ((#{else\ 2237}# #{tmp\ 2220}#))
|
|
(syntax-violation
|
|
'lambda
|
|
"invalid argument list"
|
|
#{orig-args\ 2210}#
|
|
#{args\ 2216}#)))))))))))
|
|
(#{check\ 2215}#
|
|
(lambda (#{req\ 2238}# #{rest\ 2239}#)
|
|
(if (#{distinct-bound-ids?\ 441}#
|
|
(if #{rest\ 2239}#
|
|
(cons #{rest\ 2239}# #{req\ 2238}#)
|
|
#{req\ 2238}#))
|
|
(values #{req\ 2238}# #f #{rest\ 2239}# #f)
|
|
(syntax-violation
|
|
'lambda
|
|
"duplicate identifier in argument list"
|
|
#{orig-args\ 2210}#)))))
|
|
(begin (#{req\ 2213}# #{orig-args\ 2210}# '())))))
|
|
(#{chi-simple-lambda\ 481}#
|
|
(lambda (#{e\ 2245}#
|
|
#{r\ 2246}#
|
|
#{w\ 2247}#
|
|
#{s\ 2248}#
|
|
#{mod\ 2249}#
|
|
#{req\ 2250}#
|
|
#{rest\ 2251}#
|
|
#{meta\ 2252}#
|
|
#{body\ 2253}#)
|
|
(begin
|
|
(let ((#{ids\ 2265}#
|
|
(if #{rest\ 2251}#
|
|
(append #{req\ 2250}# (list #{rest\ 2251}#))
|
|
#{req\ 2250}#)))
|
|
(begin
|
|
(let ((#{vars\ 2267}#
|
|
(map #{gen-var\ 489}# #{ids\ 2265}#)))
|
|
(begin
|
|
(let ((#{labels\ 2269}#
|
|
(#{gen-labels\ 394}# #{ids\ 2265}#)))
|
|
(#{build-simple-lambda\ 323}#
|
|
#{s\ 2248}#
|
|
(map syntax->datum #{req\ 2250}#)
|
|
(if #{rest\ 2251}#
|
|
(syntax->datum #{rest\ 2251}#)
|
|
#f)
|
|
#{vars\ 2267}#
|
|
#{meta\ 2252}#
|
|
(#{chi-body\ 469}#
|
|
#{body\ 2253}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2245}#
|
|
#{w\ 2247}#
|
|
#{s\ 2248}#
|
|
#{mod\ 2249}#)
|
|
(#{extend-var-env\ 369}#
|
|
#{labels\ 2269}#
|
|
#{vars\ 2267}#
|
|
#{r\ 2246}#)
|
|
(#{make-binding-wrap\ 423}#
|
|
#{ids\ 2265}#
|
|
#{labels\ 2269}#
|
|
#{w\ 2247}#)
|
|
#{mod\ 2249}#))))))))))
|
|
(#{lambda*-formals\ 483}#
|
|
(lambda (#{orig-args\ 2272}#)
|
|
(letrec*
|
|
((#{req\ 2275}#
|
|
(lambda (#{args\ 2284}# #{rreq\ 2285}#)
|
|
(let ((#{tmp\ 2288}# #{args\ 2284}#))
|
|
(let ((#{tmp\ 2289}# ($sc-dispatch #{tmp\ 2288}# '())))
|
|
(if #{tmp\ 2289}#
|
|
(@apply
|
|
(lambda ()
|
|
(#{check\ 2283}#
|
|
(reverse #{rreq\ 2285}#)
|
|
'()
|
|
#f
|
|
'()))
|
|
#{tmp\ 2289}#)
|
|
(let ((#{tmp\ 2290}#
|
|
($sc-dispatch #{tmp\ 2288}# '(any . any))))
|
|
(if (if #{tmp\ 2290}#
|
|
(@apply
|
|
(lambda (#{a\ 2293}# #{b\ 2294}#)
|
|
(#{id?\ 379}# #{a\ 2293}#))
|
|
#{tmp\ 2290}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2297}# #{b\ 2298}#)
|
|
(#{req\ 2275}#
|
|
#{b\ 2298}#
|
|
(cons #{a\ 2297}# #{rreq\ 2285}#)))
|
|
#{tmp\ 2290}#)
|
|
(let ((#{tmp\ 2299}#
|
|
($sc-dispatch
|
|
#{tmp\ 2288}#
|
|
'(any . any))))
|
|
(if (if #{tmp\ 2299}#
|
|
(@apply
|
|
(lambda (#{a\ 2302}# #{b\ 2303}#)
|
|
(eq? (syntax->datum #{a\ 2302}#)
|
|
#:optional))
|
|
#{tmp\ 2299}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2306}# #{b\ 2307}#)
|
|
(#{opt\ 2277}#
|
|
#{b\ 2307}#
|
|
(reverse #{rreq\ 2285}#)
|
|
'()))
|
|
#{tmp\ 2299}#)
|
|
(let ((#{tmp\ 2308}#
|
|
($sc-dispatch
|
|
#{tmp\ 2288}#
|
|
'(any . any))))
|
|
(if (if #{tmp\ 2308}#
|
|
(@apply
|
|
(lambda (#{a\ 2311}# #{b\ 2312}#)
|
|
(eq? (syntax->datum #{a\ 2311}#)
|
|
#:key))
|
|
#{tmp\ 2308}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2315}# #{b\ 2316}#)
|
|
(#{key\ 2279}#
|
|
#{b\ 2316}#
|
|
(reverse #{rreq\ 2285}#)
|
|
'()
|
|
'()))
|
|
#{tmp\ 2308}#)
|
|
(let ((#{tmp\ 2317}#
|
|
($sc-dispatch
|
|
#{tmp\ 2288}#
|
|
'(any any))))
|
|
(if (if #{tmp\ 2317}#
|
|
(@apply
|
|
(lambda (#{a\ 2320}#
|
|
#{b\ 2321}#)
|
|
(eq? (syntax->datum
|
|
#{a\ 2320}#)
|
|
#:rest))
|
|
#{tmp\ 2317}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2324}# #{b\ 2325}#)
|
|
(#{rest\ 2281}#
|
|
#{b\ 2325}#
|
|
(reverse #{rreq\ 2285}#)
|
|
'()
|
|
'()))
|
|
#{tmp\ 2317}#)
|
|
(let ((#{tmp\ 2326}#
|
|
(list #{tmp\ 2288}#)))
|
|
(if (if #{tmp\ 2326}#
|
|
(@apply
|
|
(lambda (#{r\ 2328}#)
|
|
(#{id?\ 379}#
|
|
#{r\ 2328}#))
|
|
#{tmp\ 2326}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{r\ 2330}#)
|
|
(#{rest\ 2281}#
|
|
#{r\ 2330}#
|
|
(reverse #{rreq\ 2285}#)
|
|
'()
|
|
'()))
|
|
#{tmp\ 2326}#)
|
|
(let ((#{else\ 2332}#
|
|
#{tmp\ 2288}#))
|
|
(syntax-violation
|
|
'lambda*
|
|
"invalid argument list"
|
|
#{orig-args\ 2272}#
|
|
#{args\ 2284}#)))))))))))))))))
|
|
(#{opt\ 2277}#
|
|
(lambda (#{args\ 2333}# #{req\ 2334}# #{ropt\ 2335}#)
|
|
(let ((#{tmp\ 2339}# #{args\ 2333}#))
|
|
(let ((#{tmp\ 2340}# ($sc-dispatch #{tmp\ 2339}# '())))
|
|
(if #{tmp\ 2340}#
|
|
(@apply
|
|
(lambda ()
|
|
(#{check\ 2283}#
|
|
#{req\ 2334}#
|
|
(reverse #{ropt\ 2335}#)
|
|
#f
|
|
'()))
|
|
#{tmp\ 2340}#)
|
|
(let ((#{tmp\ 2341}#
|
|
($sc-dispatch #{tmp\ 2339}# '(any . any))))
|
|
(if (if #{tmp\ 2341}#
|
|
(@apply
|
|
(lambda (#{a\ 2344}# #{b\ 2345}#)
|
|
(#{id?\ 379}# #{a\ 2344}#))
|
|
#{tmp\ 2341}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2348}# #{b\ 2349}#)
|
|
(#{opt\ 2277}#
|
|
#{b\ 2349}#
|
|
#{req\ 2334}#
|
|
(cons (cons #{a\ 2348}#
|
|
'(#(syntax-object
|
|
#f
|
|
((top)
|
|
#(ribcage
|
|
#(a b)
|
|
#((top) (top))
|
|
#("i2346" "i2347"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(args req ropt)
|
|
#((top) (top) (top))
|
|
#("i2336"
|
|
"i2337"
|
|
"i2338"))
|
|
#(ribcage
|
|
(check rest key opt req)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i2282"
|
|
"i2280"
|
|
"i2278"
|
|
"i2276"
|
|
"i2274"))
|
|
#(ribcage
|
|
#(orig-args)
|
|
#((top))
|
|
#("i2273"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene guile))))
|
|
#{ropt\ 2335}#)))
|
|
#{tmp\ 2341}#)
|
|
(let ((#{tmp\ 2350}#
|
|
($sc-dispatch
|
|
#{tmp\ 2339}#
|
|
'((any any) . any))))
|
|
(if (if #{tmp\ 2350}#
|
|
(@apply
|
|
(lambda (#{a\ 2354}#
|
|
#{init\ 2355}#
|
|
#{b\ 2356}#)
|
|
(#{id?\ 379}# #{a\ 2354}#))
|
|
#{tmp\ 2350}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2360}#
|
|
#{init\ 2361}#
|
|
#{b\ 2362}#)
|
|
(#{opt\ 2277}#
|
|
#{b\ 2362}#
|
|
#{req\ 2334}#
|
|
(cons (list #{a\ 2360}# #{init\ 2361}#)
|
|
#{ropt\ 2335}#)))
|
|
#{tmp\ 2350}#)
|
|
(let ((#{tmp\ 2363}#
|
|
($sc-dispatch
|
|
#{tmp\ 2339}#
|
|
'(any . any))))
|
|
(if (if #{tmp\ 2363}#
|
|
(@apply
|
|
(lambda (#{a\ 2366}# #{b\ 2367}#)
|
|
(eq? (syntax->datum #{a\ 2366}#)
|
|
#:key))
|
|
#{tmp\ 2363}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2370}# #{b\ 2371}#)
|
|
(#{key\ 2279}#
|
|
#{b\ 2371}#
|
|
#{req\ 2334}#
|
|
(reverse #{ropt\ 2335}#)
|
|
'()))
|
|
#{tmp\ 2363}#)
|
|
(let ((#{tmp\ 2372}#
|
|
($sc-dispatch
|
|
#{tmp\ 2339}#
|
|
'(any any))))
|
|
(if (if #{tmp\ 2372}#
|
|
(@apply
|
|
(lambda (#{a\ 2375}#
|
|
#{b\ 2376}#)
|
|
(eq? (syntax->datum
|
|
#{a\ 2375}#)
|
|
#:rest))
|
|
#{tmp\ 2372}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2379}# #{b\ 2380}#)
|
|
(#{rest\ 2281}#
|
|
#{b\ 2380}#
|
|
#{req\ 2334}#
|
|
(reverse #{ropt\ 2335}#)
|
|
'()))
|
|
#{tmp\ 2372}#)
|
|
(let ((#{tmp\ 2381}#
|
|
(list #{tmp\ 2339}#)))
|
|
(if (if #{tmp\ 2381}#
|
|
(@apply
|
|
(lambda (#{r\ 2383}#)
|
|
(#{id?\ 379}#
|
|
#{r\ 2383}#))
|
|
#{tmp\ 2381}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{r\ 2385}#)
|
|
(#{rest\ 2281}#
|
|
#{r\ 2385}#
|
|
#{req\ 2334}#
|
|
(reverse #{ropt\ 2335}#)
|
|
'()))
|
|
#{tmp\ 2381}#)
|
|
(let ((#{else\ 2387}#
|
|
#{tmp\ 2339}#))
|
|
(syntax-violation
|
|
'lambda*
|
|
"invalid optional argument list"
|
|
#{orig-args\ 2272}#
|
|
#{args\ 2333}#)))))))))))))))))
|
|
(#{key\ 2279}#
|
|
(lambda (#{args\ 2388}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
#{rkey\ 2391}#)
|
|
(let ((#{tmp\ 2396}# #{args\ 2388}#))
|
|
(let ((#{tmp\ 2397}# ($sc-dispatch #{tmp\ 2396}# '())))
|
|
(if #{tmp\ 2397}#
|
|
(@apply
|
|
(lambda ()
|
|
(#{check\ 2283}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
#f
|
|
(cons #f (reverse #{rkey\ 2391}#))))
|
|
#{tmp\ 2397}#)
|
|
(let ((#{tmp\ 2398}#
|
|
($sc-dispatch #{tmp\ 2396}# '(any . any))))
|
|
(if (if #{tmp\ 2398}#
|
|
(@apply
|
|
(lambda (#{a\ 2401}# #{b\ 2402}#)
|
|
(#{id?\ 379}# #{a\ 2401}#))
|
|
#{tmp\ 2398}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2405}# #{b\ 2406}#)
|
|
(let ((#{tmp\ 2408}#
|
|
(symbol->keyword
|
|
(syntax->datum #{a\ 2405}#))))
|
|
(let ((#{k\ 2410}# #{tmp\ 2408}#))
|
|
(#{key\ 2279}#
|
|
#{b\ 2406}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
(cons (cons #{k\ 2410}#
|
|
(cons #{a\ 2405}#
|
|
'(#(syntax-object
|
|
#f
|
|
((top)
|
|
#(ribcage
|
|
#(k)
|
|
#((top))
|
|
#("i2409"))
|
|
#(ribcage
|
|
#(a b)
|
|
#((top) (top))
|
|
#("i2403"
|
|
"i2404"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(args
|
|
req
|
|
opt
|
|
rkey)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i2392"
|
|
"i2393"
|
|
"i2394"
|
|
"i2395"))
|
|
#(ribcage
|
|
(check rest
|
|
key
|
|
opt
|
|
req)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i2282"
|
|
"i2280"
|
|
"i2278"
|
|
"i2276"
|
|
"i2274"))
|
|
#(ribcage
|
|
#(orig-args)
|
|
#((top))
|
|
#("i2273"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene
|
|
guile)))))
|
|
#{rkey\ 2391}#)))))
|
|
#{tmp\ 2398}#)
|
|
(let ((#{tmp\ 2411}#
|
|
($sc-dispatch
|
|
#{tmp\ 2396}#
|
|
'((any any) . any))))
|
|
(if (if #{tmp\ 2411}#
|
|
(@apply
|
|
(lambda (#{a\ 2415}#
|
|
#{init\ 2416}#
|
|
#{b\ 2417}#)
|
|
(#{id?\ 379}# #{a\ 2415}#))
|
|
#{tmp\ 2411}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2421}#
|
|
#{init\ 2422}#
|
|
#{b\ 2423}#)
|
|
(let ((#{tmp\ 2425}#
|
|
(symbol->keyword
|
|
(syntax->datum #{a\ 2421}#))))
|
|
(let ((#{k\ 2427}# #{tmp\ 2425}#))
|
|
(#{key\ 2279}#
|
|
#{b\ 2423}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
(cons (list #{k\ 2427}#
|
|
#{a\ 2421}#
|
|
#{init\ 2422}#)
|
|
#{rkey\ 2391}#)))))
|
|
#{tmp\ 2411}#)
|
|
(let ((#{tmp\ 2428}#
|
|
($sc-dispatch
|
|
#{tmp\ 2396}#
|
|
'((any any any) . any))))
|
|
(if (if #{tmp\ 2428}#
|
|
(@apply
|
|
(lambda (#{a\ 2433}#
|
|
#{init\ 2434}#
|
|
#{k\ 2435}#
|
|
#{b\ 2436}#)
|
|
(if (#{id?\ 379}# #{a\ 2433}#)
|
|
(keyword?
|
|
(syntax->datum #{k\ 2435}#))
|
|
#f))
|
|
#{tmp\ 2428}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2443}#
|
|
#{init\ 2444}#
|
|
#{k\ 2445}#
|
|
#{b\ 2446}#)
|
|
(#{key\ 2279}#
|
|
#{b\ 2446}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
(cons (list #{k\ 2445}#
|
|
#{a\ 2443}#
|
|
#{init\ 2444}#)
|
|
#{rkey\ 2391}#)))
|
|
#{tmp\ 2428}#)
|
|
(let ((#{tmp\ 2447}#
|
|
($sc-dispatch
|
|
#{tmp\ 2396}#
|
|
'(any))))
|
|
(if (if #{tmp\ 2447}#
|
|
(@apply
|
|
(lambda (#{aok\ 2449}#)
|
|
(eq? (syntax->datum
|
|
#{aok\ 2449}#)
|
|
#:allow-other-keys))
|
|
#{tmp\ 2447}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{aok\ 2451}#)
|
|
(#{check\ 2283}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
#f
|
|
(cons #t
|
|
(reverse
|
|
#{rkey\ 2391}#))))
|
|
#{tmp\ 2447}#)
|
|
(let ((#{tmp\ 2452}#
|
|
($sc-dispatch
|
|
#{tmp\ 2396}#
|
|
'(any any any))))
|
|
(if (if #{tmp\ 2452}#
|
|
(@apply
|
|
(lambda (#{aok\ 2456}#
|
|
#{a\ 2457}#
|
|
#{b\ 2458}#)
|
|
(if (eq? (syntax->datum
|
|
#{aok\ 2456}#)
|
|
#:allow-other-keys)
|
|
(eq? (syntax->datum
|
|
#{a\ 2457}#)
|
|
#:rest)
|
|
#f))
|
|
#{tmp\ 2452}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{aok\ 2464}#
|
|
#{a\ 2465}#
|
|
#{b\ 2466}#)
|
|
(#{rest\ 2281}#
|
|
#{b\ 2466}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
(cons #t
|
|
(reverse
|
|
#{rkey\ 2391}#))))
|
|
#{tmp\ 2452}#)
|
|
(let ((#{tmp\ 2467}#
|
|
($sc-dispatch
|
|
#{tmp\ 2396}#
|
|
'(any . any))))
|
|
(if (if #{tmp\ 2467}#
|
|
(@apply
|
|
(lambda (#{aok\ 2470}#
|
|
#{r\ 2471}#)
|
|
(if (eq? (syntax->datum
|
|
#{aok\ 2470}#)
|
|
#:allow-other-keys)
|
|
(#{id?\ 379}#
|
|
#{r\ 2471}#)
|
|
#f))
|
|
#{tmp\ 2467}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{aok\ 2476}#
|
|
#{r\ 2477}#)
|
|
(#{rest\ 2281}#
|
|
#{r\ 2477}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
(cons #t
|
|
(reverse
|
|
#{rkey\ 2391}#))))
|
|
#{tmp\ 2467}#)
|
|
(let ((#{tmp\ 2478}#
|
|
($sc-dispatch
|
|
#{tmp\ 2396}#
|
|
'(any any))))
|
|
(if (if #{tmp\ 2478}#
|
|
(@apply
|
|
(lambda (#{a\ 2481}#
|
|
#{b\ 2482}#)
|
|
(eq? (syntax->datum
|
|
#{a\ 2481}#)
|
|
#:rest))
|
|
#{tmp\ 2478}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{a\ 2485}#
|
|
#{b\ 2486}#)
|
|
(#{rest\ 2281}#
|
|
#{b\ 2486}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
(cons #f
|
|
(reverse
|
|
#{rkey\ 2391}#))))
|
|
#{tmp\ 2478}#)
|
|
(let ((#{tmp\ 2487}#
|
|
(list #{tmp\ 2396}#)))
|
|
(if (if #{tmp\ 2487}#
|
|
(@apply
|
|
(lambda (#{r\ 2489}#)
|
|
(#{id?\ 379}#
|
|
#{r\ 2489}#))
|
|
#{tmp\ 2487}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{r\ 2491}#)
|
|
(#{rest\ 2281}#
|
|
#{r\ 2491}#
|
|
#{req\ 2389}#
|
|
#{opt\ 2390}#
|
|
(cons #f
|
|
(reverse
|
|
#{rkey\ 2391}#))))
|
|
#{tmp\ 2487}#)
|
|
(let ((#{else\ 2493}#
|
|
#{tmp\ 2396}#))
|
|
(syntax-violation
|
|
'lambda*
|
|
"invalid keyword argument list"
|
|
#{orig-args\ 2272}#
|
|
#{args\ 2388}#)))))))))))))))))))))))
|
|
(#{rest\ 2281}#
|
|
(lambda (#{args\ 2494}#
|
|
#{req\ 2495}#
|
|
#{opt\ 2496}#
|
|
#{kw\ 2497}#)
|
|
(let ((#{tmp\ 2502}# #{args\ 2494}#))
|
|
(let ((#{tmp\ 2503}# (list #{tmp\ 2502}#)))
|
|
(if (if #{tmp\ 2503}#
|
|
(@apply
|
|
(lambda (#{r\ 2505}#)
|
|
(#{id?\ 379}# #{r\ 2505}#))
|
|
#{tmp\ 2503}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{r\ 2507}#)
|
|
(#{check\ 2283}#
|
|
#{req\ 2495}#
|
|
#{opt\ 2496}#
|
|
#{r\ 2507}#
|
|
#{kw\ 2497}#))
|
|
#{tmp\ 2503}#)
|
|
(let ((#{else\ 2509}# #{tmp\ 2502}#))
|
|
(syntax-violation
|
|
'lambda*
|
|
"invalid rest argument"
|
|
#{orig-args\ 2272}#
|
|
#{args\ 2494}#)))))))
|
|
(#{check\ 2283}#
|
|
(lambda (#{req\ 2510}#
|
|
#{opt\ 2511}#
|
|
#{rest\ 2512}#
|
|
#{kw\ 2513}#)
|
|
(if (#{distinct-bound-ids?\ 441}#
|
|
(append
|
|
#{req\ 2510}#
|
|
(map car #{opt\ 2511}#)
|
|
(if #{rest\ 2512}# (list #{rest\ 2512}#) '())
|
|
(if (pair? #{kw\ 2513}#)
|
|
(map cadr (cdr #{kw\ 2513}#))
|
|
'())))
|
|
(values
|
|
#{req\ 2510}#
|
|
#{opt\ 2511}#
|
|
#{rest\ 2512}#
|
|
#{kw\ 2513}#)
|
|
(syntax-violation
|
|
'lambda*
|
|
"duplicate identifier in argument list"
|
|
#{orig-args\ 2272}#)))))
|
|
(begin (#{req\ 2275}# #{orig-args\ 2272}# '())))))
|
|
(#{chi-lambda-case\ 485}#
|
|
(lambda (#{e\ 2521}#
|
|
#{r\ 2522}#
|
|
#{w\ 2523}#
|
|
#{s\ 2524}#
|
|
#{mod\ 2525}#
|
|
#{get-formals\ 2526}#
|
|
#{clauses\ 2527}#)
|
|
(letrec*
|
|
((#{expand-req\ 2536}#
|
|
(lambda (#{req\ 2543}#
|
|
#{opt\ 2544}#
|
|
#{rest\ 2545}#
|
|
#{kw\ 2546}#
|
|
#{body\ 2547}#)
|
|
(begin
|
|
(let ((#{vars\ 2555}#
|
|
(map #{gen-var\ 489}# #{req\ 2543}#))
|
|
(#{labels\ 2556}#
|
|
(#{gen-labels\ 394}# #{req\ 2543}#)))
|
|
(begin
|
|
(let ((#{r*\ 2559}#
|
|
(#{extend-var-env\ 369}#
|
|
#{labels\ 2556}#
|
|
#{vars\ 2555}#
|
|
#{r\ 2522}#))
|
|
(#{w*\ 2560}#
|
|
(#{make-binding-wrap\ 423}#
|
|
#{req\ 2543}#
|
|
#{labels\ 2556}#
|
|
#{w\ 2523}#)))
|
|
(#{expand-opt\ 2538}#
|
|
(map syntax->datum #{req\ 2543}#)
|
|
#{opt\ 2544}#
|
|
#{rest\ 2545}#
|
|
#{kw\ 2546}#
|
|
#{body\ 2547}#
|
|
(reverse #{vars\ 2555}#)
|
|
#{r*\ 2559}#
|
|
#{w*\ 2560}#
|
|
'()
|
|
'())))))))
|
|
(#{expand-opt\ 2538}#
|
|
(lambda (#{req\ 2561}#
|
|
#{opt\ 2562}#
|
|
#{rest\ 2563}#
|
|
#{kw\ 2564}#
|
|
#{body\ 2565}#
|
|
#{vars\ 2566}#
|
|
#{r*\ 2567}#
|
|
#{w*\ 2568}#
|
|
#{out\ 2569}#
|
|
#{inits\ 2570}#)
|
|
(if (pair? #{opt\ 2562}#)
|
|
(let ((#{tmp\ 2583}# (car #{opt\ 2562}#)))
|
|
(let ((#{tmp\ 2584}#
|
|
($sc-dispatch #{tmp\ 2583}# '(any any))))
|
|
(if #{tmp\ 2584}#
|
|
(@apply
|
|
(lambda (#{id\ 2587}# #{i\ 2588}#)
|
|
(begin
|
|
(let ((#{v\ 2591}#
|
|
(#{gen-var\ 489}# #{id\ 2587}#)))
|
|
(begin
|
|
(let ((#{l\ 2593}#
|
|
(#{gen-labels\ 394}#
|
|
(list #{v\ 2591}#))))
|
|
(begin
|
|
(let ((#{r**\ 2595}#
|
|
(#{extend-var-env\ 369}#
|
|
#{l\ 2593}#
|
|
(list #{v\ 2591}#)
|
|
#{r*\ 2567}#)))
|
|
(begin
|
|
(let ((#{w**\ 2597}#
|
|
(#{make-binding-wrap\ 423}#
|
|
(list #{id\ 2587}#)
|
|
#{l\ 2593}#
|
|
#{w*\ 2568}#)))
|
|
(#{expand-opt\ 2538}#
|
|
#{req\ 2561}#
|
|
(cdr #{opt\ 2562}#)
|
|
#{rest\ 2563}#
|
|
#{kw\ 2564}#
|
|
#{body\ 2565}#
|
|
(cons #{v\ 2591}#
|
|
#{vars\ 2566}#)
|
|
#{r**\ 2595}#
|
|
#{w**\ 2597}#
|
|
(cons (syntax->datum
|
|
#{id\ 2587}#)
|
|
#{out\ 2569}#)
|
|
(cons (#{chi\ 461}#
|
|
#{i\ 2588}#
|
|
#{r*\ 2567}#
|
|
#{w*\ 2568}#
|
|
#{mod\ 2525}#)
|
|
#{inits\ 2570}#)))))))))))
|
|
#{tmp\ 2584}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 2583}#))))
|
|
(if #{rest\ 2563}#
|
|
(begin
|
|
(let ((#{v\ 2602}#
|
|
(#{gen-var\ 489}# #{rest\ 2563}#)))
|
|
(begin
|
|
(let ((#{l\ 2604}#
|
|
(#{gen-labels\ 394}#
|
|
(list #{v\ 2602}#))))
|
|
(begin
|
|
(let ((#{r*\ 2606}#
|
|
(#{extend-var-env\ 369}#
|
|
#{l\ 2604}#
|
|
(list #{v\ 2602}#)
|
|
#{r*\ 2567}#)))
|
|
(begin
|
|
(let ((#{w*\ 2608}#
|
|
(#{make-binding-wrap\ 423}#
|
|
(list #{rest\ 2563}#)
|
|
#{l\ 2604}#
|
|
#{w*\ 2568}#)))
|
|
(#{expand-kw\ 2540}#
|
|
#{req\ 2561}#
|
|
(if (pair? #{out\ 2569}#)
|
|
(reverse #{out\ 2569}#)
|
|
#f)
|
|
(syntax->datum #{rest\ 2563}#)
|
|
(if (pair? #{kw\ 2564}#)
|
|
(cdr #{kw\ 2564}#)
|
|
#{kw\ 2564}#)
|
|
#{body\ 2565}#
|
|
(cons #{v\ 2602}# #{vars\ 2566}#)
|
|
#{r*\ 2606}#
|
|
#{w*\ 2608}#
|
|
(if (pair? #{kw\ 2564}#)
|
|
(car #{kw\ 2564}#)
|
|
#f)
|
|
'()
|
|
#{inits\ 2570}#)))))))))
|
|
(#{expand-kw\ 2540}#
|
|
#{req\ 2561}#
|
|
(if (pair? #{out\ 2569}#)
|
|
(reverse #{out\ 2569}#)
|
|
#f)
|
|
#f
|
|
(if (pair? #{kw\ 2564}#)
|
|
(cdr #{kw\ 2564}#)
|
|
#{kw\ 2564}#)
|
|
#{body\ 2565}#
|
|
#{vars\ 2566}#
|
|
#{r*\ 2567}#
|
|
#{w*\ 2568}#
|
|
(if (pair? #{kw\ 2564}#) (car #{kw\ 2564}#) #f)
|
|
'()
|
|
#{inits\ 2570}#)))))
|
|
(#{expand-kw\ 2540}#
|
|
(lambda (#{req\ 2610}#
|
|
#{opt\ 2611}#
|
|
#{rest\ 2612}#
|
|
#{kw\ 2613}#
|
|
#{body\ 2614}#
|
|
#{vars\ 2615}#
|
|
#{r*\ 2616}#
|
|
#{w*\ 2617}#
|
|
#{aok\ 2618}#
|
|
#{out\ 2619}#
|
|
#{inits\ 2620}#)
|
|
(if (pair? #{kw\ 2613}#)
|
|
(let ((#{tmp\ 2634}# (car #{kw\ 2613}#)))
|
|
(let ((#{tmp\ 2635}#
|
|
($sc-dispatch #{tmp\ 2634}# '(any any any))))
|
|
(if #{tmp\ 2635}#
|
|
(@apply
|
|
(lambda (#{k\ 2639}# #{id\ 2640}# #{i\ 2641}#)
|
|
(begin
|
|
(let ((#{v\ 2644}#
|
|
(#{gen-var\ 489}# #{id\ 2640}#)))
|
|
(begin
|
|
(let ((#{l\ 2646}#
|
|
(#{gen-labels\ 394}#
|
|
(list #{v\ 2644}#))))
|
|
(begin
|
|
(let ((#{r**\ 2648}#
|
|
(#{extend-var-env\ 369}#
|
|
#{l\ 2646}#
|
|
(list #{v\ 2644}#)
|
|
#{r*\ 2616}#)))
|
|
(begin
|
|
(let ((#{w**\ 2650}#
|
|
(#{make-binding-wrap\ 423}#
|
|
(list #{id\ 2640}#)
|
|
#{l\ 2646}#
|
|
#{w*\ 2617}#)))
|
|
(#{expand-kw\ 2540}#
|
|
#{req\ 2610}#
|
|
#{opt\ 2611}#
|
|
#{rest\ 2612}#
|
|
(cdr #{kw\ 2613}#)
|
|
#{body\ 2614}#
|
|
(cons #{v\ 2644}#
|
|
#{vars\ 2615}#)
|
|
#{r**\ 2648}#
|
|
#{w**\ 2650}#
|
|
#{aok\ 2618}#
|
|
(cons (list (syntax->datum
|
|
#{k\ 2639}#)
|
|
(syntax->datum
|
|
#{id\ 2640}#)
|
|
#{v\ 2644}#)
|
|
#{out\ 2619}#)
|
|
(cons (#{chi\ 461}#
|
|
#{i\ 2641}#
|
|
#{r*\ 2616}#
|
|
#{w*\ 2617}#
|
|
#{mod\ 2525}#)
|
|
#{inits\ 2620}#)))))))))))
|
|
#{tmp\ 2635}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 2634}#))))
|
|
(#{expand-body\ 2542}#
|
|
#{req\ 2610}#
|
|
#{opt\ 2611}#
|
|
#{rest\ 2612}#
|
|
(if (begin
|
|
(let ((#{t\ 2654}# #{aok\ 2618}#))
|
|
(if #{t\ 2654}#
|
|
#{t\ 2654}#
|
|
(pair? #{out\ 2619}#))))
|
|
(cons #{aok\ 2618}# (reverse #{out\ 2619}#))
|
|
#f)
|
|
#{body\ 2614}#
|
|
(reverse #{vars\ 2615}#)
|
|
#{r*\ 2616}#
|
|
#{w*\ 2617}#
|
|
(reverse #{inits\ 2620}#)
|
|
'()))))
|
|
(#{expand-body\ 2542}#
|
|
(lambda (#{req\ 2656}#
|
|
#{opt\ 2657}#
|
|
#{rest\ 2658}#
|
|
#{kw\ 2659}#
|
|
#{body\ 2660}#
|
|
#{vars\ 2661}#
|
|
#{r*\ 2662}#
|
|
#{w*\ 2663}#
|
|
#{inits\ 2664}#
|
|
#{meta\ 2665}#)
|
|
(let ((#{tmp\ 2676}# #{body\ 2660}#))
|
|
(let ((#{tmp\ 2677}#
|
|
($sc-dispatch
|
|
#{tmp\ 2676}#
|
|
'(any any . each-any))))
|
|
(if (if #{tmp\ 2677}#
|
|
(@apply
|
|
(lambda (#{docstring\ 2681}#
|
|
#{e1\ 2682}#
|
|
#{e2\ 2683}#)
|
|
(string?
|
|
(syntax->datum #{docstring\ 2681}#)))
|
|
#{tmp\ 2677}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{docstring\ 2687}#
|
|
#{e1\ 2688}#
|
|
#{e2\ 2689}#)
|
|
(#{expand-body\ 2542}#
|
|
#{req\ 2656}#
|
|
#{opt\ 2657}#
|
|
#{rest\ 2658}#
|
|
#{kw\ 2659}#
|
|
(cons #{e1\ 2688}# #{e2\ 2689}#)
|
|
#{vars\ 2661}#
|
|
#{r*\ 2662}#
|
|
#{w*\ 2663}#
|
|
#{inits\ 2664}#
|
|
(append
|
|
#{meta\ 2665}#
|
|
(list (cons 'documentation
|
|
(syntax->datum
|
|
#{docstring\ 2687}#))))))
|
|
#{tmp\ 2677}#)
|
|
(let ((#{tmp\ 2692}#
|
|
($sc-dispatch
|
|
#{tmp\ 2676}#
|
|
'(#(vector #(each (any . any)))
|
|
any
|
|
.
|
|
each-any))))
|
|
(if #{tmp\ 2692}#
|
|
(@apply
|
|
(lambda (#{k\ 2697}#
|
|
#{v\ 2698}#
|
|
#{e1\ 2699}#
|
|
#{e2\ 2700}#)
|
|
(#{expand-body\ 2542}#
|
|
#{req\ 2656}#
|
|
#{opt\ 2657}#
|
|
#{rest\ 2658}#
|
|
#{kw\ 2659}#
|
|
(cons #{e1\ 2699}# #{e2\ 2700}#)
|
|
#{vars\ 2661}#
|
|
#{r*\ 2662}#
|
|
#{w*\ 2663}#
|
|
#{inits\ 2664}#
|
|
(append
|
|
#{meta\ 2665}#
|
|
(syntax->datum
|
|
(map cons #{k\ 2697}# #{v\ 2698}#)))))
|
|
#{tmp\ 2692}#)
|
|
(let ((#{tmp\ 2704}#
|
|
($sc-dispatch
|
|
#{tmp\ 2676}#
|
|
'(any . each-any))))
|
|
(if #{tmp\ 2704}#
|
|
(@apply
|
|
(lambda (#{e1\ 2707}# #{e2\ 2708}#)
|
|
(values
|
|
#{meta\ 2665}#
|
|
#{req\ 2656}#
|
|
#{opt\ 2657}#
|
|
#{rest\ 2658}#
|
|
#{kw\ 2659}#
|
|
#{inits\ 2664}#
|
|
#{vars\ 2661}#
|
|
(#{chi-body\ 469}#
|
|
(cons #{e1\ 2707}# #{e2\ 2708}#)
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2521}#
|
|
#{w\ 2523}#
|
|
#{s\ 2524}#
|
|
#{mod\ 2525}#)
|
|
#{r*\ 2662}#
|
|
#{w*\ 2663}#
|
|
#{mod\ 2525}#)))
|
|
#{tmp\ 2704}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 2676}#)))))))))))
|
|
(begin
|
|
(let ((#{tmp\ 2710}# #{clauses\ 2527}#))
|
|
(let ((#{tmp\ 2711}# ($sc-dispatch #{tmp\ 2710}# '())))
|
|
(if #{tmp\ 2711}#
|
|
(@apply
|
|
(lambda () (values '() #f))
|
|
#{tmp\ 2711}#)
|
|
(let ((#{tmp\ 2712}#
|
|
($sc-dispatch
|
|
#{tmp\ 2710}#
|
|
'((any any . each-any)
|
|
.
|
|
#(each (any any . each-any))))))
|
|
(if #{tmp\ 2712}#
|
|
(@apply
|
|
(lambda (#{args\ 2719}#
|
|
#{e1\ 2720}#
|
|
#{e2\ 2721}#
|
|
#{args*\ 2722}#
|
|
#{e1*\ 2723}#
|
|
#{e2*\ 2724}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{get-formals\ 2526}# #{args\ 2719}#))
|
|
(lambda (#{req\ 2725}#
|
|
#{opt\ 2726}#
|
|
#{rest\ 2727}#
|
|
#{kw\ 2728}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{expand-req\ 2536}#
|
|
#{req\ 2725}#
|
|
#{opt\ 2726}#
|
|
#{rest\ 2727}#
|
|
#{kw\ 2728}#
|
|
(cons #{e1\ 2720}# #{e2\ 2721}#)))
|
|
(lambda (#{meta\ 2734}#
|
|
#{req\ 2735}#
|
|
#{opt\ 2736}#
|
|
#{rest\ 2737}#
|
|
#{kw\ 2738}#
|
|
#{inits\ 2739}#
|
|
#{vars\ 2740}#
|
|
#{body\ 2741}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{chi-lambda-case\ 485}#
|
|
#{e\ 2521}#
|
|
#{r\ 2522}#
|
|
#{w\ 2523}#
|
|
#{s\ 2524}#
|
|
#{mod\ 2525}#
|
|
#{get-formals\ 2526}#
|
|
(map (lambda (#{tmp\ 2752}#
|
|
#{tmp\ 2751}#
|
|
#{tmp\ 2750}#)
|
|
(cons #{tmp\ 2750}#
|
|
(cons #{tmp\ 2751}#
|
|
#{tmp\ 2752}#)))
|
|
#{e2*\ 2724}#
|
|
#{e1*\ 2723}#
|
|
#{args*\ 2722}#)))
|
|
(lambda (#{meta*\ 2754}#
|
|
#{else*\ 2755}#)
|
|
(values
|
|
(append
|
|
#{meta\ 2734}#
|
|
#{meta*\ 2754}#)
|
|
(#{build-lambda-case\ 327}#
|
|
#{s\ 2524}#
|
|
#{req\ 2735}#
|
|
#{opt\ 2736}#
|
|
#{rest\ 2737}#
|
|
#{kw\ 2738}#
|
|
#{inits\ 2739}#
|
|
#{vars\ 2740}#
|
|
#{body\ 2741}#
|
|
#{else*\ 2755}#)))))))))
|
|
#{tmp\ 2712}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 2710}#))))))))))
|
|
(#{strip\ 487}#
|
|
(lambda (#{x\ 2758}# #{w\ 2759}#)
|
|
(if (memq 'top (car #{w\ 2759}#))
|
|
#{x\ 2758}#
|
|
(letrec*
|
|
((#{f\ 2766}#
|
|
(lambda (#{x\ 2767}#)
|
|
(if (#{syntax-object?\ 345}# #{x\ 2767}#)
|
|
(#{strip\ 487}#
|
|
(#{syntax-object-expression\ 347}# #{x\ 2767}#)
|
|
(#{syntax-object-wrap\ 349}# #{x\ 2767}#))
|
|
(if (pair? #{x\ 2767}#)
|
|
(begin
|
|
(let ((#{a\ 2774}# (#{f\ 2766}# (car #{x\ 2767}#)))
|
|
(#{d\ 2775}#
|
|
(#{f\ 2766}# (cdr #{x\ 2767}#))))
|
|
(if (if (eq? #{a\ 2774}# (car #{x\ 2767}#))
|
|
(eq? #{d\ 2775}# (cdr #{x\ 2767}#))
|
|
#f)
|
|
#{x\ 2767}#
|
|
(cons #{a\ 2774}# #{d\ 2775}#))))
|
|
(if (vector? #{x\ 2767}#)
|
|
(begin
|
|
(let ((#{old\ 2781}# (vector->list #{x\ 2767}#)))
|
|
(begin
|
|
(let ((#{new\ 2783}#
|
|
(map #{f\ 2766}# #{old\ 2781}#)))
|
|
(if (#{and-map*\ 37}#
|
|
eq?
|
|
#{old\ 2781}#
|
|
#{new\ 2783}#)
|
|
#{x\ 2767}#
|
|
(list->vector #{new\ 2783}#))))))
|
|
#{x\ 2767}#))))))
|
|
(begin (#{f\ 2766}# #{x\ 2758}#))))))
|
|
(#{gen-var\ 489}#
|
|
(lambda (#{id\ 2785}#)
|
|
(begin
|
|
(let ((#{id\ 2788}#
|
|
(if (#{syntax-object?\ 345}# #{id\ 2785}#)
|
|
(#{syntax-object-expression\ 347}# #{id\ 2785}#)
|
|
#{id\ 2785}#)))
|
|
(gensym
|
|
(string-append (symbol->string #{id\ 2788}#) " "))))))
|
|
(#{lambda-var-list\ 491}#
|
|
(lambda (#{vars\ 2790}#)
|
|
(letrec*
|
|
((#{lvl\ 2796}#
|
|
(lambda (#{vars\ 2797}# #{ls\ 2798}# #{w\ 2799}#)
|
|
(if (pair? #{vars\ 2797}#)
|
|
(#{lvl\ 2796}#
|
|
(cdr #{vars\ 2797}#)
|
|
(cons (#{wrap\ 445}#
|
|
(car #{vars\ 2797}#)
|
|
#{w\ 2799}#
|
|
#f)
|
|
#{ls\ 2798}#)
|
|
#{w\ 2799}#)
|
|
(if (#{id?\ 379}# #{vars\ 2797}#)
|
|
(cons (#{wrap\ 445}# #{vars\ 2797}# #{w\ 2799}# #f)
|
|
#{ls\ 2798}#)
|
|
(if (null? #{vars\ 2797}#)
|
|
#{ls\ 2798}#
|
|
(if (#{syntax-object?\ 345}# #{vars\ 2797}#)
|
|
(#{lvl\ 2796}#
|
|
(#{syntax-object-expression\ 347}#
|
|
#{vars\ 2797}#)
|
|
#{ls\ 2798}#
|
|
(#{join-wraps\ 427}#
|
|
#{w\ 2799}#
|
|
(#{syntax-object-wrap\ 349}# #{vars\ 2797}#)))
|
|
(cons #{vars\ 2797}# #{ls\ 2798}#))))))))
|
|
(begin (#{lvl\ 2796}# #{vars\ 2790}# '() '(())))))))
|
|
(begin
|
|
(set! #{make-primitive-ref\ 243}#
|
|
(lambda (#{src\ 757}# #{name\ 758}#)
|
|
(make-struct/no-tail
|
|
(vector-ref %expanded-vtables 2)
|
|
#{src\ 757}#
|
|
#{name\ 758}#)))
|
|
(set! #{fx+\ 282}# +)
|
|
(set! #{fx-\ 284}# -)
|
|
(set! #{fx=\ 286}# =)
|
|
(set! #{fx<\ 288}# <)
|
|
(set! #{set-syntax-object-expression!\ 353}#
|
|
(lambda (#{x\ 1135}# #{update\ 1136}#)
|
|
(vector-set! #{x\ 1135}# 1 #{update\ 1136}#)))
|
|
(set! #{set-syntax-object-wrap!\ 355}#
|
|
(lambda (#{x\ 1139}# #{update\ 1140}#)
|
|
(vector-set! #{x\ 1139}# 2 #{update\ 1140}#)))
|
|
(set! #{set-syntax-object-module!\ 357}#
|
|
(lambda (#{x\ 1143}# #{update\ 1144}#)
|
|
(vector-set! #{x\ 1143}# 3 #{update\ 1144}#)))
|
|
(set! #{ribcage?\ 399}#
|
|
(lambda (#{x\ 1224}#)
|
|
(if (vector? #{x\ 1224}#)
|
|
(if (= (vector-length #{x\ 1224}#) 4)
|
|
(eq? (vector-ref #{x\ 1224}# 0) 'ribcage)
|
|
#f)
|
|
#f)))
|
|
(begin
|
|
(#{global-extend\ 375}#
|
|
'local-syntax
|
|
'letrec-syntax
|
|
#t)
|
|
(#{global-extend\ 375}#
|
|
'local-syntax
|
|
'let-syntax
|
|
#f)
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'fluid-let-syntax
|
|
(lambda (#{e\ 2810}#
|
|
#{r\ 2811}#
|
|
#{w\ 2812}#
|
|
#{s\ 2813}#
|
|
#{mod\ 2814}#)
|
|
(let ((#{tmp\ 2820}# #{e\ 2810}#))
|
|
(let ((#{tmp\ 2821}#
|
|
($sc-dispatch
|
|
#{tmp\ 2820}#
|
|
'(_ #(each (any any)) any . each-any))))
|
|
(if (if #{tmp\ 2821}#
|
|
(@apply
|
|
(lambda (#{var\ 2826}#
|
|
#{val\ 2827}#
|
|
#{e1\ 2828}#
|
|
#{e2\ 2829}#)
|
|
(#{valid-bound-ids?\ 439}# #{var\ 2826}#))
|
|
#{tmp\ 2821}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{var\ 2835}#
|
|
#{val\ 2836}#
|
|
#{e1\ 2837}#
|
|
#{e2\ 2838}#)
|
|
(begin
|
|
(let ((#{names\ 2840}#
|
|
(map (lambda (#{x\ 2841}#)
|
|
(#{id-var-name\ 433}#
|
|
#{x\ 2841}#
|
|
#{w\ 2812}#))
|
|
#{var\ 2835}#)))
|
|
(begin
|
|
(for-each
|
|
(lambda (#{id\ 2844}# #{n\ 2845}#)
|
|
(begin
|
|
(let ((#{atom-key\ 2850}#
|
|
(car (#{lookup\ 373}#
|
|
#{n\ 2845}#
|
|
#{r\ 2811}#
|
|
#{mod\ 2814}#))))
|
|
(if (eqv? #{atom-key\ 2850}#
|
|
'displaced-lexical)
|
|
(syntax-violation
|
|
'fluid-let-syntax
|
|
"identifier out of context"
|
|
#{e\ 2810}#
|
|
(#{source-wrap\ 447}#
|
|
#{id\ 2844}#
|
|
#{w\ 2812}#
|
|
#{s\ 2813}#
|
|
#{mod\ 2814}#))))))
|
|
#{var\ 2835}#
|
|
#{names\ 2840}#)
|
|
(#{chi-body\ 469}#
|
|
(cons #{e1\ 2837}# #{e2\ 2838}#)
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2810}#
|
|
#{w\ 2812}#
|
|
#{s\ 2813}#
|
|
#{mod\ 2814}#)
|
|
(#{extend-env\ 367}#
|
|
#{names\ 2840}#
|
|
(begin
|
|
(let ((#{trans-r\ 2856}#
|
|
(#{macros-only-env\ 371}#
|
|
#{r\ 2811}#)))
|
|
(map (lambda (#{x\ 2857}#)
|
|
(cons 'macro
|
|
(#{eval-local-transformer\ 473}#
|
|
(#{chi\ 461}#
|
|
#{x\ 2857}#
|
|
#{trans-r\ 2856}#
|
|
#{w\ 2812}#
|
|
#{mod\ 2814}#)
|
|
#{mod\ 2814}#)))
|
|
#{val\ 2836}#)))
|
|
#{r\ 2811}#)
|
|
#{w\ 2812}#
|
|
#{mod\ 2814}#)))))
|
|
#{tmp\ 2821}#)
|
|
(let ((#{_\ 2862}# #{tmp\ 2820}#))
|
|
(syntax-violation
|
|
'fluid-let-syntax
|
|
"bad syntax"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2810}#
|
|
#{w\ 2812}#
|
|
#{s\ 2813}#
|
|
#{mod\ 2814}#))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'quote
|
|
(lambda (#{e\ 2863}#
|
|
#{r\ 2864}#
|
|
#{w\ 2865}#
|
|
#{s\ 2866}#
|
|
#{mod\ 2867}#)
|
|
(let ((#{tmp\ 2873}# #{e\ 2863}#))
|
|
(let ((#{tmp\ 2874}#
|
|
($sc-dispatch #{tmp\ 2873}# '(_ any))))
|
|
(if #{tmp\ 2874}#
|
|
(@apply
|
|
(lambda (#{e\ 2876}#)
|
|
(#{build-data\ 331}#
|
|
#{s\ 2866}#
|
|
(#{strip\ 487}# #{e\ 2876}# #{w\ 2865}#)))
|
|
#{tmp\ 2874}#)
|
|
(let ((#{_\ 2878}# #{tmp\ 2873}#))
|
|
(syntax-violation
|
|
'quote
|
|
"bad syntax"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 2863}#
|
|
#{w\ 2865}#
|
|
#{s\ 2866}#
|
|
#{mod\ 2867}#))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'syntax
|
|
(letrec*
|
|
((#{gen-syntax\ 2880}#
|
|
(lambda (#{src\ 2895}#
|
|
#{e\ 2896}#
|
|
#{r\ 2897}#
|
|
#{maps\ 2898}#
|
|
#{ellipsis?\ 2899}#
|
|
#{mod\ 2900}#)
|
|
(if (#{id?\ 379}# #{e\ 2896}#)
|
|
(begin
|
|
(let ((#{label\ 2908}#
|
|
(#{id-var-name\ 433}# #{e\ 2896}# '(()))))
|
|
(begin
|
|
(let ((#{b\ 2911}#
|
|
(#{lookup\ 373}#
|
|
#{label\ 2908}#
|
|
#{r\ 2897}#
|
|
#{mod\ 2900}#)))
|
|
(if (eq? (car #{b\ 2911}#) 'syntax)
|
|
(call-with-values
|
|
(lambda ()
|
|
(begin
|
|
(let ((#{var.lev\ 2914}#
|
|
(cdr #{b\ 2911}#)))
|
|
(#{gen-ref\ 2882}#
|
|
#{src\ 2895}#
|
|
(car #{var.lev\ 2914}#)
|
|
(cdr #{var.lev\ 2914}#)
|
|
#{maps\ 2898}#))))
|
|
(lambda (#{var\ 2916}# #{maps\ 2917}#)
|
|
(values
|
|
(list 'ref #{var\ 2916}#)
|
|
#{maps\ 2917}#)))
|
|
(if (#{ellipsis?\ 2899}# #{e\ 2896}#)
|
|
(syntax-violation
|
|
'syntax
|
|
"misplaced ellipsis"
|
|
#{src\ 2895}#)
|
|
(values
|
|
(list 'quote #{e\ 2896}#)
|
|
#{maps\ 2898}#)))))))
|
|
(let ((#{tmp\ 2922}# #{e\ 2896}#))
|
|
(let ((#{tmp\ 2923}#
|
|
($sc-dispatch #{tmp\ 2922}# '(any any))))
|
|
(if (if #{tmp\ 2923}#
|
|
(@apply
|
|
(lambda (#{dots\ 2926}# #{e\ 2927}#)
|
|
(#{ellipsis?\ 2899}# #{dots\ 2926}#))
|
|
#{tmp\ 2923}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{dots\ 2930}# #{e\ 2931}#)
|
|
(#{gen-syntax\ 2880}#
|
|
#{src\ 2895}#
|
|
#{e\ 2931}#
|
|
#{r\ 2897}#
|
|
#{maps\ 2898}#
|
|
(lambda (#{x\ 2932}#) #f)
|
|
#{mod\ 2900}#))
|
|
#{tmp\ 2923}#)
|
|
(let ((#{tmp\ 2934}#
|
|
($sc-dispatch
|
|
#{tmp\ 2922}#
|
|
'(any any . any))))
|
|
(if (if #{tmp\ 2934}#
|
|
(@apply
|
|
(lambda (#{x\ 2938}#
|
|
#{dots\ 2939}#
|
|
#{y\ 2940}#)
|
|
(#{ellipsis?\ 2899}# #{dots\ 2939}#))
|
|
#{tmp\ 2934}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{x\ 2944}#
|
|
#{dots\ 2945}#
|
|
#{y\ 2946}#)
|
|
(letrec*
|
|
((#{f\ 2950}#
|
|
(lambda (#{y\ 2951}# #{k\ 2952}#)
|
|
(let ((#{tmp\ 2959}# #{y\ 2951}#))
|
|
(let ((#{tmp\ 2960}#
|
|
($sc-dispatch
|
|
#{tmp\ 2959}#
|
|
'(any . any))))
|
|
(if (if #{tmp\ 2960}#
|
|
(@apply
|
|
(lambda (#{dots\ 2963}#
|
|
#{y\ 2964}#)
|
|
(#{ellipsis?\ 2899}#
|
|
#{dots\ 2963}#))
|
|
#{tmp\ 2960}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{dots\ 2967}#
|
|
#{y\ 2968}#)
|
|
(#{f\ 2950}#
|
|
#{y\ 2968}#
|
|
(lambda (#{maps\ 2969}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{k\ 2952}#
|
|
(cons '()
|
|
#{maps\ 2969}#)))
|
|
(lambda (#{x\ 2971}#
|
|
#{maps\ 2972}#)
|
|
(if (null? (car #{maps\ 2972}#))
|
|
(syntax-violation
|
|
'syntax
|
|
"extra ellipsis"
|
|
#{src\ 2895}#)
|
|
(values
|
|
(#{gen-mappend\ 2884}#
|
|
#{x\ 2971}#
|
|
(car #{maps\ 2972}#))
|
|
(cdr #{maps\ 2972}#))))))))
|
|
#{tmp\ 2960}#)
|
|
(let ((#{_\ 2976}#
|
|
#{tmp\ 2959}#))
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{gen-syntax\ 2880}#
|
|
#{src\ 2895}#
|
|
#{y\ 2951}#
|
|
#{r\ 2897}#
|
|
#{maps\ 2898}#
|
|
#{ellipsis?\ 2899}#
|
|
#{mod\ 2900}#))
|
|
(lambda (#{y\ 2977}#
|
|
#{maps\ 2978}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{k\ 2952}#
|
|
#{maps\ 2978}#))
|
|
(lambda (#{x\ 2981}#
|
|
#{maps\ 2982}#)
|
|
(values
|
|
(#{gen-append\ 2890}#
|
|
#{x\ 2981}#
|
|
#{y\ 2977}#)
|
|
#{maps\ 2982}#))))))))))))
|
|
(begin
|
|
(#{f\ 2950}#
|
|
#{y\ 2946}#
|
|
(lambda (#{maps\ 2953}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{gen-syntax\ 2880}#
|
|
#{src\ 2895}#
|
|
#{x\ 2944}#
|
|
#{r\ 2897}#
|
|
(cons '() #{maps\ 2953}#)
|
|
#{ellipsis?\ 2899}#
|
|
#{mod\ 2900}#))
|
|
(lambda (#{x\ 2955}#
|
|
#{maps\ 2956}#)
|
|
(if (null? (car #{maps\ 2956}#))
|
|
(syntax-violation
|
|
'syntax
|
|
"extra ellipsis"
|
|
#{src\ 2895}#)
|
|
(values
|
|
(#{gen-map\ 2886}#
|
|
#{x\ 2955}#
|
|
(car #{maps\ 2956}#))
|
|
(cdr #{maps\ 2956}#))))))))))
|
|
#{tmp\ 2934}#)
|
|
(let ((#{tmp\ 2985}#
|
|
($sc-dispatch
|
|
#{tmp\ 2922}#
|
|
'(any . any))))
|
|
(if #{tmp\ 2985}#
|
|
(@apply
|
|
(lambda (#{x\ 2988}# #{y\ 2989}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{gen-syntax\ 2880}#
|
|
#{src\ 2895}#
|
|
#{x\ 2988}#
|
|
#{r\ 2897}#
|
|
#{maps\ 2898}#
|
|
#{ellipsis?\ 2899}#
|
|
#{mod\ 2900}#))
|
|
(lambda (#{x\ 2990}# #{maps\ 2991}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{gen-syntax\ 2880}#
|
|
#{src\ 2895}#
|
|
#{y\ 2989}#
|
|
#{r\ 2897}#
|
|
#{maps\ 2991}#
|
|
#{ellipsis?\ 2899}#
|
|
#{mod\ 2900}#))
|
|
(lambda (#{y\ 2994}#
|
|
#{maps\ 2995}#)
|
|
(values
|
|
(#{gen-cons\ 2888}#
|
|
#{x\ 2990}#
|
|
#{y\ 2994}#)
|
|
#{maps\ 2995}#))))))
|
|
#{tmp\ 2985}#)
|
|
(let ((#{tmp\ 2998}#
|
|
($sc-dispatch
|
|
#{tmp\ 2922}#
|
|
'#(vector (any . each-any)))))
|
|
(if #{tmp\ 2998}#
|
|
(@apply
|
|
(lambda (#{e1\ 3001}# #{e2\ 3002}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{gen-syntax\ 2880}#
|
|
#{src\ 2895}#
|
|
(cons #{e1\ 3001}#
|
|
#{e2\ 3002}#)
|
|
#{r\ 2897}#
|
|
#{maps\ 2898}#
|
|
#{ellipsis?\ 2899}#
|
|
#{mod\ 2900}#))
|
|
(lambda (#{e\ 3004}#
|
|
#{maps\ 3005}#)
|
|
(values
|
|
(#{gen-vector\ 2892}#
|
|
#{e\ 3004}#)
|
|
#{maps\ 3005}#))))
|
|
#{tmp\ 2998}#)
|
|
(let ((#{_\ 3009}# #{tmp\ 2922}#))
|
|
(values
|
|
(list 'quote #{e\ 2896}#)
|
|
#{maps\ 2898}#))))))))))))))
|
|
(#{gen-ref\ 2882}#
|
|
(lambda (#{src\ 3011}#
|
|
#{var\ 3012}#
|
|
#{level\ 3013}#
|
|
#{maps\ 3014}#)
|
|
(if (#{fx=\ 286}# #{level\ 3013}# 0)
|
|
(values #{var\ 3012}# #{maps\ 3014}#)
|
|
(if (null? #{maps\ 3014}#)
|
|
(syntax-violation
|
|
'syntax
|
|
"missing ellipsis"
|
|
#{src\ 3011}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{gen-ref\ 2882}#
|
|
#{src\ 3011}#
|
|
#{var\ 3012}#
|
|
(#{fx-\ 284}# #{level\ 3013}# 1)
|
|
(cdr #{maps\ 3014}#)))
|
|
(lambda (#{outer-var\ 3019}# #{outer-maps\ 3020}#)
|
|
(begin
|
|
(let ((#{b\ 3024}#
|
|
(assq #{outer-var\ 3019}#
|
|
(car #{maps\ 3014}#))))
|
|
(if #{b\ 3024}#
|
|
(values (cdr #{b\ 3024}#) #{maps\ 3014}#)
|
|
(begin
|
|
(let ((#{inner-var\ 3026}#
|
|
(#{gen-var\ 489}# 'tmp)))
|
|
(values
|
|
#{inner-var\ 3026}#
|
|
(cons (cons (cons #{outer-var\ 3019}#
|
|
#{inner-var\ 3026}#)
|
|
(car #{maps\ 3014}#))
|
|
#{outer-maps\ 3020}#)))))))))))))
|
|
(#{gen-mappend\ 2884}#
|
|
(lambda (#{e\ 3027}# #{map-env\ 3028}#)
|
|
(list 'apply
|
|
'(primitive append)
|
|
(#{gen-map\ 2886}# #{e\ 3027}# #{map-env\ 3028}#))))
|
|
(#{gen-map\ 2886}#
|
|
(lambda (#{e\ 3032}# #{map-env\ 3033}#)
|
|
(begin
|
|
(let ((#{formals\ 3038}# (map cdr #{map-env\ 3033}#))
|
|
(#{actuals\ 3039}#
|
|
(map (lambda (#{x\ 3040}#)
|
|
(list 'ref (car #{x\ 3040}#)))
|
|
#{map-env\ 3033}#)))
|
|
(if (eq? (car #{e\ 3032}#) 'ref)
|
|
(car #{actuals\ 3039}#)
|
|
(if (and-map
|
|
(lambda (#{x\ 3047}#)
|
|
(if (eq? (car #{x\ 3047}#) 'ref)
|
|
(memq (car (cdr #{x\ 3047}#))
|
|
#{formals\ 3038}#)
|
|
#f))
|
|
(cdr #{e\ 3032}#))
|
|
(cons 'map
|
|
(cons (list 'primitive (car #{e\ 3032}#))
|
|
(map (begin
|
|
(let ((#{r\ 3053}#
|
|
(map cons
|
|
#{formals\ 3038}#
|
|
#{actuals\ 3039}#)))
|
|
(lambda (#{x\ 3054}#)
|
|
(cdr (assq (car (cdr #{x\ 3054}#))
|
|
#{r\ 3053}#)))))
|
|
(cdr #{e\ 3032}#))))
|
|
(cons 'map
|
|
(cons (list 'lambda
|
|
#{formals\ 3038}#
|
|
#{e\ 3032}#)
|
|
#{actuals\ 3039}#))))))))
|
|
(#{gen-cons\ 2888}#
|
|
(lambda (#{x\ 3058}# #{y\ 3059}#)
|
|
(begin
|
|
(let ((#{atom-key\ 3064}# (car #{y\ 3059}#)))
|
|
(if (eqv? #{atom-key\ 3064}# 'quote)
|
|
(if (eq? (car #{x\ 3058}#) 'quote)
|
|
(list 'quote
|
|
(cons (car (cdr #{x\ 3058}#))
|
|
(car (cdr #{y\ 3059}#))))
|
|
(if (eq? (car (cdr #{y\ 3059}#)) '())
|
|
(list 'list #{x\ 3058}#)
|
|
(list 'cons #{x\ 3058}# #{y\ 3059}#)))
|
|
(if (eqv? #{atom-key\ 3064}# 'list)
|
|
(cons 'list (cons #{x\ 3058}# (cdr #{y\ 3059}#)))
|
|
(list 'cons #{x\ 3058}# #{y\ 3059}#)))))))
|
|
(#{gen-append\ 2890}#
|
|
(lambda (#{x\ 3073}# #{y\ 3074}#)
|
|
(if (equal? #{y\ 3074}# ''())
|
|
#{x\ 3073}#
|
|
(list 'append #{x\ 3073}# #{y\ 3074}#))))
|
|
(#{gen-vector\ 2892}#
|
|
(lambda (#{x\ 3078}#)
|
|
(if (eq? (car #{x\ 3078}#) 'list)
|
|
(cons 'vector (cdr #{x\ 3078}#))
|
|
(if (eq? (car #{x\ 3078}#) 'quote)
|
|
(list 'quote
|
|
(list->vector (car (cdr #{x\ 3078}#))))
|
|
(list 'list->vector #{x\ 3078}#)))))
|
|
(#{regen\ 2894}#
|
|
(lambda (#{x\ 3088}#)
|
|
(begin
|
|
(let ((#{atom-key\ 3092}# (car #{x\ 3088}#)))
|
|
(if (eqv? #{atom-key\ 3092}# 'ref)
|
|
(#{build-lexical-reference\ 311}#
|
|
'value
|
|
#f
|
|
(car (cdr #{x\ 3088}#))
|
|
(car (cdr #{x\ 3088}#)))
|
|
(if (eqv? #{atom-key\ 3092}# 'primitive)
|
|
(#{build-primref\ 329}#
|
|
#f
|
|
(car (cdr #{x\ 3088}#)))
|
|
(if (eqv? #{atom-key\ 3092}# 'quote)
|
|
(#{build-data\ 331}# #f (car (cdr #{x\ 3088}#)))
|
|
(if (eqv? #{atom-key\ 3092}# 'lambda)
|
|
(if (list? (car (cdr #{x\ 3088}#)))
|
|
(#{build-simple-lambda\ 323}#
|
|
#f
|
|
(car (cdr #{x\ 3088}#))
|
|
#f
|
|
(car (cdr #{x\ 3088}#))
|
|
'()
|
|
(#{regen\ 2894}#
|
|
(car (cdr (cdr #{x\ 3088}#)))))
|
|
(error "how did we get here" #{x\ 3088}#))
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-primref\ 329}#
|
|
#f
|
|
(car #{x\ 3088}#))
|
|
(map #{regen\ 2894}#
|
|
(cdr #{x\ 3088}#))))))))))))
|
|
(begin
|
|
(lambda (#{e\ 3104}#
|
|
#{r\ 3105}#
|
|
#{w\ 3106}#
|
|
#{s\ 3107}#
|
|
#{mod\ 3108}#)
|
|
(begin
|
|
(let ((#{e\ 3115}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3104}#
|
|
#{w\ 3106}#
|
|
#{s\ 3107}#
|
|
#{mod\ 3108}#)))
|
|
(let ((#{tmp\ 3116}# #{e\ 3115}#))
|
|
(let ((#{tmp\ 3117}#
|
|
($sc-dispatch #{tmp\ 3116}# '(_ any))))
|
|
(if #{tmp\ 3117}#
|
|
(@apply
|
|
(lambda (#{x\ 3119}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{gen-syntax\ 2880}#
|
|
#{e\ 3115}#
|
|
#{x\ 3119}#
|
|
#{r\ 3105}#
|
|
'()
|
|
#{ellipsis?\ 477}#
|
|
#{mod\ 3108}#))
|
|
(lambda (#{e\ 3120}# #{maps\ 3121}#)
|
|
(#{regen\ 2894}# #{e\ 3120}#))))
|
|
#{tmp\ 3117}#)
|
|
(let ((#{_\ 3125}# #{tmp\ 3116}#))
|
|
(syntax-violation
|
|
'syntax
|
|
"bad `syntax' form"
|
|
#{e\ 3115}#)))))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'lambda
|
|
(lambda (#{e\ 3126}#
|
|
#{r\ 3127}#
|
|
#{w\ 3128}#
|
|
#{s\ 3129}#
|
|
#{mod\ 3130}#)
|
|
(let ((#{tmp\ 3136}# #{e\ 3126}#))
|
|
(let ((#{tmp\ 3137}#
|
|
($sc-dispatch
|
|
#{tmp\ 3136}#
|
|
'(_ any any . each-any))))
|
|
(if #{tmp\ 3137}#
|
|
(@apply
|
|
(lambda (#{args\ 3141}# #{e1\ 3142}# #{e2\ 3143}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{lambda-formals\ 479}# #{args\ 3141}#))
|
|
(lambda (#{req\ 3144}#
|
|
#{opt\ 3145}#
|
|
#{rest\ 3146}#
|
|
#{kw\ 3147}#)
|
|
(letrec*
|
|
((#{lp\ 3155}#
|
|
(lambda (#{body\ 3156}# #{meta\ 3157}#)
|
|
(let ((#{tmp\ 3159}# #{body\ 3156}#))
|
|
(let ((#{tmp\ 3160}#
|
|
($sc-dispatch
|
|
#{tmp\ 3159}#
|
|
'(any any . each-any))))
|
|
(if (if #{tmp\ 3160}#
|
|
(@apply
|
|
(lambda (#{docstring\ 3164}#
|
|
#{e1\ 3165}#
|
|
#{e2\ 3166}#)
|
|
(string?
|
|
(syntax->datum
|
|
#{docstring\ 3164}#)))
|
|
#{tmp\ 3160}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{docstring\ 3170}#
|
|
#{e1\ 3171}#
|
|
#{e2\ 3172}#)
|
|
(#{lp\ 3155}#
|
|
(cons #{e1\ 3171}#
|
|
#{e2\ 3172}#)
|
|
(append
|
|
#{meta\ 3157}#
|
|
(list (cons 'documentation
|
|
(syntax->datum
|
|
#{docstring\ 3170}#))))))
|
|
#{tmp\ 3160}#)
|
|
(let ((#{tmp\ 3175}#
|
|
($sc-dispatch
|
|
#{tmp\ 3159}#
|
|
'(#(vector
|
|
#(each (any . any)))
|
|
any
|
|
.
|
|
each-any))))
|
|
(if #{tmp\ 3175}#
|
|
(@apply
|
|
(lambda (#{k\ 3180}#
|
|
#{v\ 3181}#
|
|
#{e1\ 3182}#
|
|
#{e2\ 3183}#)
|
|
(#{lp\ 3155}#
|
|
(cons #{e1\ 3182}#
|
|
#{e2\ 3183}#)
|
|
(append
|
|
#{meta\ 3157}#
|
|
(syntax->datum
|
|
(map cons
|
|
#{k\ 3180}#
|
|
#{v\ 3181}#)))))
|
|
#{tmp\ 3175}#)
|
|
(let ((#{_\ 3188}#
|
|
#{tmp\ 3159}#))
|
|
(#{chi-simple-lambda\ 481}#
|
|
#{e\ 3126}#
|
|
#{r\ 3127}#
|
|
#{w\ 3128}#
|
|
#{s\ 3129}#
|
|
#{mod\ 3130}#
|
|
#{req\ 3144}#
|
|
#{rest\ 3146}#
|
|
#{meta\ 3157}#
|
|
#{body\ 3156}#))))))))))
|
|
(begin
|
|
(#{lp\ 3155}#
|
|
(cons #{e1\ 3142}# #{e2\ 3143}#)
|
|
'()))))))
|
|
#{tmp\ 3137}#)
|
|
(let ((#{_\ 3190}# #{tmp\ 3136}#))
|
|
(syntax-violation
|
|
'lambda
|
|
"bad lambda"
|
|
#{e\ 3126}#)))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'lambda*
|
|
(lambda (#{e\ 3191}#
|
|
#{r\ 3192}#
|
|
#{w\ 3193}#
|
|
#{s\ 3194}#
|
|
#{mod\ 3195}#)
|
|
(let ((#{tmp\ 3201}# #{e\ 3191}#))
|
|
(let ((#{tmp\ 3202}#
|
|
($sc-dispatch
|
|
#{tmp\ 3201}#
|
|
'(_ any any . each-any))))
|
|
(if #{tmp\ 3202}#
|
|
(@apply
|
|
(lambda (#{args\ 3206}# #{e1\ 3207}# #{e2\ 3208}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{chi-lambda-case\ 485}#
|
|
#{e\ 3191}#
|
|
#{r\ 3192}#
|
|
#{w\ 3193}#
|
|
#{s\ 3194}#
|
|
#{mod\ 3195}#
|
|
#{lambda*-formals\ 483}#
|
|
(list (cons #{args\ 3206}#
|
|
(cons #{e1\ 3207}#
|
|
#{e2\ 3208}#)))))
|
|
(lambda (#{meta\ 3210}# #{lcase\ 3211}#)
|
|
(#{build-case-lambda\ 325}#
|
|
#{s\ 3194}#
|
|
#{meta\ 3210}#
|
|
#{lcase\ 3211}#))))
|
|
#{tmp\ 3202}#)
|
|
(let ((#{_\ 3215}# #{tmp\ 3201}#))
|
|
(syntax-violation
|
|
'lambda
|
|
"bad lambda*"
|
|
#{e\ 3191}#)))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'case-lambda
|
|
(lambda (#{e\ 3216}#
|
|
#{r\ 3217}#
|
|
#{w\ 3218}#
|
|
#{s\ 3219}#
|
|
#{mod\ 3220}#)
|
|
(let ((#{tmp\ 3226}# #{e\ 3216}#))
|
|
(let ((#{tmp\ 3227}#
|
|
($sc-dispatch
|
|
#{tmp\ 3226}#
|
|
'(_ (any any . each-any)
|
|
.
|
|
#(each (any any . each-any))))))
|
|
(if #{tmp\ 3227}#
|
|
(@apply
|
|
(lambda (#{args\ 3234}#
|
|
#{e1\ 3235}#
|
|
#{e2\ 3236}#
|
|
#{args*\ 3237}#
|
|
#{e1*\ 3238}#
|
|
#{e2*\ 3239}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{chi-lambda-case\ 485}#
|
|
#{e\ 3216}#
|
|
#{r\ 3217}#
|
|
#{w\ 3218}#
|
|
#{s\ 3219}#
|
|
#{mod\ 3220}#
|
|
#{lambda-formals\ 479}#
|
|
(cons (cons #{args\ 3234}#
|
|
(cons #{e1\ 3235}# #{e2\ 3236}#))
|
|
(map (lambda (#{tmp\ 3243}#
|
|
#{tmp\ 3242}#
|
|
#{tmp\ 3241}#)
|
|
(cons #{tmp\ 3241}#
|
|
(cons #{tmp\ 3242}#
|
|
#{tmp\ 3243}#)))
|
|
#{e2*\ 3239}#
|
|
#{e1*\ 3238}#
|
|
#{args*\ 3237}#))))
|
|
(lambda (#{meta\ 3245}# #{lcase\ 3246}#)
|
|
(#{build-case-lambda\ 325}#
|
|
#{s\ 3219}#
|
|
#{meta\ 3245}#
|
|
#{lcase\ 3246}#))))
|
|
#{tmp\ 3227}#)
|
|
(let ((#{_\ 3250}# #{tmp\ 3226}#))
|
|
(syntax-violation
|
|
'case-lambda
|
|
"bad case-lambda"
|
|
#{e\ 3216}#)))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'case-lambda*
|
|
(lambda (#{e\ 3251}#
|
|
#{r\ 3252}#
|
|
#{w\ 3253}#
|
|
#{s\ 3254}#
|
|
#{mod\ 3255}#)
|
|
(let ((#{tmp\ 3261}# #{e\ 3251}#))
|
|
(let ((#{tmp\ 3262}#
|
|
($sc-dispatch
|
|
#{tmp\ 3261}#
|
|
'(_ (any any . each-any)
|
|
.
|
|
#(each (any any . each-any))))))
|
|
(if #{tmp\ 3262}#
|
|
(@apply
|
|
(lambda (#{args\ 3269}#
|
|
#{e1\ 3270}#
|
|
#{e2\ 3271}#
|
|
#{args*\ 3272}#
|
|
#{e1*\ 3273}#
|
|
#{e2*\ 3274}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{chi-lambda-case\ 485}#
|
|
#{e\ 3251}#
|
|
#{r\ 3252}#
|
|
#{w\ 3253}#
|
|
#{s\ 3254}#
|
|
#{mod\ 3255}#
|
|
#{lambda*-formals\ 483}#
|
|
(cons (cons #{args\ 3269}#
|
|
(cons #{e1\ 3270}# #{e2\ 3271}#))
|
|
(map (lambda (#{tmp\ 3278}#
|
|
#{tmp\ 3277}#
|
|
#{tmp\ 3276}#)
|
|
(cons #{tmp\ 3276}#
|
|
(cons #{tmp\ 3277}#
|
|
#{tmp\ 3278}#)))
|
|
#{e2*\ 3274}#
|
|
#{e1*\ 3273}#
|
|
#{args*\ 3272}#))))
|
|
(lambda (#{meta\ 3280}# #{lcase\ 3281}#)
|
|
(#{build-case-lambda\ 325}#
|
|
#{s\ 3254}#
|
|
#{meta\ 3280}#
|
|
#{lcase\ 3281}#))))
|
|
#{tmp\ 3262}#)
|
|
(let ((#{_\ 3285}# #{tmp\ 3261}#))
|
|
(syntax-violation
|
|
'case-lambda
|
|
"bad case-lambda*"
|
|
#{e\ 3251}#)))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'let
|
|
(letrec*
|
|
((#{chi-let\ 3287}#
|
|
(lambda (#{e\ 3288}#
|
|
#{r\ 3289}#
|
|
#{w\ 3290}#
|
|
#{s\ 3291}#
|
|
#{mod\ 3292}#
|
|
#{constructor\ 3293}#
|
|
#{ids\ 3294}#
|
|
#{vals\ 3295}#
|
|
#{exps\ 3296}#)
|
|
(if (not (#{valid-bound-ids?\ 439}# #{ids\ 3294}#))
|
|
(syntax-violation
|
|
'let
|
|
"duplicate bound variable"
|
|
#{e\ 3288}#)
|
|
(begin
|
|
(let ((#{labels\ 3308}#
|
|
(#{gen-labels\ 394}# #{ids\ 3294}#))
|
|
(#{new-vars\ 3309}#
|
|
(map #{gen-var\ 489}# #{ids\ 3294}#)))
|
|
(begin
|
|
(let ((#{nw\ 3312}#
|
|
(#{make-binding-wrap\ 423}#
|
|
#{ids\ 3294}#
|
|
#{labels\ 3308}#
|
|
#{w\ 3290}#))
|
|
(#{nr\ 3313}#
|
|
(#{extend-var-env\ 369}#
|
|
#{labels\ 3308}#
|
|
#{new-vars\ 3309}#
|
|
#{r\ 3289}#)))
|
|
(#{constructor\ 3293}#
|
|
#{s\ 3291}#
|
|
(map syntax->datum #{ids\ 3294}#)
|
|
#{new-vars\ 3309}#
|
|
(map (lambda (#{x\ 3314}#)
|
|
(#{chi\ 461}#
|
|
#{x\ 3314}#
|
|
#{r\ 3289}#
|
|
#{w\ 3290}#
|
|
#{mod\ 3292}#))
|
|
#{vals\ 3295}#)
|
|
(#{chi-body\ 469}#
|
|
#{exps\ 3296}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3288}#
|
|
#{nw\ 3312}#
|
|
#{s\ 3291}#
|
|
#{mod\ 3292}#)
|
|
#{nr\ 3313}#
|
|
#{nw\ 3312}#
|
|
#{mod\ 3292}#))))))))))
|
|
(begin
|
|
(lambda (#{e\ 3316}#
|
|
#{r\ 3317}#
|
|
#{w\ 3318}#
|
|
#{s\ 3319}#
|
|
#{mod\ 3320}#)
|
|
(let ((#{tmp\ 3326}# #{e\ 3316}#))
|
|
(let ((#{tmp\ 3327}#
|
|
($sc-dispatch
|
|
#{tmp\ 3326}#
|
|
'(_ #(each (any any)) any . each-any))))
|
|
(if (if #{tmp\ 3327}#
|
|
(@apply
|
|
(lambda (#{id\ 3332}#
|
|
#{val\ 3333}#
|
|
#{e1\ 3334}#
|
|
#{e2\ 3335}#)
|
|
(and-map #{id?\ 379}# #{id\ 3332}#))
|
|
#{tmp\ 3327}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{id\ 3341}#
|
|
#{val\ 3342}#
|
|
#{e1\ 3343}#
|
|
#{e2\ 3344}#)
|
|
(#{chi-let\ 3287}#
|
|
#{e\ 3316}#
|
|
#{r\ 3317}#
|
|
#{w\ 3318}#
|
|
#{s\ 3319}#
|
|
#{mod\ 3320}#
|
|
#{build-let\ 335}#
|
|
#{id\ 3341}#
|
|
#{val\ 3342}#
|
|
(cons #{e1\ 3343}# #{e2\ 3344}#)))
|
|
#{tmp\ 3327}#)
|
|
(let ((#{tmp\ 3348}#
|
|
($sc-dispatch
|
|
#{tmp\ 3326}#
|
|
'(_ any
|
|
#(each (any any))
|
|
any
|
|
.
|
|
each-any))))
|
|
(if (if #{tmp\ 3348}#
|
|
(@apply
|
|
(lambda (#{f\ 3354}#
|
|
#{id\ 3355}#
|
|
#{val\ 3356}#
|
|
#{e1\ 3357}#
|
|
#{e2\ 3358}#)
|
|
(if (#{id?\ 379}# #{f\ 3354}#)
|
|
(and-map #{id?\ 379}# #{id\ 3355}#)
|
|
#f))
|
|
#{tmp\ 3348}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{f\ 3367}#
|
|
#{id\ 3368}#
|
|
#{val\ 3369}#
|
|
#{e1\ 3370}#
|
|
#{e2\ 3371}#)
|
|
(#{chi-let\ 3287}#
|
|
#{e\ 3316}#
|
|
#{r\ 3317}#
|
|
#{w\ 3318}#
|
|
#{s\ 3319}#
|
|
#{mod\ 3320}#
|
|
#{build-named-let\ 337}#
|
|
(cons #{f\ 3367}# #{id\ 3368}#)
|
|
#{val\ 3369}#
|
|
(cons #{e1\ 3370}# #{e2\ 3371}#)))
|
|
#{tmp\ 3348}#)
|
|
(let ((#{_\ 3376}# #{tmp\ 3326}#))
|
|
(syntax-violation
|
|
'let
|
|
"bad let"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3316}#
|
|
#{w\ 3318}#
|
|
#{s\ 3319}#
|
|
#{mod\ 3320}#))))))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'letrec
|
|
(lambda (#{e\ 3377}#
|
|
#{r\ 3378}#
|
|
#{w\ 3379}#
|
|
#{s\ 3380}#
|
|
#{mod\ 3381}#)
|
|
(let ((#{tmp\ 3387}# #{e\ 3377}#))
|
|
(let ((#{tmp\ 3388}#
|
|
($sc-dispatch
|
|
#{tmp\ 3387}#
|
|
'(_ #(each (any any)) any . each-any))))
|
|
(if (if #{tmp\ 3388}#
|
|
(@apply
|
|
(lambda (#{id\ 3393}#
|
|
#{val\ 3394}#
|
|
#{e1\ 3395}#
|
|
#{e2\ 3396}#)
|
|
(and-map #{id?\ 379}# #{id\ 3393}#))
|
|
#{tmp\ 3388}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{id\ 3402}#
|
|
#{val\ 3403}#
|
|
#{e1\ 3404}#
|
|
#{e2\ 3405}#)
|
|
(begin
|
|
(let ((#{ids\ 3407}# #{id\ 3402}#))
|
|
(if (not (#{valid-bound-ids?\ 439}#
|
|
#{ids\ 3407}#))
|
|
(syntax-violation
|
|
'letrec
|
|
"duplicate bound variable"
|
|
#{e\ 3377}#)
|
|
(begin
|
|
(let ((#{labels\ 3411}#
|
|
(#{gen-labels\ 394}# #{ids\ 3407}#))
|
|
(#{new-vars\ 3412}#
|
|
(map #{gen-var\ 489}#
|
|
#{ids\ 3407}#)))
|
|
(begin
|
|
(let ((#{w\ 3415}#
|
|
(#{make-binding-wrap\ 423}#
|
|
#{ids\ 3407}#
|
|
#{labels\ 3411}#
|
|
#{w\ 3379}#))
|
|
(#{r\ 3416}#
|
|
(#{extend-var-env\ 369}#
|
|
#{labels\ 3411}#
|
|
#{new-vars\ 3412}#
|
|
#{r\ 3378}#)))
|
|
(#{build-letrec\ 339}#
|
|
#{s\ 3380}#
|
|
#f
|
|
(map syntax->datum #{ids\ 3407}#)
|
|
#{new-vars\ 3412}#
|
|
(map (lambda (#{x\ 3417}#)
|
|
(#{chi\ 461}#
|
|
#{x\ 3417}#
|
|
#{r\ 3416}#
|
|
#{w\ 3415}#
|
|
#{mod\ 3381}#))
|
|
#{val\ 3403}#)
|
|
(#{chi-body\ 469}#
|
|
(cons #{e1\ 3404}# #{e2\ 3405}#)
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3377}#
|
|
#{w\ 3415}#
|
|
#{s\ 3380}#
|
|
#{mod\ 3381}#)
|
|
#{r\ 3416}#
|
|
#{w\ 3415}#
|
|
#{mod\ 3381}#))))))))))
|
|
#{tmp\ 3388}#)
|
|
(let ((#{_\ 3422}# #{tmp\ 3387}#))
|
|
(syntax-violation
|
|
'letrec
|
|
"bad letrec"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3377}#
|
|
#{w\ 3379}#
|
|
#{s\ 3380}#
|
|
#{mod\ 3381}#))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'letrec*
|
|
(lambda (#{e\ 3423}#
|
|
#{r\ 3424}#
|
|
#{w\ 3425}#
|
|
#{s\ 3426}#
|
|
#{mod\ 3427}#)
|
|
(let ((#{tmp\ 3433}# #{e\ 3423}#))
|
|
(let ((#{tmp\ 3434}#
|
|
($sc-dispatch
|
|
#{tmp\ 3433}#
|
|
'(_ #(each (any any)) any . each-any))))
|
|
(if (if #{tmp\ 3434}#
|
|
(@apply
|
|
(lambda (#{id\ 3439}#
|
|
#{val\ 3440}#
|
|
#{e1\ 3441}#
|
|
#{e2\ 3442}#)
|
|
(and-map #{id?\ 379}# #{id\ 3439}#))
|
|
#{tmp\ 3434}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{id\ 3448}#
|
|
#{val\ 3449}#
|
|
#{e1\ 3450}#
|
|
#{e2\ 3451}#)
|
|
(begin
|
|
(let ((#{ids\ 3453}# #{id\ 3448}#))
|
|
(if (not (#{valid-bound-ids?\ 439}#
|
|
#{ids\ 3453}#))
|
|
(syntax-violation
|
|
'letrec*
|
|
"duplicate bound variable"
|
|
#{e\ 3423}#)
|
|
(begin
|
|
(let ((#{labels\ 3457}#
|
|
(#{gen-labels\ 394}# #{ids\ 3453}#))
|
|
(#{new-vars\ 3458}#
|
|
(map #{gen-var\ 489}#
|
|
#{ids\ 3453}#)))
|
|
(begin
|
|
(let ((#{w\ 3461}#
|
|
(#{make-binding-wrap\ 423}#
|
|
#{ids\ 3453}#
|
|
#{labels\ 3457}#
|
|
#{w\ 3425}#))
|
|
(#{r\ 3462}#
|
|
(#{extend-var-env\ 369}#
|
|
#{labels\ 3457}#
|
|
#{new-vars\ 3458}#
|
|
#{r\ 3424}#)))
|
|
(#{build-letrec\ 339}#
|
|
#{s\ 3426}#
|
|
#t
|
|
(map syntax->datum #{ids\ 3453}#)
|
|
#{new-vars\ 3458}#
|
|
(map (lambda (#{x\ 3463}#)
|
|
(#{chi\ 461}#
|
|
#{x\ 3463}#
|
|
#{r\ 3462}#
|
|
#{w\ 3461}#
|
|
#{mod\ 3427}#))
|
|
#{val\ 3449}#)
|
|
(#{chi-body\ 469}#
|
|
(cons #{e1\ 3450}# #{e2\ 3451}#)
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3423}#
|
|
#{w\ 3461}#
|
|
#{s\ 3426}#
|
|
#{mod\ 3427}#)
|
|
#{r\ 3462}#
|
|
#{w\ 3461}#
|
|
#{mod\ 3427}#))))))))))
|
|
#{tmp\ 3434}#)
|
|
(let ((#{_\ 3468}# #{tmp\ 3433}#))
|
|
(syntax-violation
|
|
'letrec*
|
|
"bad letrec*"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3423}#
|
|
#{w\ 3425}#
|
|
#{s\ 3426}#
|
|
#{mod\ 3427}#))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'set!
|
|
(lambda (#{e\ 3469}#
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#
|
|
#{s\ 3472}#
|
|
#{mod\ 3473}#)
|
|
(let ((#{tmp\ 3479}# #{e\ 3469}#))
|
|
(let ((#{tmp\ 3480}#
|
|
($sc-dispatch #{tmp\ 3479}# '(_ any any))))
|
|
(if (if #{tmp\ 3480}#
|
|
(@apply
|
|
(lambda (#{id\ 3483}# #{val\ 3484}#)
|
|
(#{id?\ 379}# #{id\ 3483}#))
|
|
#{tmp\ 3480}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{id\ 3487}# #{val\ 3488}#)
|
|
(begin
|
|
(let ((#{n\ 3491}#
|
|
(#{id-var-name\ 433}#
|
|
#{id\ 3487}#
|
|
#{w\ 3471}#))
|
|
(#{id-mod\ 3492}#
|
|
(if (#{syntax-object?\ 345}# #{id\ 3487}#)
|
|
(#{syntax-object-module\ 351}#
|
|
#{id\ 3487}#)
|
|
#{mod\ 3473}#)))
|
|
(begin
|
|
(let ((#{b\ 3494}#
|
|
(#{lookup\ 373}#
|
|
#{n\ 3491}#
|
|
#{r\ 3470}#
|
|
#{id-mod\ 3492}#)))
|
|
(begin
|
|
(let ((#{atom-key\ 3497}#
|
|
(car #{b\ 3494}#)))
|
|
(if (eqv? #{atom-key\ 3497}# 'lexical)
|
|
(#{build-lexical-assignment\ 313}#
|
|
#{s\ 3472}#
|
|
(syntax->datum #{id\ 3487}#)
|
|
(cdr #{b\ 3494}#)
|
|
(#{chi\ 461}#
|
|
#{val\ 3488}#
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#
|
|
#{mod\ 3473}#))
|
|
(if (eqv? #{atom-key\ 3497}# 'global)
|
|
(#{build-global-assignment\ 319}#
|
|
#{s\ 3472}#
|
|
#{n\ 3491}#
|
|
(#{chi\ 461}#
|
|
#{val\ 3488}#
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#
|
|
#{mod\ 3473}#)
|
|
#{id-mod\ 3492}#)
|
|
(if (eqv? #{atom-key\ 3497}# 'macro)
|
|
(begin
|
|
(let ((#{p\ 3504}#
|
|
(cdr #{b\ 3494}#)))
|
|
(if (procedure-property
|
|
#{p\ 3504}#
|
|
'variable-transformer)
|
|
(#{chi\ 461}#
|
|
(#{chi-macro\ 467}#
|
|
#{p\ 3504}#
|
|
#{e\ 3469}#
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#
|
|
#{s\ 3472}#
|
|
#f
|
|
#{mod\ 3473}#)
|
|
#{r\ 3470}#
|
|
'(())
|
|
#{mod\ 3473}#)
|
|
(syntax-violation
|
|
'set!
|
|
"not a variable transformer"
|
|
(#{wrap\ 445}#
|
|
#{e\ 3469}#
|
|
#{w\ 3471}#
|
|
#{mod\ 3473}#)
|
|
(#{wrap\ 445}#
|
|
#{id\ 3487}#
|
|
#{w\ 3471}#
|
|
#{id-mod\ 3492}#)))))
|
|
(if (eqv? #{atom-key\ 3497}#
|
|
'displaced-lexical)
|
|
(syntax-violation
|
|
'set!
|
|
"identifier out of context"
|
|
(#{wrap\ 445}#
|
|
#{id\ 3487}#
|
|
#{w\ 3471}#
|
|
#{mod\ 3473}#))
|
|
(syntax-violation
|
|
'set!
|
|
"bad set!"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3469}#
|
|
#{w\ 3471}#
|
|
#{s\ 3472}#
|
|
#{mod\ 3473}#)))))))))))))
|
|
#{tmp\ 3480}#)
|
|
(let ((#{tmp\ 3509}#
|
|
($sc-dispatch
|
|
#{tmp\ 3479}#
|
|
'(_ (any . each-any) any))))
|
|
(if #{tmp\ 3509}#
|
|
(@apply
|
|
(lambda (#{head\ 3513}#
|
|
#{tail\ 3514}#
|
|
#{val\ 3515}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{syntax-type\ 457}#
|
|
#{head\ 3513}#
|
|
#{r\ 3470}#
|
|
'(())
|
|
#f
|
|
#f
|
|
#{mod\ 3473}#
|
|
#t))
|
|
(lambda (#{type\ 3518}#
|
|
#{value\ 3519}#
|
|
#{ee\ 3520}#
|
|
#{ww\ 3521}#
|
|
#{ss\ 3522}#
|
|
#{modmod\ 3523}#)
|
|
(if (eqv? #{type\ 3518}# 'module-ref)
|
|
(begin
|
|
(let ((#{val\ 3532}#
|
|
(#{chi\ 461}#
|
|
#{val\ 3515}#
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#
|
|
#{mod\ 3473}#)))
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{value\ 3519}#
|
|
(cons #{head\ 3513}#
|
|
#{tail\ 3514}#)
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#))
|
|
(lambda (#{e\ 3534}#
|
|
#{r\ 3535}#
|
|
#{w\ 3536}#
|
|
#{s*\ 3537}#
|
|
#{mod\ 3538}#)
|
|
(let ((#{tmp\ 3544}# #{e\ 3534}#))
|
|
(let ((#{tmp\ 3545}#
|
|
(list #{tmp\ 3544}#)))
|
|
(if (if #{tmp\ 3545}#
|
|
(@apply
|
|
(lambda (#{e\ 3547}#)
|
|
(#{id?\ 379}#
|
|
#{e\ 3547}#))
|
|
#{tmp\ 3545}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{e\ 3549}#)
|
|
(#{build-global-assignment\ 319}#
|
|
#{s\ 3472}#
|
|
(syntax->datum
|
|
#{e\ 3549}#)
|
|
#{val\ 3532}#
|
|
#{mod\ 3538}#))
|
|
#{tmp\ 3545}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 3544}#))))))))
|
|
(#{build-application\ 305}#
|
|
#{s\ 3472}#
|
|
(#{chi\ 461}#
|
|
(list '#(syntax-object
|
|
setter
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(type
|
|
value
|
|
ee
|
|
ww
|
|
ss
|
|
modmod)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i3524"
|
|
"i3525"
|
|
"i3526"
|
|
"i3527"
|
|
"i3528"
|
|
"i3529"))
|
|
#(ribcage
|
|
#(head tail val)
|
|
#((top) (top) (top))
|
|
#("i3510" "i3511" "i3512"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(e r w s mod)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i3474"
|
|
"i3475"
|
|
"i3476"
|
|
"i3477"
|
|
"i3478"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile))
|
|
#{head\ 3513}#)
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#
|
|
#{mod\ 3473}#)
|
|
(map (lambda (#{e\ 3551}#)
|
|
(#{chi\ 461}#
|
|
#{e\ 3551}#
|
|
#{r\ 3470}#
|
|
#{w\ 3471}#
|
|
#{mod\ 3473}#))
|
|
(append
|
|
#{tail\ 3514}#
|
|
(list #{val\ 3515}#))))))))
|
|
#{tmp\ 3509}#)
|
|
(let ((#{_\ 3555}# #{tmp\ 3479}#))
|
|
(syntax-violation
|
|
'set!
|
|
"bad set!"
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3469}#
|
|
#{w\ 3471}#
|
|
#{s\ 3472}#
|
|
#{mod\ 3473}#))))))))))
|
|
(#{global-extend\ 375}#
|
|
'module-ref
|
|
'@
|
|
(lambda (#{e\ 3556}# #{r\ 3557}# #{w\ 3558}#)
|
|
(let ((#{tmp\ 3562}# #{e\ 3556}#))
|
|
(let ((#{tmp\ 3563}#
|
|
($sc-dispatch #{tmp\ 3562}# '(_ each-any any))))
|
|
(if (if #{tmp\ 3563}#
|
|
(@apply
|
|
(lambda (#{mod\ 3566}# #{id\ 3567}#)
|
|
(if (and-map #{id?\ 379}# #{mod\ 3566}#)
|
|
(#{id?\ 379}# #{id\ 3567}#)
|
|
#f))
|
|
#{tmp\ 3563}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{mod\ 3573}# #{id\ 3574}#)
|
|
(values
|
|
(syntax->datum #{id\ 3574}#)
|
|
#{r\ 3557}#
|
|
#{w\ 3558}#
|
|
#f
|
|
(syntax->datum
|
|
(cons '#(syntax-object
|
|
public
|
|
((top)
|
|
#(ribcage
|
|
#(mod id)
|
|
#((top) (top))
|
|
#("i3571" "i3572"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(e r w)
|
|
#((top) (top) (top))
|
|
#("i3559" "i3560" "i3561"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile))
|
|
#{mod\ 3573}#))))
|
|
#{tmp\ 3563}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 3562}#))))))
|
|
(#{global-extend\ 375}#
|
|
'module-ref
|
|
'@@
|
|
(lambda (#{e\ 3576}# #{r\ 3577}# #{w\ 3578}#)
|
|
(letrec*
|
|
((#{remodulate\ 3583}#
|
|
(lambda (#{x\ 3584}# #{mod\ 3585}#)
|
|
(if (pair? #{x\ 3584}#)
|
|
(cons (#{remodulate\ 3583}#
|
|
(car #{x\ 3584}#)
|
|
#{mod\ 3585}#)
|
|
(#{remodulate\ 3583}#
|
|
(cdr #{x\ 3584}#)
|
|
#{mod\ 3585}#))
|
|
(if (#{syntax-object?\ 345}# #{x\ 3584}#)
|
|
(#{make-syntax-object\ 343}#
|
|
(#{remodulate\ 3583}#
|
|
(#{syntax-object-expression\ 347}# #{x\ 3584}#)
|
|
#{mod\ 3585}#)
|
|
(#{syntax-object-wrap\ 349}# #{x\ 3584}#)
|
|
#{mod\ 3585}#)
|
|
(if (vector? #{x\ 3584}#)
|
|
(begin
|
|
(let ((#{n\ 3596}# (vector-length #{x\ 3584}#)))
|
|
(begin
|
|
(let ((#{v\ 3598}#
|
|
(make-vector #{n\ 3596}#)))
|
|
(letrec*
|
|
((#{loop\ 3601}#
|
|
(lambda (#{i\ 3602}#)
|
|
(if (#{fx=\ 286}#
|
|
#{i\ 3602}#
|
|
#{n\ 3596}#)
|
|
(begin (if #f #f) #{v\ 3598}#)
|
|
(begin
|
|
(vector-set!
|
|
#{v\ 3598}#
|
|
#{i\ 3602}#
|
|
(#{remodulate\ 3583}#
|
|
(vector-ref
|
|
#{x\ 3584}#
|
|
#{i\ 3602}#)
|
|
#{mod\ 3585}#))
|
|
(#{loop\ 3601}#
|
|
(#{fx+\ 282}#
|
|
#{i\ 3602}#
|
|
1)))))))
|
|
(begin (#{loop\ 3601}# 0)))))))
|
|
#{x\ 3584}#))))))
|
|
(begin
|
|
(let ((#{tmp\ 3606}# #{e\ 3576}#))
|
|
(let ((#{tmp\ 3607}#
|
|
($sc-dispatch #{tmp\ 3606}# '(_ each-any any))))
|
|
(if (if #{tmp\ 3607}#
|
|
(@apply
|
|
(lambda (#{mod\ 3610}# #{exp\ 3611}#)
|
|
(and-map #{id?\ 379}# #{mod\ 3610}#))
|
|
#{tmp\ 3607}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{mod\ 3615}# #{exp\ 3616}#)
|
|
(begin
|
|
(let ((#{mod\ 3618}#
|
|
(syntax->datum
|
|
(cons '#(syntax-object
|
|
private
|
|
((top)
|
|
#(ribcage
|
|
#(mod exp)
|
|
#((top) (top))
|
|
#("i3613" "i3614"))
|
|
#(ribcage
|
|
(remodulate)
|
|
((top))
|
|
("i3582"))
|
|
#(ribcage
|
|
#(e r w)
|
|
#((top) (top) (top))
|
|
#("i3579"
|
|
"i3580"
|
|
"i3581"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene guile))
|
|
#{mod\ 3615}#))))
|
|
(values
|
|
(#{remodulate\ 3583}#
|
|
#{exp\ 3616}#
|
|
#{mod\ 3618}#)
|
|
#{r\ 3577}#
|
|
#{w\ 3578}#
|
|
(#{source-annotation\ 360}# #{exp\ 3616}#)
|
|
#{mod\ 3618}#))))
|
|
#{tmp\ 3607}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 3606}#))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'if
|
|
(lambda (#{e\ 3620}#
|
|
#{r\ 3621}#
|
|
#{w\ 3622}#
|
|
#{s\ 3623}#
|
|
#{mod\ 3624}#)
|
|
(let ((#{tmp\ 3630}# #{e\ 3620}#))
|
|
(let ((#{tmp\ 3631}#
|
|
($sc-dispatch #{tmp\ 3630}# '(_ any any))))
|
|
(if #{tmp\ 3631}#
|
|
(@apply
|
|
(lambda (#{test\ 3634}# #{then\ 3635}#)
|
|
(#{build-conditional\ 307}#
|
|
#{s\ 3623}#
|
|
(#{chi\ 461}#
|
|
#{test\ 3634}#
|
|
#{r\ 3621}#
|
|
#{w\ 3622}#
|
|
#{mod\ 3624}#)
|
|
(#{chi\ 461}#
|
|
#{then\ 3635}#
|
|
#{r\ 3621}#
|
|
#{w\ 3622}#
|
|
#{mod\ 3624}#)
|
|
(#{build-void\ 303}# #f)))
|
|
#{tmp\ 3631}#)
|
|
(let ((#{tmp\ 3637}#
|
|
($sc-dispatch #{tmp\ 3630}# '(_ any any any))))
|
|
(if #{tmp\ 3637}#
|
|
(@apply
|
|
(lambda (#{test\ 3641}#
|
|
#{then\ 3642}#
|
|
#{else\ 3643}#)
|
|
(#{build-conditional\ 307}#
|
|
#{s\ 3623}#
|
|
(#{chi\ 461}#
|
|
#{test\ 3641}#
|
|
#{r\ 3621}#
|
|
#{w\ 3622}#
|
|
#{mod\ 3624}#)
|
|
(#{chi\ 461}#
|
|
#{then\ 3642}#
|
|
#{r\ 3621}#
|
|
#{w\ 3622}#
|
|
#{mod\ 3624}#)
|
|
(#{chi\ 461}#
|
|
#{else\ 3643}#
|
|
#{r\ 3621}#
|
|
#{w\ 3622}#
|
|
#{mod\ 3624}#)))
|
|
#{tmp\ 3637}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 3630}#))))))))
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'with-fluids
|
|
(lambda (#{e\ 3644}#
|
|
#{r\ 3645}#
|
|
#{w\ 3646}#
|
|
#{s\ 3647}#
|
|
#{mod\ 3648}#)
|
|
(let ((#{tmp\ 3654}# #{e\ 3644}#))
|
|
(let ((#{tmp\ 3655}#
|
|
($sc-dispatch
|
|
#{tmp\ 3654}#
|
|
'(_ #(each (any any)) any . each-any))))
|
|
(if #{tmp\ 3655}#
|
|
(@apply
|
|
(lambda (#{fluid\ 3660}#
|
|
#{val\ 3661}#
|
|
#{b\ 3662}#
|
|
#{b*\ 3663}#)
|
|
(#{build-dynlet\ 309}#
|
|
#{s\ 3647}#
|
|
(map (lambda (#{x\ 3664}#)
|
|
(#{chi\ 461}#
|
|
#{x\ 3664}#
|
|
#{r\ 3645}#
|
|
#{w\ 3646}#
|
|
#{mod\ 3648}#))
|
|
#{fluid\ 3660}#)
|
|
(map (lambda (#{x\ 3667}#)
|
|
(#{chi\ 461}#
|
|
#{x\ 3667}#
|
|
#{r\ 3645}#
|
|
#{w\ 3646}#
|
|
#{mod\ 3648}#))
|
|
#{val\ 3661}#)
|
|
(#{chi-body\ 469}#
|
|
(cons #{b\ 3662}# #{b*\ 3663}#)
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3644}#
|
|
#{w\ 3646}#
|
|
#{s\ 3647}#
|
|
#{mod\ 3648}#)
|
|
#{r\ 3645}#
|
|
#{w\ 3646}#
|
|
#{mod\ 3648}#)))
|
|
#{tmp\ 3655}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 3654}#))))))
|
|
(#{global-extend\ 375}# 'begin 'begin '())
|
|
(#{global-extend\ 375}# 'define 'define '())
|
|
(#{global-extend\ 375}#
|
|
'define-syntax
|
|
'define-syntax
|
|
'())
|
|
(#{global-extend\ 375}#
|
|
'eval-when
|
|
'eval-when
|
|
'())
|
|
(#{global-extend\ 375}#
|
|
'core
|
|
'syntax-case
|
|
(letrec*
|
|
((#{convert-pattern\ 3672}#
|
|
(lambda (#{pattern\ 3679}# #{keys\ 3680}#)
|
|
(letrec*
|
|
((#{cvt*\ 3684}#
|
|
(lambda (#{p*\ 3687}# #{n\ 3688}# #{ids\ 3689}#)
|
|
(if (null? #{p*\ 3687}#)
|
|
(values '() #{ids\ 3689}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt*\ 3684}#
|
|
(cdr #{p*\ 3687}#)
|
|
#{n\ 3688}#
|
|
#{ids\ 3689}#))
|
|
(lambda (#{y\ 3693}# #{ids\ 3694}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt\ 3686}#
|
|
(car #{p*\ 3687}#)
|
|
#{n\ 3688}#
|
|
#{ids\ 3694}#))
|
|
(lambda (#{x\ 3697}# #{ids\ 3698}#)
|
|
(values
|
|
(cons #{x\ 3697}# #{y\ 3693}#)
|
|
#{ids\ 3698}#))))))))
|
|
(#{cvt\ 3686}#
|
|
(lambda (#{p\ 3701}# #{n\ 3702}# #{ids\ 3703}#)
|
|
(if (#{id?\ 379}# #{p\ 3701}#)
|
|
(if (#{bound-id-member?\ 443}#
|
|
#{p\ 3701}#
|
|
#{keys\ 3680}#)
|
|
(values
|
|
(vector 'free-id #{p\ 3701}#)
|
|
#{ids\ 3703}#)
|
|
(if (#{free-id=?\ 435}#
|
|
#{p\ 3701}#
|
|
'#(syntax-object
|
|
_
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p n ids)
|
|
#((top) (top) (top))
|
|
#("i3704" "i3705" "i3706"))
|
|
#(ribcage
|
|
(cvt cvt*)
|
|
((top) (top))
|
|
("i3685" "i3683"))
|
|
#(ribcage
|
|
#(pattern keys)
|
|
#((top) (top))
|
|
#("i3681" "i3682"))
|
|
#(ribcage
|
|
(gen-syntax-case
|
|
gen-clause
|
|
build-dispatch-call
|
|
convert-pattern)
|
|
((top) (top) (top) (top))
|
|
("i3677" "i3675" "i3673" "i3671"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile)))
|
|
(values '_ #{ids\ 3703}#)
|
|
(values
|
|
'any
|
|
(cons (cons #{p\ 3701}# #{n\ 3702}#)
|
|
#{ids\ 3703}#))))
|
|
(let ((#{tmp\ 3712}# #{p\ 3701}#))
|
|
(let ((#{tmp\ 3713}#
|
|
($sc-dispatch
|
|
#{tmp\ 3712}#
|
|
'(any any))))
|
|
(if (if #{tmp\ 3713}#
|
|
(@apply
|
|
(lambda (#{x\ 3716}# #{dots\ 3717}#)
|
|
(#{ellipsis?\ 477}#
|
|
#{dots\ 3717}#))
|
|
#{tmp\ 3713}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{x\ 3720}# #{dots\ 3721}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt\ 3686}#
|
|
#{x\ 3720}#
|
|
(#{fx+\ 282}# #{n\ 3702}# 1)
|
|
#{ids\ 3703}#))
|
|
(lambda (#{p\ 3722}# #{ids\ 3723}#)
|
|
(values
|
|
(if (eq? #{p\ 3722}# 'any)
|
|
'each-any
|
|
(vector 'each #{p\ 3722}#))
|
|
#{ids\ 3723}#))))
|
|
#{tmp\ 3713}#)
|
|
(let ((#{tmp\ 3726}#
|
|
($sc-dispatch
|
|
#{tmp\ 3712}#
|
|
'(any any . each-any))))
|
|
(if (if #{tmp\ 3726}#
|
|
(@apply
|
|
(lambda (#{x\ 3730}#
|
|
#{dots\ 3731}#
|
|
#{ys\ 3732}#)
|
|
(#{ellipsis?\ 477}#
|
|
#{dots\ 3731}#))
|
|
#{tmp\ 3726}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{x\ 3736}#
|
|
#{dots\ 3737}#
|
|
#{ys\ 3738}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt*\ 3684}#
|
|
#{ys\ 3738}#
|
|
#{n\ 3702}#
|
|
#{ids\ 3703}#))
|
|
(lambda (#{ys\ 3740}#
|
|
#{ids\ 3741}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt\ 3686}#
|
|
#{x\ 3736}#
|
|
(1+ #{n\ 3702}#)
|
|
#{ids\ 3741}#))
|
|
(lambda (#{x\ 3744}#
|
|
#{ids\ 3745}#)
|
|
(values
|
|
(list->vector
|
|
(cons 'each+
|
|
(cons #{x\ 3744}#
|
|
(cons (reverse
|
|
#{ys\ 3740}#)
|
|
'(())))))
|
|
#{ids\ 3745}#))))))
|
|
#{tmp\ 3726}#)
|
|
(let ((#{tmp\ 3749}#
|
|
($sc-dispatch
|
|
#{tmp\ 3712}#
|
|
'(any . any))))
|
|
(if #{tmp\ 3749}#
|
|
(@apply
|
|
(lambda (#{x\ 3752}# #{y\ 3753}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt\ 3686}#
|
|
#{y\ 3753}#
|
|
#{n\ 3702}#
|
|
#{ids\ 3703}#))
|
|
(lambda (#{y\ 3754}#
|
|
#{ids\ 3755}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt\ 3686}#
|
|
#{x\ 3752}#
|
|
#{n\ 3702}#
|
|
#{ids\ 3755}#))
|
|
(lambda (#{x\ 3758}#
|
|
#{ids\ 3759}#)
|
|
(values
|
|
(cons #{x\ 3758}#
|
|
#{y\ 3754}#)
|
|
#{ids\ 3759}#))))))
|
|
#{tmp\ 3749}#)
|
|
(let ((#{tmp\ 3762}#
|
|
($sc-dispatch
|
|
#{tmp\ 3712}#
|
|
'())))
|
|
(if #{tmp\ 3762}#
|
|
(@apply
|
|
(lambda ()
|
|
(values '() #{ids\ 3703}#))
|
|
#{tmp\ 3762}#)
|
|
(let ((#{tmp\ 3763}#
|
|
($sc-dispatch
|
|
#{tmp\ 3712}#
|
|
'#(vector
|
|
each-any))))
|
|
(if #{tmp\ 3763}#
|
|
(@apply
|
|
(lambda (#{x\ 3765}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{cvt\ 3686}#
|
|
#{x\ 3765}#
|
|
#{n\ 3702}#
|
|
#{ids\ 3703}#))
|
|
(lambda (#{p\ 3767}#
|
|
#{ids\ 3768}#)
|
|
(values
|
|
(vector
|
|
'vector
|
|
#{p\ 3767}#)
|
|
#{ids\ 3768}#))))
|
|
#{tmp\ 3763}#)
|
|
(let ((#{x\ 3772}#
|
|
#{tmp\ 3712}#))
|
|
(values
|
|
(vector
|
|
'atom
|
|
(#{strip\ 487}#
|
|
#{p\ 3701}#
|
|
'(())))
|
|
#{ids\ 3703}#)))))))))))))))))
|
|
(begin (#{cvt\ 3686}# #{pattern\ 3679}# 0 '())))))
|
|
(#{build-dispatch-call\ 3674}#
|
|
(lambda (#{pvars\ 3774}#
|
|
#{exp\ 3775}#
|
|
#{y\ 3776}#
|
|
#{r\ 3777}#
|
|
#{mod\ 3778}#)
|
|
(begin
|
|
(map cdr #{pvars\ 3774}#)
|
|
(let ((#{ids\ 3786}# (map car #{pvars\ 3774}#)))
|
|
(begin
|
|
(let ((#{labels\ 3790}#
|
|
(#{gen-labels\ 394}# #{ids\ 3786}#))
|
|
(#{new-vars\ 3791}#
|
|
(map #{gen-var\ 489}# #{ids\ 3786}#)))
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-primref\ 329}# #f 'apply)
|
|
(list (#{build-simple-lambda\ 323}#
|
|
#f
|
|
(map syntax->datum #{ids\ 3786}#)
|
|
#f
|
|
#{new-vars\ 3791}#
|
|
'()
|
|
(#{chi\ 461}#
|
|
#{exp\ 3775}#
|
|
(#{extend-env\ 367}#
|
|
#{labels\ 3790}#
|
|
(map (lambda (#{var\ 3795}#
|
|
#{level\ 3796}#)
|
|
(cons 'syntax
|
|
(cons #{var\ 3795}#
|
|
#{level\ 3796}#)))
|
|
#{new-vars\ 3791}#
|
|
(map cdr #{pvars\ 3774}#))
|
|
#{r\ 3777}#)
|
|
(#{make-binding-wrap\ 423}#
|
|
#{ids\ 3786}#
|
|
#{labels\ 3790}#
|
|
'(()))
|
|
#{mod\ 3778}#))
|
|
#{y\ 3776}#))))))))
|
|
(#{gen-clause\ 3676}#
|
|
(lambda (#{x\ 3802}#
|
|
#{keys\ 3803}#
|
|
#{clauses\ 3804}#
|
|
#{r\ 3805}#
|
|
#{pat\ 3806}#
|
|
#{fender\ 3807}#
|
|
#{exp\ 3808}#
|
|
#{mod\ 3809}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{convert-pattern\ 3672}#
|
|
#{pat\ 3806}#
|
|
#{keys\ 3803}#))
|
|
(lambda (#{p\ 3818}# #{pvars\ 3819}#)
|
|
(if (not (#{distinct-bound-ids?\ 441}#
|
|
(map car #{pvars\ 3819}#)))
|
|
(syntax-violation
|
|
'syntax-case
|
|
"duplicate pattern variable"
|
|
#{pat\ 3806}#)
|
|
(if (not (and-map
|
|
(lambda (#{x\ 3826}#)
|
|
(not (#{ellipsis?\ 477}#
|
|
(car #{x\ 3826}#))))
|
|
#{pvars\ 3819}#))
|
|
(syntax-violation
|
|
'syntax-case
|
|
"misplaced ellipsis"
|
|
#{pat\ 3806}#)
|
|
(begin
|
|
(let ((#{y\ 3830}# (#{gen-var\ 489}# 'tmp)))
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-simple-lambda\ 323}#
|
|
#f
|
|
(list 'tmp)
|
|
#f
|
|
(list #{y\ 3830}#)
|
|
'()
|
|
(begin
|
|
(let ((#{y\ 3834}#
|
|
(#{build-lexical-reference\ 311}#
|
|
'value
|
|
#f
|
|
'tmp
|
|
#{y\ 3830}#)))
|
|
(#{build-conditional\ 307}#
|
|
#f
|
|
(let ((#{tmp\ 3837}#
|
|
#{fender\ 3807}#))
|
|
(let ((#{tmp\ 3838}#
|
|
($sc-dispatch
|
|
#{tmp\ 3837}#
|
|
'#(atom #t))))
|
|
(if #{tmp\ 3838}#
|
|
(@apply
|
|
(lambda () #{y\ 3834}#)
|
|
#{tmp\ 3838}#)
|
|
(let ((#{_\ 3840}#
|
|
#{tmp\ 3837}#))
|
|
(#{build-conditional\ 307}#
|
|
#f
|
|
#{y\ 3834}#
|
|
(#{build-dispatch-call\ 3674}#
|
|
#{pvars\ 3819}#
|
|
#{fender\ 3807}#
|
|
#{y\ 3834}#
|
|
#{r\ 3805}#
|
|
#{mod\ 3809}#)
|
|
(#{build-data\ 331}#
|
|
#f
|
|
#f))))))
|
|
(#{build-dispatch-call\ 3674}#
|
|
#{pvars\ 3819}#
|
|
#{exp\ 3808}#
|
|
#{y\ 3834}#
|
|
#{r\ 3805}#
|
|
#{mod\ 3809}#)
|
|
(#{gen-syntax-case\ 3678}#
|
|
#{x\ 3802}#
|
|
#{keys\ 3803}#
|
|
#{clauses\ 3804}#
|
|
#{r\ 3805}#
|
|
#{mod\ 3809}#)))))
|
|
(list (if (eq? #{p\ 3818}# 'any)
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-primref\ 329}# #f 'list)
|
|
(list #{x\ 3802}#))
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-primref\ 329}#
|
|
#f
|
|
'$sc-dispatch)
|
|
(list #{x\ 3802}#
|
|
(#{build-data\ 331}#
|
|
#f
|
|
#{p\ 3818}#))))))))))))))
|
|
(#{gen-syntax-case\ 3678}#
|
|
(lambda (#{x\ 3848}#
|
|
#{keys\ 3849}#
|
|
#{clauses\ 3850}#
|
|
#{r\ 3851}#
|
|
#{mod\ 3852}#)
|
|
(if (null? #{clauses\ 3850}#)
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-primref\ 329}# #f 'syntax-violation)
|
|
(list (#{build-data\ 331}# #f #f)
|
|
(#{build-data\ 331}#
|
|
#f
|
|
"source expression failed to match any pattern")
|
|
#{x\ 3848}#))
|
|
(let ((#{tmp\ 3862}# (car #{clauses\ 3850}#)))
|
|
(let ((#{tmp\ 3863}#
|
|
($sc-dispatch #{tmp\ 3862}# '(any any))))
|
|
(if #{tmp\ 3863}#
|
|
(@apply
|
|
(lambda (#{pat\ 3866}# #{exp\ 3867}#)
|
|
(if (if (#{id?\ 379}# #{pat\ 3866}#)
|
|
(and-map
|
|
(lambda (#{x\ 3870}#)
|
|
(not (#{free-id=?\ 435}#
|
|
#{pat\ 3866}#
|
|
#{x\ 3870}#)))
|
|
(cons '#(syntax-object
|
|
...
|
|
((top)
|
|
#(ribcage
|
|
#(pat exp)
|
|
#((top) (top))
|
|
#("i3864" "i3865"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x keys clauses r mod)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i3853"
|
|
"i3854"
|
|
"i3855"
|
|
"i3856"
|
|
"i3857"))
|
|
#(ribcage
|
|
(gen-syntax-case
|
|
gen-clause
|
|
build-dispatch-call
|
|
convert-pattern)
|
|
((top) (top) (top) (top))
|
|
("i3677"
|
|
"i3675"
|
|
"i3673"
|
|
"i3671"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40"
|
|
"i39"
|
|
"i38"
|
|
"i36")))
|
|
(hygiene guile))
|
|
#{keys\ 3849}#))
|
|
#f)
|
|
(if (#{free-id=?\ 435}#
|
|
'#(syntax-object
|
|
pad
|
|
((top)
|
|
#(ribcage
|
|
#(pat exp)
|
|
#((top) (top))
|
|
#("i3864" "i3865"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x keys clauses r mod)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i3853"
|
|
"i3854"
|
|
"i3855"
|
|
"i3856"
|
|
"i3857"))
|
|
#(ribcage
|
|
(gen-syntax-case
|
|
gen-clause
|
|
build-dispatch-call
|
|
convert-pattern)
|
|
((top) (top) (top) (top))
|
|
("i3677"
|
|
"i3675"
|
|
"i3673"
|
|
"i3671"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile))
|
|
'#(syntax-object
|
|
_
|
|
((top)
|
|
#(ribcage
|
|
#(pat exp)
|
|
#((top) (top))
|
|
#("i3864" "i3865"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x keys clauses r mod)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i3853"
|
|
"i3854"
|
|
"i3855"
|
|
"i3856"
|
|
"i3857"))
|
|
#(ribcage
|
|
(gen-syntax-case
|
|
gen-clause
|
|
build-dispatch-call
|
|
convert-pattern)
|
|
((top) (top) (top) (top))
|
|
("i3677"
|
|
"i3675"
|
|
"i3673"
|
|
"i3671"))
|
|
#(ribcage
|
|
(lambda-var-list
|
|
gen-var
|
|
strip
|
|
chi-lambda-case
|
|
lambda*-formals
|
|
chi-simple-lambda
|
|
lambda-formals
|
|
ellipsis?
|
|
chi-void
|
|
eval-local-transformer
|
|
chi-local-syntax
|
|
chi-body
|
|
chi-macro
|
|
chi-application
|
|
chi-expr
|
|
chi
|
|
chi-top
|
|
syntax-type
|
|
chi-when-list
|
|
chi-install-global
|
|
chi-top-sequence
|
|
chi-sequence
|
|
source-wrap
|
|
wrap
|
|
bound-id-member?
|
|
distinct-bound-ids?
|
|
valid-bound-ids?
|
|
bound-id=?
|
|
free-id=?
|
|
id-var-name
|
|
same-marks?
|
|
join-marks
|
|
join-wraps
|
|
smart-append
|
|
make-binding-wrap
|
|
extend-ribcage!
|
|
make-empty-ribcage
|
|
new-mark
|
|
anti-mark
|
|
the-anti-mark
|
|
top-marked?
|
|
top-wrap
|
|
empty-wrap
|
|
set-ribcage-labels!
|
|
set-ribcage-marks!
|
|
set-ribcage-symnames!
|
|
ribcage-labels
|
|
ribcage-marks
|
|
ribcage-symnames
|
|
ribcage?
|
|
make-ribcage
|
|
gen-labels
|
|
gen-label
|
|
make-rename
|
|
rename-marks
|
|
rename-new
|
|
rename-old
|
|
subst-rename?
|
|
wrap-subst
|
|
wrap-marks
|
|
make-wrap
|
|
id-sym-name&marks
|
|
id-sym-name
|
|
id?
|
|
nonsymbol-id?
|
|
global-extend
|
|
lookup
|
|
macros-only-env
|
|
extend-var-env
|
|
extend-env
|
|
null-env
|
|
binding-value
|
|
binding-type
|
|
make-binding
|
|
arg-check
|
|
source-annotation
|
|
no-source
|
|
set-syntax-object-module!
|
|
set-syntax-object-wrap!
|
|
set-syntax-object-expression!
|
|
syntax-object-module
|
|
syntax-object-wrap
|
|
syntax-object-expression
|
|
syntax-object?
|
|
make-syntax-object
|
|
build-lexical-var
|
|
build-letrec
|
|
build-named-let
|
|
build-let
|
|
build-sequence
|
|
build-data
|
|
build-primref
|
|
build-lambda-case
|
|
build-case-lambda
|
|
build-simple-lambda
|
|
build-global-definition
|
|
build-global-assignment
|
|
build-global-reference
|
|
analyze-variable
|
|
build-lexical-assignment
|
|
build-lexical-reference
|
|
build-dynlet
|
|
build-conditional
|
|
build-application
|
|
build-void
|
|
maybe-name-value!
|
|
decorate-source
|
|
get-global-definition-hook
|
|
put-global-definition-hook
|
|
gensym-hook
|
|
local-eval-hook
|
|
top-level-eval-hook
|
|
fx<
|
|
fx=
|
|
fx-
|
|
fx+
|
|
set-lambda-meta!
|
|
lambda-meta
|
|
lambda?
|
|
make-dynlet
|
|
make-letrec
|
|
make-let
|
|
make-lambda-case
|
|
make-lambda
|
|
make-sequence
|
|
make-application
|
|
make-conditional
|
|
make-toplevel-define
|
|
make-toplevel-set
|
|
make-toplevel-ref
|
|
make-module-set
|
|
make-module-ref
|
|
make-lexical-set
|
|
make-lexical-ref
|
|
make-primitive-ref
|
|
make-const
|
|
make-void)
|
|
((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
("i490"
|
|
"i488"
|
|
"i486"
|
|
"i484"
|
|
"i482"
|
|
"i480"
|
|
"i478"
|
|
"i476"
|
|
"i474"
|
|
"i472"
|
|
"i470"
|
|
"i468"
|
|
"i466"
|
|
"i464"
|
|
"i462"
|
|
"i460"
|
|
"i458"
|
|
"i456"
|
|
"i454"
|
|
"i452"
|
|
"i450"
|
|
"i448"
|
|
"i446"
|
|
"i444"
|
|
"i442"
|
|
"i440"
|
|
"i438"
|
|
"i436"
|
|
"i434"
|
|
"i432"
|
|
"i430"
|
|
"i428"
|
|
"i426"
|
|
"i424"
|
|
"i422"
|
|
"i420"
|
|
"i419"
|
|
"i418"
|
|
"i416"
|
|
"i415"
|
|
"i414"
|
|
"i413"
|
|
"i412"
|
|
"i410"
|
|
"i408"
|
|
"i406"
|
|
"i404"
|
|
"i402"
|
|
"i400"
|
|
"i398"
|
|
"i396"
|
|
"i393"
|
|
"i391"
|
|
"i390"
|
|
"i389"
|
|
"i388"
|
|
"i387"
|
|
"i386"
|
|
"i385"
|
|
"i384"
|
|
"i383"
|
|
"i381"
|
|
"i380"
|
|
"i378"
|
|
"i376"
|
|
"i374"
|
|
"i372"
|
|
"i370"
|
|
"i368"
|
|
"i366"
|
|
"i365"
|
|
"i364"
|
|
"i363"
|
|
"i362"
|
|
"i361"
|
|
"i359"
|
|
"i358"
|
|
"i356"
|
|
"i354"
|
|
"i352"
|
|
"i350"
|
|
"i348"
|
|
"i346"
|
|
"i344"
|
|
"i342"
|
|
"i340"
|
|
"i338"
|
|
"i336"
|
|
"i334"
|
|
"i332"
|
|
"i330"
|
|
"i328"
|
|
"i326"
|
|
"i324"
|
|
"i322"
|
|
"i320"
|
|
"i318"
|
|
"i316"
|
|
"i314"
|
|
"i312"
|
|
"i310"
|
|
"i308"
|
|
"i306"
|
|
"i304"
|
|
"i302"
|
|
"i300"
|
|
"i298"
|
|
"i296"
|
|
"i294"
|
|
"i293"
|
|
"i291"
|
|
"i289"
|
|
"i287"
|
|
"i285"
|
|
"i283"
|
|
"i281"
|
|
"i279"
|
|
"i277"
|
|
"i275"
|
|
"i272"
|
|
"i270"
|
|
"i268"
|
|
"i266"
|
|
"i264"
|
|
"i262"
|
|
"i260"
|
|
"i258"
|
|
"i256"
|
|
"i254"
|
|
"i252"
|
|
"i250"
|
|
"i248"
|
|
"i246"
|
|
"i244"
|
|
"i242"
|
|
"i240"
|
|
"i238"))
|
|
#(ribcage
|
|
(define-structure
|
|
define-expansion-accessors
|
|
define-expansion-constructors
|
|
and-map*)
|
|
((top) (top) (top) (top))
|
|
("i40" "i39" "i38" "i36")))
|
|
(hygiene guile)))
|
|
(#{chi\ 461}#
|
|
#{exp\ 3867}#
|
|
#{r\ 3851}#
|
|
'(())
|
|
#{mod\ 3852}#)
|
|
(begin
|
|
(let ((#{labels\ 3875}#
|
|
(list (#{gen-label\ 392}#)))
|
|
(#{var\ 3876}#
|
|
(#{gen-var\ 489}#
|
|
#{pat\ 3866}#)))
|
|
(#{build-application\ 305}#
|
|
#f
|
|
(#{build-simple-lambda\ 323}#
|
|
#f
|
|
(list (syntax->datum
|
|
#{pat\ 3866}#))
|
|
#f
|
|
(list #{var\ 3876}#)
|
|
'()
|
|
(#{chi\ 461}#
|
|
#{exp\ 3867}#
|
|
(#{extend-env\ 367}#
|
|
#{labels\ 3875}#
|
|
(list (cons 'syntax
|
|
(cons #{var\ 3876}#
|
|
0)))
|
|
#{r\ 3851}#)
|
|
(#{make-binding-wrap\ 423}#
|
|
(list #{pat\ 3866}#)
|
|
#{labels\ 3875}#
|
|
'(()))
|
|
#{mod\ 3852}#))
|
|
(list #{x\ 3848}#)))))
|
|
(#{gen-clause\ 3676}#
|
|
#{x\ 3848}#
|
|
#{keys\ 3849}#
|
|
(cdr #{clauses\ 3850}#)
|
|
#{r\ 3851}#
|
|
#{pat\ 3866}#
|
|
#t
|
|
#{exp\ 3867}#
|
|
#{mod\ 3852}#)))
|
|
#{tmp\ 3863}#)
|
|
(let ((#{tmp\ 3882}#
|
|
($sc-dispatch
|
|
#{tmp\ 3862}#
|
|
'(any any any))))
|
|
(if #{tmp\ 3882}#
|
|
(@apply
|
|
(lambda (#{pat\ 3886}#
|
|
#{fender\ 3887}#
|
|
#{exp\ 3888}#)
|
|
(#{gen-clause\ 3676}#
|
|
#{x\ 3848}#
|
|
#{keys\ 3849}#
|
|
(cdr #{clauses\ 3850}#)
|
|
#{r\ 3851}#
|
|
#{pat\ 3886}#
|
|
#{fender\ 3887}#
|
|
#{exp\ 3888}#
|
|
#{mod\ 3852}#))
|
|
#{tmp\ 3882}#)
|
|
(let ((#{_\ 3890}# #{tmp\ 3862}#))
|
|
(syntax-violation
|
|
'syntax-case
|
|
"invalid clause"
|
|
(car #{clauses\ 3850}#))))))))))))
|
|
(begin
|
|
(lambda (#{e\ 3891}#
|
|
#{r\ 3892}#
|
|
#{w\ 3893}#
|
|
#{s\ 3894}#
|
|
#{mod\ 3895}#)
|
|
(begin
|
|
(let ((#{e\ 3902}#
|
|
(#{source-wrap\ 447}#
|
|
#{e\ 3891}#
|
|
#{w\ 3893}#
|
|
#{s\ 3894}#
|
|
#{mod\ 3895}#)))
|
|
(let ((#{tmp\ 3903}# #{e\ 3902}#))
|
|
(let ((#{tmp\ 3904}#
|
|
($sc-dispatch
|
|
#{tmp\ 3903}#
|
|
'(_ any each-any . each-any))))
|
|
(if #{tmp\ 3904}#
|
|
(@apply
|
|
(lambda (#{val\ 3908}#
|
|
#{key\ 3909}#
|
|
#{m\ 3910}#)
|
|
(if (and-map
|
|
(lambda (#{x\ 3911}#)
|
|
(if (#{id?\ 379}# #{x\ 3911}#)
|
|
(not (#{ellipsis?\ 477}#
|
|
#{x\ 3911}#))
|
|
#f))
|
|
#{key\ 3909}#)
|
|
(begin
|
|
(let ((#{x\ 3917}#
|
|
(#{gen-var\ 489}# 'tmp)))
|
|
(#{build-application\ 305}#
|
|
#{s\ 3894}#
|
|
(#{build-simple-lambda\ 323}#
|
|
#f
|
|
(list 'tmp)
|
|
#f
|
|
(list #{x\ 3917}#)
|
|
'()
|
|
(#{gen-syntax-case\ 3678}#
|
|
(#{build-lexical-reference\ 311}#
|
|
'value
|
|
#f
|
|
'tmp
|
|
#{x\ 3917}#)
|
|
#{key\ 3909}#
|
|
#{m\ 3910}#
|
|
#{r\ 3892}#
|
|
#{mod\ 3895}#))
|
|
(list (#{chi\ 461}#
|
|
#{val\ 3908}#
|
|
#{r\ 3892}#
|
|
'(())
|
|
#{mod\ 3895}#)))))
|
|
(syntax-violation
|
|
'syntax-case
|
|
"invalid literals list"
|
|
#{e\ 3902}#)))
|
|
#{tmp\ 3904}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 3903}#))))))))))
|
|
(set! macroexpand
|
|
(lambda*
|
|
(#{x\ 3923}#
|
|
#:optional
|
|
(#{m\ 3925}# 'e)
|
|
(#{esew\ 3927}# '(eval)))
|
|
(#{chi-top\ 459}#
|
|
#{x\ 3923}#
|
|
'()
|
|
'((top))
|
|
#{m\ 3925}#
|
|
#{esew\ 3927}#
|
|
(cons 'hygiene (module-name (current-module))))))
|
|
(set! identifier?
|
|
(lambda (#{x\ 3931}#)
|
|
(#{nonsymbol-id?\ 377}# #{x\ 3931}#)))
|
|
(set! datum->syntax
|
|
(lambda (#{id\ 3933}# #{datum\ 3934}#)
|
|
(#{make-syntax-object\ 343}#
|
|
#{datum\ 3934}#
|
|
(#{syntax-object-wrap\ 349}# #{id\ 3933}#)
|
|
(#{syntax-object-module\ 351}# #{id\ 3933}#))))
|
|
(set! syntax->datum
|
|
(lambda (#{x\ 3937}#)
|
|
(#{strip\ 487}# #{x\ 3937}# '(()))))
|
|
(set! syntax-source
|
|
(lambda (#{x\ 3940}#)
|
|
(#{source-annotation\ 360}# #{x\ 3940}#)))
|
|
(set! generate-temporaries
|
|
(lambda (#{ls\ 3942}#)
|
|
(begin
|
|
(begin
|
|
(let ((#{x\ 3946}# #{ls\ 3942}#))
|
|
(if (not (list? #{x\ 3946}#))
|
|
(syntax-violation
|
|
'generate-temporaries
|
|
"invalid argument"
|
|
#{x\ 3946}#))))
|
|
(map (lambda (#{x\ 3947}#)
|
|
(#{wrap\ 445}# (gensym) '((top)) #f))
|
|
#{ls\ 3942}#))))
|
|
(set! free-identifier=?
|
|
(lambda (#{x\ 3951}# #{y\ 3952}#)
|
|
(begin
|
|
(begin
|
|
(let ((#{x\ 3957}# #{x\ 3951}#))
|
|
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3957}#))
|
|
(syntax-violation
|
|
'free-identifier=?
|
|
"invalid argument"
|
|
#{x\ 3957}#))))
|
|
(begin
|
|
(let ((#{x\ 3960}# #{y\ 3952}#))
|
|
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3960}#))
|
|
(syntax-violation
|
|
'free-identifier=?
|
|
"invalid argument"
|
|
#{x\ 3960}#))))
|
|
(#{free-id=?\ 435}# #{x\ 3951}# #{y\ 3952}#))))
|
|
(set! bound-identifier=?
|
|
(lambda (#{x\ 3961}# #{y\ 3962}#)
|
|
(begin
|
|
(begin
|
|
(let ((#{x\ 3967}# #{x\ 3961}#))
|
|
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3967}#))
|
|
(syntax-violation
|
|
'bound-identifier=?
|
|
"invalid argument"
|
|
#{x\ 3967}#))))
|
|
(begin
|
|
(let ((#{x\ 3970}# #{y\ 3962}#))
|
|
(if (not (#{nonsymbol-id?\ 377}# #{x\ 3970}#))
|
|
(syntax-violation
|
|
'bound-identifier=?
|
|
"invalid argument"
|
|
#{x\ 3970}#))))
|
|
(#{bound-id=?\ 437}# #{x\ 3961}# #{y\ 3962}#))))
|
|
(set! syntax-violation
|
|
(lambda*
|
|
(#{who\ 3971}#
|
|
#{message\ 3972}#
|
|
#{form\ 3973}#
|
|
#:optional
|
|
(#{subform\ 3977}# #f))
|
|
(begin
|
|
(begin
|
|
(let ((#{x\ 3981}# #{who\ 3971}#))
|
|
(if (not (let ((#{x\ 3982}# #{x\ 3981}#))
|
|
(begin
|
|
(let ((#{t\ 3986}# (not #{x\ 3982}#)))
|
|
(if #{t\ 3986}#
|
|
#{t\ 3986}#
|
|
(begin
|
|
(let ((#{t\ 3989}#
|
|
(string? #{x\ 3982}#)))
|
|
(if #{t\ 3989}#
|
|
#{t\ 3989}#
|
|
(symbol? #{x\ 3982}#)))))))))
|
|
(syntax-violation
|
|
'syntax-violation
|
|
"invalid argument"
|
|
#{x\ 3981}#))))
|
|
(begin
|
|
(let ((#{x\ 3993}# #{message\ 3972}#))
|
|
(if (not (string? #{x\ 3993}#))
|
|
(syntax-violation
|
|
'syntax-violation
|
|
"invalid argument"
|
|
#{x\ 3993}#))))
|
|
(throw 'syntax-error
|
|
#{who\ 3971}#
|
|
#{message\ 3972}#
|
|
(#{source-annotation\ 360}#
|
|
(begin
|
|
(let ((#{t\ 3996}# #{form\ 3973}#))
|
|
(if #{t\ 3996}#
|
|
#{t\ 3996}#
|
|
#{subform\ 3977}#))))
|
|
(#{strip\ 487}# #{form\ 3973}# '(()))
|
|
(if #{subform\ 3977}#
|
|
(#{strip\ 487}# #{subform\ 3977}# '(()))
|
|
#f)))))
|
|
(letrec*
|
|
((#{match-each\ 4003}#
|
|
(lambda (#{e\ 4016}#
|
|
#{p\ 4017}#
|
|
#{w\ 4018}#
|
|
#{mod\ 4019}#)
|
|
(if (pair? #{e\ 4016}#)
|
|
(begin
|
|
(let ((#{first\ 4027}#
|
|
(#{match\ 4015}#
|
|
(car #{e\ 4016}#)
|
|
#{p\ 4017}#
|
|
#{w\ 4018}#
|
|
'()
|
|
#{mod\ 4019}#)))
|
|
(if #{first\ 4027}#
|
|
(begin
|
|
(let ((#{rest\ 4031}#
|
|
(#{match-each\ 4003}#
|
|
(cdr #{e\ 4016}#)
|
|
#{p\ 4017}#
|
|
#{w\ 4018}#
|
|
#{mod\ 4019}#)))
|
|
(if #{rest\ 4031}#
|
|
(cons #{first\ 4027}# #{rest\ 4031}#)
|
|
#f)))
|
|
#f)))
|
|
(if (null? #{e\ 4016}#)
|
|
'()
|
|
(if (#{syntax-object?\ 345}# #{e\ 4016}#)
|
|
(#{match-each\ 4003}#
|
|
(#{syntax-object-expression\ 347}# #{e\ 4016}#)
|
|
#{p\ 4017}#
|
|
(#{join-wraps\ 427}#
|
|
#{w\ 4018}#
|
|
(#{syntax-object-wrap\ 349}# #{e\ 4016}#))
|
|
(#{syntax-object-module\ 351}# #{e\ 4016}#))
|
|
#f)))))
|
|
(#{match-each+\ 4005}#
|
|
(lambda (#{e\ 4039}#
|
|
#{x-pat\ 4040}#
|
|
#{y-pat\ 4041}#
|
|
#{z-pat\ 4042}#
|
|
#{w\ 4043}#
|
|
#{r\ 4044}#
|
|
#{mod\ 4045}#)
|
|
(letrec*
|
|
((#{f\ 4056}#
|
|
(lambda (#{e\ 4057}# #{w\ 4058}#)
|
|
(if (pair? #{e\ 4057}#)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{f\ 4056}# (cdr #{e\ 4057}#) #{w\ 4058}#))
|
|
(lambda (#{xr*\ 4061}#
|
|
#{y-pat\ 4062}#
|
|
#{r\ 4063}#)
|
|
(if #{r\ 4063}#
|
|
(if (null? #{y-pat\ 4062}#)
|
|
(begin
|
|
(let ((#{xr\ 4068}#
|
|
(#{match\ 4015}#
|
|
(car #{e\ 4057}#)
|
|
#{x-pat\ 4040}#
|
|
#{w\ 4058}#
|
|
'()
|
|
#{mod\ 4045}#)))
|
|
(if #{xr\ 4068}#
|
|
(values
|
|
(cons #{xr\ 4068}# #{xr*\ 4061}#)
|
|
#{y-pat\ 4062}#
|
|
#{r\ 4063}#)
|
|
(values #f #f #f))))
|
|
(values
|
|
'()
|
|
(cdr #{y-pat\ 4062}#)
|
|
(#{match\ 4015}#
|
|
(car #{e\ 4057}#)
|
|
(car #{y-pat\ 4062}#)
|
|
#{w\ 4058}#
|
|
#{r\ 4063}#
|
|
#{mod\ 4045}#)))
|
|
(values #f #f #f))))
|
|
(if (#{syntax-object?\ 345}# #{e\ 4057}#)
|
|
(#{f\ 4056}#
|
|
(#{syntax-object-expression\ 347}# #{e\ 4057}#)
|
|
(#{join-wraps\ 427}# #{w\ 4058}# #{e\ 4057}#))
|
|
(values
|
|
'()
|
|
#{y-pat\ 4041}#
|
|
(#{match\ 4015}#
|
|
#{e\ 4057}#
|
|
#{z-pat\ 4042}#
|
|
#{w\ 4058}#
|
|
#{r\ 4044}#
|
|
#{mod\ 4045}#)))))))
|
|
(begin (#{f\ 4056}# #{e\ 4039}# #{w\ 4043}#)))))
|
|
(#{match-each-any\ 4007}#
|
|
(lambda (#{e\ 4072}# #{w\ 4073}# #{mod\ 4074}#)
|
|
(if (pair? #{e\ 4072}#)
|
|
(begin
|
|
(let ((#{l\ 4081}#
|
|
(#{match-each-any\ 4007}#
|
|
(cdr #{e\ 4072}#)
|
|
#{w\ 4073}#
|
|
#{mod\ 4074}#)))
|
|
(if #{l\ 4081}#
|
|
(cons (#{wrap\ 445}#
|
|
(car #{e\ 4072}#)
|
|
#{w\ 4073}#
|
|
#{mod\ 4074}#)
|
|
#{l\ 4081}#)
|
|
#f)))
|
|
(if (null? #{e\ 4072}#)
|
|
'()
|
|
(if (#{syntax-object?\ 345}# #{e\ 4072}#)
|
|
(#{match-each-any\ 4007}#
|
|
(#{syntax-object-expression\ 347}# #{e\ 4072}#)
|
|
(#{join-wraps\ 427}#
|
|
#{w\ 4073}#
|
|
(#{syntax-object-wrap\ 349}# #{e\ 4072}#))
|
|
#{mod\ 4074}#)
|
|
#f)))))
|
|
(#{match-empty\ 4009}#
|
|
(lambda (#{p\ 4089}# #{r\ 4090}#)
|
|
(if (null? #{p\ 4089}#)
|
|
#{r\ 4090}#
|
|
(if (eq? #{p\ 4089}# '_)
|
|
#{r\ 4090}#
|
|
(if (eq? #{p\ 4089}# 'any)
|
|
(cons '() #{r\ 4090}#)
|
|
(if (pair? #{p\ 4089}#)
|
|
(#{match-empty\ 4009}#
|
|
(car #{p\ 4089}#)
|
|
(#{match-empty\ 4009}#
|
|
(cdr #{p\ 4089}#)
|
|
#{r\ 4090}#))
|
|
(if (eq? #{p\ 4089}# 'each-any)
|
|
(cons '() #{r\ 4090}#)
|
|
(begin
|
|
(let ((#{atom-key\ 4106}#
|
|
(vector-ref #{p\ 4089}# 0)))
|
|
(if (eqv? #{atom-key\ 4106}# 'each)
|
|
(#{match-empty\ 4009}#
|
|
(vector-ref #{p\ 4089}# 1)
|
|
#{r\ 4090}#)
|
|
(if (eqv? #{atom-key\ 4106}# 'each+)
|
|
(#{match-empty\ 4009}#
|
|
(vector-ref #{p\ 4089}# 1)
|
|
(#{match-empty\ 4009}#
|
|
(reverse (vector-ref #{p\ 4089}# 2))
|
|
(#{match-empty\ 4009}#
|
|
(vector-ref #{p\ 4089}# 3)
|
|
#{r\ 4090}#)))
|
|
(if (if (eqv? #{atom-key\ 4106}# 'free-id)
|
|
#t
|
|
(eqv? #{atom-key\ 4106}# 'atom))
|
|
#{r\ 4090}#
|
|
(if (eqv? #{atom-key\ 4106}# 'vector)
|
|
(#{match-empty\ 4009}#
|
|
(vector-ref #{p\ 4089}# 1)
|
|
#{r\ 4090}#))))))))))))))
|
|
(#{combine\ 4011}#
|
|
(lambda (#{r*\ 4111}# #{r\ 4112}#)
|
|
(if (null? (car #{r*\ 4111}#))
|
|
#{r\ 4112}#
|
|
(cons (map car #{r*\ 4111}#)
|
|
(#{combine\ 4011}#
|
|
(map cdr #{r*\ 4111}#)
|
|
#{r\ 4112}#)))))
|
|
(#{match*\ 4013}#
|
|
(lambda (#{e\ 4115}#
|
|
#{p\ 4116}#
|
|
#{w\ 4117}#
|
|
#{r\ 4118}#
|
|
#{mod\ 4119}#)
|
|
(if (null? #{p\ 4116}#)
|
|
(if (null? #{e\ 4115}#) #{r\ 4118}# #f)
|
|
(if (pair? #{p\ 4116}#)
|
|
(if (pair? #{e\ 4115}#)
|
|
(#{match\ 4015}#
|
|
(car #{e\ 4115}#)
|
|
(car #{p\ 4116}#)
|
|
#{w\ 4117}#
|
|
(#{match\ 4015}#
|
|
(cdr #{e\ 4115}#)
|
|
(cdr #{p\ 4116}#)
|
|
#{w\ 4117}#
|
|
#{r\ 4118}#
|
|
#{mod\ 4119}#)
|
|
#{mod\ 4119}#)
|
|
#f)
|
|
(if (eq? #{p\ 4116}# 'each-any)
|
|
(begin
|
|
(let ((#{l\ 4136}#
|
|
(#{match-each-any\ 4007}#
|
|
#{e\ 4115}#
|
|
#{w\ 4117}#
|
|
#{mod\ 4119}#)))
|
|
(if #{l\ 4136}#
|
|
(cons #{l\ 4136}# #{r\ 4118}#)
|
|
#f)))
|
|
(begin
|
|
(let ((#{atom-key\ 4142}#
|
|
(vector-ref #{p\ 4116}# 0)))
|
|
(if (eqv? #{atom-key\ 4142}# 'each)
|
|
(if (null? #{e\ 4115}#)
|
|
(#{match-empty\ 4009}#
|
|
(vector-ref #{p\ 4116}# 1)
|
|
#{r\ 4118}#)
|
|
(begin
|
|
(let ((#{l\ 4145}#
|
|
(#{match-each\ 4003}#
|
|
#{e\ 4115}#
|
|
(vector-ref #{p\ 4116}# 1)
|
|
#{w\ 4117}#
|
|
#{mod\ 4119}#)))
|
|
(if #{l\ 4145}#
|
|
(letrec*
|
|
((#{collect\ 4150}#
|
|
(lambda (#{l\ 4151}#)
|
|
(if (null? (car #{l\ 4151}#))
|
|
#{r\ 4118}#
|
|
(cons (map car #{l\ 4151}#)
|
|
(#{collect\ 4150}#
|
|
(map cdr
|
|
#{l\ 4151}#)))))))
|
|
(begin
|
|
(#{collect\ 4150}# #{l\ 4145}#)))
|
|
#f))))
|
|
(if (eqv? #{atom-key\ 4142}# 'each+)
|
|
(call-with-values
|
|
(lambda ()
|
|
(#{match-each+\ 4005}#
|
|
#{e\ 4115}#
|
|
(vector-ref #{p\ 4116}# 1)
|
|
(vector-ref #{p\ 4116}# 2)
|
|
(vector-ref #{p\ 4116}# 3)
|
|
#{w\ 4117}#
|
|
#{r\ 4118}#
|
|
#{mod\ 4119}#))
|
|
(lambda (#{xr*\ 4153}#
|
|
#{y-pat\ 4154}#
|
|
#{r\ 4155}#)
|
|
(if #{r\ 4155}#
|
|
(if (null? #{y-pat\ 4154}#)
|
|
(if (null? #{xr*\ 4153}#)
|
|
(#{match-empty\ 4009}#
|
|
(vector-ref #{p\ 4116}# 1)
|
|
#{r\ 4155}#)
|
|
(#{combine\ 4011}#
|
|
#{xr*\ 4153}#
|
|
#{r\ 4155}#))
|
|
#f)
|
|
#f)))
|
|
(if (eqv? #{atom-key\ 4142}# 'free-id)
|
|
(if (#{id?\ 379}# #{e\ 4115}#)
|
|
(if (#{free-id=?\ 435}#
|
|
(#{wrap\ 445}#
|
|
#{e\ 4115}#
|
|
#{w\ 4117}#
|
|
#{mod\ 4119}#)
|
|
(vector-ref #{p\ 4116}# 1))
|
|
#{r\ 4118}#
|
|
#f)
|
|
#f)
|
|
(if (eqv? #{atom-key\ 4142}# 'atom)
|
|
(if (equal?
|
|
(vector-ref #{p\ 4116}# 1)
|
|
(#{strip\ 487}#
|
|
#{e\ 4115}#
|
|
#{w\ 4117}#))
|
|
#{r\ 4118}#
|
|
#f)
|
|
(if (eqv? #{atom-key\ 4142}# 'vector)
|
|
(if (vector? #{e\ 4115}#)
|
|
(#{match\ 4015}#
|
|
(vector->list #{e\ 4115}#)
|
|
(vector-ref #{p\ 4116}# 1)
|
|
#{w\ 4117}#
|
|
#{r\ 4118}#
|
|
#{mod\ 4119}#)
|
|
#f)))))))))))))
|
|
(#{match\ 4015}#
|
|
(lambda (#{e\ 4172}#
|
|
#{p\ 4173}#
|
|
#{w\ 4174}#
|
|
#{r\ 4175}#
|
|
#{mod\ 4176}#)
|
|
(if (not #{r\ 4175}#)
|
|
#f
|
|
(if (eq? #{p\ 4173}# '_)
|
|
#{r\ 4175}#
|
|
(if (eq? #{p\ 4173}# 'any)
|
|
(cons (#{wrap\ 445}#
|
|
#{e\ 4172}#
|
|
#{w\ 4174}#
|
|
#{mod\ 4176}#)
|
|
#{r\ 4175}#)
|
|
(if (#{syntax-object?\ 345}# #{e\ 4172}#)
|
|
(#{match*\ 4013}#
|
|
(#{syntax-object-expression\ 347}# #{e\ 4172}#)
|
|
#{p\ 4173}#
|
|
(#{join-wraps\ 427}#
|
|
#{w\ 4174}#
|
|
(#{syntax-object-wrap\ 349}# #{e\ 4172}#))
|
|
#{r\ 4175}#
|
|
(#{syntax-object-module\ 351}# #{e\ 4172}#))
|
|
(#{match*\ 4013}#
|
|
#{e\ 4172}#
|
|
#{p\ 4173}#
|
|
#{w\ 4174}#
|
|
#{r\ 4175}#
|
|
#{mod\ 4176}#))))))))
|
|
(begin
|
|
(set! $sc-dispatch
|
|
(lambda (#{e\ 4191}# #{p\ 4192}#)
|
|
(if (eq? #{p\ 4192}# 'any)
|
|
(list #{e\ 4191}#)
|
|
(if (eq? #{p\ 4192}# '_)
|
|
'()
|
|
(if (#{syntax-object?\ 345}# #{e\ 4191}#)
|
|
(#{match*\ 4013}#
|
|
(#{syntax-object-expression\ 347}# #{e\ 4191}#)
|
|
#{p\ 4192}#
|
|
(#{syntax-object-wrap\ 349}# #{e\ 4191}#)
|
|
'()
|
|
(#{syntax-object-module\ 351}# #{e\ 4191}#))
|
|
(#{match*\ 4013}#
|
|
#{e\ 4191}#
|
|
#{p\ 4192}#
|
|
'(())
|
|
'()
|
|
#f))))))))))))))
|
|
|
|
(define with-syntax
|
|
(make-syntax-transformer
|
|
'with-syntax
|
|
'macro
|
|
(lambda (#{x\ 4203}#)
|
|
(let ((#{tmp\ 4205}# #{x\ 4203}#))
|
|
(let ((#{tmp\ 4206}#
|
|
($sc-dispatch
|
|
#{tmp\ 4205}#
|
|
'(_ () any . each-any))))
|
|
(if #{tmp\ 4206}#
|
|
(@apply
|
|
(lambda (#{e1\ 4209}# #{e2\ 4210}#)
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(e1 e2)
|
|
#((top) (top))
|
|
#("i4207" "i4208"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4204")))
|
|
(hygiene guile))
|
|
(cons #{e1\ 4209}# #{e2\ 4210}#)))
|
|
#{tmp\ 4206}#)
|
|
(let ((#{tmp\ 4212}#
|
|
($sc-dispatch
|
|
#{tmp\ 4205}#
|
|
'(_ ((any any)) any . each-any))))
|
|
(if #{tmp\ 4212}#
|
|
(@apply
|
|
(lambda (#{out\ 4217}#
|
|
#{in\ 4218}#
|
|
#{e1\ 4219}#
|
|
#{e2\ 4220}#)
|
|
(list '#(syntax-object
|
|
syntax-case
|
|
((top)
|
|
#(ribcage
|
|
#(out in e1 e2)
|
|
#((top) (top) (top) (top))
|
|
#("i4213" "i4214" "i4215" "i4216"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4204")))
|
|
(hygiene guile))
|
|
#{in\ 4218}#
|
|
'()
|
|
(list #{out\ 4217}#
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(out in e1 e2)
|
|
#((top) (top) (top) (top))
|
|
#("i4213" "i4214" "i4215" "i4216"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4204")))
|
|
(hygiene guile))
|
|
(cons #{e1\ 4219}# #{e2\ 4220}#)))))
|
|
#{tmp\ 4212}#)
|
|
(let ((#{tmp\ 4222}#
|
|
($sc-dispatch
|
|
#{tmp\ 4205}#
|
|
'(_ #(each (any any)) any . each-any))))
|
|
(if #{tmp\ 4222}#
|
|
(@apply
|
|
(lambda (#{out\ 4227}#
|
|
#{in\ 4228}#
|
|
#{e1\ 4229}#
|
|
#{e2\ 4230}#)
|
|
(list '#(syntax-object
|
|
syntax-case
|
|
((top)
|
|
#(ribcage
|
|
#(out in e1 e2)
|
|
#((top) (top) (top) (top))
|
|
#("i4223" "i4224" "i4225" "i4226"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4204")))
|
|
(hygiene guile))
|
|
(cons '#(syntax-object
|
|
list
|
|
((top)
|
|
#(ribcage
|
|
#(out in e1 e2)
|
|
#((top) (top) (top) (top))
|
|
#("i4223" "i4224" "i4225" "i4226"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4204")))
|
|
(hygiene guile))
|
|
#{in\ 4228}#)
|
|
'()
|
|
(list #{out\ 4227}#
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(out in e1 e2)
|
|
#((top) (top) (top) (top))
|
|
#("i4223"
|
|
"i4224"
|
|
"i4225"
|
|
"i4226"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4204")))
|
|
(hygiene guile))
|
|
(cons #{e1\ 4229}# #{e2\ 4230}#)))))
|
|
#{tmp\ 4222}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4205}#)))))))))))
|
|
|
|
(define syntax-rules
|
|
(make-syntax-transformer
|
|
'syntax-rules
|
|
'macro
|
|
(lambda (#{x\ 4234}#)
|
|
(let ((#{tmp\ 4236}# #{x\ 4234}#))
|
|
(let ((#{tmp\ 4237}#
|
|
($sc-dispatch
|
|
#{tmp\ 4236}#
|
|
'(_ each-any . #(each ((any . any) any))))))
|
|
(if #{tmp\ 4237}#
|
|
(@apply
|
|
(lambda (#{k\ 4242}#
|
|
#{keyword\ 4243}#
|
|
#{pattern\ 4244}#
|
|
#{template\ 4245}#)
|
|
(list '#(syntax-object
|
|
lambda
|
|
((top)
|
|
#(ribcage
|
|
#(k keyword pattern template)
|
|
#((top) (top) (top) (top))
|
|
#("i4238" "i4239" "i4240" "i4241"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
'(#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(k keyword pattern template)
|
|
#((top) (top) (top) (top))
|
|
#("i4238" "i4239" "i4240" "i4241"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile)))
|
|
(vector
|
|
'(#(syntax-object
|
|
macro-type
|
|
((top)
|
|
#(ribcage
|
|
#(k keyword pattern template)
|
|
#((top) (top) (top) (top))
|
|
#("i4238" "i4239" "i4240" "i4241"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
.
|
|
#(syntax-object
|
|
syntax-rules
|
|
((top)
|
|
#(ribcage
|
|
#(k keyword pattern template)
|
|
#((top) (top) (top) (top))
|
|
#("i4238" "i4239" "i4240" "i4241"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile)))
|
|
(cons '#(syntax-object
|
|
patterns
|
|
((top)
|
|
#(ribcage
|
|
#(k keyword pattern template)
|
|
#((top) (top) (top) (top))
|
|
#("i4238" "i4239" "i4240" "i4241"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
#{pattern\ 4244}#))
|
|
(cons '#(syntax-object
|
|
syntax-case
|
|
((top)
|
|
#(ribcage
|
|
#(k keyword pattern template)
|
|
#((top) (top) (top) (top))
|
|
#("i4238" "i4239" "i4240" "i4241"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
(cons '#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(k keyword pattern template)
|
|
#((top) (top) (top) (top))
|
|
#("i4238" "i4239" "i4240" "i4241"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
(cons #{k\ 4242}#
|
|
(map (lambda (#{tmp\ 4249}#
|
|
#{tmp\ 4248}#)
|
|
(list (cons '#(syntax-object
|
|
dummy
|
|
((top)
|
|
#(ribcage
|
|
#(k
|
|
keyword
|
|
pattern
|
|
template)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4238"
|
|
"i4239"
|
|
"i4240"
|
|
"i4241"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4235")))
|
|
(hygiene guile))
|
|
#{tmp\ 4248}#)
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage
|
|
#(k
|
|
keyword
|
|
pattern
|
|
template)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4238"
|
|
"i4239"
|
|
"i4240"
|
|
"i4241"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4235")))
|
|
(hygiene guile))
|
|
#{tmp\ 4249}#)))
|
|
#{template\ 4245}#
|
|
#{pattern\ 4244}#))))))
|
|
#{tmp\ 4237}#)
|
|
(let ((#{tmp\ 4250}#
|
|
($sc-dispatch
|
|
#{tmp\ 4236}#
|
|
'(_ each-any any . #(each ((any . any) any))))))
|
|
(if (if #{tmp\ 4250}#
|
|
(@apply
|
|
(lambda (#{k\ 4256}#
|
|
#{docstring\ 4257}#
|
|
#{keyword\ 4258}#
|
|
#{pattern\ 4259}#
|
|
#{template\ 4260}#)
|
|
(string? (syntax->datum #{docstring\ 4257}#)))
|
|
#{tmp\ 4250}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{k\ 4266}#
|
|
#{docstring\ 4267}#
|
|
#{keyword\ 4268}#
|
|
#{pattern\ 4269}#
|
|
#{template\ 4270}#)
|
|
(list '#(syntax-object
|
|
lambda
|
|
((top)
|
|
#(ribcage
|
|
#(k docstring keyword pattern template)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4261" "i4262" "i4263" "i4264" "i4265"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
'(#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(k docstring keyword pattern template)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4261" "i4262" "i4263" "i4264" "i4265"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile)))
|
|
#{docstring\ 4267}#
|
|
(vector
|
|
'(#(syntax-object
|
|
macro-type
|
|
((top)
|
|
#(ribcage
|
|
#(k docstring keyword pattern template)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4261" "i4262" "i4263" "i4264" "i4265"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
.
|
|
#(syntax-object
|
|
syntax-rules
|
|
((top)
|
|
#(ribcage
|
|
#(k docstring keyword pattern template)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4261" "i4262" "i4263" "i4264" "i4265"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile)))
|
|
(cons '#(syntax-object
|
|
patterns
|
|
((top)
|
|
#(ribcage
|
|
#(k docstring keyword pattern template)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4261"
|
|
"i4262"
|
|
"i4263"
|
|
"i4264"
|
|
"i4265"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
#{pattern\ 4269}#))
|
|
(cons '#(syntax-object
|
|
syntax-case
|
|
((top)
|
|
#(ribcage
|
|
#(k docstring keyword pattern template)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4261"
|
|
"i4262"
|
|
"i4263"
|
|
"i4264"
|
|
"i4265"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
(cons '#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(k
|
|
docstring
|
|
keyword
|
|
pattern
|
|
template)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4261"
|
|
"i4262"
|
|
"i4263"
|
|
"i4264"
|
|
"i4265"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4235")))
|
|
(hygiene guile))
|
|
(cons #{k\ 4266}#
|
|
(map (lambda (#{tmp\ 4274}#
|
|
#{tmp\ 4273}#)
|
|
(list (cons '#(syntax-object
|
|
dummy
|
|
((top)
|
|
#(ribcage
|
|
#(k
|
|
docstring
|
|
keyword
|
|
pattern
|
|
template)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4261"
|
|
"i4262"
|
|
"i4263"
|
|
"i4264"
|
|
"i4265"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4235")))
|
|
(hygiene
|
|
guile))
|
|
#{tmp\ 4273}#)
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage
|
|
#(k
|
|
docstring
|
|
keyword
|
|
pattern
|
|
template)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4261"
|
|
"i4262"
|
|
"i4263"
|
|
"i4264"
|
|
"i4265"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4235")))
|
|
(hygiene
|
|
guile))
|
|
#{tmp\ 4274}#)))
|
|
#{template\ 4270}#
|
|
#{pattern\ 4269}#))))))
|
|
#{tmp\ 4250}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4236}#)))))))))
|
|
|
|
(define let*
|
|
(make-syntax-transformer
|
|
'let*
|
|
'macro
|
|
(lambda (#{x\ 4275}#)
|
|
(let ((#{tmp\ 4277}# #{x\ 4275}#))
|
|
(let ((#{tmp\ 4278}#
|
|
($sc-dispatch
|
|
#{tmp\ 4277}#
|
|
'(any #(each (any any)) any . each-any))))
|
|
(if (if #{tmp\ 4278}#
|
|
(@apply
|
|
(lambda (#{let*\ 4284}#
|
|
#{x\ 4285}#
|
|
#{v\ 4286}#
|
|
#{e1\ 4287}#
|
|
#{e2\ 4288}#)
|
|
(and-map identifier? #{x\ 4285}#))
|
|
#{tmp\ 4278}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{let*\ 4295}#
|
|
#{x\ 4296}#
|
|
#{v\ 4297}#
|
|
#{e1\ 4298}#
|
|
#{e2\ 4299}#)
|
|
(letrec*
|
|
((#{f\ 4302}#
|
|
(lambda (#{bindings\ 4303}#)
|
|
(if (null? #{bindings\ 4303}#)
|
|
(cons '#(syntax-object
|
|
let
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f bindings)
|
|
#((top) (top))
|
|
#("i4300" "i4301"))
|
|
#(ribcage
|
|
#(let* x v e1 e2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4290"
|
|
"i4291"
|
|
"i4292"
|
|
"i4293"
|
|
"i4294"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4276")))
|
|
(hygiene guile))
|
|
(cons '() (cons #{e1\ 4298}# #{e2\ 4299}#)))
|
|
(let ((#{tmp\ 4308}#
|
|
(list (#{f\ 4302}# (cdr #{bindings\ 4303}#))
|
|
(car #{bindings\ 4303}#))))
|
|
(let ((#{tmp\ 4309}#
|
|
($sc-dispatch #{tmp\ 4308}# '(any any))))
|
|
(if #{tmp\ 4309}#
|
|
(@apply
|
|
(lambda (#{body\ 4312}# #{binding\ 4313}#)
|
|
(list '#(syntax-object
|
|
let
|
|
((top)
|
|
#(ribcage
|
|
#(body binding)
|
|
#((top) (top))
|
|
#("i4310" "i4311"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f bindings)
|
|
#((top) (top))
|
|
#("i4300" "i4301"))
|
|
#(ribcage
|
|
#(let* x v e1 e2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4290"
|
|
"i4291"
|
|
"i4292"
|
|
"i4293"
|
|
"i4294"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4276")))
|
|
(hygiene guile))
|
|
(list #{binding\ 4313}#)
|
|
#{body\ 4312}#))
|
|
#{tmp\ 4309}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4308}#))))))))
|
|
(begin
|
|
(#{f\ 4302}# (map list #{x\ 4296}# #{v\ 4297}#)))))
|
|
#{tmp\ 4278}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4277}#)))))))
|
|
|
|
(define do
|
|
(make-syntax-transformer
|
|
'do
|
|
'macro
|
|
(lambda (#{orig-x\ 4314}#)
|
|
(let ((#{tmp\ 4316}# #{orig-x\ 4314}#))
|
|
(let ((#{tmp\ 4317}#
|
|
($sc-dispatch
|
|
#{tmp\ 4316}#
|
|
'(_ #(each (any any . any))
|
|
(any . each-any)
|
|
.
|
|
each-any))))
|
|
(if #{tmp\ 4317}#
|
|
(@apply
|
|
(lambda (#{var\ 4324}#
|
|
#{init\ 4325}#
|
|
#{step\ 4326}#
|
|
#{e0\ 4327}#
|
|
#{e1\ 4328}#
|
|
#{c\ 4329}#)
|
|
(let ((#{tmp\ 4331}#
|
|
(map (lambda (#{v\ 4352}# #{s\ 4353}#)
|
|
(let ((#{tmp\ 4356}# #{s\ 4353}#))
|
|
(let ((#{tmp\ 4357}#
|
|
($sc-dispatch #{tmp\ 4356}# '())))
|
|
(if #{tmp\ 4357}#
|
|
(@apply
|
|
(lambda () #{v\ 4352}#)
|
|
#{tmp\ 4357}#)
|
|
(let ((#{tmp\ 4358}#
|
|
($sc-dispatch
|
|
#{tmp\ 4356}#
|
|
'(any))))
|
|
(if #{tmp\ 4358}#
|
|
(@apply
|
|
(lambda (#{e\ 4360}#) #{e\ 4360}#)
|
|
#{tmp\ 4358}#)
|
|
(let ((#{_\ 4362}# #{tmp\ 4356}#))
|
|
(syntax-violation
|
|
'do
|
|
"bad step expression"
|
|
#{orig-x\ 4314}#
|
|
#{s\ 4353}#))))))))
|
|
#{var\ 4324}#
|
|
#{step\ 4326}#)))
|
|
(let ((#{tmp\ 4332}#
|
|
($sc-dispatch #{tmp\ 4331}# 'each-any)))
|
|
(if #{tmp\ 4332}#
|
|
(@apply
|
|
(lambda (#{step\ 4334}#)
|
|
(let ((#{tmp\ 4335}# #{e1\ 4328}#))
|
|
(let ((#{tmp\ 4336}#
|
|
($sc-dispatch #{tmp\ 4335}# '())))
|
|
(if #{tmp\ 4336}#
|
|
(@apply
|
|
(lambda ()
|
|
(list '#(syntax-object
|
|
let
|
|
((top)
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var init step e0 e1 c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
'#(syntax-object
|
|
doloop
|
|
((top)
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var init step e0 e1 c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
(map list
|
|
#{var\ 4324}#
|
|
#{init\ 4325}#)
|
|
(list '#(syntax-object
|
|
if
|
|
((top)
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var init step e0 e1 c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
(list '#(syntax-object
|
|
not
|
|
((top)
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var
|
|
init
|
|
step
|
|
e0
|
|
e1
|
|
c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
#{e0\ 4327}#)
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var
|
|
init
|
|
step
|
|
e0
|
|
e1
|
|
c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
(append
|
|
#{c\ 4329}#
|
|
(list (cons '#(syntax-object
|
|
doloop
|
|
((top)
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var
|
|
init
|
|
step
|
|
e0
|
|
e1
|
|
c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene
|
|
guile))
|
|
#{step\ 4334}#)))))))
|
|
#{tmp\ 4336}#)
|
|
(let ((#{tmp\ 4341}#
|
|
($sc-dispatch
|
|
#{tmp\ 4335}#
|
|
'(any . each-any))))
|
|
(if #{tmp\ 4341}#
|
|
(@apply
|
|
(lambda (#{e1\ 4344}# #{e2\ 4345}#)
|
|
(list '#(syntax-object
|
|
let
|
|
((top)
|
|
#(ribcage
|
|
#(e1 e2)
|
|
#((top) (top))
|
|
#("i4342" "i4343"))
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var init step e0 e1 c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
'#(syntax-object
|
|
doloop
|
|
((top)
|
|
#(ribcage
|
|
#(e1 e2)
|
|
#((top) (top))
|
|
#("i4342" "i4343"))
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var init step e0 e1 c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
(map list
|
|
#{var\ 4324}#
|
|
#{init\ 4325}#)
|
|
(list '#(syntax-object
|
|
if
|
|
((top)
|
|
#(ribcage
|
|
#(e1 e2)
|
|
#((top) (top))
|
|
#("i4342" "i4343"))
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var
|
|
init
|
|
step
|
|
e0
|
|
e1
|
|
c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
#{e0\ 4327}#
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(e1 e2)
|
|
#((top) (top))
|
|
#("i4342"
|
|
"i4343"))
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var
|
|
init
|
|
step
|
|
e0
|
|
e1
|
|
c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
(cons #{e1\ 4344}#
|
|
#{e2\ 4345}#))
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(e1 e2)
|
|
#((top) (top))
|
|
#("i4342"
|
|
"i4343"))
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var
|
|
init
|
|
step
|
|
e0
|
|
e1
|
|
c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene guile))
|
|
(append
|
|
#{c\ 4329}#
|
|
(list (cons '#(syntax-object
|
|
doloop
|
|
((top)
|
|
#(ribcage
|
|
#(e1
|
|
e2)
|
|
#((top)
|
|
(top))
|
|
#("i4342"
|
|
"i4343"))
|
|
#(ribcage
|
|
#(step)
|
|
#((top))
|
|
#("i4333"))
|
|
#(ribcage
|
|
#(var
|
|
init
|
|
step
|
|
e0
|
|
e1
|
|
c)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4318"
|
|
"i4319"
|
|
"i4320"
|
|
"i4321"
|
|
"i4322"
|
|
"i4323"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(orig-x)
|
|
#((top))
|
|
#("i4315")))
|
|
(hygiene
|
|
guile))
|
|
#{step\ 4334}#)))))))
|
|
#{tmp\ 4341}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4335}#)))))))
|
|
#{tmp\ 4332}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4331}#)))))
|
|
#{tmp\ 4317}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4316}#)))))))
|
|
|
|
(define quasiquote
|
|
(make-syntax-transformer
|
|
'quasiquote
|
|
'macro
|
|
(letrec*
|
|
((#{quasicons\ 4369}#
|
|
(lambda (#{x\ 4373}# #{y\ 4374}#)
|
|
(let ((#{tmp\ 4378}# (list #{x\ 4373}# #{y\ 4374}#)))
|
|
(let ((#{tmp\ 4379}#
|
|
($sc-dispatch #{tmp\ 4378}# '(any any))))
|
|
(if #{tmp\ 4379}#
|
|
(@apply
|
|
(lambda (#{x\ 4382}# #{y\ 4383}#)
|
|
(let ((#{tmp\ 4384}# #{y\ 4383}#))
|
|
(let ((#{tmp\ 4385}#
|
|
($sc-dispatch
|
|
#{tmp\ 4384}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
any))))
|
|
(if #{tmp\ 4385}#
|
|
(@apply
|
|
(lambda (#{dy\ 4387}#)
|
|
(let ((#{tmp\ 4388}# #{x\ 4382}#))
|
|
(let ((#{tmp\ 4389}#
|
|
($sc-dispatch
|
|
#{tmp\ 4388}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(dy)
|
|
#((top))
|
|
#("i4386"))
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile)))
|
|
any))))
|
|
(if #{tmp\ 4389}#
|
|
(@apply
|
|
(lambda (#{dx\ 4391}#)
|
|
(list '#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(dx)
|
|
#((top))
|
|
#("i4390"))
|
|
#(ribcage
|
|
#(dy)
|
|
#((top))
|
|
#("i4386"))
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
(cons #{dx\ 4391}#
|
|
#{dy\ 4387}#)))
|
|
#{tmp\ 4389}#)
|
|
(let ((#{_\ 4393}# #{tmp\ 4388}#))
|
|
(if (null? #{dy\ 4387}#)
|
|
(list '#(syntax-object
|
|
list
|
|
((top)
|
|
#(ribcage
|
|
#(_)
|
|
#((top))
|
|
#("i4392"))
|
|
#(ribcage
|
|
#(dy)
|
|
#((top))
|
|
#("i4386"))
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
#{x\ 4382}#)
|
|
(list '#(syntax-object
|
|
cons
|
|
((top)
|
|
#(ribcage
|
|
#(_)
|
|
#((top))
|
|
#("i4392"))
|
|
#(ribcage
|
|
#(dy)
|
|
#((top))
|
|
#("i4386"))
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
#{x\ 4382}#
|
|
#{y\ 4383}#)))))))
|
|
#{tmp\ 4385}#)
|
|
(let ((#{tmp\ 4394}#
|
|
($sc-dispatch
|
|
#{tmp\ 4384}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
list
|
|
((top)
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile)))
|
|
.
|
|
any))))
|
|
(if #{tmp\ 4394}#
|
|
(@apply
|
|
(lambda (#{stuff\ 4396}#)
|
|
(cons '#(syntax-object
|
|
list
|
|
((top)
|
|
#(ribcage
|
|
#(stuff)
|
|
#((top))
|
|
#("i4395"))
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
(cons #{x\ 4382}# #{stuff\ 4396}#)))
|
|
#{tmp\ 4394}#)
|
|
(let ((#{else\ 4398}# #{tmp\ 4384}#))
|
|
(list '#(syntax-object
|
|
cons
|
|
((top)
|
|
#(ribcage
|
|
#(else)
|
|
#((top))
|
|
#("i4397"))
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4380" "i4381"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4375" "i4376"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
#{x\ 4382}#
|
|
#{y\ 4383}#))))))))
|
|
#{tmp\ 4379}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4378}#))))))
|
|
(#{quasiappend\ 4370}#
|
|
(lambda (#{x\ 4399}# #{y\ 4400}#)
|
|
(let ((#{tmp\ 4404}# (list #{x\ 4399}# #{y\ 4400}#)))
|
|
(let ((#{tmp\ 4405}#
|
|
($sc-dispatch #{tmp\ 4404}# '(any any))))
|
|
(if #{tmp\ 4405}#
|
|
(@apply
|
|
(lambda (#{x\ 4408}# #{y\ 4409}#)
|
|
(let ((#{tmp\ 4410}# #{y\ 4409}#))
|
|
(let ((#{tmp\ 4411}#
|
|
($sc-dispatch
|
|
#{tmp\ 4410}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4406" "i4407"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4401" "i4402"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
()))))
|
|
(if #{tmp\ 4411}#
|
|
(@apply (lambda () #{x\ 4408}#) #{tmp\ 4411}#)
|
|
(let ((#{_\ 4413}# #{tmp\ 4410}#))
|
|
(list '#(syntax-object
|
|
append
|
|
((top)
|
|
#(ribcage #(_) #((top)) #("i4412"))
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4406" "i4407"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x y)
|
|
#((top) (top))
|
|
#("i4401" "i4402"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile))
|
|
#{x\ 4408}#
|
|
#{y\ 4409}#))))))
|
|
#{tmp\ 4405}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4404}#))))))
|
|
(#{quasivector\ 4371}#
|
|
(lambda (#{x\ 4414}#)
|
|
(let ((#{tmp\ 4417}# #{x\ 4414}#))
|
|
(let ((#{x\ 4419}# #{tmp\ 4417}#))
|
|
(let ((#{tmp\ 4420}# #{x\ 4419}#))
|
|
(let ((#{tmp\ 4421}#
|
|
($sc-dispatch
|
|
#{tmp\ 4420}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage #(x) #((top)) #("i4418"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4415"))
|
|
#(ribcage
|
|
#(quasicons quasiappend quasivector quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
each-any))))
|
|
(if #{tmp\ 4421}#
|
|
(@apply
|
|
(lambda (#{x\ 4423}#)
|
|
(list '#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage #(x) #((top)) #("i4422"))
|
|
#(ribcage #(x) #((top)) #("i4418"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4415"))
|
|
#(ribcage
|
|
#(quasicons quasiappend quasivector quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile))
|
|
(list->vector #{x\ 4423}#)))
|
|
#{tmp\ 4421}#)
|
|
(let ((#{tmp\ 4425}#
|
|
($sc-dispatch
|
|
#{tmp\ 4420}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
list
|
|
((top)
|
|
#(ribcage #(x) #((top)) #("i4418"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4415"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
.
|
|
each-any))))
|
|
(if #{tmp\ 4425}#
|
|
(@apply
|
|
(lambda (#{x\ 4427}#)
|
|
(cons '#(syntax-object
|
|
vector
|
|
((top)
|
|
#(ribcage #(x) #((top)) #("i4426"))
|
|
#(ribcage #(x) #((top)) #("i4418"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4415"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile))
|
|
#{x\ 4427}#))
|
|
#{tmp\ 4425}#)
|
|
(let ((#{_\ 4430}# #{tmp\ 4420}#))
|
|
(list '#(syntax-object
|
|
list->vector
|
|
((top)
|
|
#(ribcage #(_) #((top)) #("i4429"))
|
|
#(ribcage #(x) #((top)) #("i4418"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4415"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile))
|
|
#{x\ 4419}#)))))))))))
|
|
(#{quasi\ 4372}#
|
|
(lambda (#{p\ 4431}# #{lev\ 4432}#)
|
|
(let ((#{tmp\ 4435}# #{p\ 4431}#))
|
|
(let ((#{tmp\ 4436}#
|
|
($sc-dispatch
|
|
#{tmp\ 4435}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
unquote
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons quasiappend quasivector quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
any))))
|
|
(if #{tmp\ 4436}#
|
|
(@apply
|
|
(lambda (#{p\ 4438}#)
|
|
(if (= #{lev\ 4432}# 0)
|
|
#{p\ 4438}#
|
|
(#{quasicons\ 4369}#
|
|
'(#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage #(p) #((top)) #("i4437"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons quasiappend quasivector quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
unquote
|
|
((top)
|
|
#(ribcage #(p) #((top)) #("i4437"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons quasiappend quasivector quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
(#{quasi\ 4372}#
|
|
(list #{p\ 4438}#)
|
|
(1- #{lev\ 4432}#)))))
|
|
#{tmp\ 4436}#)
|
|
(let ((#{tmp\ 4439}#
|
|
($sc-dispatch
|
|
#{tmp\ 4435}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
unquote
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons quasiappend quasivector quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
.
|
|
any))))
|
|
(if (if #{tmp\ 4439}#
|
|
(@apply
|
|
(lambda (#{args\ 4441}#) (= #{lev\ 4432}# 0))
|
|
#{tmp\ 4439}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{args\ 4443}#)
|
|
(syntax-violation
|
|
'unquote
|
|
"unquote takes exactly one argument"
|
|
#{p\ 4431}#
|
|
(cons '#(syntax-object
|
|
unquote
|
|
((top)
|
|
#(ribcage #(args) #((top)) #("i4442"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile))
|
|
#{args\ 4443}#)))
|
|
#{tmp\ 4439}#)
|
|
(let ((#{tmp\ 4444}#
|
|
($sc-dispatch
|
|
#{tmp\ 4435}#
|
|
'((#(free-id
|
|
#(syntax-object
|
|
unquote-splicing
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
any)
|
|
.
|
|
any))))
|
|
(if #{tmp\ 4444}#
|
|
(@apply
|
|
(lambda (#{p\ 4447}# #{q\ 4448}#)
|
|
(if (= #{lev\ 4432}# 0)
|
|
(#{quasiappend\ 4370}#
|
|
#{p\ 4447}#
|
|
(#{quasi\ 4372}# #{q\ 4448}# #{lev\ 4432}#))
|
|
(#{quasicons\ 4369}#
|
|
(#{quasicons\ 4369}#
|
|
'(#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(p q)
|
|
#((top) (top))
|
|
#("i4445" "i4446"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
unquote-splicing
|
|
((top)
|
|
#(ribcage
|
|
#(p q)
|
|
#((top) (top))
|
|
#("i4445" "i4446"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365" "i4366" "i4367" "i4368")))
|
|
(hygiene guile)))
|
|
(#{quasi\ 4372}#
|
|
(list #{p\ 4447}#)
|
|
(1- #{lev\ 4432}#)))
|
|
(#{quasi\ 4372}# #{q\ 4448}# #{lev\ 4432}#))))
|
|
#{tmp\ 4444}#)
|
|
(let ((#{tmp\ 4449}#
|
|
($sc-dispatch
|
|
#{tmp\ 4435}#
|
|
'((#(free-id
|
|
#(syntax-object
|
|
unquote-splicing
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile)))
|
|
.
|
|
any)
|
|
.
|
|
any))))
|
|
(if (if #{tmp\ 4449}#
|
|
(@apply
|
|
(lambda (#{args\ 4452}# #{q\ 4453}#)
|
|
(= #{lev\ 4432}# 0))
|
|
#{tmp\ 4449}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{args\ 4456}# #{q\ 4457}#)
|
|
(syntax-violation
|
|
'unquote-splicing
|
|
"unquote-splicing takes exactly one argument"
|
|
#{p\ 4431}#
|
|
(cons '#(syntax-object
|
|
unquote-splicing
|
|
((top)
|
|
#(ribcage
|
|
#(args q)
|
|
#((top) (top))
|
|
#("i4454" "i4455"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
#{args\ 4456}#)))
|
|
#{tmp\ 4449}#)
|
|
(let ((#{tmp\ 4458}#
|
|
($sc-dispatch
|
|
#{tmp\ 4435}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
quasiquote
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile)))
|
|
any))))
|
|
(if #{tmp\ 4458}#
|
|
(@apply
|
|
(lambda (#{p\ 4460}#)
|
|
(#{quasicons\ 4369}#
|
|
'(#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage #(p) #((top)) #("i4459"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
quasiquote
|
|
((top)
|
|
#(ribcage #(p) #((top)) #("i4459"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top) (top) (top) (top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile)))
|
|
(#{quasi\ 4372}#
|
|
(list #{p\ 4460}#)
|
|
(1+ #{lev\ 4432}#))))
|
|
#{tmp\ 4458}#)
|
|
(let ((#{tmp\ 4461}#
|
|
($sc-dispatch
|
|
#{tmp\ 4435}#
|
|
'(any . any))))
|
|
(if #{tmp\ 4461}#
|
|
(@apply
|
|
(lambda (#{p\ 4464}# #{q\ 4465}#)
|
|
(#{quasicons\ 4369}#
|
|
(#{quasi\ 4372}#
|
|
#{p\ 4464}#
|
|
#{lev\ 4432}#)
|
|
(#{quasi\ 4372}#
|
|
#{q\ 4465}#
|
|
#{lev\ 4432}#)))
|
|
#{tmp\ 4461}#)
|
|
(let ((#{tmp\ 4466}#
|
|
($sc-dispatch
|
|
#{tmp\ 4435}#
|
|
'#(vector each-any))))
|
|
(if #{tmp\ 4466}#
|
|
(@apply
|
|
(lambda (#{x\ 4468}#)
|
|
(#{quasivector\ 4371}#
|
|
(#{quasi\ 4372}#
|
|
#{x\ 4468}#
|
|
#{lev\ 4432}#)))
|
|
#{tmp\ 4466}#)
|
|
(let ((#{p\ 4471}# #{tmp\ 4435}#))
|
|
(list '#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(p)
|
|
#((top))
|
|
#("i4470"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(p lev)
|
|
#((top) (top))
|
|
#("i4433" "i4434"))
|
|
#(ribcage
|
|
#(quasicons
|
|
quasiappend
|
|
quasivector
|
|
quasi)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4365"
|
|
"i4366"
|
|
"i4367"
|
|
"i4368")))
|
|
(hygiene guile))
|
|
#{p\ 4471}#))))))))))))))))))))
|
|
(begin
|
|
(lambda (#{x\ 4472}#)
|
|
(let ((#{tmp\ 4474}# #{x\ 4472}#))
|
|
(let ((#{tmp\ 4475}#
|
|
($sc-dispatch #{tmp\ 4474}# '(_ any))))
|
|
(if #{tmp\ 4475}#
|
|
(@apply
|
|
(lambda (#{e\ 4477}#)
|
|
(#{quasi\ 4372}# #{e\ 4477}# 0))
|
|
#{tmp\ 4475}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4474}#)))))))))
|
|
|
|
(define include
|
|
(make-syntax-transformer
|
|
'include
|
|
'macro
|
|
(lambda (#{x\ 4478}#)
|
|
(letrec*
|
|
((#{read-file\ 4481}#
|
|
(lambda (#{fn\ 4482}# #{k\ 4483}#)
|
|
(begin
|
|
(let ((#{p\ 4487}# (open-input-file #{fn\ 4482}#)))
|
|
(letrec*
|
|
((#{f\ 4491}#
|
|
(lambda (#{x\ 4492}# #{result\ 4493}#)
|
|
(if (eof-object? #{x\ 4492}#)
|
|
(begin
|
|
(close-input-port #{p\ 4487}#)
|
|
(reverse #{result\ 4493}#))
|
|
(#{f\ 4491}#
|
|
(read #{p\ 4487}#)
|
|
(cons (datum->syntax #{k\ 4483}# #{x\ 4492}#)
|
|
#{result\ 4493}#))))))
|
|
(begin (#{f\ 4491}# (read #{p\ 4487}#) '()))))))))
|
|
(begin
|
|
(let ((#{tmp\ 4494}# #{x\ 4478}#))
|
|
(let ((#{tmp\ 4495}#
|
|
($sc-dispatch #{tmp\ 4494}# '(any any))))
|
|
(if #{tmp\ 4495}#
|
|
(@apply
|
|
(lambda (#{k\ 4498}# #{filename\ 4499}#)
|
|
(begin
|
|
(let ((#{fn\ 4501}# (syntax->datum #{filename\ 4499}#)))
|
|
(let ((#{tmp\ 4503}#
|
|
(#{read-file\ 4481}#
|
|
#{fn\ 4501}#
|
|
#{filename\ 4499}#)))
|
|
(let ((#{tmp\ 4504}#
|
|
($sc-dispatch #{tmp\ 4503}# 'each-any)))
|
|
(if #{tmp\ 4504}#
|
|
(@apply
|
|
(lambda (#{exp\ 4506}#)
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(exp)
|
|
#((top))
|
|
#("i4505"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(fn)
|
|
#((top))
|
|
#("i4500"))
|
|
#(ribcage
|
|
#(k filename)
|
|
#((top) (top))
|
|
#("i4496" "i4497"))
|
|
#(ribcage
|
|
(read-file)
|
|
((top))
|
|
("i4480"))
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4479")))
|
|
(hygiene guile))
|
|
#{exp\ 4506}#))
|
|
#{tmp\ 4504}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4503}#)))))))
|
|
#{tmp\ 4495}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4494}#)))))))))
|
|
|
|
(define include-from-path
|
|
(make-syntax-transformer
|
|
'include-from-path
|
|
'macro
|
|
(lambda (#{x\ 4508}#)
|
|
(let ((#{tmp\ 4510}# #{x\ 4508}#))
|
|
(let ((#{tmp\ 4511}#
|
|
($sc-dispatch #{tmp\ 4510}# '(any any))))
|
|
(if #{tmp\ 4511}#
|
|
(@apply
|
|
(lambda (#{k\ 4514}# #{filename\ 4515}#)
|
|
(begin
|
|
(let ((#{fn\ 4517}# (syntax->datum #{filename\ 4515}#)))
|
|
(let ((#{tmp\ 4519}#
|
|
(datum->syntax
|
|
#{filename\ 4515}#
|
|
(begin
|
|
(let ((#{t\ 4524}#
|
|
(%search-load-path #{fn\ 4517}#)))
|
|
(if #{t\ 4524}#
|
|
#{t\ 4524}#
|
|
(syntax-violation
|
|
'include-from-path
|
|
"file not found in path"
|
|
#{x\ 4508}#
|
|
#{filename\ 4515}#)))))))
|
|
(let ((#{fn\ 4521}# #{tmp\ 4519}#))
|
|
(list '#(syntax-object
|
|
include
|
|
((top)
|
|
#(ribcage #(fn) #((top)) #("i4520"))
|
|
#(ribcage () () ())
|
|
#(ribcage () () ())
|
|
#(ribcage #(fn) #((top)) #("i4516"))
|
|
#(ribcage
|
|
#(k filename)
|
|
#((top) (top))
|
|
#("i4512" "i4513"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4509")))
|
|
(hygiene guile))
|
|
#{fn\ 4521}#))))))
|
|
#{tmp\ 4511}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4510}#)))))))
|
|
|
|
(define unquote
|
|
(make-syntax-transformer
|
|
'unquote
|
|
'macro
|
|
(lambda (#{x\ 4526}#)
|
|
(let ((#{tmp\ 4528}# #{x\ 4526}#))
|
|
(let ((#{tmp\ 4529}#
|
|
($sc-dispatch #{tmp\ 4528}# '(_ any))))
|
|
(if #{tmp\ 4529}#
|
|
(@apply
|
|
(lambda (#{e\ 4531}#)
|
|
(syntax-violation
|
|
'unquote
|
|
"expression not valid outside of quasiquote"
|
|
#{x\ 4526}#))
|
|
#{tmp\ 4529}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4528}#)))))))
|
|
|
|
(define unquote-splicing
|
|
(make-syntax-transformer
|
|
'unquote-splicing
|
|
'macro
|
|
(lambda (#{x\ 4532}#)
|
|
(let ((#{tmp\ 4534}# #{x\ 4532}#))
|
|
(let ((#{tmp\ 4535}#
|
|
($sc-dispatch #{tmp\ 4534}# '(_ any))))
|
|
(if #{tmp\ 4535}#
|
|
(@apply
|
|
(lambda (#{e\ 4537}#)
|
|
(syntax-violation
|
|
'unquote-splicing
|
|
"expression not valid outside of quasiquote"
|
|
#{x\ 4532}#))
|
|
#{tmp\ 4535}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4534}#)))))))
|
|
|
|
(define case
|
|
(make-syntax-transformer
|
|
'case
|
|
'macro
|
|
(lambda (#{x\ 4538}#)
|
|
(let ((#{tmp\ 4540}# #{x\ 4538}#))
|
|
(let ((#{tmp\ 4541}#
|
|
($sc-dispatch
|
|
#{tmp\ 4540}#
|
|
'(_ any any . each-any))))
|
|
(if #{tmp\ 4541}#
|
|
(@apply
|
|
(lambda (#{e\ 4545}# #{m1\ 4546}# #{m2\ 4547}#)
|
|
(let ((#{tmp\ 4549}#
|
|
(letrec*
|
|
((#{f\ 4555}#
|
|
(lambda (#{clause\ 4556}# #{clauses\ 4557}#)
|
|
(if (null? #{clauses\ 4557}#)
|
|
(let ((#{tmp\ 4559}# #{clause\ 4556}#))
|
|
(let ((#{tmp\ 4560}#
|
|
($sc-dispatch
|
|
#{tmp\ 4559}#
|
|
'(#(free-id
|
|
#(syntax-object
|
|
else
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f clause clauses)
|
|
#((top) (top) (top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top) (top) (top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile)))
|
|
any
|
|
.
|
|
each-any))))
|
|
(if #{tmp\ 4560}#
|
|
(@apply
|
|
(lambda (#{e1\ 4563}# #{e2\ 4564}#)
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(e1 e2)
|
|
#((top) (top))
|
|
#("i4561" "i4562"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f clause clauses)
|
|
#((top) (top) (top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top) (top) (top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
(cons #{e1\ 4563}#
|
|
#{e2\ 4564}#)))
|
|
#{tmp\ 4560}#)
|
|
(let ((#{tmp\ 4566}#
|
|
($sc-dispatch
|
|
#{tmp\ 4559}#
|
|
'(each-any any . each-any))))
|
|
(if #{tmp\ 4566}#
|
|
(@apply
|
|
(lambda (#{k\ 4570}#
|
|
#{e1\ 4571}#
|
|
#{e2\ 4572}#)
|
|
(list '#(syntax-object
|
|
if
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top) (top) (top))
|
|
#("i4567"
|
|
"i4568"
|
|
"i4569"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f clause clauses)
|
|
#((top) (top) (top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top) (top) (top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
(list '#(syntax-object
|
|
memv
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4567"
|
|
"i4568"
|
|
"i4569"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
'#(syntax-object
|
|
t
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4567"
|
|
"i4568"
|
|
"i4569"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
(list '#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(k
|
|
e1
|
|
e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4567"
|
|
"i4568"
|
|
"i4569"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e
|
|
m1
|
|
m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene
|
|
guile))
|
|
#{k\ 4570}#))
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4567"
|
|
"i4568"
|
|
"i4569"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
(cons #{e1\ 4571}#
|
|
#{e2\ 4572}#))))
|
|
#{tmp\ 4566}#)
|
|
(let ((#{_\ 4576}# #{tmp\ 4559}#))
|
|
(syntax-violation
|
|
'case
|
|
"bad clause"
|
|
#{x\ 4538}#
|
|
#{clause\ 4556}#)))))))
|
|
(let ((#{tmp\ 4578}#
|
|
(#{f\ 4555}#
|
|
(car #{clauses\ 4557}#)
|
|
(cdr #{clauses\ 4557}#))))
|
|
(let ((#{rest\ 4580}# #{tmp\ 4578}#))
|
|
(let ((#{tmp\ 4581}# #{clause\ 4556}#))
|
|
(let ((#{tmp\ 4582}#
|
|
($sc-dispatch
|
|
#{tmp\ 4581}#
|
|
'(each-any any . each-any))))
|
|
(if #{tmp\ 4582}#
|
|
(@apply
|
|
(lambda (#{k\ 4586}#
|
|
#{e1\ 4587}#
|
|
#{e2\ 4588}#)
|
|
(list '#(syntax-object
|
|
if
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top) (top) (top))
|
|
#("i4583"
|
|
"i4584"
|
|
"i4585"))
|
|
#(ribcage
|
|
#(rest)
|
|
#((top))
|
|
#("i4579"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(f clause clauses)
|
|
#((top) (top) (top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top) (top) (top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
(list '#(syntax-object
|
|
memv
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4583"
|
|
"i4584"
|
|
"i4585"))
|
|
#(ribcage
|
|
#(rest)
|
|
#((top))
|
|
#("i4579"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
'#(syntax-object
|
|
t
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4583"
|
|
"i4584"
|
|
"i4585"))
|
|
#(ribcage
|
|
#(rest)
|
|
#((top))
|
|
#("i4579"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
(list '#(syntax-object
|
|
quote
|
|
((top)
|
|
#(ribcage
|
|
#(k
|
|
e1
|
|
e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4583"
|
|
"i4584"
|
|
"i4585"))
|
|
#(ribcage
|
|
#(rest)
|
|
#((top))
|
|
#("i4579"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e
|
|
m1
|
|
m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene
|
|
guile))
|
|
#{k\ 4586}#))
|
|
(cons '#(syntax-object
|
|
begin
|
|
((top)
|
|
#(ribcage
|
|
#(k e1 e2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4583"
|
|
"i4584"
|
|
"i4585"))
|
|
#(ribcage
|
|
#(rest)
|
|
#((top))
|
|
#("i4579"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(f
|
|
clause
|
|
clauses)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4552"
|
|
"i4553"
|
|
"i4554"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top)
|
|
(top)
|
|
(top))
|
|
#("i4542"
|
|
"i4543"
|
|
"i4544"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4539")))
|
|
(hygiene guile))
|
|
(cons #{e1\ 4587}#
|
|
#{e2\ 4588}#))
|
|
#{rest\ 4580}#))
|
|
#{tmp\ 4582}#)
|
|
(let ((#{_\ 4592}# #{tmp\ 4581}#))
|
|
(syntax-violation
|
|
'case
|
|
"bad clause"
|
|
#{x\ 4538}#
|
|
#{clause\ 4556}#)))))))))))
|
|
(begin (#{f\ 4555}# #{m1\ 4546}# #{m2\ 4547}#)))))
|
|
(let ((#{body\ 4551}# #{tmp\ 4549}#))
|
|
(list '#(syntax-object
|
|
let
|
|
((top)
|
|
#(ribcage #(body) #((top)) #("i4550"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top) (top) (top))
|
|
#("i4542" "i4543" "i4544"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4539")))
|
|
(hygiene guile))
|
|
(list (list '#(syntax-object
|
|
t
|
|
((top)
|
|
#(ribcage
|
|
#(body)
|
|
#((top))
|
|
#("i4550"))
|
|
#(ribcage
|
|
#(e m1 m2)
|
|
#((top) (top) (top))
|
|
#("i4542" "i4543" "i4544"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4539")))
|
|
(hygiene guile))
|
|
#{e\ 4545}#))
|
|
#{body\ 4551}#))))
|
|
#{tmp\ 4541}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4540}#)))))))
|
|
|
|
(define make-variable-transformer
|
|
(lambda (#{proc\ 4593}#)
|
|
(if (procedure? #{proc\ 4593}#)
|
|
(begin
|
|
(letrec*
|
|
((#{trans\ 4596}#
|
|
(lambda (#{x\ 4597}#)
|
|
(#{proc\ 4593}# #{x\ 4597}#))))
|
|
(begin
|
|
(set-procedure-property!
|
|
#{trans\ 4596}#
|
|
'variable-transformer
|
|
#t)
|
|
#{trans\ 4596}#)))
|
|
(error "variable transformer not a procedure"
|
|
#{proc\ 4593}#))))
|
|
|
|
(define identifier-syntax
|
|
(make-syntax-transformer
|
|
'identifier-syntax
|
|
'macro
|
|
(lambda (#{x\ 4599}#)
|
|
(let ((#{tmp\ 4601}# #{x\ 4599}#))
|
|
(let ((#{tmp\ 4602}#
|
|
($sc-dispatch #{tmp\ 4601}# '(_ any))))
|
|
(if #{tmp\ 4602}#
|
|
(@apply
|
|
(lambda (#{e\ 4604}#)
|
|
(list '#(syntax-object
|
|
lambda
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
'(#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile)))
|
|
'#((#(syntax-object
|
|
macro-type
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
.
|
|
#(syntax-object
|
|
identifier-syntax
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))))
|
|
(list '#(syntax-object
|
|
syntax-case
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
'#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
'()
|
|
(list '#(syntax-object
|
|
id
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
'(#(syntax-object
|
|
identifier?
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
(#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
id
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))))
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#{e\ 4604}#))
|
|
(list '(#(syntax-object
|
|
_
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
...
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile)))
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage #(e) #((top)) #("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
(cons #{e\ 4604}#
|
|
'(#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(e)
|
|
#((top))
|
|
#("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
...
|
|
((top)
|
|
#(ribcage
|
|
#(e)
|
|
#((top))
|
|
#("i4603"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile)))))))))
|
|
#{tmp\ 4602}#)
|
|
(let ((#{tmp\ 4605}#
|
|
($sc-dispatch
|
|
#{tmp\ 4601}#
|
|
'(_ (any any)
|
|
((#(free-id
|
|
#(syntax-object
|
|
set!
|
|
((top)
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile)))
|
|
any
|
|
any)
|
|
any)))))
|
|
(if (if #{tmp\ 4605}#
|
|
(@apply
|
|
(lambda (#{id\ 4611}#
|
|
#{exp1\ 4612}#
|
|
#{var\ 4613}#
|
|
#{val\ 4614}#
|
|
#{exp2\ 4615}#)
|
|
(if (identifier? #{id\ 4611}#)
|
|
(identifier? #{var\ 4613}#)
|
|
#f))
|
|
#{tmp\ 4605}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{id\ 4623}#
|
|
#{exp1\ 4624}#
|
|
#{var\ 4625}#
|
|
#{val\ 4626}#
|
|
#{exp2\ 4627}#)
|
|
(list '#(syntax-object
|
|
make-variable-transformer
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618" "i4619" "i4620" "i4621" "i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
(list '#(syntax-object
|
|
lambda
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
'(#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile)))
|
|
'#((#(syntax-object
|
|
macro-type
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
.
|
|
#(syntax-object
|
|
variable-transformer
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))))
|
|
(list '#(syntax-object
|
|
syntax-case
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
'#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile))
|
|
'(#(syntax-object
|
|
set!
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top) (top) (top) (top) (top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4600")))
|
|
(hygiene guile)))
|
|
(list (list '#(syntax-object
|
|
set!
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#{var\ 4625}#
|
|
#{val\ 4626}#)
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#{exp2\ 4627}#))
|
|
(list (cons #{id\ 4623}#
|
|
'(#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(id
|
|
exp1
|
|
var
|
|
val
|
|
exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
...
|
|
((top)
|
|
#(ribcage
|
|
#(id
|
|
exp1
|
|
var
|
|
val
|
|
exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))))
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
(cons #{exp1\ 4624}#
|
|
'(#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(id
|
|
exp1
|
|
var
|
|
val
|
|
exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#(syntax-object
|
|
...
|
|
((top)
|
|
#(ribcage
|
|
#(id
|
|
exp1
|
|
var
|
|
val
|
|
exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage
|
|
()
|
|
()
|
|
())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene
|
|
guile))))))
|
|
(list #{id\ 4623}#
|
|
(list '#(syntax-object
|
|
identifier?
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage
|
|
#(id
|
|
exp1
|
|
var
|
|
val
|
|
exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#{id\ 4623}#))
|
|
(list '#(syntax-object
|
|
syntax
|
|
((top)
|
|
#(ribcage
|
|
#(id exp1 var val exp2)
|
|
#((top)
|
|
(top)
|
|
(top)
|
|
(top)
|
|
(top))
|
|
#("i4618"
|
|
"i4619"
|
|
"i4620"
|
|
"i4621"
|
|
"i4622"))
|
|
#(ribcage () () ())
|
|
#(ribcage
|
|
#(x)
|
|
#((top))
|
|
#("i4600")))
|
|
(hygiene guile))
|
|
#{exp1\ 4624}#))))))
|
|
#{tmp\ 4605}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4601}#)))))))))
|
|
|
|
(define define*
|
|
(make-syntax-transformer
|
|
'define*
|
|
'macro
|
|
(lambda (#{x\ 4628}#)
|
|
(let ((#{tmp\ 4630}# #{x\ 4628}#))
|
|
(let ((#{tmp\ 4631}#
|
|
($sc-dispatch
|
|
#{tmp\ 4630}#
|
|
'(_ (any . any) any . each-any))))
|
|
(if #{tmp\ 4631}#
|
|
(@apply
|
|
(lambda (#{id\ 4636}#
|
|
#{args\ 4637}#
|
|
#{b0\ 4638}#
|
|
#{b1\ 4639}#)
|
|
(list '#(syntax-object
|
|
define
|
|
((top)
|
|
#(ribcage
|
|
#(id args b0 b1)
|
|
#((top) (top) (top) (top))
|
|
#("i4632" "i4633" "i4634" "i4635"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4629")))
|
|
(hygiene guile))
|
|
#{id\ 4636}#
|
|
(cons '#(syntax-object
|
|
lambda*
|
|
((top)
|
|
#(ribcage
|
|
#(id args b0 b1)
|
|
#((top) (top) (top) (top))
|
|
#("i4632" "i4633" "i4634" "i4635"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4629")))
|
|
(hygiene guile))
|
|
(cons #{args\ 4637}#
|
|
(cons #{b0\ 4638}# #{b1\ 4639}#)))))
|
|
#{tmp\ 4631}#)
|
|
(let ((#{tmp\ 4641}#
|
|
($sc-dispatch #{tmp\ 4630}# '(_ any any))))
|
|
(if (if #{tmp\ 4641}#
|
|
(@apply
|
|
(lambda (#{id\ 4644}# #{val\ 4645}#)
|
|
(identifier?
|
|
'#(syntax-object
|
|
x
|
|
((top)
|
|
#(ribcage
|
|
#(id val)
|
|
#((top) (top))
|
|
#("i4642" "i4643"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4629")))
|
|
(hygiene guile))))
|
|
#{tmp\ 4641}#)
|
|
#f)
|
|
(@apply
|
|
(lambda (#{id\ 4648}# #{val\ 4649}#)
|
|
(list '#(syntax-object
|
|
define
|
|
((top)
|
|
#(ribcage
|
|
#(id val)
|
|
#((top) (top))
|
|
#("i4646" "i4647"))
|
|
#(ribcage () () ())
|
|
#(ribcage #(x) #((top)) #("i4629")))
|
|
(hygiene guile))
|
|
#{id\ 4648}#
|
|
#{val\ 4649}#))
|
|
#{tmp\ 4641}#)
|
|
(syntax-violation
|
|
#f
|
|
"source expression failed to match any pattern"
|
|
#{tmp\ 4630}#)))))))))
|
|
|