diff options
author | Andy Wingo <wingo@pobox.com> | 2010-06-19 12:43:40 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2010-06-19 12:43:40 +0200 |
commit | bfccdcd53006c1e74676e48d338349e4119b0af9 (patch) | |
tree | a3d75a7c70d509d541814385a9749f9b7228d661 | |
parent | 7034da249bdbc6067fe192c15bc9200847d0505d (diff) | |
download | guile-bfccdcd53006c1e74676e48d338349e4119b0af9.tar.gz |
add support for variable transformers: settable identifier syntax
* module/ice-9/psyntax.scm (set!): Handle variable transformers; though,
they cannot produce definitions.
(make-variable-transformer): New procedure.
(identifier-syntax): Allow the R6RS form that makes variable
transformers.
* module/ice-9/psyntax-pp.scm: Regenerated.
* doc/ref/r6rs.texi (R6RS Incompatibilities): Remove letrec* item, and
add set! restriction.
-rw-r--r-- | doc/ref/r6rs.texi | 10 | ||||
-rw-r--r-- | module/ice-9/psyntax-pp.scm | 16003 | ||||
-rw-r--r-- | module/ice-9/psyntax.scm | 38 |
3 files changed, 8296 insertions, 7755 deletions
diff --git a/doc/ref/r6rs.texi b/doc/ref/r6rs.texi index aee73c33b..c8bc8157c 100644 --- a/doc/ref/r6rs.texi +++ b/doc/ref/r6rs.texi @@ -25,10 +25,6 @@ Please let the Guile developers know if you find one that is not on this list. @itemize @item -In the R6RS, internal definitions expand to @code{letrec*}, not @code{letrec}. -Guile does not support @code{letrec*}, though that would be nice. - -@item The R6RS specifies many situations in which a conforming implementation must signal a specific error. Guile doesn't really care about that too much -- if a correct R6RS program would not hit that error, we don't bother checking for it. @@ -37,8 +33,12 @@ correct R6RS program would not hit that error, we don't bother checking for it. Multiple @code{library} forms in one file are not yet supported. This is because the expansion of @code{library} sets the current module, but does not restore it. This is a bug. -@end itemize +@item +A @code{set!} to a variable transformer may only expand to an expression, not a +definition -- even if the original @code{set!} expression was in definition +context. +@end itemize @node R6RS Standard Libraries @subsection R6RS Standard Libraries diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm index 2ecbca53b..852b9f04e 100644 --- a/module/ice-9/psyntax-pp.scm +++ b/module/ice-9/psyntax-pp.scm @@ -2,1216 +2,1216 @@ (if #f #f) (letrec* - ((#{and-map*\ 35}# - (lambda (#{f\ 207}# #{first\ 208}# . #{rest\ 209}#) + ((#{and-map*\ 36}# + (lambda (#{f\ 208}# #{first\ 209}# . #{rest\ 210}#) (begin - (let ((#{t\ 215}# (null? #{first\ 208}#))) - (if #{t\ 215}# - #{t\ 215}# - (if (null? #{rest\ 209}#) + (let ((#{t\ 216}# (null? #{first\ 209}#))) + (if #{t\ 216}# + #{t\ 216}# + (if (null? #{rest\ 210}#) (letrec* - ((#{andmap\ 219}# - (lambda (#{first\ 220}#) + ((#{andmap\ 220}# + (lambda (#{first\ 221}#) (begin - (let ((#{x\ 223}# (car #{first\ 220}#)) - (#{first\ 224}# (cdr #{first\ 220}#))) - (if (null? #{first\ 224}#) - (#{f\ 207}# #{x\ 223}#) - (if (#{f\ 207}# #{x\ 223}#) - (#{andmap\ 219}# #{first\ 224}#) + (let ((#{x\ 224}# (car #{first\ 221}#)) + (#{first\ 225}# (cdr #{first\ 221}#))) + (if (null? #{first\ 225}#) + (#{f\ 208}# #{x\ 224}#) + (if (#{f\ 208}# #{x\ 224}#) + (#{andmap\ 220}# #{first\ 225}#) #f))))))) - (begin (#{andmap\ 219}# #{first\ 208}#))) + (begin (#{andmap\ 220}# #{first\ 209}#))) (letrec* - ((#{andmap\ 230}# - (lambda (#{first\ 231}# #{rest\ 232}#) + ((#{andmap\ 231}# + (lambda (#{first\ 232}# #{rest\ 233}#) (begin - (let ((#{x\ 237}# (car #{first\ 231}#)) - (#{xr\ 238}# (map car #{rest\ 232}#)) - (#{first\ 239}# (cdr #{first\ 231}#)) - (#{rest\ 240}# (map cdr #{rest\ 232}#))) - (if (null? #{first\ 239}#) - (@apply #{f\ 207}# (cons #{x\ 237}# #{xr\ 238}#)) + (let ((#{x\ 238}# (car #{first\ 232}#)) + (#{xr\ 239}# (map car #{rest\ 233}#)) + (#{first\ 240}# (cdr #{first\ 232}#)) + (#{rest\ 241}# (map cdr #{rest\ 233}#))) + (if (null? #{first\ 240}#) + (@apply #{f\ 208}# (cons #{x\ 238}# #{xr\ 239}#)) (if (@apply - #{f\ 207}# - (cons #{x\ 237}# #{xr\ 238}#)) - (#{andmap\ 230}# #{first\ 239}# #{rest\ 240}#) + #{f\ 208}# + (cons #{x\ 238}# #{xr\ 239}#)) + (#{andmap\ 231}# #{first\ 240}# #{rest\ 241}#) #f))))))) (begin - (#{andmap\ 230}# #{first\ 208}# #{rest\ 209}#)))))))))) + (#{andmap\ 231}# #{first\ 209}# #{rest\ 210}#)))))))))) (begin - (let ((#{make-primitive-ref\ 249}# (if #f #f)) - (#{fx+\ 288}# (if #f #f)) - (#{fx-\ 290}# (if #f #f)) - (#{fx=\ 292}# (if #f #f)) - (#{fx<\ 294}# (if #f #f)) - (#{set-syntax-object-expression!\ 359}# + (let ((#{make-primitive-ref\ 250}# (if #f #f)) + (#{fx+\ 289}# (if #f #f)) + (#{fx-\ 291}# (if #f #f)) + (#{fx=\ 293}# (if #f #f)) + (#{fx<\ 295}# (if #f #f)) + (#{set-syntax-object-expression!\ 360}# (if #f #f)) - (#{set-syntax-object-wrap!\ 361}# (if #f #f)) - (#{set-syntax-object-module!\ 363}# (if #f #f)) - (#{binding-type\ 370}# (if #f #f)) - (#{binding-value\ 372}# (if #f #f)) - (#{make-wrap\ 392}# (if #f #f)) - (#{wrap-marks\ 394}# (if #f #f)) - (#{wrap-subst\ 396}# (if #f #f)) - (#{ribcage?\ 410}# (if #f #f))) + (#{set-syntax-object-wrap!\ 362}# (if #f #f)) + (#{set-syntax-object-module!\ 364}# (if #f #f)) + (#{binding-type\ 371}# (if #f #f)) + (#{binding-value\ 373}# (if #f #f)) + (#{make-wrap\ 393}# (if #f #f)) + (#{wrap-marks\ 395}# (if #f #f)) + (#{wrap-subst\ 397}# (if #f #f)) + (#{ribcage?\ 411}# (if #f #f))) (letrec* - ((#{make-void\ 245}# - (lambda (#{src\ 717}#) + ((#{make-void\ 246}# + (lambda (#{src\ 718}#) (make-struct/no-tail (vector-ref %expanded-vtables 0) - #{src\ 717}#))) - (#{make-const\ 247}# - (lambda (#{src\ 719}# #{exp\ 720}#) + #{src\ 718}#))) + (#{make-const\ 248}# + (lambda (#{src\ 720}# #{exp\ 721}#) (make-struct/no-tail (vector-ref %expanded-vtables 1) - #{src\ 719}# - #{exp\ 720}#))) - (#{make-lexical-ref\ 251}# - (lambda (#{src\ 727}# #{name\ 728}# #{gensym\ 729}#) + #{src\ 720}# + #{exp\ 721}#))) + (#{make-lexical-ref\ 252}# + (lambda (#{src\ 728}# #{name\ 729}# #{gensym\ 730}#) (make-struct/no-tail (vector-ref %expanded-vtables 3) - #{src\ 727}# - #{name\ 728}# - #{gensym\ 729}#))) - (#{make-lexical-set\ 253}# - (lambda (#{src\ 733}# - #{name\ 734}# - #{gensym\ 735}# - #{exp\ 736}#) + #{src\ 728}# + #{name\ 729}# + #{gensym\ 730}#))) + (#{make-lexical-set\ 254}# + (lambda (#{src\ 734}# + #{name\ 735}# + #{gensym\ 736}# + #{exp\ 737}#) (make-struct/no-tail (vector-ref %expanded-vtables 4) - #{src\ 733}# - #{name\ 734}# - #{gensym\ 735}# - #{exp\ 736}#))) - (#{make-module-ref\ 255}# - (lambda (#{src\ 741}# - #{mod\ 742}# - #{name\ 743}# - #{public?\ 744}#) + #{src\ 734}# + #{name\ 735}# + #{gensym\ 736}# + #{exp\ 737}#))) + (#{make-module-ref\ 256}# + (lambda (#{src\ 742}# + #{mod\ 743}# + #{name\ 744}# + #{public?\ 745}#) (make-struct/no-tail (vector-ref %expanded-vtables 5) - #{src\ 741}# - #{mod\ 742}# - #{name\ 743}# - #{public?\ 744}#))) - (#{make-module-set\ 257}# - (lambda (#{src\ 749}# - #{mod\ 750}# - #{name\ 751}# - #{public?\ 752}# - #{exp\ 753}#) + #{src\ 742}# + #{mod\ 743}# + #{name\ 744}# + #{public?\ 745}#))) + (#{make-module-set\ 258}# + (lambda (#{src\ 750}# + #{mod\ 751}# + #{name\ 752}# + #{public?\ 753}# + #{exp\ 754}#) (make-struct/no-tail (vector-ref %expanded-vtables 6) - #{src\ 749}# - #{mod\ 750}# - #{name\ 751}# - #{public?\ 752}# - #{exp\ 753}#))) - (#{make-toplevel-ref\ 259}# - (lambda (#{src\ 759}# #{name\ 760}#) + #{src\ 750}# + #{mod\ 751}# + #{name\ 752}# + #{public?\ 753}# + #{exp\ 754}#))) + (#{make-toplevel-ref\ 260}# + (lambda (#{src\ 760}# #{name\ 761}#) (make-struct/no-tail (vector-ref %expanded-vtables 7) - #{src\ 759}# - #{name\ 760}#))) - (#{make-toplevel-set\ 261}# - (lambda (#{src\ 763}# #{name\ 764}# #{exp\ 765}#) + #{src\ 760}# + #{name\ 761}#))) + (#{make-toplevel-set\ 262}# + (lambda (#{src\ 764}# #{name\ 765}# #{exp\ 766}#) (make-struct/no-tail (vector-ref %expanded-vtables 8) - #{src\ 763}# - #{name\ 764}# - #{exp\ 765}#))) - (#{make-toplevel-define\ 263}# - (lambda (#{src\ 769}# #{name\ 770}# #{exp\ 771}#) + #{src\ 764}# + #{name\ 765}# + #{exp\ 766}#))) + (#{make-toplevel-define\ 264}# + (lambda (#{src\ 770}# #{name\ 771}# #{exp\ 772}#) (make-struct/no-tail (vector-ref %expanded-vtables 9) - #{src\ 769}# - #{name\ 770}# - #{exp\ 771}#))) - (#{make-conditional\ 265}# - (lambda (#{src\ 775}# - #{test\ 776}# - #{consequent\ 777}# - #{alternate\ 778}#) + #{src\ 770}# + #{name\ 771}# + #{exp\ 772}#))) + (#{make-conditional\ 266}# + (lambda (#{src\ 776}# + #{test\ 777}# + #{consequent\ 778}# + #{alternate\ 779}#) (make-struct/no-tail (vector-ref %expanded-vtables 10) - #{src\ 775}# - #{test\ 776}# - #{consequent\ 777}# - #{alternate\ 778}#))) - (#{make-application\ 267}# - (lambda (#{src\ 783}# #{proc\ 784}# #{args\ 785}#) + #{src\ 776}# + #{test\ 777}# + #{consequent\ 778}# + #{alternate\ 779}#))) + (#{make-application\ 268}# + (lambda (#{src\ 784}# #{proc\ 785}# #{args\ 786}#) (make-struct/no-tail (vector-ref %expanded-vtables 11) - #{src\ 783}# - #{proc\ 784}# - #{args\ 785}#))) - (#{make-sequence\ 269}# - (lambda (#{src\ 789}# #{exps\ 790}#) + #{src\ 784}# + #{proc\ 785}# + #{args\ 786}#))) + (#{make-sequence\ 270}# + (lambda (#{src\ 790}# #{exps\ 791}#) (make-struct/no-tail (vector-ref %expanded-vtables 12) - #{src\ 789}# - #{exps\ 790}#))) - (#{make-lambda\ 271}# - (lambda (#{src\ 793}# #{meta\ 794}# #{body\ 795}#) + #{src\ 790}# + #{exps\ 791}#))) + (#{make-lambda\ 272}# + (lambda (#{src\ 794}# #{meta\ 795}# #{body\ 796}#) (make-struct/no-tail (vector-ref %expanded-vtables 13) - #{src\ 793}# - #{meta\ 794}# - #{body\ 795}#))) - (#{make-lambda-case\ 273}# - (lambda (#{src\ 799}# - #{req\ 800}# - #{opt\ 801}# - #{rest\ 802}# - #{kw\ 803}# - #{inits\ 804}# - #{gensyms\ 805}# - #{body\ 806}# - #{alternate\ 807}#) + #{src\ 794}# + #{meta\ 795}# + #{body\ 796}#))) + (#{make-lambda-case\ 274}# + (lambda (#{src\ 800}# + #{req\ 801}# + #{opt\ 802}# + #{rest\ 803}# + #{kw\ 804}# + #{inits\ 805}# + #{gensyms\ 806}# + #{body\ 807}# + #{alternate\ 808}#) (make-struct/no-tail (vector-ref %expanded-vtables 14) - #{src\ 799}# - #{req\ 800}# - #{opt\ 801}# - #{rest\ 802}# - #{kw\ 803}# - #{inits\ 804}# - #{gensyms\ 805}# - #{body\ 806}# - #{alternate\ 807}#))) - (#{make-let\ 275}# - (lambda (#{src\ 817}# - #{names\ 818}# - #{gensyms\ 819}# - #{vals\ 820}# - #{body\ 821}#) + #{src\ 800}# + #{req\ 801}# + #{opt\ 802}# + #{rest\ 803}# + #{kw\ 804}# + #{inits\ 805}# + #{gensyms\ 806}# + #{body\ 807}# + #{alternate\ 808}#))) + (#{make-let\ 276}# + (lambda (#{src\ 818}# + #{names\ 819}# + #{gensyms\ 820}# + #{vals\ 821}# + #{body\ 822}#) (make-struct/no-tail (vector-ref %expanded-vtables 15) - #{src\ 817}# - #{names\ 818}# - #{gensyms\ 819}# - #{vals\ 820}# - #{body\ 821}#))) - (#{make-letrec\ 277}# - (lambda (#{src\ 827}# - #{in-order?\ 828}# - #{names\ 829}# - #{gensyms\ 830}# - #{vals\ 831}# - #{body\ 832}#) + #{src\ 818}# + #{names\ 819}# + #{gensyms\ 820}# + #{vals\ 821}# + #{body\ 822}#))) + (#{make-letrec\ 278}# + (lambda (#{src\ 828}# + #{in-order?\ 829}# + #{names\ 830}# + #{gensyms\ 831}# + #{vals\ 832}# + #{body\ 833}#) (make-struct/no-tail (vector-ref %expanded-vtables 16) - #{src\ 827}# - #{in-order?\ 828}# - #{names\ 829}# - #{gensyms\ 830}# - #{vals\ 831}# - #{body\ 832}#))) - (#{make-dynlet\ 279}# - (lambda (#{src\ 839}# - #{fluids\ 840}# - #{vals\ 841}# - #{body\ 842}#) + #{src\ 828}# + #{in-order?\ 829}# + #{names\ 830}# + #{gensyms\ 831}# + #{vals\ 832}# + #{body\ 833}#))) + (#{make-dynlet\ 280}# + (lambda (#{src\ 840}# + #{fluids\ 841}# + #{vals\ 842}# + #{body\ 843}#) (make-struct/no-tail (vector-ref %expanded-vtables 17) - #{src\ 839}# - #{fluids\ 840}# - #{vals\ 841}# - #{body\ 842}#))) - (#{lambda?\ 282}# - (lambda (#{x\ 847}#) - (if (struct? #{x\ 847}#) - (eq? (struct-vtable #{x\ 847}#) + #{src\ 840}# + #{fluids\ 841}# + #{vals\ 842}# + #{body\ 843}#))) + (#{lambda?\ 283}# + (lambda (#{x\ 848}#) + (if (struct? #{x\ 848}#) + (eq? (struct-vtable #{x\ 848}#) (vector-ref %expanded-vtables 13)) #f))) - (#{lambda-meta\ 284}# - (lambda (#{x\ 851}#) (struct-ref #{x\ 851}# 1))) - (#{set-lambda-meta!\ 286}# - (lambda (#{x\ 853}# #{v\ 854}#) - (struct-set! #{x\ 853}# 1 #{v\ 854}#))) - (#{top-level-eval-hook\ 296}# - (lambda (#{x\ 857}# #{mod\ 858}#) - (primitive-eval #{x\ 857}#))) - (#{local-eval-hook\ 298}# - (lambda (#{x\ 861}# #{mod\ 862}#) - (primitive-eval #{x\ 861}#))) - (#{put-global-definition-hook\ 301}# - (lambda (#{symbol\ 865}# #{type\ 866}# #{val\ 867}#) + (#{lambda-meta\ 285}# + (lambda (#{x\ 852}#) (struct-ref #{x\ 852}# 1))) + (#{set-lambda-meta!\ 287}# + (lambda (#{x\ 854}# #{v\ 855}#) + (struct-set! #{x\ 854}# 1 #{v\ 855}#))) + (#{top-level-eval-hook\ 297}# + (lambda (#{x\ 858}# #{mod\ 859}#) + (primitive-eval #{x\ 858}#))) + (#{local-eval-hook\ 299}# + (lambda (#{x\ 862}# #{mod\ 863}#) + (primitive-eval #{x\ 862}#))) + (#{put-global-definition-hook\ 302}# + (lambda (#{symbol\ 866}# #{type\ 867}# #{val\ 868}#) (module-define! (current-module) - #{symbol\ 865}# + #{symbol\ 866}# (make-syntax-transformer - #{symbol\ 865}# - #{type\ 866}# - #{val\ 867}#)))) - (#{get-global-definition-hook\ 303}# - (lambda (#{symbol\ 871}# #{module\ 872}#) + #{symbol\ 866}# + #{type\ 867}# + #{val\ 868}#)))) + (#{get-global-definition-hook\ 304}# + (lambda (#{symbol\ 872}# #{module\ 873}#) (begin - (if (if (not #{module\ 872}#) (current-module) #f) + (if (if (not #{module\ 873}#) (current-module) #f) (warn "module system is booted, we should have a module" - #{symbol\ 871}#)) + #{symbol\ 872}#)) (begin - (let ((#{v\ 878}# (module-variable - (if #{module\ 872}# - (resolve-module (cdr #{module\ 872}#)) + (let ((#{v\ 879}# (module-variable + (if #{module\ 873}# + (resolve-module (cdr #{module\ 873}#)) (current-module)) - #{symbol\ 871}#))) - (if #{v\ 878}# - (if (variable-bound? #{v\ 878}#) + #{symbol\ 872}#))) + (if #{v\ 879}# + (if (variable-bound? #{v\ 879}#) (begin - (let ((#{val\ 883}# (variable-ref #{v\ 878}#))) - (if (macro? #{val\ 883}#) - (if (macro-type #{val\ 883}#) - (cons (macro-type #{val\ 883}#) - (macro-binding #{val\ 883}#)) + (let ((#{val\ 884}# (variable-ref #{v\ 879}#))) + (if (macro? #{val\ 884}#) + (if (macro-type #{val\ 884}#) + (cons (macro-type #{val\ 884}#) + (macro-binding #{val\ 884}#)) #f) #f))) #f) #f)))))) - (#{decorate-source\ 305}# - (lambda (#{e\ 887}# #{s\ 888}#) + (#{decorate-source\ 306}# + (lambda (#{e\ 888}# #{s\ 889}#) (begin - (if (if (pair? #{e\ 887}#) #{s\ 888}# #f) - (set-source-properties! #{e\ 887}# #{s\ 888}#)) - #{e\ 887}#))) - (#{build-void\ 307}# - (lambda (#{source\ 893}#) - (#{make-void\ 245}# #{source\ 893}#))) - (#{build-application\ 309}# - (lambda (#{source\ 895}# - #{fun-exp\ 896}# - #{arg-exps\ 897}#) - (#{make-application\ 267}# - #{source\ 895}# - #{fun-exp\ 896}# - #{arg-exps\ 897}#))) - (#{build-conditional\ 311}# - (lambda (#{source\ 901}# - #{test-exp\ 902}# - #{then-exp\ 903}# - #{else-exp\ 904}#) - (#{make-conditional\ 265}# - #{source\ 901}# - #{test-exp\ 902}# - #{then-exp\ 903}# - #{else-exp\ 904}#))) - (#{build-dynlet\ 313}# - (lambda (#{source\ 909}# - #{fluids\ 910}# - #{vals\ 911}# - #{body\ 912}#) - (#{make-dynlet\ 279}# - #{source\ 909}# - #{fluids\ 910}# - #{vals\ 911}# - #{body\ 912}#))) - (#{build-lexical-reference\ 315}# - (lambda (#{type\ 917}# - #{source\ 918}# - #{name\ 919}# - #{var\ 920}#) - (#{make-lexical-ref\ 251}# - #{source\ 918}# - #{name\ 919}# - #{var\ 920}#))) - (#{build-lexical-assignment\ 317}# - (lambda (#{source\ 925}# - #{name\ 926}# - #{var\ 927}# - #{exp\ 928}#) - (#{make-lexical-set\ 253}# - #{source\ 925}# - #{name\ 926}# - #{var\ 927}# - #{exp\ 928}#))) - (#{analyze-variable\ 319}# - (lambda (#{mod\ 933}# - #{var\ 934}# - #{modref-cont\ 935}# - #{bare-cont\ 936}#) - (if (not #{mod\ 933}#) - (#{bare-cont\ 936}# #{var\ 934}#) + (if (if (pair? #{e\ 888}#) #{s\ 889}# #f) + (set-source-properties! #{e\ 888}# #{s\ 889}#)) + #{e\ 888}#))) + (#{build-void\ 308}# + (lambda (#{source\ 894}#) + (#{make-void\ 246}# #{source\ 894}#))) + (#{build-application\ 310}# + (lambda (#{source\ 896}# + #{fun-exp\ 897}# + #{arg-exps\ 898}#) + (#{make-application\ 268}# + #{source\ 896}# + #{fun-exp\ 897}# + #{arg-exps\ 898}#))) + (#{build-conditional\ 312}# + (lambda (#{source\ 902}# + #{test-exp\ 903}# + #{then-exp\ 904}# + #{else-exp\ 905}#) + (#{make-conditional\ 266}# + #{source\ 902}# + #{test-exp\ 903}# + #{then-exp\ 904}# + #{else-exp\ 905}#))) + (#{build-dynlet\ 314}# + (lambda (#{source\ 910}# + #{fluids\ 911}# + #{vals\ 912}# + #{body\ 913}#) + (#{make-dynlet\ 280}# + #{source\ 910}# + #{fluids\ 911}# + #{vals\ 912}# + #{body\ 913}#))) + (#{build-lexical-reference\ 316}# + (lambda (#{type\ 918}# + #{source\ 919}# + #{name\ 920}# + #{var\ 921}#) + (#{make-lexical-ref\ 252}# + #{source\ 919}# + #{name\ 920}# + #{var\ 921}#))) + (#{build-lexical-assignment\ 318}# + (lambda (#{source\ 926}# + #{name\ 927}# + #{var\ 928}# + #{exp\ 929}#) + (#{make-lexical-set\ 254}# + #{source\ 926}# + #{name\ 927}# + #{var\ 928}# + #{exp\ 929}#))) + (#{analyze-variable\ 320}# + (lambda (#{mod\ 934}# + #{var\ 935}# + #{modref-cont\ 936}# + #{bare-cont\ 937}#) + (if (not #{mod\ 934}#) + (#{bare-cont\ 937}# #{var\ 935}#) (begin - (let ((#{kind\ 943}# (car #{mod\ 933}#)) - (#{mod\ 944}# (cdr #{mod\ 933}#))) - (if (eqv? #{kind\ 943}# (quote public)) - (#{modref-cont\ 935}# - #{mod\ 944}# - #{var\ 934}# + (let ((#{kind\ 944}# (car #{mod\ 934}#)) + (#{mod\ 945}# (cdr #{mod\ 934}#))) + (if (eqv? #{kind\ 944}# (quote public)) + (#{modref-cont\ 936}# + #{mod\ 945}# + #{var\ 935}# #t) - (if (eqv? #{kind\ 943}# (quote private)) + (if (eqv? #{kind\ 944}# (quote private)) (if (not (equal? - #{mod\ 944}# + #{mod\ 945}# (module-name (current-module)))) - (#{modref-cont\ 935}# - #{mod\ 944}# - #{var\ 934}# + (#{modref-cont\ 936}# + #{mod\ 945}# + #{var\ 935}# #f) - (#{bare-cont\ 936}# #{var\ 934}#)) - (if (eqv? #{kind\ 943}# (quote bare)) - (#{bare-cont\ 936}# #{var\ 934}#) - (if (eqv? #{kind\ 943}# (quote hygiene)) + (#{bare-cont\ 937}# #{var\ 935}#)) + (if (eqv? #{kind\ 944}# (quote bare)) + (#{bare-cont\ 937}# #{var\ 935}#) + (if (eqv? #{kind\ 944}# (quote hygiene)) (if (if (not (equal? - #{mod\ 944}# + #{mod\ 945}# (module-name (current-module)))) (module-variable - (resolve-module #{mod\ 944}#) - #{var\ 934}#) + (resolve-module #{mod\ 945}#) + #{var\ 935}#) #f) - (#{modref-cont\ 935}# - #{mod\ 944}# - #{var\ 934}# + (#{modref-cont\ 936}# + #{mod\ 945}# + #{var\ 935}# #f) - (#{bare-cont\ 936}# #{var\ 934}#)) + (#{bare-cont\ 937}# #{var\ 935}#)) (syntax-violation #f "bad module kind" - #{var\ 934}# - #{mod\ 944}#)))))))))) - (#{build-global-reference\ 321}# - (lambda (#{source\ 952}# #{var\ 953}# #{mod\ 954}#) - (#{analyze-variable\ 319}# - #{mod\ 954}# - #{var\ 953}# - (lambda (#{mod\ 958}# #{var\ 959}# #{public?\ 960}#) - (#{make-module-ref\ 255}# - #{source\ 952}# - #{mod\ 958}# - #{var\ 959}# - #{public?\ 960}#)) - (lambda (#{var\ 964}#) - (#{make-toplevel-ref\ 259}# - #{source\ 952}# - #{var\ 964}#))))) - (#{build-global-assignment\ 323}# - (lambda (#{source\ 966}# - #{var\ 967}# - #{exp\ 968}# - #{mod\ 969}#) - (#{analyze-variable\ 319}# - #{mod\ 969}# - #{var\ 967}# - (lambda (#{mod\ 974}# #{var\ 975}# #{public?\ 976}#) - (#{make-module-set\ 257}# - #{source\ 966}# - #{mod\ 974}# - #{var\ 975}# - #{public?\ 976}# - #{exp\ 968}#)) - (lambda (#{var\ 980}#) - (#{make-toplevel-set\ 261}# - #{source\ 966}# - #{var\ 980}# - #{exp\ 968}#))))) - (#{maybe-name-value!\ 325}# - (lambda (#{name\ 982}# #{val\ 983}#) - (if (#{lambda?\ 282}# #{val\ 983}#) + #{var\ 935}# + #{mod\ 945}#)))))))))) + (#{build-global-reference\ 322}# + (lambda (#{source\ 953}# #{var\ 954}# #{mod\ 955}#) + (#{analyze-variable\ 320}# + #{mod\ 955}# + #{var\ 954}# + (lambda (#{mod\ 959}# #{var\ 960}# #{public?\ 961}#) + (#{make-module-ref\ 256}# + #{source\ 953}# + #{mod\ 959}# + #{var\ 960}# + #{public?\ 961}#)) + (lambda (#{var\ 965}#) + (#{make-toplevel-ref\ 260}# + #{source\ 953}# + #{var\ 965}#))))) + (#{build-global-assignment\ 324}# + (lambda (#{source\ 967}# + #{var\ 968}# + #{exp\ 969}# + #{mod\ 970}#) + (#{analyze-variable\ 320}# + #{mod\ 970}# + #{var\ 968}# + (lambda (#{mod\ 975}# #{var\ 976}# #{public?\ 977}#) + (#{make-module-set\ 258}# + #{source\ 967}# + #{mod\ 975}# + #{var\ 976}# + #{public?\ 977}# + #{exp\ 969}#)) + (lambda (#{var\ 981}#) + (#{make-toplevel-set\ 262}# + #{source\ 967}# + #{var\ 981}# + #{exp\ 969}#))))) + (#{maybe-name-value!\ 326}# + (lambda (#{name\ 983}# #{val\ 984}#) + (if (#{lambda?\ 283}# #{val\ 984}#) (begin - (let ((#{meta\ 987}# - (#{lambda-meta\ 284}# #{val\ 983}#))) - (if (not (assq (quote name) #{meta\ 987}#)) - (#{set-lambda-meta!\ 286}# - #{val\ 983}# - (cons (cons (quote name) #{name\ 982}#) - #{meta\ 987}#)))))))) - (#{build-global-definition\ 327}# - (lambda (#{source\ 988}# #{var\ 989}# #{exp\ 990}#) + (let ((#{meta\ 988}# + (#{lambda-meta\ 285}# #{val\ 984}#))) + (if (not (assq (quote name) #{meta\ 988}#)) + (#{set-lambda-meta!\ 287}# + #{val\ 984}# + (cons (cons (quote name) #{name\ 983}#) + #{meta\ 988}#)))))))) + (#{build-global-definition\ 328}# + (lambda (#{source\ 989}# #{var\ 990}# #{exp\ 991}#) (begin - (#{maybe-name-value!\ 325}# - #{var\ 989}# - #{exp\ 990}#) - (#{make-toplevel-define\ 263}# - #{source\ 988}# - #{var\ 989}# - #{exp\ 990}#)))) - (#{build-simple-lambda\ 329}# - (lambda (#{src\ 994}# - #{req\ 995}# - #{rest\ 996}# - #{vars\ 997}# - #{meta\ 998}# - #{exp\ 999}#) - (#{make-lambda\ 271}# - #{src\ 994}# - #{meta\ 998}# - (#{make-lambda-case\ 273}# - #{src\ 994}# - #{req\ 995}# + (#{maybe-name-value!\ 326}# + #{var\ 990}# + #{exp\ 991}#) + (#{make-toplevel-define\ 264}# + #{source\ 989}# + #{var\ 990}# + #{exp\ 991}#)))) + (#{build-simple-lambda\ 330}# + (lambda (#{src\ 995}# + #{req\ 996}# + #{rest\ 997}# + #{vars\ 998}# + #{meta\ 999}# + #{exp\ 1000}#) + (#{make-lambda\ 272}# + #{src\ 995}# + #{meta\ 999}# + (#{make-lambda-case\ 274}# + #{src\ 995}# + #{req\ 996}# #f - #{rest\ 996}# + #{rest\ 997}# #f '() - #{vars\ 997}# - #{exp\ 999}# + #{vars\ 998}# + #{exp\ 1000}# #f)))) - (#{build-case-lambda\ 331}# - (lambda (#{src\ 1006}# #{meta\ 1007}# #{body\ 1008}#) - (#{make-lambda\ 271}# - #{src\ 1006}# - #{meta\ 1007}# - #{body\ 1008}#))) - (#{build-lambda-case\ 333}# - (lambda (#{src\ 1012}# - #{req\ 1013}# - #{opt\ 1014}# - #{rest\ 1015}# - #{kw\ 1016}# - #{inits\ 1017}# - #{vars\ 1018}# - #{body\ 1019}# - #{else-case\ 1020}#) - (#{make-lambda-case\ 273}# - #{src\ 1012}# - #{req\ 1013}# - #{opt\ 1014}# - #{rest\ 1015}# - #{kw\ 1016}# - #{inits\ 1017}# - #{vars\ 1018}# - #{body\ 1019}# - #{else-case\ 1020}#))) - (#{build-primref\ 335}# - (lambda (#{src\ 1030}# #{name\ 1031}#) + (#{build-case-lambda\ 332}# + (lambda (#{src\ 1007}# #{meta\ 1008}# #{body\ 1009}#) + (#{make-lambda\ 272}# + #{src\ 1007}# + #{meta\ 1008}# + #{body\ 1009}#))) + (#{build-lambda-case\ 334}# + (lambda (#{src\ 1013}# + #{req\ 1014}# + #{opt\ 1015}# + #{rest\ 1016}# + #{kw\ 1017}# + #{inits\ 1018}# + #{vars\ 1019}# + #{body\ 1020}# + #{else-case\ 1021}#) + (#{make-lambda-case\ 274}# + #{src\ 1013}# + #{req\ 1014}# + #{opt\ 1015}# + #{rest\ 1016}# + #{kw\ 1017}# + #{inits\ 1018}# + #{vars\ 1019}# + #{body\ 1020}# + #{else-case\ 1021}#))) + (#{build-primref\ 336}# + (lambda (#{src\ 1031}# #{name\ 1032}#) (if (equal? (module-name (current-module)) '(guile)) - (#{make-toplevel-ref\ 259}# - #{src\ 1030}# - #{name\ 1031}#) - (#{make-module-ref\ 255}# - #{src\ 1030}# + (#{make-toplevel-ref\ 260}# + #{src\ 1031}# + #{name\ 1032}#) + (#{make-module-ref\ 256}# + #{src\ 1031}# '(guile) - #{name\ 1031}# + #{name\ 1032}# #f)))) - (#{build-data\ 337}# - (lambda (#{src\ 1034}# #{exp\ 1035}#) - (#{make-const\ 247}# #{src\ 1034}# #{exp\ 1035}#))) - (#{build-sequence\ 339}# - (lambda (#{src\ 1038}# #{exps\ 1039}#) - (if (null? (cdr #{exps\ 1039}#)) - (car #{exps\ 1039}#) - (#{make-sequence\ 269}# - #{src\ 1038}# - #{exps\ 1039}#)))) - (#{build-let\ 341}# - (lambda (#{src\ 1042}# - #{ids\ 1043}# - #{vars\ 1044}# - #{val-exps\ 1045}# - #{body-exp\ 1046}#) + (#{build-data\ 338}# + (lambda (#{src\ 1035}# #{exp\ 1036}#) + (#{make-const\ 248}# #{src\ 1035}# #{exp\ 1036}#))) + (#{build-sequence\ 340}# + (lambda (#{src\ 1039}# #{exps\ 1040}#) + (if (null? (cdr #{exps\ 1040}#)) + (car #{exps\ 1040}#) + (#{make-sequence\ 270}# + #{src\ 1039}# + #{exps\ 1040}#)))) + (#{build-let\ 342}# + (lambda (#{src\ 1043}# + #{ids\ 1044}# + #{vars\ 1045}# + #{val-exps\ 1046}# + #{body-exp\ 1047}#) (begin (for-each - #{maybe-name-value!\ 325}# - #{ids\ 1043}# - #{val-exps\ 1045}#) - (if (null? #{vars\ 1044}#) - #{body-exp\ 1046}# - (#{make-let\ 275}# - #{src\ 1042}# - #{ids\ 1043}# - #{vars\ 1044}# - #{val-exps\ 1045}# - #{body-exp\ 1046}#))))) - (#{build-named-let\ 343}# - (lambda (#{src\ 1052}# - #{ids\ 1053}# - #{vars\ 1054}# - #{val-exps\ 1055}# - #{body-exp\ 1056}#) + #{maybe-name-value!\ 326}# + #{ids\ 1044}# + #{val-exps\ 1046}#) + (if (null? #{vars\ 1045}#) + #{body-exp\ 1047}# + (#{make-let\ 276}# + #{src\ 1043}# + #{ids\ 1044}# + #{vars\ 1045}# + #{val-exps\ 1046}# + #{body-exp\ 1047}#))))) + (#{build-named-let\ 344}# + (lambda (#{src\ 1053}# + #{ids\ 1054}# + #{vars\ 1055}# + #{val-exps\ 1056}# + #{body-exp\ 1057}#) (begin - (let ((#{f\ 1066}# (car #{vars\ 1054}#)) - (#{f-name\ 1067}# (car #{ids\ 1053}#)) - (#{vars\ 1068}# (cdr #{vars\ 1054}#)) - (#{ids\ 1069}# (cdr #{ids\ 1053}#))) + (let ((#{f\ 1067}# (car #{vars\ 1055}#)) + (#{f-name\ 1068}# (car #{ids\ 1054}#)) + (#{vars\ 1069}# (cdr #{vars\ 1055}#)) + (#{ids\ 1070}# (cdr #{ids\ 1054}#))) (begin - (let ((#{proc\ 1071}# - (#{build-simple-lambda\ 329}# - #{src\ 1052}# - #{ids\ 1069}# + (let ((#{proc\ 1072}# + (#{build-simple-lambda\ 330}# + #{src\ 1053}# + #{ids\ 1070}# #f - #{vars\ 1068}# + #{vars\ 1069}# '() - #{body-exp\ 1056}#))) + #{body-exp\ 1057}#))) (begin - (#{maybe-name-value!\ 325}# - #{f-name\ 1067}# - #{proc\ 1071}#) + (#{maybe-name-value!\ 326}# + #{f-name\ 1068}# + #{proc\ 1072}#) (for-each - #{maybe-name-value!\ 325}# - #{ids\ 1069}# - #{val-exps\ 1055}#) - (#{make-letrec\ 277}# - #{src\ 1052}# + #{maybe-name-value!\ 326}# + #{ids\ 1070}# + #{val-exps\ 1056}#) + (#{make-letrec\ 278}# + #{src\ 1053}# #f - (list #{f-name\ 1067}#) - (list #{f\ 1066}#) - (list #{proc\ 1071}#) - (#{build-application\ 309}# - #{src\ 1052}# - (#{build-lexical-reference\ 315}# + (list #{f-name\ 1068}#) + (list #{f\ 1067}#) + (list #{proc\ 1072}#) + (#{build-application\ 310}# + #{src\ 1053}# + (#{build-lexical-reference\ 316}# 'fun - #{src\ 1052}# - #{f-name\ 1067}# - #{f\ 1066}#) - #{val-exps\ 1055}#))))))))) - (#{build-letrec\ 345}# - (lambda (#{src\ 1072}# - #{in-order?\ 1073}# - #{ids\ 1074}# - #{vars\ 1075}# - #{val-exps\ 1076}# - #{body-exp\ 1077}#) - (if (null? #{vars\ 1075}#) - #{body-exp\ 1077}# + #{src\ 1053}# + #{f-name\ 1068}# + #{f\ 1067}#) + #{val-exps\ 1056}#))))))))) + (#{build-letrec\ 346}# + (lambda (#{src\ 1073}# + #{in-order?\ 1074}# + #{ids\ 1075}# + #{vars\ 1076}# + #{val-exps\ 1077}# + #{body-exp\ 1078}#) + (if (null? #{vars\ 1076}#) + #{body-exp\ 1078}# (begin (for-each - #{maybe-name-value!\ 325}# - #{ids\ 1074}# - #{val-exps\ 1076}#) - (#{make-letrec\ 277}# - #{src\ 1072}# - #{in-order?\ 1073}# - #{ids\ 1074}# - #{vars\ 1075}# - #{val-exps\ 1076}# - #{body-exp\ 1077}#))))) - (#{make-syntax-object\ 349}# - (lambda (#{expression\ 1084}# - #{wrap\ 1085}# - #{module\ 1086}#) + #{maybe-name-value!\ 326}# + #{ids\ 1075}# + #{val-exps\ 1077}#) + (#{make-letrec\ 278}# + #{src\ 1073}# + #{in-order?\ 1074}# + #{ids\ 1075}# + #{vars\ 1076}# + #{val-exps\ 1077}# + #{body-exp\ 1078}#))))) + (#{make-syntax-object\ 350}# + (lambda (#{expression\ 1085}# + #{wrap\ 1086}# + #{module\ 1087}#) (vector 'syntax-object - #{expression\ 1084}# - #{wrap\ 1085}# - #{module\ 1086}#))) - (#{syntax-object?\ 351}# - (lambda (#{x\ 1090}#) - (if (vector? #{x\ 1090}#) - (if (= (vector-length #{x\ 1090}#) 4) - (eq? (vector-ref #{x\ 1090}# 0) + #{expression\ 1085}# + #{wrap\ 1086}# + #{module\ 1087}#))) + (#{syntax-object?\ 352}# + (lambda (#{x\ 1091}#) + (if (vector? #{x\ 1091}#) + (if (= (vector-length #{x\ 1091}#) 4) + (eq? (vector-ref #{x\ 1091}# 0) 'syntax-object) #f) #f))) - (#{syntax-object-expression\ 353}# - (lambda (#{x\ 1095}#) (vector-ref #{x\ 1095}# 1))) - (#{syntax-object-wrap\ 355}# - (lambda (#{x\ 1097}#) (vector-ref #{x\ 1097}# 2))) - (#{syntax-object-module\ 357}# - (lambda (#{x\ 1099}#) (vector-ref #{x\ 1099}# 3))) - (#{source-annotation\ 366}# - (lambda (#{x\ 1113}#) - (if (#{syntax-object?\ 351}# #{x\ 1113}#) - (#{source-annotation\ 366}# - (#{syntax-object-expression\ 353}# #{x\ 1113}#)) - (if (pair? #{x\ 1113}#) + (#{syntax-object-expression\ 354}# + (lambda (#{x\ 1096}#) (vector-ref #{x\ 1096}# 1))) + (#{syntax-object-wrap\ 356}# + (lambda (#{x\ 1098}#) (vector-ref #{x\ 1098}# 2))) + (#{syntax-object-module\ 358}# + (lambda (#{x\ 1100}#) (vector-ref #{x\ 1100}# 3))) + (#{source-annotation\ 367}# + (lambda (#{x\ 1114}#) + (if (#{syntax-object?\ 352}# #{x\ 1114}#) + (#{source-annotation\ 367}# + (#{syntax-object-expression\ 354}# #{x\ 1114}#)) + (if (pair? #{x\ 1114}#) (begin - (let ((#{props\ 1120}# (source-properties #{x\ 1113}#))) - (if (pair? #{props\ 1120}#) #{props\ 1120}# #f))) + (let ((#{props\ 1121}# (source-properties #{x\ 1114}#))) + (if (pair? #{props\ 1121}#) #{props\ 1121}# #f))) #f)))) - (#{extend-env\ 375}# - (lambda (#{labels\ 1122}# #{bindings\ 1123}# #{r\ 1124}#) - (if (null? #{labels\ 1122}#) - #{r\ 1124}# - (#{extend-env\ 375}# - (cdr #{labels\ 1122}#) - (cdr #{bindings\ 1123}#) - (cons (cons (car #{labels\ 1122}#) - (car #{bindings\ 1123}#)) - #{r\ 1124}#))))) - (#{extend-var-env\ 377}# - (lambda (#{labels\ 1128}# #{vars\ 1129}# #{r\ 1130}#) - (if (null? #{labels\ 1128}#) - #{r\ 1130}# - (#{extend-var-env\ 377}# - (cdr #{labels\ 1128}#) - (cdr #{vars\ 1129}#) - (cons (cons (car #{labels\ 1128}#) - (cons (quote lexical) (car #{vars\ 1129}#))) - #{r\ 1130}#))))) - (#{macros-only-env\ 379}# - (lambda (#{r\ 1135}#) - (if (null? #{r\ 1135}#) + (#{extend-env\ 376}# + (lambda (#{labels\ 1123}# #{bindings\ 1124}# #{r\ 1125}#) + (if (null? #{labels\ 1123}#) + #{r\ 1125}# + (#{extend-env\ 376}# + (cdr #{labels\ 1123}#) + (cdr #{bindings\ 1124}#) + (cons (cons (car #{labels\ 1123}#) + (car #{bindings\ 1124}#)) + #{r\ 1125}#))))) + (#{extend-var-env\ 378}# + (lambda (#{labels\ 1129}# #{vars\ 1130}# #{r\ 1131}#) + (if (null? #{labels\ 1129}#) + #{r\ 1131}# + (#{extend-var-env\ 378}# + (cdr #{labels\ 1129}#) + (cdr #{vars\ 1130}#) + (cons (cons (car #{labels\ 1129}#) + (cons (quote lexical) (car #{vars\ 1130}#))) + #{r\ 1131}#))))) + (#{macros-only-env\ 380}# + (lambda (#{r\ 1136}#) + (if (null? #{r\ 1136}#) '() (begin - (let ((#{a\ 1138}# (car #{r\ 1135}#))) - (if (eq? (car (cdr #{a\ 1138}#)) (quote macro)) - (cons #{a\ 1138}# - (#{macros-only-env\ 379}# (cdr #{r\ 1135}#))) - (#{macros-only-env\ 379}# (cdr #{r\ 1135}#)))))))) - (#{lookup\ 381}# - (lambda (#{x\ 1139}# #{r\ 1140}# #{mod\ 1141}#) + (let ((#{a\ 1139}# (car #{r\ 1136}#))) + (if (eq? (car (cdr #{a\ 1139}#)) (quote macro)) + (cons #{a\ 1139}# + (#{macros-only-env\ 380}# (cdr #{r\ 1136}#))) + (#{macros-only-env\ 380}# (cdr #{r\ 1136}#)))))))) + (#{lookup\ 382}# + (lambda (#{x\ 1140}# #{r\ 1141}# #{mod\ 1142}#) (begin - (let ((#{t\ 1147}# (assq #{x\ 1139}# #{r\ 1140}#))) - (if #{t\ 1147}# - (cdr #{t\ 1147}#) - (if (symbol? #{x\ 1139}#) + (let ((#{t\ 1148}# (assq #{x\ 1140}# #{r\ 1141}#))) + (if #{t\ 1148}# + (cdr #{t\ 1148}#) + (if (symbol? #{x\ 1140}#) (begin - (let ((#{t\ 1153}# - (#{get-global-definition-hook\ 303}# - #{x\ 1139}# - #{mod\ 1141}#))) - (if #{t\ 1153}# #{t\ 1153}# (quote (global))))) + (let ((#{t\ 1154}# + (#{get-global-definition-hook\ 304}# + #{x\ 1140}# + #{mod\ 1142}#))) + (if #{t\ 1154}# #{t\ 1154}# (quote (global))))) '(displaced-lexical))))))) - (#{global-extend\ 383}# - (lambda (#{type\ 1158}# #{sym\ 1159}# #{val\ 1160}#) - (#{put-global-definition-hook\ 301}# - #{sym\ 1159}# - #{type\ 1158}# - #{val\ 1160}#))) - (#{nonsymbol-id?\ 385}# - (lambda (#{x\ 1164}#) - (if (#{syntax-object?\ 351}# #{x\ 1164}#) + (#{global-extend\ 384}# + (lambda (#{type\ 1159}# #{sym\ 1160}# #{val\ 1161}#) + (#{put-global-definition-hook\ 302}# + #{sym\ 1160}# + #{type\ 1159}# + #{val\ 1161}#))) + (#{nonsymbol-id?\ 386}# + (lambda (#{x\ 1165}#) + (if (#{syntax-object?\ 352}# #{x\ 1165}#) (symbol? - (#{syntax-object-expression\ 353}# #{x\ 1164}#)) + (#{syntax-object-expression\ 354}# #{x\ 1165}#)) #f))) - (#{id?\ 387}# - (lambda (#{x\ 1168}#) - (if (symbol? #{x\ 1168}#) + (#{id?\ 388}# + (lambda (#{x\ 1169}#) + (if (symbol? #{x\ 1169}#) #t - (if (#{syntax-object?\ 351}# #{x\ 1168}#) + (if (#{syntax-object?\ 352}# #{x\ 1169}#) (symbol? - (#{syntax-object-expression\ 353}# #{x\ 1168}#)) + (#{syntax-object-expression\ 354}# #{x\ 1169}#)) #f)))) - (#{id-sym-name&marks\ 390}# - (lambda (#{x\ 1175}# #{w\ 1176}#) - (if (#{syntax-object?\ 351}# #{x\ 1175}#) + (#{id-sym-name&marks\ 391}# + (lambda (#{x\ 1176}# #{w\ 1177}#) + (if (#{syntax-object?\ 352}# #{x\ 1176}#) (values - (#{syntax-object-expression\ 353}# #{x\ 1175}#) - (#{join-marks\ 440}# - (#{wrap-marks\ 394}# #{w\ 1176}#) - (#{wrap-marks\ 394}# - (#{syntax-object-wrap\ 355}# #{x\ 1175}#)))) + (#{syntax-object-expression\ 354}# #{x\ 1176}#) + (#{join-marks\ 441}# + (#{wrap-marks\ 395}# #{w\ 1177}#) + (#{wrap-marks\ 395}# + (#{syntax-object-wrap\ 356}# #{x\ 1176}#)))) (values - #{x\ 1175}# - (#{wrap-marks\ 394}# #{w\ 1176}#))))) - (#{gen-label\ 403}# + #{x\ 1176}# + (#{wrap-marks\ 395}# #{w\ 1177}#))))) + (#{gen-label\ 404}# (lambda () (symbol->string (gensym "i")))) - (#{gen-labels\ 405}# - (lambda (#{ls\ 1179}#) - (if (null? #{ls\ 1179}#) + (#{gen-labels\ 406}# + (lambda (#{ls\ 1180}#) + (if (null? #{ls\ 1180}#) '() - (cons (#{gen-label\ 403}#) - (#{gen-labels\ 405}# (cdr #{ls\ 1179}#)))))) - (#{make-ribcage\ 408}# - (lambda (#{symnames\ 1181}# - #{marks\ 1182}# - #{labels\ 1183}#) + (cons (#{gen-label\ 404}#) + (#{gen-labels\ 406}# (cdr #{ls\ 1180}#)))))) + (#{make-ribcage\ 409}# + (lambda (#{symnames\ 1182}# + #{marks\ 1183}# + #{labels\ 1184}#) (vector 'ribcage - #{symnames\ 1181}# - #{marks\ 1182}# - #{labels\ 1183}#))) - (#{ribcage-symnames\ 412}# - (lambda (#{x\ 1192}#) (vector-ref #{x\ 1192}# 1))) - (#{ribcage-marks\ 414}# - (lambda (#{x\ 1194}#) (vector-ref #{x\ 1194}# 2))) - (#{ribcage-labels\ 416}# - (lambda (#{x\ 1196}#) (vector-ref #{x\ 1196}# 3))) - (#{set-ribcage-symnames!\ 418}# - (lambda (#{x\ 1198}# #{update\ 1199}#) - (vector-set! #{x\ 1198}# 1 #{update\ 1199}#))) - (#{set-ribcage-marks!\ 420}# - (lambda (#{x\ 1202}# #{update\ 1203}#) - (vector-set! #{x\ 1202}# 2 #{update\ 1203}#))) - (#{set-ribcage-labels!\ 422}# - (lambda (#{x\ 1206}# #{update\ 1207}#) - (vector-set! #{x\ 1206}# 3 #{update\ 1207}#))) - (#{anti-mark\ 428}# - (lambda (#{w\ 1210}#) - (#{make-wrap\ 392}# - (cons #f (#{wrap-marks\ 394}# #{w\ 1210}#)) + #{symnames\ 1182}# + #{marks\ 1183}# + #{labels\ 1184}#))) + (#{ribcage-symnames\ 413}# + (lambda (#{x\ 1193}#) (vector-ref #{x\ 1193}# 1))) + (#{ribcage-marks\ 415}# + (lambda (#{x\ 1195}#) (vector-ref #{x\ 1195}# 2))) + (#{ribcage-labels\ 417}# + (lambda (#{x\ 1197}#) (vector-ref #{x\ 1197}# 3))) + (#{set-ribcage-symnames!\ 419}# + (lambda (#{x\ 1199}# #{update\ 1200}#) + (vector-set! #{x\ 1199}# 1 #{update\ 1200}#))) + (#{set-ribcage-marks!\ 421}# + (lambda (#{x\ 1203}# #{update\ 1204}#) + (vector-set! #{x\ 1203}# 2 #{update\ 1204}#))) + (#{set-ribcage-labels!\ 423}# + (lambda (#{x\ 1207}# #{update\ 1208}#) + (vector-set! #{x\ 1207}# 3 #{update\ 1208}#))) + (#{anti-mark\ 429}# + (lambda (#{w\ 1211}#) + (#{make-wrap\ 393}# + (cons #f (#{wrap-marks\ 395}# #{w\ 1211}#)) (cons 'shift - (#{wrap-subst\ 396}# #{w\ 1210}#))))) - (#{extend-ribcage!\ 432}# - (lambda (#{ribcage\ 1213}# #{id\ 1214}# #{label\ 1215}#) + (#{wrap-subst\ 397}# #{w\ 1211}#))))) + (#{extend-ribcage!\ 433}# + (lambda (#{ribcage\ 1214}# #{id\ 1215}# #{label\ 1216}#) (begin - (#{set-ribcage-symnames!\ 418}# - #{ribcage\ 1213}# - (cons (#{syntax-object-expression\ 353}# #{id\ 1214}#) - (#{ribcage-symnames\ 412}# #{ribcage\ 1213}#))) - (#{set-ribcage-marks!\ 420}# - #{ribcage\ 1213}# - (cons (#{wrap-marks\ 394}# - (#{syntax-object-wrap\ 355}# #{id\ 1214}#)) - (#{ribcage-marks\ 414}# #{ribcage\ 1213}#))) - (#{set-ribcage-labels!\ 422}# - #{ribcage\ 1213}# - (cons #{label\ 1215}# - (#{ribcage-labels\ 416}# #{ribcage\ 1213}#)))))) - (#{make-binding-wrap\ 434}# - (lambda (#{ids\ 1219}# #{labels\ 1220}# #{w\ 1221}#) - (if (null? #{ids\ 1219}#) - #{w\ 1221}# - (#{make-wrap\ 392}# - (#{wrap-marks\ 394}# #{w\ 1221}#) + (#{set-ribcage-symnames!\ 419}# + #{ribcage\ 1214}# + (cons (#{syntax-object-expression\ 354}# #{id\ 1215}#) + (#{ribcage-symnames\ 413}# #{ribcage\ 1214}#))) + (#{set-ribcage-marks!\ 421}# + #{ribcage\ 1214}# + (cons (#{wrap-marks\ 395}# + (#{syntax-object-wrap\ 356}# #{id\ 1215}#)) + (#{ribcage-marks\ 415}# #{ribcage\ 1214}#))) + (#{set-ribcage-labels!\ 423}# + #{ribcage\ 1214}# + (cons #{label\ 1216}# + (#{ribcage-labels\ 417}# #{ribcage\ 1214}#)))))) + (#{make-binding-wrap\ 435}# + (lambda (#{ids\ 1220}# #{labels\ 1221}# #{w\ 1222}#) + (if (null? #{ids\ 1220}#) + #{w\ 1222}# + (#{make-wrap\ 393}# + (#{wrap-marks\ 395}# #{w\ 1222}#) (cons (begin - (let ((#{labelvec\ 1226}# - (list->vector #{labels\ 1220}#))) + (let ((#{labelvec\ 1227}# + (list->vector #{labels\ 1221}#))) (begin - (let ((#{n\ 1228}# - (vector-length #{labelvec\ 1226}#))) + (let ((#{n\ 1229}# + (vector-length #{labelvec\ 1227}#))) (begin - (let ((#{symnamevec\ 1231}# - (make-vector #{n\ 1228}#)) - (#{marksvec\ 1232}# - (make-vector #{n\ 1228}#))) + (let ((#{symnamevec\ 1232}# + (make-vector #{n\ 1229}#)) + (#{marksvec\ 1233}# + (make-vector #{n\ 1229}#))) (begin (letrec* - ((#{f\ 1236}# - (lambda (#{ids\ 1237}# #{i\ 1238}#) - (if (not (null? #{ids\ 1237}#)) + ((#{f\ 1237}# + (lambda (#{ids\ 1238}# #{i\ 1239}#) + (if (not (null? #{ids\ 1238}#)) (call-with-values (lambda () - (#{id-sym-name&marks\ 390}# - (car #{ids\ 1237}#) - #{w\ 1221}#)) - (lambda (#{symname\ 1239}# - #{marks\ 1240}#) + (#{id-sym-name&marks\ 391}# + (car #{ids\ 1238}#) + #{w\ 1222}#)) + (lambda (#{symname\ 1240}# + #{marks\ 1241}#) (begin (vector-set! - #{symnamevec\ 1231}# - #{i\ 1238}# - #{symname\ 1239}#) + #{symnamevec\ 1232}# + #{i\ 1239}# + #{symname\ 1240}#) (vector-set! - #{marksvec\ 1232}# - #{i\ 1238}# - #{marks\ 1240}#) - (#{f\ 1236}# - (cdr #{ids\ 1237}#) - (#{fx+\ 288}# - #{i\ 1238}# + #{marksvec\ 1233}# + #{i\ 1239}# + #{marks\ 1241}#) + (#{f\ 1237}# + (cdr #{ids\ 1238}#) + (#{fx+\ 289}# + #{i\ 1239}# 1))))))))) - (begin (#{f\ 1236}# #{ids\ 1219}# 0))) - (#{make-ribcage\ 408}# - #{symnamevec\ 1231}# - #{marksvec\ 1232}# - #{labelvec\ 1226}#)))))))) - (#{wrap-subst\ 396}# #{w\ 1221}#)))))) - (#{smart-append\ 436}# - (lambda (#{m1\ 1243}# #{m2\ 1244}#) - (if (null? #{m2\ 1244}#) - #{m1\ 1243}# - (append #{m1\ 1243}# #{m2\ 1244}#)))) - (#{join-wraps\ 438}# - (lambda (#{w1\ 1247}# #{w2\ 1248}#) + (begin (#{f\ 1237}# #{ids\ 1220}# 0))) + (#{make-ribcage\ 409}# + #{symnamevec\ 1232}# + #{marksvec\ 1233}# + #{labelvec\ 1227}#)))))))) + (#{wrap-subst\ 397}# #{w\ 1222}#)))))) + (#{smart-append\ 437}# + (lambda (#{m1\ 1244}# #{m2\ 1245}#) + (if (null? #{m2\ 1245}#) + #{m1\ 1244}# + (append #{m1\ 1244}# #{m2\ 1245}#)))) + (#{join-wraps\ 439}# + (lambda (#{w1\ 1248}# #{w2\ 1249}#) (begin - (let ((#{m1\ 1253}# (#{wrap-marks\ 394}# #{w1\ 1247}#)) - (#{s1\ 1254}# (#{wrap-subst\ 396}# #{w1\ 1247}#))) - (if (null? #{m1\ 1253}#) - (if (null? #{s1\ 1254}#) - #{w2\ 1248}# - (#{make-wrap\ 392}# - (#{wrap-marks\ 394}# #{w2\ 1248}#) - (#{smart-append\ 436}# - #{s1\ 1254}# - (#{wrap-subst\ 396}# #{w2\ 1248}#)))) - (#{make-wrap\ 392}# - (#{smart-append\ 436}# - #{m1\ 1253}# - (#{wrap-marks\ 394}# #{w2\ 1248}#)) - (#{smart-append\ 436}# - #{s1\ 1254}# - (#{wrap-subst\ 396}# #{w2\ 1248}#)))))))) - (#{join-marks\ 440}# - (lambda (#{m1\ 1255}# #{m2\ 1256}#) - (#{smart-append\ 436}# #{m1\ 1255}# #{m2\ 1256}#))) - (#{same-marks?\ 442}# - (lambda (#{x\ 1259}# #{y\ 1260}#) + (let ((#{m1\ 1254}# (#{wrap-marks\ 395}# #{w1\ 1248}#)) + (#{s1\ 1255}# (#{wrap-subst\ 397}# #{w1\ 1248}#))) + (if (null? #{m1\ 1254}#) + (if (null? #{s1\ 1255}#) + #{w2\ 1249}# + (#{make-wrap\ 393}# + (#{wrap-marks\ 395}# #{w2\ 1249}#) + (#{smart-append\ 437}# + #{s1\ 1255}# + (#{wrap-subst\ 397}# #{w2\ 1249}#)))) + (#{make-wrap\ 393}# + (#{smart-append\ 437}# + #{m1\ 1254}# + (#{wrap-marks\ 395}# #{w2\ 1249}#)) + (#{smart-append\ 437}# + #{s1\ 1255}# + (#{wrap-subst\ 397}# #{w2\ 1249}#)))))))) + (#{join-marks\ 441}# + (lambda (#{m1\ 1256}# #{m2\ 1257}#) + (#{smart-append\ 437}# #{m1\ 1256}# #{m2\ 1257}#))) + (#{same-marks?\ 443}# + (lambda (#{x\ 1260}# #{y\ 1261}#) (begin - (let ((#{t\ 1265}# (eq? #{x\ 1259}# #{y\ 1260}#))) - (if #{t\ 1265}# - #{t\ 1265}# - (if (not (null? #{x\ 1259}#)) - (if (not (null? #{y\ 1260}#)) - (if (eq? (car #{x\ 1259}#) (car #{y\ 1260}#)) - (#{same-marks?\ 442}# - (cdr #{x\ 1259}#) - (cdr #{y\ 1260}#)) + (let ((#{t\ 1266}# (eq? #{x\ 1260}# #{y\ 1261}#))) + (if #{t\ 1266}# + #{t\ 1266}# + (if (not (null? #{x\ 1260}#)) + (if (not (null? #{y\ 1261}#)) + (if (eq? (car #{x\ 1260}#) (car #{y\ 1261}#)) + (#{same-marks?\ 443}# + (cdr #{x\ 1260}#) + (cdr #{y\ 1261}#)) #f) #f) #f)))))) - (#{id-var-name\ 444}# - (lambda (#{id\ 1271}# #{w\ 1272}#) + (#{id-var-name\ 445}# + (lambda (#{id\ 1272}# #{w\ 1273}#) (letrec* - ((#{search\ 1277}# - (lambda (#{sym\ 1293}# #{subst\ 1294}# #{marks\ 1295}#) - (if (null? #{subst\ 1294}#) - (values #f #{marks\ 1295}#) + ((#{search\ 1278}# + (lambda (#{sym\ 1294}# #{subst\ 1295}# #{marks\ 1296}#) + (if (null? #{subst\ 1295}#) + (values #f #{marks\ 1296}#) (begin - (let ((#{fst\ 1300}# (car #{subst\ 1294}#))) - (if (eq? #{fst\ 1300}# (quote shift)) - (#{search\ 1277}# - #{sym\ 1293}# - (cdr #{subst\ 1294}#) - (cdr #{marks\ 1295}#)) + (let ((#{fst\ 1301}# (car #{subst\ 1295}#))) + (if (eq? #{fst\ 1301}# (quote shift)) + (#{search\ 1278}# + #{sym\ 1294}# + (cdr #{subst\ 1295}#) + (cdr #{marks\ 1296}#)) (begin - (let ((#{symnames\ 1302}# - (#{ribcage-symnames\ 412}# - #{fst\ 1300}#))) - (if (vector? #{symnames\ 1302}#) - (#{search-vector-rib\ 1281}# - #{sym\ 1293}# - #{subst\ 1294}# - #{marks\ 1295}# - #{symnames\ 1302}# - #{fst\ 1300}#) - (#{search-list-rib\ 1279}# - #{sym\ 1293}# - #{subst\ 1294}# - #{marks\ 1295}# - #{symnames\ 1302}# - #{fst\ 1300}#)))))))))) - (#{search-list-rib\ 1279}# - (lambda (#{sym\ 1303}# - #{subst\ 1304}# - #{marks\ 1305}# - #{symnames\ 1306}# - #{ribcage\ 1307}#) + (let ((#{symnames\ 1303}# + (#{ribcage-symnames\ 413}# + #{fst\ 1301}#))) + (if (vector? #{symnames\ 1303}#) + (#{search-vector-rib\ 1282}# + #{sym\ 1294}# + #{subst\ 1295}# + #{marks\ 1296}# + #{symnames\ 1303}# + #{fst\ 1301}#) + (#{search-list-rib\ 1280}# + #{sym\ 1294}# + #{subst\ 1295}# + #{marks\ 1296}# + #{symnames\ 1303}# + #{fst\ 1301}#)))))))))) + (#{search-list-rib\ 1280}# + (lambda (#{sym\ 1304}# + #{subst\ 1305}# + #{marks\ 1306}# + #{symnames\ 1307}# + #{ribcage\ 1308}#) (letrec* - ((#{f\ 1316}# - (lambda (#{symnames\ 1317}# #{i\ 1318}#) - (if (null? #{symnames\ 1317}#) - (#{search\ 1277}# - #{sym\ 1303}# - (cdr #{subst\ 1304}#) - #{marks\ 1305}#) - (if (if (eq? (car #{symnames\ 1317}#) - #{sym\ 1303}#) - (#{same-marks?\ 442}# - #{marks\ 1305}# + ((#{f\ 1317}# + (lambda (#{symnames\ 1318}# #{i\ 1319}#) + (if (null? #{symnames\ 1318}#) + (#{search\ 1278}# + #{sym\ 1304}# + (cdr #{subst\ 1305}#) + #{marks\ 1306}#) + (if (if (eq? (car #{symnames\ 1318}#) + #{sym\ 1304}#) + (#{same-marks?\ 443}# + #{marks\ 1306}# (list-ref - (#{ribcage-marks\ 414}# - #{ribcage\ 1307}#) - #{i\ 1318}#)) + (#{ribcage-marks\ 415}# + #{ribcage\ 1308}#) + #{i\ 1319}#)) #f) (values (list-ref - (#{ribcage-labels\ 416}# #{ribcage\ 1307}#) - #{i\ 1318}#) - #{marks\ 1305}#) - (#{f\ 1316}# - (cdr #{symnames\ 1317}#) - (#{fx+\ 288}# #{i\ 1318}# 1))))))) - (begin (#{f\ 1316}# #{symnames\ 1306}# 0))))) - (#{search-vector-rib\ 1281}# - (lambda (#{sym\ 1326}# - #{subst\ 1327}# - #{marks\ 1328}# - #{symnames\ 1329}# - #{ribcage\ 1330}#) + (#{ribcage-labels\ 417}# #{ribcage\ 1308}#) + #{i\ 1319}#) + #{marks\ 1306}#) + (#{f\ 1317}# + (cdr #{symnames\ 1318}#) + (#{fx+\ 289}# #{i\ 1319}# 1))))))) + (begin (#{f\ 1317}# #{symnames\ 1307}# 0))))) + (#{search-vector-rib\ 1282}# + (lambda (#{sym\ 1327}# + #{subst\ 1328}# + #{marks\ 1329}# + #{symnames\ 1330}# + #{ribcage\ 1331}#) (begin - (let ((#{n\ 1337}# (vector-length #{symnames\ 1329}#))) + (let ((#{n\ 1338}# (vector-length #{symnames\ 1330}#))) (letrec* - ((#{f\ 1340}# - (lambda (#{i\ 1341}#) - (if (#{fx=\ 292}# #{i\ 1341}# #{n\ 1337}#) - (#{search\ 1277}# - #{sym\ 1326}# - (cdr #{subst\ 1327}#) - #{marks\ 1328}#) + ((#{f\ 1341}# + (lambda (#{i\ 1342}#) + (if (#{fx=\ 293}# #{i\ 1342}# #{n\ 1338}#) + (#{search\ 1278}# + #{sym\ 1327}# + (cdr #{subst\ 1328}#) + #{marks\ 1329}#) (if (if (eq? (vector-ref - #{symnames\ 1329}# - #{i\ 1341}#) - #{sym\ 1326}#) - (#{same-marks?\ 442}# - #{marks\ 1328}# + #{symnames\ 1330}# + #{i\ 1342}#) + #{sym\ 1327}#) + (#{same-marks?\ 443}# + #{marks\ 1329}# (vector-ref - (#{ribcage-marks\ 414}# - #{ribcage\ 1330}#) - #{i\ 1341}#)) + (#{ribcage-marks\ 415}# + #{ribcage\ 1331}#) + #{i\ 1342}#)) #f) (values (vector-ref - (#{ribcage-labels\ 416}# - #{ribcage\ 1330}#) - #{i\ 1341}#) - #{marks\ 1328}#) - (#{f\ 1340}# - (#{fx+\ 288}# #{i\ 1341}# 1))))))) - (begin (#{f\ 1340}# 0)))))))) + (#{ribcage-labels\ 417}# + #{ribcage\ 1331}#) + #{i\ 1342}#) + #{marks\ 1329}#) + (#{f\ 1341}# + (#{fx+\ 289}# #{i\ 1342}# 1))))))) + (begin (#{f\ 1341}# 0)))))))) (begin - (if (symbol? #{id\ 1271}#) + (if (symbol? #{id\ 1272}#) (begin - (let ((#{t\ 1351}# + (let ((#{t\ 1352}# (call-with-values (lambda () - (#{search\ 1277}# - #{id\ 1271}# - (#{wrap-subst\ 396}# #{w\ 1272}#) - (#{wrap-marks\ 394}# #{w\ 1272}#))) - (lambda (#{x\ 1353}# . #{ignore\ 1354}#) - #{x\ 1353}#)))) - (if #{t\ 1351}# #{t\ 1351}# #{id\ 1271}#))) - (if (#{syntax-object?\ 351}# #{id\ 1271}#) + (#{search\ 1278}# + #{id\ 1272}# + (#{wrap-subst\ 397}# #{w\ 1273}#) + (#{wrap-marks\ 395}# #{w\ 1273}#))) + (lambda (#{x\ 1354}# . #{ignore\ 1355}#) + #{x\ 1354}#)))) + (if #{t\ 1352}# #{t\ 1352}# #{id\ 1272}#))) + (if (#{syntax-object?\ 352}# #{id\ 1272}#) (begin - (let ((#{id\ 1362}# - (#{syntax-object-expression\ 353}# - #{id\ 1271}#)) - (#{w1\ 1363}# - (#{syntax-object-wrap\ 355}# #{id\ 1271}#))) + (let ((#{id\ 1363}# + (#{syntax-object-expression\ 354}# + #{id\ 1272}#)) + (#{w1\ 1364}# + (#{syntax-object-wrap\ 356}# #{id\ 1272}#))) (begin - (let ((#{marks\ 1365}# - (#{join-marks\ 440}# - (#{wrap-marks\ 394}# #{w\ 1272}#) - (#{wrap-marks\ 394}# #{w1\ 1363}#)))) + (let ((#{marks\ 1366}# + (#{join-marks\ 441}# + (#{wrap-marks\ 395}# #{w\ 1273}#) + (#{wrap-marks\ 395}# #{w1\ 1364}#)))) (call-with-values (lambda () - (#{search\ 1277}# - #{id\ 1362}# - (#{wrap-subst\ 396}# #{w\ 1272}#) - #{marks\ 1365}#)) - (lambda (#{new-id\ 1366}# #{marks\ 1367}#) + (#{search\ 1278}# + #{id\ 1363}# + (#{wrap-subst\ 397}# #{w\ 1273}#) + #{marks\ 1366}#)) + (lambda (#{new-id\ 1367}# #{marks\ 1368}#) (begin - (let ((#{t\ 1372}# #{new-id\ 1366}#)) - (if #{t\ 1372}# - #{t\ 1372}# + (let ((#{t\ 1373}# #{new-id\ 1367}#)) + (if #{t\ 1373}# + #{t\ 1373}# (begin - (let ((#{t\ 1375}# + (let ((#{t\ 1376}# (call-with-values (lambda () - (#{search\ 1277}# - #{id\ 1362}# - (#{wrap-subst\ 396}# - #{w1\ 1363}#) - #{marks\ 1367}#)) - (lambda (#{x\ 1377}# + (#{search\ 1278}# + #{id\ 1363}# + (#{wrap-subst\ 397}# + #{w1\ 1364}#) + #{marks\ 1368}#)) + (lambda (#{x\ 1378}# . - #{ignore\ 1378}#) - #{x\ 1377}#)))) - (if #{t\ 1375}# - #{t\ 1375}# - #{id\ 1362}#)))))))))))) + #{ignore\ 1379}#) + #{x\ 1378}#)))) + (if #{t\ 1376}# + #{t\ 1376}# + #{id\ 1363}#)))))))))))) (syntax-violation 'id-var-name "invalid id" - #{id\ 1271}#))))))) - (#{free-id=?\ 446}# - (lambda (#{i\ 1383}# #{j\ 1384}#) + #{id\ 1272}#))))))) + (#{free-id=?\ 447}# + (lambda (#{i\ 1384}# #{j\ 1385}#) (if (eq? (begin - (let ((#{x\ 1390}# #{i\ 1383}#)) - (if (#{syntax-object?\ 351}# #{x\ 1390}#) - (#{syntax-object-expression\ 353}# #{x\ 1390}#) - #{x\ 1390}#))) + (let ((#{x\ 1391}# #{i\ 1384}#)) + (if (#{syntax-object?\ 352}# #{x\ 1391}#) + (#{syntax-object-expression\ 354}# #{x\ 1391}#) + #{x\ 1391}#))) (begin - (let ((#{x\ 1393}# #{j\ 1384}#)) - (if (#{syntax-object?\ 351}# #{x\ 1393}#) - (#{syntax-object-expression\ 353}# #{x\ 1393}#) - #{x\ 1393}#)))) - (eq? (#{id-var-name\ 444}# #{i\ 1383}# (quote (()))) - (#{id-var-name\ 444}# #{j\ 1384}# (quote (())))) + (let ((#{x\ 1394}# #{j\ 1385}#)) + (if (#{syntax-object?\ 352}# #{x\ 1394}#) + (#{syntax-object-expression\ 354}# #{x\ 1394}#) + #{x\ 1394}#)))) + (eq? (#{id-var-name\ 445}# #{i\ 1384}# (quote (()))) + (#{id-var-name\ 445}# #{j\ 1385}# (quote (())))) #f))) - (#{bound-id=?\ 448}# - (lambda (#{i\ 1397}# #{j\ 1398}#) - (if (if (#{syntax-object?\ 351}# #{i\ 1397}#) - (#{syntax-object?\ 351}# #{j\ 1398}#) + (#{bound-id=?\ 449}# + (lambda (#{i\ 1398}# #{j\ 1399}#) + (if (if (#{syntax-object?\ 352}# #{i\ 1398}#) + (#{syntax-object?\ 352}# #{j\ 1399}#) #f) - (if (eq? (#{syntax-object-expression\ 353}# #{i\ 1397}#) - (#{syntax-object-expression\ 353}# #{j\ 1398}#)) - (#{same-marks?\ 442}# - (#{wrap-marks\ 394}# - (#{syntax-object-wrap\ 355}# #{i\ 1397}#)) - (#{wrap-marks\ 394}# - (#{syntax-object-wrap\ 355}# #{j\ 1398}#))) + (if (eq? (#{syntax-object-expression\ 354}# #{i\ 1398}#) + (#{syntax-object-expression\ 354}# #{j\ 1399}#)) + (#{same-marks?\ 443}# + (#{wrap-marks\ 395}# + (#{syntax-object-wrap\ 356}# #{i\ 1398}#)) + (#{wrap-marks\ 395}# + (#{syntax-object-wrap\ 356}# #{j\ 1399}#))) #f) - (eq? #{i\ 1397}# #{j\ 1398}#)))) - (#{valid-bound-ids?\ 450}# - (lambda (#{ids\ 1405}#) + (eq? #{i\ 1398}# #{j\ 1399}#)))) + (#{valid-bound-ids?\ 451}# + (lambda (#{ids\ 1406}#) (if (letrec* - ((#{all-ids?\ 1410}# - (lambda (#{ids\ 1411}#) + ((#{all-ids?\ 1411}# + (lambda (#{ids\ 1412}#) (begin - (let ((#{t\ 1414}# (null? #{ids\ 1411}#))) - (if #{t\ 1414}# - #{t\ 1414}# - (if (#{id?\ 387}# (car #{ids\ 1411}#)) - (#{all-ids?\ 1410}# (cdr #{ids\ 1411}#)) + (let ((#{t\ 1415}# (null? #{ids\ 1412}#))) + (if #{t\ 1415}# + #{t\ 1415}# + (if (#{id?\ 388}# (car #{ids\ 1412}#)) + (#{all-ids?\ 1411}# (cdr #{ids\ 1412}#)) #f))))))) - (begin (#{all-ids?\ 1410}# #{ids\ 1405}#))) - (#{distinct-bound-ids?\ 452}# #{ids\ 1405}#) + (begin (#{all-ids?\ 1411}# #{ids\ 1406}#))) + (#{distinct-bound-ids?\ 453}# #{ids\ 1406}#) #f))) - (#{distinct-bound-ids?\ 452}# - (lambda (#{ids\ 1419}#) + (#{distinct-bound-ids?\ 453}# + (lambda (#{ids\ 1420}#) (letrec* - ((#{distinct?\ 1423}# - (lambda (#{ids\ 1424}#) + ((#{distinct?\ 1424}# + (lambda (#{ids\ 1425}#) (begin - (let ((#{t\ 1427}# (null? #{ids\ 1424}#))) - (if #{t\ 1427}# - #{t\ 1427}# - (if (not (#{bound-id-member?\ 454}# - (car #{ids\ 1424}#) - (cdr #{ids\ 1424}#))) - (#{distinct?\ 1423}# (cdr #{ids\ 1424}#)) + (let ((#{t\ 1428}# (null? #{ids\ 1425}#))) + (if #{t\ 1428}# + #{t\ 1428}# + (if (not (#{bound-id-member?\ 455}# + (car #{ids\ 1425}#) + (cdr #{ids\ 1425}#))) + (#{distinct?\ 1424}# (cdr #{ids\ 1425}#)) #f))))))) - (begin (#{distinct?\ 1423}# #{ids\ 1419}#))))) - (#{bound-id-member?\ 454}# - (lambda (#{x\ 1431}# #{list\ 1432}#) - (if (not (null? #{list\ 1432}#)) + (begin (#{distinct?\ 1424}# #{ids\ 1420}#))))) + (#{bound-id-member?\ 455}# + (lambda (#{x\ 1432}# #{list\ 1433}#) + (if (not (null? #{list\ 1433}#)) (begin - (let ((#{t\ 1439}# - (#{bound-id=?\ 448}# - #{x\ 1431}# - (car #{list\ 1432}#)))) - (if #{t\ 1439}# - #{t\ 1439}# - (#{bound-id-member?\ 454}# - #{x\ 1431}# - (cdr #{list\ 1432}#))))) + (let ((#{t\ 1440}# + (#{bound-id=?\ 449}# + #{x\ 1432}# + (car #{list\ 1433}#)))) + (if #{t\ 1440}# + #{t\ 1440}# + (#{bound-id-member?\ 455}# + #{x\ 1432}# + (cdr #{list\ 1433}#))))) #f))) - (#{wrap\ 456}# - (lambda (#{x\ 1441}# #{w\ 1442}# #{defmod\ 1443}#) - (if (if (null? (#{wrap-marks\ 394}# #{w\ 1442}#)) - (null? (#{wrap-subst\ 396}# #{w\ 1442}#)) + (#{wrap\ 457}# + (lambda (#{x\ 1442}# #{w\ 1443}# #{defmod\ 1444}#) + (if (if (null? (#{wrap-marks\ 395}# #{w\ 1443}#)) + (null? (#{wrap-subst\ 397}# #{w\ 1443}#)) #f) - #{x\ 1441}# - (if (#{syntax-object?\ 351}# #{x\ 1441}#) - (#{make-syntax-object\ 349}# - (#{syntax-object-expression\ 353}# #{x\ 1441}#) - (#{join-wraps\ 438}# - #{w\ 1442}# - (#{syntax-object-wrap\ 355}# #{x\ 1441}#)) - (#{syntax-object-module\ 357}# #{x\ 1441}#)) - (if (null? #{x\ 1441}#) - #{x\ 1441}# - (#{make-syntax-object\ 349}# - #{x\ 1441}# - #{w\ 1442}# - #{defmod\ 1443}#)))))) - (#{source-wrap\ 458}# - (lambda (#{x\ 1456}# - #{w\ 1457}# - #{s\ 1458}# - #{defmod\ 1459}#) - (#{wrap\ 456}# - (#{decorate-source\ 305}# - #{x\ 1456}# - #{s\ 1458}#) - #{w\ 1457}# - #{defmod\ 1459}#))) - (#{chi-sequence\ 460}# - (lambda (#{body\ 1464}# - #{r\ 1465}# - #{w\ 1466}# - #{s\ 1467}# - #{mod\ 1468}#) - (#{build-sequence\ 339}# - #{s\ 1467}# + #{x\ 1442}# + (if (#{syntax-object?\ 352}# #{x\ 1442}#) + (#{make-syntax-object\ 350}# + (#{syntax-object-expression\ 354}# #{x\ 1442}#) + (#{join-wraps\ 439}# + #{w\ 1443}# + (#{syntax-object-wrap\ 356}# #{x\ 1442}#)) + (#{syntax-object-module\ 358}# #{x\ 1442}#)) + (if (null? #{x\ 1442}#) + #{x\ 1442}# + (#{make-syntax-object\ 350}# + #{x\ 1442}# + #{w\ 1443}# + #{defmod\ 1444}#)))))) + (#{source-wrap\ 459}# + (lambda (#{x\ 1457}# + #{w\ 1458}# + #{s\ 1459}# + #{defmod\ 1460}#) + (#{wrap\ 457}# + (#{decorate-source\ 306}# + #{x\ 1457}# + #{s\ 1459}#) + #{w\ 1458}# + #{defmod\ 1460}#))) + (#{chi-sequence\ 461}# + (lambda (#{body\ 1465}# + #{r\ 1466}# + #{w\ 1467}# + #{s\ 1468}# + #{mod\ 1469}#) + (#{build-sequence\ 340}# + #{s\ 1468}# (letrec* - ((#{dobody\ 1479}# - (lambda (#{body\ 1480}# - #{r\ 1481}# - #{w\ 1482}# - #{mod\ 1483}#) - (if (null? #{body\ 1480}#) + ((#{dobody\ 1480}# + (lambda (#{body\ 1481}# + #{r\ 1482}# + #{w\ 1483}# + #{mod\ 1484}#) + (if (null? #{body\ 1481}#) '() (begin - (let ((#{first\ 1485}# - (#{chi\ 472}# - (car #{body\ 1480}#) - #{r\ 1481}# - #{w\ 1482}# - #{mod\ 1483}#))) - (cons #{first\ 1485}# - (#{dobody\ 1479}# - (cdr #{body\ 1480}#) - #{r\ 1481}# - #{w\ 1482}# - #{mod\ 1483}#)))))))) + (let ((#{first\ 1486}# + (#{chi\ 473}# + (car #{body\ 1481}#) + #{r\ 1482}# + #{w\ 1483}# + #{mod\ 1484}#))) + (cons #{first\ 1486}# + (#{dobody\ 1480}# + (cdr #{body\ 1481}#) + #{r\ 1482}# + #{w\ 1483}# + #{mod\ 1484}#)))))))) (begin - (#{dobody\ 1479}# - #{body\ 1464}# - #{r\ 1465}# - #{w\ 1466}# - #{mod\ 1468}#)))))) - (#{chi-top-sequence\ 462}# - (lambda (#{body\ 1486}# - #{r\ 1487}# - #{w\ 1488}# - #{s\ 1489}# - #{m\ 1490}# - #{esew\ 1491}# - #{mod\ 1492}#) - (#{build-sequence\ 339}# - #{s\ 1489}# + (#{dobody\ 1480}# + #{body\ 1465}# + #{r\ 1466}# + #{w\ 1467}# + #{mod\ 1469}#)))))) + (#{chi-top-sequence\ 463}# + (lambda (#{body\ 1487}# + #{r\ 1488}# + #{w\ 1489}# + #{s\ 1490}# + #{m\ 1491}# + #{esew\ 1492}# + #{mod\ 1493}#) + (#{build-sequence\ 340}# + #{s\ 1490}# (letrec* - ((#{dobody\ 1508}# - (lambda (#{body\ 1509}# - #{r\ 1510}# - #{w\ 1511}# - #{m\ 1512}# - #{esew\ 1513}# - #{mod\ 1514}# - #{out\ 1515}#) - (if (null? #{body\ 1509}#) - (reverse #{out\ 1515}#) - (#{dobody\ 1508}# - (cdr #{body\ 1509}#) - #{r\ 1510}# - #{w\ 1511}# - #{m\ 1512}# - #{esew\ 1513}# - #{mod\ 1514}# - (cons (#{chi-top\ 470}# - (car #{body\ 1509}#) - #{r\ 1510}# - #{w\ 1511}# - #{m\ 1512}# - #{esew\ 1513}# - #{mod\ 1514}#) - #{out\ 1515}#)))))) + ((#{dobody\ 1509}# + (lambda (#{body\ 1510}# + #{r\ 1511}# + #{w\ 1512}# + #{m\ 1513}# + #{esew\ 1514}# + #{mod\ 1515}# + #{out\ 1516}#) + (if (null? #{body\ 1510}#) + (reverse #{out\ 1516}#) + (#{dobody\ 1509}# + (cdr #{body\ 1510}#) + #{r\ 1511}# + #{w\ 1512}# + #{m\ 1513}# + #{esew\ 1514}# + #{mod\ 1515}# + (cons (#{chi-top\ 471}# + (car #{body\ 1510}#) + #{r\ 1511}# + #{w\ 1512}# + #{m\ 1513}# + #{esew\ 1514}# + #{mod\ 1515}#) + #{out\ 1516}#)))))) (begin - (#{dobody\ 1508}# - #{body\ 1486}# - #{r\ 1487}# - #{w\ 1488}# - #{m\ 1490}# - #{esew\ 1491}# - #{mod\ 1492}# + (#{dobody\ 1509}# + #{body\ 1487}# + #{r\ 1488}# + #{w\ 1489}# + #{m\ 1491}# + #{esew\ 1492}# + #{mod\ 1493}# '())))))) - (#{chi-install-global\ 464}# - (lambda (#{name\ 1516}# #{e\ 1517}#) - (#{build-global-definition\ 327}# + (#{chi-install-global\ 465}# + (lambda (#{name\ 1517}# #{e\ 1518}#) + (#{build-global-definition\ 328}# #f - #{name\ 1516}# - (#{build-application\ 309}# + #{name\ 1517}# + (#{build-application\ 310}# #f - (#{build-primref\ 335}# + (#{build-primref\ 336}# #f 'make-syntax-transformer) - (list (#{build-data\ 337}# #f #{name\ 1516}#) - (#{build-data\ 337}# #f (quote macro)) - #{e\ 1517}#))))) - (#{chi-when-list\ 466}# - (lambda (#{e\ 1525}# #{when-list\ 1526}# #{w\ 1527}#) + (list (#{build-data\ 338}# #f #{name\ 1517}#) + (#{build-data\ 338}# #f (quote macro)) + #{e\ 1518}#))))) + (#{chi-when-list\ 467}# + (lambda (#{e\ 1526}# #{when-list\ 1527}# #{w\ 1528}#) (letrec* - ((#{f\ 1534}# - (lambda (#{when-list\ 1535}# #{situations\ 1536}#) - (if (null? #{when-list\ 1535}#) - #{situations\ 1536}# - (#{f\ 1534}# - (cdr #{when-list\ 1535}#) + ((#{f\ 1535}# + (lambda (#{when-list\ 1536}# #{situations\ 1537}#) + (if (null? #{when-list\ 1536}#) + #{situations\ 1537}# + (#{f\ 1535}# + (cdr #{when-list\ 1536}#) (cons (begin - (let ((#{x\ 1538}# (car #{when-list\ 1535}#))) - (if (#{free-id=?\ 446}# - #{x\ 1538}# + (let ((#{x\ 1539}# (car #{when-list\ 1536}#))) + (if (#{free-id=?\ 447}# + #{x\ 1539}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i1537")) + #(ribcage #(x) #((top)) #("i1538")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) - #("i1531" "i1532" "i1533")) + #("i1532" "i1533" "i1534")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) - #("i1528" "i1529" "i1530")) + #("i1529" "i1530" "i1531")) #(ribcage (lambda-var-list gen-var @@ -1487,154 +1487,154 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" "i37" "i36" "i34"))) + ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'compile - (if (#{free-id=?\ 446}# - #{x\ 1538}# + (if (#{free-id=?\ 447}# + #{x\ 1539}# '#(syntax-object load ((top) @@ -1644,17 +1644,17 @@ #(ribcage #(x) #((top)) - #("i1537")) + #("i1538")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) - #("i1531" "i1532" "i1533")) + #("i1532" "i1533" "i1534")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) - #("i1528" "i1529" "i1530")) + #("i1529" "i1530" "i1531")) #(ribcage (lambda-var-list gen-var @@ -1930,154 +1930,154 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" "i37" "i36" "i34"))) + ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'load - (if (#{free-id=?\ 446}# - #{x\ 1538}# + (if (#{free-id=?\ 447}# + #{x\ 1539}# '#(syntax-object eval ((top) @@ -2087,17 +2087,17 @@ #(ribcage #(x) #((top)) - #("i1537")) + #("i1538")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) - #("i1531" "i1532" "i1533")) + #("i1532" "i1533" "i1534")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) - #("i1528" "i1529" "i1530")) + #("i1529" "i1530" "i1531")) #(ribcage (lambda-var-list gen-var @@ -2373,154 +2373,154 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" "i37" "i36" "i34"))) + ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'eval - (if (#{free-id=?\ 446}# - #{x\ 1538}# + (if (#{free-id=?\ 447}# + #{x\ 1539}# '#(syntax-object expand ((top) @@ -2530,17 +2530,17 @@ #(ribcage #(x) #((top)) - #("i1537")) + #("i1538")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) - #("i1531" "i1532" "i1533")) + #("i1532" "i1533" "i1534")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) - #("i1528" "i1529" "i1530")) + #("i1529" "i1530" "i1531")) #(ribcage (lambda-var-list gen-var @@ -2816,402 +2816,402 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" "i37" "i36" "i34"))) + ("i39" "i38" "i37" "i35"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" - #{e\ 1525}# - (#{wrap\ 456}# - #{x\ 1538}# - #{w\ 1527}# + #{e\ 1526}# + (#{wrap\ 457}# + #{x\ 1539}# + #{w\ 1528}# #f)))))))) - #{situations\ 1536}#)))))) + #{situations\ 1537}#)))))) (begin - (#{f\ 1534}# #{when-list\ 1526}# (quote ())))))) - (#{syntax-type\ 468}# - (lambda (#{e\ 1548}# - #{r\ 1549}# - #{w\ 1550}# - #{s\ 1551}# - #{rib\ 1552}# - #{mod\ 1553}# - #{for-car?\ 1554}#) - (if (symbol? #{e\ 1548}#) + (#{f\ 1535}# #{when-list\ 1527}# (quote ())))))) + (#{syntax-type\ 469}# + (lambda (#{e\ 1549}# + #{r\ 1550}# + #{w\ 1551}# + #{s\ 1552}# + #{rib\ 1553}# + #{mod\ 1554}# + #{for-car?\ 1555}#) + (if (symbol? #{e\ 1549}#) (begin - (let ((#{n\ 1566}# - (#{id-var-name\ 444}# #{e\ 1548}# #{w\ 1550}#))) + (let ((#{n\ 1567}# + (#{id-var-name\ 445}# #{e\ 1549}# #{w\ 1551}#))) (begin - (let ((#{b\ 1568}# - (#{lookup\ 381}# - #{n\ 1566}# - #{r\ 1549}# - #{mod\ 1553}#))) + (let ((#{b\ 1569}# + (#{lookup\ 382}# + #{n\ 1567}# + #{r\ 1550}# + #{mod\ 1554}#))) (begin - (let ((#{type\ 1570}# - (#{binding-type\ 370}# #{b\ 1568}#))) - (if (eqv? #{type\ 1570}# (quote lexical)) + (let ((#{type\ 1571}# + (#{binding-type\ 371}# #{b\ 1569}#))) + (if (eqv? #{type\ 1571}# (quote lexical)) (values - #{type\ 1570}# - (#{binding-value\ 372}# #{b\ 1568}#) - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{type\ 1570}# (quote global)) + #{type\ 1571}# + (#{binding-value\ 373}# #{b\ 1569}#) + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{type\ 1571}# (quote global)) (values - #{type\ 1570}# - #{n\ 1566}# - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{type\ 1570}# (quote macro)) - (if #{for-car?\ 1554}# + #{type\ 1571}# + #{n\ 1567}# + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{type\ 1571}# (quote macro)) + (if #{for-car?\ 1555}# (values - #{type\ 1570}# - (#{binding-value\ 372}# #{b\ 1568}#) - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (#{syntax-type\ 468}# - (#{chi-macro\ 478}# - (#{binding-value\ 372}# #{b\ 1568}#) - #{e\ 1548}# - #{r\ 1549}# - #{w\ 1550}# - #{s\ 1551}# - #{rib\ 1552}# - #{mod\ 1553}#) - #{r\ 1549}# + #{type\ 1571}# + (#{binding-value\ 373}# #{b\ 1569}#) + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (#{syntax-type\ 469}# + (#{chi-macro\ 479}# + (#{binding-value\ 373}# #{b\ 1569}#) + #{e\ 1549}# + #{r\ 1550}# + #{w\ 1551}# + #{s\ 1552}# + #{rib\ 1553}# + #{mod\ 1554}#) + #{r\ 1550}# '(()) - #{s\ 1551}# - #{rib\ 1552}# - #{mod\ 1553}# + #{s\ 1552}# + #{rib\ 1553}# + #{mod\ 1554}# #f)) (values - #{type\ 1570}# - (#{binding-value\ 372}# #{b\ 1568}#) - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#)))))))))) - (if (pair? #{e\ 1548}#) + #{type\ 1571}# + (#{binding-value\ 373}# #{b\ 1569}#) + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#)))))))))) + (if (pair? #{e\ 1549}#) (begin - (let ((#{first\ 1579}# (car #{e\ 1548}#))) + (let ((#{first\ 1580}# (car #{e\ 1549}#))) (call-with-values (lambda () - (#{syntax-type\ 468}# - #{first\ 1579}# - #{r\ 1549}# - #{w\ 1550}# - #{s\ 1551}# - #{rib\ 1552}# - #{mod\ 1553}# + (#{syntax-type\ 469}# + #{first\ 1580}# + #{r\ 1550}# + #{w\ 1551}# + #{s\ 1552}# + #{rib\ 1553}# + #{mod\ 1554}# #t)) - (lambda (#{ftype\ 1580}# - #{fval\ 1581}# - #{fe\ 1582}# - #{fw\ 1583}# - #{fs\ 1584}# - #{fmod\ 1585}#) - (if (eqv? #{ftype\ 1580}# (quote lexical)) + (lambda (#{ftype\ 1581}# + #{fval\ 1582}# + #{fe\ 1583}# + #{fw\ 1584}# + #{fs\ 1585}# + #{fmod\ 1586}#) + (if (eqv? #{ftype\ 1581}# (quote lexical)) (values 'lexical-call - #{fval\ 1581}# - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{ftype\ 1580}# (quote global)) + #{fval\ 1582}# + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{ftype\ 1581}# (quote global)) (values 'global-call - (#{make-syntax-object\ 349}# - #{fval\ 1581}# - #{w\ 1550}# - #{fmod\ 1585}#) - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{ftype\ 1580}# (quote macro)) - (#{syntax-type\ 468}# - (#{chi-macro\ 478}# - #{fval\ 1581}# - #{e\ 1548}# - #{r\ 1549}# - #{w\ 1550}# - #{s\ 1551}# - #{rib\ 1552}# - #{mod\ 1553}#) - #{r\ 1549}# + (#{make-syntax-object\ 350}# + #{fval\ 1582}# + #{w\ 1551}# + #{fmod\ 1586}#) + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{ftype\ 1581}# (quote macro)) + (#{syntax-type\ 469}# + (#{chi-macro\ 479}# + #{fval\ 1582}# + #{e\ 1549}# + #{r\ 1550}# + #{w\ 1551}# + #{s\ 1552}# + #{rib\ 1553}# + #{mod\ 1554}#) + #{r\ 1550}# '(()) - #{s\ 1551}# - #{rib\ 1552}# - #{mod\ 1553}# - #{for-car?\ 1554}#) - (if (eqv? #{ftype\ 1580}# (quote module-ref)) + #{s\ 1552}# + #{rib\ 1553}# + #{mod\ 1554}# + #{for-car?\ 1555}#) + (if (eqv? #{ftype\ 1581}# (quote module-ref)) (call-with-values (lambda () - (#{fval\ 1581}# - #{e\ 1548}# - #{r\ 1549}# - #{w\ 1550}#)) - (lambda (#{e\ 1597}# - #{r\ 1598}# - #{w\ 1599}# - #{s\ 1600}# - #{mod\ 1601}#) - (#{syntax-type\ 468}# - #{e\ 1597}# - #{r\ 1598}# - #{w\ 1599}# - #{s\ 1600}# - #{rib\ 1552}# - #{mod\ 1601}# - #{for-car?\ 1554}#))) - (if (eqv? #{ftype\ 1580}# (quote core)) + (#{fval\ 1582}# + #{e\ 1549}# + #{r\ 1550}# + #{w\ 1551}#)) + (lambda (#{e\ 1598}# + #{r\ 1599}# + #{w\ 1600}# + #{s\ 1601}# + #{mod\ 1602}#) + (#{syntax-type\ 469}# + #{e\ 1598}# + #{r\ 1599}# + #{w\ 1600}# + #{s\ 1601}# + #{rib\ 1553}# + #{mod\ 1602}# + #{for-car?\ 1555}#))) + (if (eqv? #{ftype\ 1581}# (quote core)) (values 'core-form - #{fval\ 1581}# - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{ftype\ 1580}# + #{fval\ 1582}# + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{ftype\ 1581}# 'local-syntax) (values 'local-syntax-form - #{fval\ 1581}# - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{ftype\ 1580}# (quote begin)) + #{fval\ 1582}# + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{ftype\ 1581}# (quote begin)) (values 'begin-form #f - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{ftype\ 1580}# + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{ftype\ 1581}# 'eval-when) (values 'eval-when-form #f - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) - (if (eqv? #{ftype\ 1580}# + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) + (if (eqv? #{ftype\ 1581}# 'define) - (let ((#{tmp\ 1612}# #{e\ 1548}#)) - (let ((#{tmp\ 1613}# + (let ((#{tmp\ 1613}# #{e\ 1549}#)) + (let ((#{tmp\ 1614}# ($sc-dispatch - #{tmp\ 1612}# + #{tmp\ 1613}# '(any any any)))) - (if (if #{tmp\ 1613}# + (if (if #{tmp\ 1614}# (@apply - (lambda (#{_\ 1617}# - #{name\ 1618}# - #{val\ 1619}#) - (#{id?\ 387}# - #{name\ 1618}#)) - #{tmp\ 1613}#) + (lambda (#{_\ 1618}# + #{name\ 1619}# + #{val\ 1620}#) + (#{id?\ 388}# + #{name\ 1619}#)) + #{tmp\ 1614}#) #f) (@apply - (lambda (#{_\ 1623}# - #{name\ 1624}# - #{val\ 1625}#) + (lambda (#{_\ 1624}# + #{name\ 1625}# + #{val\ 1626}#) (values 'define-form - #{name\ 1624}# - #{val\ 1625}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#)) - #{tmp\ 1613}#) - (let ((#{tmp\ 1626}# + #{name\ 1625}# + #{val\ 1626}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#)) + #{tmp\ 1614}#) + (let ((#{tmp\ 1627}# ($sc-dispatch - #{tmp\ 1612}# + #{tmp\ 1613}# '(any (any . any) any . each-any)))) - (if (if #{tmp\ 1626}# + (if (if #{tmp\ 1627}# (@apply - (lambda (#{_\ 1632}# - #{name\ 1633}# - #{args\ 1634}# - #{e1\ 1635}# - #{e2\ 1636}#) - (if (#{id?\ 387}# - #{name\ 1633}#) - (#{valid-bound-ids?\ 450}# - (#{lambda-var-list\ 502}# - #{args\ 1634}#)) + (lambda (#{_\ 1633}# + #{name\ 1634}# + #{args\ 1635}# + #{e1\ 1636}# + #{e2\ 1637}#) + (if (#{id?\ 388}# + #{name\ 1634}#) + (#{valid-bound-ids?\ 451}# + (#{lambda-var-list\ 503}# + #{args\ 1635}#)) #f)) - #{tmp\ 1626}#) + #{tmp\ 1627}#) #f) (@apply - (lambda (#{_\ 1644}# - #{name\ 1645}# - #{args\ 1646}# - #{e1\ 1647}# - #{e2\ 1648}#) + (lambda (#{_\ 1645}# + #{name\ 1646}# + #{args\ 1647}# + #{e1\ 1648}# + #{e2\ 1649}#) (values 'define-form - (#{wrap\ 456}# - #{name\ 1645}# - #{w\ 1550}# - #{mod\ 1553}#) - (#{decorate-source\ 305}# + (#{wrap\ 457}# + #{name\ 1646}# + #{w\ 1551}# + #{mod\ 1554}#) + (#{decorate-source\ 306}# (cons '#(syntax-object lambda ((top) @@ -3226,11 +3226,11 @@ (top) (top) (top)) - #("i1639" - "i1640" + #("i1640" "i1641" "i1642" - "i1643")) + "i1643" + "i1644")) #(ribcage () () @@ -3252,12 +3252,12 @@ (top) (top) (top)) - #("i1586" - "i1587" + #("i1587" "i1588" "i1589" "i1590" - "i1591")) + "i1591" + "i1592")) #(ribcage () () @@ -3265,7 +3265,7 @@ #(ribcage #(first) #((top)) - #("i1578")) + #("i1579")) #(ribcage () () @@ -3293,13 +3293,13 @@ (top) (top) (top)) - #("i1555" - "i1556" + #("i1556" "i1557" "i1558" "i1559" "i1560" - "i1561")) + "i1561" + "i1562")) #(ribcage (lambda-var-list gen-var @@ -3575,143 +3575,143 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors @@ -3721,44 +3721,44 @@ (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile)) - (#{wrap\ 456}# - (cons #{args\ 1646}# - (cons #{e1\ 1647}# - #{e2\ 1648}#)) - #{w\ 1550}# - #{mod\ 1553}#)) - #{s\ 1551}#) + (#{wrap\ 457}# + (cons #{args\ 1647}# + (cons #{e1\ 1648}# + #{e2\ 1649}#)) + #{w\ 1551}# + #{mod\ 1554}#)) + #{s\ 1552}#) '(()) - #{s\ 1551}# - #{mod\ 1553}#)) - #{tmp\ 1626}#) - (let ((#{tmp\ 1651}# + #{s\ 1552}# + #{mod\ 1554}#)) + #{tmp\ 1627}#) + (let ((#{tmp\ 1652}# ($sc-dispatch - #{tmp\ 1612}# + #{tmp\ 1613}# '(any any)))) - (if (if #{tmp\ 1651}# + (if (if #{tmp\ 1652}# (@apply - (lambda (#{_\ 1654}# - #{name\ 1655}#) - (#{id?\ 387}# - #{name\ 1655}#)) - #{tmp\ 1651}#) + (lambda (#{_\ 1655}# + #{name\ 1656}#) + (#{id?\ 388}# + #{name\ 1656}#)) + #{tmp\ 1652}#) #f) (@apply - (lambda (#{_\ 1658}# - #{name\ 1659}#) + (lambda (#{_\ 1659}# + #{name\ 1660}#) (values 'define-form - (#{wrap\ 456}# - #{name\ 1659}# - #{w\ 1550}# - #{mod\ 1553}#) + (#{wrap\ 457}# + #{name\ 1660}# + #{w\ 1551}# + #{mod\ 1554}#) '(#(syntax-object if ((top) @@ -3766,8 +3766,8 @@ #(_ name) #((top) (top)) - #("i1656" - "i1657")) + #("i1657" + "i1658")) #(ribcage () () @@ -3789,12 +3789,12 @@ (top) (top) (top)) - #("i1586" - "i1587" + #("i1587" "i1588" "i1589" "i1590" - "i1591")) + "i1591" + "i1592")) #(ribcage () () @@ -3802,7 +3802,7 @@ #(ribcage #(first) #((top)) - #("i1578")) + #("i1579")) #(ribcage () () @@ -3830,13 +3830,13 @@ (top) (top) (top)) - #("i1555" - "i1556" + #("i1556" "i1557" "i1558" "i1559" "i1560" - "i1561")) + "i1561" + "i1562")) #(ribcage (lambda-var-list gen-var @@ -4112,143 +4112,143 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors @@ -4258,10 +4258,10 @@ (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile)) #(syntax-object @@ -4271,8 +4271,8 @@ #(_ name) #((top) (top)) - #("i1656" - "i1657")) + #("i1657" + "i1658")) #(ribcage () () @@ -4294,12 +4294,12 @@ (top) (top) (top)) - #("i1586" - "i1587" + #("i1587" "i1588" "i1589" "i1590" - "i1591")) + "i1591" + "i1592")) #(ribcage () () @@ -4307,7 +4307,7 @@ #(ribcage #(first) #((top)) - #("i1578")) + #("i1579")) #(ribcage () () @@ -4335,13 +4335,13 @@ (top) (top) (top)) - #("i1555" - "i1556" + #("i1556" "i1557" "i1558" "i1559" "i1560" - "i1561")) + "i1561" + "i1562")) #(ribcage (lambda-var-list gen-var @@ -4617,143 +4617,143 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors @@ -4763,10 +4763,10 @@ (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile)) #(syntax-object @@ -4776,8 +4776,8 @@ #(_ name) #((top) (top)) - #("i1656" - "i1657")) + #("i1657" + "i1658")) #(ribcage () () @@ -4799,12 +4799,12 @@ (top) (top) (top)) - #("i1586" - "i1587" + #("i1587" "i1588" "i1589" "i1590" - "i1591")) + "i1591" + "i1592")) #(ribcage () () @@ -4812,7 +4812,7 @@ #(ribcage #(first) #((top)) - #("i1578")) + #("i1579")) #(ribcage () () @@ -4840,13 +4840,13 @@ (top) (top) (top)) - #("i1555" - "i1556" + #("i1556" "i1557" "i1558" "i1559" "i1560" - "i1561")) + "i1561" + "i1562")) #(ribcage (lambda-var-list gen-var @@ -5122,143 +5122,143 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors @@ -5268,1233 +5268,1233 @@ (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile))) '(()) - #{s\ 1551}# - #{mod\ 1553}#)) - #{tmp\ 1651}#) + #{s\ 1552}# + #{mod\ 1554}#)) + #{tmp\ 1652}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 1612}#)))))))) - (if (eqv? #{ftype\ 1580}# + #{tmp\ 1613}#)))))))) + (if (eqv? #{ftype\ 1581}# 'define-syntax) - (let ((#{tmp\ 1662}# #{e\ 1548}#)) - (let ((#{tmp\ 1663}# + (let ((#{tmp\ 1663}# #{e\ 1549}#)) + (let ((#{tmp\ 1664}# ($sc-dispatch - #{tmp\ 1662}# + #{tmp\ 1663}# '(any any any)))) - (if (if #{tmp\ 1663}# + (if (if #{tmp\ 1664}# (@apply - (lambda (#{_\ 1667}# - #{name\ 1668}# - #{val\ 1669}#) - (#{id?\ 387}# - #{name\ 1668}#)) - #{tmp\ 1663}#) + (lambda (#{_\ 1668}# + #{name\ 1669}# + #{val\ 1670}#) + (#{id?\ 388}# + #{name\ 1669}#)) + #{tmp\ 1664}#) #f) (@apply - (lambda (#{_\ 1673}# - #{name\ 1674}# - #{val\ 1675}#) + (lambda (#{_\ 1674}# + #{name\ 1675}# + #{val\ 1676}#) (values 'define-syntax-form - #{name\ 1674}# - #{val\ 1675}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#)) - #{tmp\ 1663}#) + #{name\ 1675}# + #{val\ 1676}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#)) + #{tmp\ 1664}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 1662}#)))) + #{tmp\ 1663}#)))) (values 'call #f - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#))))))))))))))) - (if (#{syntax-object?\ 351}# #{e\ 1548}#) - (#{syntax-type\ 468}# - (#{syntax-object-expression\ 353}# #{e\ 1548}#) - #{r\ 1549}# - (#{join-wraps\ 438}# - #{w\ 1550}# - (#{syntax-object-wrap\ 355}# #{e\ 1548}#)) + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#))))))))))))))) + (if (#{syntax-object?\ 352}# #{e\ 1549}#) + (#{syntax-type\ 469}# + (#{syntax-object-expression\ 354}# #{e\ 1549}#) + #{r\ 1550}# + (#{join-wraps\ 439}# + #{w\ 1551}# + (#{syntax-object-wrap\ 356}# #{e\ 1549}#)) (begin - (let ((#{t\ 1681}# - (#{source-annotation\ 366}# #{e\ 1548}#))) - (if #{t\ 1681}# #{t\ 1681}# #{s\ 1551}#))) - #{rib\ 1552}# + (let ((#{t\ 1682}# + (#{source-annotation\ 367}# #{e\ 1549}#))) + (if #{t\ 1682}# #{t\ 1682}# #{s\ 1552}#))) + #{rib\ 1553}# (begin - (let ((#{t\ 1685}# - (#{syntax-object-module\ 357}# #{e\ 1548}#))) - (if #{t\ 1685}# #{t\ 1685}# #{mod\ 1553}#))) - #{for-car?\ 1554}#) - (if (self-evaluating? #{e\ 1548}#) + (let ((#{t\ 1686}# + (#{syntax-object-module\ 358}# #{e\ 1549}#))) + (if #{t\ 1686}# #{t\ 1686}# #{mod\ 1554}#))) + #{for-car?\ 1555}#) + (if (self-evaluating? #{e\ 1549}#) (values 'constant #f - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#) + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#) (values 'other #f - #{e\ 1548}# - #{w\ 1550}# - #{s\ 1551}# - #{mod\ 1553}#))))))) - (#{chi-top\ 470}# - (lambda (#{e\ 1690}# - #{r\ 1691}# - #{w\ 1692}# - #{m\ 1693}# - #{esew\ 1694}# - #{mod\ 1695}#) + #{e\ 1549}# + #{w\ 1551}# + #{s\ 1552}# + #{mod\ 1554}#))))))) + (#{chi-top\ 471}# + (lambda (#{e\ 1691}# + #{r\ 1692}# + #{w\ 1693}# + #{m\ 1694}# + #{esew\ 1695}# + #{mod\ 1696}#) (call-with-values (lambda () - (#{syntax-type\ 468}# - #{e\ 1690}# - #{r\ 1691}# - #{w\ 1692}# - (#{source-annotation\ 366}# #{e\ 1690}#) + (#{syntax-type\ 469}# + #{e\ 1691}# + #{r\ 1692}# + #{w\ 1693}# + (#{source-annotation\ 367}# #{e\ 1691}#) #f - #{mod\ 1695}# + #{mod\ 1696}# #f)) - (lambda (#{type\ 1716}# - #{value\ 1717}# - #{e\ 1718}# - #{w\ 1719}# - #{s\ 1720}# - #{mod\ 1721}#) - (if (eqv? #{type\ 1716}# (quote begin-form)) - (let ((#{tmp\ 1729}# #{e\ 1718}#)) - (let ((#{tmp\ 1730}# - ($sc-dispatch #{tmp\ 1729}# (quote (any))))) - (if #{tmp\ 1730}# + (lambda (#{type\ 1717}# + #{value\ 1718}# + #{e\ 1719}# + #{w\ 1720}# + #{s\ 1721}# + #{mod\ 1722}#) + (if (eqv? #{type\ 1717}# (quote begin-form)) + (let ((#{tmp\ 1730}# #{e\ 1719}#)) + (let ((#{tmp\ 1731}# + ($sc-dispatch #{tmp\ 1730}# (quote (any))))) + (if #{tmp\ 1731}# (@apply - (lambda (#{_\ 1732}#) (#{chi-void\ 486}#)) - #{tmp\ 1730}#) - (let ((#{tmp\ 1733}# + (lambda (#{_\ 1733}#) (#{chi-void\ 487}#)) + #{tmp\ 1731}#) + (let ((#{tmp\ 1734}# ($sc-dispatch - #{tmp\ 1729}# + #{tmp\ 1730}# '(any any . each-any)))) - (if #{tmp\ 1733}# + (if #{tmp\ 1734}# (@apply - (lambda (#{_\ 1737}# #{e1\ 1738}# #{e2\ 1739}#) - (#{chi-top-sequence\ 462}# - (cons #{e1\ 1738}# #{e2\ 1739}#) - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# - #{m\ 1693}# - #{esew\ 1694}# - #{mod\ 1721}#)) - #{tmp\ 1733}#) + (lambda (#{_\ 1738}# #{e1\ 1739}# #{e2\ 1740}#) + (#{chi-top-sequence\ 463}# + (cons #{e1\ 1739}# #{e2\ 1740}#) + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# + #{m\ 1694}# + #{esew\ 1695}# + #{mod\ 1722}#)) + #{tmp\ 1734}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 1729}#)))))) - (if (eqv? #{type\ 1716}# (quote local-syntax-form)) - (#{chi-local-syntax\ 482}# - #{value\ 1717}# - #{e\ 1718}# - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# - #{mod\ 1721}# - (lambda (#{body\ 1742}# - #{r\ 1743}# - #{w\ 1744}# - #{s\ 1745}# - #{mod\ 1746}#) - (#{chi-top-sequence\ 462}# - #{body\ 1742}# - #{r\ 1743}# - #{w\ 1744}# - #{s\ 1745}# - #{m\ 1693}# - #{esew\ 1694}# - #{mod\ 1746}#))) - (if (eqv? #{type\ 1716}# (quote eval-when-form)) - (let ((#{tmp\ 1753}# #{e\ 1718}#)) - (let ((#{tmp\ 1754}# + #{tmp\ 1730}#)))))) + (if (eqv? #{type\ 1717}# (quote local-syntax-form)) + (#{chi-local-syntax\ 483}# + #{value\ 1718}# + #{e\ 1719}# + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# + #{mod\ 1722}# + (lambda (#{body\ 1743}# + #{r\ 1744}# + #{w\ 1745}# + #{s\ 1746}# + #{mod\ 1747}#) + (#{chi-top-sequence\ 463}# + #{body\ 1743}# + #{r\ 1744}# + #{w\ 1745}# + #{s\ 1746}# + #{m\ 1694}# + #{esew\ 1695}# + #{mod\ 1747}#))) + (if (eqv? #{type\ 1717}# (quote eval-when-form)) + (let ((#{tmp\ 1754}# #{e\ 1719}#)) + (let ((#{tmp\ 1755}# ($sc-dispatch - #{tmp\ 1753}# + #{tmp\ 1754}# '(any each-any any . each-any)))) - (if #{tmp\ 1754}# + (if #{tmp\ 1755}# (@apply - (lambda (#{_\ 1759}# - #{x\ 1760}# - #{e1\ 1761}# - #{e2\ 1762}#) + (lambda (#{_\ 1760}# + #{x\ 1761}# + #{e1\ 1762}# + #{e2\ 1763}#) (begin - (let ((#{when-list\ 1765}# - (#{chi-when-list\ 466}# - #{e\ 1718}# - #{x\ 1760}# - #{w\ 1719}#)) - (#{body\ 1766}# - (cons #{e1\ 1761}# #{e2\ 1762}#))) - (if (eq? #{m\ 1693}# (quote e)) + (let ((#{when-list\ 1766}# + (#{chi-when-list\ 467}# + #{e\ 1719}# + #{x\ 1761}# + #{w\ 1720}#)) + (#{body\ 1767}# + (cons #{e1\ 1762}# #{e2\ 1763}#))) + (if (eq? #{m\ 1694}# (quote e)) (if (memq 'eval - #{when-list\ 1765}#) - (#{chi-top-sequence\ 462}# - #{body\ 1766}# - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# + #{when-list\ 1766}#) + (#{chi-top-sequence\ 463}# + #{body\ 1767}# + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# (if (memq 'expand - #{when-list\ 1765}#) + #{when-list\ 1766}#) 'c&e 'e) '(eval) - #{mod\ 1721}#) + #{mod\ 1722}#) (begin (if (memq 'expand - #{when-list\ 1765}#) - (#{top-level-eval-hook\ 296}# - (#{chi-top-sequence\ 462}# - #{body\ 1766}# - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# + #{when-list\ 1766}#) + (#{top-level-eval-hook\ 297}# + (#{chi-top-sequence\ 463}# + #{body\ 1767}# + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# 'e '(eval) - #{mod\ 1721}#) - #{mod\ 1721}#)) - (#{chi-void\ 486}#))) + #{mod\ 1722}#) + #{mod\ 1722}#)) + (#{chi-void\ 487}#))) (if (memq 'load - #{when-list\ 1765}#) + #{when-list\ 1766}#) (if (begin - (let ((#{t\ 1775}# + (let ((#{t\ 1776}# (memq 'compile - #{when-list\ 1765}#))) - (if #{t\ 1775}# - #{t\ 1775}# + #{when-list\ 1766}#))) + (if #{t\ 1776}# + #{t\ 1776}# (begin - (let ((#{t\ 1778}# + (let ((#{t\ 1779}# (memq 'expand - #{when-list\ 1765}#))) - (if #{t\ 1778}# - #{t\ 1778}# - (if (eq? #{m\ 1693}# + #{when-list\ 1766}#))) + (if #{t\ 1779}# + #{t\ 1779}# + (if (eq? #{m\ 1694}# 'c&e) (memq 'eval - #{when-list\ 1765}#) + #{when-list\ 1766}#) #f))))))) - (#{chi-top-sequence\ 462}# - #{body\ 1766}# - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# + (#{chi-top-sequence\ 463}# + #{body\ 1767}# + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# 'c&e '(compile load) - #{mod\ 1721}#) - (if (if (eq? #{m\ 1693}# (quote c)) + #{mod\ 1722}#) + (if (if (eq? #{m\ 1694}# (quote c)) #t - (eq? #{m\ 1693}# (quote c&e))) - (#{chi-top-sequence\ 462}# - #{body\ 1766}# - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# + (eq? #{m\ 1694}# (quote c&e))) + (#{chi-top-sequence\ 463}# + #{body\ 1767}# + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# 'c '(load) - #{mod\ 1721}#) - (#{chi-void\ 486}#))) + #{mod\ 1722}#) + (#{chi-void\ 487}#))) (if (begin - (let ((#{t\ 1786}# + (let ((#{t\ 1787}# (memq 'compile - #{when-list\ 1765}#))) - (if #{t\ 1786}# - #{t\ 1786}# + #{when-list\ 1766}#))) + (if #{t\ 1787}# + #{t\ 1787}# (begin - (let ((#{t\ 1789}# + (let ((#{t\ 1790}# (memq 'expand - #{when-list\ 1765}#))) - (if #{t\ 1789}# - #{t\ 1789}# - (if (eq? #{m\ 1693}# + #{when-list\ 1766}#))) + (if #{t\ 1790}# + #{t\ 1790}# + (if (eq? #{m\ 1694}# 'c&e) (memq 'eval - #{when-list\ 1765}#) + #{when-list\ 1766}#) #f))))))) (begin - (#{top-level-eval-hook\ 296}# - (#{chi-top-sequence\ 462}# - #{body\ 1766}# - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# + (#{top-level-eval-hook\ 297}# + (#{chi-top-sequence\ 463}# + #{body\ 1767}# + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# 'e '(eval) - #{mod\ 1721}#) - #{mod\ 1721}#) - (#{chi-void\ 486}#)) - (#{chi-void\ 486}#))))))) - #{tmp\ 1754}#) + #{mod\ 1722}#) + #{mod\ 1722}#) + (#{chi-void\ 487}#)) + (#{chi-void\ 487}#))))))) + #{tmp\ 1755}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 1753}#)))) - (if (eqv? #{type\ 1716}# (quote define-syntax-form)) + #{tmp\ 1754}#)))) + (if (eqv? #{type\ 1717}# (quote define-syntax-form)) (begin - (let ((#{n\ 1797}# - (#{id-var-name\ 444}# - #{value\ 1717}# - #{w\ 1719}#)) - (#{r\ 1798}# - (#{macros-only-env\ 379}# #{r\ 1691}#))) - (if (eqv? #{m\ 1693}# (quote c)) - (if (memq (quote compile) #{esew\ 1694}#) + (let ((#{n\ 1798}# + (#{id-var-name\ 445}# + #{value\ 1718}# + #{w\ 1720}#)) + (#{r\ 1799}# + (#{macros-only-env\ 380}# #{r\ 1692}#))) + (if (eqv? #{m\ 1694}# (quote c)) + (if (memq (quote compile) #{esew\ 1695}#) (begin - (let ((#{e\ 1801}# - (#{chi-install-global\ 464}# - #{n\ 1797}# - (#{chi\ 472}# - #{e\ 1718}# - #{r\ 1798}# - #{w\ 1719}# - #{mod\ 1721}#)))) + (let ((#{e\ 1802}# + (#{chi-install-global\ 465}# + #{n\ 1798}# + (#{chi\ 473}# + #{e\ 1719}# + #{r\ 1799}# + #{w\ 1720}# + #{mod\ 1722}#)))) (begin - (#{top-level-eval-hook\ 296}# - #{e\ 1801}# - #{mod\ 1721}#) - (if (memq (quote load) #{esew\ 1694}#) - #{e\ 1801}# - (#{chi-void\ 486}#))))) - (if (memq (quote load) #{esew\ 1694}#) - (#{chi-install-global\ 464}# - #{n\ 1797}# - (#{chi\ 472}# - #{e\ 1718}# - #{r\ 1798}# - #{w\ 1719}# - #{mod\ 1721}#)) - (#{chi-void\ 486}#))) - (if (eqv? #{m\ 1693}# (quote c&e)) + (#{top-level-eval-hook\ 297}# + #{e\ 1802}# + #{mod\ 1722}#) + (if (memq (quote load) #{esew\ 1695}#) + #{e\ 1802}# + (#{chi-void\ 487}#))))) + (if (memq (quote load) #{esew\ 1695}#) + (#{chi-install-global\ 465}# + #{n\ 1798}# + (#{chi\ 473}# + #{e\ 1719}# + #{r\ 1799}# + #{w\ 1720}# + #{mod\ 1722}#)) + (#{chi-void\ 487}#))) + (if (eqv? #{m\ 1694}# (quote c&e)) (begin - (let ((#{e\ 1804}# - (#{chi-install-global\ 464}# - #{n\ 1797}# - (#{chi\ 472}# - #{e\ 1718}# - #{r\ 1798}# - #{w\ 1719}# - #{mod\ 1721}#)))) + (let ((#{e\ 1805}# + (#{chi-install-global\ 465}# + #{n\ 1798}# + (#{chi\ 473}# + #{e\ 1719}# + #{r\ 1799}# + #{w\ 1720}# + #{mod\ 1722}#)))) (begin - (#{top-level-eval-hook\ 296}# - #{e\ 1804}# - #{mod\ 1721}#) - #{e\ 1804}#))) + (#{top-level-eval-hook\ 297}# + #{e\ 1805}# + #{mod\ 1722}#) + #{e\ 1805}#))) (begin - (if (memq (quote eval) #{esew\ 1694}#) - (#{top-level-eval-hook\ 296}# - (#{chi-install-global\ 464}# - #{n\ 1797}# - (#{chi\ 472}# - #{e\ 1718}# - #{r\ 1798}# - #{w\ 1719}# - #{mod\ 1721}#)) - #{mod\ 1721}#)) - (#{chi-void\ 486}#)))))) - (if (eqv? #{type\ 1716}# (quote define-form)) + (if (memq (quote eval) #{esew\ 1695}#) + (#{top-level-eval-hook\ 297}# + (#{chi-install-global\ 465}# + #{n\ 1798}# + (#{chi\ 473}# + #{e\ 1719}# + #{r\ 1799}# + #{w\ 1720}# + #{mod\ 1722}#)) + #{mod\ 1722}#)) + (#{chi-void\ 487}#)))))) + (if (eqv? #{type\ 1717}# (quote define-form)) (begin - (let ((#{n\ 1809}# - (#{id-var-name\ 444}# - #{value\ 1717}# - #{w\ 1719}#))) + (let ((#{n\ 1810}# + (#{id-var-name\ 445}# + #{value\ 1718}# + #{w\ 1720}#))) (begin - (let ((#{type\ 1811}# - (#{binding-type\ 370}# - (#{lookup\ 381}# - #{n\ 1809}# - #{r\ 1691}# - #{mod\ 1721}#)))) - (if (if (eqv? #{type\ 1811}# (quote global)) + (let ((#{type\ 1812}# + (#{binding-type\ 371}# + (#{lookup\ 382}# + #{n\ 1810}# + #{r\ 1692}# + #{mod\ 1722}#)))) + (if (if (eqv? #{type\ 1812}# (quote global)) #t - (if (eqv? #{type\ 1811}# (quote core)) + (if (eqv? #{type\ 1812}# (quote core)) #t - (if (eqv? #{type\ 1811}# + (if (eqv? #{type\ 1812}# 'macro) #t - (eqv? #{type\ 1811}# + (eqv? #{type\ 1812}# 'module-ref)))) (begin - (if (if (if (eq? #{m\ 1693}# (quote c)) + (if (if (if (eq? #{m\ 1694}# (quote c)) #t - (eq? #{m\ 1693}# (quote c&e))) + (eq? #{m\ 1694}# (quote c&e))) (if (not (module-local-variable (current-module) - #{n\ 1809}#)) + #{n\ 1810}#)) (current-module) #f) #f) (begin - (let ((#{old\ 1817}# + (let ((#{old\ 1818}# (module-variable (current-module) - #{n\ 1809}#))) + #{n\ 1810}#))) (module-define! (current-module) - #{n\ 1809}# - (if (variable? #{old\ 1817}#) - (variable-ref #{old\ 1817}#) + #{n\ 1810}# + (if (variable? #{old\ 1818}#) + (variable-ref #{old\ 1818}#) #f))))) (begin - (let ((#{x\ 1820}# - (#{build-global-definition\ 327}# - #{s\ 1720}# - #{n\ 1809}# - (#{chi\ 472}# - #{e\ 1718}# - #{r\ 1691}# - #{w\ 1719}# - #{mod\ 1721}#)))) + (let ((#{x\ 1821}# + (#{build-global-definition\ 328}# + #{s\ 1721}# + #{n\ 1810}# + (#{chi\ 473}# + #{e\ 1719}# + #{r\ 1692}# + #{w\ 1720}# + #{mod\ 1722}#)))) (begin - (if (eq? #{m\ 1693}# (quote c&e)) - (#{top-level-eval-hook\ 296}# - #{x\ 1820}# - #{mod\ 1721}#)) - #{x\ 1820}#)))) - (if (eqv? #{type\ 1811}# + (if (eq? #{m\ 1694}# (quote c&e)) + (#{top-level-eval-hook\ 297}# + #{x\ 1821}# + #{mod\ 1722}#)) + #{x\ 1821}#)))) + (if (eqv? #{type\ 1812}# 'displaced-lexical) (syntax-violation #f "identifier out of context" - #{e\ 1718}# - (#{wrap\ 456}# - #{value\ 1717}# - #{w\ 1719}# - #{mod\ 1721}#)) + #{e\ 1719}# + (#{wrap\ 457}# + #{value\ 1718}# + #{w\ 1720}# + #{mod\ 1722}#)) (syntax-violation #f "cannot define keyword at top level" - #{e\ 1718}# - (#{wrap\ 456}# - #{value\ 1717}# - #{w\ 1719}# - #{mod\ 1721}#)))))))) + #{e\ 1719}# + (#{wrap\ 457}# + #{value\ 1718}# + #{w\ 1720}# + #{mod\ 1722}#)))))))) (begin - (let ((#{x\ 1826}# - (#{chi-expr\ 474}# - #{type\ 1716}# - #{value\ 1717}# - #{e\ 1718}# - #{r\ 1691}# - #{w\ 1719}# - #{s\ 1720}# - #{mod\ 1721}#))) + (let ((#{x\ 1827}# + (#{chi-expr\ 475}# + #{type\ 1717}# + #{value\ 1718}# + #{e\ 1719}# + #{r\ 1692}# + #{w\ 1720}# + #{s\ 1721}# + #{mod\ 1722}#))) (begin - (if (eq? #{m\ 1693}# (quote c&e)) - (#{top-level-eval-hook\ 296}# - #{x\ 1826}# - #{mod\ 1721}#)) - #{x\ 1826}#)))))))))))) - (#{chi\ 472}# - (lambda (#{e\ 1827}# - #{r\ 1828}# - #{w\ 1829}# - #{mod\ 1830}#) + (if (eq? #{m\ 1694}# (quote c&e)) + (#{top-level-eval-hook\ 297}# + #{x\ 1827}# + #{mod\ 1722}#)) + #{x\ 1827}#)))))))))))) + (#{chi\ 473}# + (lambda (#{e\ 1828}# + #{r\ 1829}# + #{w\ 1830}# + #{mod\ 1831}#) (call-with-values (lambda () - (#{syntax-type\ 468}# - #{e\ 1827}# - #{r\ 1828}# - #{w\ 1829}# - (#{source-annotation\ 366}# #{e\ 1827}#) + (#{syntax-type\ 469}# + #{e\ 1828}# + #{r\ 1829}# + #{w\ 1830}# + (#{source-annotation\ 367}# #{e\ 1828}#) #f - #{mod\ 1830}# + #{mod\ 1831}# #f)) - (lambda (#{type\ 1835}# - #{value\ 1836}# - #{e\ 1837}# - #{w\ 1838}# - #{s\ 1839}# - #{mod\ 1840}#) - (#{chi-expr\ 474}# - #{type\ 1835}# - #{value\ 1836}# - #{e\ 1837}# - #{r\ 1828}# - #{w\ 1838}# - #{s\ 1839}# - #{mod\ 1840}#))))) - (#{chi-expr\ 474}# - (lambda (#{type\ 1847}# - #{value\ 1848}# - #{e\ 1849}# - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#) - (if (eqv? #{type\ 1847}# (quote lexical)) - (#{build-lexical-reference\ 315}# + (lambda (#{type\ 1836}# + #{value\ 1837}# + #{e\ 1838}# + #{w\ 1839}# + #{s\ 1840}# + #{mod\ 1841}#) + (#{chi-expr\ 475}# + #{type\ 1836}# + #{value\ 1837}# + #{e\ 1838}# + #{r\ 1829}# + #{w\ 1839}# + #{s\ 1840}# + #{mod\ 1841}#))))) + (#{chi-expr\ 475}# + (lambda (#{type\ 1848}# + #{value\ 1849}# + #{e\ 1850}# + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#) + (if (eqv? #{type\ 1848}# (quote lexical)) + (#{build-lexical-reference\ 316}# 'value - #{s\ 1852}# - #{e\ 1849}# - #{value\ 1848}#) - (if (if (eqv? #{type\ 1847}# (quote core)) + #{s\ 1853}# + #{e\ 1850}# + #{value\ 1849}#) + (if (if (eqv? #{type\ 1848}# (quote core)) #t - (eqv? #{type\ 1847}# (quote core-form))) - (#{value\ 1848}# - #{e\ 1849}# - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#) - (if (eqv? #{type\ 1847}# (quote module-ref)) + (eqv? #{type\ 1848}# (quote core-form))) + (#{value\ 1849}# + #{e\ 1850}# + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#) + (if (eqv? #{type\ 1848}# (quote module-ref)) (call-with-values (lambda () - (#{value\ 1848}# - #{e\ 1849}# - #{r\ 1850}# - #{w\ 1851}#)) - (lambda (#{e\ 1864}# - #{r\ 1865}# - #{w\ 1866}# - #{s\ 1867}# - #{mod\ 1868}#) - (#{chi\ 472}# - #{e\ 1864}# - #{r\ 1865}# - #{w\ 1866}# - #{mod\ 1868}#))) - (if (eqv? #{type\ 1847}# (quote lexical-call)) - (#{chi-application\ 476}# + (#{value\ 1849}# + #{e\ 1850}# + #{r\ 1851}# + #{w\ 1852}#)) + (lambda (#{e\ 1865}# + #{r\ 1866}# + #{w\ 1867}# + #{s\ 1868}# + #{mod\ 1869}#) + (#{chi\ 473}# + #{e\ 1865}# + #{r\ 1866}# + #{w\ 1867}# + #{mod\ 1869}#))) + (if (eqv? #{type\ 1848}# (quote lexical-call)) + (#{chi-application\ 477}# (begin - (let ((#{id\ 1876}# (car #{e\ 1849}#))) - (#{build-lexical-reference\ 315}# + (let ((#{id\ 1877}# (car #{e\ 1850}#))) + (#{build-lexical-reference\ 316}# 'fun - (#{source-annotation\ 366}# #{id\ 1876}#) - (if (#{syntax-object?\ 351}# #{id\ 1876}#) - (syntax->datum #{id\ 1876}#) - #{id\ 1876}#) - #{value\ 1848}#))) - #{e\ 1849}# - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#) - (if (eqv? #{type\ 1847}# (quote global-call)) - (#{chi-application\ 476}# - (#{build-global-reference\ 321}# - (#{source-annotation\ 366}# (car #{e\ 1849}#)) - (if (#{syntax-object?\ 351}# #{value\ 1848}#) - (#{syntax-object-expression\ 353}# - #{value\ 1848}#) - #{value\ 1848}#) - (if (#{syntax-object?\ 351}# #{value\ 1848}#) - (#{syntax-object-module\ 357}# #{value\ 1848}#) - #{mod\ 1853}#)) - #{e\ 1849}# - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#) - (if (eqv? #{type\ 1847}# (quote constant)) - (#{build-data\ 337}# - #{s\ 1852}# - (#{strip\ 498}# - (#{source-wrap\ 458}# - #{e\ 1849}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#) + (#{source-annotation\ 367}# #{id\ 1877}#) + (if (#{syntax-object?\ 352}# #{id\ 1877}#) + (syntax->datum #{id\ 1877}#) + #{id\ 1877}#) + #{value\ 1849}#))) + #{e\ 1850}# + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#) + (if (eqv? #{type\ 1848}# (quote global-call)) + (#{chi-application\ 477}# + (#{build-global-reference\ 322}# + (#{source-annotation\ 367}# (car #{e\ 1850}#)) + (if (#{syntax-object?\ 352}# #{value\ 1849}#) + (#{syntax-object-expression\ 354}# + #{value\ 1849}#) + #{value\ 1849}#) + (if (#{syntax-object?\ 352}# #{value\ 1849}#) + (#{syntax-object-module\ 358}# #{value\ 1849}#) + #{mod\ 1854}#)) + #{e\ 1850}# + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#) + (if (eqv? #{type\ 1848}# (quote constant)) + (#{build-data\ 338}# + #{s\ 1853}# + (#{strip\ 499}# + (#{source-wrap\ 459}# + #{e\ 1850}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#) '(()))) - (if (eqv? #{type\ 1847}# (quote global)) - (#{build-global-reference\ 321}# - #{s\ 1852}# - #{value\ 1848}# - #{mod\ 1853}#) - (if (eqv? #{type\ 1847}# (quote call)) - (#{chi-application\ 476}# - (#{chi\ 472}# - (car #{e\ 1849}#) - #{r\ 1850}# - #{w\ 1851}# - #{mod\ 1853}#) - #{e\ 1849}# - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#) - (if (eqv? #{type\ 1847}# (quote begin-form)) - (let ((#{tmp\ 1883}# #{e\ 1849}#)) - (let ((#{tmp\ 1884}# + (if (eqv? #{type\ 1848}# (quote global)) + (#{build-global-reference\ 322}# + #{s\ 1853}# + #{value\ 1849}# + #{mod\ 1854}#) + (if (eqv? #{type\ 1848}# (quote call)) + (#{chi-application\ 477}# + (#{chi\ 473}# + (car #{e\ 1850}#) + #{r\ 1851}# + #{w\ 1852}# + #{mod\ 1854}#) + #{e\ 1850}# + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#) + (if (eqv? #{type\ 1848}# (quote begin-form)) + (let ((#{tmp\ 1884}# #{e\ 1850}#)) + (let ((#{tmp\ 1885}# ($sc-dispatch - #{tmp\ 1883}# + #{tmp\ 1884}# '(any any . each-any)))) - (if #{tmp\ 1884}# + (if #{tmp\ 1885}# (@apply - (lambda (#{_\ 1888}# - #{e1\ 1889}# - #{e2\ 1890}#) - (#{chi-sequence\ 460}# - (cons #{e1\ 1889}# #{e2\ 1890}#) - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#)) - #{tmp\ 1884}#) + (lambda (#{_\ 1889}# + #{e1\ 1890}# + #{e2\ 1891}#) + (#{chi-sequence\ 461}# + (cons #{e1\ 1890}# #{e2\ 1891}#) + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#)) + #{tmp\ 1885}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 1883}#)))) - (if (eqv? #{type\ 1847}# + #{tmp\ 1884}#)))) + (if (eqv? #{type\ 1848}# 'local-syntax-form) - (#{chi-local-syntax\ 482}# - #{value\ 1848}# - #{e\ 1849}# - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}# - #{chi-sequence\ 460}#) - (if (eqv? #{type\ 1847}# + (#{chi-local-syntax\ 483}# + #{value\ 1849}# + #{e\ 1850}# + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}# + #{chi-sequence\ 461}#) + (if (eqv? #{type\ 1848}# 'eval-when-form) - (let ((#{tmp\ 1894}# #{e\ 1849}#)) - (let ((#{tmp\ 1895}# + (let ((#{tmp\ 1895}# #{e\ 1850}#)) + (let ((#{tmp\ 1896}# ($sc-dispatch - #{tmp\ 1894}# + #{tmp\ 1895}# '(any each-any any . each-any)))) - (if #{tmp\ 1895}# + (if #{tmp\ 1896}# (@apply - (lambda (#{_\ 1900}# - #{x\ 1901}# - #{e1\ 1902}# - #{e2\ 1903}#) + (lambda (#{_\ 1901}# + #{x\ 1902}# + #{e1\ 1903}# + #{e2\ 1904}#) (begin - (let ((#{when-list\ 1905}# - (#{chi-when-list\ 466}# - #{e\ 1849}# - #{x\ 1901}# - #{w\ 1851}#))) + (let ((#{when-list\ 1906}# + (#{chi-when-list\ 467}# + #{e\ 1850}# + #{x\ 1902}# + #{w\ 1852}#))) (if (memq 'eval - #{when-list\ 1905}#) - (#{chi-sequence\ 460}# - (cons #{e1\ 1902}# - #{e2\ 1903}#) - #{r\ 1850}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#) - (#{chi-void\ 486}#))))) - #{tmp\ 1895}#) + #{when-list\ 1906}#) + (#{chi-sequence\ 461}# + (cons #{e1\ 1903}# + #{e2\ 1904}#) + #{r\ 1851}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#) + (#{chi-void\ 487}#))))) + #{tmp\ 1896}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 1894}#)))) - (if (if (eqv? #{type\ 1847}# + #{tmp\ 1895}#)))) + (if (if (eqv? #{type\ 1848}# 'define-form) #t - (eqv? #{type\ 1847}# + (eqv? #{type\ 1848}# 'define-syntax-form)) (syntax-violation #f "definition in expression context" - #{e\ 1849}# - (#{wrap\ 456}# - #{value\ 1848}# - #{w\ 1851}# - #{mod\ 1853}#)) - (if (eqv? #{type\ 1847}# (quote syntax)) + #{e\ 1850}# + (#{wrap\ 457}# + #{value\ 1849}# + #{w\ 1852}# + #{mod\ 1854}#)) + (if (eqv? #{type\ 1848}# (quote syntax)) (syntax-violation #f "reference to pattern variable outside syntax form" - (#{source-wrap\ 458}# - #{e\ 1849}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#)) - (if (eqv? #{type\ 1847}# + (#{source-wrap\ 459}# + #{e\ 1850}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#)) + (if (eqv? #{type\ 1848}# 'displaced-lexical) (syntax-violation #f "reference to identifier outside its scope" - (#{source-wrap\ 458}# - #{e\ 1849}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#)) + (#{source-wrap\ 459}# + #{e\ 1850}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#)) (syntax-violation #f "unexpected syntax" - (#{source-wrap\ 458}# - #{e\ 1849}# - #{w\ 1851}# - #{s\ 1852}# - #{mod\ 1853}#)))))))))))))))))) - (#{chi-application\ 476}# - (lambda (#{x\ 1912}# - #{e\ 1913}# - #{r\ 1914}# - #{w\ 1915}# - #{s\ 1916}# - #{mod\ 1917}#) - (let ((#{tmp\ 1924}# #{e\ 1913}#)) - (let ((#{tmp\ 1925}# + (#{source-wrap\ 459}# + #{e\ 1850}# + #{w\ 1852}# + #{s\ 1853}# + #{mod\ 1854}#)))))))))))))))))) + (#{chi-application\ 477}# + (lambda (#{x\ 1913}# + #{e\ 1914}# + #{r\ 1915}# + #{w\ 1916}# + #{s\ 1917}# + #{mod\ 1918}#) + (let ((#{tmp\ 1925}# #{e\ 1914}#)) + (let ((#{tmp\ 1926}# ($sc-dispatch - #{tmp\ 1924}# + #{tmp\ 1925}# '(any . each-any)))) - (if #{tmp\ 1925}# + (if #{tmp\ 1926}# (@apply - (lambda (#{e0\ 1928}# #{e1\ 1929}#) - (#{build-application\ 309}# - #{s\ 1916}# - #{x\ 1912}# - (map (lambda (#{e\ 1930}#) - (#{chi\ 472}# - #{e\ 1930}# - #{r\ 1914}# - #{w\ 1915}# - #{mod\ 1917}#)) - #{e1\ 1929}#))) - #{tmp\ 1925}#) + (lambda (#{e0\ 1929}# #{e1\ 1930}#) + (#{build-application\ 310}# + #{s\ 1917}# + #{x\ 1913}# + (map (lambda (#{e\ 1931}#) + (#{chi\ 473}# + #{e\ 1931}# + #{r\ 1915}# + #{w\ 1916}# + #{mod\ 1918}#)) + #{e1\ 1930}#))) + #{tmp\ 1926}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 1924}#)))))) - (#{chi-macro\ 478}# - (lambda (#{p\ 1933}# - #{e\ 1934}# - #{r\ 1935}# - #{w\ 1936}# - #{s\ 1937}# - #{rib\ 1938}# - #{mod\ 1939}#) + #{tmp\ 1925}#)))))) + (#{chi-macro\ 479}# + (lambda (#{p\ 1934}# + #{e\ 1935}# + #{r\ 1936}# + #{w\ 1937}# + #{s\ 1938}# + #{rib\ 1939}# + #{mod\ 1940}#) (letrec* - ((#{rebuild-macro-output\ 1948}# - (lambda (#{x\ 1949}# #{m\ 1950}#) - (if (pair? #{x\ 1949}#) - (#{decorate-source\ 305}# - (cons (#{rebuild-macro-output\ 1948}# - (car #{x\ 1949}#) - #{m\ 1950}#) - (#{rebuild-macro-output\ 1948}# - (cdr #{x\ 1949}#) - #{m\ 1950}#)) - #{s\ 1937}#) - (if (#{syntax-object?\ 351}# #{x\ 1949}#) + ((#{rebuild-macro-output\ 1949}# + (lambda (#{x\ 1950}# #{m\ 1951}#) + (if (pair? #{x\ 1950}#) + (#{decorate-source\ 306}# + (cons (#{rebuild-macro-output\ 1949}# + (car #{x\ 1950}#) + #{m\ 1951}#) + (#{rebuild-macro-output\ 1949}# + (cdr #{x\ 1950}#) + #{m\ 1951}#)) + #{s\ 1938}#) + (if (#{syntax-object?\ 352}# #{x\ 1950}#) (begin - (let ((#{w\ 1958}# - (#{syntax-object-wrap\ 355}# #{x\ 1949}#))) + (let ((#{w\ 1959}# + (#{syntax-object-wrap\ 356}# #{x\ 1950}#))) (begin - (let ((#{ms\ 1961}# - (#{wrap-marks\ 394}# #{w\ 1958}#)) - (#{s\ 1962}# - (#{wrap-subst\ 396}# #{w\ 1958}#))) - (if (if (pair? #{ms\ 1961}#) - (eq? (car #{ms\ 1961}#) #f) + (let ((#{ms\ 1962}# + (#{wrap-marks\ 395}# #{w\ 1959}#)) + (#{s\ 1963}# + (#{wrap-subst\ 397}# #{w\ 1959}#))) + (if (if (pair? #{ms\ 1962}#) + (eq? (car #{ms\ 1962}#) #f) #f) - (#{make-syntax-object\ 349}# - (#{syntax-object-expression\ 353}# - #{x\ 1949}#) - (#{make-wrap\ 392}# - (cdr #{ms\ 1961}#) - (if #{rib\ 1938}# - (cons #{rib\ 1938}# (cdr #{s\ 1962}#)) - (cdr #{s\ 1962}#))) - (#{syntax-object-module\ 357}# - #{x\ 1949}#)) - (#{make-syntax-object\ 349}# - (#{decorate-source\ 305}# - (#{syntax-object-expression\ 353}# - #{x\ 1949}#) - #{s\ 1962}#) - (#{make-wrap\ 392}# - (cons #{m\ 1950}# #{ms\ 1961}#) - (if #{rib\ 1938}# - (cons #{rib\ 1938}# - (cons (quote shift) #{s\ 1962}#)) - (cons (quote shift) #{s\ 1962}#))) - (#{syntax-object-module\ 357}# - #{x\ 1949}#))))))) - (if (vector? #{x\ 1949}#) + (#{make-syntax-object\ 350}# + (#{syntax-object-expression\ 354}# + #{x\ 1950}#) + (#{make-wrap\ 393}# + (cdr #{ms\ 1962}#) + (if #{rib\ 1939}# + (cons #{rib\ 1939}# (cdr #{s\ 1963}#)) + (cdr #{s\ 1963}#))) + (#{syntax-object-module\ 358}# + #{x\ 1950}#)) + (#{make-syntax-object\ 350}# + (#{decorate-source\ 306}# + (#{syntax-object-expression\ 354}# + #{x\ 1950}#) + #{s\ 1963}#) + (#{make-wrap\ 393}# + (cons #{m\ 1951}# #{ms\ 1962}#) + (if #{rib\ 1939}# + (cons #{rib\ 1939}# + (cons (quote shift) #{s\ 1963}#)) + (cons (quote shift) #{s\ 1963}#))) + (#{syntax-object-module\ 358}# + #{x\ 1950}#))))))) + (if (vector? #{x\ 1950}#) (begin - (let ((#{n\ 1970}# (vector-length #{x\ 1949}#))) + (let ((#{n\ 1971}# (vector-length #{x\ 1950}#))) (begin - (let ((#{v\ 1972}# - (#{decorate-source\ 305}# - (make-vector #{n\ 1970}#) - #{x\ 1949}#))) + (let ((#{v\ 1973}# + (#{decorate-source\ 306}# + (make-vector #{n\ 1971}#) + #{x\ 1950}#))) (letrec* - ((#{loop\ 1975}# - (lambda (#{i\ 1976}#) - (if (#{fx=\ 292}# - #{i\ 1976}# - #{n\ 1970}#) - (begin (if #f #f) #{v\ 1972}#) + ((#{loop\ 1976}# + (lambda (#{i\ 1977}#) + (if (#{fx=\ 293}# + #{i\ 1977}# + #{n\ 1971}#) + (begin (if #f #f) #{v\ 1973}#) (begin (vector-set! - #{v\ 1972}# - #{i\ 1976}# - (#{rebuild-macro-output\ 1948}# + #{v\ 1973}# + #{i\ 1977}# + (#{rebuild-macro-output\ 1949}# (vector-ref - #{x\ 1949}# - #{i\ 1976}#) - #{m\ 1950}#)) - (#{loop\ 1975}# - (#{fx+\ 288}# - #{i\ 1976}# + #{x\ 1950}# + #{i\ 1977}#) + #{m\ 1951}#)) + (#{loop\ 1976}# + (#{fx+\ 289}# + #{i\ 1977}# 1))))))) - (begin (#{loop\ 1975}# 0))))))) - (if (symbol? #{x\ 1949}#) + (begin (#{loop\ 1976}# 0))))))) + (if (symbol? #{x\ 1950}#) (syntax-violation #f "encountered raw symbol in macro output" - (#{source-wrap\ 458}# - #{e\ 1934}# - #{w\ 1936}# - (#{wrap-subst\ 396}# #{w\ 1936}#) - #{mod\ 1939}#) - #{x\ 1949}#) - (#{decorate-source\ 305}# - #{x\ 1949}# - #{s\ 1937}#)))))))) + (#{source-wrap\ 459}# + #{e\ 1935}# + #{w\ 1937}# + (#{wrap-subst\ 397}# #{w\ 1937}#) + #{mod\ 1940}#) + #{x\ 1950}#) + (#{decorate-source\ 306}# + #{x\ 1950}# + #{s\ 1938}#)))))))) (begin - (#{rebuild-macro-output\ 1948}# - (#{p\ 1933}# - (#{source-wrap\ 458}# - #{e\ 1934}# - (#{anti-mark\ 428}# #{w\ 1936}#) - #{s\ 1937}# - #{mod\ 1939}#)) + (#{rebuild-macro-output\ 1949}# + (#{p\ 1934}# + (#{source-wrap\ 459}# + #{e\ 1935}# + (#{anti-mark\ 429}# #{w\ 1937}#) + #{s\ 1938}# + #{mod\ 1940}#)) (gensym "m")))))) - (#{chi-body\ 480}# - (lambda (#{body\ 1983}# - #{outer-form\ 1984}# - #{r\ 1985}# - #{w\ 1986}# - #{mod\ 1987}#) + (#{chi-body\ 481}# + (lambda (#{body\ 1984}# + #{outer-form\ 1985}# + #{r\ 1986}# + #{w\ 1987}# + #{mod\ 1988}#) (begin - (let ((#{r\ 1995}# + (let ((#{r\ 1996}# (cons '("placeholder" placeholder) - #{r\ 1985}#))) + #{r\ 1986}#))) (begin - (let ((#{ribcage\ 1997}# - (#{make-ribcage\ 408}# + (let ((#{ribcage\ 1998}# + (#{make-ribcage\ 409}# '() '() '()))) (begin - (let ((#{w\ 2000}# - (#{make-wrap\ 392}# - (#{wrap-marks\ 394}# #{w\ 1986}#) - (cons #{ribcage\ 1997}# - (#{wrap-subst\ 396}# #{w\ 1986}#))))) + (let ((#{w\ 2001}# + (#{make-wrap\ 393}# + (#{wrap-marks\ 395}# #{w\ 1987}#) + (cons #{ribcage\ 1998}# + (#{wrap-subst\ 397}# #{w\ 1987}#))))) (letrec* - ((#{parse\ 2009}# - (lambda (#{body\ 2010}# - #{ids\ 2011}# - #{labels\ 2012}# - #{var-ids\ 2013}# - #{vars\ 2014}# - #{vals\ 2015}# - #{bindings\ 2016}#) - (if (null? #{body\ 2010}#) + ((#{parse\ 2010}# + (lambda (#{body\ 2011}# + #{ids\ 2012}# + #{labels\ 2013}# + #{var-ids\ 2014}# + #{vars\ 2015}# + #{vals\ 2016}# + #{bindings\ 2017}#) + (if (null? #{body\ 2011}#) (syntax-violation #f "no expressions in body" - #{outer-form\ 1984}#) + #{outer-form\ 1985}#) (begin - (let ((#{e\ 2021}# - (cdr (car #{body\ 2010}#))) - (#{er\ 2022}# - (car (car #{body\ 2010}#)))) + (let ((#{e\ 2022}# + (cdr (car #{body\ 2011}#))) + (#{er\ 2023}# + (car (car #{body\ 2011}#)))) (call-with-values (lambda () - (#{syntax-type\ 468}# - #{e\ 2021}# - #{er\ 2022}# + (#{syntax-type\ 469}# + #{e\ 2022}# + #{er\ 2023}# '(()) - (#{source-annotation\ 366}# - #{er\ 2022}#) - #{ribcage\ 1997}# - #{mod\ 1987}# + (#{source-annotation\ 367}# + #{er\ 2023}#) + #{ribcage\ 1998}# + #{mod\ 1988}# #f)) - (lambda (#{type\ 2024}# - #{value\ 2025}# - #{e\ 2026}# - #{w\ 2027}# - #{s\ 2028}# - #{mod\ 2029}#) - (if (eqv? #{type\ 2024}# + (lambda (#{type\ 2025}# + #{value\ 2026}# + #{e\ 2027}# + #{w\ 2028}# + #{s\ 2029}# + #{mod\ 2030}#) + (if (eqv? #{type\ 2025}# 'define-form) (begin - (let ((#{id\ 2039}# - (#{wrap\ 456}# - #{value\ 2025}# - #{w\ 2027}# - #{mod\ 2029}#)) - (#{label\ 2040}# - (#{gen-label\ 403}#))) + (let ((#{id\ 2040}# + (#{wrap\ 457}# + #{value\ 2026}# + #{w\ 2028}# + #{mod\ 2030}#)) + (#{label\ 2041}# + (#{gen-label\ 404}#))) (begin - (let ((#{var\ 2042}# - (#{gen-var\ 500}# - #{id\ 2039}#))) + (let ((#{var\ 2043}# + (#{gen-var\ 501}# + #{id\ 2040}#))) (begin - (#{extend-ribcage!\ 432}# - #{ribcage\ 1997}# - #{id\ 2039}# - #{label\ 2040}#) - (#{parse\ 2009}# - (cdr #{body\ 2010}#) - (cons #{id\ 2039}# - #{ids\ 2011}#) - (cons #{label\ 2040}# - #{labels\ 2012}#) - (cons #{id\ 2039}# - #{var-ids\ 2013}#) - (cons #{var\ 2042}# - #{vars\ 2014}#) - (cons (cons #{er\ 2022}# - (#{wrap\ 456}# - #{e\ 2026}# - #{w\ 2027}# - #{mod\ 2029}#)) - #{vals\ 2015}#) + (#{extend-ribcage!\ 433}# + #{ribcage\ 1998}# + #{id\ 2040}# + #{label\ 2041}#) + (#{parse\ 2010}# + (cdr #{body\ 2011}#) + (cons #{id\ 2040}# + #{ids\ 2012}#) + (cons #{label\ 2041}# + #{labels\ 2013}#) + (cons #{id\ 2040}# + #{var-ids\ 2014}#) + (cons #{var\ 2043}# + #{vars\ 2015}#) + (cons (cons #{er\ 2023}# + (#{wrap\ 457}# + #{e\ 2027}# + #{w\ 2028}# + #{mod\ 2030}#)) + #{vals\ 2016}#) (cons (cons 'lexical - #{var\ 2042}#) - #{bindings\ 2016}#))))))) - (if (eqv? #{type\ 2024}# + #{var\ 2043}#) + #{bindings\ 2017}#))))))) + (if (eqv? #{type\ 2025}# 'define-syntax-form) (begin - (let ((#{id\ 2047}# - (#{wrap\ 456}# - #{value\ 2025}# - #{w\ 2027}# - #{mod\ 2029}#)) - (#{label\ 2048}# - (#{gen-label\ 403}#))) + (let ((#{id\ 2048}# + (#{wrap\ 457}# + #{value\ 2026}# + #{w\ 2028}# + #{mod\ 2030}#)) + (#{label\ 2049}# + (#{gen-label\ 404}#))) (begin - (#{extend-ribcage!\ 432}# - #{ribcage\ 1997}# - #{id\ 2047}# - #{label\ 2048}#) - (#{parse\ 2009}# - (cdr #{body\ 2010}#) - (cons #{id\ 2047}# - #{ids\ 2011}#) - (cons #{label\ 2048}# - #{labels\ 2012}#) - #{var-ids\ 2013}# - #{vars\ 2014}# - #{vals\ 2015}# + (#{extend-ribcage!\ 433}# + #{ribcage\ 1998}# + #{id\ 2048}# + #{label\ 2049}#) + (#{parse\ 2010}# + (cdr #{body\ 2011}#) + (cons #{id\ 2048}# + #{ids\ 2012}#) + (cons #{label\ 2049}# + #{labels\ 2013}#) + #{var-ids\ 2014}# + #{vars\ 2015}# + #{vals\ 2016}# (cons (cons 'macro - (cons #{er\ 2022}# - (#{wrap\ 456}# - #{e\ 2026}# - #{w\ 2027}# - #{mod\ 2029}#))) - #{bindings\ 2016}#))))) - (if (eqv? #{type\ 2024}# + (cons #{er\ 2023}# + (#{wrap\ 457}# + #{e\ 2027}# + #{w\ 2028}# + #{mod\ 2030}#))) + #{bindings\ 2017}#))))) + (if (eqv? #{type\ 2025}# 'begin-form) - (let ((#{tmp\ 2051}# - #{e\ 2026}#)) - (let ((#{tmp\ 2052}# + (let ((#{tmp\ 2052}# + #{e\ 2027}#)) + (let ((#{tmp\ 2053}# ($sc-dispatch - #{tmp\ 2051}# + #{tmp\ 2052}# '(any . each-any)))) - (if #{tmp\ 2052}# + (if #{tmp\ 2053}# (@apply - (lambda (#{_\ 2055}# - #{e1\ 2056}#) - (#{parse\ 2009}# + (lambda (#{_\ 2056}# + #{e1\ 2057}#) + (#{parse\ 2010}# (letrec* - ((#{f\ 2059}# - (lambda (#{forms\ 2060}#) - (if (null? #{forms\ 2060}#) - (cdr #{body\ 2010}#) - (cons (cons #{er\ 2022}# - (#{wrap\ 456}# - (car #{forms\ 2060}#) - #{w\ 2027}# - #{mod\ 2029}#)) - (#{f\ 2059}# - (cdr #{forms\ 2060}#))))))) + ((#{f\ 2060}# + (lambda (#{forms\ 2061}#) + (if (null? #{forms\ 2061}#) + (cdr #{body\ 2011}#) + (cons (cons #{er\ 2023}# + (#{wrap\ 457}# + (car #{forms\ 2061}#) + #{w\ 2028}# + #{mod\ 2030}#)) + (#{f\ 2060}# + (cdr #{forms\ 2061}#))))))) (begin - (#{f\ 2059}# - #{e1\ 2056}#))) - #{ids\ 2011}# - #{labels\ 2012}# - #{var-ids\ 2013}# - #{vars\ 2014}# - #{vals\ 2015}# - #{bindings\ 2016}#)) - #{tmp\ 2052}#) + (#{f\ 2060}# + #{e1\ 2057}#))) + #{ids\ 2012}# + #{labels\ 2013}# + #{var-ids\ 2014}# + #{vars\ 2015}# + #{vals\ 2016}# + #{bindings\ 2017}#)) + #{tmp\ 2053}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 2051}#)))) - (if (eqv? #{type\ 2024}# + #{tmp\ 2052}#)))) + (if (eqv? #{type\ 2025}# 'local-syntax-form) - (#{chi-local-syntax\ 482}# - #{value\ 2025}# - #{e\ 2026}# - #{er\ 2022}# - #{w\ 2027}# - #{s\ 2028}# - #{mod\ 2029}# - (lambda (#{forms\ 2063}# - #{er\ 2064}# - #{w\ 2065}# - #{s\ 2066}# - #{mod\ 2067}#) - (#{parse\ 2009}# + (#{chi-local-syntax\ 483}# + #{value\ 2026}# + #{e\ 2027}# + #{er\ 2023}# + #{w\ 2028}# + #{s\ 2029}# + #{mod\ 2030}# + (lambda (#{forms\ 2064}# + #{er\ 2065}# + #{w\ 2066}# + #{s\ 2067}# + #{mod\ 2068}#) + (#{parse\ 2010}# (letrec* - ((#{f\ 2075}# - (lambda (#{forms\ 2076}#) - (if (null? #{forms\ 2076}#) - (cdr #{body\ 2010}#) - (cons (cons #{er\ 2064}# - (#{wrap\ 456}# - (car #{forms\ 2076}#) - #{w\ 2065}# - #{mod\ 2067}#)) - (#{f\ 2075}# - (cdr #{forms\ 2076}#))))))) + ((#{f\ 2076}# + (lambda (#{forms\ 2077}#) + (if (null? #{forms\ 2077}#) + (cdr #{body\ 2011}#) + (cons (cons #{er\ 2065}# + (#{wrap\ 457}# + (car #{forms\ 2077}#) + #{w\ 2066}# + #{mod\ 2068}#)) + (#{f\ 2076}# + (cdr #{forms\ 2077}#))))))) (begin - (#{f\ 2075}# - #{forms\ 2063}#))) - #{ids\ 2011}# - #{labels\ 2012}# - #{var-ids\ 2013}# - #{vars\ 2014}# - #{vals\ 2015}# - #{bindings\ 2016}#))) - (if (null? #{ids\ 2011}#) - (#{build-sequence\ 339}# + (#{f\ 2076}# + #{forms\ 2064}#))) + #{ids\ 2012}# + #{labels\ 2013}# + #{var-ids\ 2014}# + #{vars\ 2015}# + #{vals\ 2016}# + #{bindings\ 2017}#))) + (if (null? #{ids\ 2012}#) + (#{build-sequence\ 340}# #f - (map (lambda (#{x\ 2079}#) - (#{chi\ 472}# - (cdr #{x\ 2079}#) - (car #{x\ 2079}#) + (map (lambda (#{x\ 2080}#) + (#{chi\ 473}# + (cdr #{x\ 2080}#) + (car #{x\ 2080}#) '(()) - #{mod\ 2029}#)) - (cons (cons #{er\ 2022}# - (#{source-wrap\ 458}# - #{e\ 2026}# - #{w\ 2027}# - #{s\ 2028}# - #{mod\ 2029}#)) - (cdr #{body\ 2010}#)))) + #{mod\ 2030}#)) + (cons (cons #{er\ 2023}# + (#{source-wrap\ 459}# + #{e\ 2027}# + #{w\ 2028}# + #{s\ 2029}# + #{mod\ 2030}#)) + (cdr #{body\ 2011}#)))) (begin - (if (not (#{valid-bound-ids?\ 450}# - #{ids\ 2011}#)) + (if (not (#{valid-bound-ids?\ 451}# + #{ids\ 2012}#)) (syntax-violation #f "invalid or duplicate identifier in definition" - #{outer-form\ 1984}#)) + #{outer-form\ 1985}#)) (letrec* - ((#{loop\ 2086}# - (lambda (#{bs\ 2087}# - #{er-cache\ 2088}# - #{r-cache\ 2089}#) - (if (not (null? #{bs\ 2087}#)) + ((#{loop\ 2087}# + (lambda (#{bs\ 2088}# + #{er-cache\ 2089}# + #{r-cache\ 2090}#) + (if (not (null? #{bs\ 2088}#)) (begin - (let ((#{b\ 2092}# - (car #{bs\ 2087}#))) - (if (eq? (car #{b\ 2092}#) + (let ((#{b\ 2093}# + (car #{bs\ 2088}#))) + (if (eq? (car #{b\ 2093}#) 'macro) (begin - (let ((#{er\ 2095}# - (car (cdr #{b\ 2092}#)))) + (let ((#{er\ 2096}# + (car (cdr #{b\ 2093}#)))) (begin - (let ((#{r-cache\ 2097}# - (if (eq? #{er\ 2095}# - #{er-cache\ 2088}#) - #{r-cache\ 2089}# - (#{macros-only-env\ 379}# - #{er\ 2095}#)))) + (let ((#{r-cache\ 2098}# + (if (eq? #{er\ 2096}# + #{er-cache\ 2089}#) + #{r-cache\ 2090}# + (#{macros-only-env\ 380}# + #{er\ 2096}#)))) (begin (set-cdr! - #{b\ 2092}# - (#{eval-local-transformer\ 484}# - (#{chi\ 472}# - (cdr (cdr #{b\ 2092}#)) - #{r-cache\ 2097}# + #{b\ 2093}# + (#{eval-local-transformer\ 485}# + (#{chi\ 473}# + (cdr (cdr #{b\ 2093}#)) + #{r-cache\ 2098}# '(()) - #{mod\ 2029}#) - #{mod\ 2029}#)) - (#{loop\ 2086}# - (cdr #{bs\ 2087}#) - #{er\ 2095}# - #{r-cache\ 2097}#)))))) - (#{loop\ 2086}# - (cdr #{bs\ 2087}#) - #{er-cache\ 2088}# - #{r-cache\ 2089}#)))))))) + #{mod\ 2030}#) + #{mod\ 2030}#)) + (#{loop\ 2087}# + (cdr #{bs\ 2088}#) + #{er\ 2096}# + #{r-cache\ 2098}#)))))) + (#{loop\ 2087}# + (cdr #{bs\ 2088}#) + #{er-cache\ 2089}# + #{r-cache\ 2090}#)))))))) (begin - (#{loop\ 2086}# - #{bindings\ 2016}# + (#{loop\ 2087}# + #{bindings\ 2017}# #f #f))) (set-cdr! - #{r\ 1995}# - (#{extend-env\ 375}# - #{labels\ 2012}# - #{bindings\ 2016}# - (cdr #{r\ 1995}#))) - (#{build-letrec\ 345}# + #{r\ 1996}# + (#{extend-env\ 376}# + #{labels\ 2013}# + #{bindings\ 2017}# + (cdr #{r\ 1996}#))) + (#{build-letrec\ 346}# #f #t (reverse (map syntax->datum - #{var-ids\ 2013}#)) + #{var-ids\ 2014}#)) (reverse - #{vars\ 2014}#) - (map (lambda (#{x\ 2100}#) - (#{chi\ 472}# - (cdr #{x\ 2100}#) - (car #{x\ 2100}#) + #{vars\ 2015}#) + (map (lambda (#{x\ 2101}#) + (#{chi\ 473}# + (cdr #{x\ 2101}#) + (car #{x\ 2101}#) '(()) - #{mod\ 2029}#)) + #{mod\ 2030}#)) (reverse - #{vals\ 2015}#)) - (#{build-sequence\ 339}# + #{vals\ 2016}#)) + (#{build-sequence\ 340}# #f - (map (lambda (#{x\ 2104}#) - (#{chi\ 472}# - (cdr #{x\ 2104}#) - (car #{x\ 2104}#) + (map (lambda (#{x\ 2105}#) + (#{chi\ 473}# + (cdr #{x\ 2105}#) + (car #{x\ 2105}#) '(()) - #{mod\ 2029}#)) - (cons (cons #{er\ 2022}# - (#{source-wrap\ 458}# - #{e\ 2026}# - #{w\ 2027}# - #{s\ 2028}# - #{mod\ 2029}#)) - (cdr #{body\ 2010}#))))))))))))))))))) + #{mod\ 2030}#)) + (cons (cons #{er\ 2023}# + (#{source-wrap\ 459}# + #{e\ 2027}# + #{w\ 2028}# + #{s\ 2029}# + #{mod\ 2030}#)) + (cdr #{body\ 2011}#))))))))))))))))))) (begin - (#{parse\ 2009}# - (map (lambda (#{x\ 2017}#) - (cons #{r\ 1995}# - (#{wrap\ 456}# - #{x\ 2017}# - #{w\ 2000}# - #{mod\ 1987}#))) - #{body\ 1983}#) + (#{parse\ 2010}# + (map (lambda (#{x\ 2018}#) + (cons #{r\ 1996}# + (#{wrap\ 457}# + #{x\ 2018}# + #{w\ 2001}# + #{mod\ 1988}#))) + #{body\ 1984}#) '() '() '() '() '() '()))))))))))) - (#{chi-local-syntax\ 482}# - (lambda (#{rec?\ 2107}# - #{e\ 2108}# - #{r\ 2109}# - #{w\ 2110}# - #{s\ 2111}# - #{mod\ 2112}# - #{k\ 2113}#) - (let ((#{tmp\ 2121}# #{e\ 2108}#)) - (let ((#{tmp\ 2122}# + (#{chi-local-syntax\ 483}# + (lambda (#{rec?\ 2108}# + #{e\ 2109}# + #{r\ 2110}# + #{w\ 2111}# + #{s\ 2112}# + #{mod\ 2113}# + #{k\ 2114}#) + (let ((#{tmp\ 2122}# #{e\ 2109}#)) + (let ((#{tmp\ 2123}# ($sc-dispatch - #{tmp\ 2121}# + #{tmp\ 2122}# '(any #(each (any any)) any . each-any)))) - (if #{tmp\ 2122}# + (if #{tmp\ 2123}# (@apply - (lambda (#{_\ 2128}# - #{id\ 2129}# - #{val\ 2130}# - #{e1\ 2131}# - #{e2\ 2132}#) + (lambda (#{_\ 2129}# + #{id\ 2130}# + #{val\ 2131}# + #{e1\ 2132}# + #{e2\ 2133}#) (begin - (let ((#{ids\ 2134}# #{id\ 2129}#)) - (if (not (#{valid-bound-ids?\ 450}# #{ids\ 2134}#)) + (let ((#{ids\ 2135}# #{id\ 2130}#)) + (if (not (#{valid-bound-ids?\ 451}# #{ids\ 2135}#)) (syntax-violation #f "duplicate bound keyword" - #{e\ 2108}#) + #{e\ 2109}#) (begin - (let ((#{labels\ 2137}# - (#{gen-labels\ 405}# #{ids\ 2134}#))) + (let ((#{labels\ 2138}# + (#{gen-labels\ 406}# #{ids\ 2135}#))) (begin - (let ((#{new-w\ 2139}# - (#{make-binding-wrap\ 434}# - #{ids\ 2134}# - #{labels\ 2137}# - #{w\ 2110}#))) - (#{k\ 2113}# - (cons #{e1\ 2131}# #{e2\ 2132}#) - (#{extend-env\ 375}# - #{labels\ 2137}# + (let ((#{new-w\ 2140}# + (#{make-binding-wrap\ 435}# + #{ids\ 2135}# + #{labels\ 2138}# + #{w\ 2111}#))) + (#{k\ 2114}# + (cons #{e1\ 2132}# #{e2\ 2133}#) + (#{extend-env\ 376}# + #{labels\ 2138}# (begin - (let ((#{w\ 2143}# - (if #{rec?\ 2107}# - #{new-w\ 2139}# - #{w\ 2110}#)) - (#{trans-r\ 2144}# - (#{macros-only-env\ 379}# - #{r\ 2109}#))) - (map (lambda (#{x\ 2145}#) + (let ((#{w\ 2144}# + (if #{rec?\ 2108}# + #{new-w\ 2140}# + #{w\ 2111}#)) + (#{trans-r\ 2145}# + (#{macros-only-env\ 380}# + #{r\ 2110}#))) + (map (lambda (#{x\ 2146}#) (cons 'macro - (#{eval-local-transformer\ 484}# - (#{chi\ 472}# - #{x\ 2145}# - #{trans-r\ 2144}# - #{w\ 2143}# - #{mod\ 2112}#) - #{mod\ 2112}#))) - #{val\ 2130}#))) - #{r\ 2109}#) - #{new-w\ 2139}# - #{s\ 2111}# - #{mod\ 2112}#))))))))) - #{tmp\ 2122}#) - (let ((#{_\ 2150}# #{tmp\ 2121}#)) + (#{eval-local-transformer\ 485}# + (#{chi\ 473}# + #{x\ 2146}# + #{trans-r\ 2145}# + #{w\ 2144}# + #{mod\ 2113}#) + #{mod\ 2113}#))) + #{val\ 2131}#))) + #{r\ 2110}#) + #{new-w\ 2140}# + #{s\ 2112}# + #{mod\ 2113}#))))))))) + #{tmp\ 2123}#) + (let ((#{_\ 2151}# #{tmp\ 2122}#)) (syntax-violation #f "bad local syntax definition" - (#{source-wrap\ 458}# - #{e\ 2108}# - #{w\ 2110}# - #{s\ 2111}# - #{mod\ 2112}#)))))))) - (#{eval-local-transformer\ 484}# - (lambda (#{expanded\ 2151}# #{mod\ 2152}#) + (#{source-wrap\ 459}# + #{e\ 2109}# + #{w\ 2111}# + #{s\ 2112}# + #{mod\ 2113}#)))))))) + (#{eval-local-transformer\ 485}# + (lambda (#{expanded\ 2152}# #{mod\ 2153}#) (begin - (let ((#{p\ 2156}# - (#{local-eval-hook\ 298}# - #{expanded\ 2151}# - #{mod\ 2152}#))) - (if (procedure? #{p\ 2156}#) - #{p\ 2156}# + (let ((#{p\ 2157}# + (#{local-eval-hook\ 299}# + #{expanded\ 2152}# + #{mod\ 2153}#))) + (if (procedure? #{p\ 2157}#) + #{p\ 2157}# (syntax-violation #f "nonprocedure transformer" - #{p\ 2156}#)))))) - (#{chi-void\ 486}# - (lambda () (#{build-void\ 307}# #f))) - (#{ellipsis?\ 488}# - (lambda (#{x\ 2158}#) - (if (#{nonsymbol-id?\ 385}# #{x\ 2158}#) - (#{free-id=?\ 446}# - #{x\ 2158}# + #{p\ 2157}#)))))) + (#{chi-void\ 487}# + (lambda () (#{build-void\ 308}# #f))) + (#{ellipsis?\ 489}# + (lambda (#{x\ 2159}#) + (if (#{nonsymbol-id?\ 386}# #{x\ 2159}#) + (#{free-id=?\ 447}# + #{x\ 2159}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i2159")) + #(ribcage #(x) #((top)) #("i2160")) #(ribcage (lambda-var-list gen-var @@ -6770,417 +6770,417 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" "i37" "i36" "i34"))) + ("i39" "i38" "i37" "i35"))) (hygiene guile))) #f))) - (#{lambda-formals\ 490}# - (lambda (#{orig-args\ 2162}#) + (#{lambda-formals\ 491}# + (lambda (#{orig-args\ 2163}#) (letrec* - ((#{req\ 2165}# - (lambda (#{args\ 2168}# #{rreq\ 2169}#) - (let ((#{tmp\ 2172}# #{args\ 2168}#)) - (let ((#{tmp\ 2173}# - ($sc-dispatch #{tmp\ 2172}# (quote ())))) - (if #{tmp\ 2173}# + ((#{req\ 2166}# + (lambda (#{args\ 2169}# #{rreq\ 2170}#) + (let ((#{tmp\ 2173}# #{args\ 2169}#)) + (let ((#{tmp\ 2174}# + ($sc-dispatch #{tmp\ 2173}# (quote ())))) + (if #{tmp\ 2174}# (@apply (lambda () - (#{check\ 2167}# (reverse #{rreq\ 2169}#) #f)) - #{tmp\ 2173}#) - (let ((#{tmp\ 2174}# + (#{check\ 2168}# (reverse #{rreq\ 2170}#) #f)) + #{tmp\ 2174}#) + (let ((#{tmp\ 2175}# ($sc-dispatch - #{tmp\ 2172}# + #{tmp\ 2173}# '(any . any)))) - (if (if #{tmp\ 2174}# + (if (if #{tmp\ 2175}# (@apply - (lambda (#{a\ 2177}# #{b\ 2178}#) - (#{id?\ 387}# #{a\ 2177}#)) - #{tmp\ 2174}#) + (lambda (#{a\ 2178}# #{b\ 2179}#) + (#{id?\ 388}# #{a\ 2178}#)) + #{tmp\ 2175}#) #f) (@apply - (lambda (#{a\ 2181}# #{b\ 2182}#) - (#{req\ 2165}# - #{b\ 2182}# - (cons #{a\ 2181}# #{rreq\ 2169}#))) - #{tmp\ 2174}#) - (let ((#{tmp\ 2183}# (list #{tmp\ 2172}#))) - (if (if #{tmp\ 2183}# + (lambda (#{a\ 2182}# #{b\ 2183}#) + (#{req\ 2166}# + #{b\ 2183}# + (cons #{a\ 2182}# #{rreq\ 2170}#))) + #{tmp\ 2175}#) + (let ((#{tmp\ 2184}# (list #{tmp\ 2173}#))) + (if (if #{tmp\ 2184}# (@apply - (lambda (#{r\ 2185}#) - (#{id?\ 387}# #{r\ 2185}#)) - #{tmp\ 2183}#) + (lambda (#{r\ 2186}#) + (#{id?\ 388}# #{r\ 2186}#)) + #{tmp\ 2184}#) #f) (@apply - (lambda (#{r\ 2187}#) - (#{check\ 2167}# - (reverse #{rreq\ 2169}#) - #{r\ 2187}#)) - #{tmp\ 2183}#) - (let ((#{else\ 2189}# #{tmp\ 2172}#)) + (lambda (#{r\ 2188}#) + (#{check\ 2168}# + (reverse #{rreq\ 2170}#) + #{r\ 2188}#)) + #{tmp\ 2184}#) + (let ((#{else\ 2190}# #{tmp\ 2173}#)) (syntax-violation 'lambda "invalid argument list" - #{orig-args\ 2162}# - #{args\ 2168}#))))))))))) - (#{check\ 2167}# - (lambda (#{req\ 2190}# #{rest\ 2191}#) - (if (#{distinct-bound-ids?\ 452}# - (if #{rest\ 2191}# - (cons #{rest\ 2191}# #{req\ 2190}#) - #{req\ 2190}#)) - (values #{req\ 2190}# #f #{rest\ 2191}# #f) + #{orig-args\ 2163}# + #{args\ 2169}#))))))))))) + (#{check\ 2168}# + (lambda (#{req\ 2191}# #{rest\ 2192}#) + (if (#{distinct-bound-ids?\ 453}# + (if #{rest\ 2192}# + (cons #{rest\ 2192}# #{req\ 2191}#) + #{req\ 2191}#)) + (values #{req\ 2191}# #f #{rest\ 2192}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" - #{orig-args\ 2162}#))))) + #{orig-args\ 2163}#))))) (begin - (#{req\ 2165}# #{orig-args\ 2162}# (quote ())))))) - (#{chi-simple-lambda\ 492}# - (lambda (#{e\ 2197}# - #{r\ 2198}# - #{w\ 2199}# - #{s\ 2200}# - #{mod\ 2201}# - #{req\ 2202}# - #{rest\ 2203}# - #{meta\ 2204}# - #{body\ 2205}#) + (#{req\ 2166}# #{orig-args\ 2163}# (quote ())))))) + (#{chi-simple-lambda\ 493}# + (lambda (#{e\ 2198}# + #{r\ 2199}# + #{w\ 2200}# + #{s\ 2201}# + #{mod\ 2202}# + #{req\ 2203}# + #{rest\ 2204}# + #{meta\ 2205}# + #{body\ 2206}#) (begin - (let ((#{ids\ 2217}# - (if #{rest\ 2203}# - (append #{req\ 2202}# (list #{rest\ 2203}#)) - #{req\ 2202}#))) + (let ((#{ids\ 2218}# + (if #{rest\ 2204}# + (append #{req\ 2203}# (list #{rest\ 2204}#)) + #{req\ 2203}#))) (begin - (let ((#{vars\ 2219}# - (map #{gen-var\ 500}# #{ids\ 2217}#))) + (let ((#{vars\ 2220}# + (map #{gen-var\ 501}# #{ids\ 2218}#))) (begin - (let ((#{labels\ 2221}# - (#{gen-labels\ 405}# #{ids\ 2217}#))) - (#{build-simple-lambda\ 329}# - #{s\ 2200}# - (map syntax->datum #{req\ 2202}#) - (if #{rest\ 2203}# - (syntax->datum #{rest\ 2203}#) + (let ((#{labels\ 2222}# + (#{gen-labels\ 406}# #{ids\ 2218}#))) + (#{build-simple-lambda\ 330}# + #{s\ 2201}# + (map syntax->datum #{req\ 2203}#) + (if #{rest\ 2204}# + (syntax->datum #{rest\ 2204}#) #f) - #{vars\ 2219}# - #{meta\ 2204}# - (#{chi-body\ 480}# - #{body\ 2205}# - (#{source-wrap\ 458}# - #{e\ 2197}# - #{w\ 2199}# - #{s\ 2200}# - #{mod\ 2201}#) - (#{extend-var-env\ 377}# - #{labels\ 2221}# - #{vars\ 2219}# - #{r\ 2198}#) - (#{make-binding-wrap\ 434}# - #{ids\ 2217}# - #{labels\ 2221}# - #{w\ 2199}#) - #{mod\ 2201}#)))))))))) - (#{lambda*-formals\ 494}# - (lambda (#{orig-args\ 2224}#) + #{vars\ 2220}# + #{meta\ 2205}# + (#{chi-body\ 481}# + #{body\ 2206}# + (#{source-wrap\ 459}# + #{e\ 2198}# + #{w\ 2200}# + #{s\ 2201}# + #{mod\ 2202}#) + (#{extend-var-env\ 378}# + #{labels\ 2222}# + #{vars\ 2220}# + #{r\ 2199}#) + (#{make-binding-wrap\ 435}# + #{ids\ 2218}# + #{labels\ 2222}# + #{w\ 2200}#) + #{mod\ 2202}#)))))))))) + (#{lambda*-formals\ 495}# + (lambda (#{orig-args\ 2225}#) (letrec* - ((#{req\ 2227}# - (lambda (#{args\ 2236}# #{rreq\ 2237}#) - (let ((#{tmp\ 2240}# #{args\ 2236}#)) - (let ((#{tmp\ 2241}# - ($sc-dispatch #{tmp\ 2240}# (quote ())))) - (if #{tmp\ 2241}# + ((#{req\ 2228}# + (lambda (#{args\ 2237}# #{rreq\ 2238}#) + (let ((#{tmp\ 2241}# #{args\ 2237}#)) + (let ((#{tmp\ 2242}# + ($sc-dispatch #{tmp\ 2241}# (quote ())))) + (if #{tmp\ 2242}# (@apply (lambda () - (#{check\ 2235}# - (reverse #{rreq\ 2237}#) + (#{check\ 2236}# + (reverse #{rreq\ 2238}#) '() #f '())) - #{tmp\ 2241}#) - (let ((#{tmp\ 2242}# + #{tmp\ 2242}#) + (let ((#{tmp\ 2243}# ($sc-dispatch - #{tmp\ 2240}# + #{tmp\ 2241}# '(any . any)))) - (if (if #{tmp\ 2242}# + (if (if #{tmp\ 2243}# (@apply - (lambda (#{a\ 2245}# #{b\ 2246}#) - (#{id?\ 387}# #{a\ 2245}#)) - #{tmp\ 2242}#) + (lambda (#{a\ 2246}# #{b\ 2247}#) + (#{id?\ 388}# #{a\ 2246}#)) + #{tmp\ 2243}#) #f) (@apply - (lambda (#{a\ 2249}# #{b\ 2250}#) - (#{req\ 2227}# - #{b\ 2250}# - (cons #{a\ 2249}# #{rreq\ 2237}#))) - #{tmp\ 2242}#) - (let ((#{tmp\ 2251}# + (lambda (#{a\ 2250}# #{b\ 2251}#) + (#{req\ 2228}# + #{b\ 2251}# + (cons #{a\ 2250}# #{rreq\ 2238}#))) + #{tmp\ 2243}#) + (let ((#{tmp\ 2252}# ($sc-dispatch - #{tmp\ 2240}# + #{tmp\ 2241}# '(any . any)))) - (if (if #{tmp\ 2251}# + (if (if #{tmp\ 2252}# (@apply - (lambda (#{a\ 2254}# #{b\ 2255}#) - (eq? (syntax->datum #{a\ 2254}#) + (lambda (#{a\ 2255}# #{b\ 2256}#) + (eq? (syntax->datum #{a\ 2255}#) #:optional)) - #{tmp\ 2251}#) + #{tmp\ 2252}#) #f) (@apply - (lambda (#{a\ 2258}# #{b\ 2259}#) - (#{opt\ 2229}# - #{b\ 2259}# - (reverse #{rreq\ 2237}#) + (lambda (#{a\ 2259}# #{b\ 2260}#) + (#{opt\ 2230}# + #{b\ 2260}# + (reverse #{rreq\ 2238}#) '())) - #{tmp\ 2251}#) - (let ((#{tmp\ 2260}# + #{tmp\ 2252}#) + (let ((#{tmp\ 2261}# ($sc-dispatch - #{tmp\ 2240}# + #{tmp\ 2241}# '(any . any)))) - (if (if #{tmp\ 2260}# + (if (if #{tmp\ 2261}# (@apply - (lambda (#{a\ 2263}# #{b\ 2264}#) - (eq? (syntax->datum #{a\ 2263}#) + (lambda (#{a\ 2264}# #{b\ 2265}#) + (eq? (syntax->datum #{a\ 2264}#) #:key)) - #{tmp\ 2260}#) + #{tmp\ 2261}#) #f) (@apply - (lambda (#{a\ 2267}# #{b\ 2268}#) - (#{key\ 2231}# - #{b\ 2268}# - (reverse #{rreq\ 2237}#) + (lambda (#{a\ 2268}# #{b\ 2269}#) + (#{key\ 2232}# + #{b\ 2269}# + (reverse #{rreq\ 2238}#) '() '())) - #{tmp\ 2260}#) - (let ((#{tmp\ 2269}# + #{tmp\ 2261}#) + (let ((#{tmp\ 2270}# ($sc-dispatch - #{tmp\ 2240}# + #{tmp\ 2241}# '(any any)))) - (if (if #{tmp\ 2269}# + (if (if #{tmp\ 2270}# (@apply - (lambda (#{a\ 2272}# - #{b\ 2273}#) + (lambda (#{a\ 2273}# + #{b\ 2274}#) (eq? (syntax->datum - #{a\ 2272}#) + #{a\ 2273}#) #:rest)) - #{tmp\ 2269}#) + #{tmp\ 2270}#) #f) (@apply - (lambda (#{a\ 2276}# #{b\ 2277}#) - (#{rest\ 2233}# - #{b\ 2277}# - (reverse #{rreq\ 2237}#) + (lambda (#{a\ 2277}# #{b\ 2278}#) + (#{rest\ 2234}# + #{b\ 2278}# + (reverse #{rreq\ 2238}#) '() '())) - #{tmp\ 2269}#) - (let ((#{tmp\ 2278}# - (list #{tmp\ 2240}#))) - (if (if #{tmp\ 2278}# + #{tmp\ 2270}#) + (let ((#{tmp\ 2279}# + (list #{tmp\ 2241}#))) + (if (if #{tmp\ 2279}# (@apply - (lambda (#{r\ 2280}#) - (#{id?\ 387}# - #{r\ 2280}#)) - #{tmp\ 2278}#) + (lambda (#{r\ 2281}#) + (#{id?\ 388}# + #{r\ 2281}#)) + #{tmp\ 2279}#) #f) (@apply - (lambda (#{r\ 2282}#) - (#{rest\ 2233}# - #{r\ 2282}# - (reverse #{rreq\ 2237}#) + (lambda (#{r\ 2283}#) + (#{rest\ 2234}# + #{r\ 2283}# + (reverse #{rreq\ 2238}#) '() '())) - #{tmp\ 2278}#) - (let ((#{else\ 2284}# - #{tmp\ 2240}#)) + #{tmp\ 2279}#) + (let ((#{else\ 2285}# + #{tmp\ 2241}#)) (syntax-violation 'lambda* "invalid argument list" - #{orig-args\ 2224}# - #{args\ 2236}#))))))))))))))))) - (#{opt\ 2229}# - (lambda (#{args\ 2285}# #{req\ 2286}# #{ropt\ 2287}#) - (let ((#{tmp\ 2291}# #{args\ 2285}#)) - (let ((#{tmp\ 2292}# - ($sc-dispatch #{tmp\ 2291}# (quote ())))) - (if #{tmp\ 2292}# + #{orig-args\ 2225}# + #{args\ 2237}#))))))))))))))))) + (#{opt\ 2230}# + (lambda (#{args\ 2286}# #{req\ 2287}# #{ropt\ 2288}#) + (let ((#{tmp\ 2292}# #{args\ 2286}#)) + (let ((#{tmp\ 2293}# + ($sc-dispatch #{tmp\ 2292}# (quote ())))) + (if #{tmp\ 2293}# (@apply (lambda () - (#{check\ 2235}# - #{req\ 2286}# - (reverse #{ropt\ 2287}#) + (#{check\ 2236}# + #{req\ 2287}# + (reverse #{ropt\ 2288}#) #f '())) - #{tmp\ 2292}#) - (let ((#{tmp\ 2293}# + #{tmp\ 2293}#) + (let ((#{tmp\ 2294}# ($sc-dispatch - #{tmp\ 2291}# + #{tmp\ 2292}# '(any . any)))) - (if (if #{tmp\ 2293}# + (if (if #{tmp\ 2294}# (@apply - (lambda (#{a\ 2296}# #{b\ 2297}#) - (#{id?\ 387}# #{a\ 2296}#)) - #{tmp\ 2293}#) + (lambda (#{a\ 2297}# #{b\ 2298}#) + (#{id?\ 388}# #{a\ 2297}#)) + #{tmp\ 2294}#) #f) (@apply - (lambda (#{a\ 2300}# #{b\ 2301}#) - (#{opt\ 2229}# - #{b\ 2301}# - #{req\ 2286}# - (cons (cons #{a\ 2300}# + (lambda (#{a\ 2301}# #{b\ 2302}#) + (#{opt\ 2230}# + #{b\ 2302}# + #{req\ 2287}# + (cons (cons #{a\ 2301}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) - #("i2298" "i2299")) + #("i2299" "i2300")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) - #("i2288" - "i2289" - "i2290")) + #("i2289" + "i2290" + "i2291")) #(ribcage (check rest key opt req) ((top) @@ -7188,15 +7188,15 @@ (top) (top) (top)) - ("i2234" - "i2232" - "i2230" - "i2228" - "i2226")) + ("i2235" + "i2233" + "i2231" + "i2229" + "i2227")) #(ribcage #(orig-args) #((top)) - #("i2225")) + #("i2226")) #(ribcage (lambda-var-list gen-var @@ -7472,143 +7472,143 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors @@ -7618,150 +7618,150 @@ (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile)))) - #{ropt\ 2287}#))) - #{tmp\ 2293}#) - (let ((#{tmp\ 2302}# + #{ropt\ 2288}#))) + #{tmp\ 2294}#) + (let ((#{tmp\ 2303}# ($sc-dispatch - #{tmp\ 2291}# + #{tmp\ 2292}# '((any any) . any)))) - (if (if #{tmp\ 2302}# + (if (if #{tmp\ 2303}# (@apply - (lambda (#{a\ 2306}# - #{init\ 2307}# - #{b\ 2308}#) - (#{id?\ 387}# #{a\ 2306}#)) - #{tmp\ 2302}#) + (lambda (#{a\ 2307}# + #{init\ 2308}# + #{b\ 2309}#) + (#{id?\ 388}# #{a\ 2307}#)) + #{tmp\ 2303}#) #f) (@apply - (lambda (#{a\ 2312}# - #{init\ 2313}# - #{b\ 2314}#) - (#{opt\ 2229}# - #{b\ 2314}# - #{req\ 2286}# - (cons (list #{a\ 2312}# #{init\ 2313}#) - #{ropt\ 2287}#))) - #{tmp\ 2302}#) - (let ((#{tmp\ 2315}# + (lambda (#{a\ 2313}# + #{init\ 2314}# + #{b\ 2315}#) + (#{opt\ 2230}# + #{b\ 2315}# + #{req\ 2287}# + (cons (list #{a\ 2313}# #{init\ 2314}#) + #{ropt\ 2288}#))) + #{tmp\ 2303}#) + (let ((#{tmp\ 2316}# ($sc-dispatch - #{tmp\ 2291}# + #{tmp\ 2292}# '(any . any)))) - (if (if #{tmp\ 2315}# + (if (if #{tmp\ 2316}# (@apply - (lambda (#{a\ 2318}# #{b\ 2319}#) - (eq? (syntax->datum #{a\ 2318}#) + (lambda (#{a\ 2319}# #{b\ 2320}#) + (eq? (syntax->datum #{a\ 2319}#) #:key)) - #{tmp\ 2315}#) + #{tmp\ 2316}#) #f) (@apply - (lambda (#{a\ 2322}# #{b\ 2323}#) - (#{key\ 2231}# - #{b\ 2323}# - #{req\ 2286}# - (reverse #{ropt\ 2287}#) + (lambda (#{a\ 2323}# #{b\ 2324}#) + (#{key\ 2232}# + #{b\ 2324}# + #{req\ 2287}# + (reverse #{ropt\ 2288}#) '())) - #{tmp\ 2315}#) - (let ((#{tmp\ 2324}# + #{tmp\ 2316}#) + (let ((#{tmp\ 2325}# ($sc-dispatch - #{tmp\ 2291}# + #{tmp\ 2292}# '(any any)))) - (if (if #{tmp\ 2324}# + (if (if #{tmp\ 2325}# (@apply - (lambda (#{a\ 2327}# - #{b\ 2328}#) + (lambda (#{a\ 2328}# + #{b\ 2329}#) (eq? (syntax->datum - #{a\ 2327}#) + #{a\ 2328}#) #:rest)) - #{tmp\ 2324}#) + #{tmp\ 2325}#) #f) (@apply - (lambda (#{a\ 2331}# #{b\ 2332}#) - (#{rest\ 2233}# - #{b\ 2332}# - #{req\ 2286}# - (reverse #{ropt\ 2287}#) + (lambda (#{a\ 2332}# #{b\ 2333}#) + (#{rest\ 2234}# + #{b\ 2333}# + #{req\ 2287}# + (reverse #{ropt\ 2288}#) '())) - #{tmp\ 2324}#) - (let ((#{tmp\ 2333}# - (list #{tmp\ 2291}#))) - (if (if #{tmp\ 2333}# + #{tmp\ 2325}#) + (let ((#{tmp\ 2334}# + (list #{tmp\ 2292}#))) + (if (if #{tmp\ 2334}# (@apply - (lambda (#{r\ 2335}#) - (#{id?\ 387}# - #{r\ 2335}#)) - #{tmp\ 2333}#) + (lambda (#{r\ 2336}#) + (#{id?\ 388}# + #{r\ 2336}#)) + #{tmp\ 2334}#) #f) (@apply - (lambda (#{r\ 2337}#) - (#{rest\ 2233}# - #{r\ 2337}# - #{req\ 2286}# - (reverse #{ropt\ 2287}#) + (lambda (#{r\ 2338}#) + (#{rest\ 2234}# + #{r\ 2338}# + #{req\ 2287}# + (reverse #{ropt\ 2288}#) '())) - #{tmp\ 2333}#) - (let ((#{else\ 2339}# - #{tmp\ 2291}#)) + #{tmp\ 2334}#) + (let ((#{else\ 2340}# + #{tmp\ 2292}#)) (syntax-violation 'lambda* "invalid optional argument list" - #{orig-args\ 2224}# - #{args\ 2285}#))))))))))))))))) - (#{key\ 2231}# - (lambda (#{args\ 2340}# - #{req\ 2341}# - #{opt\ 2342}# - #{rkey\ 2343}#) - (let ((#{tmp\ 2348}# #{args\ 2340}#)) - (let ((#{tmp\ 2349}# - ($sc-dispatch #{tmp\ 2348}# (quote ())))) - (if #{tmp\ 2349}# + #{orig-args\ 2225}# + #{args\ 2286}#))))))))))))))))) + (#{key\ 2232}# + (lambda (#{args\ 2341}# + #{req\ 2342}# + #{opt\ 2343}# + #{rkey\ 2344}#) + (let ((#{tmp\ 2349}# #{args\ 2341}#)) + (let ((#{tmp\ 2350}# + ($sc-dispatch #{tmp\ 2349}# (quote ())))) + (if #{tmp\ 2350}# (@apply (lambda () - (#{check\ 2235}# - #{req\ 2341}# - #{opt\ 2342}# + (#{check\ 2236}# + #{req\ 2342}# + #{opt\ 2343}# #f - (cons #f (reverse #{rkey\ 2343}#)))) - #{tmp\ 2349}#) - (let ((#{tmp\ 2350}# + (cons #f (reverse #{rkey\ 2344}#)))) + #{tmp\ 2350}#) + (let ((#{tmp\ 2351}# ($sc-dispatch - #{tmp\ 2348}# + #{tmp\ 2349}# '(any . any)))) - (if (if #{tmp\ 2350}# + (if (if #{tmp\ 2351}# (@apply - (lambda (#{a\ 2353}# #{b\ 2354}#) - (#{id?\ 387}# #{a\ 2353}#)) - #{tmp\ 2350}#) + (lambda (#{a\ 2354}# #{b\ 2355}#) + (#{id?\ 388}# #{a\ 2354}#)) + #{tmp\ 2351}#) #f) (@apply - (lambda (#{a\ 2357}# #{b\ 2358}#) - (let ((#{tmp\ 2360}# + (lambda (#{a\ 2358}# #{b\ 2359}#) + (let ((#{tmp\ 2361}# (symbol->keyword - (syntax->datum #{a\ 2357}#)))) - (let ((#{k\ 2362}# #{tmp\ 2360}#)) - (#{key\ 2231}# - #{b\ 2358}# - #{req\ 2341}# - #{opt\ 2342}# - (cons (cons #{k\ 2362}# - (cons #{a\ 2357}# + (syntax->datum #{a\ 2358}#)))) + (let ((#{k\ 2363}# #{tmp\ 2361}#)) + (#{key\ 2232}# + #{b\ 2359}# + #{req\ 2342}# + #{opt\ 2343}# + (cons (cons #{k\ 2363}# + (cons #{a\ 2358}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) - #("i2361")) + #("i2362")) #(ribcage #(a b) #((top) (top)) - #("i2355" - "i2356")) + #("i2356" + "i2357")) #(ribcage () () @@ -7775,10 +7775,10 @@ (top) (top) (top)) - #("i2344" - "i2345" + #("i2345" "i2346" - "i2347")) + "i2347" + "i2348")) #(ribcage (check rest key @@ -7789,15 +7789,15 @@ (top) (top) (top)) - ("i2234" - "i2232" - "i2230" - "i2228" - "i2226")) + ("i2235" + "i2233" + "i2231" + "i2229" + "i2227")) #(ribcage #(orig-args) #((top)) - #("i2225")) + #("i2226")) #(ribcage (lambda-var-list gen-var @@ -8073,143 +8073,143 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors @@ -8219,2055 +8219,2089 @@ (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile))))) - #{rkey\ 2343}#))))) - #{tmp\ 2350}#) - (let ((#{tmp\ 2363}# + #{rkey\ 2344}#))))) + #{tmp\ 2351}#) + (let ((#{tmp\ 2364}# ($sc-dispatch - #{tmp\ 2348}# + #{tmp\ 2349}# '((any any) . any)))) - (if (if #{tmp\ 2363}# + (if (if #{tmp\ 2364}# (@apply - (lambda (#{a\ 2367}# - #{init\ 2368}# - #{b\ 2369}#) - (#{id?\ 387}# #{a\ 2367}#)) - #{tmp\ 2363}#) + (lambda (#{a\ 2368}# + #{init\ 2369}# + #{b\ 2370}#) + (#{id?\ 388}# #{a\ 2368}#)) + #{tmp\ 2364}#) #f) (@apply - (lambda (#{a\ 2373}# - #{init\ 2374}# - #{b\ 2375}#) - (let ((#{tmp\ 2377}# + (lambda (#{a\ 2374}# + #{init\ 2375}# + #{b\ 2376}#) + (let ((#{tmp\ 2378}# (symbol->keyword - (syntax->datum #{a\ 2373}#)))) - (let ((#{k\ 2379}# #{tmp\ 2377}#)) - (#{key\ 2231}# - #{b\ 2375}# - #{req\ 2341}# - #{opt\ 2342}# - (cons (list #{k\ 2379}# - #{a\ 2373}# - #{init\ 2374}#) - #{rkey\ 2343}#))))) - #{tmp\ 2363}#) - (let ((#{tmp\ 2380}# + (syntax->datum #{a\ 2374}#)))) + (let ((#{k\ 2380}# #{tmp\ 2378}#)) + (#{key\ 2232}# + #{b\ 2376}# + #{req\ 2342}# + #{opt\ 2343}# + (cons (list #{k\ 2380}# + #{a\ 2374}# + #{init\ 2375}#) + #{rkey\ 2344}#))))) + #{tmp\ 2364}#) + (let ((#{tmp\ 2381}# ($sc-dispatch - #{tmp\ 2348}# + #{tmp\ 2349}# '((any any any) . any)))) - (if (if #{tmp\ 2380}# + (if (if #{tmp\ 2381}# (@apply - (lambda (#{a\ 2385}# - #{init\ 2386}# - #{k\ 2387}# - #{b\ 2388}#) - (if (#{id?\ 387}# #{a\ 2385}#) + (lambda (#{a\ 2386}# + #{init\ 2387}# + #{k\ 2388}# + #{b\ 2389}#) + (if (#{id?\ 388}# #{a\ 2386}#) (keyword? - (syntax->datum #{k\ 2387}#)) + (syntax->datum #{k\ 2388}#)) #f)) - #{tmp\ 2380}#) + #{tmp\ 2381}#) #f) (@apply - (lambda (#{a\ 2395}# - #{init\ 2396}# - #{k\ 2397}# - #{b\ 2398}#) - (#{key\ 2231}# - #{b\ 2398}# - #{req\ 2341}# - #{opt\ 2342}# - (cons (list #{k\ 2397}# - #{a\ 2395}# - #{init\ 2396}#) - #{rkey\ 2343}#))) - #{tmp\ 2380}#) - (let ((#{tmp\ 2399}# + (lambda (#{a\ 2396}# + #{init\ 2397}# + #{k\ 2398}# + #{b\ 2399}#) + (#{key\ 2232}# + #{b\ 2399}# + #{req\ 2342}# + #{opt\ 2343}# + (cons (list #{k\ 2398}# + #{a\ 2396}# + #{init\ 2397}#) + #{rkey\ 2344}#))) + #{tmp\ 2381}#) + (let ((#{tmp\ 2400}# ($sc-dispatch - #{tmp\ 2348}# + #{tmp\ 2349}# '(any)))) - (if (if #{tmp\ 2399}# + (if (if #{tmp\ 2400}# (@apply - (lambda (#{aok\ 2401}#) + (lambda (#{aok\ 2402}#) (eq? (syntax->datum - #{aok\ 2401}#) + #{aok\ 2402}#) #:allow-other-keys)) - #{tmp\ 2399}#) + #{tmp\ 2400}#) #f) (@apply - (lambda (#{aok\ 2403}#) - (#{check\ 2235}# - #{req\ 2341}# - #{opt\ 2342}# + (lambda (#{aok\ 2404}#) + (#{check\ 2236}# + #{req\ 2342}# + #{opt\ 2343}# #f (cons #t (reverse - #{rkey\ 2343}#)))) - #{tmp\ 2399}#) - (let ((#{tmp\ 2404}# + #{rkey\ 2344}#)))) + #{tmp\ 2400}#) + (let ((#{tmp\ 2405}# ($sc-dispatch - #{tmp\ 2348}# + #{tmp\ 2349}# '(any any any)))) - (if (if #{tmp\ 2404}# + (if (if #{tmp\ 2405}# (@apply - (lambda (#{aok\ 2408}# - #{a\ 2409}# - #{b\ 2410}#) + (lambda (#{aok\ 2409}# + #{a\ 2410}# + #{b\ 2411}#) (if (eq? (syntax->datum - #{aok\ 2408}#) + #{aok\ 2409}#) #:allow-other-keys) (eq? (syntax->datum - #{a\ 2409}#) + #{a\ 2410}#) #:rest) #f)) - #{tmp\ 2404}#) + #{tmp\ 2405}#) #f) (@apply - (lambda (#{aok\ 2416}# - #{a\ 2417}# - #{b\ 2418}#) - (#{rest\ 2233}# - #{b\ 2418}# - #{req\ 2341}# - #{opt\ 2342}# + (lambda (#{aok\ 2417}# + #{a\ 2418}# + #{b\ 2419}#) + (#{rest\ 2234}# + #{b\ 2419}# + #{req\ 2342}# + #{opt\ 2343}# (cons #t (reverse - #{rkey\ 2343}#)))) - #{tmp\ 2404}#) - (let ((#{tmp\ 2419}# + #{rkey\ 2344}#)))) + #{tmp\ 2405}#) + (let ((#{tmp\ 2420}# ($sc-dispatch - #{tmp\ 2348}# + #{tmp\ 2349}# '(any . any)))) - (if (if #{tmp\ 2419}# + (if (if #{tmp\ 2420}# (@apply - (lambda (#{aok\ 2422}# - #{r\ 2423}#) + (lambda (#{aok\ 2423}# + #{r\ 2424}#) (if (eq? (syntax->datum - #{aok\ 2422}#) + #{aok\ 2423}#) #:allow-other-keys) - (#{id?\ 387}# - #{r\ 2423}#) + (#{id?\ 388}# + #{r\ 2424}#) #f)) - #{tmp\ 2419}#) + #{tmp\ 2420}#) #f) (@apply - (lambda (#{aok\ 2428}# - #{r\ 2429}#) - (#{rest\ 2233}# - #{r\ 2429}# - #{req\ 2341}# - #{opt\ 2342}# + (lambda (#{aok\ 2429}# + #{r\ 2430}#) + (#{rest\ 2234}# + #{r\ 2430}# + #{req\ 2342}# + #{opt\ 2343}# (cons #t (reverse - #{rkey\ 2343}#)))) - #{tmp\ 2419}#) - (let ((#{tmp\ 2430}# + #{rkey\ 2344}#)))) + #{tmp\ 2420}#) + (let ((#{tmp\ 2431}# ($sc-dispatch - #{tmp\ 2348}# + #{tmp\ 2349}# '(any any)))) - (if (if #{tmp\ 2430}# + (if (if #{tmp\ 2431}# (@apply - (lambda (#{a\ 2433}# - #{b\ 2434}#) + (lambda (#{a\ 2434}# + #{b\ 2435}#) (eq? (syntax->datum - #{a\ 2433}#) + #{a\ 2434}#) #:rest)) - #{tmp\ 2430}#) + #{tmp\ 2431}#) #f) (@apply - (lambda (#{a\ 2437}# - #{b\ 2438}#) - (#{rest\ 2233}# - #{b\ 2438}# - #{req\ 2341}# - #{opt\ 2342}# + (lambda (#{a\ 2438}# + #{b\ 2439}#) + (#{rest\ 2234}# + #{b\ 2439}# + #{req\ 2342}# + #{opt\ 2343}# (cons #f (reverse - #{rkey\ 2343}#)))) - #{tmp\ 2430}#) - (let ((#{tmp\ 2439}# - (list #{tmp\ 2348}#))) - (if (if #{tmp\ 2439}# + #{rkey\ 2344}#)))) + #{tmp\ 2431}#) + (let ((#{tmp\ 2440}# + (list #{tmp\ 2349}#))) + (if (if #{tmp\ 2440}# (@apply - (lambda (#{r\ 2441}#) - (#{id?\ 387}# - #{r\ 2441}#)) - #{tmp\ 2439}#) + (lambda (#{r\ 2442}#) + (#{id?\ 388}# + #{r\ 2442}#)) + #{tmp\ 2440}#) #f) (@apply - (lambda (#{r\ 2443}#) - (#{rest\ 2233}# - #{r\ 2443}# - #{req\ 2341}# - #{opt\ 2342}# + (lambda (#{r\ 2444}#) + (#{rest\ 2234}# + #{r\ 2444}# + #{req\ 2342}# + #{opt\ 2343}# (cons #f (reverse - #{rkey\ 2343}#)))) - #{tmp\ 2439}#) - (let ((#{else\ 2445}# - #{tmp\ 2348}#)) + #{rkey\ 2344}#)))) + #{tmp\ 2440}#) + (let ((#{else\ 2446}# + #{tmp\ 2349}#)) (syntax-violation 'lambda* "invalid keyword argument list" - #{orig-args\ 2224}# - #{args\ 2340}#))))))))))))))))))))))) - (#{rest\ 2233}# - (lambda (#{args\ 2446}# - #{req\ 2447}# - #{opt\ 2448}# - #{kw\ 2449}#) - (let ((#{tmp\ 2454}# #{args\ 2446}#)) - (let ((#{tmp\ 2455}# (list #{tmp\ 2454}#))) - (if (if #{tmp\ 2455}# + #{orig-args\ 2225}# + #{args\ 2341}#))))))))))))))))))))))) + (#{rest\ 2234}# + (lambda (#{args\ 2447}# + #{req\ 2448}# + #{opt\ 2449}# + #{kw\ 2450}#) + (let ((#{tmp\ 2455}# #{args\ 2447}#)) + (let ((#{tmp\ 2456}# (list #{tmp\ 2455}#))) + (if (if #{tmp\ 2456}# (@apply - (lambda (#{r\ 2457}#) - (#{id?\ 387}# #{r\ 2457}#)) - #{tmp\ 2455}#) + (lambda (#{r\ 2458}#) + (#{id?\ 388}# #{r\ 2458}#)) + #{tmp\ 2456}#) #f) (@apply - (lambda (#{r\ 2459}#) - (#{check\ 2235}# - #{req\ 2447}# - #{opt\ 2448}# - #{r\ 2459}# - #{kw\ 2449}#)) - #{tmp\ 2455}#) - (let ((#{else\ 2461}# #{tmp\ 2454}#)) + (lambda (#{r\ 2460}#) + (#{check\ 2236}# + #{req\ 2448}# + #{opt\ 2449}# + #{r\ 2460}# + #{kw\ 2450}#)) + #{tmp\ 2456}#) + (let ((#{else\ 2462}# #{tmp\ 2455}#)) (syntax-violation 'lambda* "invalid rest argument" - #{orig-args\ 2224}# - #{args\ 2446}#))))))) - (#{check\ 2235}# - (lambda (#{req\ 2462}# - #{opt\ 2463}# - #{rest\ 2464}# - #{kw\ 2465}#) - (if (#{distinct-bound-ids?\ 452}# + #{orig-args\ 2225}# + #{args\ 2447}#))))))) + (#{check\ 2236}# + (lambda (#{req\ 2463}# + #{opt\ 2464}# + #{rest\ 2465}# + #{kw\ 2466}#) + (if (#{distinct-bound-ids?\ 453}# (append - #{req\ 2462}# - (map car #{opt\ 2463}#) - (if #{rest\ 2464}# - (list #{rest\ 2464}#) + #{req\ 2463}# + (map car #{opt\ 2464}#) + (if #{rest\ 2465}# + (list #{rest\ 2465}#) '()) - (if (pair? #{kw\ 2465}#) - (map cadr (cdr #{kw\ 2465}#)) + (if (pair? #{kw\ 2466}#) + (map cadr (cdr #{kw\ 2466}#)) '()))) (values - #{req\ 2462}# - #{opt\ 2463}# - #{rest\ 2464}# - #{kw\ 2465}#) + #{req\ 2463}# + #{opt\ 2464}# + #{rest\ 2465}# + #{kw\ 2466}#) (syntax-violation 'lambda* "duplicate identifier in argument list" - #{orig-args\ 2224}#))))) + #{orig-args\ 2225}#))))) (begin - (#{req\ 2227}# #{orig-args\ 2224}# (quote ())))))) - (#{chi-lambda-case\ 496}# - (lambda (#{e\ 2473}# - #{r\ 2474}# - #{w\ 2475}# - #{s\ 2476}# - #{mod\ 2477}# - #{get-formals\ 2478}# - #{clauses\ 2479}#) + (#{req\ 2228}# #{orig-args\ 2225}# (quote ())))))) + (#{chi-lambda-case\ 497}# + (lambda (#{e\ 2474}# + #{r\ 2475}# + #{w\ 2476}# + #{s\ 2477}# + #{mod\ 2478}# + #{get-formals\ 2479}# + #{clauses\ 2480}#) (letrec* - ((#{expand-req\ 2488}# - (lambda (#{req\ 2495}# - #{opt\ 2496}# - #{rest\ 2497}# - #{kw\ 2498}# - #{body\ 2499}#) + ((#{expand-req\ 2489}# + (lambda (#{req\ 2496}# + #{opt\ 2497}# + #{rest\ 2498}# + #{kw\ 2499}# + #{body\ 2500}#) (begin - (let ((#{vars\ 2507}# - (map #{gen-var\ 500}# #{req\ 2495}#)) - (#{labels\ 2508}# - (#{gen-labels\ 405}# #{req\ 2495}#))) + (let ((#{vars\ 2508}# + (map #{gen-var\ 501}# #{req\ 2496}#)) + (#{labels\ 2509}# + (#{gen-labels\ 406}# #{req\ 2496}#))) (begin - (let ((#{r*\ 2511}# - (#{extend-var-env\ 377}# - #{labels\ 2508}# - #{vars\ 2507}# - #{r\ 2474}#)) - (#{w*\ 2512}# - (#{make-binding-wrap\ 434}# - #{req\ 2495}# - #{labels\ 2508}# - #{w\ 2475}#))) - (#{expand-opt\ 2490}# - (map syntax->datum #{req\ 2495}#) - #{opt\ 2496}# - #{rest\ 2497}# - #{kw\ 2498}# - #{body\ 2499}# - (reverse #{vars\ 2507}#) - #{r*\ 2511}# - #{w*\ 2512}# + (let ((#{r*\ 2512}# + (#{extend-var-env\ 378}# + #{labels\ 2509}# + #{vars\ 2508}# + #{r\ 2475}#)) + (#{w*\ 2513}# + (#{make-binding-wrap\ 435}# + #{req\ 2496}# + #{labels\ 2509}# + #{w\ 2476}#))) + (#{expand-opt\ 2491}# + (map syntax->datum #{req\ 2496}#) + #{opt\ 2497}# + #{rest\ 2498}# + #{kw\ 2499}# + #{body\ 2500}# + (reverse #{vars\ 2508}#) + #{r*\ 2512}# + #{w*\ 2513}# '() '()))))))) - (#{expand-opt\ 2490}# - (lambda (#{req\ 2513}# - #{opt\ 2514}# - #{rest\ 2515}# - #{kw\ 2516}# - #{body\ 2517}# - #{vars\ 2518}# - #{r*\ 2519}# - #{w*\ 2520}# - #{out\ 2521}# - #{inits\ 2522}#) - (if (pair? #{opt\ 2514}#) - (let ((#{tmp\ 2535}# (car #{opt\ 2514}#))) - (let ((#{tmp\ 2536}# + (#{expand-opt\ 2491}# + (lambda (#{req\ 2514}# + #{opt\ 2515}# + #{rest\ 2516}# + #{kw\ 2517}# + #{body\ 2518}# + #{vars\ 2519}# + #{r*\ 2520}# + #{w*\ 2521}# + #{out\ 2522}# + #{inits\ 2523}#) + (if (pair? #{opt\ 2515}#) + (let ((#{tmp\ 2536}# (car #{opt\ 2515}#))) + (let ((#{tmp\ 2537}# ($sc-dispatch - #{tmp\ 2535}# + #{tmp\ 2536}# '(any any)))) - (if #{tmp\ 2536}# + (if #{tmp\ 2537}# (@apply - (lambda (#{id\ 2539}# #{i\ 2540}#) + (lambda (#{id\ 2540}# #{i\ 2541}#) (begin - (let ((#{v\ 2543}# - (#{gen-var\ 500}# #{id\ 2539}#))) + (let ((#{v\ 2544}# + (#{gen-var\ 501}# #{id\ 2540}#))) (begin - (let ((#{l\ 2545}# - (#{gen-labels\ 405}# - (list #{v\ 2543}#)))) + (let ((#{l\ 2546}# + (#{gen-labels\ 406}# + (list #{v\ 2544}#)))) (begin - (let ((#{r**\ 2547}# - (#{extend-var-env\ 377}# - #{l\ 2545}# - (list #{v\ 2543}#) - #{r*\ 2519}#))) + (let ((#{r**\ 2548}# + (#{extend-var-env\ 378}# + #{l\ 2546}# + (list #{v\ 2544}#) + #{r*\ 2520}#))) (begin - (let ((#{w**\ 2549}# - (#{make-binding-wrap\ 434}# - (list #{id\ 2539}#) - #{l\ 2545}# - #{w*\ 2520}#))) - (#{expand-opt\ 2490}# - #{req\ 2513}# - (cdr #{opt\ 2514}#) - #{rest\ 2515}# - #{kw\ 2516}# - #{body\ 2517}# - (cons #{v\ 2543}# - #{vars\ 2518}#) - #{r**\ 2547}# - #{w**\ 2549}# + (let ((#{w**\ 2550}# + (#{make-binding-wrap\ 435}# + (list #{id\ 2540}#) + #{l\ 2546}# + #{w*\ 2521}#))) + (#{expand-opt\ 2491}# + #{req\ 2514}# + (cdr #{opt\ 2515}#) + #{rest\ 2516}# + #{kw\ 2517}# + #{body\ 2518}# + (cons #{v\ 2544}# + #{vars\ 2519}#) + #{r**\ 2548}# + #{w**\ 2550}# (cons (syntax->datum - #{id\ 2539}#) - #{out\ 2521}#) - (cons (#{chi\ 472}# - #{i\ 2540}# - #{r*\ 2519}# - #{w*\ 2520}# - #{mod\ 2477}#) - #{inits\ 2522}#))))))))))) - #{tmp\ 2536}#) + #{id\ 2540}#) + #{out\ 2522}#) + (cons (#{chi\ 473}# + #{i\ 2541}# + #{r*\ 2520}# + #{w*\ 2521}# + #{mod\ 2478}#) + #{inits\ 2523}#))))))))))) + #{tmp\ 2537}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 2535}#)))) - (if #{rest\ 2515}# + #{tmp\ 2536}#)))) + (if #{rest\ 2516}# (begin - (let ((#{v\ 2554}# - (#{gen-var\ 500}# #{rest\ 2515}#))) + (let ((#{v\ 2555}# + (#{gen-var\ 501}# #{rest\ 2516}#))) (begin - (let ((#{l\ 2556}# - (#{gen-labels\ 405}# - (list #{v\ 2554}#)))) + (let ((#{l\ 2557}# + (#{gen-labels\ 406}# + (list #{v\ 2555}#)))) (begin - (let ((#{r*\ 2558}# - (#{extend-var-env\ 377}# - #{l\ 2556}# - (list #{v\ 2554}#) - #{r*\ 2519}#))) + (let ((#{r*\ 2559}# + (#{extend-var-env\ 378}# + #{l\ 2557}# + (list #{v\ 2555}#) + #{r*\ 2520}#))) (begin - (let ((#{w*\ 2560}# - (#{make-binding-wrap\ 434}# - (list #{rest\ 2515}#) - #{l\ 2556}# - #{w*\ 2520}#))) - (#{expand-kw\ 2492}# - #{req\ 2513}# - (if (pair? #{out\ 2521}#) - (reverse #{out\ 2521}#) + (let ((#{w*\ 2561}# + (#{make-binding-wrap\ 435}# + (list #{rest\ 2516}#) + #{l\ 2557}# + #{w*\ 2521}#))) + (#{expand-kw\ 2493}# + #{req\ 2514}# + (if (pair? #{out\ 2522}#) + (reverse #{out\ 2522}#) #f) - (syntax->datum #{rest\ 2515}#) - (if (pair? #{kw\ 2516}#) - (cdr #{kw\ 2516}#) - #{kw\ 2516}#) - #{body\ 2517}# - (cons #{v\ 2554}# #{vars\ 2518}#) - #{r*\ 2558}# - #{w*\ 2560}# - (if (pair? #{kw\ 2516}#) - (car #{kw\ 2516}#) + (syntax->datum #{rest\ 2516}#) + (if (pair? #{kw\ 2517}#) + (cdr #{kw\ 2517}#) + #{kw\ 2517}#) + #{body\ 2518}# + (cons #{v\ 2555}# #{vars\ 2519}#) + #{r*\ 2559}# + #{w*\ 2561}# + (if (pair? #{kw\ 2517}#) + (car #{kw\ 2517}#) #f) '() - #{inits\ 2522}#))))))))) - (#{expand-kw\ 2492}# - #{req\ 2513}# - (if (pair? #{out\ 2521}#) - (reverse #{out\ 2521}#) + #{inits\ 2523}#))))))))) + (#{expand-kw\ 2493}# + #{req\ 2514}# + (if (pair? #{out\ 2522}#) + (reverse #{out\ 2522}#) #f) #f - (if (pair? #{kw\ 2516}#) - (cdr #{kw\ 2516}#) - #{kw\ 2516}#) - #{body\ 2517}# - #{vars\ 2518}# - #{r*\ 2519}# - #{w*\ 2520}# - (if (pair? #{kw\ 2516}#) (car #{kw\ 2516}#) #f) + (if (pair? #{kw\ 2517}#) + (cdr #{kw\ 2517}#) + #{kw\ 2517}#) + #{body\ 2518}# + #{vars\ 2519}# + #{r*\ 2520}# + #{w*\ 2521}# + (if (pair? #{kw\ 2517}#) (car #{kw\ 2517}#) #f) '() - #{inits\ 2522}#))))) - (#{expand-kw\ 2492}# - (lambda (#{req\ 2562}# - #{opt\ 2563}# - #{rest\ 2564}# - #{kw\ 2565}# - #{body\ 2566}# - #{vars\ 2567}# - #{r*\ 2568}# - #{w*\ 2569}# - #{aok\ 2570}# - #{out\ 2571}# - #{inits\ 2572}#) - (if (pair? #{kw\ 2565}#) - (let ((#{tmp\ 2586}# (car #{kw\ 2565}#))) - (let ((#{tmp\ 2587}# + #{inits\ 2523}#))))) + (#{expand-kw\ 2493}# + (lambda (#{req\ 2563}# + #{opt\ 2564}# + #{rest\ 2565}# + #{kw\ 2566}# + #{body\ 2567}# + #{vars\ 2568}# + #{r*\ 2569}# + #{w*\ 2570}# + #{aok\ 2571}# + #{out\ 2572}# + #{inits\ 2573}#) + (if (pair? #{kw\ 2566}#) + (let ((#{tmp\ 2587}# (car #{kw\ 2566}#))) + (let ((#{tmp\ 2588}# ($sc-dispatch - #{tmp\ 2586}# + #{tmp\ 2587}# '(any any any)))) - (if #{tmp\ 2587}# + (if #{tmp\ 2588}# (@apply - (lambda (#{k\ 2591}# #{id\ 2592}# #{i\ 2593}#) + (lambda (#{k\ 2592}# #{id\ 2593}# #{i\ 2594}#) (begin - (let ((#{v\ 2596}# - (#{gen-var\ 500}# #{id\ 2592}#))) + (let ((#{v\ 2597}# + (#{gen-var\ 501}# #{id\ 2593}#))) (begin - (let ((#{l\ 2598}# - (#{gen-labels\ 405}# - (list #{v\ 2596}#)))) + (let ((#{l\ 2599}# + (#{gen-labels\ 406}# + (list #{v\ 2597}#)))) (begin - (let ((#{r**\ 2600}# - (#{extend-var-env\ 377}# - #{l\ 2598}# - (list #{v\ 2596}#) - #{r*\ 2568}#))) + (let ((#{r**\ 2601}# + (#{extend-var-env\ 378}# + #{l\ 2599}# + (list #{v\ 2597}#) + #{r*\ 2569}#))) (begin - (let ((#{w**\ 2602}# - (#{make-binding-wrap\ 434}# - (list #{id\ 2592}#) - #{l\ 2598}# - #{w*\ 2569}#))) - (#{expand-kw\ 2492}# - #{req\ 2562}# - #{opt\ 2563}# - #{rest\ 2564}# - (cdr #{kw\ 2565}#) - #{body\ 2566}# - (cons #{v\ 2596}# - #{vars\ 2567}#) - #{r**\ 2600}# - #{w**\ 2602}# - #{aok\ 2570}# + (let ((#{w**\ 2603}# + (#{make-binding-wrap\ 435}# + (list #{id\ 2593}#) + #{l\ 2599}# + #{w*\ 2570}#))) + (#{expand-kw\ 2493}# + #{req\ 2563}# + #{opt\ 2564}# + #{rest\ 2565}# + (cdr #{kw\ 2566}#) + #{body\ 2567}# + (cons #{v\ 2597}# + #{vars\ 2568}#) + #{r**\ 2601}# + #{w**\ 2603}# + #{aok\ 2571}# (cons (list (syntax->datum - #{k\ 2591}#) + #{k\ 2592}#) (syntax->datum - #{id\ 2592}#) - #{v\ 2596}#) - #{out\ 2571}#) - (cons (#{chi\ 472}# - #{i\ 2593}# - #{r*\ 2568}# - #{w*\ 2569}# - #{mod\ 2477}#) - #{inits\ 2572}#))))))))))) - #{tmp\ 2587}#) + #{id\ 2593}#) + #{v\ 2597}#) + #{out\ 2572}#) + (cons (#{chi\ 473}# + #{i\ 2594}# + #{r*\ 2569}# + #{w*\ 2570}# + #{mod\ 2478}#) + #{inits\ 2573}#))))))))))) + #{tmp\ 2588}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 2586}#)))) - (#{expand-body\ 2494}# - #{req\ 2562}# - #{opt\ 2563}# - #{rest\ 2564}# + #{tmp\ 2587}#)))) + (#{expand-body\ 2495}# + #{req\ 2563}# + #{opt\ 2564}# + #{rest\ 2565}# (if (begin - (let ((#{t\ 2606}# #{aok\ 2570}#)) - (if #{t\ 2606}# - #{t\ 2606}# - (pair? #{out\ 2571}#)))) - (cons #{aok\ 2570}# (reverse #{out\ 2571}#)) + (let ((#{t\ 2607}# #{aok\ 2571}#)) + (if #{t\ 2607}# + #{t\ 2607}# + (pair? #{out\ 2572}#)))) + (cons #{aok\ 2571}# (reverse #{out\ 2572}#)) #f) - #{body\ 2566}# - (reverse #{vars\ 2567}#) - #{r*\ 2568}# - #{w*\ 2569}# - (reverse #{inits\ 2572}#) + #{body\ 2567}# + (reverse #{vars\ 2568}#) + #{r*\ 2569}# + #{w*\ 2570}# + (reverse #{inits\ 2573}#) '())))) - (#{expand-body\ 2494}# - (lambda (#{req\ 2608}# - #{opt\ 2609}# - #{rest\ 2610}# - #{kw\ 2611}# - #{body\ 2612}# - #{vars\ 2613}# - #{r*\ 2614}# - #{w*\ 2615}# - #{inits\ 2616}# - #{meta\ 2617}#) - (let ((#{tmp\ 2628}# #{body\ 2612}#)) - (let ((#{tmp\ 2629}# + (#{expand-body\ 2495}# + (lambda (#{req\ 2609}# + #{opt\ 2610}# + #{rest\ 2611}# + #{kw\ 2612}# + #{body\ 2613}# + #{vars\ 2614}# + #{r*\ 2615}# + #{w*\ 2616}# + #{inits\ 2617}# + #{meta\ 2618}#) + (let ((#{tmp\ 2629}# #{body\ 2613}#)) + (let ((#{tmp\ 2630}# ($sc-dispatch - #{tmp\ 2628}# + #{tmp\ 2629}# '(any any . each-any)))) - (if (if #{tmp\ 2629}# + (if (if #{tmp\ 2630}# (@apply - (lambda (#{docstring\ 2633}# - #{e1\ 2634}# - #{e2\ 2635}#) + (lambda (#{docstring\ 2634}# + #{e1\ 2635}# + #{e2\ 2636}#) (string? - (syntax->datum #{docstring\ 2633}#))) - #{tmp\ 2629}#) + (syntax->datum #{docstring\ 2634}#))) + #{tmp\ 2630}#) #f) (@apply - (lambda (#{docstring\ 2639}# - #{e1\ 2640}# - #{e2\ 2641}#) - (#{expand-body\ 2494}# - #{req\ 2608}# - #{opt\ 2609}# - #{rest\ 2610}# - #{kw\ 2611}# - (cons #{e1\ 2640}# #{e2\ 2641}#) - #{vars\ 2613}# - #{r*\ 2614}# - #{w*\ 2615}# - #{inits\ 2616}# + (lambda (#{docstring\ 2640}# + #{e1\ 2641}# + #{e2\ 2642}#) + (#{expand-body\ 2495}# + #{req\ 2609}# + #{opt\ 2610}# + #{rest\ 2611}# + #{kw\ 2612}# + (cons #{e1\ 2641}# #{e2\ 2642}#) + #{vars\ 2614}# + #{r*\ 2615}# + #{w*\ 2616}# + #{inits\ 2617}# (append - #{meta\ 2617}# + #{meta\ 2618}# (list (cons 'documentation (syntax->datum - #{docstring\ 2639}#)))))) - #{tmp\ 2629}#) - (let ((#{tmp\ 2644}# + #{docstring\ 2640}#)))))) + #{tmp\ 2630}#) + (let ((#{tmp\ 2645}# ($sc-dispatch - #{tmp\ 2628}# + #{tmp\ 2629}# '(#(vector #(each (any . any))) any . each-any)))) - (if #{tmp\ 2644}# + (if #{tmp\ 2645}# (@apply - (lambda (#{k\ 2649}# - #{v\ 2650}# - #{e1\ 2651}# - #{e2\ 2652}#) - (#{expand-body\ 2494}# - #{req\ 2608}# - #{opt\ 2609}# - #{rest\ 2610}# - #{kw\ 2611}# - (cons #{e1\ 2651}# #{e2\ 2652}#) - #{vars\ 2613}# - #{r*\ 2614}# - #{w*\ 2615}# - #{inits\ 2616}# + (lambda (#{k\ 2650}# + #{v\ 2651}# + #{e1\ 2652}# + #{e2\ 2653}#) + (#{expand-body\ 2495}# + #{req\ 2609}# + #{opt\ 2610}# + #{rest\ 2611}# + #{kw\ 2612}# + (cons #{e1\ 2652}# #{e2\ 2653}#) + #{vars\ 2614}# + #{r*\ 2615}# + #{w*\ 2616}# + #{inits\ 2617}# (append - #{meta\ 2617}# + #{meta\ 2618}# (syntax->datum - (map cons #{k\ 2649}# #{v\ 2650}#))))) - #{tmp\ 2644}#) - (let ((#{tmp\ 2656}# + (map cons #{k\ 2650}# #{v\ 2651}#))))) + #{tmp\ 2645}#) + (let ((#{tmp\ 2657}# ($sc-dispatch - #{tmp\ 2628}# + #{tmp\ 2629}# '(any . each-any)))) - (if #{tmp\ 2656}# + (if #{tmp\ 2657}# (@apply - (lambda (#{e1\ 2659}# #{e2\ 2660}#) + (lambda (#{e1\ 2660}# #{e2\ 2661}#) (values - #{meta\ 2617}# - #{req\ 2608}# - #{opt\ 2609}# - #{rest\ 2610}# - #{kw\ 2611}# - #{inits\ 2616}# - #{vars\ 2613}# - (#{chi-body\ 480}# - (cons #{e1\ 2659}# #{e2\ 2660}#) - (#{source-wrap\ 458}# - #{e\ 2473}# - #{w\ 2475}# - #{s\ 2476}# - #{mod\ 2477}#) - #{r*\ 2614}# - #{w*\ 2615}# - #{mod\ 2477}#))) - #{tmp\ 2656}#) + #{meta\ 2618}# + #{req\ 2609}# + #{opt\ 2610}# + #{rest\ 2611}# + #{kw\ 2612}# + #{inits\ 2617}# + #{vars\ 2614}# + (#{chi-body\ 481}# + (cons #{e1\ 2660}# #{e2\ 2661}#) + (#{source-wrap\ 459}# + #{e\ 2474}# + #{w\ 2476}# + #{s\ 2477}# + #{mod\ 2478}#) + #{r*\ 2615}# + #{w*\ 2616}# + #{mod\ 2478}#))) + #{tmp\ 2657}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 2628}#))))))))))) + #{tmp\ 2629}#))))))))))) (begin - (let ((#{tmp\ 2662}# #{clauses\ 2479}#)) - (let ((#{tmp\ 2663}# - ($sc-dispatch #{tmp\ 2662}# (quote ())))) - (if #{tmp\ 2663}# + (let ((#{tmp\ 2663}# #{clauses\ 2480}#)) + (let ((#{tmp\ 2664}# + ($sc-dispatch #{tmp\ 2663}# (quote ())))) + (if #{tmp\ 2664}# (@apply (lambda () (values (quote ()) #f)) - #{tmp\ 2663}#) - (let ((#{tmp\ 2664}# + #{tmp\ 2664}#) + (let ((#{tmp\ 2665}# ($sc-dispatch - #{tmp\ 2662}# + #{tmp\ 2663}# '((any any . each-any) . #(each (any any . each-any)))))) - (if #{tmp\ 2664}# + (if #{tmp\ 2665}# (@apply - (lambda (#{args\ 2671}# - #{e1\ 2672}# - #{e2\ 2673}# - #{args*\ 2674}# - #{e1*\ 2675}# - #{e2*\ 2676}#) + (lambda (#{args\ 2672}# + #{e1\ 2673}# + #{e2\ 2674}# + #{args*\ 2675}# + #{e1*\ 2676}# + #{e2*\ 2677}#) (call-with-values (lambda () - (#{get-formals\ 2478}# #{args\ 2671}#)) - (lambda (#{req\ 2677}# - #{opt\ 2678}# - #{rest\ 2679}# - #{kw\ 2680}#) + (#{get-formals\ 2479}# #{args\ 2672}#)) + (lambda (#{req\ 2678}# + #{opt\ 2679}# + #{rest\ 2680}# + #{kw\ 2681}#) (call-with-values (lambda () - (#{expand-req\ 2488}# - #{req\ 2677}# - #{opt\ 2678}# - #{rest\ 2679}# - #{kw\ 2680}# - (cons #{e1\ 2672}# #{e2\ 2673}#))) - (lambda (#{meta\ 2686}# - #{req\ 2687}# - #{opt\ 2688}# - #{rest\ 2689}# - #{kw\ 2690}# - #{inits\ 2691}# - #{vars\ 2692}# - #{body\ 2693}#) + (#{expand-req\ 2489}# + #{req\ 2678}# + #{opt\ 2679}# + #{rest\ 2680}# + #{kw\ 2681}# + (cons #{e1\ 2673}# #{e2\ 2674}#))) + (lambda (#{meta\ 2687}# + #{req\ 2688}# + #{opt\ 2689}# + #{rest\ 2690}# + #{kw\ 2691}# + #{inits\ 2692}# + #{vars\ 2693}# + #{body\ 2694}#) (call-with-values (lambda () - (#{chi-lambda-case\ 496}# - #{e\ 2473}# - #{r\ 2474}# - #{w\ 2475}# - #{s\ 2476}# - #{mod\ 2477}# - #{get-formals\ 2478}# - (map (lambda (#{tmp\ 2704}# - #{tmp\ 2703}# - #{tmp\ 2702}#) - (cons #{tmp\ 2702}# - (cons #{tmp\ 2703}# - #{tmp\ 2704}#))) - #{e2*\ 2676}# - #{e1*\ 2675}# - #{args*\ 2674}#))) - (lambda (#{meta*\ 2706}# - #{else*\ 2707}#) + (#{chi-lambda-case\ 497}# + #{e\ 2474}# + #{r\ 2475}# + #{w\ 2476}# + #{s\ 2477}# + #{mod\ 2478}# + #{get-formals\ 2479}# + (map (lambda (#{tmp\ 2705}# + #{tmp\ 2704}# + #{tmp\ 2703}#) + (cons #{tmp\ 2703}# + (cons #{tmp\ 2704}# + #{tmp\ 2705}#))) + #{e2*\ 2677}# + #{e1*\ 2676}# + #{args*\ 2675}#))) + (lambda (#{meta*\ 2707}# + #{else*\ 2708}#) (values (append - #{meta\ 2686}# - #{meta*\ 2706}#) - (#{build-lambda-case\ 333}# - #{s\ 2476}# - #{req\ 2687}# - #{opt\ 2688}# - #{rest\ 2689}# - #{kw\ 2690}# - #{inits\ 2691}# - #{vars\ 2692}# - #{body\ 2693}# - #{else*\ 2707}#))))))))) - #{tmp\ 2664}#) + #{meta\ 2687}# + #{meta*\ 2707}#) + (#{build-lambda-case\ 334}# + #{s\ 2477}# + #{req\ 2688}# + #{opt\ 2689}# + #{rest\ 2690}# + #{kw\ 2691}# + #{inits\ 2692}# + #{vars\ 2693}# + #{body\ 2694}# + #{else*\ 2708}#))))))))) + #{tmp\ 2665}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 2662}#)))))))))) - (#{strip\ 498}# - (lambda (#{x\ 2710}# #{w\ 2711}#) + #{tmp\ 2663}#)))))))))) + (#{strip\ 499}# + (lambda (#{x\ 2711}# #{w\ 2712}#) (if (memq 'top - (#{wrap-marks\ 394}# #{w\ 2711}#)) - #{x\ 2710}# + (#{wrap-marks\ 395}# #{w\ 2712}#)) + #{x\ 2711}# (letrec* - ((#{f\ 2717}# - (lambda (#{x\ 2718}#) - (if (#{syntax-object?\ 351}# #{x\ 2718}#) - (#{strip\ 498}# - (#{syntax-object-expression\ 353}# #{x\ 2718}#) - (#{syntax-object-wrap\ 355}# #{x\ 2718}#)) - (if (pair? #{x\ 2718}#) + ((#{f\ 2718}# + (lambda (#{x\ 2719}#) + (if (#{syntax-object?\ 352}# #{x\ 2719}#) + (#{strip\ 499}# + (#{syntax-object-expression\ 354}# #{x\ 2719}#) + (#{syntax-object-wrap\ 356}# #{x\ 2719}#)) + (if (pair? #{x\ 2719}#) (begin - (let ((#{a\ 2725}# (#{f\ 2717}# (car #{x\ 2718}#))) - (#{d\ 2726}# - (#{f\ 2717}# (cdr #{x\ 2718}#)))) - (if (if (eq? #{a\ 2725}# (car #{x\ 2718}#)) - (eq? #{d\ 2726}# (cdr #{x\ 2718}#)) + (let ((#{a\ 2726}# (#{f\ 2718}# (car #{x\ 2719}#))) + (#{d\ 2727}# + (#{f\ 2718}# (cdr #{x\ 2719}#)))) + (if (if (eq? #{a\ 2726}# (car #{x\ 2719}#)) + (eq? #{d\ 2727}# (cdr #{x\ 2719}#)) #f) - #{x\ 2718}# - (cons #{a\ 2725}# #{d\ 2726}#)))) - (if (vector? #{x\ 2718}#) + #{x\ 2719}# + (cons #{a\ 2726}# #{d\ 2727}#)))) + (if (vector? #{x\ 2719}#) (begin - (let ((#{old\ 2732}# (vector->list #{x\ 2718}#))) + (let ((#{old\ 2733}# (vector->list #{x\ 2719}#))) (begin - (let ((#{new\ 2734}# - (map #{f\ 2717}# #{old\ 2732}#))) - (if (#{and-map*\ 35}# + (let ((#{new\ 2735}# + (map #{f\ 2718}# #{old\ 2733}#))) + (if (#{and-map*\ 36}# eq? - #{old\ 2732}# - #{new\ 2734}#) - #{x\ 2718}# - (list->vector #{new\ 2734}#)))))) - #{x\ 2718}#)))))) - (begin (#{f\ 2717}# #{x\ 2710}#)))))) - (#{gen-var\ 500}# - (lambda (#{id\ 2736}#) + #{old\ 2733}# + #{new\ 2735}#) + #{x\ 2719}# + (list->vector #{new\ 2735}#)))))) + #{x\ 2719}#)))))) + (begin (#{f\ 2718}# #{x\ 2711}#)))))) + (#{gen-var\ 501}# + (lambda (#{id\ 2737}#) (begin - (let ((#{id\ 2739}# - (if (#{syntax-object?\ 351}# #{id\ 2736}#) - (#{syntax-object-expression\ 353}# #{id\ 2736}#) - #{id\ 2736}#))) + (let ((#{id\ 2740}# + (if (#{syntax-object?\ 352}# #{id\ 2737}#) + (#{syntax-object-expression\ 354}# #{id\ 2737}#) + #{id\ 2737}#))) (gensym - (string-append (symbol->string #{id\ 2739}#) " ")))))) - (#{lambda-var-list\ 502}# - (lambda (#{vars\ 2741}#) + (string-append (symbol->string #{id\ 2740}#) " ")))))) + (#{lambda-var-list\ 503}# + (lambda (#{vars\ 2742}#) (letrec* - ((#{lvl\ 2747}# - (lambda (#{vars\ 2748}# #{ls\ 2749}# #{w\ 2750}#) - (if (pair? #{vars\ 2748}#) - (#{lvl\ 2747}# - (cdr #{vars\ 2748}#) - (cons (#{wrap\ 456}# - (car #{vars\ 2748}#) - #{w\ 2750}# + ((#{lvl\ 2748}# + (lambda (#{vars\ 2749}# #{ls\ 2750}# #{w\ 2751}#) + (if (pair? #{vars\ 2749}#) + (#{lvl\ 2748}# + (cdr #{vars\ 2749}#) + (cons (#{wrap\ 457}# + (car #{vars\ 2749}#) + #{w\ 2751}# #f) - #{ls\ 2749}#) - #{w\ 2750}#) - (if (#{id?\ 387}# #{vars\ 2748}#) - (cons (#{wrap\ 456}# #{vars\ 2748}# #{w\ 2750}# #f) - #{ls\ 2749}#) - (if (null? #{vars\ 2748}#) - #{ls\ 2749}# - (if (#{syntax-object?\ 351}# #{vars\ 2748}#) - (#{lvl\ 2747}# - (#{syntax-object-expression\ 353}# - #{vars\ 2748}#) - #{ls\ 2749}# - (#{join-wraps\ 438}# - #{w\ 2750}# - (#{syntax-object-wrap\ 355}# #{vars\ 2748}#))) - (cons #{vars\ 2748}# #{ls\ 2749}#)))))))) + #{ls\ 2750}#) + #{w\ 2751}#) + (if (#{id?\ 388}# #{vars\ 2749}#) + (cons (#{wrap\ 457}# #{vars\ 2749}# #{w\ 2751}# #f) + #{ls\ 2750}#) + (if (null? #{vars\ 2749}#) + #{ls\ 2750}# + (if (#{syntax-object?\ 352}# #{vars\ 2749}#) + (#{lvl\ 2748}# + (#{syntax-object-expression\ 354}# + #{vars\ 2749}#) + #{ls\ 2750}# + (#{join-wraps\ 439}# + #{w\ 2751}# + (#{syntax-object-wrap\ 356}# #{vars\ 2749}#))) + (cons #{vars\ 2749}# #{ls\ 2750}#)))))))) (begin - (#{lvl\ 2747}# - #{vars\ 2741}# + (#{lvl\ 2748}# + #{vars\ 2742}# '() '(()))))))) (begin - (set! #{make-primitive-ref\ 249}# - (lambda (#{src\ 723}# #{name\ 724}#) + (set! #{make-primitive-ref\ 250}# + (lambda (#{src\ 724}# #{name\ 725}#) (make-struct/no-tail (vector-ref %expanded-vtables 2) - #{src\ 723}# - #{name\ 724}#))) - (set! #{fx+\ 288}# +) - (set! #{fx-\ 290}# -) - (set! #{fx=\ 292}# =) - (set! #{fx<\ 294}# <) - (set! #{set-syntax-object-expression!\ 359}# - (lambda (#{x\ 1101}# #{update\ 1102}#) - (vector-set! #{x\ 1101}# 1 #{update\ 1102}#))) - (set! #{set-syntax-object-wrap!\ 361}# - (lambda (#{x\ 1105}# #{update\ 1106}#) - (vector-set! #{x\ 1105}# 2 #{update\ 1106}#))) - (set! #{set-syntax-object-module!\ 363}# - (lambda (#{x\ 1109}# #{update\ 1110}#) - (vector-set! #{x\ 1109}# 3 #{update\ 1110}#))) - (set! #{binding-type\ 370}# car) - (set! #{binding-value\ 372}# cdr) - (set! #{make-wrap\ 392}# cons) - (set! #{wrap-marks\ 394}# car) - (set! #{wrap-subst\ 396}# cdr) - (set! #{ribcage?\ 410}# - (lambda (#{x\ 1187}#) - (if (vector? #{x\ 1187}#) - (if (= (vector-length #{x\ 1187}#) 4) - (eq? (vector-ref #{x\ 1187}# 0) (quote ribcage)) + #{src\ 724}# + #{name\ 725}#))) + (set! #{fx+\ 289}# +) + (set! #{fx-\ 291}# -) + (set! #{fx=\ 293}# =) + (set! #{fx<\ 295}# <) + (set! #{set-syntax-object-expression!\ 360}# + (lambda (#{x\ 1102}# #{update\ 1103}#) + (vector-set! #{x\ 1102}# 1 #{update\ 1103}#))) + (set! #{set-syntax-object-wrap!\ 362}# + (lambda (#{x\ 1106}# #{update\ 1107}#) + (vector-set! #{x\ 1106}# 2 #{update\ 1107}#))) + (set! #{set-syntax-object-module!\ 364}# + (lambda (#{x\ 1110}# #{update\ 1111}#) + (vector-set! #{x\ 1110}# 3 #{update\ 1111}#))) + (set! #{binding-type\ 371}# car) + (set! #{binding-value\ 373}# cdr) + (set! #{make-wrap\ 393}# cons) + (set! #{wrap-marks\ 395}# car) + (set! #{wrap-subst\ 397}# cdr) + (set! #{ribcage?\ 411}# + (lambda (#{x\ 1188}#) + (if (vector? #{x\ 1188}#) + (if (= (vector-length #{x\ 1188}#) 4) + (eq? (vector-ref #{x\ 1188}# 0) (quote ribcage)) #f) #f))) (begin - (#{global-extend\ 383}# + (#{global-extend\ 384}# 'local-syntax 'letrec-syntax #t) - (#{global-extend\ 383}# + (#{global-extend\ 384}# 'local-syntax 'let-syntax #f) - (#{global-extend\ 383}# + (#{global-extend\ 384}# 'core 'fluid-let-syntax - (lambda (#{e\ 2761}# - #{r\ 2762}# - #{w\ 2763}# - #{s\ 2764}# - #{mod\ 2765}#) - (let ((#{tmp\ 2771}# #{e\ 2761}#)) - (let ((#{tmp\ 2772}# + (lambda (#{e\ 2762}# + #{r\ 2763}# + #{w\ 2764}# + #{s\ 2765}# + #{mod\ 2766}#) + (let ((#{tmp\ 2772}# #{e\ 2762}#)) + (let ((#{tmp\ 2773}# ($sc-dispatch - #{tmp\ 2771}# + #{tmp\ 2772}# '(any #(each (any any)) any . each-any)))) - (if (if #{tmp\ 2772}# + (if (if #{tmp\ 2773}# (@apply - (lambda (#{_\ 2778}# - #{var\ 2779}# - #{val\ 2780}# - #{e1\ 2781}# - #{e2\ 2782}#) - (#{valid-bound-ids?\ 450}# #{var\ 2779}#)) - #{tmp\ 2772}#) + (lambda (#{_\ 2779}# + #{var\ 2780}# + #{val\ 2781}# + #{e1\ 2782}# + #{e2\ 2783}#) + (#{valid-bound-ids?\ 451}# #{var\ 2780}#)) + #{tmp\ 2773}#) #f) (@apply - (lambda (#{_\ 2789}# - #{var\ 2790}# - #{val\ 2791}# - #{e1\ 2792}# - #{e2\ 2793}#) + (lambda (#{_\ 2790}# + #{var\ 2791}# + #{val\ 2792}# + #{e1\ 2793}# + #{e2\ 2794}#) (begin - (let ((#{names\ 2795}# - (map (lambda (#{x\ 2796}#) - (#{id-var-name\ 444}# - #{x\ 2796}# - #{w\ 2763}#)) - #{var\ 2790}#))) + (let ((#{names\ 2796}# + (map (lambda (#{x\ 2797}#) + (#{id-var-name\ 445}# + #{x\ 2797}# + #{w\ 2764}#)) + #{var\ 2791}#))) (begin (for-each - (lambda (#{id\ 2799}# #{n\ 2800}#) + (lambda (#{id\ 2800}# #{n\ 2801}#) (begin - (let ((#{atom-key\ 2805}# - (#{binding-type\ 370}# - (#{lookup\ 381}# - #{n\ 2800}# - #{r\ 2762}# - #{mod\ 2765}#)))) - (if (eqv? #{atom-key\ 2805}# + (let ((#{atom-key\ 2806}# + (#{binding-type\ 371}# + (#{lookup\ 382}# + #{n\ 2801}# + #{r\ 2763}# + #{mod\ 2766}#)))) + (if (eqv? #{atom-key\ 2806}# 'displaced-lexical) (syntax-violation 'fluid-let-syntax "identifier out of context" - #{e\ 2761}# - (#{source-wrap\ 458}# - #{id\ 2799}# - #{w\ 2763}# - #{s\ 2764}# - #{mod\ 2765}#)))))) - #{var\ 2790}# - #{names\ 2795}#) - (#{chi-body\ 480}# - (cons #{e1\ 2792}# #{e2\ 2793}#) - (#{source-wrap\ 458}# - #{e\ 2761}# - #{w\ 2763}# - #{s\ 2764}# - #{mod\ 2765}#) - (#{extend-env\ 375}# - #{names\ 2795}# + #{e\ 2762}# + (#{source-wrap\ 459}# + #{id\ 2800}# + #{w\ 2764}# + #{s\ 2765}# + #{mod\ 2766}#)))))) + #{var\ 2791}# + #{names\ 2796}#) + (#{chi-body\ 481}# + (cons #{e1\ 2793}# #{e2\ 2794}#) + (#{source-wrap\ 459}# + #{e\ 2762}# + #{w\ 2764}# + #{s\ 2765}# + #{mod\ 2766}#) + (#{extend-env\ 376}# + #{names\ 2796}# (begin - (let ((#{trans-r\ 2810}# - (#{macros-only-env\ 379}# - #{r\ 2762}#))) - (map (lambda (#{x\ 2811}#) + (let ((#{trans-r\ 2811}# + (#{macros-only-env\ 380}# + #{r\ 2763}#))) + (map (lambda (#{x\ 2812}#) (cons 'macro - (#{eval-local-transformer\ 484}# - (#{chi\ 472}# - #{x\ 2811}# - #{trans-r\ 2810}# - #{w\ 2763}# - #{mod\ 2765}#) - #{mod\ 2765}#))) - #{val\ 2791}#))) - #{r\ 2762}#) - #{w\ 2763}# - #{mod\ 2765}#))))) - #{tmp\ 2772}#) - (let ((#{_\ 2816}# #{tmp\ 2771}#)) + (#{eval-local-transformer\ 485}# + (#{chi\ 473}# + #{x\ 2812}# + #{trans-r\ 2811}# + #{w\ 2764}# + #{mod\ 2766}#) + #{mod\ 2766}#))) + #{val\ 2792}#))) + #{r\ 2763}#) + #{w\ 2764}# + #{mod\ 2766}#))))) + #{tmp\ 2773}#) + (let ((#{_\ 2817}# #{tmp\ 2772}#)) (syntax-violation 'fluid-let-syntax "bad syntax" - (#{source-wrap\ 458}# - #{e\ 2761}# - #{w\ 2763}# - #{s\ 2764}# - #{mod\ 2765}#)))))))) - (#{global-extend\ 383}# + (#{source-wrap\ 459}# + #{e\ 2762}# + #{w\ 2764}# + #{s\ 2765}# + #{mod\ 2766}#)))))))) + (#{global-extend\ 384}# 'core 'quote - (lambda (#{e\ 2817}# - #{r\ 2818}# - #{w\ 2819}# - #{s\ 2820}# - #{mod\ 2821}#) - (let ((#{tmp\ 2827}# #{e\ 2817}#)) - (let ((#{tmp\ 2828}# - ($sc-dispatch #{tmp\ 2827}# (quote (any any))))) - (if #{tmp\ 2828}# + (lambda (#{e\ 2818}# + #{r\ 2819}# + #{w\ 2820}# + #{s\ 2821}# + #{mod\ 2822}#) + (let ((#{tmp\ 2828}# #{e\ 2818}#)) + (let ((#{tmp\ 2829}# + ($sc-dispatch #{tmp\ 2828}# (quote (any any))))) + (if #{tmp\ 2829}# (@apply - (lambda (#{_\ 2831}# #{e\ 2832}#) - (#{build-data\ 337}# - #{s\ 2820}# - (#{strip\ 498}# #{e\ 2832}# #{w\ 2819}#))) - #{tmp\ 2828}#) - (let ((#{_\ 2834}# #{tmp\ 2827}#)) + (lambda (#{_\ 2832}# #{e\ 2833}#) + (#{build-data\ 338}# + #{s\ 2821}# + (#{strip\ 499}# #{e\ 2833}# #{w\ 2820}#))) + #{tmp\ 2829}#) + (let ((#{_\ 2835}# #{tmp\ 2828}#)) (syntax-violation 'quote "bad syntax" - (#{source-wrap\ 458}# - #{e\ 2817}# - #{w\ 2819}# - #{s\ 2820}# - #{mod\ 2821}#)))))))) - (#{global-extend\ 383}# + (#{source-wrap\ 459}# + #{e\ 2818}# + #{w\ 2820}# + #{s\ 2821}# + #{mod\ 2822}#)))))))) + (#{global-extend\ 384}# 'core 'syntax (letrec* - ((#{gen-syntax\ 2836}# - (lambda (#{src\ 2851}# - #{e\ 2852}# - #{r\ 2853}# - #{maps\ 2854}# - #{ellipsis?\ 2855}# - #{mod\ 2856}#) - (if (#{id?\ 387}# #{e\ 2852}#) + ((#{gen-syntax\ 2837}# + (lambda (#{src\ 2852}# + #{e\ 2853}# + #{r\ 2854}# + #{maps\ 2855}# + #{ellipsis?\ 2856}# + #{mod\ 2857}#) + (if (#{id?\ 388}# #{e\ 2853}#) (begin - (let ((#{label\ 2864}# - (#{id-var-name\ 444}# - #{e\ 2852}# + (let ((#{label\ 2865}# + (#{id-var-name\ 445}# + #{e\ 2853}# '(())))) (begin - (let ((#{b\ 2867}# - (#{lookup\ 381}# - #{label\ 2864}# - #{r\ 2853}# - #{mod\ 2856}#))) - (if (eq? (#{binding-type\ 370}# #{b\ 2867}#) + (let ((#{b\ 2868}# + (#{lookup\ 382}# + #{label\ 2865}# + #{r\ 2854}# + #{mod\ 2857}#))) + (if (eq? (#{binding-type\ 371}# #{b\ 2868}#) 'syntax) (call-with-values (lambda () (begin - (let ((#{var.lev\ 2869}# - (#{binding-value\ 372}# - #{b\ 2867}#))) - (#{gen-ref\ 2838}# - #{src\ 2851}# - (car #{var.lev\ 2869}#) - (cdr #{var.lev\ 2869}#) - #{maps\ 2854}#)))) - (lambda (#{var\ 2870}# #{maps\ 2871}#) + (let ((#{var.lev\ 2870}# + (#{binding-value\ 373}# + #{b\ 2868}#))) + (#{gen-ref\ 2839}# + #{src\ 2852}# + (car #{var.lev\ 2870}#) + (cdr #{var.lev\ 2870}#) + #{maps\ 2855}#)))) + (lambda (#{var\ 2871}# #{maps\ 2872}#) (values - (list (quote ref) #{var\ 2870}#) - #{maps\ 2871}#))) - (if (#{ellipsis?\ 2855}# #{e\ 2852}#) + (list (quote ref) #{var\ 2871}#) + #{maps\ 2872}#))) + (if (#{ellipsis?\ 2856}# #{e\ 2853}#) (syntax-violation 'syntax "misplaced ellipsis" - #{src\ 2851}#) + #{src\ 2852}#) (values - (list (quote quote) #{e\ 2852}#) - #{maps\ 2854}#))))))) - (let ((#{tmp\ 2876}# #{e\ 2852}#)) - (let ((#{tmp\ 2877}# + (list (quote quote) #{e\ 2853}#) + #{maps\ 2855}#))))))) + (let ((#{tmp\ 2877}# #{e\ 2853}#)) + (let ((#{tmp\ 2878}# ($sc-dispatch - #{tmp\ 2876}# + #{tmp\ 2877}# '(any any)))) - (if (if #{tmp\ 2877}# + (if (if #{tmp\ 2878}# (@apply - (lambda (#{dots\ 2880}# #{e\ 2881}#) - (#{ellipsis?\ 2855}# #{dots\ 2880}#)) - #{tmp\ 2877}#) + (lambda (#{dots\ 2881}# #{e\ 2882}#) + (#{ellipsis?\ 2856}# #{dots\ 2881}#)) + #{tmp\ 2878}#) #f) (@apply - (lambda (#{dots\ 2884}# #{e\ 2885}#) - (#{gen-syntax\ 2836}# - #{src\ 2851}# - #{e\ 2885}# - #{r\ 2853}# - #{maps\ 2854}# - (lambda (#{x\ 2886}#) #f) - #{mod\ 2856}#)) - #{tmp\ 2877}#) - (let ((#{tmp\ 2888}# + (lambda (#{dots\ 2885}# #{e\ 2886}#) + (#{gen-syntax\ 2837}# + #{src\ 2852}# + #{e\ 2886}# + #{r\ 2854}# + #{maps\ 2855}# + (lambda (#{x\ 2887}#) #f) + #{mod\ 2857}#)) + #{tmp\ 2878}#) + (let ((#{tmp\ 2889}# ($sc-dispatch - #{tmp\ 2876}# + #{tmp\ 2877}# '(any any . any)))) - (if (if #{tmp\ 2888}# + (if (if #{tmp\ 2889}# (@apply - (lambda (#{x\ 2892}# - #{dots\ 2893}# - #{y\ 2894}#) - (#{ellipsis?\ 2855}# #{dots\ 2893}#)) - #{tmp\ 2888}#) + (lambda (#{x\ 2893}# + #{dots\ 2894}# + #{y\ 2895}#) + (#{ellipsis?\ 2856}# #{dots\ 2894}#)) + #{tmp\ 2889}#) #f) (@apply - (lambda (#{x\ 2898}# - #{dots\ 2899}# - #{y\ 2900}#) + (lambda (#{x\ 2899}# + #{dots\ 2900}# + #{y\ 2901}#) (letrec* - ((#{f\ 2904}# - (lambda (#{y\ 2905}# #{k\ 2906}#) - (let ((#{tmp\ 2913}# #{y\ 2905}#)) - (let ((#{tmp\ 2914}# + ((#{f\ 2905}# + (lambda (#{y\ 2906}# #{k\ 2907}#) + (let ((#{tmp\ 2914}# #{y\ 2906}#)) + (let ((#{tmp\ 2915}# ($sc-dispatch - #{tmp\ 2913}# + #{tmp\ 2914}# '(any . any)))) - (if (if #{tmp\ 2914}# + (if (if #{tmp\ 2915}# (@apply - (lambda (#{dots\ 2917}# - #{y\ 2918}#) - (#{ellipsis?\ 2855}# - #{dots\ 2917}#)) - #{tmp\ 2914}#) + (lambda (#{dots\ 2918}# + #{y\ 2919}#) + (#{ellipsis?\ 2856}# + #{dots\ 2918}#)) + #{tmp\ 2915}#) #f) (@apply - (lambda (#{dots\ 2921}# - #{y\ 2922}#) - (#{f\ 2904}# - #{y\ 2922}# - (lambda (#{maps\ 2923}#) + (lambda (#{dots\ 2922}# + #{y\ 2923}#) + (#{f\ 2905}# + #{y\ 2923}# + (lambda (#{maps\ 2924}#) (call-with-values (lambda () - (#{k\ 2906}# + (#{k\ 2907}# (cons '() - #{maps\ 2923}#))) - (lambda (#{x\ 2925}# - #{maps\ 2926}#) - (if (null? (car #{maps\ 2926}#)) + #{maps\ 2924}#))) + (lambda (#{x\ 2926}# + #{maps\ 2927}#) + (if (null? (car #{maps\ 2927}#)) (syntax-violation 'syntax "extra ellipsis" - #{src\ 2851}#) + #{src\ 2852}#) (values - (#{gen-mappend\ 2840}# - #{x\ 2925}# - (car #{maps\ 2926}#)) - (cdr #{maps\ 2926}#)))))))) - #{tmp\ 2914}#) - (let ((#{_\ 2930}# - #{tmp\ 2913}#)) + (#{gen-mappend\ 2841}# + #{x\ 2926}# + (car #{maps\ 2927}#)) + (cdr #{maps\ 2927}#)))))))) + #{tmp\ 2915}#) + (let ((#{_\ 2931}# + #{tmp\ 2914}#)) (call-with-values (lambda () - (#{gen-syntax\ 2836}# - #{src\ 2851}# - #{y\ 2905}# - #{r\ 2853}# - #{maps\ 2854}# - #{ellipsis?\ 2855}# - #{mod\ 2856}#)) - (lambda (#{y\ 2931}# - #{maps\ 2932}#) + (#{gen-syntax\ 2837}# + #{src\ 2852}# + #{y\ 2906}# + #{r\ 2854}# + #{maps\ 2855}# + #{ellipsis?\ 2856}# + #{mod\ 2857}#)) + (lambda (#{y\ 2932}# + #{maps\ 2933}#) (call-with-values (lambda () - (#{k\ 2906}# - #{maps\ 2932}#)) - (lambda (#{x\ 2935}# - #{maps\ 2936}#) + (#{k\ 2907}# + #{maps\ 2933}#)) + (lambda (#{x\ 2936}# + #{maps\ 2937}#) (values - (#{gen-append\ 2846}# - #{x\ 2935}# - #{y\ 2931}#) - #{maps\ 2936}#)))))))))))) + (#{gen-append\ 2847}# + #{x\ 2936}# + #{y\ 2932}#) + #{maps\ 2937}#)))))))))))) (begin - (#{f\ 2904}# - #{y\ 2900}# - (lambda (#{maps\ 2907}#) + (#{f\ 2905}# + #{y\ 2901}# + (lambda (#{maps\ 2908}#) (call-with-values (lambda () - (#{gen-syntax\ 2836}# - #{src\ 2851}# - #{x\ 2898}# - #{r\ 2853}# + (#{gen-syntax\ 2837}# + #{src\ 2852}# + #{x\ 2899}# + #{r\ 2854}# (cons '() - #{maps\ 2907}#) - #{ellipsis?\ 2855}# - #{mod\ 2856}#)) - (lambda (#{x\ 2909}# - #{maps\ 2910}#) - (if (null? (car #{maps\ 2910}#)) + #{maps\ 2908}#) + #{ellipsis?\ 2856}# + #{mod\ 2857}#)) + (lambda (#{x\ 2910}# + #{maps\ 2911}#) + (if (null? (car #{maps\ 2911}#)) (syntax-violation 'syntax "extra ellipsis" - #{src\ 2851}#) + #{src\ 2852}#) (values - (#{gen-map\ 2842}# - #{x\ 2909}# - (car #{maps\ 2910}#)) - (cdr #{maps\ 2910}#)))))))))) - #{tmp\ 2888}#) - (let ((#{tmp\ 2939}# + (#{gen-map\ 2843}# + #{x\ 2910}# + (car #{maps\ 2911}#)) + (cdr #{maps\ 2911}#)))))))))) + #{tmp\ 2889}#) + (let ((#{tmp\ 2940}# ($sc-dispatch - #{tmp\ 2876}# + #{tmp\ 2877}# '(any . any)))) - (if #{tmp\ 2939}# + (if #{tmp\ 2940}# (@apply - (lambda (#{x\ 2942}# #{y\ 2943}#) + (lambda (#{x\ 2943}# #{y\ 2944}#) (call-with-values (lambda () - (#{gen-syntax\ 2836}# - #{src\ 2851}# - #{x\ 2942}# - #{r\ 2853}# - #{maps\ 2854}# - #{ellipsis?\ 2855}# - #{mod\ 2856}#)) - (lambda (#{x\ 2944}# #{maps\ 2945}#) + (#{gen-syntax\ 2837}# + #{src\ 2852}# + #{x\ 2943}# + #{r\ 2854}# + #{maps\ 2855}# + #{ellipsis?\ 2856}# + #{mod\ 2857}#)) + (lambda (#{x\ 2945}# #{maps\ 2946}#) (call-with-values (lambda () - (#{gen-syntax\ 2836}# - #{src\ 2851}# - #{y\ 2943}# - #{r\ 2853}# - #{maps\ 2945}# - #{ellipsis?\ 2855}# - #{mod\ 2856}#)) - (lambda (#{y\ 2948}# - #{maps\ 2949}#) + (#{gen-syntax\ 2837}# + #{src\ 2852}# + #{y\ 2944}# + #{r\ 2854}# + #{maps\ 2946}# + #{ellipsis?\ 2856}# + #{mod\ 2857}#)) + (lambda (#{y\ 2949}# + #{maps\ 2950}#) (values - (#{gen-cons\ 2844}# - #{x\ 2944}# - #{y\ 2948}#) - #{maps\ 2949}#)))))) - #{tmp\ 2939}#) - (let ((#{tmp\ 2952}# + (#{gen-cons\ 2845}# + #{x\ 2945}# + #{y\ 2949}#) + #{maps\ 2950}#)))))) + #{tmp\ 2940}#) + (let ((#{tmp\ 2953}# ($sc-dispatch - #{tmp\ 2876}# + #{tmp\ 2877}# '#(vector (any . each-any))))) - (if #{tmp\ 2952}# + (if #{tmp\ 2953}# (@apply - (lambda (#{e1\ 2955}# #{e2\ 2956}#) + (lambda (#{e1\ 2956}# #{e2\ 2957}#) (call-with-values (lambda () - (#{gen-syntax\ 2836}# - #{src\ 2851}# - (cons #{e1\ 2955}# - #{e2\ 2956}#) - #{r\ 2853}# - #{maps\ 2854}# - #{ellipsis?\ 2855}# - #{mod\ 2856}#)) - (lambda (#{e\ 2958}# - #{maps\ 2959}#) + (#{gen-syntax\ 2837}# + #{src\ 2852}# + (cons #{e1\ 2956}# + #{e2\ 2957}#) + #{r\ 2854}# + #{maps\ 2855}# + #{ellipsis?\ 2856}# + #{mod\ 2857}#)) + (lambda (#{e\ 2959}# + #{maps\ 2960}#) (values - (#{gen-vector\ 2848}# - #{e\ 2958}#) - #{maps\ 2959}#)))) - #{tmp\ 2952}#) - (let ((#{_\ 2963}# #{tmp\ 2876}#)) + (#{gen-vector\ 2849}# + #{e\ 2959}#) + #{maps\ 2960}#)))) + #{tmp\ 2953}#) + (let ((#{_\ 2964}# #{tmp\ 2877}#)) (values - (list (quote quote) #{e\ 2852}#) - #{maps\ 2854}#)))))))))))))) - (#{gen-ref\ 2838}# - (lambda (#{src\ 2965}# - #{var\ 2966}# - #{level\ 2967}# - #{maps\ 2968}#) - (if (#{fx=\ 292}# #{level\ 2967}# 0) - (values #{var\ 2966}# #{maps\ 2968}#) - (if (null? #{maps\ 2968}#) + (list (quote quote) #{e\ 2853}#) + #{maps\ 2855}#)))))))))))))) + (#{gen-ref\ 2839}# + (lambda (#{src\ 2966}# + #{var\ 2967}# + #{level\ 2968}# + #{maps\ 2969}#) + (if (#{fx=\ 293}# #{level\ 2968}# 0) + (values #{var\ 2967}# #{maps\ 2969}#) + (if (null? #{maps\ 2969}#) (syntax-violation 'syntax "missing ellipsis" - #{src\ 2965}#) + #{src\ 2966}#) (call-with-values (lambda () - (#{gen-ref\ 2838}# - #{src\ 2965}# - #{var\ 2966}# - (#{fx-\ 290}# #{level\ 2967}# 1) - (cdr #{maps\ 2968}#))) - (lambda (#{outer-var\ 2973}# #{outer-maps\ 2974}#) + (#{gen-ref\ 2839}# + #{src\ 2966}# + #{var\ 2967}# + (#{fx-\ 291}# #{level\ 2968}# 1) + (cdr #{maps\ 2969}#))) + (lambda (#{outer-var\ 2974}# #{outer-maps\ 2975}#) (begin - (let ((#{b\ 2978}# - (assq #{outer-var\ 2973}# - (car #{maps\ 2968}#)))) - (if #{b\ 2978}# - (values (cdr #{b\ 2978}#) #{maps\ 2968}#) + (let ((#{b\ 2979}# + (assq #{outer-var\ 2974}# + (car #{maps\ 2969}#)))) + (if #{b\ 2979}# + (values (cdr #{b\ 2979}#) #{maps\ 2969}#) (begin - (let ((#{inner-var\ 2980}# - (#{gen-var\ 500}# (quote tmp)))) + (let ((#{inner-var\ 2981}# + (#{gen-var\ 501}# (quote tmp)))) (values - #{inner-var\ 2980}# - (cons (cons (cons #{outer-var\ 2973}# - #{inner-var\ 2980}#) - (car #{maps\ 2968}#)) - #{outer-maps\ 2974}#))))))))))))) - (#{gen-mappend\ 2840}# - (lambda (#{e\ 2981}# #{map-env\ 2982}#) + #{inner-var\ 2981}# + (cons (cons (cons #{outer-var\ 2974}# + #{inner-var\ 2981}#) + (car #{maps\ 2969}#)) + #{outer-maps\ 2975}#))))))))))))) + (#{gen-mappend\ 2841}# + (lambda (#{e\ 2982}# #{map-env\ 2983}#) (list 'apply '(primitive append) - (#{gen-map\ 2842}# #{e\ 2981}# #{map-env\ 2982}#)))) - (#{gen-map\ 2842}# - (lambda (#{e\ 2986}# #{map-env\ 2987}#) + (#{gen-map\ 2843}# #{e\ 2982}# #{map-env\ 2983}#)))) + (#{gen-map\ 2843}# + (lambda (#{e\ 2987}# #{map-env\ 2988}#) (begin - (let ((#{formals\ 2992}# (map cdr #{map-env\ 2987}#)) - (#{actuals\ 2993}# - (map (lambda (#{x\ 2994}#) - (list (quote ref) (car #{x\ 2994}#))) - #{map-env\ 2987}#))) - (if (eq? (car #{e\ 2986}#) (quote ref)) - (car #{actuals\ 2993}#) + (let ((#{formals\ 2993}# (map cdr #{map-env\ 2988}#)) + (#{actuals\ 2994}# + (map (lambda (#{x\ 2995}#) + (list (quote ref) (car #{x\ 2995}#))) + #{map-env\ 2988}#))) + (if (eq? (car #{e\ 2987}#) (quote ref)) + (car #{actuals\ 2994}#) (if (and-map - (lambda (#{x\ 3001}#) - (if (eq? (car #{x\ 3001}#) (quote ref)) - (memq (car (cdr #{x\ 3001}#)) - #{formals\ 2992}#) + (lambda (#{x\ 3002}#) + (if (eq? (car #{x\ 3002}#) (quote ref)) + (memq (car (cdr #{x\ 3002}#)) + #{formals\ 2993}#) #f)) - (cdr #{e\ 2986}#)) + (cdr #{e\ 2987}#)) (cons 'map (cons (list 'primitive - (car #{e\ 2986}#)) + (car #{e\ 2987}#)) (map (begin - (let ((#{r\ 3007}# + (let ((#{r\ 3008}# (map cons - #{formals\ 2992}# - #{actuals\ 2993}#))) - (lambda (#{x\ 3008}#) - (cdr (assq (car (cdr #{x\ 3008}#)) - #{r\ 3007}#))))) - (cdr #{e\ 2986}#)))) + #{formals\ 2993}# + #{actuals\ 2994}#))) + (lambda (#{x\ 3009}#) + (cdr (assq (car (cdr #{x\ 3009}#)) + #{r\ 3008}#))))) + (cdr #{e\ 2987}#)))) (cons 'map (cons (list 'lambda - #{formals\ 2992}# - #{e\ 2986}#) - #{actuals\ 2993}#)))))))) - (#{gen-cons\ 2844}# - (lambda (#{x\ 3012}# #{y\ 3013}#) + #{formals\ 2993}# + #{e\ 2987}#) + #{actuals\ 2994}#)))))))) + (#{gen-cons\ 2845}# + (lambda (#{x\ 3013}# #{y\ 3014}#) (begin - (let ((#{atom-key\ 3018}# (car #{y\ 3013}#))) - (if (eqv? #{atom-key\ 3018}# (quote quote)) - (if (eq? (car #{x\ 3012}#) (quote quote)) + (let ((#{atom-key\ 3019}# (car #{y\ 3014}#))) + (if (eqv? #{atom-key\ 3019}# (quote quote)) + (if (eq? (car #{x\ 3013}#) (quote quote)) (list 'quote - (cons (car (cdr #{x\ 3012}#)) - (car (cdr #{y\ 3013}#)))) - (if (eq? (car (cdr #{y\ 3013}#)) (quote ())) - (list (quote list) #{x\ 3012}#) - (list (quote cons) #{x\ 3012}# #{y\ 3013}#))) - (if (eqv? #{atom-key\ 3018}# (quote list)) + (cons (car (cdr #{x\ 3013}#)) + (car (cdr #{y\ 3014}#)))) + (if (eq? (car (cdr #{y\ 3014}#)) (quote ())) + (list (quote list) #{x\ 3013}#) + (list (quote cons) #{x\ 3013}# #{y\ 3014}#))) + (if (eqv? #{atom-key\ 3019}# (quote list)) (cons 'list - (cons #{x\ 3012}# (cdr #{y\ 3013}#))) - (list (quote cons) #{x\ 3012}# #{y\ 3013}#))))))) - (#{gen-append\ 2846}# - (lambda (#{x\ 3027}# #{y\ 3028}#) - (if (equal? #{y\ 3028}# (quote (quote ()))) - #{x\ 3027}# - (list (quote append) #{x\ 3027}# #{y\ 3028}#)))) - (#{gen-vector\ 2848}# - (lambda (#{x\ 3032}#) - (if (eq? (car #{x\ 3032}#) (quote list)) - (cons (quote vector) (cdr #{x\ 3032}#)) - (if (eq? (car #{x\ 3032}#) (quote quote)) + (cons #{x\ 3013}# (cdr #{y\ 3014}#))) + (list (quote cons) #{x\ 3013}# #{y\ 3014}#))))))) + (#{gen-append\ 2847}# + (lambda (#{x\ 3028}# #{y\ 3029}#) + (if (equal? #{y\ 3029}# (quote (quote ()))) + #{x\ 3028}# + (list (quote append) #{x\ 3028}# #{y\ 3029}#)))) + (#{gen-vector\ 2849}# + (lambda (#{x\ 3033}#) + (if (eq? (car #{x\ 3033}#) (quote list)) + (cons (quote vector) (cdr #{x\ 3033}#)) + (if (eq? (car #{x\ 3033}#) (quote quote)) (list 'quote - (list->vector (car (cdr #{x\ 3032}#)))) - (list (quote list->vector) #{x\ 3032}#))))) - (#{regen\ 2850}# - (lambda (#{x\ 3042}#) + (list->vector (car (cdr #{x\ 3033}#)))) + (list (quote list->vector) #{x\ 3033}#))))) + (#{regen\ 2851}# + (lambda (#{x\ 3043}#) (begin - (let ((#{atom-key\ 3046}# (car #{x\ 3042}#))) - (if (eqv? #{atom-key\ 3046}# (quote ref)) - (#{build-lexical-reference\ 315}# + (let ((#{atom-key\ 3047}# (car #{x\ 3043}#))) + (if (eqv? #{atom-key\ 3047}# (quote ref)) + (#{build-lexical-reference\ 316}# 'value #f - (car (cdr #{x\ 3042}#)) - (car (cdr #{x\ 3042}#))) - (if (eqv? #{atom-key\ 3046}# (quote primitive)) - (#{build-primref\ 335}# + (car (cdr #{x\ 3043}#)) + (car (cdr #{x\ 3043}#))) + (if (eqv? #{atom-key\ 3047}# (quote primitive)) + (#{build-primref\ 336}# #f - (car (cdr #{x\ 3042}#))) - (if (eqv? #{atom-key\ 3046}# (quote quote)) - (#{build-data\ 337}# #f (car (cdr #{x\ 3042}#))) - (if (eqv? #{atom-key\ 3046}# (quote lambda)) - (if (list? (car (cdr #{x\ 3042}#))) - (#{build-simple-lambda\ 329}# + (car (cdr #{x\ 3043}#))) + (if (eqv? #{atom-key\ 3047}# (quote quote)) + (#{build-data\ 338}# #f (car (cdr #{x\ 3043}#))) + (if (eqv? #{atom-key\ 3047}# (quote lambda)) + (if (list? (car (cdr #{x\ 3043}#))) + (#{build-simple-lambda\ 330}# #f - (car (cdr #{x\ 3042}#)) + (car (cdr #{x\ 3043}#)) #f - (car (cdr #{x\ 3042}#)) + (car (cdr #{x\ 3043}#)) '() - (#{regen\ 2850}# - (car (cdr (cdr #{x\ 3042}#))))) - (error "how did we get here" #{x\ 3042}#)) - (#{build-application\ 309}# + (#{regen\ 2851}# + (car (cdr (cdr #{x\ 3043}#))))) + (error "how did we get here" #{x\ 3043}#)) + (#{build-application\ 310}# #f - (#{build-primref\ 335}# + (#{build-primref\ 336}# #f - (car #{x\ 3042}#)) - (map #{regen\ 2850}# - (cdr #{x\ 3042}#)))))))))))) + (car #{x\ 3043}#)) + (map #{regen\ 2851}# + (cdr #{x\ 3043}#)))))))))))) (begin - (lambda (#{e\ 3058}# - #{r\ 3059}# - #{w\ 3060}# - #{s\ 3061}# - #{mod\ 3062}#) + (lambda (#{e\ 3059}# + #{r\ 3060}# + #{w\ 3061}# + #{s\ 3062}# + #{mod\ 3063}#) (begin - (let ((#{e\ 3069}# - (#{source-wrap\ 458}# - #{e\ 3058}# - #{w\ 3060}# - #{s\ 3061}# - #{mod\ 3062}#))) - (let ((#{tmp\ 3070}# #{e\ 3069}#)) - (let ((#{tmp\ 3071}# + (let ((#{e\ 3070}# + (#{source-wrap\ 459}# + #{e\ 3059}# + #{w\ 3061}# + #{s\ 3062}# + #{mod\ 3063}#))) + (let ((#{tmp\ 3071}# #{e\ 3070}#)) + (let ((#{tmp\ 3072}# ($sc-dispatch - #{tmp\ 3070}# + #{tmp\ 3071}# '(any any)))) - (if #{tmp\ 3071}# + (if #{tmp\ 3072}# (@apply - (lambda (#{_\ 3074}# #{x\ 3075}#) + (lambda (#{_\ 3075}# #{x\ 3076}#) (call-with-values (lambda () - (#{gen-syntax\ 2836}# - #{e\ 3069}# - #{x\ 3075}# - #{r\ 3059}# + (#{gen-syntax\ 2837}# + #{e\ 3070}# + #{x\ 3076}# + #{r\ 3060}# '() - #{ellipsis?\ 488}# - #{mod\ 3062}#)) - (lambda (#{e\ 3076}# #{maps\ 3077}#) - (#{regen\ 2850}# #{e\ 3076}#)))) - #{tmp\ 3071}#) - (let ((#{_\ 3081}# #{tmp\ 3070}#)) + #{ellipsis?\ 489}# + #{mod\ 3063}#)) + (lambda (#{e\ 3077}# #{maps\ 3078}#) + (#{regen\ 2851}# #{e\ 3077}#)))) + #{tmp\ 3072}#) + (let ((#{_\ 3082}# #{tmp\ 3071}#)) (syntax-violation 'syntax "bad `syntax' form" - #{e\ 3069}#))))))))))) - (#{global-extend\ 383}# + #{e\ 3070}#))))))))))) + (#{global-extend\ 384}# 'core 'lambda - (lambda (#{e\ 3082}# - #{r\ 3083}# - #{w\ 3084}# - #{s\ 3085}# - #{mod\ 3086}#) - (let ((#{tmp\ 3092}# #{e\ 3082}#)) - (let ((#{tmp\ 3093}# + (lambda (#{e\ 3083}# + #{r\ 3084}# + #{w\ 3085}# + #{s\ 3086}# + #{mod\ 3087}#) + (let ((#{tmp\ 3093}# #{e\ 3083}#)) + (let ((#{tmp\ 3094}# ($sc-dispatch - #{tmp\ 3092}# + #{tmp\ 3093}# '(any any any . each-any)))) - (if #{tmp\ 3093}# + (if #{tmp\ 3094}# (@apply - (lambda (#{_\ 3098}# - #{args\ 3099}# - #{e1\ 3100}# - #{e2\ 3101}#) + (lambda (#{_\ 3099}# + #{args\ 3100}# + #{e1\ 3101}# + #{e2\ 3102}#) (call-with-values (lambda () - (#{lambda-formals\ 490}# #{args\ 3099}#)) - (lambda (#{req\ 3102}# - #{opt\ 3103}# - #{rest\ 3104}# - #{kw\ 3105}#) + (#{lambda-formals\ 491}# #{args\ 3100}#)) + (lambda (#{req\ 3103}# + #{opt\ 3104}# + #{rest\ 3105}# + #{kw\ 3106}#) (letrec* - ((#{lp\ 3113}# - (lambda (#{body\ 3114}# #{meta\ 3115}#) - (let ((#{tmp\ 3117}# #{body\ 3114}#)) - (let ((#{tmp\ 3118}# + ((#{lp\ 3114}# + (lambda (#{body\ 3115}# #{meta\ 3116}#) + (let ((#{tmp\ 3118}# #{body\ 3115}#)) + (let ((#{tmp\ 3119}# ($sc-dispatch - #{tmp\ 3117}# + #{tmp\ 3118}# '(any any . each-any)))) - (if (if #{tmp\ 3118}# + (if (if #{tmp\ 3119}# (@apply - (lambda (#{docstring\ 3122}# - #{e1\ 3123}# - #{e2\ 3124}#) + (lambda (#{docstring\ 3123}# + #{e1\ 3124}# + #{e2\ 3125}#) (string? (syntax->datum - #{docstring\ 3122}#))) - #{tmp\ 3118}#) + #{docstring\ 3123}#))) + #{tmp\ 3119}#) #f) (@apply - (lambda (#{docstring\ 3128}# - #{e1\ 3129}# - #{e2\ 3130}#) - (#{lp\ 3113}# - (cons #{e1\ 3129}# - #{e2\ 3130}#) + (lambda (#{docstring\ 3129}# + #{e1\ 3130}# + #{e2\ 3131}#) + (#{lp\ 3114}# + (cons #{e1\ 3130}# + #{e2\ 3131}#) (append - #{meta\ 3115}# + #{meta\ 3116}# (list (cons 'documentation (syntax->datum - #{docstring\ 3128}#)))))) - #{tmp\ 3118}#) - (let ((#{tmp\ 3133}# + #{docstring\ 3129}#)))))) + #{tmp\ 3119}#) + (let ((#{tmp\ 3134}# ($sc-dispatch - #{tmp\ 3117}# + #{tmp\ 3118}# '(#(vector #(each (any . any))) any . each-any)))) - (if #{tmp\ 3133}# + (if #{tmp\ 3134}# (@apply - (lambda (#{k\ 3138}# - #{v\ 3139}# - #{e1\ 3140}# - #{e2\ 3141}#) - (#{lp\ 3113}# - (cons #{e1\ 3140}# - #{e2\ 3141}#) + (lambda (#{k\ 3139}# + #{v\ 3140}# + #{e1\ 3141}# + #{e2\ 3142}#) + (#{lp\ 3114}# + (cons #{e1\ 3141}# + #{e2\ 3142}#) (append - #{meta\ 3115}# + #{meta\ 3116}# (syntax->datum (map cons - #{k\ 3138}# - #{v\ 3139}#))))) - #{tmp\ 3133}#) - (let ((#{_\ 3146}# - #{tmp\ 3117}#)) - (#{chi-simple-lambda\ 492}# - #{e\ 3082}# - #{r\ 3083}# - #{w\ 3084}# - #{s\ 3085}# - #{mod\ 3086}# - #{req\ 3102}# - #{rest\ 3104}# - #{meta\ 3115}# - #{body\ 3114}#)))))))))) + #{k\ 3139}# + #{v\ 3140}#))))) + #{tmp\ 3134}#) + (let ((#{_\ 3147}# + #{tmp\ 3118}#)) + (#{chi-simple-lambda\ 493}# + #{e\ 3083}# + #{r\ 3084}# + #{w\ 3085}# + #{s\ 3086}# + #{mod\ 3087}# + #{req\ 3103}# + #{rest\ 3105}# + #{meta\ 3116}# + #{body\ 3115}#)))))))))) (begin - (#{lp\ 3113}# - (cons #{e1\ 3100}# #{e2\ 3101}#) + (#{lp\ 3114}# + (cons #{e1\ 3101}# #{e2\ 3102}#) '())))))) - #{tmp\ 3093}#) - (let ((#{_\ 3148}# #{tmp\ 3092}#)) + #{tmp\ 3094}#) + (let ((#{_\ 3149}# #{tmp\ 3093}#)) (syntax-violation 'lambda "bad lambda" - #{e\ 3082}#))))))) - (#{global-extend\ 383}# + #{e\ 3083}#))))))) + (#{global-extend\ 384}# 'core 'lambda* - (lambda (#{e\ 3149}# - #{r\ 3150}# - #{w\ 3151}# - #{s\ 3152}# - #{mod\ 3153}#) - (let ((#{tmp\ 3159}# #{e\ 3149}#)) - (let ((#{tmp\ 3160}# + (lambda (#{e\ 3150}# + #{r\ 3151}# + #{w\ 3152}# + #{s\ 3153}# + #{mod\ 3154}#) + (let ((#{tmp\ 3160}# #{e\ 3150}#)) + (let ((#{tmp\ 3161}# ($sc-dispatch - #{tmp\ 3159}# + #{tmp\ 3160}# '(any any any . each-any)))) - (if #{tmp\ 3160}# + (if #{tmp\ 3161}# (@apply - (lambda (#{_\ 3165}# - #{args\ 3166}# - #{e1\ 3167}# - #{e2\ 3168}#) + (lambda (#{_\ 3166}# + #{args\ 3167}# + #{e1\ 3168}# + #{e2\ 3169}#) (call-with-values (lambda () - (#{chi-lambda-case\ 496}# - #{e\ 3149}# - #{r\ 3150}# - #{w\ 3151}# - #{s\ 3152}# - #{mod\ 3153}# - #{lambda*-formals\ 494}# - (list (cons #{args\ 3166}# - (cons #{e1\ 3167}# - #{e2\ 3168}#))))) - (lambda (#{meta\ 3170}# #{lcase\ 3171}#) - (#{build-case-lambda\ 331}# - #{s\ 3152}# - #{meta\ 3170}# - #{lcase\ 3171}#)))) - #{tmp\ 3160}#) - (let ((#{_\ 3175}# #{tmp\ 3159}#)) + (#{chi-lambda-case\ 497}# + #{e\ 3150}# + #{r\ 3151}# + #{w\ 3152}# + #{s\ 3153}# + #{mod\ 3154}# + #{lambda*-formals\ 495}# + (list (cons #{args\ 3167}# + (cons #{e1\ 3168}# + #{e2\ 3169}#))))) + (lambda (#{meta\ 3171}# #{lcase\ 3172}#) + (#{build-case-lambda\ 332}# + #{s\ 3153}# + #{meta\ 3171}# + #{lcase\ 3172}#)))) + #{tmp\ 3161}#) + (let ((#{_\ 3176}# #{tmp\ 3160}#)) (syntax-violation 'lambda "bad lambda*" - #{e\ 3149}#))))))) - (#{global-extend\ 383}# + #{e\ 3150}#))))))) + (#{global-extend\ 384}# 'core 'case-lambda - (lambda (#{e\ 3176}# - #{r\ 3177}# - #{w\ 3178}# - #{s\ 3179}# - #{mod\ 3180}#) - (let ((#{tmp\ 3186}# #{e\ 3176}#)) - (let ((#{tmp\ 3187}# + (lambda (#{e\ 3177}# + #{r\ 3178}# + #{w\ 3179}# + #{s\ 3180}# + #{mod\ 3181}#) + (let ((#{tmp\ 3187}# #{e\ 3177}#)) + (let ((#{tmp\ 3188}# ($sc-dispatch - #{tmp\ 3186}# + #{tmp\ 3187}# '(any (any any . each-any) . #(each (any any . each-any)))))) - (if #{tmp\ 3187}# + (if #{tmp\ 3188}# (@apply - (lambda (#{_\ 3195}# - #{args\ 3196}# - #{e1\ 3197}# - #{e2\ 3198}# - #{args*\ 3199}# - #{e1*\ 3200}# - #{e2*\ 3201}#) + (lambda (#{_\ 3196}# + #{args\ 3197}# + #{e1\ 3198}# + #{e2\ 3199}# + #{args*\ 3200}# + #{e1*\ 3201}# + #{e2*\ 3202}#) (call-with-values (lambda () - (#{chi-lambda-case\ 496}# - #{e\ 3176}# - #{r\ 3177}# - #{w\ 3178}# - #{s\ 3179}# - #{mod\ 3180}# - #{lambda-formals\ 490}# - (cons (cons #{args\ 3196}# - (cons #{e1\ 3197}# #{e2\ 3198}#)) - (map (lambda (#{tmp\ 3205}# - #{tmp\ 3204}# - #{tmp\ 3203}#) - (cons #{tmp\ 3203}# - (cons #{tmp\ 3204}# - #{tmp\ 3205}#))) - #{e2*\ 3201}# - #{e1*\ 3200}# - #{args*\ 3199}#)))) - (lambda (#{meta\ 3207}# #{lcase\ 3208}#) - (#{build-case-lambda\ 331}# - #{s\ 3179}# - #{meta\ 3207}# - #{lcase\ 3208}#)))) - #{tmp\ 3187}#) - (let ((#{_\ 3212}# #{tmp\ 3186}#)) + (#{chi-lambda-case\ 497}# + #{e\ 3177}# + #{r\ 3178}# + #{w\ 3179}# + #{s\ 3180}# + #{mod\ 3181}# + #{lambda-formals\ 491}# + (cons (cons #{args\ 3197}# + (cons #{e1\ 3198}# #{e2\ 3199}#)) + (map (lambda (#{tmp\ 3206}# + #{tmp\ 3205}# + #{tmp\ 3204}#) + (cons #{tmp\ 3204}# + (cons #{tmp\ 3205}# + #{tmp\ 3206}#))) + #{e2*\ 3202}# + #{e1*\ 3201}# + #{args*\ 3200}#)))) + (lambda (#{meta\ 3208}# #{lcase\ 3209}#) + (#{build-case-lambda\ 332}# + #{s\ 3180}# + #{meta\ 3208}# + #{lcase\ 3209}#)))) + #{tmp\ 3188}#) + (let ((#{_\ 3213}# #{tmp\ 3187}#)) (syntax-violation 'case-lambda "bad case-lambda" - #{e\ 3176}#))))))) - (#{global-extend\ 383}# + #{e\ 3177}#))))))) + (#{global-extend\ 384}# 'core 'case-lambda* - (lambda (#{e\ 3213}# - #{r\ 3214}# - #{w\ 3215}# - #{s\ 3216}# - #{mod\ 3217}#) - (let ((#{tmp\ 3223}# #{e\ 3213}#)) - (let ((#{tmp\ 3224}# + (lambda (#{e\ 3214}# + #{r\ 3215}# + #{w\ 3216}# + #{s\ 3217}# + #{mod\ 3218}#) + (let ((#{tmp\ 3224}# #{e\ 3214}#)) + (let ((#{tmp\ 3225}# ($sc-dispatch - #{tmp\ 3223}# + #{tmp\ 3224}# '(any (any any . each-any) . #(each (any any . each-any)))))) - (if #{tmp\ 3224}# + (if #{tmp\ 3225}# (@apply - (lambda (#{_\ 3232}# - #{args\ 3233}# - #{e1\ 3234}# - #{e2\ 3235}# - #{args*\ 3236}# - #{e1*\ 3237}# - #{e2*\ 3238}#) + (lambda (#{_\ 3233}# + #{args\ 3234}# + #{e1\ 3235}# + #{e2\ 3236}# + #{args*\ 3237}# + #{e1*\ 3238}# + #{e2*\ 3239}#) (call-with-values (lambda () - (#{chi-lambda-case\ 496}# - #{e\ 3213}# - #{r\ 3214}# - #{w\ 3215}# - #{s\ 3216}# - #{mod\ 3217}# - #{lambda*-formals\ 494}# - (cons (cons #{args\ 3233}# - (cons #{e1\ 3234}# #{e2\ 3235}#)) - (map (lambda (#{tmp\ 3242}# - #{tmp\ 3241}# - #{tmp\ 3240}#) - (cons #{tmp\ 3240}# - (cons #{tmp\ 3241}# - #{tmp\ 3242}#))) - #{e2*\ 3238}# - #{e1*\ 3237}# - #{args*\ 3236}#)))) - (lambda (#{meta\ 3244}# #{lcase\ 3245}#) - (#{build-case-lambda\ 331}# - #{s\ 3216}# - #{meta\ 3244}# - #{lcase\ 3245}#)))) - #{tmp\ 3224}#) - (let ((#{_\ 3249}# #{tmp\ 3223}#)) + (#{chi-lambda-case\ 497}# + #{e\ 3214}# + #{r\ 3215}# + #{w\ 3216}# + #{s\ 3217}# + #{mod\ 3218}# + #{lambda*-formals\ 495}# + (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\ 332}# + #{s\ 3217}# + #{meta\ 3245}# + #{lcase\ 3246}#)))) + #{tmp\ 3225}#) + (let ((#{_\ 3250}# #{tmp\ 3224}#)) (syntax-violation 'case-lambda "bad case-lambda*" - #{e\ 3213}#))))))) - (#{global-extend\ 383}# + #{e\ 3214}#))))))) + (#{global-extend\ 384}# 'core 'let (letrec* - ((#{chi-let\ 3251}# - (lambda (#{e\ 3252}# - #{r\ 3253}# - #{w\ 3254}# - #{s\ 3255}# - #{mod\ 3256}# - #{constructor\ 3257}# - #{ids\ 3258}# - #{vals\ 3259}# - #{exps\ 3260}#) - (if (not (#{valid-bound-ids?\ 450}# #{ids\ 3258}#)) + ((#{chi-let\ 3252}# + (lambda (#{e\ 3253}# + #{r\ 3254}# + #{w\ 3255}# + #{s\ 3256}# + #{mod\ 3257}# + #{constructor\ 3258}# + #{ids\ 3259}# + #{vals\ 3260}# + #{exps\ 3261}#) + (if (not (#{valid-bound-ids?\ 451}# #{ids\ 3259}#)) (syntax-violation 'let "duplicate bound variable" - #{e\ 3252}#) + #{e\ 3253}#) (begin - (let ((#{labels\ 3272}# - (#{gen-labels\ 405}# #{ids\ 3258}#)) - (#{new-vars\ 3273}# - (map #{gen-var\ 500}# #{ids\ 3258}#))) + (let ((#{labels\ 3273}# + (#{gen-labels\ 406}# #{ids\ 3259}#)) + (#{new-vars\ 3274}# + (map #{gen-var\ 501}# #{ids\ 3259}#))) (begin - (let ((#{nw\ 3276}# - (#{make-binding-wrap\ 434}# - #{ids\ 3258}# - #{labels\ 3272}# - #{w\ 3254}#)) - (#{nr\ 3277}# - (#{extend-var-env\ 377}# - #{labels\ 3272}# - #{new-vars\ 3273}# - #{r\ 3253}#))) - (#{constructor\ 3257}# - #{s\ 3255}# - (map syntax->datum #{ids\ 3258}#) - #{new-vars\ 3273}# - (map (lambda (#{x\ 3278}#) - (#{chi\ 472}# - #{x\ 3278}# - #{r\ 3253}# - #{w\ 3254}# - #{mod\ 3256}#)) - #{vals\ 3259}#) - (#{chi-body\ 480}# - #{exps\ 3260}# - (#{source-wrap\ 458}# - #{e\ 3252}# - #{nw\ 3276}# - #{s\ 3255}# - #{mod\ 3256}#) - #{nr\ 3277}# - #{nw\ 3276}# - #{mod\ 3256}#)))))))))) + (let ((#{nw\ 3277}# + (#{make-binding-wrap\ 435}# + #{ids\ 3259}# + #{labels\ 3273}# + #{w\ 3255}#)) + (#{nr\ 3278}# + (#{extend-var-env\ 378}# + #{labels\ 3273}# + #{new-vars\ 3274}# + #{r\ 3254}#))) + (#{constructor\ 3258}# + #{s\ 3256}# + (map syntax->datum #{ids\ 3259}#) + #{new-vars\ 3274}# + (map (lambda (#{x\ 3279}#) + (#{chi\ 473}# + #{x\ 3279}# + #{r\ 3254}# + #{w\ 3255}# + #{mod\ 3257}#)) + #{vals\ 3260}#) + (#{chi-body\ 481}# + #{exps\ 3261}# + (#{source-wrap\ 459}# + #{e\ 3253}# + #{nw\ 3277}# + #{s\ 3256}# + #{mod\ 3257}#) + #{nr\ 3278}# + #{nw\ 3277}# + #{mod\ 3257}#)))))))))) (begin - (lambda (#{e\ 3280}# - #{r\ 3281}# - #{w\ 3282}# - #{s\ 3283}# - #{mod\ 3284}#) - (let ((#{tmp\ 3290}# #{e\ 3280}#)) - (let ((#{tmp\ 3291}# + (lambda (#{e\ 3281}# + #{r\ 3282}# + #{w\ 3283}# + #{s\ 3284}# + #{mod\ 3285}#) + (let ((#{tmp\ 3291}# #{e\ 3281}#)) + (let ((#{tmp\ 3292}# ($sc-dispatch - #{tmp\ 3290}# + #{tmp\ 3291}# '(any #(each (any any)) any . each-any)))) - (if (if #{tmp\ 3291}# + (if (if #{tmp\ 3292}# (@apply - (lambda (#{_\ 3297}# - #{id\ 3298}# - #{val\ 3299}# - #{e1\ 3300}# - #{e2\ 3301}#) - (and-map #{id?\ 387}# #{id\ 3298}#)) - #{tmp\ 3291}#) + (lambda (#{_\ 3298}# + #{id\ 3299}# + #{val\ 3300}# + #{e1\ 3301}# + #{e2\ 3302}#) + (and-map #{id?\ 388}# #{id\ 3299}#)) + #{tmp\ 3292}#) #f) (@apply - (lambda (#{_\ 3308}# - #{id\ 3309}# - #{val\ 3310}# - #{e1\ 3311}# - #{e2\ 3312}#) - (#{chi-let\ 3251}# - #{e\ 3280}# - #{r\ 3281}# - #{w\ 3282}# - #{s\ 3283}# - #{mod\ 3284}# - #{build-let\ 341}# - #{id\ 3309}# - #{val\ 3310}# - (cons #{e1\ 3311}# #{e2\ 3312}#))) - #{tmp\ 3291}#) - (let ((#{tmp\ 3316}# + (lambda (#{_\ 3309}# + #{id\ 3310}# + #{val\ 3311}# + #{e1\ 3312}# + #{e2\ 3313}#) + (#{chi-let\ 3252}# + #{e\ 3281}# + #{r\ 3282}# + #{w\ 3283}# + #{s\ 3284}# + #{mod\ 3285}# + #{build-let\ 342}# + #{id\ 3310}# + #{val\ 3311}# + (cons #{e1\ 3312}# #{e2\ 3313}#))) + #{tmp\ 3292}#) + (let ((#{tmp\ 3317}# ($sc-dispatch - #{tmp\ 3290}# + #{tmp\ 3291}# '(any any #(each (any any)) any . each-any)))) - (if (if #{tmp\ 3316}# + (if (if #{tmp\ 3317}# (@apply - (lambda (#{_\ 3323}# - #{f\ 3324}# - #{id\ 3325}# - #{val\ 3326}# - #{e1\ 3327}# - #{e2\ 3328}#) - (if (#{id?\ 387}# #{f\ 3324}#) - (and-map #{id?\ 387}# #{id\ 3325}#) + (lambda (#{_\ 3324}# + #{f\ 3325}# + #{id\ 3326}# + #{val\ 3327}# + #{e1\ 3328}# + #{e2\ 3329}#) + (if (#{id?\ 388}# #{f\ 3325}#) + (and-map #{id?\ 388}# #{id\ 3326}#) #f)) - #{tmp\ 3316}#) + #{tmp\ 3317}#) #f) (@apply - (lambda (#{_\ 3338}# - #{f\ 3339}# - #{id\ 3340}# - #{val\ 3341}# - #{e1\ 3342}# - #{e2\ 3343}#) - (#{chi-let\ 3251}# - #{e\ 3280}# - #{r\ 3281}# - #{w\ 3282}# - #{s\ 3283}# - #{mod\ 3284}# - #{build-named-let\ 343}# - (cons #{f\ 3339}# #{id\ 3340}#) - #{val\ 3341}# - (cons #{e1\ 3342}# #{e2\ 3343}#))) - #{tmp\ 3316}#) - (let ((#{_\ 3348}# #{tmp\ 3290}#)) + (lambda (#{_\ 3339}# + #{f\ 3340}# + #{id\ 3341}# + #{val\ 3342}# + #{e1\ 3343}# + #{e2\ 3344}#) + (#{chi-let\ 3252}# + #{e\ 3281}# + #{r\ 3282}# + #{w\ 3283}# + #{s\ 3284}# + #{mod\ 3285}# + #{build-named-let\ 344}# + (cons #{f\ 3340}# #{id\ 3341}#) + #{val\ 3342}# + (cons #{e1\ 3343}# #{e2\ 3344}#))) + #{tmp\ 3317}#) + (let ((#{_\ 3349}# #{tmp\ 3291}#)) (syntax-violation 'let "bad let" - (#{source-wrap\ 458}# - #{e\ 3280}# - #{w\ 3282}# - #{s\ 3283}# - #{mod\ 3284}#)))))))))))) - (#{global-extend\ 383}# + (#{source-wrap\ 459}# + #{e\ 3281}# + #{w\ 3283}# + #{s\ 3284}# + #{mod\ 3285}#)))))))))))) + (#{global-extend\ 384}# 'core 'letrec - (lambda (#{e\ 3349}# - #{r\ 3350}# - #{w\ 3351}# - #{s\ 3352}# - #{mod\ 3353}#) - (let ((#{tmp\ 3359}# #{e\ 3349}#)) - (let ((#{tmp\ 3360}# + (lambda (#{e\ 3350}# + #{r\ 3351}# + #{w\ 3352}# + #{s\ 3353}# + #{mod\ 3354}#) + (let ((#{tmp\ 3360}# #{e\ 3350}#)) + (let ((#{tmp\ 3361}# ($sc-dispatch - #{tmp\ 3359}# + #{tmp\ 3360}# '(any #(each (any any)) any . each-any)))) - (if (if #{tmp\ 3360}# + (if (if #{tmp\ 3361}# (@apply - (lambda (#{_\ 3366}# - #{id\ 3367}# - #{val\ 3368}# - #{e1\ 3369}# - #{e2\ 3370}#) - (and-map #{id?\ 387}# #{id\ 3367}#)) - #{tmp\ 3360}#) + (lambda (#{_\ 3367}# + #{id\ 3368}# + #{val\ 3369}# + #{e1\ 3370}# + #{e2\ 3371}#) + (and-map #{id?\ 388}# #{id\ 3368}#)) + #{tmp\ 3361}#) #f) (@apply - (lambda (#{_\ 3377}# - #{id\ 3378}# - #{val\ 3379}# - #{e1\ 3380}# - #{e2\ 3381}#) + (lambda (#{_\ 3378}# + #{id\ 3379}# + #{val\ 3380}# + #{e1\ 3381}# + #{e2\ 3382}#) (begin - (let ((#{ids\ 3383}# #{id\ 3378}#)) - (if (not (#{valid-bound-ids?\ 450}# - #{ids\ 3383}#)) + (let ((#{ids\ 3384}# #{id\ 3379}#)) + (if (not (#{valid-bound-ids?\ 451}# + #{ids\ 3384}#)) (syntax-violation 'letrec "duplicate bound variable" - #{e\ 3349}#) + #{e\ 3350}#) (begin - (let ((#{labels\ 3387}# - (#{gen-labels\ 405}# #{ids\ 3383}#)) - (#{new-vars\ 3388}# - (map #{gen-var\ 500}# - #{ids\ 3383}#))) + (let ((#{labels\ 3388}# + (#{gen-labels\ 406}# #{ids\ 3384}#)) + (#{new-vars\ 3389}# + (map #{gen-var\ 501}# + #{ids\ 3384}#))) (begin - (let ((#{w\ 3391}# - (#{make-binding-wrap\ 434}# - #{ids\ 3383}# - #{labels\ 3387}# - #{w\ 3351}#)) - (#{r\ 3392}# - (#{extend-var-env\ 377}# - #{labels\ 3387}# - #{new-vars\ 3388}# - #{r\ 3350}#))) - (#{build-letrec\ 345}# - #{s\ 3352}# + (let ((#{w\ 3392}# + (#{make-binding-wrap\ 435}# + #{ids\ 3384}# + #{labels\ 3388}# + #{w\ 3352}#)) + (#{r\ 3393}# + (#{extend-var-env\ 378}# + #{labels\ 3388}# + #{new-vars\ 3389}# + #{r\ 3351}#))) + (#{build-letrec\ 346}# + #{s\ 3353}# #f - (map syntax->datum #{ids\ 3383}#) - #{new-vars\ 3388}# - (map (lambda (#{x\ 3393}#) - (#{chi\ 472}# - #{x\ 3393}# - #{r\ 3392}# - #{w\ 3391}# - #{mod\ 3353}#)) - #{val\ 3379}#) - (#{chi-body\ 480}# - (cons #{e1\ 3380}# #{e2\ 3381}#) - (#{source-wrap\ 458}# - #{e\ 3349}# - #{w\ 3391}# - #{s\ 3352}# - #{mod\ 3353}#) - #{r\ 3392}# - #{w\ 3391}# - #{mod\ 3353}#)))))))))) - #{tmp\ 3360}#) - (let ((#{_\ 3398}# #{tmp\ 3359}#)) + (map syntax->datum #{ids\ 3384}#) + #{new-vars\ 3389}# + (map (lambda (#{x\ 3394}#) + (#{chi\ 473}# + #{x\ 3394}# + #{r\ 3393}# + #{w\ 3392}# + #{mod\ 3354}#)) + #{val\ 3380}#) + (#{chi-body\ 481}# + (cons #{e1\ 3381}# #{e2\ 3382}#) + (#{source-wrap\ 459}# + #{e\ 3350}# + #{w\ 3392}# + #{s\ 3353}# + #{mod\ 3354}#) + #{r\ 3393}# + #{w\ 3392}# + #{mod\ 3354}#)))))))))) + #{tmp\ 3361}#) + (let ((#{_\ 3399}# #{tmp\ 3360}#)) (syntax-violation 'letrec "bad letrec" - (#{source-wrap\ 458}# - #{e\ 3349}# - #{w\ 3351}# - #{s\ 3352}# - #{mod\ 3353}#)))))))) - (#{global-extend\ 383}# + (#{source-wrap\ 459}# + #{e\ 3350}# + #{w\ 3352}# + #{s\ 3353}# + #{mod\ 3354}#)))))))) + (#{global-extend\ 384}# 'core 'letrec* - (lambda (#{e\ 3399}# - #{r\ 3400}# - #{w\ 3401}# - #{s\ 3402}# - #{mod\ 3403}#) - (let ((#{tmp\ 3409}# #{e\ 3399}#)) - (let ((#{tmp\ 3410}# + (lambda (#{e\ 3400}# + #{r\ 3401}# + #{w\ 3402}# + #{s\ 3403}# + #{mod\ 3404}#) + (let ((#{tmp\ 3410}# #{e\ 3400}#)) + (let ((#{tmp\ 3411}# ($sc-dispatch - #{tmp\ 3409}# + #{tmp\ 3410}# '(any #(each (any any)) any . each-any)))) - (if (if #{tmp\ 3410}# + (if (if #{tmp\ 3411}# (@apply - (lambda (#{_\ 3416}# - #{id\ 3417}# - #{val\ 3418}# - #{e1\ 3419}# - #{e2\ 3420}#) - (and-map #{id?\ 387}# #{id\ 3417}#)) - #{tmp\ 3410}#) + (lambda (#{_\ 3417}# + #{id\ 3418}# + #{val\ 3419}# + #{e1\ 3420}# + #{e2\ 3421}#) + (and-map #{id?\ 388}# #{id\ 3418}#)) + #{tmp\ 3411}#) #f) (@apply - (lambda (#{_\ 3427}# - #{id\ 3428}# - #{val\ 3429}# - #{e1\ 3430}# - #{e2\ 3431}#) + (lambda (#{_\ 3428}# + #{id\ 3429}# + #{val\ 3430}# + #{e1\ 3431}# + #{e2\ 3432}#) (begin - (let ((#{ids\ 3433}# #{id\ 3428}#)) - (if (not (#{valid-bound-ids?\ 450}# - #{ids\ 3433}#)) + (let ((#{ids\ 3434}# #{id\ 3429}#)) + (if (not (#{valid-bound-ids?\ 451}# + #{ids\ 3434}#)) (syntax-violation 'letrec* "duplicate bound variable" - #{e\ 3399}#) + #{e\ 3400}#) (begin - (let ((#{labels\ 3437}# - (#{gen-labels\ 405}# #{ids\ 3433}#)) - (#{new-vars\ 3438}# - (map #{gen-var\ 500}# - #{ids\ 3433}#))) + (let ((#{labels\ 3438}# + (#{gen-labels\ 406}# #{ids\ 3434}#)) + (#{new-vars\ 3439}# + (map #{gen-var\ 501}# + #{ids\ 3434}#))) (begin - (let ((#{w\ 3441}# - (#{make-binding-wrap\ 434}# - #{ids\ 3433}# - #{labels\ 3437}# - #{w\ 3401}#)) - (#{r\ 3442}# - (#{extend-var-env\ 377}# - #{labels\ 3437}# - #{new-vars\ 3438}# - #{r\ 3400}#))) - (#{build-letrec\ 345}# - #{s\ 3402}# + (let ((#{w\ 3442}# + (#{make-binding-wrap\ 435}# + #{ids\ 3434}# + #{labels\ 3438}# + #{w\ 3402}#)) + (#{r\ 3443}# + (#{extend-var-env\ 378}# + #{labels\ 3438}# + #{new-vars\ 3439}# + #{r\ 3401}#))) + (#{build-letrec\ 346}# + #{s\ 3403}# #t - (map syntax->datum #{ids\ 3433}#) - #{new-vars\ 3438}# - (map (lambda (#{x\ 3443}#) - (#{chi\ 472}# - #{x\ 3443}# - #{r\ 3442}# - #{w\ 3441}# - #{mod\ 3403}#)) - #{val\ 3429}#) - (#{chi-body\ 480}# - (cons #{e1\ 3430}# #{e2\ 3431}#) - (#{source-wrap\ 458}# - #{e\ 3399}# - #{w\ 3441}# - #{s\ 3402}# - #{mod\ 3403}#) - #{r\ 3442}# - #{w\ 3441}# - #{mod\ 3403}#)))))))))) - #{tmp\ 3410}#) - (let ((#{_\ 3448}# #{tmp\ 3409}#)) + (map syntax->datum #{ids\ 3434}#) + #{new-vars\ 3439}# + (map (lambda (#{x\ 3444}#) + (#{chi\ 473}# + #{x\ 3444}# + #{r\ 3443}# + #{w\ 3442}# + #{mod\ 3404}#)) + #{val\ 3430}#) + (#{chi-body\ 481}# + (cons #{e1\ 3431}# #{e2\ 3432}#) + (#{source-wrap\ 459}# + #{e\ 3400}# + #{w\ 3442}# + #{s\ 3403}# + #{mod\ 3404}#) + #{r\ 3443}# + #{w\ 3442}# + #{mod\ 3404}#)))))))))) + #{tmp\ 3411}#) + (let ((#{_\ 3449}# #{tmp\ 3410}#)) (syntax-violation 'letrec* "bad letrec*" - (#{source-wrap\ 458}# - #{e\ 3399}# - #{w\ 3401}# - #{s\ 3402}# - #{mod\ 3403}#)))))))) - (#{global-extend\ 383}# + (#{source-wrap\ 459}# + #{e\ 3400}# + #{w\ 3402}# + #{s\ 3403}# + #{mod\ 3404}#)))))))) + (#{global-extend\ 384}# 'core 'set! - (lambda (#{e\ 3449}# - #{r\ 3450}# - #{w\ 3451}# - #{s\ 3452}# - #{mod\ 3453}#) - (let ((#{tmp\ 3459}# #{e\ 3449}#)) - (let ((#{tmp\ 3460}# + (lambda (#{e\ 3450}# + #{r\ 3451}# + #{w\ 3452}# + #{s\ 3453}# + #{mod\ 3454}#) + (let ((#{tmp\ 3460}# #{e\ 3450}#)) + (let ((#{tmp\ 3461}# ($sc-dispatch - #{tmp\ 3459}# + #{tmp\ 3460}# '(any any any)))) - (if (if #{tmp\ 3460}# + (if (if #{tmp\ 3461}# (@apply - (lambda (#{_\ 3464}# #{id\ 3465}# #{val\ 3466}#) - (#{id?\ 387}# #{id\ 3465}#)) - #{tmp\ 3460}#) + (lambda (#{_\ 3465}# #{id\ 3466}# #{val\ 3467}#) + (#{id?\ 388}# #{id\ 3466}#)) + #{tmp\ 3461}#) #f) (@apply - (lambda (#{_\ 3470}# #{id\ 3471}# #{val\ 3472}#) + (lambda (#{_\ 3471}# #{id\ 3472}# #{val\ 3473}#) (begin - (let ((#{val\ 3475}# - (#{chi\ 472}# - #{val\ 3472}# - #{r\ 3450}# - #{w\ 3451}# - #{mod\ 3453}#)) - (#{n\ 3476}# - (#{id-var-name\ 444}# - #{id\ 3471}# - #{w\ 3451}#))) + (let ((#{n\ 3475}# + (#{id-var-name\ 445}# + #{id\ 3472}# + #{w\ 3452}#))) (begin - (let ((#{b\ 3478}# - (#{lookup\ 381}# - #{n\ 3476}# - #{r\ 3450}# - #{mod\ 3453}#))) + (let ((#{b\ 3477}# + (#{lookup\ 382}# + #{n\ 3475}# + #{r\ 3451}# + #{mod\ 3454}#))) (begin - (let ((#{atom-key\ 3481}# - (#{binding-type\ 370}# - #{b\ 3478}#))) - (if (eqv? #{atom-key\ 3481}# + (let ((#{atom-key\ 3480}# + (#{binding-type\ 371}# + #{b\ 3477}#))) + (if (eqv? #{atom-key\ 3480}# 'lexical) - (#{build-lexical-assignment\ 317}# - #{s\ 3452}# - (syntax->datum #{id\ 3471}#) - (#{binding-value\ 372}# #{b\ 3478}#) - #{val\ 3475}#) - (if (eqv? #{atom-key\ 3481}# + (#{build-lexical-assignment\ 318}# + #{s\ 3453}# + (syntax->datum #{id\ 3472}#) + (#{binding-value\ 373}# #{b\ 3477}#) + (#{chi\ 473}# + #{val\ 3473}# + #{r\ 3451}# + #{w\ 3452}# + #{mod\ 3454}#)) + (if (eqv? #{atom-key\ 3480}# 'global) - (#{build-global-assignment\ 323}# - #{s\ 3452}# - #{n\ 3476}# - #{val\ 3475}# - #{mod\ 3453}#) - (if (eqv? #{atom-key\ 3481}# - 'displaced-lexical) - (syntax-violation - 'set! - "identifier out of context" - (#{wrap\ 456}# - #{id\ 3471}# - #{w\ 3451}# - #{mod\ 3453}#)) - (syntax-violation - 'set! - "bad set!" - (#{source-wrap\ 458}# - #{e\ 3449}# - #{w\ 3451}# - #{s\ 3452}# - #{mod\ 3453}#)))))))))))) - #{tmp\ 3460}#) - (let ((#{tmp\ 3486}# + (#{build-global-assignment\ 324}# + #{s\ 3453}# + #{n\ 3475}# + (#{chi\ 473}# + #{val\ 3473}# + #{r\ 3451}# + #{w\ 3452}# + #{mod\ 3454}#) + #{mod\ 3454}#) + (if (eqv? #{atom-key\ 3480}# + 'macro) + (begin + (let ((#{p\ 3485}# + (#{binding-value\ 373}# + #{b\ 3477}#))) + (if (procedure-property + #{p\ 3485}# + 'variable-transformer) + (#{chi\ 473}# + (#{chi-macro\ 479}# + #{p\ 3485}# + #{e\ 3450}# + #{r\ 3451}# + #{w\ 3452}# + #{s\ 3453}# + #f + #{mod\ 3454}#) + #{r\ 3451}# + #{w\ 3452}# + #{mod\ 3454}#) + (syntax-violation + 'set! + "not a variable transformer" + (#{wrap\ 457}# + #{e\ 3450}# + #{w\ 3452}# + #{mod\ 3454}#) + (#{wrap\ 457}# + #{id\ 3472}# + #{w\ 3452}# + #{mod\ 3454}#))))) + (if (eqv? #{atom-key\ 3480}# + 'displaced-lexical) + (syntax-violation + 'set! + "identifier out of context" + (#{wrap\ 457}# + #{id\ 3472}# + #{w\ 3452}# + #{mod\ 3454}#)) + (syntax-violation + 'set! + "bad set!" + (#{source-wrap\ 459}# + #{e\ 3450}# + #{w\ 3452}# + #{s\ 3453}# + #{mod\ 3454}#))))))))))))) + #{tmp\ 3461}#) + (let ((#{tmp\ 3488}# ($sc-dispatch - #{tmp\ 3459}# + #{tmp\ 3460}# '(any (any . each-any) any)))) - (if #{tmp\ 3486}# + (if #{tmp\ 3488}# (@apply - (lambda (#{_\ 3491}# - #{head\ 3492}# - #{tail\ 3493}# - #{val\ 3494}#) + (lambda (#{_\ 3493}# + #{head\ 3494}# + #{tail\ 3495}# + #{val\ 3496}#) (call-with-values (lambda () - (#{syntax-type\ 468}# - #{head\ 3492}# - #{r\ 3450}# + (#{syntax-type\ 469}# + #{head\ 3494}# + #{r\ 3451}# '(()) #f #f - #{mod\ 3453}# + #{mod\ 3454}# #t)) - (lambda (#{type\ 3497}# - #{value\ 3498}# - #{ee\ 3499}# - #{ww\ 3500}# - #{ss\ 3501}# - #{modmod\ 3502}#) - (if (eqv? #{type\ 3497}# (quote module-ref)) + (lambda (#{type\ 3499}# + #{value\ 3500}# + #{ee\ 3501}# + #{ww\ 3502}# + #{ss\ 3503}# + #{modmod\ 3504}#) + (if (eqv? #{type\ 3499}# (quote module-ref)) (begin - (let ((#{val\ 3511}# - (#{chi\ 472}# - #{val\ 3494}# - #{r\ 3450}# - #{w\ 3451}# - #{mod\ 3453}#))) + (let ((#{val\ 3513}# + (#{chi\ 473}# + #{val\ 3496}# + #{r\ 3451}# + #{w\ 3452}# + #{mod\ 3454}#))) (call-with-values (lambda () - (#{value\ 3498}# - (cons #{head\ 3492}# - #{tail\ 3493}#) - #{r\ 3450}# - #{w\ 3451}#)) - (lambda (#{e\ 3513}# - #{r\ 3514}# - #{w\ 3515}# - #{s*\ 3516}# - #{mod\ 3517}#) - (let ((#{tmp\ 3523}# #{e\ 3513}#)) - (let ((#{tmp\ 3524}# - (list #{tmp\ 3523}#))) - (if (if #{tmp\ 3524}# + (#{value\ 3500}# + (cons #{head\ 3494}# + #{tail\ 3495}#) + #{r\ 3451}# + #{w\ 3452}#)) + (lambda (#{e\ 3515}# + #{r\ 3516}# + #{w\ 3517}# + #{s*\ 3518}# + #{mod\ 3519}#) + (let ((#{tmp\ 3525}# #{e\ 3515}#)) + (let ((#{tmp\ 3526}# + (list #{tmp\ 3525}#))) + (if (if #{tmp\ 3526}# (@apply - (lambda (#{e\ 3526}#) - (#{id?\ 387}# - #{e\ 3526}#)) - #{tmp\ 3524}#) + (lambda (#{e\ 3528}#) + (#{id?\ 388}# + #{e\ 3528}#)) + #{tmp\ 3526}#) #f) (@apply - (lambda (#{e\ 3528}#) - (#{build-global-assignment\ 323}# - #{s\ 3452}# + (lambda (#{e\ 3530}#) + (#{build-global-assignment\ 324}# + #{s\ 3453}# (syntax->datum - #{e\ 3528}#) - #{val\ 3511}# - #{mod\ 3517}#)) - #{tmp\ 3524}#) + #{e\ 3530}#) + #{val\ 3513}# + #{mod\ 3519}#)) + #{tmp\ 3526}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 3523}#)))))))) - (#{build-application\ 309}# - #{s\ 3452}# - (#{chi\ 472}# + #{tmp\ 3525}#)))))))) + (#{build-application\ 310}# + #{s\ 3453}# + (#{chi\ 473}# (list '#(syntax-object setter ((top) @@ -10286,19 +10320,19 @@ (top) (top) (top)) - #("i3503" - "i3504" - "i3505" + #("i3505" "i3506" "i3507" - "i3508")) + "i3508" + "i3509" + "i3510")) #(ribcage #(_ head tail val) #((top) (top) (top) (top)) - #("i3487" - "i3488" - "i3489" - "i3490")) + #("i3489" + "i3490" + "i3491" + "i3492")) #(ribcage () () ()) #(ribcage #(e r w s mod) @@ -10307,11 +10341,11 @@ (top) (top) (top)) - #("i3454" - "i3455" + #("i3455" "i3456" "i3457" - "i3458")) + "i3458" + "i3459")) #(ribcage (lambda-var-list gen-var @@ -10587,197 +10621,197 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" "i37" "i36" "i34"))) + ("i39" "i38" "i37" "i35"))) (hygiene guile)) - #{head\ 3492}#) - #{r\ 3450}# - #{w\ 3451}# - #{mod\ 3453}#) - (map (lambda (#{e\ 3530}#) - (#{chi\ 472}# - #{e\ 3530}# - #{r\ 3450}# - #{w\ 3451}# - #{mod\ 3453}#)) + #{head\ 3494}#) + #{r\ 3451}# + #{w\ 3452}# + #{mod\ 3454}#) + (map (lambda (#{e\ 3532}#) + (#{chi\ 473}# + #{e\ 3532}# + #{r\ 3451}# + #{w\ 3452}# + #{mod\ 3454}#)) (append - #{tail\ 3493}# - (list #{val\ 3494}#)))))))) - #{tmp\ 3486}#) - (let ((#{_\ 3534}# #{tmp\ 3459}#)) + #{tail\ 3495}# + (list #{val\ 3496}#)))))))) + #{tmp\ 3488}#) + (let ((#{_\ 3536}# #{tmp\ 3460}#)) (syntax-violation 'set! "bad set!" - (#{source-wrap\ 458}# - #{e\ 3449}# - #{w\ 3451}# - #{s\ 3452}# - #{mod\ 3453}#)))))))))) - (#{global-extend\ 383}# + (#{source-wrap\ 459}# + #{e\ 3450}# + #{w\ 3452}# + #{s\ 3453}# + #{mod\ 3454}#)))))))))) + (#{global-extend\ 384}# 'module-ref '@ - (lambda (#{e\ 3535}# #{r\ 3536}# #{w\ 3537}#) - (let ((#{tmp\ 3541}# #{e\ 3535}#)) - (let ((#{tmp\ 3542}# + (lambda (#{e\ 3537}# #{r\ 3538}# #{w\ 3539}#) + (let ((#{tmp\ 3543}# #{e\ 3537}#)) + (let ((#{tmp\ 3544}# ($sc-dispatch - #{tmp\ 3541}# + #{tmp\ 3543}# '(any each-any any)))) - (if (if #{tmp\ 3542}# + (if (if #{tmp\ 3544}# (@apply - (lambda (#{_\ 3546}# #{mod\ 3547}# #{id\ 3548}#) - (if (and-map #{id?\ 387}# #{mod\ 3547}#) - (#{id?\ 387}# #{id\ 3548}#) + (lambda (#{_\ 3548}# #{mod\ 3549}# #{id\ 3550}#) + (if (and-map #{id?\ 388}# #{mod\ 3549}#) + (#{id?\ 388}# #{id\ 3550}#) #f)) - #{tmp\ 3542}#) + #{tmp\ 3544}#) #f) (@apply - (lambda (#{_\ 3555}# #{mod\ 3556}# #{id\ 3557}#) + (lambda (#{_\ 3557}# #{mod\ 3558}# #{id\ 3559}#) (values - (syntax->datum #{id\ 3557}#) - #{r\ 3536}# - #{w\ 3537}# + (syntax->datum #{id\ 3559}#) + #{r\ 3538}# + #{w\ 3539}# #f (syntax->datum (cons '#(syntax-object @@ -10786,12 +10820,12 @@ #(ribcage #(_ mod id) #((top) (top) (top)) - #("i3552" "i3553" "i3554")) + #("i3554" "i3555" "i3556")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) - #("i3538" "i3539" "i3540")) + #("i3540" "i3541" "i3542")) #(ribcage (lambda-var-list gen-var @@ -11067,224 +11101,224 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" "i37" "i36" "i34"))) + ("i39" "i38" "i37" "i35"))) (hygiene guile)) - #{mod\ 3556}#)))) - #{tmp\ 3542}#) + #{mod\ 3558}#)))) + #{tmp\ 3544}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 3541}#)))))) - (#{global-extend\ 383}# + #{tmp\ 3543}#)))))) + (#{global-extend\ 384}# 'module-ref '@@ - (lambda (#{e\ 3559}# #{r\ 3560}# #{w\ 3561}#) + (lambda (#{e\ 3561}# #{r\ 3562}# #{w\ 3563}#) (letrec* - ((#{remodulate\ 3566}# - (lambda (#{x\ 3567}# #{mod\ 3568}#) - (if (pair? #{x\ 3567}#) - (cons (#{remodulate\ 3566}# - (car #{x\ 3567}#) - #{mod\ 3568}#) - (#{remodulate\ 3566}# - (cdr #{x\ 3567}#) - #{mod\ 3568}#)) - (if (#{syntax-object?\ 351}# #{x\ 3567}#) - (#{make-syntax-object\ 349}# - (#{remodulate\ 3566}# - (#{syntax-object-expression\ 353}# #{x\ 3567}#) - #{mod\ 3568}#) - (#{syntax-object-wrap\ 355}# #{x\ 3567}#) - #{mod\ 3568}#) - (if (vector? #{x\ 3567}#) + ((#{remodulate\ 3568}# + (lambda (#{x\ 3569}# #{mod\ 3570}#) + (if (pair? #{x\ 3569}#) + (cons (#{remodulate\ 3568}# + (car #{x\ 3569}#) + #{mod\ 3570}#) + (#{remodulate\ 3568}# + (cdr #{x\ 3569}#) + #{mod\ 3570}#)) + (if (#{syntax-object?\ 352}# #{x\ 3569}#) + (#{make-syntax-object\ 350}# + (#{remodulate\ 3568}# + (#{syntax-object-expression\ 354}# #{x\ 3569}#) + #{mod\ 3570}#) + (#{syntax-object-wrap\ 356}# #{x\ 3569}#) + #{mod\ 3570}#) + (if (vector? #{x\ 3569}#) (begin - (let ((#{n\ 3579}# (vector-length #{x\ 3567}#))) + (let ((#{n\ 3581}# (vector-length #{x\ 3569}#))) (begin - (let ((#{v\ 3581}# - (make-vector #{n\ 3579}#))) + (let ((#{v\ 3583}# + (make-vector #{n\ 3581}#))) (letrec* - ((#{loop\ 3584}# - (lambda (#{i\ 3585}#) - (if (#{fx=\ 292}# - #{i\ 3585}# - #{n\ 3579}#) - (begin (if #f #f) #{v\ 3581}#) + ((#{loop\ 3586}# + (lambda (#{i\ 3587}#) + (if (#{fx=\ 293}# + #{i\ 3587}# + #{n\ 3581}#) + (begin (if #f #f) #{v\ 3583}#) (begin (vector-set! - #{v\ 3581}# - #{i\ 3585}# - (#{remodulate\ 3566}# + #{v\ 3583}# + #{i\ 3587}# + (#{remodulate\ 3568}# (vector-ref - #{x\ 3567}# - #{i\ 3585}#) - #{mod\ 3568}#)) - (#{loop\ 3584}# - (#{fx+\ 288}# - #{i\ 3585}# + #{x\ 3569}# + #{i\ 3587}#) + #{mod\ 3570}#)) + (#{loop\ 3586}# + (#{fx+\ 289}# + #{i\ 3587}# 1))))))) - (begin (#{loop\ 3584}# 0))))))) - #{x\ 3567}#)))))) + (begin (#{loop\ 3586}# 0))))))) + #{x\ 3569}#)))))) (begin - (let ((#{tmp\ 3589}# #{e\ 3559}#)) - (let ((#{tmp\ 3590}# + (let ((#{tmp\ 3591}# #{e\ 3561}#)) + (let ((#{tmp\ 3592}# ($sc-dispatch - #{tmp\ 3589}# + #{tmp\ 3591}# '(any each-any any)))) - (if (if #{tmp\ 3590}# + (if (if #{tmp\ 3592}# (@apply - (lambda (#{_\ 3594}# - #{mod\ 3595}# - #{exp\ 3596}#) - (and-map #{id?\ 387}# #{mod\ 3595}#)) - #{tmp\ 3590}#) + (lambda (#{_\ 3596}# + #{mod\ 3597}# + #{exp\ 3598}#) + (and-map #{id?\ 388}# #{mod\ 3597}#)) + #{tmp\ 3592}#) #f) (@apply - (lambda (#{_\ 3601}# #{mod\ 3602}# #{exp\ 3603}#) + (lambda (#{_\ 3603}# #{mod\ 3604}# #{exp\ 3605}#) (begin - (let ((#{mod\ 3605}# + (let ((#{mod\ 3607}# (syntax->datum (cons '#(syntax-object private @@ -11292,19 +11326,19 @@ #(ribcage #(_ mod exp) #((top) (top) (top)) - #("i3598" - "i3599" - "i3600")) + #("i3600" + "i3601" + "i3602")) #(ribcage (remodulate) ((top)) - ("i3565")) + ("i3567")) #(ribcage #(e r w) #((top) (top) (top)) - #("i3562" - "i3563" - "i3564")) + #("i3564" + "i3565" + "i3566")) #(ribcage (lambda-var-list gen-var @@ -11580,662 +11614,662 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile)) - #{mod\ 3602}#)))) + #{mod\ 3604}#)))) (values - (#{remodulate\ 3566}# - #{exp\ 3603}# - #{mod\ 3605}#) - #{r\ 3560}# - #{w\ 3561}# - (#{source-annotation\ 366}# #{exp\ 3603}#) - #{mod\ 3605}#)))) - #{tmp\ 3590}#) + (#{remodulate\ 3568}# + #{exp\ 3605}# + #{mod\ 3607}#) + #{r\ 3562}# + #{w\ 3563}# + (#{source-annotation\ 367}# #{exp\ 3605}#) + #{mod\ 3607}#)))) + #{tmp\ 3592}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 3589}#)))))))) - (#{global-extend\ 383}# + #{tmp\ 3591}#)))))))) + (#{global-extend\ 384}# 'core 'if - (lambda (#{e\ 3607}# - #{r\ 3608}# - #{w\ 3609}# - #{s\ 3610}# - #{mod\ 3611}#) - (let ((#{tmp\ 3617}# #{e\ 3607}#)) - (let ((#{tmp\ 3618}# + (lambda (#{e\ 3609}# + #{r\ 3610}# + #{w\ 3611}# + #{s\ 3612}# + #{mod\ 3613}#) + (let ((#{tmp\ 3619}# #{e\ 3609}#)) + (let ((#{tmp\ 3620}# ($sc-dispatch - #{tmp\ 3617}# + #{tmp\ 3619}# '(any any any)))) - (if #{tmp\ 3618}# + (if #{tmp\ 3620}# (@apply - (lambda (#{_\ 3622}# #{test\ 3623}# #{then\ 3624}#) - (#{build-conditional\ 311}# - #{s\ 3610}# - (#{chi\ 472}# - #{test\ 3623}# - #{r\ 3608}# - #{w\ 3609}# - #{mod\ 3611}#) - (#{chi\ 472}# - #{then\ 3624}# - #{r\ 3608}# - #{w\ 3609}# - #{mod\ 3611}#) - (#{build-void\ 307}# #f))) - #{tmp\ 3618}#) - (let ((#{tmp\ 3626}# + (lambda (#{_\ 3624}# #{test\ 3625}# #{then\ 3626}#) + (#{build-conditional\ 312}# + #{s\ 3612}# + (#{chi\ 473}# + #{test\ 3625}# + #{r\ 3610}# + #{w\ 3611}# + #{mod\ 3613}#) + (#{chi\ 473}# + #{then\ 3626}# + #{r\ 3610}# + #{w\ 3611}# + #{mod\ 3613}#) + (#{build-void\ 308}# #f))) + #{tmp\ 3620}#) + (let ((#{tmp\ 3628}# ($sc-dispatch - #{tmp\ 3617}# + #{tmp\ 3619}# '(any any any any)))) - (if #{tmp\ 3626}# + (if #{tmp\ 3628}# (@apply - (lambda (#{_\ 3631}# - #{test\ 3632}# - #{then\ 3633}# - #{else\ 3634}#) - (#{build-conditional\ 311}# - #{s\ 3610}# - (#{chi\ 472}# - #{test\ 3632}# - #{r\ 3608}# - #{w\ 3609}# - #{mod\ 3611}#) - (#{chi\ 472}# - #{then\ 3633}# - #{r\ 3608}# - #{w\ 3609}# - #{mod\ 3611}#) - (#{chi\ 472}# - #{else\ 3634}# - #{r\ 3608}# - #{w\ 3609}# - #{mod\ 3611}#))) - #{tmp\ 3626}#) + (lambda (#{_\ 3633}# + #{test\ 3634}# + #{then\ 3635}# + #{else\ 3636}#) + (#{build-conditional\ 312}# + #{s\ 3612}# + (#{chi\ 473}# + #{test\ 3634}# + #{r\ 3610}# + #{w\ 3611}# + #{mod\ 3613}#) + (#{chi\ 473}# + #{then\ 3635}# + #{r\ 3610}# + #{w\ 3611}# + #{mod\ 3613}#) + (#{chi\ 473}# + #{else\ 3636}# + #{r\ 3610}# + #{w\ 3611}# + #{mod\ 3613}#))) + #{tmp\ 3628}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 3617}#)))))))) - (#{global-extend\ 383}# + #{tmp\ 3619}#)))))))) + (#{global-extend\ 384}# 'core 'with-fluids - (lambda (#{e\ 3635}# - #{r\ 3636}# - #{w\ 3637}# - #{s\ 3638}# - #{mod\ 3639}#) - (let ((#{tmp\ 3645}# #{e\ 3635}#)) - (let ((#{tmp\ 3646}# + (lambda (#{e\ 3637}# + #{r\ 3638}# + #{w\ 3639}# + #{s\ 3640}# + #{mod\ 3641}#) + (let ((#{tmp\ 3647}# #{e\ 3637}#)) + (let ((#{tmp\ 3648}# ($sc-dispatch - #{tmp\ 3645}# + #{tmp\ 3647}# '(any #(each (any any)) any . each-any)))) - (if #{tmp\ 3646}# + (if #{tmp\ 3648}# (@apply - (lambda (#{_\ 3652}# - #{fluid\ 3653}# - #{val\ 3654}# - #{b\ 3655}# - #{b*\ 3656}#) - (#{build-dynlet\ 313}# - #{s\ 3638}# - (map (lambda (#{x\ 3657}#) - (#{chi\ 472}# - #{x\ 3657}# - #{r\ 3636}# - #{w\ 3637}# - #{mod\ 3639}#)) - #{fluid\ 3653}#) - (map (lambda (#{x\ 3660}#) - (#{chi\ 472}# - #{x\ 3660}# - #{r\ 3636}# - #{w\ 3637}# - #{mod\ 3639}#)) - #{val\ 3654}#) - (#{chi-body\ 480}# - (cons #{b\ 3655}# #{b*\ 3656}#) - (#{source-wrap\ 458}# - #{e\ 3635}# - #{w\ 3637}# - #{s\ 3638}# - #{mod\ 3639}#) - #{r\ 3636}# - #{w\ 3637}# - #{mod\ 3639}#))) - #{tmp\ 3646}#) + (lambda (#{_\ 3654}# + #{fluid\ 3655}# + #{val\ 3656}# + #{b\ 3657}# + #{b*\ 3658}#) + (#{build-dynlet\ 314}# + #{s\ 3640}# + (map (lambda (#{x\ 3659}#) + (#{chi\ 473}# + #{x\ 3659}# + #{r\ 3638}# + #{w\ 3639}# + #{mod\ 3641}#)) + #{fluid\ 3655}#) + (map (lambda (#{x\ 3662}#) + (#{chi\ 473}# + #{x\ 3662}# + #{r\ 3638}# + #{w\ 3639}# + #{mod\ 3641}#)) + #{val\ 3656}#) + (#{chi-body\ 481}# + (cons #{b\ 3657}# #{b*\ 3658}#) + (#{source-wrap\ 459}# + #{e\ 3637}# + #{w\ 3639}# + #{s\ 3640}# + #{mod\ 3641}#) + #{r\ 3638}# + #{w\ 3639}# + #{mod\ 3641}#))) + #{tmp\ 3648}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 3645}#)))))) - (#{global-extend\ 383}# + #{tmp\ 3647}#)))))) + (#{global-extend\ 384}# 'begin 'begin '()) - (#{global-extend\ 383}# + (#{global-extend\ 384}# 'define 'define '()) - (#{global-extend\ 383}# + (#{global-extend\ 384}# 'define-syntax 'define-syntax '()) - (#{global-extend\ 383}# + (#{global-extend\ 384}# 'eval-when 'eval-when '()) - (#{global-extend\ 383}# + (#{global-extend\ 384}# 'core 'syntax-case (letrec* - ((#{convert-pattern\ 3665}# - (lambda (#{pattern\ 3672}# #{keys\ 3673}#) + ((#{convert-pattern\ 3667}# + (lambda (#{pattern\ 3674}# #{keys\ 3675}#) (letrec* - ((#{cvt*\ 3677}# - (lambda (#{p*\ 3680}# #{n\ 3681}# #{ids\ 3682}#) - (if (null? #{p*\ 3680}#) - (values (quote ()) #{ids\ 3682}#) + ((#{cvt*\ 3679}# + (lambda (#{p*\ 3682}# #{n\ 3683}# #{ids\ 3684}#) + (if (null? #{p*\ 3682}#) + (values (quote ()) #{ids\ 3684}#) (call-with-values (lambda () - (#{cvt*\ 3677}# - (cdr #{p*\ 3680}#) - #{n\ 3681}# - #{ids\ 3682}#)) - (lambda (#{y\ 3686}# #{ids\ 3687}#) + (#{cvt*\ 3679}# + (cdr #{p*\ 3682}#) + #{n\ 3683}# + #{ids\ 3684}#)) + (lambda (#{y\ 3688}# #{ids\ 3689}#) (call-with-values (lambda () - (#{cvt\ 3679}# - (car #{p*\ 3680}#) - #{n\ 3681}# - #{ids\ 3687}#)) - (lambda (#{x\ 3690}# #{ids\ 3691}#) + (#{cvt\ 3681}# + (car #{p*\ 3682}#) + #{n\ 3683}# + #{ids\ 3689}#)) + (lambda (#{x\ 3692}# #{ids\ 3693}#) (values - (cons #{x\ 3690}# #{y\ 3686}#) - #{ids\ 3691}#)))))))) - (#{cvt\ 3679}# - (lambda (#{p\ 3694}# #{n\ 3695}# #{ids\ 3696}#) - (if (#{id?\ 387}# #{p\ 3694}#) - (if (#{bound-id-member?\ 454}# - #{p\ 3694}# - #{keys\ 3673}#) + (cons #{x\ 3692}# #{y\ 3688}#) + #{ids\ 3693}#)))))))) + (#{cvt\ 3681}# + (lambda (#{p\ 3696}# #{n\ 3697}# #{ids\ 3698}#) + (if (#{id?\ 388}# #{p\ 3696}#) + (if (#{bound-id-member?\ 455}# + #{p\ 3696}# + #{keys\ 3675}#) (values - (vector (quote free-id) #{p\ 3694}#) - #{ids\ 3696}#) + (vector (quote free-id) #{p\ 3696}#) + #{ids\ 3698}#) (values 'any - (cons (cons #{p\ 3694}# #{n\ 3695}#) - #{ids\ 3696}#))) - (let ((#{tmp\ 3700}# #{p\ 3694}#)) - (let ((#{tmp\ 3701}# + (cons (cons #{p\ 3696}# #{n\ 3697}#) + #{ids\ 3698}#))) + (let ((#{tmp\ 3702}# #{p\ 3696}#)) + (let ((#{tmp\ 3703}# ($sc-dispatch - #{tmp\ 3700}# + #{tmp\ 3702}# '(any any)))) - (if (if #{tmp\ 3701}# + (if (if #{tmp\ 3703}# (@apply - (lambda (#{x\ 3704}# #{dots\ 3705}#) - (#{ellipsis?\ 488}# - #{dots\ 3705}#)) - #{tmp\ 3701}#) + (lambda (#{x\ 3706}# #{dots\ 3707}#) + (#{ellipsis?\ 489}# + #{dots\ 3707}#)) + #{tmp\ 3703}#) #f) (@apply - (lambda (#{x\ 3708}# #{dots\ 3709}#) + (lambda (#{x\ 3710}# #{dots\ 3711}#) (call-with-values (lambda () - (#{cvt\ 3679}# - #{x\ 3708}# - (#{fx+\ 288}# #{n\ 3695}# 1) - #{ids\ 3696}#)) - (lambda (#{p\ 3710}# #{ids\ 3711}#) + (#{cvt\ 3681}# + #{x\ 3710}# + (#{fx+\ 289}# #{n\ 3697}# 1) + #{ids\ 3698}#)) + (lambda (#{p\ 3712}# #{ids\ 3713}#) (values - (if (eq? #{p\ 3710}# (quote any)) + (if (eq? #{p\ 3712}# (quote any)) 'each-any (vector 'each - #{p\ 3710}#)) - #{ids\ 3711}#)))) - #{tmp\ 3701}#) - (let ((#{tmp\ 3714}# + #{p\ 3712}#)) + #{ids\ 3713}#)))) + #{tmp\ 3703}#) + (let ((#{tmp\ 3716}# ($sc-dispatch - #{tmp\ 3700}# + #{tmp\ 3702}# '(any any . each-any)))) - (if (if #{tmp\ 3714}# + (if (if #{tmp\ 3716}# (@apply - (lambda (#{x\ 3718}# - #{dots\ 3719}# - #{ys\ 3720}#) - (#{ellipsis?\ 488}# - #{dots\ 3719}#)) - #{tmp\ 3714}#) + (lambda (#{x\ 3720}# + #{dots\ 3721}# + #{ys\ 3722}#) + (#{ellipsis?\ 489}# + #{dots\ 3721}#)) + #{tmp\ 3716}#) #f) (@apply - (lambda (#{x\ 3724}# - #{dots\ 3725}# - #{ys\ 3726}#) + (lambda (#{x\ 3726}# + #{dots\ 3727}# + #{ys\ 3728}#) (call-with-values (lambda () - (#{cvt*\ 3677}# - #{ys\ 3726}# - #{n\ 3695}# - #{ids\ 3696}#)) - (lambda (#{ys\ 3728}# - #{ids\ 3729}#) + (#{cvt*\ 3679}# + #{ys\ 3728}# + #{n\ 3697}# + #{ids\ 3698}#)) + (lambda (#{ys\ 3730}# + #{ids\ 3731}#) (call-with-values (lambda () - (#{cvt\ 3679}# - #{x\ 3724}# - (1+ #{n\ 3695}#) - #{ids\ 3729}#)) - (lambda (#{x\ 3732}# - #{ids\ 3733}#) + (#{cvt\ 3681}# + #{x\ 3726}# + (1+ #{n\ 3697}#) + #{ids\ 3731}#)) + (lambda (#{x\ 3734}# + #{ids\ 3735}#) (values (list->vector (cons 'each+ - (cons #{x\ 3732}# + (cons #{x\ 3734}# (cons (reverse - #{ys\ 3728}#) + #{ys\ 3730}#) '(()))))) - #{ids\ 3733}#)))))) - #{tmp\ 3714}#) - (let ((#{tmp\ 3737}# + #{ids\ 3735}#)))))) + #{tmp\ 3716}#) + (let ((#{tmp\ 3739}# ($sc-dispatch - #{tmp\ 3700}# + #{tmp\ 3702}# '(any . any)))) - (if #{tmp\ 3737}# + (if #{tmp\ 3739}# (@apply - (lambda (#{x\ 3740}# #{y\ 3741}#) + (lambda (#{x\ 3742}# #{y\ 3743}#) (call-with-values (lambda () - (#{cvt\ 3679}# - #{y\ 3741}# - #{n\ 3695}# - #{ids\ 3696}#)) - (lambda (#{y\ 3742}# - #{ids\ 3743}#) + (#{cvt\ 3681}# + #{y\ 3743}# + #{n\ 3697}# + #{ids\ 3698}#)) + (lambda (#{y\ 3744}# + #{ids\ 3745}#) (call-with-values (lambda () - (#{cvt\ 3679}# - #{x\ 3740}# - #{n\ 3695}# - #{ids\ 3743}#)) - (lambda (#{x\ 3746}# - #{ids\ 3747}#) + (#{cvt\ 3681}# + #{x\ 3742}# + #{n\ 3697}# + #{ids\ 3745}#)) + (lambda (#{x\ 3748}# + #{ids\ 3749}#) (values - (cons #{x\ 3746}# - #{y\ 3742}#) - #{ids\ 3747}#)))))) - #{tmp\ 3737}#) - (let ((#{tmp\ 3750}# + (cons #{x\ 3748}# + #{y\ 3744}#) + #{ids\ 3749}#)))))) + #{tmp\ 3739}#) + (let ((#{tmp\ 3752}# ($sc-dispatch - #{tmp\ 3700}# + #{tmp\ 3702}# '()))) - (if #{tmp\ 3750}# + (if #{tmp\ 3752}# (@apply (lambda () (values '() - #{ids\ 3696}#)) - #{tmp\ 3750}#) - (let ((#{tmp\ 3751}# + #{ids\ 3698}#)) + #{tmp\ 3752}#) + (let ((#{tmp\ 3753}# ($sc-dispatch - #{tmp\ 3700}# + #{tmp\ 3702}# '#(vector each-any)))) - (if #{tmp\ 3751}# + (if #{tmp\ 3753}# (@apply - (lambda (#{x\ 3753}#) + (lambda (#{x\ 3755}#) (call-with-values (lambda () - (#{cvt\ 3679}# - #{x\ 3753}# - #{n\ 3695}# - #{ids\ 3696}#)) - (lambda (#{p\ 3755}# - #{ids\ 3756}#) + (#{cvt\ 3681}# + #{x\ 3755}# + #{n\ 3697}# + #{ids\ 3698}#)) + (lambda (#{p\ 3757}# + #{ids\ 3758}#) (values (vector 'vector - #{p\ 3755}#) - #{ids\ 3756}#)))) - #{tmp\ 3751}#) - (let ((#{x\ 3760}# - #{tmp\ 3700}#)) + #{p\ 3757}#) + #{ids\ 3758}#)))) + #{tmp\ 3753}#) + (let ((#{x\ 3762}# + #{tmp\ 3702}#)) (values (vector 'atom - (#{strip\ 498}# - #{p\ 3694}# + (#{strip\ 499}# + #{p\ 3696}# '(()))) - #{ids\ 3696}#))))))))))))))))) + #{ids\ 3698}#))))))))))))))))) (begin - (#{cvt\ 3679}# #{pattern\ 3672}# 0 (quote ())))))) - (#{build-dispatch-call\ 3667}# - (lambda (#{pvars\ 3762}# - #{exp\ 3763}# - #{y\ 3764}# - #{r\ 3765}# - #{mod\ 3766}#) + (#{cvt\ 3681}# #{pattern\ 3674}# 0 (quote ())))))) + (#{build-dispatch-call\ 3669}# + (lambda (#{pvars\ 3764}# + #{exp\ 3765}# + #{y\ 3766}# + #{r\ 3767}# + #{mod\ 3768}#) (begin - (map cdr #{pvars\ 3762}#) - (let ((#{ids\ 3774}# (map car #{pvars\ 3762}#))) + (map cdr #{pvars\ 3764}#) + (let ((#{ids\ 3776}# (map car #{pvars\ 3764}#))) (begin - (let ((#{labels\ 3778}# - (#{gen-labels\ 405}# #{ids\ 3774}#)) - (#{new-vars\ 3779}# - (map #{gen-var\ 500}# #{ids\ 3774}#))) - (#{build-application\ 309}# + (let ((#{labels\ 3780}# + (#{gen-labels\ 406}# #{ids\ 3776}#)) + (#{new-vars\ 3781}# + (map #{gen-var\ 501}# #{ids\ 3776}#))) + (#{build-application\ 310}# #f - (#{build-primref\ 335}# #f (quote apply)) - (list (#{build-simple-lambda\ 329}# + (#{build-primref\ 336}# #f (quote apply)) + (list (#{build-simple-lambda\ 330}# #f - (map syntax->datum #{ids\ 3774}#) + (map syntax->datum #{ids\ 3776}#) #f - #{new-vars\ 3779}# + #{new-vars\ 3781}# '() - (#{chi\ 472}# - #{exp\ 3763}# - (#{extend-env\ 375}# - #{labels\ 3778}# - (map (lambda (#{var\ 3783}# - #{level\ 3784}#) + (#{chi\ 473}# + #{exp\ 3765}# + (#{extend-env\ 376}# + #{labels\ 3780}# + (map (lambda (#{var\ 3785}# + #{level\ 3786}#) (cons 'syntax - (cons #{var\ 3783}# - #{level\ 3784}#))) - #{new-vars\ 3779}# - (map cdr #{pvars\ 3762}#)) - #{r\ 3765}#) - (#{make-binding-wrap\ 434}# - #{ids\ 3774}# - #{labels\ 3778}# + (cons #{var\ 3785}# + #{level\ 3786}#))) + #{new-vars\ 3781}# + (map cdr #{pvars\ 3764}#)) + #{r\ 3767}#) + (#{make-binding-wrap\ 435}# + #{ids\ 3776}# + #{labels\ 3780}# '(())) - #{mod\ 3766}#)) - #{y\ 3764}#)))))))) - (#{gen-clause\ 3669}# - (lambda (#{x\ 3790}# - #{keys\ 3791}# - #{clauses\ 3792}# - #{r\ 3793}# - #{pat\ 3794}# - #{fender\ 3795}# - #{exp\ 3796}# - #{mod\ 3797}#) + #{mod\ 3768}#)) + #{y\ 3766}#)))))))) + (#{gen-clause\ 3671}# + (lambda (#{x\ 3792}# + #{keys\ 3793}# + #{clauses\ 3794}# + #{r\ 3795}# + #{pat\ 3796}# + #{fender\ 3797}# + #{exp\ 3798}# + #{mod\ 3799}#) (call-with-values (lambda () - (#{convert-pattern\ 3665}# - #{pat\ 3794}# - #{keys\ 3791}#)) - (lambda (#{p\ 3806}# #{pvars\ 3807}#) - (if (not (#{distinct-bound-ids?\ 452}# - (map car #{pvars\ 3807}#))) + (#{convert-pattern\ 3667}# + #{pat\ 3796}# + #{keys\ 3793}#)) + (lambda (#{p\ 3808}# #{pvars\ 3809}#) + (if (not (#{distinct-bound-ids?\ 453}# + (map car #{pvars\ 3809}#))) (syntax-violation 'syntax-case "duplicate pattern variable" - #{pat\ 3794}#) + #{pat\ 3796}#) (if (not (and-map - (lambda (#{x\ 3814}#) - (not (#{ellipsis?\ 488}# - (car #{x\ 3814}#)))) - #{pvars\ 3807}#)) + (lambda (#{x\ 3816}#) + (not (#{ellipsis?\ 489}# + (car #{x\ 3816}#)))) + #{pvars\ 3809}#)) (syntax-violation 'syntax-case "misplaced ellipsis" - #{pat\ 3794}#) + #{pat\ 3796}#) (begin - (let ((#{y\ 3818}# - (#{gen-var\ 500}# (quote tmp)))) - (#{build-application\ 309}# + (let ((#{y\ 3820}# + (#{gen-var\ 501}# (quote tmp)))) + (#{build-application\ 310}# #f - (#{build-simple-lambda\ 329}# + (#{build-simple-lambda\ 330}# #f (list (quote tmp)) #f - (list #{y\ 3818}#) + (list #{y\ 3820}#) '() (begin - (let ((#{y\ 3822}# - (#{build-lexical-reference\ 315}# + (let ((#{y\ 3824}# + (#{build-lexical-reference\ 316}# 'value #f 'tmp - #{y\ 3818}#))) - (#{build-conditional\ 311}# + #{y\ 3820}#))) + (#{build-conditional\ 312}# #f - (let ((#{tmp\ 3825}# - #{fender\ 3795}#)) - (let ((#{tmp\ 3826}# + (let ((#{tmp\ 3827}# + #{fender\ 3797}#)) + (let ((#{tmp\ 3828}# ($sc-dispatch - #{tmp\ 3825}# + #{tmp\ 3827}# '#(atom #t)))) - (if #{tmp\ 3826}# + (if #{tmp\ 3828}# (@apply - (lambda () #{y\ 3822}#) - #{tmp\ 3826}#) - (let ((#{_\ 3828}# - #{tmp\ 3825}#)) - (#{build-conditional\ 311}# + (lambda () #{y\ 3824}#) + #{tmp\ 3828}#) + (let ((#{_\ 3830}# + #{tmp\ 3827}#)) + (#{build-conditional\ 312}# #f - #{y\ 3822}# - (#{build-dispatch-call\ 3667}# - #{pvars\ 3807}# - #{fender\ 3795}# - #{y\ 3822}# - #{r\ 3793}# - #{mod\ 3797}#) - (#{build-data\ 337}# + #{y\ 3824}# + (#{build-dispatch-call\ 3669}# + #{pvars\ 3809}# + #{fender\ 3797}# + #{y\ 3824}# + #{r\ 3795}# + #{mod\ 3799}#) + (#{build-data\ 338}# #f #f)))))) - (#{build-dispatch-call\ 3667}# - #{pvars\ 3807}# - #{exp\ 3796}# - #{y\ 3822}# - #{r\ 3793}# - #{mod\ 3797}#) - (#{gen-syntax-case\ 3671}# - #{x\ 3790}# - #{keys\ 3791}# - #{clauses\ 3792}# - #{r\ 3793}# - #{mod\ 3797}#))))) - (list (if (eq? #{p\ 3806}# (quote any)) - (#{build-application\ 309}# + (#{build-dispatch-call\ 3669}# + #{pvars\ 3809}# + #{exp\ 3798}# + #{y\ 3824}# + #{r\ 3795}# + #{mod\ 3799}#) + (#{gen-syntax-case\ 3673}# + #{x\ 3792}# + #{keys\ 3793}# + #{clauses\ 3794}# + #{r\ 3795}# + #{mod\ 3799}#))))) + (list (if (eq? #{p\ 3808}# (quote any)) + (#{build-application\ 310}# #f - (#{build-primref\ 335}# + (#{build-primref\ 336}# #f 'list) - (list #{x\ 3790}#)) - (#{build-application\ 309}# + (list #{x\ 3792}#)) + (#{build-application\ 310}# #f - (#{build-primref\ 335}# + (#{build-primref\ 336}# #f '$sc-dispatch) - (list #{x\ 3790}# - (#{build-data\ 337}# + (list #{x\ 3792}# + (#{build-data\ 338}# #f - #{p\ 3806}#)))))))))))))) - (#{gen-syntax-case\ 3671}# - (lambda (#{x\ 3836}# - #{keys\ 3837}# - #{clauses\ 3838}# - #{r\ 3839}# - #{mod\ 3840}#) - (if (null? #{clauses\ 3838}#) - (#{build-application\ 309}# + #{p\ 3808}#)))))))))))))) + (#{gen-syntax-case\ 3673}# + (lambda (#{x\ 3838}# + #{keys\ 3839}# + #{clauses\ 3840}# + #{r\ 3841}# + #{mod\ 3842}#) + (if (null? #{clauses\ 3840}#) + (#{build-application\ 310}# #f - (#{build-primref\ 335}# + (#{build-primref\ 336}# #f 'syntax-violation) - (list (#{build-data\ 337}# #f #f) - (#{build-data\ 337}# + (list (#{build-data\ 338}# #f #f) + (#{build-data\ 338}# #f "source expression failed to match any pattern") - #{x\ 3836}#)) - (let ((#{tmp\ 3850}# (car #{clauses\ 3838}#))) - (let ((#{tmp\ 3851}# + #{x\ 3838}#)) + (let ((#{tmp\ 3852}# (car #{clauses\ 3840}#))) + (let ((#{tmp\ 3853}# ($sc-dispatch - #{tmp\ 3850}# + #{tmp\ 3852}# '(any any)))) - (if #{tmp\ 3851}# + (if #{tmp\ 3853}# (@apply - (lambda (#{pat\ 3854}# #{exp\ 3855}#) - (if (if (#{id?\ 387}# #{pat\ 3854}#) + (lambda (#{pat\ 3856}# #{exp\ 3857}#) + (if (if (#{id?\ 388}# #{pat\ 3856}#) (and-map - (lambda (#{x\ 3858}#) - (not (#{free-id=?\ 446}# - #{pat\ 3854}# - #{x\ 3858}#))) + (lambda (#{x\ 3860}#) + (not (#{free-id=?\ 447}# + #{pat\ 3856}# + #{x\ 3860}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) - #("i3852" "i3853")) + #("i3854" "i3855")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) @@ -12244,21 +12278,21 @@ (top) (top) (top)) - #("i3841" - "i3842" - "i3843" + #("i3843" "i3844" - "i3845")) + "i3845" + "i3846" + "i3847")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) - ("i3670" + ("i3672" + "i3670" "i3668" - "i3666" - "i3664")) + "i3666")) #(ribcage (lambda-var-list gen-var @@ -12534,743 +12568,743 @@ (top) (top) (top)) - ("i501" - "i499" - "i497" - "i495" - "i493" - "i491" - "i489" - "i487" - "i485" - "i483" - "i481" - "i479" - "i477" - "i475" - "i473" - "i471" - "i469" - "i467" - "i465" - "i463" - "i461" - "i459" - "i457" - "i455" - "i453" - "i451" - "i449" - "i447" - "i445" - "i443" - "i441" - "i439" - "i437" - "i435" - "i433" + ("i502" + "i500" + "i498" + "i496" + "i494" + "i492" + "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" "i431" "i430" - "i429" + "i428" "i427" "i426" "i425" "i424" - "i423" - "i421" - "i419" - "i417" - "i415" - "i413" - "i411" - "i409" - "i407" - "i404" + "i422" + "i420" + "i418" + "i416" + "i414" + "i412" + "i410" + "i408" + "i405" + "i403" "i402" "i401" "i400" "i399" "i398" - "i397" - "i395" - "i393" - "i391" + "i396" + "i394" + "i392" + "i390" "i389" - "i388" - "i386" - "i384" - "i382" - "i380" - "i378" - "i376" + "i387" + "i385" + "i383" + "i381" + "i379" + "i377" + "i375" "i374" - "i373" - "i371" + "i372" + "i370" "i369" "i368" - "i367" + "i366" "i365" - "i364" - "i362" - "i360" - "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" + "i363" + "i361" + "i359" + "i357" + "i355" + "i353" + "i351" + "i349" + "i347" + "i345" + "i343" + "i341" + "i339" + "i337" + "i335" + "i333" + "i331" + "i329" + "i327" + "i325" + "i323" + "i321" + "i319" + "i317" + "i315" + "i313" + "i311" + "i309" + "i307" + "i305" + "i303" + "i301" "i300" - "i299" - "i297" - "i295" - "i293" - "i291" - "i289" - "i287" - "i285" - "i283" - "i281" - "i278" - "i276" - "i274" - "i272" - "i270" - "i268" - "i266" - "i264" - "i262" - "i260" - "i258" - "i256" - "i254" - "i252" - "i250" - "i248" - "i246" - "i244")) + "i298" + "i296" + "i294" + "i292" + "i290" + "i288" + "i286" + "i284" + "i282" + "i279" + "i277" + "i275" + "i273" + "i271" + "i269" + "i267" + "i265" + "i263" + "i261" + "i259" + "i257" + "i255" + "i253" + "i251" + "i249" + "i247" + "i245")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) - ("i38" + ("i39" + "i38" "i37" - "i36" - "i34"))) + "i35"))) (hygiene guile)) - #{keys\ 3837}#)) + #{keys\ 3839}#)) #f) (begin - (let ((#{labels\ 3862}# - (list (#{gen-label\ 403}#))) - (#{var\ 3863}# - (#{gen-var\ 500}# #{pat\ 3854}#))) - (#{build-application\ 309}# + (let ((#{labels\ 3864}# + (list (#{gen-label\ 404}#))) + (#{var\ 3865}# + (#{gen-var\ 501}# #{pat\ 3856}#))) + (#{build-application\ 310}# #f - (#{build-simple-lambda\ 329}# + (#{build-simple-lambda\ 330}# #f - (list (syntax->datum #{pat\ 3854}#)) + (list (syntax->datum #{pat\ 3856}#)) #f - (list #{var\ 3863}#) + (list #{var\ 3865}#) '() - (#{chi\ 472}# - #{exp\ 3855}# - (#{extend-env\ 375}# - #{labels\ 3862}# + (#{chi\ 473}# + #{exp\ 3857}# + (#{extend-env\ 376}# + #{labels\ 3864}# (list (cons 'syntax - (cons #{var\ 3863}# + (cons #{var\ 3865}# 0))) - #{r\ 3839}#) - (#{make-binding-wrap\ 434}# - (list #{pat\ 3854}#) - #{labels\ 3862}# + #{r\ 3841}#) + (#{make-binding-wrap\ 435}# + (list #{pat\ 3856}#) + #{labels\ 3864}# '(())) - #{mod\ 3840}#)) - (list #{x\ 3836}#)))) - (#{gen-clause\ 3669}# - #{x\ 3836}# - #{keys\ 3837}# - (cdr #{clauses\ 3838}#) - #{r\ 3839}# - #{pat\ 3854}# + #{mod\ 3842}#)) + (list #{x\ 3838}#)))) + (#{gen-clause\ 3671}# + #{x\ 3838}# + #{keys\ 3839}# + (cdr #{clauses\ 3840}#) + #{r\ 3841}# + #{pat\ 3856}# #t - #{exp\ 3855}# - #{mod\ 3840}#))) - #{tmp\ 3851}#) - (let ((#{tmp\ 3869}# + #{exp\ 3857}# + #{mod\ 3842}#))) + #{tmp\ 3853}#) + (let ((#{tmp\ 3871}# ($sc-dispatch - #{tmp\ 3850}# + #{tmp\ 3852}# '(any any any)))) - (if #{tmp\ 3869}# + (if #{tmp\ 3871}# (@apply - (lambda (#{pat\ 3873}# - #{fender\ 3874}# - #{exp\ 3875}#) - (#{gen-clause\ 3669}# - #{x\ 3836}# - #{keys\ 3837}# - (cdr #{clauses\ 3838}#) - #{r\ 3839}# - #{pat\ 3873}# - #{fender\ 3874}# - #{exp\ 3875}# - #{mod\ 3840}#)) - #{tmp\ 3869}#) - (let ((#{_\ 3877}# #{tmp\ 3850}#)) + (lambda (#{pat\ 3875}# + #{fender\ 3876}# + #{exp\ 3877}#) + (#{gen-clause\ 3671}# + #{x\ 3838}# + #{keys\ 3839}# + (cdr #{clauses\ 3840}#) + #{r\ 3841}# + #{pat\ 3875}# + #{fender\ 3876}# + #{exp\ 3877}# + #{mod\ 3842}#)) + #{tmp\ 3871}#) + (let ((#{_\ 3879}# #{tmp\ 3852}#)) (syntax-violation 'syntax-case "invalid clause" - (car #{clauses\ 3838}#)))))))))))) + (car #{clauses\ 3840}#)))))))))))) (begin - (lambda (#{e\ 3878}# - #{r\ 3879}# - #{w\ 3880}# - #{s\ 3881}# - #{mod\ 3882}#) + (lambda (#{e\ 3880}# + #{r\ 3881}# + #{w\ 3882}# + #{s\ 3883}# + #{mod\ 3884}#) (begin - (let ((#{e\ 3889}# - (#{source-wrap\ 458}# - #{e\ 3878}# - #{w\ 3880}# - #{s\ 3881}# - #{mod\ 3882}#))) - (let ((#{tmp\ 3890}# #{e\ 3889}#)) - (let ((#{tmp\ 3891}# + (let ((#{e\ 3891}# + (#{source-wrap\ 459}# + #{e\ 3880}# + #{w\ 3882}# + #{s\ 3883}# + #{mod\ 3884}#))) + (let ((#{tmp\ 3892}# #{e\ 3891}#)) + (let ((#{tmp\ 3893}# ($sc-dispatch - #{tmp\ 3890}# + #{tmp\ 3892}# '(any any each-any . each-any)))) - (if #{tmp\ 3891}# + (if #{tmp\ 3893}# (@apply - (lambda (#{_\ 3896}# - #{val\ 3897}# - #{key\ 3898}# - #{m\ 3899}#) + (lambda (#{_\ 3898}# + #{val\ 3899}# + #{key\ 3900}# + #{m\ 3901}#) (if (and-map - (lambda (#{x\ 3900}#) - (if (#{id?\ 387}# #{x\ 3900}#) - (not (#{ellipsis?\ 488}# - #{x\ 3900}#)) + (lambda (#{x\ 3902}#) + (if (#{id?\ 388}# #{x\ 3902}#) + (not (#{ellipsis?\ 489}# + #{x\ 3902}#)) #f)) - #{key\ 3898}#) + #{key\ 3900}#) (begin - (let ((#{x\ 3906}# - (#{gen-var\ 500}# (quote tmp)))) - (#{build-application\ 309}# - #{s\ 3881}# - (#{build-simple-lambda\ 329}# + (let ((#{x\ 3908}# + (#{gen-var\ 501}# (quote tmp)))) + (#{build-application\ 310}# + #{s\ 3883}# + (#{build-simple-lambda\ 330}# #f (list (quote tmp)) #f - (list #{x\ 3906}#) + (list #{x\ 3908}#) '() - (#{gen-syntax-case\ 3671}# - (#{build-lexical-reference\ 315}# + (#{gen-syntax-case\ 3673}# + (#{build-lexical-reference\ 316}# 'value #f 'tmp - #{x\ 3906}#) - #{key\ 3898}# - #{m\ 3899}# - #{r\ 3879}# - #{mod\ 3882}#)) - (list (#{chi\ 472}# - #{val\ 3897}# - #{r\ 3879}# + #{x\ 3908}#) + #{key\ 3900}# + #{m\ 3901}# + #{r\ 3881}# + #{mod\ 3884}#)) + (list (#{chi\ 473}# + #{val\ 3899}# + #{r\ 3881}# '(()) - #{mod\ 3882}#))))) + #{mod\ 3884}#))))) (syntax-violation 'syntax-case "invalid literals list" - #{e\ 3889}#))) - #{tmp\ 3891}#) + #{e\ 3891}#))) + #{tmp\ 3893}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 3890}#)))))))))) + #{tmp\ 3892}#)))))))))) (set! macroexpand (lambda* - (#{x\ 3912}# + (#{x\ 3914}# #:optional - (#{m\ 3914}# (quote e)) - (#{esew\ 3916}# (quote (eval)))) - (#{chi-top\ 470}# - #{x\ 3912}# + (#{m\ 3916}# (quote e)) + (#{esew\ 3918}# (quote (eval)))) + (#{chi-top\ 471}# + #{x\ 3914}# '() '((top)) - #{m\ 3914}# - #{esew\ 3916}# + #{m\ 3916}# + #{esew\ 3918}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? - (lambda (#{x\ 3920}#) - (#{nonsymbol-id?\ 385}# #{x\ 3920}#))) + (lambda (#{x\ 3922}#) + (#{nonsymbol-id?\ 386}# #{x\ 3922}#))) (set! datum->syntax - (lambda (#{id\ 3922}# #{datum\ 3923}#) - (#{make-syntax-object\ 349}# - #{datum\ 3923}# - (#{syntax-object-wrap\ 355}# #{id\ 3922}#) - (#{syntax-object-module\ 357}# #{id\ 3922}#)))) + (lambda (#{id\ 3924}# #{datum\ 3925}#) + (#{make-syntax-object\ 350}# + #{datum\ 3925}# + (#{syntax-object-wrap\ 356}# #{id\ 3924}#) + (#{syntax-object-module\ 358}# #{id\ 3924}#)))) (set! syntax->datum - (lambda (#{x\ 3926}#) - (#{strip\ 498}# #{x\ 3926}# (quote (()))))) + (lambda (#{x\ 3928}#) + (#{strip\ 499}# #{x\ 3928}# (quote (()))))) (set! syntax-source - (lambda (#{x\ 3929}#) - (#{source-annotation\ 366}# #{x\ 3929}#))) + (lambda (#{x\ 3931}#) + (#{source-annotation\ 367}# #{x\ 3931}#))) (set! generate-temporaries - (lambda (#{ls\ 3931}#) + (lambda (#{ls\ 3933}#) (begin (begin - (let ((#{x\ 3935}# #{ls\ 3931}#)) - (if (not (list? #{x\ 3935}#)) + (let ((#{x\ 3937}# #{ls\ 3933}#)) + (if (not (list? #{x\ 3937}#)) (syntax-violation 'generate-temporaries "invalid argument" - #{x\ 3935}#)))) - (map (lambda (#{x\ 3936}#) - (#{wrap\ 456}# (gensym) (quote ((top))) #f)) - #{ls\ 3931}#)))) + #{x\ 3937}#)))) + (map (lambda (#{x\ 3938}#) + (#{wrap\ 457}# (gensym) (quote ((top))) #f)) + #{ls\ 3933}#)))) (set! free-identifier=? - (lambda (#{x\ 3940}# #{y\ 3941}#) + (lambda (#{x\ 3942}# #{y\ 3943}#) (begin (begin - (let ((#{x\ 3946}# #{x\ 3940}#)) - (if (not (#{nonsymbol-id?\ 385}# #{x\ 3946}#)) + (let ((#{x\ 3948}# #{x\ 3942}#)) + (if (not (#{nonsymbol-id?\ 386}# #{x\ 3948}#)) (syntax-violation 'free-identifier=? "invalid argument" - #{x\ 3946}#)))) + #{x\ 3948}#)))) (begin - (let ((#{x\ 3949}# #{y\ 3941}#)) - (if (not (#{nonsymbol-id?\ 385}# #{x\ 3949}#)) + (let ((#{x\ 3951}# #{y\ 3943}#)) + (if (not (#{nonsymbol-id?\ 386}# #{x\ 3951}#)) (syntax-violation 'free-identifier=? "invalid argument" - #{x\ 3949}#)))) - (#{free-id=?\ 446}# #{x\ 3940}# #{y\ 3941}#)))) + #{x\ 3951}#)))) + (#{free-id=?\ 447}# #{x\ 3942}# #{y\ 3943}#)))) (set! bound-identifier=? - (lambda (#{x\ 3950}# #{y\ 3951}#) + (lambda (#{x\ 3952}# #{y\ 3953}#) (begin (begin - (let ((#{x\ 3956}# #{x\ 3950}#)) - (if (not (#{nonsymbol-id?\ 385}# #{x\ 3956}#)) + (let ((#{x\ 3958}# #{x\ 3952}#)) + (if (not (#{nonsymbol-id?\ 386}# #{x\ 3958}#)) (syntax-violation 'bound-identifier=? "invalid argument" - #{x\ 3956}#)))) + #{x\ 3958}#)))) (begin - (let ((#{x\ 3959}# #{y\ 3951}#)) - (if (not (#{nonsymbol-id?\ 385}# #{x\ 3959}#)) + (let ((#{x\ 3961}# #{y\ 3953}#)) + (if (not (#{nonsymbol-id?\ 386}# #{x\ 3961}#)) (syntax-violation 'bound-identifier=? "invalid argument" - #{x\ 3959}#)))) - (#{bound-id=?\ 448}# #{x\ 3950}# #{y\ 3951}#)))) + #{x\ 3961}#)))) + (#{bound-id=?\ 449}# #{x\ 3952}# #{y\ 3953}#)))) (set! syntax-violation - (lambda (#{who\ 3960}# - #{message\ 3961}# - #{form\ 3962}# + (lambda (#{who\ 3962}# + #{message\ 3963}# + #{form\ 3964}# . - #{subform\ 3963}#) + #{subform\ 3965}#) (begin (begin - (let ((#{x\ 3970}# #{who\ 3960}#)) - (if (not (let ((#{x\ 3971}# #{x\ 3970}#)) + (let ((#{x\ 3972}# #{who\ 3962}#)) + (if (not (let ((#{x\ 3973}# #{x\ 3972}#)) (begin - (let ((#{t\ 3975}# (not #{x\ 3971}#))) - (if #{t\ 3975}# - #{t\ 3975}# + (let ((#{t\ 3977}# (not #{x\ 3973}#))) + (if #{t\ 3977}# + #{t\ 3977}# (begin - (let ((#{t\ 3978}# - (string? #{x\ 3971}#))) - (if #{t\ 3978}# - #{t\ 3978}# - (symbol? #{x\ 3971}#))))))))) + (let ((#{t\ 3980}# + (string? #{x\ 3973}#))) + (if #{t\ 3980}# + #{t\ 3980}# + (symbol? #{x\ 3973}#))))))))) (syntax-violation 'syntax-violation "invalid argument" - #{x\ 3970}#)))) + #{x\ 3972}#)))) (begin - (let ((#{x\ 3982}# #{message\ 3961}#)) - (if (not (string? #{x\ 3982}#)) + (let ((#{x\ 3984}# #{message\ 3963}#)) + (if (not (string? #{x\ 3984}#)) (syntax-violation 'syntax-violation "invalid argument" - #{x\ 3982}#)))) + #{x\ 3984}#)))) (scm-error 'syntax-error 'macroexpand (string-append - (if #{who\ 3960}# "~a: " "") + (if #{who\ 3962}# "~a: " "") "~a " - (if (null? #{subform\ 3963}#) + (if (null? #{subform\ 3965}#) "in ~a" "in subform `~s' of `~s'")) (begin - (let ((#{tail\ 3984}# - (cons #{message\ 3961}# - (map (lambda (#{x\ 3985}#) - (#{strip\ 498}# - #{x\ 3985}# + (let ((#{tail\ 3986}# + (cons #{message\ 3963}# + (map (lambda (#{x\ 3987}#) + (#{strip\ 499}# + #{x\ 3987}# '(()))) (append - #{subform\ 3963}# - (list #{form\ 3962}#)))))) - (if #{who\ 3960}# - (cons #{who\ 3960}# #{tail\ 3984}#) - #{tail\ 3984}#))) + #{subform\ 3965}# + (list #{form\ 3964}#)))))) + (if #{who\ 3962}# + (cons #{who\ 3962}# #{tail\ 3986}#) + #{tail\ 3986}#))) #f)))) (letrec* - ((#{match-each\ 3989}# - (lambda (#{e\ 4002}# - #{p\ 4003}# - #{w\ 4004}# - #{mod\ 4005}#) - (if (pair? #{e\ 4002}#) + ((#{match-each\ 3991}# + (lambda (#{e\ 4004}# + #{p\ 4005}# + #{w\ 4006}# + #{mod\ 4007}#) + (if (pair? #{e\ 4004}#) (begin - (let ((#{first\ 4013}# - (#{match\ 4001}# - (car #{e\ 4002}#) - #{p\ 4003}# - #{w\ 4004}# + (let ((#{first\ 4015}# + (#{match\ 4003}# + (car #{e\ 4004}#) + #{p\ 4005}# + #{w\ 4006}# '() - #{mod\ 4005}#))) - (if #{first\ 4013}# + #{mod\ 4007}#))) + (if #{first\ 4015}# (begin - (let ((#{rest\ 4017}# - (#{match-each\ 3989}# - (cdr #{e\ 4002}#) - #{p\ 4003}# - #{w\ 4004}# - #{mod\ 4005}#))) - (if #{rest\ 4017}# - (cons #{first\ 4013}# #{rest\ 4017}#) + (let ((#{rest\ 4019}# + (#{match-each\ 3991}# + (cdr #{e\ 4004}#) + #{p\ 4005}# + #{w\ 4006}# + #{mod\ 4007}#))) + (if #{rest\ 4019}# + (cons #{first\ 4015}# #{rest\ 4019}#) #f))) #f))) - (if (null? #{e\ 4002}#) + (if (null? #{e\ 4004}#) '() - (if (#{syntax-object?\ 351}# #{e\ 4002}#) - (#{match-each\ 3989}# - (#{syntax-object-expression\ 353}# #{e\ 4002}#) - #{p\ 4003}# - (#{join-wraps\ 438}# - #{w\ 4004}# - (#{syntax-object-wrap\ 355}# #{e\ 4002}#)) - (#{syntax-object-module\ 357}# #{e\ 4002}#)) + (if (#{syntax-object?\ 352}# #{e\ 4004}#) + (#{match-each\ 3991}# + (#{syntax-object-expression\ 354}# #{e\ 4004}#) + #{p\ 4005}# + (#{join-wraps\ 439}# + #{w\ 4006}# + (#{syntax-object-wrap\ 356}# #{e\ 4004}#)) + (#{syntax-object-module\ 358}# #{e\ 4004}#)) #f))))) - (#{match-each+\ 3991}# - (lambda (#{e\ 4025}# - #{x-pat\ 4026}# - #{y-pat\ 4027}# - #{z-pat\ 4028}# - #{w\ 4029}# - #{r\ 4030}# - #{mod\ 4031}#) + (#{match-each+\ 3993}# + (lambda (#{e\ 4027}# + #{x-pat\ 4028}# + #{y-pat\ 4029}# + #{z-pat\ 4030}# + #{w\ 4031}# + #{r\ 4032}# + #{mod\ 4033}#) (letrec* - ((#{f\ 4042}# - (lambda (#{e\ 4043}# #{w\ 4044}#) - (if (pair? #{e\ 4043}#) + ((#{f\ 4044}# + (lambda (#{e\ 4045}# #{w\ 4046}#) + (if (pair? #{e\ 4045}#) (call-with-values (lambda () - (#{f\ 4042}# (cdr #{e\ 4043}#) #{w\ 4044}#)) - (lambda (#{xr*\ 4047}# - #{y-pat\ 4048}# - #{r\ 4049}#) - (if #{r\ 4049}# - (if (null? #{y-pat\ 4048}#) + (#{f\ 4044}# (cdr #{e\ 4045}#) #{w\ 4046}#)) + (lambda (#{xr*\ 4049}# + #{y-pat\ 4050}# + #{r\ 4051}#) + (if #{r\ 4051}# + (if (null? #{y-pat\ 4050}#) (begin - (let ((#{xr\ 4054}# - (#{match\ 4001}# - (car #{e\ 4043}#) - #{x-pat\ 4026}# - #{w\ 4044}# + (let ((#{xr\ 4056}# + (#{match\ 4003}# + (car #{e\ 4045}#) + #{x-pat\ 4028}# + #{w\ 4046}# '() - #{mod\ 4031}#))) - (if #{xr\ 4054}# + #{mod\ 4033}#))) + (if #{xr\ 4056}# (values - (cons #{xr\ 4054}# #{xr*\ 4047}#) - #{y-pat\ 4048}# - #{r\ 4049}#) + (cons #{xr\ 4056}# #{xr*\ 4049}#) + #{y-pat\ 4050}# + #{r\ 4051}#) (values #f #f #f)))) (values '() - (cdr #{y-pat\ 4048}#) - (#{match\ 4001}# - (car #{e\ 4043}#) - (car #{y-pat\ 4048}#) - #{w\ 4044}# - #{r\ 4049}# - #{mod\ 4031}#))) + (cdr #{y-pat\ 4050}#) + (#{match\ 4003}# + (car #{e\ 4045}#) + (car #{y-pat\ 4050}#) + #{w\ 4046}# + #{r\ 4051}# + #{mod\ 4033}#))) (values #f #f #f)))) - (if (#{syntax-object?\ 351}# #{e\ 4043}#) - (#{f\ 4042}# - (#{syntax-object-expression\ 353}# #{e\ 4043}#) - (#{join-wraps\ 438}# #{w\ 4044}# #{e\ 4043}#)) + (if (#{syntax-object?\ 352}# #{e\ 4045}#) + (#{f\ 4044}# + (#{syntax-object-expression\ 354}# #{e\ 4045}#) + (#{join-wraps\ 439}# #{w\ 4046}# #{e\ 4045}#)) (values '() - #{y-pat\ 4027}# - (#{match\ 4001}# - #{e\ 4043}# - #{z-pat\ 4028}# - #{w\ 4044}# - #{r\ 4030}# - #{mod\ 4031}#))))))) - (begin (#{f\ 4042}# #{e\ 4025}# #{w\ 4029}#))))) - (#{match-each-any\ 3993}# - (lambda (#{e\ 4058}# #{w\ 4059}# #{mod\ 4060}#) - (if (pair? #{e\ 4058}#) + #{y-pat\ 4029}# + (#{match\ 4003}# + #{e\ 4045}# + #{z-pat\ 4030}# + #{w\ 4046}# + #{r\ 4032}# + #{mod\ 4033}#))))))) + (begin (#{f\ 4044}# #{e\ 4027}# #{w\ 4031}#))))) + (#{match-each-any\ 3995}# + (lambda (#{e\ 4060}# #{w\ 4061}# #{mod\ 4062}#) + (if (pair? #{e\ 4060}#) (begin - (let ((#{l\ 4067}# - (#{match-each-any\ 3993}# - (cdr #{e\ 4058}#) - #{w\ 4059}# - #{mod\ 4060}#))) - (if #{l\ 4067}# - (cons (#{wrap\ 456}# - (car #{e\ 4058}#) - #{w\ 4059}# - #{mod\ 4060}#) - #{l\ 4067}#) + (let ((#{l\ 4069}# + (#{match-each-any\ 3995}# + (cdr #{e\ 4060}#) + #{w\ 4061}# + #{mod\ 4062}#))) + (if #{l\ 4069}# + (cons (#{wrap\ 457}# + (car #{e\ 4060}#) + #{w\ 4061}# + #{mod\ 4062}#) + #{l\ 4069}#) #f))) - (if (null? #{e\ 4058}#) + (if (null? #{e\ 4060}#) '() - (if (#{syntax-object?\ 351}# #{e\ 4058}#) - (#{match-each-any\ 3993}# - (#{syntax-object-expression\ 353}# #{e\ 4058}#) - (#{join-wraps\ 438}# - #{w\ 4059}# - (#{syntax-object-wrap\ 355}# #{e\ 4058}#)) - #{mod\ 4060}#) + (if (#{syntax-object?\ 352}# #{e\ 4060}#) + (#{match-each-any\ 3995}# + (#{syntax-object-expression\ 354}# #{e\ 4060}#) + (#{join-wraps\ 439}# + #{w\ 4061}# + (#{syntax-object-wrap\ 356}# #{e\ 4060}#)) + #{mod\ 4062}#) #f))))) - (#{match-empty\ 3995}# - (lambda (#{p\ 4075}# #{r\ 4076}#) - (if (null? #{p\ 4075}#) - #{r\ 4076}# - (if (eq? #{p\ 4075}# (quote any)) - (cons (quote ()) #{r\ 4076}#) - (if (pair? #{p\ 4075}#) - (#{match-empty\ 3995}# - (car #{p\ 4075}#) - (#{match-empty\ 3995}# - (cdr #{p\ 4075}#) - #{r\ 4076}#)) - (if (eq? #{p\ 4075}# (quote each-any)) - (cons (quote ()) #{r\ 4076}#) + (#{match-empty\ 3997}# + (lambda (#{p\ 4077}# #{r\ 4078}#) + (if (null? #{p\ 4077}#) + #{r\ 4078}# + (if (eq? #{p\ 4077}# (quote any)) + (cons (quote ()) #{r\ 4078}#) + (if (pair? #{p\ 4077}#) + (#{match-empty\ 3997}# + (car #{p\ 4077}#) + (#{match-empty\ 3997}# + (cdr #{p\ 4077}#) + #{r\ 4078}#)) + (if (eq? #{p\ 4077}# (quote each-any)) + (cons (quote ()) #{r\ 4078}#) (begin - (let ((#{atom-key\ 4090}# - (vector-ref #{p\ 4075}# 0))) - (if (eqv? #{atom-key\ 4090}# (quote each)) - (#{match-empty\ 3995}# - (vector-ref #{p\ 4075}# 1) - #{r\ 4076}#) - (if (eqv? #{atom-key\ 4090}# (quote each+)) - (#{match-empty\ 3995}# - (vector-ref #{p\ 4075}# 1) - (#{match-empty\ 3995}# - (reverse (vector-ref #{p\ 4075}# 2)) - (#{match-empty\ 3995}# - (vector-ref #{p\ 4075}# 3) - #{r\ 4076}#))) - (if (if (eqv? #{atom-key\ 4090}# + (let ((#{atom-key\ 4092}# + (vector-ref #{p\ 4077}# 0))) + (if (eqv? #{atom-key\ 4092}# (quote each)) + (#{match-empty\ 3997}# + (vector-ref #{p\ 4077}# 1) + #{r\ 4078}#) + (if (eqv? #{atom-key\ 4092}# (quote each+)) + (#{match-empty\ 3997}# + (vector-ref #{p\ 4077}# 1) + (#{match-empty\ 3997}# + (reverse (vector-ref #{p\ 4077}# 2)) + (#{match-empty\ 3997}# + (vector-ref #{p\ 4077}# 3) + #{r\ 4078}#))) + (if (if (eqv? #{atom-key\ 4092}# 'free-id) #t - (eqv? #{atom-key\ 4090}# + (eqv? #{atom-key\ 4092}# 'atom)) - #{r\ 4076}# - (if (eqv? #{atom-key\ 4090}# + #{r\ 4078}# + (if (eqv? #{atom-key\ 4092}# 'vector) - (#{match-empty\ 3995}# - (vector-ref #{p\ 4075}# 1) - #{r\ 4076}#))))))))))))) - (#{combine\ 3997}# - (lambda (#{r*\ 4095}# #{r\ 4096}#) - (if (null? (car #{r*\ 4095}#)) - #{r\ 4096}# - (cons (map car #{r*\ 4095}#) - (#{combine\ 3997}# - (map cdr #{r*\ 4095}#) - #{r\ 4096}#))))) - (#{match*\ 3999}# - (lambda (#{e\ 4099}# - #{p\ 4100}# - #{w\ 4101}# - #{r\ 4102}# - #{mod\ 4103}#) - (if (null? #{p\ 4100}#) - (if (null? #{e\ 4099}#) #{r\ 4102}# #f) - (if (pair? #{p\ 4100}#) - (if (pair? #{e\ 4099}#) - (#{match\ 4001}# - (car #{e\ 4099}#) - (car #{p\ 4100}#) - #{w\ 4101}# - (#{match\ 4001}# - (cdr #{e\ 4099}#) - (cdr #{p\ 4100}#) - #{w\ 4101}# - #{r\ 4102}# - #{mod\ 4103}#) - #{mod\ 4103}#) + (#{match-empty\ 3997}# + (vector-ref #{p\ 4077}# 1) + #{r\ 4078}#))))))))))))) + (#{combine\ 3999}# + (lambda (#{r*\ 4097}# #{r\ 4098}#) + (if (null? (car #{r*\ 4097}#)) + #{r\ 4098}# + (cons (map car #{r*\ 4097}#) + (#{combine\ 3999}# + (map cdr #{r*\ 4097}#) + #{r\ 4098}#))))) + (#{match*\ 4001}# + (lambda (#{e\ 4101}# + #{p\ 4102}# + #{w\ 4103}# + #{r\ 4104}# + #{mod\ 4105}#) + (if (null? #{p\ 4102}#) + (if (null? #{e\ 4101}#) #{r\ 4104}# #f) + (if (pair? #{p\ 4102}#) + (if (pair? #{e\ 4101}#) + (#{match\ 4003}# + (car #{e\ 4101}#) + (car #{p\ 4102}#) + #{w\ 4103}# + (#{match\ 4003}# + (cdr #{e\ 4101}#) + (cdr #{p\ 4102}#) + #{w\ 4103}# + #{r\ 4104}# + #{mod\ 4105}#) + #{mod\ 4105}#) #f) - (if (eq? #{p\ 4100}# (quote each-any)) + (if (eq? #{p\ 4102}# (quote each-any)) (begin - (let ((#{l\ 4120}# - (#{match-each-any\ 3993}# - #{e\ 4099}# - #{w\ 4101}# - #{mod\ 4103}#))) - (if #{l\ 4120}# - (cons #{l\ 4120}# #{r\ 4102}#) + (let ((#{l\ 4122}# + (#{match-each-any\ 3995}# + #{e\ 4101}# + #{w\ 4103}# + #{mod\ 4105}#))) + (if #{l\ 4122}# + (cons #{l\ 4122}# #{r\ 4104}#) #f))) (begin - (let ((#{atom-key\ 4126}# - (vector-ref #{p\ 4100}# 0))) - (if (eqv? #{atom-key\ 4126}# (quote each)) - (if (null? #{e\ 4099}#) - (#{match-empty\ 3995}# - (vector-ref #{p\ 4100}# 1) - #{r\ 4102}#) + (let ((#{atom-key\ 4128}# + (vector-ref #{p\ 4102}# 0))) + (if (eqv? #{atom-key\ 4128}# (quote each)) + (if (null? #{e\ 4101}#) + (#{match-empty\ 3997}# + (vector-ref #{p\ 4102}# 1) + #{r\ 4104}#) (begin - (let ((#{l\ 4129}# - (#{match-each\ 3989}# - #{e\ 4099}# - (vector-ref #{p\ 4100}# 1) - #{w\ 4101}# - #{mod\ 4103}#))) - (if #{l\ 4129}# + (let ((#{l\ 4131}# + (#{match-each\ 3991}# + #{e\ 4101}# + (vector-ref #{p\ 4102}# 1) + #{w\ 4103}# + #{mod\ 4105}#))) + (if #{l\ 4131}# (letrec* - ((#{collect\ 4134}# - (lambda (#{l\ 4135}#) - (if (null? (car #{l\ 4135}#)) - #{r\ 4102}# - (cons (map car #{l\ 4135}#) - (#{collect\ 4134}# + ((#{collect\ 4136}# + (lambda (#{l\ 4137}#) + (if (null? (car #{l\ 4137}#)) + #{r\ 4104}# + (cons (map car #{l\ 4137}#) + (#{collect\ 4136}# (map cdr - #{l\ 4135}#))))))) + #{l\ 4137}#))))))) (begin - (#{collect\ 4134}# #{l\ 4129}#))) + (#{collect\ 4136}# #{l\ 4131}#))) #f)))) - (if (eqv? #{atom-key\ 4126}# (quote each+)) + (if (eqv? #{atom-key\ 4128}# (quote each+)) (call-with-values (lambda () - (#{match-each+\ 3991}# - #{e\ 4099}# - (vector-ref #{p\ 4100}# 1) - (vector-ref #{p\ 4100}# 2) - (vector-ref #{p\ 4100}# 3) - #{w\ 4101}# - #{r\ 4102}# - #{mod\ 4103}#)) - (lambda (#{xr*\ 4137}# - #{y-pat\ 4138}# - #{r\ 4139}#) - (if #{r\ 4139}# - (if (null? #{y-pat\ 4138}#) - (if (null? #{xr*\ 4137}#) - (#{match-empty\ 3995}# - (vector-ref #{p\ 4100}# 1) - #{r\ 4139}#) - (#{combine\ 3997}# - #{xr*\ 4137}# - #{r\ 4139}#)) + (#{match-each+\ 3993}# + #{e\ 4101}# + (vector-ref #{p\ 4102}# 1) + (vector-ref #{p\ 4102}# 2) + (vector-ref #{p\ 4102}# 3) + #{w\ 4103}# + #{r\ 4104}# + #{mod\ 4105}#)) + (lambda (#{xr*\ 4139}# + #{y-pat\ 4140}# + #{r\ 4141}#) + (if #{r\ 4141}# + (if (null? #{y-pat\ 4140}#) + (if (null? #{xr*\ 4139}#) + (#{match-empty\ 3997}# + (vector-ref #{p\ 4102}# 1) + #{r\ 4141}#) + (#{combine\ 3999}# + #{xr*\ 4139}# + #{r\ 4141}#)) #f) #f))) - (if (eqv? #{atom-key\ 4126}# (quote free-id)) - (if (#{id?\ 387}# #{e\ 4099}#) - (if (#{free-id=?\ 446}# - (#{wrap\ 456}# - #{e\ 4099}# - #{w\ 4101}# - #{mod\ 4103}#) - (vector-ref #{p\ 4100}# 1)) - #{r\ 4102}# + (if (eqv? #{atom-key\ 4128}# (quote free-id)) + (if (#{id?\ 388}# #{e\ 4101}#) + (if (#{free-id=?\ 447}# + (#{wrap\ 457}# + #{e\ 4101}# + #{w\ 4103}# + #{mod\ 4105}#) + (vector-ref #{p\ 4102}# 1)) + #{r\ 4104}# #f) #f) - (if (eqv? #{atom-key\ 4126}# (quote atom)) + (if (eqv? #{atom-key\ 4128}# (quote atom)) (if (equal? - (vector-ref #{p\ 4100}# 1) - (#{strip\ 498}# - #{e\ 4099}# - #{w\ 4101}#)) - #{r\ 4102}# + (vector-ref #{p\ 4102}# 1) + (#{strip\ 499}# + #{e\ 4101}# + #{w\ 4103}#)) + #{r\ 4104}# #f) - (if (eqv? #{atom-key\ 4126}# + (if (eqv? #{atom-key\ 4128}# 'vector) - (if (vector? #{e\ 4099}#) - (#{match\ 4001}# - (vector->list #{e\ 4099}#) - (vector-ref #{p\ 4100}# 1) - #{w\ 4101}# - #{r\ 4102}# - #{mod\ 4103}#) + (if (vector? #{e\ 4101}#) + (#{match\ 4003}# + (vector->list #{e\ 4101}#) + (vector-ref #{p\ 4102}# 1) + #{w\ 4103}# + #{r\ 4104}# + #{mod\ 4105}#) #f))))))))))))) - (#{match\ 4001}# - (lambda (#{e\ 4156}# - #{p\ 4157}# - #{w\ 4158}# - #{r\ 4159}# - #{mod\ 4160}#) - (if (not #{r\ 4159}#) + (#{match\ 4003}# + (lambda (#{e\ 4158}# + #{p\ 4159}# + #{w\ 4160}# + #{r\ 4161}# + #{mod\ 4162}#) + (if (not #{r\ 4161}#) #f - (if (eq? #{p\ 4157}# (quote any)) - (cons (#{wrap\ 456}# - #{e\ 4156}# - #{w\ 4158}# - #{mod\ 4160}#) - #{r\ 4159}#) - (if (#{syntax-object?\ 351}# #{e\ 4156}#) - (#{match*\ 3999}# - (#{syntax-object-expression\ 353}# #{e\ 4156}#) - #{p\ 4157}# - (#{join-wraps\ 438}# - #{w\ 4158}# - (#{syntax-object-wrap\ 355}# #{e\ 4156}#)) - #{r\ 4159}# - (#{syntax-object-module\ 357}# #{e\ 4156}#)) - (#{match*\ 3999}# - #{e\ 4156}# - #{p\ 4157}# - #{w\ 4158}# - #{r\ 4159}# - #{mod\ 4160}#))))))) + (if (eq? #{p\ 4159}# (quote any)) + (cons (#{wrap\ 457}# + #{e\ 4158}# + #{w\ 4160}# + #{mod\ 4162}#) + #{r\ 4161}#) + (if (#{syntax-object?\ 352}# #{e\ 4158}#) + (#{match*\ 4001}# + (#{syntax-object-expression\ 354}# #{e\ 4158}#) + #{p\ 4159}# + (#{join-wraps\ 439}# + #{w\ 4160}# + (#{syntax-object-wrap\ 356}# #{e\ 4158}#)) + #{r\ 4161}# + (#{syntax-object-module\ 358}# #{e\ 4158}#)) + (#{match*\ 4001}# + #{e\ 4158}# + #{p\ 4159}# + #{w\ 4160}# + #{r\ 4161}# + #{mod\ 4162}#))))))) (begin (set! $sc-dispatch - (lambda (#{e\ 4173}# #{p\ 4174}#) - (if (eq? #{p\ 4174}# (quote any)) - (list #{e\ 4173}#) - (if (#{syntax-object?\ 351}# #{e\ 4173}#) - (#{match*\ 3999}# - (#{syntax-object-expression\ 353}# #{e\ 4173}#) - #{p\ 4174}# - (#{syntax-object-wrap\ 355}# #{e\ 4173}#) + (lambda (#{e\ 4175}# #{p\ 4176}#) + (if (eq? #{p\ 4176}# (quote any)) + (list #{e\ 4175}#) + (if (#{syntax-object?\ 352}# #{e\ 4175}#) + (#{match*\ 4001}# + (#{syntax-object-expression\ 354}# #{e\ 4175}#) + #{p\ 4176}# + (#{syntax-object-wrap\ 356}# #{e\ 4175}#) '() - (#{syntax-object-module\ 357}# #{e\ 4173}#)) - (#{match*\ 3999}# - #{e\ 4173}# - #{p\ 4174}# + (#{syntax-object-module\ 358}# #{e\ 4175}#)) + (#{match*\ 4001}# + #{e\ 4175}# + #{p\ 4176}# '(()) '() #f))))))))))))) @@ -13279,87 +13313,87 @@ (make-syntax-transformer 'with-syntax 'macro - (lambda (#{x\ 4183}#) - (let ((#{tmp\ 4185}# #{x\ 4183}#)) - (let ((#{tmp\ 4186}# + (lambda (#{x\ 4185}#) + (let ((#{tmp\ 4187}# #{x\ 4185}#)) + (let ((#{tmp\ 4188}# ($sc-dispatch - #{tmp\ 4185}# + #{tmp\ 4187}# '(any () any . each-any)))) - (if #{tmp\ 4186}# + (if #{tmp\ 4188}# (@apply - (lambda (#{_\ 4190}# #{e1\ 4191}# #{e2\ 4192}#) + (lambda (#{_\ 4192}# #{e1\ 4193}# #{e2\ 4194}#) (cons '#(syntax-object begin ((top) #(ribcage #(_ e1 e2) #((top) (top) (top)) - #("i4187" "i4188" "i4189")) + #("i4189" "i4190" "i4191")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4184"))) + #(ribcage #(x) #((top)) #("i4186"))) (hygiene guile)) - (cons #{e1\ 4191}# #{e2\ 4192}#))) - #{tmp\ 4186}#) - (let ((#{tmp\ 4194}# + (cons #{e1\ 4193}# #{e2\ 4194}#))) + #{tmp\ 4188}#) + (let ((#{tmp\ 4196}# ($sc-dispatch - #{tmp\ 4185}# + #{tmp\ 4187}# '(any ((any any)) any . each-any)))) - (if #{tmp\ 4194}# + (if #{tmp\ 4196}# (@apply - (lambda (#{_\ 4200}# - #{out\ 4201}# - #{in\ 4202}# - #{e1\ 4203}# - #{e2\ 4204}#) + (lambda (#{_\ 4202}# + #{out\ 4203}# + #{in\ 4204}# + #{e1\ 4205}# + #{e2\ 4206}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) - #("i4195" "i4196" "i4197" "i4198" "i4199")) + #("i4197" "i4198" "i4199" "i4200" "i4201")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4184"))) + #(ribcage #(x) #((top)) #("i4186"))) (hygiene guile)) - #{in\ 4202}# + #{in\ 4204}# '() - (list #{out\ 4201}# + (list #{out\ 4203}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) - #("i4195" - "i4196" - "i4197" + #("i4197" "i4198" - "i4199")) + "i4199" + "i4200" + "i4201")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4184"))) + #(ribcage #(x) #((top)) #("i4186"))) (hygiene guile)) - (cons #{e1\ 4203}# #{e2\ 4204}#))))) - #{tmp\ 4194}#) - (let ((#{tmp\ 4206}# + (cons #{e1\ 4205}# #{e2\ 4206}#))))) + #{tmp\ 4196}#) + (let ((#{tmp\ 4208}# ($sc-dispatch - #{tmp\ 4185}# + #{tmp\ 4187}# '(any #(each (any any)) any . each-any)))) - (if #{tmp\ 4206}# + (if #{tmp\ 4208}# (@apply - (lambda (#{_\ 4212}# - #{out\ 4213}# - #{in\ 4214}# - #{e1\ 4215}# - #{e2\ 4216}#) + (lambda (#{_\ 4214}# + #{out\ 4215}# + #{in\ 4216}# + #{e1\ 4217}# + #{e2\ 4218}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) - #("i4207" "i4208" "i4209" "i4210" "i4211")) + #("i4209" "i4210" "i4211" "i4212" "i4213")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4184"))) + #(ribcage #(x) #((top)) #("i4186"))) (hygiene guile)) (cons '#(syntax-object list @@ -13367,17 +13401,17 @@ #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) - #("i4207" - "i4208" - "i4209" + #("i4209" "i4210" - "i4211")) + "i4211" + "i4212" + "i4213")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4184"))) + #(ribcage #(x) #((top)) #("i4186"))) (hygiene guile)) - #{in\ 4214}#) + #{in\ 4216}#) '() - (list #{out\ 4213}# + (list #{out\ 4215}# (cons '#(syntax-object begin ((top) @@ -13388,50 +13422,50 @@ (top) (top) (top)) - #("i4207" - "i4208" - "i4209" + #("i4209" "i4210" - "i4211")) + "i4211" + "i4212" + "i4213")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4184"))) + #("i4186"))) (hygiene guile)) - (cons #{e1\ 4215}# #{e2\ 4216}#))))) - #{tmp\ 4206}#) + (cons #{e1\ 4217}# #{e2\ 4218}#))))) + #{tmp\ 4208}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4185}#))))))))))) + #{tmp\ 4187}#))))))))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro - (lambda (#{x\ 4220}#) - (let ((#{tmp\ 4222}# #{x\ 4220}#)) - (let ((#{tmp\ 4223}# + (lambda (#{x\ 4222}#) + (let ((#{tmp\ 4224}# #{x\ 4222}#)) + (let ((#{tmp\ 4225}# ($sc-dispatch - #{tmp\ 4222}# + #{tmp\ 4224}# '(any each-any . #(each ((any . any) any)))))) - (if #{tmp\ 4223}# + (if #{tmp\ 4225}# (@apply - (lambda (#{_\ 4229}# - #{k\ 4230}# - #{keyword\ 4231}# - #{pattern\ 4232}# - #{template\ 4233}#) + (lambda (#{_\ 4231}# + #{k\ 4232}# + #{keyword\ 4233}# + #{pattern\ 4234}# + #{template\ 4235}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) - #("i4224" "i4225" "i4226" "i4227" "i4228")) + #("i4226" "i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4221"))) + #(ribcage #(x) #((top)) #("i4223"))) (hygiene guile)) '(#(syntax-object x @@ -13439,9 +13473,9 @@ #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) - #("i4224" "i4225" "i4226" "i4227" "i4228")) + #("i4226" "i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4221"))) + #(ribcage #(x) #((top)) #("i4223"))) (hygiene guile))) (vector '(#(syntax-object @@ -13450,9 +13484,9 @@ #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) - #("i4224" "i4225" "i4226" "i4227" "i4228")) + #("i4226" "i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4221"))) + #(ribcage #(x) #((top)) #("i4223"))) (hygiene guile)) . #(syntax-object @@ -13461,9 +13495,9 @@ #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) - #("i4224" "i4225" "i4226" "i4227" "i4228")) + #("i4226" "i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4221"))) + #(ribcage #(x) #((top)) #("i4223"))) (hygiene guile))) (cons '#(syntax-object patterns @@ -13471,20 +13505,20 @@ #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) - #("i4224" "i4225" "i4226" "i4227" "i4228")) + #("i4226" "i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4221"))) + #(ribcage #(x) #((top)) #("i4223"))) (hygiene guile)) - #{pattern\ 4232}#)) + #{pattern\ 4234}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) - #("i4224" "i4225" "i4226" "i4227" "i4228")) + #("i4226" "i4227" "i4228" "i4229" "i4230")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4221"))) + #(ribcage #(x) #((top)) #("i4223"))) (hygiene guile)) (cons '#(syntax-object x @@ -13492,17 +13526,17 @@ #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) - #("i4224" - "i4225" - "i4226" + #("i4226" "i4227" - "i4228")) + "i4228" + "i4229" + "i4230")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4221"))) + #(ribcage #(x) #((top)) #("i4223"))) (hygiene guile)) - (cons #{k\ 4230}# - (map (lambda (#{tmp\ 4237}# - #{tmp\ 4236}#) + (cons #{k\ 4232}# + (map (lambda (#{tmp\ 4239}# + #{tmp\ 4238}#) (list (cons '#(syntax-object dummy ((top) @@ -13517,11 +13551,11 @@ (top) (top) (top)) - #("i4224" - "i4225" - "i4226" + #("i4226" "i4227" - "i4228")) + "i4228" + "i4229" + "i4230")) #(ribcage () () @@ -13529,9 +13563,9 @@ #(ribcage #(x) #((top)) - #("i4221"))) + #("i4223"))) (hygiene guile)) - #{tmp\ 4236}#) + #{tmp\ 4238}#) (list '#(syntax-object syntax ((top) @@ -13546,11 +13580,11 @@ (top) (top) (top)) - #("i4224" - "i4225" - "i4226" + #("i4226" "i4227" - "i4228")) + "i4228" + "i4229" + "i4230")) #(ribcage () () @@ -13558,47 +13592,47 @@ #(ribcage #(x) #((top)) - #("i4221"))) + #("i4223"))) (hygiene guile)) - #{tmp\ 4237}#))) - #{template\ 4233}# - #{pattern\ 4232}#)))))) - #{tmp\ 4223}#) + #{tmp\ 4239}#))) + #{template\ 4235}# + #{pattern\ 4234}#)))))) + #{tmp\ 4225}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4222}#))))))) + #{tmp\ 4224}#))))))) (define let* (make-syntax-transformer 'let* 'macro - (lambda (#{x\ 4238}#) - (let ((#{tmp\ 4240}# #{x\ 4238}#)) - (let ((#{tmp\ 4241}# + (lambda (#{x\ 4240}#) + (let ((#{tmp\ 4242}# #{x\ 4240}#)) + (let ((#{tmp\ 4243}# ($sc-dispatch - #{tmp\ 4240}# + #{tmp\ 4242}# '(any #(each (any any)) any . each-any)))) - (if (if #{tmp\ 4241}# + (if (if #{tmp\ 4243}# (@apply - (lambda (#{let*\ 4247}# - #{x\ 4248}# - #{v\ 4249}# - #{e1\ 4250}# - #{e2\ 4251}#) - (and-map identifier? #{x\ 4248}#)) - #{tmp\ 4241}#) + (lambda (#{let*\ 4249}# + #{x\ 4250}# + #{v\ 4251}# + #{e1\ 4252}# + #{e2\ 4253}#) + (and-map identifier? #{x\ 4250}#)) + #{tmp\ 4243}#) #f) (@apply - (lambda (#{let*\ 4258}# - #{x\ 4259}# - #{v\ 4260}# - #{e1\ 4261}# - #{e2\ 4262}#) + (lambda (#{let*\ 4260}# + #{x\ 4261}# + #{v\ 4262}# + #{e1\ 4263}# + #{e2\ 4264}#) (letrec* - ((#{f\ 4265}# - (lambda (#{bindings\ 4266}#) - (if (null? #{bindings\ 4266}#) + ((#{f\ 4267}# + (lambda (#{bindings\ 4268}#) + (if (null? #{bindings\ 4268}#) (cons '#(syntax-object let ((top) @@ -13606,129 +13640,129 @@ #(ribcage #(f bindings) #((top) (top)) - #("i4263" "i4264")) + #("i4265" "i4266")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) - #("i4253" - "i4254" - "i4255" + #("i4255" "i4256" - "i4257")) + "i4257" + "i4258" + "i4259")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4239"))) + #(ribcage #(x) #((top)) #("i4241"))) (hygiene guile)) (cons '() - (cons #{e1\ 4261}# #{e2\ 4262}#))) - (let ((#{tmp\ 4271}# - (list (#{f\ 4265}# (cdr #{bindings\ 4266}#)) - (car #{bindings\ 4266}#)))) - (let ((#{tmp\ 4272}# + (cons #{e1\ 4263}# #{e2\ 4264}#))) + (let ((#{tmp\ 4273}# + (list (#{f\ 4267}# (cdr #{bindings\ 4268}#)) + (car #{bindings\ 4268}#)))) + (let ((#{tmp\ 4274}# ($sc-dispatch - #{tmp\ 4271}# + #{tmp\ 4273}# '(any any)))) - (if #{tmp\ 4272}# + (if #{tmp\ 4274}# (@apply - (lambda (#{body\ 4275}# #{binding\ 4276}#) + (lambda (#{body\ 4277}# #{binding\ 4278}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) - #("i4273" "i4274")) + #("i4275" "i4276")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) - #("i4263" "i4264")) + #("i4265" "i4266")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) - #("i4253" - "i4254" - "i4255" + #("i4255" "i4256" - "i4257")) + "i4257" + "i4258" + "i4259")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4239"))) + #("i4241"))) (hygiene guile)) - (list #{binding\ 4276}#) - #{body\ 4275}#)) - #{tmp\ 4272}#) + (list #{binding\ 4278}#) + #{body\ 4277}#)) + #{tmp\ 4274}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4271}#)))))))) + #{tmp\ 4273}#)))))))) (begin - (#{f\ 4265}# (map list #{x\ 4259}# #{v\ 4260}#))))) - #{tmp\ 4241}#) + (#{f\ 4267}# (map list #{x\ 4261}# #{v\ 4262}#))))) + #{tmp\ 4243}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4240}#))))))) + #{tmp\ 4242}#))))))) (define do (make-syntax-transformer 'do 'macro - (lambda (#{orig-x\ 4277}#) - (let ((#{tmp\ 4279}# #{orig-x\ 4277}#)) - (let ((#{tmp\ 4280}# + (lambda (#{orig-x\ 4279}#) + (let ((#{tmp\ 4281}# #{orig-x\ 4279}#)) + (let ((#{tmp\ 4282}# ($sc-dispatch - #{tmp\ 4279}# + #{tmp\ 4281}# '(any #(each (any any . any)) (any . each-any) . each-any)))) - (if #{tmp\ 4280}# + (if #{tmp\ 4282}# (@apply - (lambda (#{_\ 4288}# - #{var\ 4289}# - #{init\ 4290}# - #{step\ 4291}# - #{e0\ 4292}# - #{e1\ 4293}# - #{c\ 4294}#) - (let ((#{tmp\ 4296}# - (map (lambda (#{v\ 4317}# #{s\ 4318}#) - (let ((#{tmp\ 4321}# #{s\ 4318}#)) - (let ((#{tmp\ 4322}# + (lambda (#{_\ 4290}# + #{var\ 4291}# + #{init\ 4292}# + #{step\ 4293}# + #{e0\ 4294}# + #{e1\ 4295}# + #{c\ 4296}#) + (let ((#{tmp\ 4298}# + (map (lambda (#{v\ 4319}# #{s\ 4320}#) + (let ((#{tmp\ 4323}# #{s\ 4320}#)) + (let ((#{tmp\ 4324}# ($sc-dispatch - #{tmp\ 4321}# + #{tmp\ 4323}# '()))) - (if #{tmp\ 4322}# + (if #{tmp\ 4324}# (@apply - (lambda () #{v\ 4317}#) - #{tmp\ 4322}#) - (let ((#{tmp\ 4323}# + (lambda () #{v\ 4319}#) + #{tmp\ 4324}#) + (let ((#{tmp\ 4325}# ($sc-dispatch - #{tmp\ 4321}# + #{tmp\ 4323}# '(any)))) - (if #{tmp\ 4323}# + (if #{tmp\ 4325}# (@apply - (lambda (#{e\ 4325}#) #{e\ 4325}#) - #{tmp\ 4323}#) - (let ((#{_\ 4327}# #{tmp\ 4321}#)) + (lambda (#{e\ 4327}#) #{e\ 4327}#) + #{tmp\ 4325}#) + (let ((#{_\ 4329}# #{tmp\ 4323}#)) (syntax-violation 'do "bad step expression" - #{orig-x\ 4277}# - #{s\ 4318}#)))))))) - #{var\ 4289}# - #{step\ 4291}#))) - (let ((#{tmp\ 4297}# - ($sc-dispatch #{tmp\ 4296}# (quote each-any)))) - (if #{tmp\ 4297}# + #{orig-x\ 4279}# + #{s\ 4320}#)))))))) + #{var\ 4291}# + #{step\ 4293}#))) + (let ((#{tmp\ 4299}# + ($sc-dispatch #{tmp\ 4298}# (quote each-any)))) + (if #{tmp\ 4299}# (@apply - (lambda (#{step\ 4299}#) - (let ((#{tmp\ 4300}# #{e1\ 4293}#)) - (let ((#{tmp\ 4301}# - ($sc-dispatch #{tmp\ 4300}# (quote ())))) - (if #{tmp\ 4301}# + (lambda (#{step\ 4301}#) + (let ((#{tmp\ 4302}# #{e1\ 4295}#)) + (let ((#{tmp\ 4303}# + ($sc-dispatch #{tmp\ 4302}# (quote ())))) + (if #{tmp\ 4303}# (@apply (lambda () (list '#(syntax-object @@ -13737,7 +13771,7 @@ #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var init step e0 e1 c) #((top) @@ -13747,18 +13781,18 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) '#(syntax-object doloop @@ -13766,7 +13800,7 @@ #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var init step e0 e1 c) #((top) @@ -13776,29 +13810,29 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) (map list - #{var\ 4289}# - #{init\ 4290}#) + #{var\ 4291}# + #{init\ 4292}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -13814,18 +13848,18 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) (list '#(syntax-object not @@ -13833,7 +13867,7 @@ #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -13849,27 +13883,27 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) - #{e0\ 4292}#) + #{e0\ 4294}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -13885,28 +13919,28 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) (append - #{c\ 4294}# + #{c\ 4296}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -13922,13 +13956,13 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () @@ -13936,29 +13970,29 @@ #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) - #{step\ 4299}#))))))) - #{tmp\ 4301}#) - (let ((#{tmp\ 4306}# + #{step\ 4301}#))))))) + #{tmp\ 4303}#) + (let ((#{tmp\ 4308}# ($sc-dispatch - #{tmp\ 4300}# + #{tmp\ 4302}# '(any . each-any)))) - (if #{tmp\ 4306}# + (if #{tmp\ 4308}# (@apply - (lambda (#{e1\ 4309}# #{e2\ 4310}#) + (lambda (#{e1\ 4311}# #{e2\ 4312}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) - #("i4307" "i4308")) + #("i4309" "i4310")) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var init step e0 e1 c) #((top) @@ -13968,18 +14002,18 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) '#(syntax-object doloop @@ -13987,11 +14021,11 @@ #(ribcage #(e1 e2) #((top) (top)) - #("i4307" "i4308")) + #("i4309" "i4310")) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var init step e0 e1 c) #((top) @@ -14001,33 +14035,33 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) (map list - #{var\ 4289}# - #{init\ 4290}#) + #{var\ 4291}# + #{init\ 4292}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) - #("i4307" "i4308")) + #("i4309" "i4310")) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -14043,32 +14077,32 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) - #{e0\ 4292}# + #{e0\ 4294}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) - #("i4307" - "i4308")) + #("i4309" + "i4310")) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -14084,13 +14118,13 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () @@ -14098,22 +14132,22 @@ #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) - (cons #{e1\ 4309}# - #{e2\ 4310}#)) + (cons #{e1\ 4311}# + #{e2\ 4312}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) - #("i4307" - "i4308")) + #("i4309" + "i4310")) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -14129,13 +14163,13 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () @@ -14143,10 +14177,10 @@ #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) (append - #{c\ 4294}# + #{c\ 4296}# (list (cons '#(syntax-object doloop ((top) @@ -14155,12 +14189,12 @@ e2) #((top) (top)) - #("i4307" - "i4308")) + #("i4309" + "i4310")) #(ribcage #(step) #((top)) - #("i4298")) + #("i4300")) #(ribcage #(_ var @@ -14176,13 +14210,13 @@ (top) (top) (top)) - #("i4281" - "i4282" - "i4283" + #("i4283" "i4284" "i4285" "i4286" - "i4287")) + "i4287" + "i4288" + "i4289")) #(ribcage () () @@ -14190,43 +14224,43 @@ #(ribcage #(orig-x) #((top)) - #("i4278"))) + #("i4280"))) (hygiene guile)) - #{step\ 4299}#))))))) - #{tmp\ 4306}#) + #{step\ 4301}#))))))) + #{tmp\ 4308}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4300}#))))))) - #{tmp\ 4297}#) + #{tmp\ 4302}#))))))) + #{tmp\ 4299}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4296}#))))) - #{tmp\ 4280}#) + #{tmp\ 4298}#))))) + #{tmp\ 4282}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4279}#))))))) + #{tmp\ 4281}#))))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec* - ((#{quasicons\ 4334}# - (lambda (#{x\ 4338}# #{y\ 4339}#) - (let ((#{tmp\ 4343}# (list #{x\ 4338}# #{y\ 4339}#))) - (let ((#{tmp\ 4344}# - ($sc-dispatch #{tmp\ 4343}# (quote (any any))))) - (if #{tmp\ 4344}# + ((#{quasicons\ 4336}# + (lambda (#{x\ 4340}# #{y\ 4341}#) + (let ((#{tmp\ 4345}# (list #{x\ 4340}# #{y\ 4341}#))) + (let ((#{tmp\ 4346}# + ($sc-dispatch #{tmp\ 4345}# (quote (any any))))) + (if #{tmp\ 4346}# (@apply - (lambda (#{x\ 4347}# #{y\ 4348}#) - (let ((#{tmp\ 4349}# #{y\ 4348}#)) - (let ((#{tmp\ 4350}# + (lambda (#{x\ 4349}# #{y\ 4350}#) + (let ((#{tmp\ 4351}# #{y\ 4350}#)) + (let ((#{tmp\ 4352}# ($sc-dispatch - #{tmp\ 4349}# + #{tmp\ 4351}# '(#(free-id #(syntax-object quote @@ -14234,29 +14268,29 @@ #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) any)))) - (if #{tmp\ 4350}# + (if #{tmp\ 4352}# (@apply - (lambda (#{dy\ 4352}#) - (let ((#{tmp\ 4353}# #{x\ 4347}#)) - (let ((#{tmp\ 4354}# + (lambda (#{dy\ 4354}#) + (let ((#{tmp\ 4355}# #{x\ 4349}#)) + (let ((#{tmp\ 4356}# ($sc-dispatch - #{tmp\ 4353}# + #{tmp\ 4355}# '(#(free-id #(syntax-object quote @@ -14264,140 +14298,140 @@ #(ribcage #(dy) #((top)) - #("i4351")) + #("i4353")) #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile))) any)))) - (if #{tmp\ 4354}# + (if #{tmp\ 4356}# (@apply - (lambda (#{dx\ 4356}#) + (lambda (#{dx\ 4358}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) - #("i4355")) + #("i4357")) #(ribcage #(dy) #((top)) - #("i4351")) + #("i4353")) #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) - (cons #{dx\ 4356}# - #{dy\ 4352}#))) - #{tmp\ 4354}#) - (let ((#{_\ 4358}# #{tmp\ 4353}#)) - (if (null? #{dy\ 4352}#) + (cons #{dx\ 4358}# + #{dy\ 4354}#))) + #{tmp\ 4356}#) + (let ((#{_\ 4360}# #{tmp\ 4355}#)) + (if (null? #{dy\ 4354}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) - #("i4357")) + #("i4359")) #(ribcage #(dy) #((top)) - #("i4351")) + #("i4353")) #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) - #{x\ 4347}#) + #{x\ 4349}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) - #("i4357")) + #("i4359")) #(ribcage #(dy) #((top)) - #("i4351")) + #("i4353")) #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) - #{x\ 4347}# - #{y\ 4348}#))))))) - #{tmp\ 4350}#) - (let ((#{tmp\ 4359}# + #{x\ 4349}# + #{y\ 4350}#))))))) + #{tmp\ 4352}#) + (let ((#{tmp\ 4361}# ($sc-dispatch - #{tmp\ 4349}# + #{tmp\ 4351}# '(#(free-id #(syntax-object list @@ -14405,107 +14439,107 @@ #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile))) . any)))) - (if #{tmp\ 4359}# + (if #{tmp\ 4361}# (@apply - (lambda (#{stuff\ 4361}#) + (lambda (#{stuff\ 4363}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) - #("i4360")) + #("i4362")) #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) - (cons #{x\ 4347}# #{stuff\ 4361}#))) - #{tmp\ 4359}#) - (let ((#{else\ 4363}# #{tmp\ 4349}#)) + (cons #{x\ 4349}# #{stuff\ 4363}#))) + #{tmp\ 4361}#) + (let ((#{else\ 4365}# #{tmp\ 4351}#)) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) - #("i4362")) + #("i4364")) #(ribcage #(x y) #((top) (top)) - #("i4345" "i4346")) + #("i4347" "i4348")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4340" "i4341")) + #("i4342" "i4343")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) - #{x\ 4347}# - #{y\ 4348}#)))))))) - #{tmp\ 4344}#) + #{x\ 4349}# + #{y\ 4350}#)))))))) + #{tmp\ 4346}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4343}#)))))) - (#{quasiappend\ 4335}# - (lambda (#{x\ 4364}# #{y\ 4365}#) - (let ((#{tmp\ 4369}# (list #{x\ 4364}# #{y\ 4365}#))) - (let ((#{tmp\ 4370}# - ($sc-dispatch #{tmp\ 4369}# (quote (any any))))) - (if #{tmp\ 4370}# + #{tmp\ 4345}#)))))) + (#{quasiappend\ 4337}# + (lambda (#{x\ 4366}# #{y\ 4367}#) + (let ((#{tmp\ 4371}# (list #{x\ 4366}# #{y\ 4367}#))) + (let ((#{tmp\ 4372}# + ($sc-dispatch #{tmp\ 4371}# (quote (any any))))) + (if #{tmp\ 4372}# (@apply - (lambda (#{x\ 4373}# #{y\ 4374}#) - (let ((#{tmp\ 4375}# #{y\ 4374}#)) - (let ((#{tmp\ 4376}# + (lambda (#{x\ 4375}# #{y\ 4376}#) + (let ((#{tmp\ 4377}# #{y\ 4376}#)) + (let ((#{tmp\ 4378}# ($sc-dispatch - #{tmp\ 4375}# + #{tmp\ 4377}# '(#(free-id #(syntax-object quote @@ -14513,160 +14547,160 @@ #(ribcage #(x y) #((top) (top)) - #("i4371" "i4372")) + #("i4373" "i4374")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4366" "i4367")) + #("i4368" "i4369")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) ())))) - (if #{tmp\ 4376}# - (@apply (lambda () #{x\ 4373}#) #{tmp\ 4376}#) - (let ((#{_\ 4378}# #{tmp\ 4375}#)) + (if #{tmp\ 4378}# + (@apply (lambda () #{x\ 4375}#) #{tmp\ 4378}#) + (let ((#{_\ 4380}# #{tmp\ 4377}#)) (list '#(syntax-object append ((top) - #(ribcage #(_) #((top)) #("i4377")) + #(ribcage #(_) #((top)) #("i4379")) #(ribcage #(x y) #((top) (top)) - #("i4371" "i4372")) + #("i4373" "i4374")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) - #("i4366" "i4367")) + #("i4368" "i4369")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile)) - #{x\ 4373}# - #{y\ 4374}#)))))) - #{tmp\ 4370}#) + #{x\ 4375}# + #{y\ 4376}#)))))) + #{tmp\ 4372}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4369}#)))))) - (#{quasivector\ 4336}# - (lambda (#{x\ 4379}#) - (let ((#{tmp\ 4382}# #{x\ 4379}#)) - (let ((#{x\ 4384}# #{tmp\ 4382}#)) - (let ((#{tmp\ 4385}# #{x\ 4384}#)) - (let ((#{tmp\ 4386}# + #{tmp\ 4371}#)))))) + (#{quasivector\ 4338}# + (lambda (#{x\ 4381}#) + (let ((#{tmp\ 4384}# #{x\ 4381}#)) + (let ((#{x\ 4386}# #{tmp\ 4384}#)) + (let ((#{tmp\ 4387}# #{x\ 4386}#)) + (let ((#{tmp\ 4388}# ($sc-dispatch - #{tmp\ 4385}# + #{tmp\ 4387}# '(#(free-id #(syntax-object quote ((top) - #(ribcage #(x) #((top)) #("i4383")) + #(ribcage #(x) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4380")) + #(ribcage #(x) #((top)) #("i4382")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) each-any)))) - (if #{tmp\ 4386}# + (if #{tmp\ 4388}# (@apply - (lambda (#{x\ 4388}#) + (lambda (#{x\ 4390}#) (list '#(syntax-object quote ((top) - #(ribcage #(x) #((top)) #("i4387")) - #(ribcage #(x) #((top)) #("i4383")) + #(ribcage #(x) #((top)) #("i4389")) + #(ribcage #(x) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4380")) + #(ribcage #(x) #((top)) #("i4382")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile)) - (list->vector #{x\ 4388}#))) - #{tmp\ 4386}#) - (let ((#{tmp\ 4390}# + (list->vector #{x\ 4390}#))) + #{tmp\ 4388}#) + (let ((#{tmp\ 4392}# ($sc-dispatch - #{tmp\ 4385}# + #{tmp\ 4387}# '(#(free-id #(syntax-object list ((top) - #(ribcage #(x) #((top)) #("i4383")) + #(ribcage #(x) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4380")) + #(ribcage #(x) #((top)) #("i4382")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) . each-any)))) - (if #{tmp\ 4390}# + (if #{tmp\ 4392}# (@apply - (lambda (#{x\ 4392}#) + (lambda (#{x\ 4394}#) (cons '#(syntax-object vector ((top) - #(ribcage #(x) #((top)) #("i4391")) - #(ribcage #(x) #((top)) #("i4383")) + #(ribcage #(x) #((top)) #("i4393")) + #(ribcage #(x) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4380")) + #(ribcage #(x) #((top)) #("i4382")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile)) - #{x\ 4392}#)) - #{tmp\ 4390}#) - (let ((#{_\ 4395}# #{tmp\ 4385}#)) + #{x\ 4394}#)) + #{tmp\ 4392}#) + (let ((#{_\ 4397}# #{tmp\ 4387}#)) (list '#(syntax-object list->vector ((top) - #(ribcage #(_) #((top)) #("i4394")) - #(ribcage #(x) #((top)) #("i4383")) + #(ribcage #(_) #((top)) #("i4396")) + #(ribcage #(x) #((top)) #("i4385")) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4380")) + #(ribcage #(x) #((top)) #("i4382")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile)) - #{x\ 4384}#))))))))))) - (#{quasi\ 4337}# - (lambda (#{p\ 4396}# #{lev\ 4397}#) - (let ((#{tmp\ 4400}# #{p\ 4396}#)) - (let ((#{tmp\ 4401}# + #{x\ 4386}#))))))))))) + (#{quasi\ 4339}# + (lambda (#{p\ 4398}# #{lev\ 4399}#) + (let ((#{tmp\ 4402}# #{p\ 4398}#)) + (let ((#{tmp\ 4403}# ($sc-dispatch - #{tmp\ 4400}# + #{tmp\ 4402}# '(#(free-id #(syntax-object unquote @@ -14675,54 +14709,54 @@ #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) any)))) - (if #{tmp\ 4401}# + (if #{tmp\ 4403}# (@apply - (lambda (#{p\ 4403}#) - (if (= #{lev\ 4397}# 0) - #{p\ 4403}# - (#{quasicons\ 4334}# + (lambda (#{p\ 4405}#) + (if (= #{lev\ 4399}# 0) + #{p\ 4405}# + (#{quasicons\ 4336}# '(#(syntax-object quote ((top) - #(ribcage #(p) #((top)) #("i4402")) + #(ribcage #(p) #((top)) #("i4404")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile)) #(syntax-object unquote ((top) - #(ribcage #(p) #((top)) #("i4402")) + #(ribcage #(p) #((top)) #("i4404")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) - (#{quasi\ 4337}# - (list #{p\ 4403}#) - (1- #{lev\ 4397}#))))) - #{tmp\ 4401}#) - (let ((#{tmp\ 4404}# + (#{quasi\ 4339}# + (list #{p\ 4405}#) + (1- #{lev\ 4399}#))))) + #{tmp\ 4403}#) + (let ((#{tmp\ 4406}# ($sc-dispatch - #{tmp\ 4400}# + #{tmp\ 4402}# '(#(free-id #(syntax-object unquote @@ -14731,47 +14765,47 @@ #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) . any)))) - (if (if #{tmp\ 4404}# + (if (if #{tmp\ 4406}# (@apply - (lambda (#{args\ 4406}#) (= #{lev\ 4397}# 0)) - #{tmp\ 4404}#) + (lambda (#{args\ 4408}#) (= #{lev\ 4399}# 0)) + #{tmp\ 4406}#) #f) (@apply - (lambda (#{args\ 4408}#) + (lambda (#{args\ 4410}#) (syntax-violation 'unquote "unquote takes exactly one argument" - #{p\ 4396}# + #{p\ 4398}# (cons '#(syntax-object unquote ((top) - #(ribcage #(args) #((top)) #("i4407")) + #(ribcage #(args) #((top)) #("i4409")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile)) - #{args\ 4408}#))) - #{tmp\ 4404}#) - (let ((#{tmp\ 4409}# + #{args\ 4410}#))) + #{tmp\ 4406}#) + (let ((#{tmp\ 4411}# ($sc-dispatch - #{tmp\ 4400}# + #{tmp\ 4402}# '((#(free-id #(syntax-object unquote-splicing @@ -14780,46 +14814,46 @@ #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) any) . any)))) - (if #{tmp\ 4409}# + (if #{tmp\ 4411}# (@apply - (lambda (#{p\ 4412}# #{q\ 4413}#) - (if (= #{lev\ 4397}# 0) - (#{quasiappend\ 4335}# - #{p\ 4412}# - (#{quasi\ 4337}# #{q\ 4413}# #{lev\ 4397}#)) - (#{quasicons\ 4334}# - (#{quasicons\ 4334}# + (lambda (#{p\ 4414}# #{q\ 4415}#) + (if (= #{lev\ 4399}# 0) + (#{quasiappend\ 4337}# + #{p\ 4414}# + (#{quasi\ 4339}# #{q\ 4415}# #{lev\ 4399}#)) + (#{quasicons\ 4336}# + (#{quasicons\ 4336}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) - #("i4410" "i4411")) + #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile)) #(syntax-object unquote-splicing @@ -14827,28 +14861,28 @@ #(ribcage #(p q) #((top) (top)) - #("i4410" "i4411")) + #("i4412" "i4413")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" "i4331" "i4332" "i4333"))) + #("i4332" "i4333" "i4334" "i4335"))) (hygiene guile))) - (#{quasi\ 4337}# - (list #{p\ 4412}#) - (1- #{lev\ 4397}#))) - (#{quasi\ 4337}# #{q\ 4413}# #{lev\ 4397}#)))) - #{tmp\ 4409}#) - (let ((#{tmp\ 4414}# + (#{quasi\ 4339}# + (list #{p\ 4414}#) + (1- #{lev\ 4399}#))) + (#{quasi\ 4339}# #{q\ 4415}# #{lev\ 4399}#)))) + #{tmp\ 4411}#) + (let ((#{tmp\ 4416}# ($sc-dispatch - #{tmp\ 4400}# + #{tmp\ 4402}# '((#(free-id #(syntax-object unquote-splicing @@ -14857,62 +14891,62 @@ #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile))) . any) . any)))) - (if (if #{tmp\ 4414}# + (if (if #{tmp\ 4416}# (@apply - (lambda (#{args\ 4417}# #{q\ 4418}#) - (= #{lev\ 4397}# 0)) - #{tmp\ 4414}#) + (lambda (#{args\ 4419}# #{q\ 4420}#) + (= #{lev\ 4399}# 0)) + #{tmp\ 4416}#) #f) (@apply - (lambda (#{args\ 4421}# #{q\ 4422}#) + (lambda (#{args\ 4423}# #{q\ 4424}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" - #{p\ 4396}# + #{p\ 4398}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) - #("i4419" "i4420")) + #("i4421" "i4422")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) - #{args\ 4421}#))) - #{tmp\ 4414}#) - (let ((#{tmp\ 4423}# + #{args\ 4423}#))) + #{tmp\ 4416}#) + (let ((#{tmp\ 4425}# ($sc-dispatch - #{tmp\ 4400}# + #{tmp\ 4402}# '(#(free-id #(syntax-object quasiquote @@ -14921,107 +14955,107 @@ #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile))) any)))) - (if #{tmp\ 4423}# + (if #{tmp\ 4425}# (@apply - (lambda (#{p\ 4425}#) - (#{quasicons\ 4334}# + (lambda (#{p\ 4427}#) + (#{quasicons\ 4336}# '(#(syntax-object quote ((top) - #(ribcage #(p) #((top)) #("i4424")) + #(ribcage #(p) #((top)) #("i4426")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) #(syntax-object quasiquote ((top) - #(ribcage #(p) #((top)) #("i4424")) + #(ribcage #(p) #((top)) #("i4426")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile))) - (#{quasi\ 4337}# - (list #{p\ 4425}#) - (1+ #{lev\ 4397}#)))) - #{tmp\ 4423}#) - (let ((#{tmp\ 4426}# + (#{quasi\ 4339}# + (list #{p\ 4427}#) + (1+ #{lev\ 4399}#)))) + #{tmp\ 4425}#) + (let ((#{tmp\ 4428}# ($sc-dispatch - #{tmp\ 4400}# + #{tmp\ 4402}# '(any . any)))) - (if #{tmp\ 4426}# + (if #{tmp\ 4428}# (@apply - (lambda (#{p\ 4429}# #{q\ 4430}#) - (#{quasicons\ 4334}# - (#{quasi\ 4337}# - #{p\ 4429}# - #{lev\ 4397}#) - (#{quasi\ 4337}# - #{q\ 4430}# - #{lev\ 4397}#))) - #{tmp\ 4426}#) - (let ((#{tmp\ 4431}# + (lambda (#{p\ 4431}# #{q\ 4432}#) + (#{quasicons\ 4336}# + (#{quasi\ 4339}# + #{p\ 4431}# + #{lev\ 4399}#) + (#{quasi\ 4339}# + #{q\ 4432}# + #{lev\ 4399}#))) + #{tmp\ 4428}#) + (let ((#{tmp\ 4433}# ($sc-dispatch - #{tmp\ 4400}# + #{tmp\ 4402}# '#(vector each-any)))) - (if #{tmp\ 4431}# + (if #{tmp\ 4433}# (@apply - (lambda (#{x\ 4433}#) - (#{quasivector\ 4336}# - (#{quasi\ 4337}# - #{x\ 4433}# - #{lev\ 4397}#))) - #{tmp\ 4431}#) - (let ((#{p\ 4436}# #{tmp\ 4400}#)) + (lambda (#{x\ 4435}#) + (#{quasivector\ 4338}# + (#{quasi\ 4339}# + #{x\ 4435}# + #{lev\ 4399}#))) + #{tmp\ 4433}#) + (let ((#{p\ 4438}# #{tmp\ 4402}#)) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) - #("i4435")) + #("i4437")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) - #("i4398" "i4399")) + #("i4400" "i4401")) #(ribcage #(quasicons quasiappend @@ -15031,223 +15065,223 @@ (top) (top) (top)) - #("i4330" - "i4331" - "i4332" - "i4333"))) + #("i4332" + "i4333" + "i4334" + "i4335"))) (hygiene guile)) - #{p\ 4436}#)))))))))))))))))))) + #{p\ 4438}#)))))))))))))))))))) (begin - (lambda (#{x\ 4437}#) - (let ((#{tmp\ 4439}# #{x\ 4437}#)) - (let ((#{tmp\ 4440}# - ($sc-dispatch #{tmp\ 4439}# (quote (any any))))) - (if #{tmp\ 4440}# + (lambda (#{x\ 4439}#) + (let ((#{tmp\ 4441}# #{x\ 4439}#)) + (let ((#{tmp\ 4442}# + ($sc-dispatch #{tmp\ 4441}# (quote (any any))))) + (if #{tmp\ 4442}# (@apply - (lambda (#{_\ 4443}# #{e\ 4444}#) - (#{quasi\ 4337}# #{e\ 4444}# 0)) - #{tmp\ 4440}#) + (lambda (#{_\ 4445}# #{e\ 4446}#) + (#{quasi\ 4339}# #{e\ 4446}# 0)) + #{tmp\ 4442}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4439}#))))))))) + #{tmp\ 4441}#))))))))) (define include (make-syntax-transformer 'include 'macro - (lambda (#{x\ 4445}#) + (lambda (#{x\ 4447}#) (letrec* - ((#{read-file\ 4448}# - (lambda (#{fn\ 4449}# #{k\ 4450}#) + ((#{read-file\ 4450}# + (lambda (#{fn\ 4451}# #{k\ 4452}#) (begin - (let ((#{p\ 4454}# (open-input-file #{fn\ 4449}#))) + (let ((#{p\ 4456}# (open-input-file #{fn\ 4451}#))) (letrec* - ((#{f\ 4458}# - (lambda (#{x\ 4459}# #{result\ 4460}#) - (if (eof-object? #{x\ 4459}#) + ((#{f\ 4460}# + (lambda (#{x\ 4461}# #{result\ 4462}#) + (if (eof-object? #{x\ 4461}#) (begin - (close-input-port #{p\ 4454}#) - (reverse #{result\ 4460}#)) - (#{f\ 4458}# - (read #{p\ 4454}#) - (cons (datum->syntax #{k\ 4450}# #{x\ 4459}#) - #{result\ 4460}#)))))) + (close-input-port #{p\ 4456}#) + (reverse #{result\ 4462}#)) + (#{f\ 4460}# + (read #{p\ 4456}#) + (cons (datum->syntax #{k\ 4452}# #{x\ 4461}#) + #{result\ 4462}#)))))) (begin - (#{f\ 4458}# (read #{p\ 4454}#) (quote ()))))))))) + (#{f\ 4460}# (read #{p\ 4456}#) (quote ()))))))))) (begin - (let ((#{tmp\ 4461}# #{x\ 4445}#)) - (let ((#{tmp\ 4462}# - ($sc-dispatch #{tmp\ 4461}# (quote (any any))))) - (if #{tmp\ 4462}# + (let ((#{tmp\ 4463}# #{x\ 4447}#)) + (let ((#{tmp\ 4464}# + ($sc-dispatch #{tmp\ 4463}# (quote (any any))))) + (if #{tmp\ 4464}# (@apply - (lambda (#{k\ 4465}# #{filename\ 4466}#) + (lambda (#{k\ 4467}# #{filename\ 4468}#) (begin - (let ((#{fn\ 4468}# (syntax->datum #{filename\ 4466}#))) - (let ((#{tmp\ 4470}# - (#{read-file\ 4448}# - #{fn\ 4468}# - #{filename\ 4466}#))) - (let ((#{tmp\ 4471}# + (let ((#{fn\ 4470}# (syntax->datum #{filename\ 4468}#))) + (let ((#{tmp\ 4472}# + (#{read-file\ 4450}# + #{fn\ 4470}# + #{filename\ 4468}#))) + (let ((#{tmp\ 4473}# ($sc-dispatch - #{tmp\ 4470}# + #{tmp\ 4472}# 'each-any))) - (if #{tmp\ 4471}# + (if #{tmp\ 4473}# (@apply - (lambda (#{exp\ 4473}#) + (lambda (#{exp\ 4475}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) - #("i4472")) + #("i4474")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) - #("i4467")) + #("i4469")) #(ribcage #(k filename) #((top) (top)) - #("i4463" "i4464")) + #("i4465" "i4466")) #(ribcage (read-file) ((top)) - ("i4447")) + ("i4449")) #(ribcage #(x) #((top)) - #("i4446"))) + #("i4448"))) (hygiene guile)) - #{exp\ 4473}#)) - #{tmp\ 4471}#) + #{exp\ 4475}#)) + #{tmp\ 4473}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4470}#))))))) - #{tmp\ 4462}#) + #{tmp\ 4472}#))))))) + #{tmp\ 4464}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4461}#))))))))) + #{tmp\ 4463}#))))))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro - (lambda (#{x\ 4475}#) - (let ((#{tmp\ 4477}# #{x\ 4475}#)) - (let ((#{tmp\ 4478}# - ($sc-dispatch #{tmp\ 4477}# (quote (any any))))) - (if #{tmp\ 4478}# + (lambda (#{x\ 4477}#) + (let ((#{tmp\ 4479}# #{x\ 4477}#)) + (let ((#{tmp\ 4480}# + ($sc-dispatch #{tmp\ 4479}# (quote (any any))))) + (if #{tmp\ 4480}# (@apply - (lambda (#{k\ 4481}# #{filename\ 4482}#) + (lambda (#{k\ 4483}# #{filename\ 4484}#) (begin - (let ((#{fn\ 4484}# (syntax->datum #{filename\ 4482}#))) - (let ((#{tmp\ 4486}# + (let ((#{fn\ 4486}# (syntax->datum #{filename\ 4484}#))) + (let ((#{tmp\ 4488}# (datum->syntax - #{filename\ 4482}# + #{filename\ 4484}# (begin - (let ((#{t\ 4491}# - (%search-load-path #{fn\ 4484}#))) - (if #{t\ 4491}# - #{t\ 4491}# + (let ((#{t\ 4493}# + (%search-load-path #{fn\ 4486}#))) + (if #{t\ 4493}# + #{t\ 4493}# (syntax-violation 'include-from-path "file not found in path" - #{x\ 4475}# - #{filename\ 4482}#))))))) - (let ((#{fn\ 4488}# #{tmp\ 4486}#)) + #{x\ 4477}# + #{filename\ 4484}#))))))) + (let ((#{fn\ 4490}# #{tmp\ 4488}#)) (list '#(syntax-object include ((top) - #(ribcage #(fn) #((top)) #("i4487")) + #(ribcage #(fn) #((top)) #("i4489")) #(ribcage () () ()) #(ribcage () () ()) - #(ribcage #(fn) #((top)) #("i4483")) + #(ribcage #(fn) #((top)) #("i4485")) #(ribcage #(k filename) #((top) (top)) - #("i4479" "i4480")) + #("i4481" "i4482")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4476"))) + #(ribcage #(x) #((top)) #("i4478"))) (hygiene guile)) - #{fn\ 4488}#)))))) - #{tmp\ 4478}#) + #{fn\ 4490}#)))))) + #{tmp\ 4480}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4477}#))))))) + #{tmp\ 4479}#))))))) (define unquote (make-syntax-transformer 'unquote 'macro - (lambda (#{x\ 4493}#) - (let ((#{tmp\ 4495}# #{x\ 4493}#)) - (let ((#{tmp\ 4496}# - ($sc-dispatch #{tmp\ 4495}# (quote (any any))))) - (if #{tmp\ 4496}# + (lambda (#{x\ 4495}#) + (let ((#{tmp\ 4497}# #{x\ 4495}#)) + (let ((#{tmp\ 4498}# + ($sc-dispatch #{tmp\ 4497}# (quote (any any))))) + (if #{tmp\ 4498}# (@apply - (lambda (#{_\ 4499}# #{e\ 4500}#) + (lambda (#{_\ 4501}# #{e\ 4502}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" - #{x\ 4493}#)) - #{tmp\ 4496}#) + #{x\ 4495}#)) + #{tmp\ 4498}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4495}#))))))) + #{tmp\ 4497}#))))))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro - (lambda (#{x\ 4501}#) - (let ((#{tmp\ 4503}# #{x\ 4501}#)) - (let ((#{tmp\ 4504}# - ($sc-dispatch #{tmp\ 4503}# (quote (any any))))) - (if #{tmp\ 4504}# + (lambda (#{x\ 4503}#) + (let ((#{tmp\ 4505}# #{x\ 4503}#)) + (let ((#{tmp\ 4506}# + ($sc-dispatch #{tmp\ 4505}# (quote (any any))))) + (if #{tmp\ 4506}# (@apply - (lambda (#{_\ 4507}# #{e\ 4508}#) + (lambda (#{_\ 4509}# #{e\ 4510}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" - #{x\ 4501}#)) - #{tmp\ 4504}#) + #{x\ 4503}#)) + #{tmp\ 4506}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4503}#))))))) + #{tmp\ 4505}#))))))) (define case (make-syntax-transformer 'case 'macro - (lambda (#{x\ 4509}#) - (let ((#{tmp\ 4511}# #{x\ 4509}#)) - (let ((#{tmp\ 4512}# + (lambda (#{x\ 4511}#) + (let ((#{tmp\ 4513}# #{x\ 4511}#)) + (let ((#{tmp\ 4514}# ($sc-dispatch - #{tmp\ 4511}# + #{tmp\ 4513}# '(any any any . each-any)))) - (if #{tmp\ 4512}# + (if #{tmp\ 4514}# (@apply - (lambda (#{_\ 4517}# - #{e\ 4518}# - #{m1\ 4519}# - #{m2\ 4520}#) - (let ((#{tmp\ 4522}# + (lambda (#{_\ 4519}# + #{e\ 4520}# + #{m1\ 4521}# + #{m2\ 4522}#) + (let ((#{tmp\ 4524}# (letrec* - ((#{f\ 4528}# - (lambda (#{clause\ 4529}# #{clauses\ 4530}#) - (if (null? #{clauses\ 4530}#) - (let ((#{tmp\ 4532}# #{clause\ 4529}#)) - (let ((#{tmp\ 4533}# + ((#{f\ 4530}# + (lambda (#{clause\ 4531}# #{clauses\ 4532}#) + (if (null? #{clauses\ 4532}#) + (let ((#{tmp\ 4534}# #{clause\ 4531}#)) + (let ((#{tmp\ 4535}# ($sc-dispatch - #{tmp\ 4532}# + #{tmp\ 4534}# '(#(free-id #(syntax-object else @@ -15256,104 +15290,104 @@ #(ribcage #(f clause clauses) #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile))) any . each-any)))) - (if #{tmp\ 4533}# + (if #{tmp\ 4535}# (@apply - (lambda (#{e1\ 4536}# #{e2\ 4537}#) + (lambda (#{e1\ 4538}# #{e2\ 4539}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) - #("i4534" "i4535")) + #("i4536" "i4537")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) - (cons #{e1\ 4536}# - #{e2\ 4537}#))) - #{tmp\ 4533}#) - (let ((#{tmp\ 4539}# + (cons #{e1\ 4538}# + #{e2\ 4539}#))) + #{tmp\ 4535}#) + (let ((#{tmp\ 4541}# ($sc-dispatch - #{tmp\ 4532}# + #{tmp\ 4534}# '(each-any any . each-any)))) - (if #{tmp\ 4539}# + (if #{tmp\ 4541}# (@apply - (lambda (#{k\ 4543}# - #{e1\ 4544}# - #{e2\ 4545}#) + (lambda (#{k\ 4545}# + #{e1\ 4546}# + #{e2\ 4547}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) - #("i4540" - "i4541" - "i4542")) + #("i4542" + "i4543" + "i4544")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) (list '#(syntax-object memv @@ -15363,9 +15397,9 @@ #((top) (top) (top)) - #("i4540" - "i4541" - "i4542")) + #("i4542" + "i4543" + "i4544")) #(ribcage () () @@ -15377,19 +15411,19 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15397,7 +15431,7 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) '#(syntax-object t @@ -15407,9 +15441,9 @@ #((top) (top) (top)) - #("i4540" - "i4541" - "i4542")) + #("i4542" + "i4543" + "i4544")) #(ribcage () () @@ -15421,19 +15455,19 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15441,7 +15475,7 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) (list '#(syntax-object quote @@ -15453,9 +15487,9 @@ #((top) (top) (top)) - #("i4540" - "i4541" - "i4542")) + #("i4542" + "i4543" + "i4544")) #(ribcage () () @@ -15467,9 +15501,9 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e @@ -15479,10 +15513,10 @@ (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15490,10 +15524,10 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) - #{k\ 4543}#)) + #{k\ 4545}#)) (cons '#(syntax-object begin ((top) @@ -15502,9 +15536,9 @@ #((top) (top) (top)) - #("i4540" - "i4541" - "i4542")) + #("i4542" + "i4543" + "i4544")) #(ribcage () () @@ -15516,19 +15550,19 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15536,67 +15570,67 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) - (cons #{e1\ 4544}# - #{e2\ 4545}#)))) - #{tmp\ 4539}#) - (let ((#{_\ 4549}# #{tmp\ 4532}#)) + (cons #{e1\ 4546}# + #{e2\ 4547}#)))) + #{tmp\ 4541}#) + (let ((#{_\ 4551}# #{tmp\ 4534}#)) (syntax-violation 'case "bad clause" - #{x\ 4509}# - #{clause\ 4529}#))))))) - (let ((#{tmp\ 4551}# - (#{f\ 4528}# - (car #{clauses\ 4530}#) - (cdr #{clauses\ 4530}#)))) - (let ((#{rest\ 4553}# #{tmp\ 4551}#)) - (let ((#{tmp\ 4554}# #{clause\ 4529}#)) - (let ((#{tmp\ 4555}# + #{x\ 4511}# + #{clause\ 4531}#))))))) + (let ((#{tmp\ 4553}# + (#{f\ 4530}# + (car #{clauses\ 4532}#) + (cdr #{clauses\ 4532}#)))) + (let ((#{rest\ 4555}# #{tmp\ 4553}#)) + (let ((#{tmp\ 4556}# #{clause\ 4531}#)) + (let ((#{tmp\ 4557}# ($sc-dispatch - #{tmp\ 4554}# + #{tmp\ 4556}# '(each-any any . each-any)))) - (if #{tmp\ 4555}# + (if #{tmp\ 4557}# (@apply - (lambda (#{k\ 4559}# - #{e1\ 4560}# - #{e2\ 4561}#) + (lambda (#{k\ 4561}# + #{e1\ 4562}# + #{e2\ 4563}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) - #("i4556" - "i4557" - "i4558")) + #("i4558" + "i4559" + "i4560")) #(ribcage #(rest) #((top)) - #("i4552")) + #("i4554")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) (list '#(syntax-object memv @@ -15606,13 +15640,13 @@ #((top) (top) (top)) - #("i4556" - "i4557" - "i4558")) + #("i4558" + "i4559" + "i4560")) #(ribcage #(rest) #((top)) - #("i4552")) + #("i4554")) #(ribcage () () @@ -15624,19 +15658,19 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15644,7 +15678,7 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) '#(syntax-object t @@ -15654,13 +15688,13 @@ #((top) (top) (top)) - #("i4556" - "i4557" - "i4558")) + #("i4558" + "i4559" + "i4560")) #(ribcage #(rest) #((top)) - #("i4552")) + #("i4554")) #(ribcage () () @@ -15672,19 +15706,19 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15692,7 +15726,7 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) (list '#(syntax-object quote @@ -15704,13 +15738,13 @@ #((top) (top) (top)) - #("i4556" - "i4557" - "i4558")) + #("i4558" + "i4559" + "i4560")) #(ribcage #(rest) #((top)) - #("i4552")) + #("i4554")) #(ribcage () () @@ -15722,9 +15756,9 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e @@ -15734,10 +15768,10 @@ (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15745,10 +15779,10 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) - #{k\ 4559}#)) + #{k\ 4561}#)) (cons '#(syntax-object begin ((top) @@ -15757,13 +15791,13 @@ #((top) (top) (top)) - #("i4556" - "i4557" - "i4558")) + #("i4558" + "i4559" + "i4560")) #(ribcage #(rest) #((top)) - #("i4552")) + #("i4554")) #(ribcage () () @@ -15775,19 +15809,19 @@ #((top) (top) (top)) - #("i4525" - "i4526" - "i4527")) + #("i4527" + "i4528" + "i4529")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" - "i4514" - "i4515" - "i4516")) + #("i4515" + "i4516" + "i4517" + "i4518")) #(ribcage () () @@ -15795,30 +15829,30 @@ #(ribcage #(x) #((top)) - #("i4510"))) + #("i4512"))) (hygiene guile)) - (cons #{e1\ 4560}# - #{e2\ 4561}#)) - #{rest\ 4553}#)) - #{tmp\ 4555}#) - (let ((#{_\ 4565}# #{tmp\ 4554}#)) + (cons #{e1\ 4562}# + #{e2\ 4563}#)) + #{rest\ 4555}#)) + #{tmp\ 4557}#) + (let ((#{_\ 4567}# #{tmp\ 4556}#)) (syntax-violation 'case "bad clause" - #{x\ 4509}# - #{clause\ 4529}#))))))))))) - (begin (#{f\ 4528}# #{m1\ 4519}# #{m2\ 4520}#))))) - (let ((#{body\ 4524}# #{tmp\ 4522}#)) + #{x\ 4511}# + #{clause\ 4531}#))))))))))) + (begin (#{f\ 4530}# #{m1\ 4521}# #{m2\ 4522}#))))) + (let ((#{body\ 4526}# #{tmp\ 4524}#)) (list '#(syntax-object let ((top) - #(ribcage #(body) #((top)) #("i4523")) + #(ribcage #(body) #((top)) #("i4525")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" "i4514" "i4515" "i4516")) + #("i4515" "i4516" "i4517" "i4518")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4510"))) + #(ribcage #(x) #((top)) #("i4512"))) (hygiene guile)) (list (list '#(syntax-object t @@ -15826,42 +15860,59 @@ #(ribcage #(body) #((top)) - #("i4523")) + #("i4525")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) - #("i4513" "i4514" "i4515" "i4516")) + #("i4515" "i4516" "i4517" "i4518")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4510"))) + #(ribcage #(x) #((top)) #("i4512"))) (hygiene guile)) - #{e\ 4518}#)) - #{body\ 4524}#)))) - #{tmp\ 4512}#) + #{e\ 4520}#)) + #{body\ 4526}#)))) + #{tmp\ 4514}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4511}#))))))) + #{tmp\ 4513}#))))))) + +(define make-variable-transformer + (lambda (#{proc\ 4568}#) + (if (procedure? #{proc\ 4568}#) + (begin + (letrec* + ((#{trans\ 4571}# + (lambda (#{x\ 4572}#) + (#{proc\ 4568}# #{x\ 4572}#)))) + (begin + (set-procedure-property! + #{trans\ 4571}# + 'variable-transformer + #t) + #{trans\ 4571}#))) + (error "variable transformer not a procedure" + #{proc\ 4568}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro - (lambda (#{x\ 4566}#) - (let ((#{tmp\ 4568}# #{x\ 4566}#)) - (let ((#{tmp\ 4569}# - ($sc-dispatch #{tmp\ 4568}# (quote (any any))))) - (if #{tmp\ 4569}# + (lambda (#{x\ 4574}#) + (let ((#{tmp\ 4576}# #{x\ 4574}#)) + (let ((#{tmp\ 4577}# + ($sc-dispatch #{tmp\ 4576}# (quote (any any))))) + (if #{tmp\ 4577}# (@apply - (lambda (#{_\ 4572}# #{e\ 4573}#) + (lambda (#{_\ 4580}# #{e\ 4581}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)) '(#(syntax-object x @@ -15869,9 +15920,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile))) '#((#(syntax-object macro-type @@ -15879,9 +15930,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)) . #(syntax-object @@ -15890,9 +15941,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)))) (list '#(syntax-object syntax-case @@ -15900,9 +15951,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)) '#(syntax-object x @@ -15910,9 +15961,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)) '() (list '#(syntax-object @@ -15921,9 +15972,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)) '(#(syntax-object identifier? @@ -15931,9 +15982,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)) (#(syntax-object syntax @@ -15941,9 +15992,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)) #(syntax-object id @@ -15951,9 +16002,9 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4567"))) + #(ribcage #(x) #((top)) #("i4575"))) (hygiene guile)))) (list '#(syntax-object syntax @@ -15961,27 +16012,27 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4567"))) + #("i4575"))) (hygiene guile)) - #{e\ 4573}#)) - (list (cons #{_\ 4572}# + #{e\ 4581}#)) + (list (cons #{_\ 4580}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4567"))) + #("i4575"))) (hygiene guile)) #(syntax-object ... @@ -15989,12 +16040,12 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4567"))) + #("i4575"))) (hygiene guile)))) (list '#(syntax-object syntax @@ -16002,26 +16053,26 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4567"))) + #("i4575"))) (hygiene guile)) - (cons #{e\ 4573}# + (cons #{e\ 4581}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4567"))) + #("i4575"))) (hygiene guile)) #(syntax-object ... @@ -16029,67 +16080,533 @@ #(ribcage #(_ e) #((top) (top)) - #("i4570" "i4571")) + #("i4578" "i4579")) #(ribcage () () ()) #(ribcage #(x) #((top)) - #("i4567"))) + #("i4575"))) (hygiene guile))))))))) - #{tmp\ 4569}#) - (syntax-violation - #f - "source expression failed to match any pattern" - #{tmp\ 4568}#))))))) + #{tmp\ 4577}#) + (let ((#{tmp\ 4582}# + ($sc-dispatch + #{tmp\ 4576}# + '(any (any any) + ((#(free-id + #(syntax-object + set! + ((top) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile))) + any + any) + any))))) + (if (if #{tmp\ 4582}# + (@apply + (lambda (#{_\ 4589}# + #{id\ 4590}# + #{exp1\ 4591}# + #{var\ 4592}# + #{val\ 4593}# + #{exp2\ 4594}#) + (if (identifier? #{id\ 4590}#) + (identifier? #{var\ 4592}#) + #f)) + #{tmp\ 4582}#) + #f) + (@apply + (lambda (#{_\ 4603}# + #{id\ 4604}# + #{exp1\ 4605}# + #{var\ 4606}# + #{val\ 4607}# + #{exp2\ 4608}#) + (list '#(syntax-object + make-variable-transformer + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) (top) (top) (top) (top) (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile)) + (list '#(syntax-object + lambda + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) (top) (top) (top) (top) (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile)) + '(#(syntax-object + x + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) (top) (top) (top) (top) (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile))) + '#((#(syntax-object + macro-type + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) (top) (top) (top) (top) (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile)) + . + #(syntax-object + variable-transformer + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) (top) (top) (top) (top) (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile)))) + (list '#(syntax-object + syntax-case + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile)) + '#(syntax-object + x + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile)) + '(#(syntax-object + set! + ((top) + #(ribcage + #(_ id exp1 var val exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage #(x) #((top)) #("i4575"))) + (hygiene guile))) + (list (list '#(syntax-object + set! + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + #{var\ 4606}# + #{val\ 4607}#) + (list '#(syntax-object + syntax + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + #{exp2\ 4608}#)) + (list (cons #{id\ 4604}# + '(#(syntax-object + x + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + #(syntax-object + ... + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)))) + (list '#(syntax-object + syntax + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + (cons #{exp1\ 4605}# + '(#(syntax-object + x + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage + () + () + ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + #(syntax-object + ... + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage + () + () + ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene + guile)))))) + (list #{id\ 4604}# + (list '#(syntax-object + identifier? + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + (list '#(syntax-object + syntax + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + #{id\ 4604}#)) + (list '#(syntax-object + syntax + ((top) + #(ribcage + #(_ + id + exp1 + var + val + exp2) + #((top) + (top) + (top) + (top) + (top) + (top)) + #("i4597" + "i4598" + "i4599" + "i4600" + "i4601" + "i4602")) + #(ribcage () () ()) + #(ribcage + #(x) + #((top)) + #("i4575"))) + (hygiene guile)) + #{exp1\ 4605}#)))))) + #{tmp\ 4582}#) + (syntax-violation + #f + "source expression failed to match any pattern" + #{tmp\ 4576}#))))))))) (define define* (make-syntax-transformer 'define* 'macro - (lambda (#{x\ 4574}#) - (let ((#{tmp\ 4576}# #{x\ 4574}#)) - (let ((#{tmp\ 4577}# + (lambda (#{x\ 4609}#) + (let ((#{tmp\ 4611}# #{x\ 4609}#)) + (let ((#{tmp\ 4612}# ($sc-dispatch - #{tmp\ 4576}# + #{tmp\ 4611}# '(any (any . any) any . each-any)))) - (if #{tmp\ 4577}# + (if #{tmp\ 4612}# (@apply - (lambda (#{_\ 4583}# - #{id\ 4584}# - #{args\ 4585}# - #{b0\ 4586}# - #{b1\ 4587}#) + (lambda (#{_\ 4618}# + #{id\ 4619}# + #{args\ 4620}# + #{b0\ 4621}# + #{b1\ 4622}#) (list '#(syntax-object define ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) - #("i4578" "i4579" "i4580" "i4581" "i4582")) + #("i4613" "i4614" "i4615" "i4616" "i4617")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4575"))) + #(ribcage #(x) #((top)) #("i4610"))) (hygiene guile)) - #{id\ 4584}# + #{id\ 4619}# (cons '#(syntax-object lambda* ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) - #("i4578" "i4579" "i4580" "i4581" "i4582")) + #("i4613" "i4614" "i4615" "i4616" "i4617")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4575"))) + #(ribcage #(x) #((top)) #("i4610"))) (hygiene guile)) - (cons #{args\ 4585}# - (cons #{b0\ 4586}# #{b1\ 4587}#))))) - #{tmp\ 4577}#) - (let ((#{tmp\ 4589}# + (cons #{args\ 4620}# + (cons #{b0\ 4621}# #{b1\ 4622}#))))) + #{tmp\ 4612}#) + (let ((#{tmp\ 4624}# ($sc-dispatch - #{tmp\ 4576}# + #{tmp\ 4611}# '(any any any)))) - (if (if #{tmp\ 4589}# + (if (if #{tmp\ 4624}# (@apply - (lambda (#{_\ 4593}# #{id\ 4594}# #{val\ 4595}#) + (lambda (#{_\ 4628}# #{id\ 4629}# #{val\ 4630}#) (identifier? '#(syntax-object x @@ -16097,29 +16614,29 @@ #(ribcage #(_ id val) #((top) (top) (top)) - #("i4590" "i4591" "i4592")) + #("i4625" "i4626" "i4627")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4575"))) + #(ribcage #(x) #((top)) #("i4610"))) (hygiene guile)))) - #{tmp\ 4589}#) + #{tmp\ 4624}#) #f) (@apply - (lambda (#{_\ 4599}# #{id\ 4600}# #{val\ 4601}#) + (lambda (#{_\ 4634}# #{id\ 4635}# #{val\ 4636}#) (list '#(syntax-object define ((top) #(ribcage #(_ id val) #((top) (top) (top)) - #("i4596" "i4597" "i4598")) + #("i4631" "i4632" "i4633")) #(ribcage () () ()) - #(ribcage #(x) #((top)) #("i4575"))) + #(ribcage #(x) #((top)) #("i4610"))) (hygiene guile)) - #{id\ 4600}# - #{val\ 4601}#)) - #{tmp\ 4589}#) + #{id\ 4635}# + #{val\ 4636}#)) + #{tmp\ 4624}#) (syntax-violation #f "source expression failed to match any pattern" - #{tmp\ 4576}#))))))))) + #{tmp\ 4611}#))))))))) diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm index 323f0c96d..6f1e85147 100644 --- a/module/ice-9/psyntax.scm +++ b/module/ice-9/psyntax.scm @@ -1327,7 +1327,6 @@ ;; possible. (define chi-macro (lambda (p e r w s rib mod) - ;; p := (procedure . module-name) (define rebuild-macro-output (lambda (x m) (cond ((pair? x) @@ -2138,16 +2137,23 @@ (syntax-case e () ((_ id val) (id? #'id) - (let ((val (chi #'val r w mod)) - (n (id-var-name #'id w))) + (let ((n (id-var-name #'id w))) (let ((b (lookup n r mod))) (case (binding-type b) ((lexical) (build-lexical-assignment s (syntax->datum #'id) (binding-value b) - val)) - ((global) (build-global-assignment s n val mod)) + (chi #'val r w mod))) + ((global) + (build-global-assignment s n (chi #'val r w mod) mod)) + ((macro) + (let ((p (binding-value b))) + (if (procedure-property p 'variable-transformer) + (chi (chi-macro p e r w s #f mod) r w mod) + (syntax-violation 'set! "not a variable transformer" + (wrap e w mod) + (wrap #'id w mod))))) ((displaced-lexical) (syntax-violation 'set! "identifier out of context" (wrap #'id w mod))) @@ -2826,9 +2832,18 @@ clause)))))))) #'(let ((t e)) body)))))) +(define (make-variable-transformer proc) + (if (procedure? proc) + (let ((trans (lambda (x) + #((macro-type . variable-transformer)) + (proc x)))) + (set-procedure-property! trans 'variable-transformer #t) + trans) + (error "variable transformer not a procedure" proc))) + (define-syntax identifier-syntax (lambda (x) - (syntax-case x () + (syntax-case x (set!) ((_ e) #'(lambda (x) #((macro-type . identifier-syntax)) @@ -2837,7 +2852,16 @@ (identifier? #'id) #'e) ((_ x (... ...)) - #'(e x (... ...))))))))) + #'(e x (... ...)))))) + ((_ (id exp1) ((set! var val) exp2)) + (and (identifier? #'id) (identifier? #'var)) + #'(make-variable-transformer + (lambda (x) + #((macro-type . variable-transformer)) + (syntax-case x (set!) + ((set! var val) #'exp2) + ((id x (... ...)) #'(exp1 x (... ...))) + (id (identifier? #'id) #'exp1)))))))) (define-syntax define* (lambda (x) |