(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec ((#{and-map*\ 3299}# (lambda (#{f\ 3361}# #{first\ 3362}# . #{rest\ 3363}#) (let ((#{t\ 3369}# (null? #{first\ 3362}#))) (if #{t\ 3369}# #{t\ 3369}# (if (null? #{rest\ 3363}#) (letrec ((#{andmap\ 3373}# (lambda (#{first\ 3374}#) (let ((#{x\ 3377}# (car #{first\ 3374}#)) (#{first\ 3378}# (cdr #{first\ 3374}#))) (if (null? #{first\ 3378}#) (#{f\ 3361}# #{x\ 3377}#) (if (#{f\ 3361}# #{x\ 3377}#) (#{andmap\ 3373}# #{first\ 3378}#) #f)))))) (#{andmap\ 3373}# #{first\ 3362}#)) (letrec ((#{andmap\ 3384}# (lambda (#{first\ 3385}# #{rest\ 3386}#) (let ((#{x\ 3391}# (car #{first\ 3385}#)) (#{xr\ 3392}# (map car #{rest\ 3386}#)) (#{first\ 3393}# (cdr #{first\ 3385}#)) (#{rest\ 3394}# (map cdr #{rest\ 3386}#))) (if (null? #{first\ 3393}#) (apply #{f\ 3361}# (cons #{x\ 3391}# #{xr\ 3392}#)) (if (apply #{f\ 3361}# (cons #{x\ 3391}# #{xr\ 3392}#)) (#{andmap\ 3384}# #{first\ 3393}# #{rest\ 3394}#) #f)))))) (#{andmap\ 3384}# #{first\ 3362}# #{rest\ 3363}#)))))))) (letrec ((#{lambda-var-list\ 3616}# (lambda (#{vars\ 3831}#) (letrec ((#{lvl\ 3837}# (lambda (#{vars\ 3838}# #{ls\ 3839}# #{w\ 3840}#) (if (pair? #{vars\ 3838}#) (#{lvl\ 3837}# (cdr #{vars\ 3838}#) (cons (#{wrap\ 3570}# (car #{vars\ 3838}#) #{w\ 3840}# #f) #{ls\ 3839}#) #{w\ 3840}#) (if (#{id?\ 3501}# #{vars\ 3838}#) (cons (#{wrap\ 3570}# #{vars\ 3838}# #{w\ 3840}# #f) #{ls\ 3839}#) (if (null? #{vars\ 3838}#) #{ls\ 3839}# (if (#{syntax-object?\ 3465}# #{vars\ 3838}#) (#{lvl\ 3837}# (#{syntax-object-expression\ 3467}# #{vars\ 3838}#) #{ls\ 3839}# (#{join-wraps\ 3552}# #{w\ 3840}# (#{syntax-object-wrap\ 3469}# #{vars\ 3838}#))) (cons #{vars\ 3838}# #{ls\ 3839}#)))))))) (#{lvl\ 3837}# #{vars\ 3831}# '() '(()))))) (#{gen-var\ 3614}# (lambda (#{id\ 3851}#) (let ((#{id\ 3854}# (if (#{syntax-object?\ 3465}# #{id\ 3851}#) (#{syntax-object-expression\ 3467}# #{id\ 3851}#) #{id\ 3851}#))) (gensym (string-append (symbol->string #{id\ 3854}#) " "))))) (#{strip\ 3612}# (lambda (#{x\ 3856}# #{w\ 3857}#) (if (memq 'top (#{wrap-marks\ 3508}# #{w\ 3857}#)) #{x\ 3856}# (letrec ((#{f\ 3863}# (lambda (#{x\ 3864}#) (if (#{syntax-object?\ 3465}# #{x\ 3864}#) (#{strip\ 3612}# (#{syntax-object-expression\ 3467}# #{x\ 3864}#) (#{syntax-object-wrap\ 3469}# #{x\ 3864}#)) (if (pair? #{x\ 3864}#) (let ((#{a\ 3871}# (#{f\ 3863}# (car #{x\ 3864}#))) (#{d\ 3872}# (#{f\ 3863}# (cdr #{x\ 3864}#)))) (if (if (eq? #{a\ 3871}# (car #{x\ 3864}#)) (eq? #{d\ 3872}# (cdr #{x\ 3864}#)) #f) #{x\ 3864}# (cons #{a\ 3871}# #{d\ 3872}#))) (if (vector? #{x\ 3864}#) (let ((#{old\ 3878}# (vector->list #{x\ 3864}#))) (let ((#{new\ 3880}# (map #{f\ 3863}# #{old\ 3878}#))) (if (#{and-map*\ 3299}# eq? #{old\ 3878}# #{new\ 3880}#) #{x\ 3864}# (list->vector #{new\ 3880}#)))) #{x\ 3864}#)))))) (#{f\ 3863}# #{x\ 3856}#))))) (#{chi-lambda-case\ 3610}# (lambda (#{e\ 3882}# #{r\ 3883}# #{w\ 3884}# #{s\ 3885}# #{mod\ 3886}# #{get-formals\ 3887}# #{clauses\ 3888}#) (letrec ((#{expand-body\ 3903}# (lambda (#{req\ 3904}# #{opt\ 3905}# #{rest\ 3906}# #{kw\ 3907}# #{body\ 3908}# #{vars\ 3909}# #{r*\ 3910}# #{w*\ 3911}# #{inits\ 3912}#) ((lambda (#{tmp\ 3922}#) ((lambda (#{tmp\ 3923}#) (if (if #{tmp\ 3923}# (apply (lambda (#{docstring\ 3927}# #{e1\ 3928}# #{e2\ 3929}#) (string? (syntax->datum #{docstring\ 3927}#))) #{tmp\ 3923}#) #f) (apply (lambda (#{docstring\ 3933}# #{e1\ 3934}# #{e2\ 3935}#) (values (syntax->datum #{docstring\ 3933}#) #{req\ 3904}# #{opt\ 3905}# #{rest\ 3906}# #{kw\ 3907}# #{inits\ 3912}# #{vars\ 3909}# (#{chi-body\ 3594}# (cons #{e1\ 3934}# #{e2\ 3935}#) (#{source-wrap\ 3572}# #{e\ 3882}# #{w\ 3884}# #{s\ 3885}# #{mod\ 3886}#) #{r*\ 3910}# #{w*\ 3911}# #{mod\ 3886}#))) #{tmp\ 3923}#) ((lambda (#{tmp\ 3937}#) (if #{tmp\ 3937}# (apply (lambda (#{e1\ 3940}# #{e2\ 3941}#) (values #f #{req\ 3904}# #{opt\ 3905}# #{rest\ 3906}# #{kw\ 3907}# #{inits\ 3912}# #{vars\ 3909}# (#{chi-body\ 3594}# (cons #{e1\ 3940}# #{e2\ 3941}#) (#{source-wrap\ 3572}# #{e\ 3882}# #{w\ 3884}# #{s\ 3885}# #{mod\ 3886}#) #{r*\ 3910}# #{w*\ 3911}# #{mod\ 3886}#))) #{tmp\ 3937}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3922}#))) ($sc-dispatch #{tmp\ 3922}# '(any . each-any))))) ($sc-dispatch #{tmp\ 3922}# '(any any . each-any)))) #{body\ 3908}#))) (#{expand-kw\ 3901}# (lambda (#{req\ 3943}# #{opt\ 3944}# #{rest\ 3945}# #{kw\ 3946}# #{body\ 3947}# #{vars\ 3948}# #{r*\ 3949}# #{w*\ 3950}# #{aok\ 3951}# #{out\ 3952}# #{inits\ 3953}#) (if (pair? #{kw\ 3946}#) ((lambda (#{tmp\ 3967}#) ((lambda (#{tmp\ 3968}#) (if #{tmp\ 3968}# (apply (lambda (#{k\ 3972}# #{id\ 3973}# #{i\ 3974}#) (let ((#{v\ 3977}# (#{gen-var\ 3614}# #{id\ 3973}#))) (let ((#{l\ 3979}# (#{gen-labels\ 3519}# (list #{v\ 3977}#)))) (let ((#{r**\ 3981}# (#{extend-var-env\ 3491}# #{l\ 3979}# (list #{v\ 3977}#) #{r*\ 3949}#))) (let ((#{w**\ 3983}# (#{make-binding-wrap\ 3548}# (list #{id\ 3973}#) #{l\ 3979}# #{w*\ 3950}#))) (#{expand-kw\ 3901}# #{req\ 3943}# #{opt\ 3944}# #{rest\ 3945}# (cdr #{kw\ 3946}#) #{body\ 3947}# (cons #{v\ 3977}# #{vars\ 3948}#) #{r**\ 3981}# #{w**\ 3983}# #{aok\ 3951}# (cons (list (syntax->datum #{k\ 3972}#) (syntax->datum #{id\ 3973}#) #{v\ 3977}#) #{out\ 3952}#) (cons (#{chi\ 3586}# #{i\ 3974}# #{r*\ 3949}# #{w*\ 3950}# #{mod\ 3886}#) #{inits\ 3953}#))))))) #{tmp\ 3968}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3967}#))) ($sc-dispatch #{tmp\ 3967}# '(any any any)))) (car #{kw\ 3946}#)) (#{expand-body\ 3903}# #{req\ 3943}# #{opt\ 3944}# #{rest\ 3945}# (if (let ((#{t\ 3987}# #{aok\ 3951}#)) (if #{t\ 3987}# #{t\ 3987}# (pair? #{out\ 3952}#))) (cons #{aok\ 3951}# (reverse #{out\ 3952}#)) #f) #{body\ 3947}# (reverse #{vars\ 3948}#) #{r*\ 3949}# #{w*\ 3950}# (reverse #{inits\ 3953}#))))) (#{expand-opt\ 3899}# (lambda (#{req\ 3989}# #{opt\ 3990}# #{rest\ 3991}# #{kw\ 3992}# #{body\ 3993}# #{vars\ 3994}# #{r*\ 3995}# #{w*\ 3996}# #{out\ 3997}# #{inits\ 3998}#) (if (pair? #{opt\ 3990}#) ((lambda (#{tmp\ 4011}#) ((lambda (#{tmp\ 4012}#) (if #{tmp\ 4012}# (apply (lambda (#{id\ 4015}# #{i\ 4016}#) (let ((#{v\ 4019}# (#{gen-var\ 3614}# #{id\ 4015}#))) (let ((#{l\ 4021}# (#{gen-labels\ 3519}# (list #{v\ 4019}#)))) (let ((#{r**\ 4023}# (#{extend-var-env\ 3491}# #{l\ 4021}# (list #{v\ 4019}#) #{r*\ 3995}#))) (let ((#{w**\ 4025}# (#{make-binding-wrap\ 3548}# (list #{id\ 4015}#) #{l\ 4021}# #{w*\ 3996}#))) (#{expand-opt\ 3899}# #{req\ 3989}# (cdr #{opt\ 3990}#) #{rest\ 3991}# #{kw\ 3992}# #{body\ 3993}# (cons #{v\ 4019}# #{vars\ 3994}#) #{r**\ 4023}# #{w**\ 4025}# (cons (syntax->datum #{id\ 4015}#) #{out\ 3997}#) (cons (#{chi\ 3586}# #{i\ 4016}# #{r*\ 3995}# #{w*\ 3996}# #{mod\ 3886}#) #{inits\ 3998}#))))))) #{tmp\ 4012}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4011}#))) ($sc-dispatch #{tmp\ 4011}# '(any any)))) (car #{opt\ 3990}#)) (if #{rest\ 3991}# (let ((#{v\ 4030}# (#{gen-var\ 3614}# #{rest\ 3991}#))) (let ((#{l\ 4032}# (#{gen-labels\ 3519}# (list #{v\ 4030}#)))) (let ((#{r*\ 4034}# (#{extend-var-env\ 3491}# #{l\ 4032}# (list #{v\ 4030}#) #{r*\ 3995}#))) (let ((#{w*\ 4036}# (#{make-binding-wrap\ 3548}# (list #{rest\ 3991}#) #{l\ 4032}# #{w*\ 3996}#))) (#{expand-kw\ 3901}# #{req\ 3989}# (if (pair? #{out\ 3997}#) (reverse #{out\ 3997}#) #f) (syntax->datum #{rest\ 3991}#) (if (pair? #{kw\ 3992}#) (cdr #{kw\ 3992}#) #{kw\ 3992}#) #{body\ 3993}# (cons #{v\ 4030}# #{vars\ 3994}#) #{r*\ 4034}# #{w*\ 4036}# (if (pair? #{kw\ 3992}#) (car #{kw\ 3992}#) #f) '() #{inits\ 3998}#))))) (#{expand-kw\ 3901}# #{req\ 3989}# (if (pair? #{out\ 3997}#) (reverse #{out\ 3997}#) #f) #f (if (pair? #{kw\ 3992}#) (cdr #{kw\ 3992}#) #{kw\ 3992}#) #{body\ 3993}# #{vars\ 3994}# #{r*\ 3995}# #{w*\ 3996}# (if (pair? #{kw\ 3992}#) (car #{kw\ 3992}#) #f) '() #{inits\ 3998}#))))) (#{expand-req\ 3897}# (lambda (#{req\ 4038}# #{opt\ 4039}# #{rest\ 4040}# #{kw\ 4041}# #{body\ 4042}#) (let ((#{vars\ 4050}# (map #{gen-var\ 3614}# #{req\ 4038}#)) (#{labels\ 4051}# (#{gen-labels\ 3519}# #{req\ 4038}#))) (let ((#{r*\ 4054}# (#{extend-var-env\ 3491}# #{labels\ 4051}# #{vars\ 4050}# #{r\ 3883}#)) (#{w*\ 4055}# (#{make-binding-wrap\ 3548}# #{req\ 4038}# #{labels\ 4051}# #{w\ 3884}#))) (#{expand-opt\ 3899}# (map syntax->datum #{req\ 4038}#) #{opt\ 4039}# #{rest\ 4040}# #{kw\ 4041}# #{body\ 4042}# (reverse #{vars\ 4050}#) #{r*\ 4054}# #{w*\ 4055}# '() '())))))) ((lambda (#{tmp\ 4056}#) ((lambda (#{tmp\ 4057}#) (if #{tmp\ 4057}# (apply (lambda () (values #f #f)) #{tmp\ 4057}#) ((lambda (#{tmp\ 4058}#) (if #{tmp\ 4058}# (apply (lambda (#{args\ 4065}# #{e1\ 4066}# #{e2\ 4067}# #{args*\ 4068}# #{e1*\ 4069}# #{e2*\ 4070}#) (call-with-values (lambda () (#{get-formals\ 3887}# #{args\ 4065}#)) (lambda (#{req\ 4071}# #{opt\ 4072}# #{rest\ 4073}# #{kw\ 4074}#) (call-with-values (lambda () (#{expand-req\ 3897}# #{req\ 4071}# #{opt\ 4072}# #{rest\ 4073}# #{kw\ 4074}# (cons #{e1\ 4066}# #{e2\ 4067}#))) (lambda (#{docstring\ 4080}# #{req\ 4081}# #{opt\ 4082}# #{rest\ 4083}# #{kw\ 4084}# #{inits\ 4085}# #{vars\ 4086}# #{body\ 4087}#) (call-with-values (lambda () (#{chi-lambda-case\ 3610}# #{e\ 3882}# #{r\ 3883}# #{w\ 3884}# #{s\ 3885}# #{mod\ 3886}# #{get-formals\ 3887}# (map (lambda (#{tmp\ 4098}# #{tmp\ 4097}# #{tmp\ 4096}#) (cons #{tmp\ 4096}# (cons #{tmp\ 4097}# #{tmp\ 4098}#))) #{e2*\ 4070}# #{e1*\ 4069}# #{args*\ 4068}#))) (lambda (#{docstring*\ 4100}# #{else*\ 4101}#) (values (let ((#{t\ 4106}# #{docstring\ 4080}#)) (if #{t\ 4106}# #{t\ 4106}# #{docstring*\ 4100}#)) (#{build-lambda-case\ 3447}# #{s\ 3885}# #{req\ 4081}# #{opt\ 4082}# #{rest\ 4083}# #{kw\ 4084}# #{inits\ 4085}# #{vars\ 4086}# #{body\ 4087}# #{else*\ 4101}#))))))))) #{tmp\ 4058}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4056}#))) ($sc-dispatch #{tmp\ 4056}# '((any any . each-any) . #(each (any any . each-any))))))) ($sc-dispatch #{tmp\ 4056}# (quote ())))) #{clauses\ 3888}#)))) (#{lambda*-formals\ 3608}# (lambda (#{orig-args\ 4108}#) (letrec ((#{check\ 4119}# (lambda (#{req\ 4120}# #{opt\ 4121}# #{rest\ 4122}# #{kw\ 4123}#) (if (#{distinct-bound-ids?\ 3566}# (append #{req\ 4120}# (map car #{opt\ 4121}#) (if #{rest\ 4122}# (list #{rest\ 4122}#) '()) (if (pair? #{kw\ 4123}#) (map cadr (cdr #{kw\ 4123}#)) '()))) (values #{req\ 4120}# #{opt\ 4121}# #{rest\ 4122}# #{kw\ 4123}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 4108}#)))) (#{rest\ 4117}# (lambda (#{args\ 4131}# #{req\ 4132}# #{opt\ 4133}# #{kw\ 4134}#) ((lambda (#{tmp\ 4139}#) ((lambda (#{tmp\ 4140}#) (if (if #{tmp\ 4140}# (apply (lambda (#{r\ 4142}#) (#{id?\ 3501}# #{r\ 4142}#)) #{tmp\ 4140}#) #f) (apply (lambda (#{r\ 4144}#) (#{check\ 4119}# #{req\ 4132}# #{opt\ 4133}# #{r\ 4144}# #{kw\ 4134}#)) #{tmp\ 4140}#) ((lambda (#{else\ 4146}#) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 4108}# #{args\ 4131}#)) #{tmp\ 4139}#))) (list #{tmp\ 4139}#))) #{args\ 4131}#))) (#{key\ 4115}# (lambda (#{args\ 4147}# #{req\ 4148}# #{opt\ 4149}# #{rkey\ 4150}#) ((lambda (#{tmp\ 4155}#) ((lambda (#{tmp\ 4156}#) (if #{tmp\ 4156}# (apply (lambda () (#{check\ 4119}# #{req\ 4148}# #{opt\ 4149}# #f (cons #f (reverse #{rkey\ 4150}#)))) #{tmp\ 4156}#) ((lambda (#{tmp\ 4157}#) (if (if #{tmp\ 4157}# (apply (lambda (#{a\ 4160}# #{b\ 4161}#) (#{id?\ 3501}# #{a\ 4160}#)) #{tmp\ 4157}#) #f) (apply (lambda (#{a\ 4164}# #{b\ 4165}#) ((lambda (#{tmp\ 4167}#) ((lambda (#{k\ 4169}#) (#{key\ 4115}# #{b\ 4165}# #{req\ 4148}# #{opt\ 4149}# (cons (cons #{k\ 4169}# (cons #{a\ 4164}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i4168")) #(ribcage #(a b) #((top) (top)) #("i4162" "i4163")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i4151" "i4152" "i4153" "i4154")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i4118" "i4116" "i4114" "i4112" "i4110")) #(ribcage #(orig-args) #((top)) #("i4109")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile))))) #{rkey\ 4150}#))) #{tmp\ 4167}#)) (symbol->keyword (syntax->datum #{a\ 4164}#)))) #{tmp\ 4157}#) ((lambda (#{tmp\ 4170}#) (if (if #{tmp\ 4170}# (apply (lambda (#{a\ 4174}# #{init\ 4175}# #{b\ 4176}#) (#{id?\ 3501}# #{a\ 4174}#)) #{tmp\ 4170}#) #f) (apply (lambda (#{a\ 4180}# #{init\ 4181}# #{b\ 4182}#) ((lambda (#{tmp\ 4184}#) ((lambda (#{k\ 4186}#) (#{key\ 4115}# #{b\ 4182}# #{req\ 4148}# #{opt\ 4149}# (cons (list #{k\ 4186}# #{a\ 4180}# #{init\ 4181}#) #{rkey\ 4150}#))) #{tmp\ 4184}#)) (symbol->keyword (syntax->datum #{a\ 4180}#)))) #{tmp\ 4170}#) ((lambda (#{tmp\ 4187}#) (if (if #{tmp\ 4187}# (apply (lambda (#{a\ 4192}# #{init\ 4193}# #{k\ 4194}# #{b\ 4195}#) (if (#{id?\ 3501}# #{a\ 4192}#) (keyword? (syntax->datum #{k\ 4194}#)) #f)) #{tmp\ 4187}#) #f) (apply (lambda (#{a\ 4202}# #{init\ 4203}# #{k\ 4204}# #{b\ 4205}#) (#{key\ 4115}# #{b\ 4205}# #{req\ 4148}# #{opt\ 4149}# (cons (list #{k\ 4204}# #{a\ 4202}# #{init\ 4203}#) #{rkey\ 4150}#))) #{tmp\ 4187}#) ((lambda (#{tmp\ 4206}#) (if (if #{tmp\ 4206}# (apply (lambda (#{aok\ 4208}#) (eq? (syntax->datum #{aok\ 4208}#) #:allow-other-keys)) #{tmp\ 4206}#) #f) (apply (lambda (#{aok\ 4210}#) (#{check\ 4119}# #{req\ 4148}# #{opt\ 4149}# #f (cons #t (reverse #{rkey\ 4150}#)))) #{tmp\ 4206}#) ((lambda (#{tmp\ 4211}#) (if (if #{tmp\ 4211}# (apply (lambda (#{aok\ 4215}# #{a\ 4216}# #{b\ 4217}#) (if (eq? (syntax->datum #{aok\ 4215}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 4216}#) #:rest) #f)) #{tmp\ 4211}#) #f) (apply (lambda (#{aok\ 4223}# #{a\ 4224}# #{b\ 4225}#) (#{rest\ 4117}# #{b\ 4225}# #{req\ 4148}# #{opt\ 4149}# (cons #t (reverse #{rkey\ 4150}#)))) #{tmp\ 4211}#) ((lambda (#{tmp\ 4226}#) (if (if #{tmp\ 4226}# (apply (lambda (#{aok\ 4229}# #{r\ 4230}#) (if (eq? (syntax->datum #{aok\ 4229}#) #:allow-other-keys) (#{id?\ 3501}# #{r\ 4230}#) #f)) #{tmp\ 4226}#) #f) (apply (lambda (#{aok\ 4235}# #{r\ 4236}#) (#{rest\ 4117}# #{r\ 4236}# #{req\ 4148}# #{opt\ 4149}# (cons #t (reverse #{rkey\ 4150}#)))) #{tmp\ 4226}#) ((lambda (#{tmp\ 4237}#) (if (if #{tmp\ 4237}# (apply (lambda (#{a\ 4240}# #{b\ 4241}#) (eq? (syntax->datum #{a\ 4240}#) #:rest)) #{tmp\ 4237}#) #f) (apply (lambda (#{a\ 4244}# #{b\ 4245}#) (#{rest\ 4117}# #{b\ 4245}# #{req\ 4148}# #{opt\ 4149}# (cons #f (reverse #{rkey\ 4150}#)))) #{tmp\ 4237}#) ((lambda (#{tmp\ 4246}#) (if (if #{tmp\ 4246}# (apply (lambda (#{r\ 4248}#) (#{id?\ 3501}# #{r\ 4248}#)) #{tmp\ 4246}#) #f) (apply (lambda (#{r\ 4250}#) (#{rest\ 4117}# #{r\ 4250}# #{req\ 4148}# #{opt\ 4149}# (cons #f (reverse #{rkey\ 4150}#)))) #{tmp\ 4246}#) ((lambda (#{else\ 4252}#) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 4108}# #{args\ 4147}#)) #{tmp\ 4155}#))) (list #{tmp\ 4155}#)))) ($sc-dispatch #{tmp\ 4155}# '(any any))))) ($sc-dispatch #{tmp\ 4155}# '(any . any))))) ($sc-dispatch #{tmp\ 4155}# '(any any any))))) ($sc-dispatch #{tmp\ 4155}# '(any))))) ($sc-dispatch #{tmp\ 4155}# '((any any any) . any))))) ($sc-dispatch #{tmp\ 4155}# '((any any) . any))))) ($sc-dispatch #{tmp\ 4155}# '(any . any))))) ($sc-dispatch #{tmp\ 4155}# (quote ())))) #{args\ 4147}#))) (#{opt\ 4113}# (lambda (#{args\ 4253}# #{req\ 4254}# #{ropt\ 4255}#) ((lambda (#{tmp\ 4259}#) ((lambda (#{tmp\ 4260}#) (if #{tmp\ 4260}# (apply (lambda () (#{check\ 4119}# #{req\ 4254}# (reverse #{ropt\ 4255}#) #f '())) #{tmp\ 4260}#) ((lambda (#{tmp\ 4261}#) (if (if #{tmp\ 4261}# (apply (lambda (#{a\ 4264}# #{b\ 4265}#) (#{id?\ 3501}# #{a\ 4264}#)) #{tmp\ 4261}#) #f) (apply (lambda (#{a\ 4268}# #{b\ 4269}#) (#{opt\ 4113}# #{b\ 4269}# #{req\ 4254}# (cons (cons #{a\ 4268}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i4266" "i4267")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i4256" "i4257" "i4258")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i4118" "i4116" "i4114" "i4112" "i4110")) #(ribcage #(orig-args) #((top)) #("i4109")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)))) #{ropt\ 4255}#))) #{tmp\ 4261}#) ((lambda (#{tmp\ 4270}#) (if (if #{tmp\ 4270}# (apply (lambda (#{a\ 4274}# #{init\ 4275}# #{b\ 4276}#) (#{id?\ 3501}# #{a\ 4274}#)) #{tmp\ 4270}#) #f) (apply (lambda (#{a\ 4280}# #{init\ 4281}# #{b\ 4282}#) (#{opt\ 4113}# #{b\ 4282}# #{req\ 4254}# (cons (list #{a\ 4280}# #{init\ 4281}#) #{ropt\ 4255}#))) #{tmp\ 4270}#) ((lambda (#{tmp\ 4283}#) (if (if #{tmp\ 4283}# (apply (lambda (#{a\ 4286}# #{b\ 4287}#) (eq? (syntax->datum #{a\ 4286}#) #:key)) #{tmp\ 4283}#) #f) (apply (lambda (#{a\ 4290}# #{b\ 4291}#) (#{key\ 4115}# #{b\ 4291}# #{req\ 4254}# (reverse #{ropt\ 4255}#) '())) #{tmp\ 4283}#) ((lambda (#{tmp\ 4292}#) (if (if #{tmp\ 4292}# (apply (lambda (#{a\ 4295}# #{b\ 4296}#) (eq? (syntax->datum #{a\ 4295}#) #:rest)) #{tmp\ 4292}#) #f) (apply (lambda (#{a\ 4299}# #{b\ 4300}#) (#{rest\ 4117}# #{b\ 4300}# #{req\ 4254}# (reverse #{ropt\ 4255}#) '())) #{tmp\ 4292}#) ((lambda (#{tmp\ 4301}#) (if (if #{tmp\ 4301}# (apply (lambda (#{r\ 4303}#) (#{id?\ 3501}# #{r\ 4303}#)) #{tmp\ 4301}#) #f) (apply (lambda (#{r\ 4305}#) (#{rest\ 4117}# #{r\ 4305}# #{req\ 4254}# (reverse #{ropt\ 4255}#) '())) #{tmp\ 4301}#) ((lambda (#{else\ 4307}#) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 4108}# #{args\ 4253}#)) #{tmp\ 4259}#))) (list #{tmp\ 4259}#)))) ($sc-dispatch #{tmp\ 4259}# '(any any))))) ($sc-dispatch #{tmp\ 4259}# '(any . any))))) ($sc-dispatch #{tmp\ 4259}# '((any any) . any))))) ($sc-dispatch #{tmp\ 4259}# '(any . any))))) ($sc-dispatch #{tmp\ 4259}# (quote ())))) #{args\ 4253}#))) (#{req\ 4111}# (lambda (#{args\ 4308}# #{rreq\ 4309}#) ((lambda (#{tmp\ 4312}#) ((lambda (#{tmp\ 4313}#) (if #{tmp\ 4313}# (apply (lambda () (#{check\ 4119}# (reverse #{rreq\ 4309}#) '() #f '())) #{tmp\ 4313}#) ((lambda (#{tmp\ 4314}#) (if (if #{tmp\ 4314}# (apply (lambda (#{a\ 4317}# #{b\ 4318}#) (#{id?\ 3501}# #{a\ 4317}#)) #{tmp\ 4314}#) #f) (apply (lambda (#{a\ 4321}# #{b\ 4322}#) (#{req\ 4111}# #{b\ 4322}# (cons #{a\ 4321}# #{rreq\ 4309}#))) #{tmp\ 4314}#) ((lambda (#{tmp\ 4323}#) (if (if #{tmp\ 4323}# (apply (lambda (#{a\ 4326}# #{b\ 4327}#) (eq? (syntax->datum #{a\ 4326}#) #:optional)) #{tmp\ 4323}#) #f) (apply (lambda (#{a\ 4330}# #{b\ 4331}#) (#{opt\ 4113}# #{b\ 4331}# (reverse #{rreq\ 4309}#) '())) #{tmp\ 4323}#) ((lambda (#{tmp\ 4332}#) (if (if #{tmp\ 4332}# (apply (lambda (#{a\ 4335}# #{b\ 4336}#) (eq? (syntax->datum #{a\ 4335}#) #:key)) #{tmp\ 4332}#) #f) (apply (lambda (#{a\ 4339}# #{b\ 4340}#) (#{key\ 4115}# #{b\ 4340}# (reverse #{rreq\ 4309}#) '() '())) #{tmp\ 4332}#) ((lambda (#{tmp\ 4341}#) (if (if #{tmp\ 4341}# (apply (lambda (#{a\ 4344}# #{b\ 4345}#) (eq? (syntax->datum #{a\ 4344}#) #:rest)) #{tmp\ 4341}#) #f) (apply (lambda (#{a\ 4348}# #{b\ 4349}#) (#{rest\ 4117}# #{b\ 4349}# (reverse #{rreq\ 4309}#) '() '())) #{tmp\ 4341}#) ((lambda (#{tmp\ 4350}#) (if (if #{tmp\ 4350}# (apply (lambda (#{r\ 4352}#) (#{id?\ 3501}# #{r\ 4352}#)) #{tmp\ 4350}#) #f) (apply (lambda (#{r\ 4354}#) (#{rest\ 4117}# #{r\ 4354}# (reverse #{rreq\ 4309}#) '() '())) #{tmp\ 4350}#) ((lambda (#{else\ 4356}#) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 4108}# #{args\ 4308}#)) #{tmp\ 4312}#))) (list #{tmp\ 4312}#)))) ($sc-dispatch #{tmp\ 4312}# '(any any))))) ($sc-dispatch #{tmp\ 4312}# '(any . any))))) ($sc-dispatch #{tmp\ 4312}# '(any . any))))) ($sc-dispatch #{tmp\ 4312}# '(any . any))))) ($sc-dispatch #{tmp\ 4312}# (quote ())))) #{args\ 4308}#)))) (#{req\ 4111}# #{orig-args\ 4108}# (quote ()))))) (#{chi-simple-lambda\ 3606}# (lambda (#{e\ 4357}# #{r\ 4358}# #{w\ 4359}# #{s\ 4360}# #{mod\ 4361}# #{req\ 4362}# #{rest\ 4363}# #{docstring\ 4364}# #{body\ 4365}#) (let ((#{ids\ 4377}# (if #{rest\ 4363}# (append #{req\ 4362}# (list #{rest\ 4363}#)) #{req\ 4362}#))) (let ((#{vars\ 4379}# (map #{gen-var\ 3614}# #{ids\ 4377}#))) (let ((#{labels\ 4381}# (#{gen-labels\ 3519}# #{ids\ 4377}#))) (#{build-simple-lambda\ 3443}# #{s\ 4360}# (map syntax->datum #{req\ 4362}#) (if #{rest\ 4363}# (syntax->datum #{rest\ 4363}#) #f) #{vars\ 4379}# #{docstring\ 4364}# (#{chi-body\ 3594}# #{body\ 4365}# (#{source-wrap\ 3572}# #{e\ 4357}# #{w\ 4359}# #{s\ 4360}# #{mod\ 4361}#) (#{extend-var-env\ 3491}# #{labels\ 4381}# #{vars\ 4379}# #{r\ 4358}#) (#{make-binding-wrap\ 3548}# #{ids\ 4377}# #{labels\ 4381}# #{w\ 4359}#) #{mod\ 4361}#))))))) (#{lambda-formals\ 3604}# (lambda (#{orig-args\ 4384}#) (letrec ((#{check\ 4389}# (lambda (#{req\ 4390}# #{rest\ 4391}#) (if (#{distinct-bound-ids?\ 3566}# (if #{rest\ 4391}# (cons #{rest\ 4391}# #{req\ 4390}#) #{req\ 4390}#)) (values #{req\ 4390}# #f #{rest\ 4391}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 4384}#)))) (#{req\ 4387}# (lambda (#{args\ 4397}# #{rreq\ 4398}#) ((lambda (#{tmp\ 4401}#) ((lambda (#{tmp\ 4402}#) (if #{tmp\ 4402}# (apply (lambda () (#{check\ 4389}# (reverse #{rreq\ 4398}#) #f)) #{tmp\ 4402}#) ((lambda (#{tmp\ 4403}#) (if (if #{tmp\ 4403}# (apply (lambda (#{a\ 4406}# #{b\ 4407}#) (#{id?\ 3501}# #{a\ 4406}#)) #{tmp\ 4403}#) #f) (apply (lambda (#{a\ 4410}# #{b\ 4411}#) (#{req\ 4387}# #{b\ 4411}# (cons #{a\ 4410}# #{rreq\ 4398}#))) #{tmp\ 4403}#) ((lambda (#{tmp\ 4412}#) (if (if #{tmp\ 4412}# (apply (lambda (#{r\ 4414}#) (#{id?\ 3501}# #{r\ 4414}#)) #{tmp\ 4412}#) #f) (apply (lambda (#{r\ 4416}#) (#{check\ 4389}# (reverse #{rreq\ 4398}#) #{r\ 4416}#)) #{tmp\ 4412}#) ((lambda (#{else\ 4418}#) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 4384}# #{args\ 4397}#)) #{tmp\ 4401}#))) (list #{tmp\ 4401}#)))) ($sc-dispatch #{tmp\ 4401}# '(any . any))))) ($sc-dispatch #{tmp\ 4401}# (quote ())))) #{args\ 4397}#)))) (#{req\ 4387}# #{orig-args\ 4384}# (quote ()))))) (#{ellipsis?\ 3602}# (lambda (#{x\ 4419}#) (if (#{nonsymbol-id?\ 3499}# #{x\ 4419}#) (#{free-id=?\ 3560}# #{x\ 4419}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4420")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile))) #f))) (#{chi-void\ 3600}# (lambda () (#{build-void\ 3421}# #f))) (#{eval-local-transformer\ 3598}# (lambda (#{expanded\ 4424}# #{mod\ 4425}#) (let ((#{p\ 4429}# (#{local-eval-hook\ 3412}# #{expanded\ 4424}# #{mod\ 4425}#))) (if (procedure? #{p\ 4429}#) (cons #{p\ 4429}# (module-name (current-module))) (syntax-violation #f "nonprocedure transformer" #{p\ 4429}#))))) (#{chi-local-syntax\ 3596}# (lambda (#{rec?\ 4430}# #{e\ 4431}# #{r\ 4432}# #{w\ 4433}# #{s\ 4434}# #{mod\ 4435}# #{k\ 4436}#) ((lambda (#{tmp\ 4444}#) ((lambda (#{tmp\ 4445}#) (if #{tmp\ 4445}# (apply (lambda (#{_\ 4451}# #{id\ 4452}# #{val\ 4453}# #{e1\ 4454}# #{e2\ 4455}#) (let ((#{ids\ 4457}# #{id\ 4452}#)) (if (not (#{valid-bound-ids?\ 3564}# #{ids\ 4457}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 4431}#) (let ((#{labels\ 4460}# (#{gen-labels\ 3519}# #{ids\ 4457}#))) (let ((#{new-w\ 4462}# (#{make-binding-wrap\ 3548}# #{ids\ 4457}# #{labels\ 4460}# #{w\ 4433}#))) (#{k\ 4436}# (cons #{e1\ 4454}# #{e2\ 4455}#) (#{extend-env\ 3489}# #{labels\ 4460}# (let ((#{w\ 4466}# (if #{rec?\ 4430}# #{new-w\ 4462}# #{w\ 4433}#)) (#{trans-r\ 4467}# (#{macros-only-env\ 3493}# #{r\ 4432}#))) (map (lambda (#{x\ 4468}#) (cons 'macro (#{eval-local-transformer\ 3598}# (#{chi\ 3586}# #{x\ 4468}# #{trans-r\ 4467}# #{w\ 4466}# #{mod\ 4435}#) #{mod\ 4435}#))) #{val\ 4453}#)) #{r\ 4432}#) #{new-w\ 4462}# #{s\ 4434}# #{mod\ 4435}#)))))) #{tmp\ 4445}#) ((lambda (#{_\ 4473}#) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 3572}# #{e\ 4431}# #{w\ 4433}# #{s\ 4434}# #{mod\ 4435}#))) #{tmp\ 4444}#))) ($sc-dispatch #{tmp\ 4444}# '(any #(each (any any)) any . each-any)))) #{e\ 4431}#))) (#{chi-body\ 3594}# (lambda (#{body\ 4474}# #{outer-form\ 4475}# #{r\ 4476}# #{w\ 4477}# #{mod\ 4478}#) (let ((#{r\ 4486}# (cons '("placeholder" placeholder) #{r\ 4476}#))) (let ((#{ribcage\ 4488}# (#{make-ribcage\ 3522}# '() '() '()))) (let ((#{w\ 4491}# (#{make-wrap\ 3506}# (#{wrap-marks\ 3508}# #{w\ 4477}#) (cons #{ribcage\ 4488}# (#{wrap-subst\ 3510}# #{w\ 4477}#))))) (letrec ((#{parse\ 4500}# (lambda (#{body\ 4501}# #{ids\ 4502}# #{labels\ 4503}# #{var-ids\ 4504}# #{vars\ 4505}# #{vals\ 4506}# #{bindings\ 4507}#) (if (null? #{body\ 4501}#) (syntax-violation #f "no expressions in body" #{outer-form\ 4475}#) (let ((#{e\ 4512}# (cdar #{body\ 4501}#)) (#{er\ 4513}# (caar #{body\ 4501}#))) (call-with-values (lambda () (#{syntax-type\ 3582}# #{e\ 4512}# #{er\ 4513}# '(()) (#{source-annotation\ 3480}# #{er\ 4513}#) #{ribcage\ 4488}# #{mod\ 4478}# #f)) (lambda (#{type\ 4515}# #{value\ 4516}# #{e\ 4517}# #{w\ 4518}# #{s\ 4519}# #{mod\ 4520}#) (if (memv #{type\ 4515}# '(define-form)) (let ((#{id\ 4530}# (#{wrap\ 3570}# #{value\ 4516}# #{w\ 4518}# #{mod\ 4520}#)) (#{label\ 4531}# (#{gen-label\ 3517}#))) (let ((#{var\ 4533}# (#{gen-var\ 3614}# #{id\ 4530}#))) (begin (#{extend-ribcage!\ 3546}# #{ribcage\ 4488}# #{id\ 4530}# #{label\ 4531}#) (#{parse\ 4500}# (cdr #{body\ 4501}#) (cons #{id\ 4530}# #{ids\ 4502}#) (cons #{label\ 4531}# #{labels\ 4503}#) (cons #{id\ 4530}# #{var-ids\ 4504}#) (cons #{var\ 4533}# #{vars\ 4505}#) (cons (cons #{er\ 4513}# (#{wrap\ 3570}# #{e\ 4517}# #{w\ 4518}# #{mod\ 4520}#)) #{vals\ 4506}#) (cons (cons 'lexical #{var\ 4533}#) #{bindings\ 4507}#))))) (if (memv #{type\ 4515}# '(define-syntax-form)) (let ((#{id\ 4538}# (#{wrap\ 3570}# #{value\ 4516}# #{w\ 4518}# #{mod\ 4520}#)) (#{label\ 4539}# (#{gen-label\ 3517}#))) (begin (#{extend-ribcage!\ 3546}# #{ribcage\ 4488}# #{id\ 4538}# #{label\ 4539}#) (#{parse\ 4500}# (cdr #{body\ 4501}#) (cons #{id\ 4538}# #{ids\ 4502}#) (cons #{label\ 4539}# #{labels\ 4503}#) #{var-ids\ 4504}# #{vars\ 4505}# #{vals\ 4506}# (cons (cons 'macro (cons #{er\ 4513}# (#{wrap\ 3570}# #{e\ 4517}# #{w\ 4518}# #{mod\ 4520}#))) #{bindings\ 4507}#)))) (if (memv #{type\ 4515}# '(begin-form)) ((lambda (#{tmp\ 4542}#) ((lambda (#{tmp\ 4543}#) (if #{tmp\ 4543}# (apply (lambda (#{_\ 4546}# #{e1\ 4547}#) (#{parse\ 4500}# (letrec ((#{f\ 4550}# (lambda (#{forms\ 4551}#) (if (null? #{forms\ 4551}#) (cdr #{body\ 4501}#) (cons (cons #{er\ 4513}# (#{wrap\ 3570}# (car #{forms\ 4551}#) #{w\ 4518}# #{mod\ 4520}#)) (#{f\ 4550}# (cdr #{forms\ 4551}#))))))) (#{f\ 4550}# #{e1\ 4547}#)) #{ids\ 4502}# #{labels\ 4503}# #{var-ids\ 4504}# #{vars\ 4505}# #{vals\ 4506}# #{bindings\ 4507}#)) #{tmp\ 4543}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4542}#))) ($sc-dispatch #{tmp\ 4542}# '(any . each-any)))) #{e\ 4517}#) (if (memv #{type\ 4515}# '(local-syntax-form)) (#{chi-local-syntax\ 3596}# #{value\ 4516}# #{e\ 4517}# #{er\ 4513}# #{w\ 4518}# #{s\ 4519}# #{mod\ 4520}# (lambda (#{forms\ 4554}# #{er\ 4555}# #{w\ 4556}# #{s\ 4557}# #{mod\ 4558}#) (#{parse\ 4500}# (letrec ((#{f\ 4566}# (lambda (#{forms\ 4567}#) (if (null? #{forms\ 4567}#) (cdr #{body\ 4501}#) (cons (cons #{er\ 4555}# (#{wrap\ 3570}# (car #{forms\ 4567}#) #{w\ 4556}# #{mod\ 4558}#)) (#{f\ 4566}# (cdr #{forms\ 4567}#))))))) (#{f\ 4566}# #{forms\ 4554}#)) #{ids\ 4502}# #{labels\ 4503}# #{var-ids\ 4504}# #{vars\ 4505}# #{vals\ 4506}# #{bindings\ 4507}#))) (if (null? #{ids\ 4502}#) (#{build-sequence\ 3453}# #f (map (lambda (#{x\ 4570}#) (#{chi\ 3586}# (cdr #{x\ 4570}#) (car #{x\ 4570}#) '(()) #{mod\ 4520}#)) (cons (cons #{er\ 4513}# (#{source-wrap\ 3572}# #{e\ 4517}# #{w\ 4518}# #{s\ 4519}# #{mod\ 4520}#)) (cdr #{body\ 4501}#)))) (begin (if (not (#{valid-bound-ids?\ 3564}# #{ids\ 4502}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 4475}#)) (letrec ((#{loop\ 4577}# (lambda (#{bs\ 4578}# #{er-cache\ 4579}# #{r-cache\ 4580}#) (if (not (null? #{bs\ 4578}#)) (let ((#{b\ 4583}# (car #{bs\ 4578}#))) (if (eq? (car #{b\ 4583}#) 'macro) (let ((#{er\ 4586}# (cadr #{b\ 4583}#))) (let ((#{r-cache\ 4588}# (if (eq? #{er\ 4586}# #{er-cache\ 4579}#) #{r-cache\ 4580}# (#{macros-only-env\ 3493}# #{er\ 4586}#)))) (begin (set-cdr! #{b\ 4583}# (#{eval-local-transformer\ 3598}# (#{chi\ 3586}# (cddr #{b\ 4583}#) #{r-cache\ 4588}# '(()) #{mod\ 4520}#) #{mod\ 4520}#)) (#{loop\ 4577}# (cdr #{bs\ 4578}#) #{er\ 4586}# #{r-cache\ 4588}#)))) (#{loop\ 4577}# (cdr #{bs\ 4578}#) #{er-cache\ 4579}# #{r-cache\ 4580}#))))))) (#{loop\ 4577}# #{bindings\ 4507}# #f #f)) (set-cdr! #{r\ 4486}# (#{extend-env\ 3489}# #{labels\ 4503}# #{bindings\ 4507}# (cdr #{r\ 4486}#))) (#{build-letrec\ 3459}# #f (map syntax->datum #{var-ids\ 4504}#) #{vars\ 4505}# (map (lambda (#{x\ 4591}#) (#{chi\ 3586}# (cdr #{x\ 4591}#) (car #{x\ 4591}#) '(()) #{mod\ 4520}#)) #{vals\ 4506}#) (#{build-sequence\ 3453}# #f (map (lambda (#{x\ 4595}#) (#{chi\ 3586}# (cdr #{x\ 4595}#) (car #{x\ 4595}#) '(()) #{mod\ 4520}#)) (cons (cons #{er\ 4513}# (#{source-wrap\ 3572}# #{e\ 4517}# #{w\ 4518}# #{s\ 4519}# #{mod\ 4520}#)) (cdr #{body\ 4501}#)))))))))))))))))) (#{parse\ 4500}# (map (lambda (#{x\ 4508}#) (cons #{r\ 4486}# (#{wrap\ 3570}# #{x\ 4508}# #{w\ 4491}# #{mod\ 4478}#))) #{body\ 4474}#) '() '() '() '() '() '()))))))) (#{chi-macro\ 3592}# (lambda (#{p\ 4598}# #{e\ 4599}# #{r\ 4600}# #{w\ 4601}# #{rib\ 4602}# #{mod\ 4603}#) (letrec ((#{rebuild-macro-output\ 4611}# (lambda (#{x\ 4612}# #{m\ 4613}#) (if (pair? #{x\ 4612}#) (cons (#{rebuild-macro-output\ 4611}# (car #{x\ 4612}#) #{m\ 4613}#) (#{rebuild-macro-output\ 4611}# (cdr #{x\ 4612}#) #{m\ 4613}#)) (if (#{syntax-object?\ 3465}# #{x\ 4612}#) (let ((#{w\ 4621}# (#{syntax-object-wrap\ 3469}# #{x\ 4612}#))) (let ((#{ms\ 4624}# (#{wrap-marks\ 3508}# #{w\ 4621}#)) (#{s\ 4625}# (#{wrap-subst\ 3510}# #{w\ 4621}#))) (if (if (pair? #{ms\ 4624}#) (eq? (car #{ms\ 4624}#) #f) #f) (#{make-syntax-object\ 3463}# (#{syntax-object-expression\ 3467}# #{x\ 4612}#) (#{make-wrap\ 3506}# (cdr #{ms\ 4624}#) (if #{rib\ 4602}# (cons #{rib\ 4602}# (cdr #{s\ 4625}#)) (cdr #{s\ 4625}#))) (#{syntax-object-module\ 3471}# #{x\ 4612}#)) (#{make-syntax-object\ 3463}# (#{syntax-object-expression\ 3467}# #{x\ 4612}#) (#{make-wrap\ 3506}# (cons #{m\ 4613}# #{ms\ 4624}#) (if #{rib\ 4602}# (cons #{rib\ 4602}# (cons 'shift #{s\ 4625}#)) (cons (quote shift) #{s\ 4625}#))) (cons 'hygiene (cdr #{p\ 4598}#)))))) (if (vector? #{x\ 4612}#) (let ((#{n\ 4633}# (vector-length #{x\ 4612}#))) (let ((#{v\ 4635}# (make-vector #{n\ 4633}#))) (letrec ((#{loop\ 4638}# (lambda (#{i\ 4639}#) (if (#{fx=\ 3406}# #{i\ 4639}# #{n\ 4633}#) (begin (if #f #f) #{v\ 4635}#) (begin (vector-set! #{v\ 4635}# #{i\ 4639}# (#{rebuild-macro-output\ 4611}# (vector-ref #{x\ 4612}# #{i\ 4639}#) #{m\ 4613}#)) (#{loop\ 4638}# (#{fx+\ 3402}# #{i\ 4639}# 1))))))) (#{loop\ 4638}# 0)))) (if (symbol? #{x\ 4612}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 3572}# #{e\ 4599}# #{w\ 4601}# (#{wrap-subst\ 3510}# #{w\ 4601}#) #{mod\ 4603}#) #{x\ 4612}#) #{x\ 4612}#))))))) (#{rebuild-macro-output\ 4611}# ((car #{p\ 4598}#) (#{wrap\ 3570}# #{e\ 4599}# (#{anti-mark\ 3542}# #{w\ 4601}#) #{mod\ 4603}#)) (gensym "m"))))) (#{chi-application\ 3590}# (lambda (#{x\ 4646}# #{e\ 4647}# #{r\ 4648}# #{w\ 4649}# #{s\ 4650}# #{mod\ 4651}#) ((lambda (#{tmp\ 4658}#) ((lambda (#{tmp\ 4659}#) (if #{tmp\ 4659}# (apply (lambda (#{e0\ 4662}# #{e1\ 4663}#) (#{build-application\ 3423}# #{s\ 4650}# #{x\ 4646}# (map (lambda (#{e\ 4664}#) (#{chi\ 3586}# #{e\ 4664}# #{r\ 4648}# #{w\ 4649}# #{mod\ 4651}#)) #{e1\ 4663}#))) #{tmp\ 4659}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4658}#))) ($sc-dispatch #{tmp\ 4658}# '(any . each-any)))) #{e\ 4647}#))) (#{chi-expr\ 3588}# (lambda (#{type\ 4667}# #{value\ 4668}# #{e\ 4669}# #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#) (if (memv #{type\ 4667}# (quote (lexical))) (#{build-lexical-reference\ 3429}# 'value #{s\ 4672}# #{e\ 4669}# #{value\ 4668}#) (if (memv #{type\ 4667}# (quote (core core-form))) (#{value\ 4668}# #{e\ 4669}# #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#) (if (memv #{type\ 4667}# (quote (module-ref))) (call-with-values (lambda () (#{value\ 4668}# #{e\ 4669}#)) (lambda (#{id\ 4684}# #{mod\ 4685}#) (#{build-global-reference\ 3435}# #{s\ 4672}# #{id\ 4684}# #{mod\ 4685}#))) (if (memv #{type\ 4667}# (quote (lexical-call))) (#{chi-application\ 3590}# (#{build-lexical-reference\ 3429}# 'fun (#{source-annotation\ 3480}# (car #{e\ 4669}#)) (car #{e\ 4669}#) #{value\ 4668}#) #{e\ 4669}# #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#) (if (memv #{type\ 4667}# (quote (global-call))) (#{chi-application\ 3590}# (#{build-global-reference\ 3435}# (#{source-annotation\ 3480}# (car #{e\ 4669}#)) (if (#{syntax-object?\ 3465}# #{value\ 4668}#) (#{syntax-object-expression\ 3467}# #{value\ 4668}#) #{value\ 4668}#) (if (#{syntax-object?\ 3465}# #{value\ 4668}#) (#{syntax-object-module\ 3471}# #{value\ 4668}#) #{mod\ 4673}#)) #{e\ 4669}# #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#) (if (memv #{type\ 4667}# (quote (constant))) (#{build-data\ 3451}# #{s\ 4672}# (#{strip\ 3612}# (#{source-wrap\ 3572}# #{e\ 4669}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#) '(()))) (if (memv #{type\ 4667}# (quote (global))) (#{build-global-reference\ 3435}# #{s\ 4672}# #{value\ 4668}# #{mod\ 4673}#) (if (memv #{type\ 4667}# (quote (call))) (#{chi-application\ 3590}# (#{chi\ 3586}# (car #{e\ 4669}#) #{r\ 4670}# #{w\ 4671}# #{mod\ 4673}#) #{e\ 4669}# #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#) (if (memv #{type\ 4667}# (quote (begin-form))) ((lambda (#{tmp\ 4695}#) ((lambda (#{tmp\ 4696}#) (if #{tmp\ 4696}# (apply (lambda (#{_\ 4700}# #{e1\ 4701}# #{e2\ 4702}#) (#{chi-sequence\ 3574}# (cons #{e1\ 4701}# #{e2\ 4702}#) #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#)) #{tmp\ 4696}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4695}#))) ($sc-dispatch #{tmp\ 4695}# '(any any . each-any)))) #{e\ 4669}#) (if (memv #{type\ 4667}# '(local-syntax-form)) (#{chi-local-syntax\ 3596}# #{value\ 4668}# #{e\ 4669}# #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}# #{chi-sequence\ 3574}#) (if (memv #{type\ 4667}# '(eval-when-form)) ((lambda (#{tmp\ 4706}#) ((lambda (#{tmp\ 4707}#) (if #{tmp\ 4707}# (apply (lambda (#{_\ 4712}# #{x\ 4713}# #{e1\ 4714}# #{e2\ 4715}#) (let ((#{when-list\ 4717}# (#{chi-when-list\ 3580}# #{e\ 4669}# #{x\ 4713}# #{w\ 4671}#))) (if (memq 'eval #{when-list\ 4717}#) (#{chi-sequence\ 3574}# (cons #{e1\ 4714}# #{e2\ 4715}#) #{r\ 4670}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#) (#{chi-void\ 3600}#)))) #{tmp\ 4707}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4706}#))) ($sc-dispatch #{tmp\ 4706}# '(any each-any any . each-any)))) #{e\ 4669}#) (if (memv #{type\ 4667}# '(define-form define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 4669}# (#{wrap\ 3570}# #{value\ 4668}# #{w\ 4671}# #{mod\ 4673}#)) (if (memv #{type\ 4667}# '(syntax)) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 3572}# #{e\ 4669}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#)) (if (memv #{type\ 4667}# '(displaced-lexical)) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 3572}# #{e\ 4669}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 3572}# #{e\ 4669}# #{w\ 4671}# #{s\ 4672}# #{mod\ 4673}#)))))))))))))))))) (#{chi\ 3586}# (lambda (#{e\ 4724}# #{r\ 4725}# #{w\ 4726}# #{mod\ 4727}#) (call-with-values (lambda () (#{syntax-type\ 3582}# #{e\ 4724}# #{r\ 4725}# #{w\ 4726}# (#{source-annotation\ 3480}# #{e\ 4724}#) #f #{mod\ 4727}# #f)) (lambda (#{type\ 4732}# #{value\ 4733}# #{e\ 4734}# #{w\ 4735}# #{s\ 4736}# #{mod\ 4737}#) (#{chi-expr\ 3588}# #{type\ 4732}# #{value\ 4733}# #{e\ 4734}# #{r\ 4725}# #{w\ 4735}# #{s\ 4736}# #{mod\ 4737}#))))) (#{chi-top\ 3584}# (lambda (#{e\ 4744}# #{r\ 4745}# #{w\ 4746}# #{m\ 4747}# #{esew\ 4748}# #{mod\ 4749}#) (call-with-values (lambda () (#{syntax-type\ 3582}# #{e\ 4744}# #{r\ 4745}# #{w\ 4746}# (#{source-annotation\ 3480}# #{e\ 4744}#) #f #{mod\ 4749}# #f)) (lambda (#{type\ 4770}# #{value\ 4771}# #{e\ 4772}# #{w\ 4773}# #{s\ 4774}# #{mod\ 4775}#) (if (memv #{type\ 4770}# (quote (begin-form))) ((lambda (#{tmp\ 4783}#) ((lambda (#{tmp\ 4784}#) (if #{tmp\ 4784}# (apply (lambda (#{_\ 4786}#) (#{chi-void\ 3600}#)) #{tmp\ 4784}#) ((lambda (#{tmp\ 4787}#) (if #{tmp\ 4787}# (apply (lambda (#{_\ 4791}# #{e1\ 4792}# #{e2\ 4793}#) (#{chi-top-sequence\ 3576}# (cons #{e1\ 4792}# #{e2\ 4793}#) #{r\ 4745}# #{w\ 4773}# #{s\ 4774}# #{m\ 4747}# #{esew\ 4748}# #{mod\ 4775}#)) #{tmp\ 4787}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4783}#))) ($sc-dispatch #{tmp\ 4783}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 4783}# (quote (any))))) #{e\ 4772}#) (if (memv #{type\ 4770}# (quote (local-syntax-form))) (#{chi-local-syntax\ 3596}# #{value\ 4771}# #{e\ 4772}# #{r\ 4745}# #{w\ 4773}# #{s\ 4774}# #{mod\ 4775}# (lambda (#{body\ 4796}# #{r\ 4797}# #{w\ 4798}# #{s\ 4799}# #{mod\ 4800}#) (#{chi-top-sequence\ 3576}# #{body\ 4796}# #{r\ 4797}# #{w\ 4798}# #{s\ 4799}# #{m\ 4747}# #{esew\ 4748}# #{mod\ 4800}#))) (if (memv #{type\ 4770}# (quote (eval-when-form))) ((lambda (#{tmp\ 4807}#) ((lambda (#{tmp\ 4808}#) (if #{tmp\ 4808}# (apply (lambda (#{_\ 4813}# #{x\ 4814}# #{e1\ 4815}# #{e2\ 4816}#) (let ((#{when-list\ 4819}# (#{chi-when-list\ 3580}# #{e\ 4772}# #{x\ 4814}# #{w\ 4773}#)) (#{body\ 4820}# (cons #{e1\ 4815}# #{e2\ 4816}#))) (if (eq? #{m\ 4747}# (quote e)) (if (memq 'eval #{when-list\ 4819}#) (#{chi-top-sequence\ 3576}# #{body\ 4820}# #{r\ 4745}# #{w\ 4773}# #{s\ 4774}# 'e '(eval) #{mod\ 4775}#) (#{chi-void\ 3600}#)) (if (memq 'load #{when-list\ 4819}#) (if (let ((#{t\ 4829}# (memq 'compile #{when-list\ 4819}#))) (if #{t\ 4829}# #{t\ 4829}# (if (eq? #{m\ 4747}# 'c&e) (memq 'eval #{when-list\ 4819}#) #f))) (#{chi-top-sequence\ 3576}# #{body\ 4820}# #{r\ 4745}# #{w\ 4773}# #{s\ 4774}# 'c&e '(compile load) #{mod\ 4775}#) (if (memq #{m\ 4747}# '(c c&e)) (#{chi-top-sequence\ 3576}# #{body\ 4820}# #{r\ 4745}# #{w\ 4773}# #{s\ 4774}# 'c '(load) #{mod\ 4775}#) (#{chi-void\ 3600}#))) (if (let ((#{t\ 4837}# (memq 'compile #{when-list\ 4819}#))) (if #{t\ 4837}# #{t\ 4837}# (if (eq? #{m\ 4747}# 'c&e) (memq 'eval #{when-list\ 4819}#) #f))) (begin (#{top-level-eval-hook\ 3410}# (#{chi-top-sequence\ 3576}# #{body\ 4820}# #{r\ 4745}# #{w\ 4773}# #{s\ 4774}# 'e '(eval) #{mod\ 4775}#) #{mod\ 4775}#) (#{chi-void\ 3600}#)) (#{chi-void\ 3600}#)))))) #{tmp\ 4808}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4807}#))) ($sc-dispatch #{tmp\ 4807}# '(any each-any any . each-any)))) #{e\ 4772}#) (if (memv #{type\ 4770}# '(define-syntax-form)) (let ((#{n\ 4845}# (#{id-var-name\ 3558}# #{value\ 4771}# #{w\ 4773}#)) (#{r\ 4846}# (#{macros-only-env\ 3493}# #{r\ 4745}#))) (if (memv #{m\ 4747}# (quote (c))) (if (memq (quote compile) #{esew\ 4748}#) (let ((#{e\ 4849}# (#{chi-install-global\ 3578}# #{n\ 4845}# (#{chi\ 3586}# #{e\ 4772}# #{r\ 4846}# #{w\ 4773}# #{mod\ 4775}#)))) (begin (#{top-level-eval-hook\ 3410}# #{e\ 4849}# #{mod\ 4775}#) (if (memq (quote load) #{esew\ 4748}#) #{e\ 4849}# (#{chi-void\ 3600}#)))) (if (memq (quote load) #{esew\ 4748}#) (#{chi-install-global\ 3578}# #{n\ 4845}# (#{chi\ 3586}# #{e\ 4772}# #{r\ 4846}# #{w\ 4773}# #{mod\ 4775}#)) (#{chi-void\ 3600}#))) (if (memv #{m\ 4747}# (quote (c&e))) (let ((#{e\ 4852}# (#{chi-install-global\ 3578}# #{n\ 4845}# (#{chi\ 3586}# #{e\ 4772}# #{r\ 4846}# #{w\ 4773}# #{mod\ 4775}#)))) (begin (#{top-level-eval-hook\ 3410}# #{e\ 4852}# #{mod\ 4775}#) #{e\ 4852}#)) (begin (if (memq (quote eval) #{esew\ 4748}#) (#{top-level-eval-hook\ 3410}# (#{chi-install-global\ 3578}# #{n\ 4845}# (#{chi\ 3586}# #{e\ 4772}# #{r\ 4846}# #{w\ 4773}# #{mod\ 4775}#)) #{mod\ 4775}#)) (#{chi-void\ 3600}#))))) (if (memv #{type\ 4770}# (quote (define-form))) (let ((#{n\ 4857}# (#{id-var-name\ 3558}# #{value\ 4771}# #{w\ 4773}#))) (let ((#{type\ 4859}# (#{binding-type\ 3484}# (#{lookup\ 3495}# #{n\ 4857}# #{r\ 4745}# #{mod\ 4775}#)))) (if (memv #{type\ 4859}# '(global core macro module-ref)) (begin (if (if (not (module-local-variable (current-module) #{n\ 4857}#)) (current-module) #f) (let ((#{old\ 4864}# (module-variable (current-module) #{n\ 4857}#))) (module-define! (current-module) #{n\ 4857}# (if (variable? #{old\ 4864}#) (variable-ref #{old\ 4864}#) #f)))) (let ((#{x\ 4867}# (#{build-global-definition\ 3441}# #{s\ 4774}# #{n\ 4857}# (#{chi\ 3586}# #{e\ 4772}# #{r\ 4745}# #{w\ 4773}# #{mod\ 4775}#)))) (begin (if (eq? #{m\ 4747}# (quote c&e)) (#{top-level-eval-hook\ 3410}# #{x\ 4867}# #{mod\ 4775}#)) #{x\ 4867}#))) (if (memv #{type\ 4859}# '(displaced-lexical)) (syntax-violation #f "identifier out of context" #{e\ 4772}# (#{wrap\ 3570}# #{value\ 4771}# #{w\ 4773}# #{mod\ 4775}#)) (syntax-violation #f "cannot define keyword at top level" #{e\ 4772}# (#{wrap\ 3570}# #{value\ 4771}# #{w\ 4773}# #{mod\ 4775}#)))))) (let ((#{x\ 4873}# (#{chi-expr\ 3588}# #{type\ 4770}# #{value\ 4771}# #{e\ 4772}# #{r\ 4745}# #{w\ 4773}# #{s\ 4774}# #{mod\ 4775}#))) (begin (if (eq? #{m\ 4747}# (quote c&e)) (#{top-level-eval-hook\ 3410}# #{x\ 4873}# #{mod\ 4775}#)) #{x\ 4873}#))))))))))) (#{syntax-type\ 3582}# (lambda (#{e\ 4874}# #{r\ 4875}# #{w\ 4876}# #{s\ 4877}# #{rib\ 4878}# #{mod\ 4879}# #{for-car?\ 4880}#) (if (symbol? #{e\ 4874}#) (let ((#{n\ 4892}# (#{id-var-name\ 3558}# #{e\ 4874}# #{w\ 4876}#))) (let ((#{b\ 4894}# (#{lookup\ 3495}# #{n\ 4892}# #{r\ 4875}# #{mod\ 4879}#))) (let ((#{type\ 4896}# (#{binding-type\ 3484}# #{b\ 4894}#))) (if (memv #{type\ 4896}# (quote (lexical))) (values #{type\ 4896}# (#{binding-value\ 3486}# #{b\ 4894}#) #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{type\ 4896}# (quote (global))) (values #{type\ 4896}# #{n\ 4892}# #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{type\ 4896}# (quote (macro))) (if #{for-car?\ 4880}# (values #{type\ 4896}# (#{binding-value\ 3486}# #{b\ 4894}#) #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (#{syntax-type\ 3582}# (#{chi-macro\ 3592}# (#{binding-value\ 3486}# #{b\ 4894}#) #{e\ 4874}# #{r\ 4875}# #{w\ 4876}# #{rib\ 4878}# #{mod\ 4879}#) #{r\ 4875}# '(()) #{s\ 4877}# #{rib\ 4878}# #{mod\ 4879}# #f)) (values #{type\ 4896}# (#{binding-value\ 3486}# #{b\ 4894}#) #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#))))))) (if (pair? #{e\ 4874}#) (let ((#{first\ 4905}# (car #{e\ 4874}#))) (call-with-values (lambda () (#{syntax-type\ 3582}# #{first\ 4905}# #{r\ 4875}# #{w\ 4876}# #{s\ 4877}# #{rib\ 4878}# #{mod\ 4879}# #t)) (lambda (#{ftype\ 4906}# #{fval\ 4907}# #{fe\ 4908}# #{fw\ 4909}# #{fs\ 4910}# #{fmod\ 4911}#) (if (memv #{ftype\ 4906}# (quote (lexical))) (values 'lexical-call #{fval\ 4907}# #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{ftype\ 4906}# (quote (global))) (values 'global-call (#{make-syntax-object\ 3463}# #{fval\ 4907}# #{w\ 4876}# #{fmod\ 4911}#) #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{ftype\ 4906}# (quote (macro))) (#{syntax-type\ 3582}# (#{chi-macro\ 3592}# #{fval\ 4907}# #{e\ 4874}# #{r\ 4875}# #{w\ 4876}# #{rib\ 4878}# #{mod\ 4879}#) #{r\ 4875}# '(()) #{s\ 4877}# #{rib\ 4878}# #{mod\ 4879}# #{for-car?\ 4880}#) (if (memv #{ftype\ 4906}# (quote (module-ref))) (call-with-values (lambda () (#{fval\ 4907}# #{e\ 4874}#)) (lambda (#{sym\ 4923}# #{mod\ 4924}#) (#{syntax-type\ 3582}# #{sym\ 4923}# #{r\ 4875}# #{w\ 4876}# #{s\ 4877}# #{rib\ 4878}# #{mod\ 4924}# #{for-car?\ 4880}#))) (if (memv #{ftype\ 4906}# (quote (core))) (values 'core-form #{fval\ 4907}# #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{ftype\ 4906}# '(local-syntax)) (values 'local-syntax-form #{fval\ 4907}# #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{ftype\ 4906}# (quote (begin))) (values 'begin-form #f #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{ftype\ 4906}# '(eval-when)) (values 'eval-when-form #f #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (if (memv #{ftype\ 4906}# '(define)) ((lambda (#{tmp\ 4932}#) ((lambda (#{tmp\ 4933}#) (if (if #{tmp\ 4933}# (apply (lambda (#{_\ 4937}# #{name\ 4938}# #{val\ 4939}#) (#{id?\ 3501}# #{name\ 4938}#)) #{tmp\ 4933}#) #f) (apply (lambda (#{_\ 4943}# #{name\ 4944}# #{val\ 4945}#) (values 'define-form #{name\ 4944}# #{val\ 4945}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#)) #{tmp\ 4933}#) ((lambda (#{tmp\ 4946}#) (if (if #{tmp\ 4946}# (apply (lambda (#{_\ 4952}# #{name\ 4953}# #{args\ 4954}# #{e1\ 4955}# #{e2\ 4956}#) (if (#{id?\ 3501}# #{name\ 4953}#) (#{valid-bound-ids?\ 3564}# (#{lambda-var-list\ 3616}# #{args\ 4954}#)) #f)) #{tmp\ 4946}#) #f) (apply (lambda (#{_\ 4964}# #{name\ 4965}# #{args\ 4966}# #{e1\ 4967}# #{e2\ 4968}#) (values 'define-form (#{wrap\ 3570}# #{name\ 4965}# #{w\ 4876}# #{mod\ 4879}#) (#{decorate-source\ 3419}# (cons '#(syntax-object lambda ((top) #(ribcage #(_ name args e1 e2) #((top) (top) (top) (top) (top)) #("i4959" "i4960" "i4961" "i4962" "i4963")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i4912" "i4913" "i4914" "i4915" "i4916" "i4917")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i4904")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i4881" "i4882" "i4883" "i4884" "i4885" "i4886" "i4887")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)) (#{wrap\ 3570}# (cons #{args\ 4966}# (cons #{e1\ 4967}# #{e2\ 4968}#)) #{w\ 4876}# #{mod\ 4879}#)) #{s\ 4877}#) '(()) #{s\ 4877}# #{mod\ 4879}#)) #{tmp\ 4946}#) ((lambda (#{tmp\ 4971}#) (if (if #{tmp\ 4971}# (apply (lambda (#{_\ 4974}# #{name\ 4975}#) (#{id?\ 3501}# #{name\ 4975}#)) #{tmp\ 4971}#) #f) (apply (lambda (#{_\ 4978}# #{name\ 4979}#) (values 'define-form (#{wrap\ 3570}# #{name\ 4979}# #{w\ 4876}# #{mod\ 4879}#) '(#(syntax-object if ((top) #(ribcage #(_ name) #((top) (top)) #("i4976" "i4977")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i4912" "i4913" "i4914" "i4915" "i4916" "i4917")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i4904")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i4881" "i4882" "i4883" "i4884" "i4885" "i4886" "i4887")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i4976" "i4977")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i4912" "i4913" "i4914" "i4915" "i4916" "i4917")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i4904")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i4881" "i4882" "i4883" "i4884" "i4885" "i4886" "i4887")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i4976" "i4977")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i4912" "i4913" "i4914" "i4915" "i4916" "i4917")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i4904")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i4881" "i4882" "i4883" "i4884" "i4885" "i4886" "i4887")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile))) '(()) #{s\ 4877}# #{mod\ 4879}#)) #{tmp\ 4971}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4932}#))) ($sc-dispatch #{tmp\ 4932}# '(any any))))) ($sc-dispatch #{tmp\ 4932}# '(any (any . any) any . each-any))))) ($sc-dispatch #{tmp\ 4932}# '(any any any)))) #{e\ 4874}#) (if (memv #{ftype\ 4906}# '(define-syntax)) ((lambda (#{tmp\ 4982}#) ((lambda (#{tmp\ 4983}#) (if (if #{tmp\ 4983}# (apply (lambda (#{_\ 4987}# #{name\ 4988}# #{val\ 4989}#) (#{id?\ 3501}# #{name\ 4988}#)) #{tmp\ 4983}#) #f) (apply (lambda (#{_\ 4993}# #{name\ 4994}# #{val\ 4995}#) (values 'define-syntax-form #{name\ 4994}# #{val\ 4995}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#)) #{tmp\ 4983}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4982}#))) ($sc-dispatch #{tmp\ 4982}# '(any any any)))) #{e\ 4874}#) (values 'call #f #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#)))))))))))))) (if (#{syntax-object?\ 3465}# #{e\ 4874}#) (#{syntax-type\ 3582}# (#{syntax-object-expression\ 3467}# #{e\ 4874}#) #{r\ 4875}# (#{join-wraps\ 3552}# #{w\ 4876}# (#{syntax-object-wrap\ 3469}# #{e\ 4874}#)) #{s\ 4877}# #{rib\ 4878}# (let ((#{t\ 5001}# (#{syntax-object-module\ 3471}# #{e\ 4874}#))) (if #{t\ 5001}# #{t\ 5001}# #{mod\ 4879}#)) #{for-car?\ 4880}#) (if (self-evaluating? #{e\ 4874}#) (values 'constant #f #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#) (values 'other #f #{e\ 4874}# #{w\ 4876}# #{s\ 4877}# #{mod\ 4879}#))))))) (#{chi-when-list\ 3580}# (lambda (#{e\ 5006}# #{when-list\ 5007}# #{w\ 5008}#) (letrec ((#{f\ 5015}# (lambda (#{when-list\ 5016}# #{situations\ 5017}#) (if (null? #{when-list\ 5016}#) #{situations\ 5017}# (#{f\ 5015}# (cdr #{when-list\ 5016}#) (cons (let ((#{x\ 5019}# (car #{when-list\ 5016}#))) (if (#{free-id=?\ 3560}# #{x\ 5019}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i5018")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i5012" "i5013" "i5014")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i5009" "i5010" "i5011")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile))) 'compile (if (#{free-id=?\ 3560}# #{x\ 5019}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i5018")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i5012" "i5013" "i5014")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i5009" "i5010" "i5011")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile))) 'load (if (#{free-id=?\ 3560}# #{x\ 5019}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i5018")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i5012" "i5013" "i5014")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i5009" "i5010" "i5011")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile))) 'eval (syntax-violation 'eval-when "invalid situation" #{e\ 5006}# (#{wrap\ 3570}# #{x\ 5019}# #{w\ 5008}# #f)))))) #{situations\ 5017}#)))))) (#{f\ 5015}# #{when-list\ 5007}# (quote ()))))) (#{chi-install-global\ 3578}# (lambda (#{name\ 5027}# #{e\ 5028}#) (#{build-global-definition\ 3441}# #f #{name\ 5027}# (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f 'make-syntax-transformer) (list (#{build-data\ 3451}# #f #{name\ 5027}#) (#{build-data\ 3451}# #f (quote macro)) (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f (quote cons)) (list #{e\ 5028}# (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f 'module-name) (list (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f 'current-module) '())))))))))) (#{chi-top-sequence\ 3576}# (lambda (#{body\ 5042}# #{r\ 5043}# #{w\ 5044}# #{s\ 5045}# #{m\ 5046}# #{esew\ 5047}# #{mod\ 5048}#) (#{build-sequence\ 3453}# #{s\ 5045}# (letrec ((#{dobody\ 5065}# (lambda (#{body\ 5066}# #{r\ 5067}# #{w\ 5068}# #{m\ 5069}# #{esew\ 5070}# #{mod\ 5071}# #{module\ 5072}# #{out\ 5073}#) (if (null? #{body\ 5066}#) (reverse #{out\ 5073}#) (let ((#{first\ 5076}# (#{chi-top\ 3584}# (car #{body\ 5066}#) #{r\ 5067}# #{w\ 5068}# #{m\ 5069}# #{esew\ 5070}# #{mod\ 5071}#))) (let ((#{new-module\ 5078}# (current-module))) (#{dobody\ 5065}# (cdr #{body\ 5066}#) #{r\ 5067}# #{w\ 5068}# #{m\ 5069}# #{esew\ 5070}# (if (eq? #{module\ 5072}# #{new-module\ 5078}#) #{mod\ 5071}# (cons 'hygiene (module-name #{new-module\ 5078}#))) #{new-module\ 5078}# (cons #{first\ 5076}# #{out\ 5073}#)))))))) (#{dobody\ 5065}# #{body\ 5042}# #{r\ 5043}# #{w\ 5044}# #{m\ 5046}# #{esew\ 5047}# #{mod\ 5048}# (current-module) '()))))) (#{chi-sequence\ 3574}# (lambda (#{body\ 5079}# #{r\ 5080}# #{w\ 5081}# #{s\ 5082}# #{mod\ 5083}#) (#{build-sequence\ 3453}# #{s\ 5082}# (letrec ((#{dobody\ 5094}# (lambda (#{body\ 5095}# #{r\ 5096}# #{w\ 5097}# #{mod\ 5098}#) (if (null? #{body\ 5095}#) '() (let ((#{first\ 5100}# (#{chi\ 3586}# (car #{body\ 5095}#) #{r\ 5096}# #{w\ 5097}# #{mod\ 5098}#))) (cons #{first\ 5100}# (#{dobody\ 5094}# (cdr #{body\ 5095}#) #{r\ 5096}# #{w\ 5097}# #{mod\ 5098}#))))))) (#{dobody\ 5094}# #{body\ 5079}# #{r\ 5080}# #{w\ 5081}# #{mod\ 5083}#))))) (#{source-wrap\ 3572}# (lambda (#{x\ 5101}# #{w\ 5102}# #{s\ 5103}# #{defmod\ 5104}#) (#{wrap\ 3570}# (#{decorate-source\ 3419}# #{x\ 5101}# #{s\ 5103}#) #{w\ 5102}# #{defmod\ 5104}#))) (#{wrap\ 3570}# (lambda (#{x\ 5109}# #{w\ 5110}# #{defmod\ 5111}#) (if (if (null? (#{wrap-marks\ 3508}# #{w\ 5110}#)) (null? (#{wrap-subst\ 3510}# #{w\ 5110}#)) #f) #{x\ 5109}# (if (#{syntax-object?\ 3465}# #{x\ 5109}#) (#{make-syntax-object\ 3463}# (#{syntax-object-expression\ 3467}# #{x\ 5109}#) (#{join-wraps\ 3552}# #{w\ 5110}# (#{syntax-object-wrap\ 3469}# #{x\ 5109}#)) (#{syntax-object-module\ 3471}# #{x\ 5109}#)) (if (null? #{x\ 5109}#) #{x\ 5109}# (#{make-syntax-object\ 3463}# #{x\ 5109}# #{w\ 5110}# #{defmod\ 5111}#)))))) (#{bound-id-member?\ 3568}# (lambda (#{x\ 5124}# #{list\ 5125}#) (if (not (null? #{list\ 5125}#)) (let ((#{t\ 5132}# (#{bound-id=?\ 3562}# #{x\ 5124}# (car #{list\ 5125}#)))) (if #{t\ 5132}# #{t\ 5132}# (#{bound-id-member?\ 3568}# #{x\ 5124}# (cdr #{list\ 5125}#)))) #f))) (#{distinct-bound-ids?\ 3566}# (lambda (#{ids\ 5134}#) (letrec ((#{distinct?\ 5138}# (lambda (#{ids\ 5139}#) (let ((#{t\ 5142}# (null? #{ids\ 5139}#))) (if #{t\ 5142}# #{t\ 5142}# (if (not (#{bound-id-member?\ 3568}# (car #{ids\ 5139}#) (cdr #{ids\ 5139}#))) (#{distinct?\ 5138}# (cdr #{ids\ 5139}#)) #f)))))) (#{distinct?\ 5138}# #{ids\ 5134}#)))) (#{valid-bound-ids?\ 3564}# (lambda (#{ids\ 5146}#) (if (letrec ((#{all-ids?\ 5151}# (lambda (#{ids\ 5152}#) (let ((#{t\ 5155}# (null? #{ids\ 5152}#))) (if #{t\ 5155}# #{t\ 5155}# (if (#{id?\ 3501}# (car #{ids\ 5152}#)) (#{all-ids?\ 5151}# (cdr #{ids\ 5152}#)) #f)))))) (#{all-ids?\ 5151}# #{ids\ 5146}#)) (#{distinct-bound-ids?\ 3566}# #{ids\ 5146}#) #f))) (#{bound-id=?\ 3562}# (lambda (#{i\ 5160}# #{j\ 5161}#) (if (if (#{syntax-object?\ 3465}# #{i\ 5160}#) (#{syntax-object?\ 3465}# #{j\ 5161}#) #f) (if (eq? (#{syntax-object-expression\ 3467}# #{i\ 5160}#) (#{syntax-object-expression\ 3467}# #{j\ 5161}#)) (#{same-marks?\ 3556}# (#{wrap-marks\ 3508}# (#{syntax-object-wrap\ 3469}# #{i\ 5160}#)) (#{wrap-marks\ 3508}# (#{syntax-object-wrap\ 3469}# #{j\ 5161}#))) #f) (eq? #{i\ 5160}# #{j\ 5161}#)))) (#{free-id=?\ 3560}# (lambda (#{i\ 5168}# #{j\ 5169}#) (if (eq? (let ((#{x\ 5175}# #{i\ 5168}#)) (if (#{syntax-object?\ 3465}# #{x\ 5175}#) (#{syntax-object-expression\ 3467}# #{x\ 5175}#) #{x\ 5175}#)) (let ((#{x\ 5178}# #{j\ 5169}#)) (if (#{syntax-object?\ 3465}# #{x\ 5178}#) (#{syntax-object-expression\ 3467}# #{x\ 5178}#) #{x\ 5178}#))) (eq? (#{id-var-name\ 3558}# #{i\ 5168}# (quote (()))) (#{id-var-name\ 3558}# #{j\ 5169}# (quote (())))) #f))) (#{id-var-name\ 3558}# (lambda (#{id\ 5182}# #{w\ 5183}#) (letrec ((#{search-vector-rib\ 5192}# (lambda (#{sym\ 5204}# #{subst\ 5205}# #{marks\ 5206}# #{symnames\ 5207}# #{ribcage\ 5208}#) (let ((#{n\ 5215}# (vector-length #{symnames\ 5207}#))) (letrec ((#{f\ 5218}# (lambda (#{i\ 5219}#) (if (#{fx=\ 3406}# #{i\ 5219}# #{n\ 5215}#) (#{search\ 5188}# #{sym\ 5204}# (cdr #{subst\ 5205}#) #{marks\ 5206}#) (if (if (eq? (vector-ref #{symnames\ 5207}# #{i\ 5219}#) #{sym\ 5204}#) (#{same-marks?\ 3556}# #{marks\ 5206}# (vector-ref (#{ribcage-marks\ 3528}# #{ribcage\ 5208}#) #{i\ 5219}#)) #f) (values (vector-ref (#{ribcage-labels\ 3530}# #{ribcage\ 5208}#) #{i\ 5219}#) #{marks\ 5206}#) (#{f\ 5218}# (#{fx+\ 3402}# #{i\ 5219}# 1))))))) (#{f\ 5218}# 0))))) (#{search-list-rib\ 5190}# (lambda (#{sym\ 5227}# #{subst\ 5228}# #{marks\ 5229}# #{symnames\ 5230}# #{ribcage\ 5231}#) (letrec ((#{f\ 5240}# (lambda (#{symnames\ 5241}# #{i\ 5242}#) (if (null? #{symnames\ 5241}#) (#{search\ 5188}# #{sym\ 5227}# (cdr #{subst\ 5228}#) #{marks\ 5229}#) (if (if (eq? (car #{symnames\ 5241}#) #{sym\ 5227}#) (#{same-marks?\ 3556}# #{marks\ 5229}# (list-ref (#{ribcage-marks\ 3528}# #{ribcage\ 5231}#) #{i\ 5242}#)) #f) (values (list-ref (#{ribcage-labels\ 3530}# #{ribcage\ 5231}#) #{i\ 5242}#) #{marks\ 5229}#) (#{f\ 5240}# (cdr #{symnames\ 5241}#) (#{fx+\ 3402}# #{i\ 5242}# 1))))))) (#{f\ 5240}# #{symnames\ 5230}# 0)))) (#{search\ 5188}# (lambda (#{sym\ 5250}# #{subst\ 5251}# #{marks\ 5252}#) (if (null? #{subst\ 5251}#) (values #f #{marks\ 5252}#) (let ((#{fst\ 5257}# (car #{subst\ 5251}#))) (if (eq? #{fst\ 5257}# (quote shift)) (#{search\ 5188}# #{sym\ 5250}# (cdr #{subst\ 5251}#) (cdr #{marks\ 5252}#)) (let ((#{symnames\ 5259}# (#{ribcage-symnames\ 3526}# #{fst\ 5257}#))) (if (vector? #{symnames\ 5259}#) (#{search-vector-rib\ 5192}# #{sym\ 5250}# #{subst\ 5251}# #{marks\ 5252}# #{symnames\ 5259}# #{fst\ 5257}#) (#{search-list-rib\ 5190}# #{sym\ 5250}# #{subst\ 5251}# #{marks\ 5252}# #{symnames\ 5259}# #{fst\ 5257}#))))))))) (if (symbol? #{id\ 5182}#) (let ((#{t\ 5262}# (call-with-values (lambda () (#{search\ 5188}# #{id\ 5182}# (#{wrap-subst\ 3510}# #{w\ 5183}#) (#{wrap-marks\ 3508}# #{w\ 5183}#))) (lambda (#{x\ 5264}# . #{ignore\ 5265}#) #{x\ 5264}#)))) (if #{t\ 5262}# #{t\ 5262}# #{id\ 5182}#)) (if (#{syntax-object?\ 3465}# #{id\ 5182}#) (let ((#{id\ 5273}# (#{syntax-object-expression\ 3467}# #{id\ 5182}#)) (#{w1\ 5274}# (#{syntax-object-wrap\ 3469}# #{id\ 5182}#))) (let ((#{marks\ 5276}# (#{join-marks\ 3554}# (#{wrap-marks\ 3508}# #{w\ 5183}#) (#{wrap-marks\ 3508}# #{w1\ 5274}#)))) (call-with-values (lambda () (#{search\ 5188}# #{id\ 5273}# (#{wrap-subst\ 3510}# #{w\ 5183}#) #{marks\ 5276}#)) (lambda (#{new-id\ 5277}# #{marks\ 5278}#) (let ((#{t\ 5283}# #{new-id\ 5277}#)) (if #{t\ 5283}# #{t\ 5283}# (let ((#{t\ 5286}# (call-with-values (lambda () (#{search\ 5188}# #{id\ 5273}# (#{wrap-subst\ 3510}# #{w1\ 5274}#) #{marks\ 5278}#)) (lambda (#{x\ 5288}# . #{ignore\ 5289}#) #{x\ 5288}#)))) (if #{t\ 5286}# #{t\ 5286}# #{id\ 5273}#)))))))) (syntax-violation 'id-var-name "invalid id" #{id\ 5182}#)))))) (#{same-marks?\ 3556}# (lambda (#{x\ 5294}# #{y\ 5295}#) (let ((#{t\ 5300}# (eq? #{x\ 5294}# #{y\ 5295}#))) (if #{t\ 5300}# #{t\ 5300}# (if (not (null? #{x\ 5294}#)) (if (not (null? #{y\ 5295}#)) (if (eq? (car #{x\ 5294}#) (car #{y\ 5295}#)) (#{same-marks?\ 3556}# (cdr #{x\ 5294}#) (cdr #{y\ 5295}#)) #f) #f) #f))))) (#{join-marks\ 3554}# (lambda (#{m1\ 5306}# #{m2\ 5307}#) (#{smart-append\ 3550}# #{m1\ 5306}# #{m2\ 5307}#))) (#{join-wraps\ 3552}# (lambda (#{w1\ 5310}# #{w2\ 5311}#) (let ((#{m1\ 5316}# (#{wrap-marks\ 3508}# #{w1\ 5310}#)) (#{s1\ 5317}# (#{wrap-subst\ 3510}# #{w1\ 5310}#))) (if (null? #{m1\ 5316}#) (if (null? #{s1\ 5317}#) #{w2\ 5311}# (#{make-wrap\ 3506}# (#{wrap-marks\ 3508}# #{w2\ 5311}#) (#{smart-append\ 3550}# #{s1\ 5317}# (#{wrap-subst\ 3510}# #{w2\ 5311}#)))) (#{make-wrap\ 3506}# (#{smart-append\ 3550}# #{m1\ 5316}# (#{wrap-marks\ 3508}# #{w2\ 5311}#)) (#{smart-append\ 3550}# #{s1\ 5317}# (#{wrap-subst\ 3510}# #{w2\ 5311}#))))))) (#{smart-append\ 3550}# (lambda (#{m1\ 5318}# #{m2\ 5319}#) (if (null? #{m2\ 5319}#) #{m1\ 5318}# (append #{m1\ 5318}# #{m2\ 5319}#)))) (#{make-binding-wrap\ 3548}# (lambda (#{ids\ 5322}# #{labels\ 5323}# #{w\ 5324}#) (if (null? #{ids\ 5322}#) #{w\ 5324}# (#{make-wrap\ 3506}# (#{wrap-marks\ 3508}# #{w\ 5324}#) (cons (let ((#{labelvec\ 5329}# (list->vector #{labels\ 5323}#))) (let ((#{n\ 5331}# (vector-length #{labelvec\ 5329}#))) (let ((#{symnamevec\ 5334}# (make-vector #{n\ 5331}#)) (#{marksvec\ 5335}# (make-vector #{n\ 5331}#))) (begin (letrec ((#{f\ 5339}# (lambda (#{ids\ 5340}# #{i\ 5341}#) (if (not (null? #{ids\ 5340}#)) (call-with-values (lambda () (#{id-sym-name&marks\ 3504}# (car #{ids\ 5340}#) #{w\ 5324}#)) (lambda (#{symname\ 5342}# #{marks\ 5343}#) (begin (vector-set! #{symnamevec\ 5334}# #{i\ 5341}# #{symname\ 5342}#) (vector-set! #{marksvec\ 5335}# #{i\ 5341}# #{marks\ 5343}#) (#{f\ 5339}# (cdr #{ids\ 5340}#) (#{fx+\ 3402}# #{i\ 5341}# 1))))))))) (#{f\ 5339}# #{ids\ 5322}# 0)) (#{make-ribcage\ 3522}# #{symnamevec\ 5334}# #{marksvec\ 5335}# #{labelvec\ 5329}#))))) (#{wrap-subst\ 3510}# #{w\ 5324}#)))))) (#{extend-ribcage!\ 3546}# (lambda (#{ribcage\ 5346}# #{id\ 5347}# #{label\ 5348}#) (begin (#{set-ribcage-symnames!\ 3532}# #{ribcage\ 5346}# (cons (#{syntax-object-expression\ 3467}# #{id\ 5347}#) (#{ribcage-symnames\ 3526}# #{ribcage\ 5346}#))) (#{set-ribcage-marks!\ 3534}# #{ribcage\ 5346}# (cons (#{wrap-marks\ 3508}# (#{syntax-object-wrap\ 3469}# #{id\ 5347}#)) (#{ribcage-marks\ 3528}# #{ribcage\ 5346}#))) (#{set-ribcage-labels!\ 3536}# #{ribcage\ 5346}# (cons #{label\ 5348}# (#{ribcage-labels\ 3530}# #{ribcage\ 5346}#)))))) (#{anti-mark\ 3542}# (lambda (#{w\ 5352}#) (#{make-wrap\ 3506}# (cons #f (#{wrap-marks\ 3508}# #{w\ 5352}#)) (cons 'shift (#{wrap-subst\ 3510}# #{w\ 5352}#))))) (#{set-ribcage-labels!\ 3536}# (lambda (#{x\ 5355}# #{update\ 5356}#) (vector-set! #{x\ 5355}# 3 #{update\ 5356}#))) (#{set-ribcage-marks!\ 3534}# (lambda (#{x\ 5359}# #{update\ 5360}#) (vector-set! #{x\ 5359}# 2 #{update\ 5360}#))) (#{set-ribcage-symnames!\ 3532}# (lambda (#{x\ 5363}# #{update\ 5364}#) (vector-set! #{x\ 5363}# 1 #{update\ 5364}#))) (#{ribcage-labels\ 3530}# (lambda (#{x\ 5367}#) (vector-ref #{x\ 5367}# 3))) (#{ribcage-marks\ 3528}# (lambda (#{x\ 5369}#) (vector-ref #{x\ 5369}# 2))) (#{ribcage-symnames\ 3526}# (lambda (#{x\ 5371}#) (vector-ref #{x\ 5371}# 1))) (#{ribcage?\ 3524}# (lambda (#{x\ 5373}#) (if (vector? #{x\ 5373}#) (if (= (vector-length #{x\ 5373}#) 4) (eq? (vector-ref #{x\ 5373}# 0) (quote ribcage)) #f) #f))) (#{make-ribcage\ 3522}# (lambda (#{symnames\ 5378}# #{marks\ 5379}# #{labels\ 5380}#) (vector 'ribcage #{symnames\ 5378}# #{marks\ 5379}# #{labels\ 5380}#))) (#{gen-labels\ 3519}# (lambda (#{ls\ 5384}#) (if (null? #{ls\ 5384}#) '() (cons (#{gen-label\ 3517}#) (#{gen-labels\ 3519}# (cdr #{ls\ 5384}#)))))) (#{gen-label\ 3517}# (lambda () (symbol->string (gensym "i")))) (#{wrap-subst\ 3510}# cdr) (#{wrap-marks\ 3508}# car) (#{make-wrap\ 3506}# cons) (#{id-sym-name&marks\ 3504}# (lambda (#{x\ 5386}# #{w\ 5387}#) (if (#{syntax-object?\ 3465}# #{x\ 5386}#) (values (#{syntax-object-expression\ 3467}# #{x\ 5386}#) (#{join-marks\ 3554}# (#{wrap-marks\ 3508}# #{w\ 5387}#) (#{wrap-marks\ 3508}# (#{syntax-object-wrap\ 3469}# #{x\ 5386}#)))) (values #{x\ 5386}# (#{wrap-marks\ 3508}# #{w\ 5387}#))))) (#{id?\ 3501}# (lambda (#{x\ 5390}#) (if (symbol? #{x\ 5390}#) #t (if (#{syntax-object?\ 3465}# #{x\ 5390}#) (symbol? (#{syntax-object-expression\ 3467}# #{x\ 5390}#)) #f)))) (#{nonsymbol-id?\ 3499}# (lambda (#{x\ 5397}#) (if (#{syntax-object?\ 3465}# #{x\ 5397}#) (symbol? (#{syntax-object-expression\ 3467}# #{x\ 5397}#)) #f))) (#{global-extend\ 3497}# (lambda (#{type\ 5401}# #{sym\ 5402}# #{val\ 5403}#) (#{put-global-definition-hook\ 3415}# #{sym\ 5402}# #{type\ 5401}# #{val\ 5403}#))) (#{lookup\ 3495}# (lambda (#{x\ 5407}# #{r\ 5408}# #{mod\ 5409}#) (let ((#{t\ 5415}# (assq #{x\ 5407}# #{r\ 5408}#))) (if #{t\ 5415}# (cdr #{t\ 5415}#) (if (symbol? #{x\ 5407}#) (let ((#{t\ 5421}# (#{get-global-definition-hook\ 3417}# #{x\ 5407}# #{mod\ 5409}#))) (if #{t\ 5421}# #{t\ 5421}# (quote (global)))) '(displaced-lexical)))))) (#{macros-only-env\ 3493}# (lambda (#{r\ 5426}#) (if (null? #{r\ 5426}#) '() (let ((#{a\ 5429}# (car #{r\ 5426}#))) (if (eq? (cadr #{a\ 5429}#) (quote macro)) (cons #{a\ 5429}# (#{macros-only-env\ 3493}# (cdr #{r\ 5426}#))) (#{macros-only-env\ 3493}# (cdr #{r\ 5426}#))))))) (#{extend-var-env\ 3491}# (lambda (#{labels\ 5430}# #{vars\ 5431}# #{r\ 5432}#) (if (null? #{labels\ 5430}#) #{r\ 5432}# (#{extend-var-env\ 3491}# (cdr #{labels\ 5430}#) (cdr #{vars\ 5431}#) (cons (cons (car #{labels\ 5430}#) (cons (quote lexical) (car #{vars\ 5431}#))) #{r\ 5432}#))))) (#{extend-env\ 3489}# (lambda (#{labels\ 5437}# #{bindings\ 5438}# #{r\ 5439}#) (if (null? #{labels\ 5437}#) #{r\ 5439}# (#{extend-env\ 3489}# (cdr #{labels\ 5437}#) (cdr #{bindings\ 5438}#) (cons (cons (car #{labels\ 5437}#) (car #{bindings\ 5438}#)) #{r\ 5439}#))))) (#{binding-value\ 3486}# cdr) (#{binding-type\ 3484}# car) (#{source-annotation\ 3480}# (lambda (#{x\ 5443}#) (if (#{syntax-object?\ 3465}# #{x\ 5443}#) (#{source-annotation\ 3480}# (#{syntax-object-expression\ 3467}# #{x\ 5443}#)) (if (pair? #{x\ 5443}#) (let ((#{props\ 5450}# (source-properties #{x\ 5443}#))) (if (pair? #{props\ 5450}#) #{props\ 5450}# #f)) #f)))) (#{set-syntax-object-module!\ 3477}# (lambda (#{x\ 5452}# #{update\ 5453}#) (vector-set! #{x\ 5452}# 3 #{update\ 5453}#))) (#{set-syntax-object-wrap!\ 3475}# (lambda (#{x\ 5456}# #{update\ 5457}#) (vector-set! #{x\ 5456}# 2 #{update\ 5457}#))) (#{set-syntax-object-expression!\ 3473}# (lambda (#{x\ 5460}# #{update\ 5461}#) (vector-set! #{x\ 5460}# 1 #{update\ 5461}#))) (#{syntax-object-module\ 3471}# (lambda (#{x\ 5464}#) (vector-ref #{x\ 5464}# 3))) (#{syntax-object-wrap\ 3469}# (lambda (#{x\ 5466}#) (vector-ref #{x\ 5466}# 2))) (#{syntax-object-expression\ 3467}# (lambda (#{x\ 5468}#) (vector-ref #{x\ 5468}# 1))) (#{syntax-object?\ 3465}# (lambda (#{x\ 5470}#) (if (vector? #{x\ 5470}#) (if (= (vector-length #{x\ 5470}#) 4) (eq? (vector-ref #{x\ 5470}# 0) 'syntax-object) #f) #f))) (#{make-syntax-object\ 3463}# (lambda (#{expression\ 5475}# #{wrap\ 5476}# #{module\ 5477}#) (vector 'syntax-object #{expression\ 5475}# #{wrap\ 5476}# #{module\ 5477}#))) (#{build-letrec\ 3459}# (lambda (#{src\ 5481}# #{ids\ 5482}# #{vars\ 5483}# #{val-exps\ 5484}# #{body-exp\ 5485}#) (if (null? #{vars\ 5483}#) #{body-exp\ 5485}# (let ((#{atom-key\ 5493}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5493}# (quote (c))) (begin (for-each #{maybe-name-value!\ 3439}# #{ids\ 5482}# #{val-exps\ 5484}#) ((@ (language tree-il) make-letrec) #{src\ 5481}# #{ids\ 5482}# #{vars\ 5483}# #{val-exps\ 5484}# #{body-exp\ 5485}#)) (#{decorate-source\ 3419}# (list 'letrec (map list #{vars\ 5483}# #{val-exps\ 5484}#) #{body-exp\ 5485}#) #{src\ 5481}#)))))) (#{build-named-let\ 3457}# (lambda (#{src\ 5497}# #{ids\ 5498}# #{vars\ 5499}# #{val-exps\ 5500}# #{body-exp\ 5501}#) (let ((#{f\ 5511}# (car #{vars\ 5499}#)) (#{f-name\ 5512}# (car #{ids\ 5498}#)) (#{vars\ 5513}# (cdr #{vars\ 5499}#)) (#{ids\ 5514}# (cdr #{ids\ 5498}#))) (let ((#{atom-key\ 5517}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5517}# (quote (c))) (let ((#{proc\ 5520}# (#{build-simple-lambda\ 3443}# #{src\ 5497}# #{ids\ 5514}# #f #{vars\ 5513}# #f #{body-exp\ 5501}#))) (begin (#{maybe-name-value!\ 3439}# #{f-name\ 5512}# #{proc\ 5520}#) (for-each #{maybe-name-value!\ 3439}# #{ids\ 5514}# #{val-exps\ 5500}#) ((@ (language tree-il) make-letrec) #{src\ 5497}# (list #{f-name\ 5512}#) (list #{f\ 5511}#) (list #{proc\ 5520}#) (#{build-application\ 3423}# #{src\ 5497}# (#{build-lexical-reference\ 3429}# 'fun #{src\ 5497}# #{f-name\ 5512}# #{f\ 5511}#) #{val-exps\ 5500}#)))) (#{decorate-source\ 3419}# (list 'letrec (list (list #{f\ 5511}# (list 'lambda #{vars\ 5513}# #{body-exp\ 5501}#))) (cons #{f\ 5511}# #{val-exps\ 5500}#)) #{src\ 5497}#)))))) (#{build-let\ 3455}# (lambda (#{src\ 5523}# #{ids\ 5524}# #{vars\ 5525}# #{val-exps\ 5526}# #{body-exp\ 5527}#) (if (null? #{vars\ 5525}#) #{body-exp\ 5527}# (let ((#{atom-key\ 5535}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5535}# (quote (c))) (begin (for-each #{maybe-name-value!\ 3439}# #{ids\ 5524}# #{val-exps\ 5526}#) ((@ (language tree-il) make-let) #{src\ 5523}# #{ids\ 5524}# #{vars\ 5525}# #{val-exps\ 5526}# #{body-exp\ 5527}#)) (#{decorate-source\ 3419}# (list 'let (map list #{vars\ 5525}# #{val-exps\ 5526}#) #{body-exp\ 5527}#) #{src\ 5523}#)))))) (#{build-sequence\ 3453}# (lambda (#{src\ 5539}# #{exps\ 5540}#) (if (null? (cdr #{exps\ 5540}#)) (car #{exps\ 5540}#) (let ((#{atom-key\ 5545}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5545}# (quote (c))) ((@ (language tree-il) make-sequence) #{src\ 5539}# #{exps\ 5540}#) (#{decorate-source\ 3419}# (cons (quote begin) #{exps\ 5540}#) #{src\ 5539}#)))))) (#{build-data\ 3451}# (lambda (#{src\ 5549}# #{exp\ 5550}#) (let ((#{atom-key\ 5555}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5555}# (quote (c))) ((@ (language tree-il) make-const) #{src\ 5549}# #{exp\ 5550}#) (#{decorate-source\ 3419}# (if (if (self-evaluating? #{exp\ 5550}#) (not (vector? #{exp\ 5550}#)) #f) #{exp\ 5550}# (list (quote quote) #{exp\ 5550}#)) #{src\ 5549}#))))) (#{build-primref\ 3449}# (lambda (#{src\ 5560}# #{name\ 5561}#) (if (equal? (module-name (current-module)) '(guile)) (let ((#{atom-key\ 5566}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5566}# (quote (c))) ((@ (language tree-il) make-toplevel-ref) #{src\ 5560}# #{name\ 5561}#) (#{decorate-source\ 3419}# #{name\ 5561}# #{src\ 5560}#))) (let ((#{atom-key\ 5571}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5571}# (quote (c))) ((@ (language tree-il) make-module-ref) #{src\ 5560}# '(guile) #{name\ 5561}# #f) (#{decorate-source\ 3419}# (list (quote @@) (quote (guile)) #{name\ 5561}#) #{src\ 5560}#)))))) (#{build-lambda-case\ 3447}# (lambda (#{src\ 5575}# #{req\ 5576}# #{opt\ 5577}# #{rest\ 5578}# #{kw\ 5579}# #{inits\ 5580}# #{vars\ 5581}# #{body\ 5582}# #{else-case\ 5583}#) (let ((#{atom-key\ 5595}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5595}# (quote (c))) ((@ (language tree-il) make-lambda-case) #{src\ 5575}# #{req\ 5576}# #{opt\ 5577}# #{rest\ 5578}# #{kw\ 5579}# #{inits\ 5580}# #{vars\ 5581}# #{body\ 5582}# #{else-case\ 5583}#) (let ((#{nreq\ 5600}# (length #{req\ 5576}#))) (let ((#{nopt\ 5602}# (if #{opt\ 5577}# (length #{opt\ 5577}#) 0))) (let ((#{rest-idx\ 5604}# (if #{rest\ 5578}# (+ #{nreq\ 5600}# #{nopt\ 5602}#) #f))) (let ((#{allow-other-keys?\ 5608}# (if #{kw\ 5579}# (car #{kw\ 5579}#) #f))) (let ((#{kw-indices\ 5610}# (map (lambda (#{x\ 5611}#) (cons (car #{x\ 5611}#) (list-index #{vars\ 5581}# (caddr #{x\ 5611}#)))) (if #{kw\ 5579}# (cdr #{kw\ 5579}#) '())))) (let ((#{nargs\ 5614}# (apply max (+ #{nreq\ 5600}# #{nopt\ 5602}# (if #{rest\ 5578}# 1 0)) (map 1+ (map cdr #{kw-indices\ 5610}#))))) (begin (let ((#{t\ 5617}# (= #{nargs\ 5614}# (length #{vars\ 5581}#) (+ #{nreq\ 5600}# (length #{inits\ 5580}#) (if #{rest\ 5578}# 1 0))))) (if #{t\ 5617}# #{t\ 5617}# (error "something went wrong" #{req\ 5576}# #{opt\ 5577}# #{rest\ 5578}# #{kw\ 5579}# #{inits\ 5580}# #{vars\ 5581}# #{nreq\ 5600}# #{nopt\ 5602}# #{kw-indices\ 5610}# #{nargs\ 5614}#))) (#{decorate-source\ 3419}# (cons (list (cons '(@@ (ice-9 optargs) parse-lambda-case) (cons (list 'quote (list #{nreq\ 5600}# #{nopt\ 5602}# #{rest-idx\ 5604}# #{nargs\ 5614}# #{allow-other-keys?\ 5608}# #{kw-indices\ 5610}#)) (cons (cons 'list (map (lambda (#{i\ 5620}#) (list 'lambda #{vars\ 5581}# #{i\ 5620}#)) #{inits\ 5580}#)) '(%%args)))) '=> (list 'lambda '(%%args) (cons 'apply (cons (list 'lambda #{vars\ 5581}# #{body\ 5582}#) '(%%args))))) (let ((#{t\ 5625}# #{else-case\ 5583}#)) (if #{t\ 5625}# #{t\ 5625}# '((%%args (scm-error 'wrong-number-of-args #f "Wrong number of arguments" '() %%args)))))) #{src\ 5575}#)))))))))))) (#{build-case-lambda\ 3445}# (lambda (#{src\ 5628}# #{docstring\ 5629}# #{body\ 5630}#) (let ((#{atom-key\ 5636}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5636}# (quote (c))) ((@ (language tree-il) make-lambda) #{src\ 5628}# (if #{docstring\ 5629}# (list (cons (quote documentation) #{docstring\ 5629}#)) '()) #{body\ 5630}#) (#{decorate-source\ 3419}# (cons 'lambda (cons '%%args (append (if #{docstring\ 5629}# (list #{docstring\ 5629}#) '()) (list (cons (quote cond) #{body\ 5630}#))))) #{src\ 5628}#))))) (#{build-simple-lambda\ 3443}# (lambda (#{src\ 5641}# #{req\ 5642}# #{rest\ 5643}# #{vars\ 5644}# #{docstring\ 5645}# #{exp\ 5646}#) (let ((#{atom-key\ 5655}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5655}# (quote (c))) ((@ (language tree-il) make-lambda) #{src\ 5641}# (if #{docstring\ 5645}# (list (cons (quote documentation) #{docstring\ 5645}#)) '()) ((@ (language tree-il) make-lambda-case) #{src\ 5641}# #{req\ 5642}# #f #{rest\ 5643}# #f '() #{vars\ 5644}# #{exp\ 5646}# #f)) (#{decorate-source\ 3419}# (cons 'lambda (cons (if #{rest\ 5643}# (apply cons* #{vars\ 5644}#) #{vars\ 5644}#) (append (if #{docstring\ 5645}# (list #{docstring\ 5645}#) '()) (list #{exp\ 5646}#)))) #{src\ 5641}#))))) (#{build-global-definition\ 3441}# (lambda (#{source\ 5660}# #{var\ 5661}# #{exp\ 5662}#) (let ((#{atom-key\ 5668}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5668}# (quote (c))) (begin (#{maybe-name-value!\ 3439}# #{var\ 5661}# #{exp\ 5662}#) ((@ (language tree-il) make-toplevel-define) #{source\ 5660}# #{var\ 5661}# #{exp\ 5662}#)) (#{decorate-source\ 3419}# (list (quote define) #{var\ 5661}# #{exp\ 5662}#) #{source\ 5660}#))))) (#{maybe-name-value!\ 3439}# (lambda (#{name\ 5672}# #{val\ 5673}#) (if ((@ (language tree-il) lambda?) #{val\ 5673}#) (let ((#{meta\ 5679}# ((@ (language tree-il) lambda-meta) #{val\ 5673}#))) (if (not (assq (quote name) #{meta\ 5679}#)) ((setter (@ (language tree-il) lambda-meta)) #{val\ 5673}# (acons 'name #{name\ 5672}# #{meta\ 5679}#))))))) (#{build-global-assignment\ 3437}# (lambda (#{source\ 5680}# #{var\ 5681}# #{exp\ 5682}# #{mod\ 5683}#) (#{analyze-variable\ 3433}# #{mod\ 5683}# #{var\ 5681}# (lambda (#{mod\ 5688}# #{var\ 5689}# #{public?\ 5690}#) (let ((#{atom-key\ 5696}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5696}# (quote (c))) ((@ (language tree-il) make-module-set) #{source\ 5680}# #{mod\ 5688}# #{var\ 5689}# #{public?\ 5690}# #{exp\ 5682}#) (#{decorate-source\ 3419}# (list 'set! (list (if #{public?\ 5690}# '@ '@@) #{mod\ 5688}# #{var\ 5689}#) #{exp\ 5682}#) #{source\ 5680}#)))) (lambda (#{var\ 5700}#) (let ((#{atom-key\ 5704}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5704}# (quote (c))) ((@ (language tree-il) make-toplevel-set) #{source\ 5680}# #{var\ 5700}# #{exp\ 5682}#) (#{decorate-source\ 3419}# (list (quote set!) #{var\ 5700}# #{exp\ 5682}#) #{source\ 5680}#))))))) (#{build-global-reference\ 3435}# (lambda (#{source\ 5708}# #{var\ 5709}# #{mod\ 5710}#) (#{analyze-variable\ 3433}# #{mod\ 5710}# #{var\ 5709}# (lambda (#{mod\ 5714}# #{var\ 5715}# #{public?\ 5716}#) (let ((#{atom-key\ 5722}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5722}# (quote (c))) ((@ (language tree-il) make-module-ref) #{source\ 5708}# #{mod\ 5714}# #{var\ 5715}# #{public?\ 5716}#) (#{decorate-source\ 3419}# (list (if #{public?\ 5716}# (quote @) (quote @@)) #{mod\ 5714}# #{var\ 5715}#) #{source\ 5708}#)))) (lambda (#{var\ 5725}#) (let ((#{atom-key\ 5729}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5729}# (quote (c))) ((@ (language tree-il) make-toplevel-ref) #{source\ 5708}# #{var\ 5725}#) (#{decorate-source\ 3419}# #{var\ 5725}# #{source\ 5708}#))))))) (#{analyze-variable\ 3433}# (lambda (#{mod\ 5732}# #{var\ 5733}# #{modref-cont\ 5734}# #{bare-cont\ 5735}#) (if (not #{mod\ 5732}#) (#{bare-cont\ 5735}# #{var\ 5733}#) (let ((#{kind\ 5742}# (car #{mod\ 5732}#)) (#{mod\ 5743}# (cdr #{mod\ 5732}#))) (if (memv #{kind\ 5742}# (quote (public))) (#{modref-cont\ 5734}# #{mod\ 5743}# #{var\ 5733}# #t) (if (memv #{kind\ 5742}# (quote (private))) (if (not (equal? #{mod\ 5743}# (module-name (current-module)))) (#{modref-cont\ 5734}# #{mod\ 5743}# #{var\ 5733}# #f) (#{bare-cont\ 5735}# #{var\ 5733}#)) (if (memv #{kind\ 5742}# (quote (bare))) (#{bare-cont\ 5735}# #{var\ 5733}#) (if (memv #{kind\ 5742}# (quote (hygiene))) (if (if (not (equal? #{mod\ 5743}# (module-name (current-module)))) (module-variable (resolve-module #{mod\ 5743}#) #{var\ 5733}#) #f) (#{modref-cont\ 5734}# #{mod\ 5743}# #{var\ 5733}# #f) (#{bare-cont\ 5735}# #{var\ 5733}#)) (syntax-violation #f "bad module kind" #{var\ 5733}# #{mod\ 5743}#))))))))) (#{build-lexical-assignment\ 3431}# (lambda (#{source\ 5751}# #{name\ 5752}# #{var\ 5753}# #{exp\ 5754}#) (let ((#{atom-key\ 5761}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5761}# (quote (c))) ((@ (language tree-il) make-lexical-set) #{source\ 5751}# #{name\ 5752}# #{var\ 5753}# #{exp\ 5754}#) (#{decorate-source\ 3419}# (list (quote set!) #{var\ 5753}# #{exp\ 5754}#) #{source\ 5751}#))))) (#{build-lexical-reference\ 3429}# (lambda (#{type\ 5765}# #{source\ 5766}# #{name\ 5767}# #{var\ 5768}#) (let ((#{atom-key\ 5775}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5775}# (quote (c))) ((@ (language tree-il) make-lexical-ref) #{source\ 5766}# #{name\ 5767}# #{var\ 5768}#) (#{decorate-source\ 3419}# #{var\ 5768}# #{source\ 5766}#))))) (#{build-dynlet\ 3427}# (lambda (#{source\ 5778}# #{fluids\ 5779}# #{vals\ 5780}# #{body\ 5781}#) (let ((#{atom-key\ 5788}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5788}# (quote (c))) ((@ (language tree-il) make-dynlet) #{source\ 5778}# #{fluids\ 5779}# #{vals\ 5780}# #{body\ 5781}#) (#{decorate-source\ 3419}# (list 'with-fluids (map list #{fluids\ 5779}# #{vals\ 5780}#) #{body\ 5781}#) #{source\ 5778}#))))) (#{build-conditional\ 3425}# (lambda (#{source\ 5792}# #{test-exp\ 5793}# #{then-exp\ 5794}# #{else-exp\ 5795}#) (let ((#{atom-key\ 5802}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5802}# (quote (c))) ((@ (language tree-il) make-conditional) #{source\ 5792}# #{test-exp\ 5793}# #{then-exp\ 5794}# #{else-exp\ 5795}#) (#{decorate-source\ 3419}# (if (equal? #{else-exp\ 5795}# (quote (if #f #f))) (list 'if #{test-exp\ 5793}# #{then-exp\ 5794}#) (list 'if #{test-exp\ 5793}# #{then-exp\ 5794}# #{else-exp\ 5795}#)) #{source\ 5792}#))))) (#{build-application\ 3423}# (lambda (#{source\ 5807}# #{fun-exp\ 5808}# #{arg-exps\ 5809}#) (let ((#{atom-key\ 5815}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5815}# (quote (c))) ((@ (language tree-il) make-application) #{source\ 5807}# #{fun-exp\ 5808}# #{arg-exps\ 5809}#) (#{decorate-source\ 3419}# (cons #{fun-exp\ 5808}# #{arg-exps\ 5809}#) #{source\ 5807}#))))) (#{build-void\ 3421}# (lambda (#{source\ 5819}#) (let ((#{atom-key\ 5823}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5823}# (quote (c))) ((@ (language tree-il) make-void) #{source\ 5819}#) (#{decorate-source\ 3419}# '(if #f #f) #{source\ 5819}#))))) (#{decorate-source\ 3419}# (lambda (#{e\ 5826}# #{s\ 5827}#) (begin (if (if (pair? #{e\ 5826}#) #{s\ 5827}# #f) (set-source-properties! #{e\ 5826}# #{s\ 5827}#)) #{e\ 5826}#))) (#{get-global-definition-hook\ 3417}# (lambda (#{symbol\ 5832}# #{module\ 5833}#) (begin (if (if (not #{module\ 5833}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol\ 5832}#)) (let ((#{v\ 5839}# (module-variable (if #{module\ 5833}# (resolve-module (cdr #{module\ 5833}#)) (current-module)) #{symbol\ 5832}#))) (if #{v\ 5839}# (if (variable-bound? #{v\ 5839}#) (let ((#{val\ 5844}# (variable-ref #{v\ 5839}#))) (if (macro? #{val\ 5844}#) (if (macro-type #{val\ 5844}#) (cons (macro-type #{val\ 5844}#) (macro-binding #{val\ 5844}#)) #f) #f)) #f) #f))))) (#{put-global-definition-hook\ 3415}# (lambda (#{symbol\ 5848}# #{type\ 5849}# #{val\ 5850}#) (module-define! (current-module) #{symbol\ 5848}# (make-syntax-transformer #{symbol\ 5848}# #{type\ 5849}# #{val\ 5850}#)))) (#{local-eval-hook\ 3412}# (lambda (#{x\ 5854}# #{mod\ 5855}#) (primitive-eval (list #{noexpand\ 3398}# (let ((#{atom-key\ 5861}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5861}# (quote (c))) ((@ (language tree-il) tree-il->scheme) #{x\ 5854}#) #{x\ 5854}#)))))) (#{top-level-eval-hook\ 3410}# (lambda (#{x\ 5864}# #{mod\ 5865}#) (primitive-eval (list #{noexpand\ 3398}# (let ((#{atom-key\ 5871}# (fluid-ref #{*mode*\ 3400}#))) (if (memv #{atom-key\ 5871}# (quote (c))) ((@ (language tree-il) tree-il->scheme) #{x\ 5864}#) #{x\ 5864}#)))))) (#{fx<\ 3408}# <) (#{fx=\ 3406}# =) (#{fx-\ 3404}# -) (#{fx+\ 3402}# +) (#{*mode*\ 3400}# (make-fluid)) (#{noexpand\ 3398}# "noexpand")) (begin (#{global-extend\ 3497}# 'local-syntax 'letrec-syntax #t) (#{global-extend\ 3497}# 'local-syntax 'let-syntax #f) (#{global-extend\ 3497}# 'core 'fluid-let-syntax (lambda (#{e\ 5874}# #{r\ 5875}# #{w\ 5876}# #{s\ 5877}# #{mod\ 5878}#) ((lambda (#{tmp\ 5884}#) ((lambda (#{tmp\ 5885}#) (if (if #{tmp\ 5885}# (apply (lambda (#{_\ 5891}# #{var\ 5892}# #{val\ 5893}# #{e1\ 5894}# #{e2\ 5895}#) (#{valid-bound-ids?\ 3564}# #{var\ 5892}#)) #{tmp\ 5885}#) #f) (apply (lambda (#{_\ 5902}# #{var\ 5903}# #{val\ 5904}# #{e1\ 5905}# #{e2\ 5906}#) (let ((#{names\ 5908}# (map (lambda (#{x\ 5909}#) (#{id-var-name\ 3558}# #{x\ 5909}# #{w\ 5876}#)) #{var\ 5903}#))) (begin (for-each (lambda (#{id\ 5912}# #{n\ 5913}#) (let ((#{atom-key\ 5918}# (#{binding-type\ 3484}# (#{lookup\ 3495}# #{n\ 5913}# #{r\ 5875}# #{mod\ 5878}#)))) (if (memv #{atom-key\ 5918}# '(displaced-lexical)) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 5874}# (#{source-wrap\ 3572}# #{id\ 5912}# #{w\ 5876}# #{s\ 5877}# #{mod\ 5878}#))))) #{var\ 5903}# #{names\ 5908}#) (#{chi-body\ 3594}# (cons #{e1\ 5905}# #{e2\ 5906}#) (#{source-wrap\ 3572}# #{e\ 5874}# #{w\ 5876}# #{s\ 5877}# #{mod\ 5878}#) (#{extend-env\ 3489}# #{names\ 5908}# (let ((#{trans-r\ 5923}# (#{macros-only-env\ 3493}# #{r\ 5875}#))) (map (lambda (#{x\ 5924}#) (cons 'macro (#{eval-local-transformer\ 3598}# (#{chi\ 3586}# #{x\ 5924}# #{trans-r\ 5923}# #{w\ 5876}# #{mod\ 5878}#) #{mod\ 5878}#))) #{val\ 5904}#)) #{r\ 5875}#) #{w\ 5876}# #{mod\ 5878}#)))) #{tmp\ 5885}#) ((lambda (#{_\ 5929}#) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 3572}# #{e\ 5874}# #{w\ 5876}# #{s\ 5877}# #{mod\ 5878}#))) #{tmp\ 5884}#))) ($sc-dispatch #{tmp\ 5884}# '(any #(each (any any)) any . each-any)))) #{e\ 5874}#))) (#{global-extend\ 3497}# 'core 'quote (lambda (#{e\ 5930}# #{r\ 5931}# #{w\ 5932}# #{s\ 5933}# #{mod\ 5934}#) ((lambda (#{tmp\ 5940}#) ((lambda (#{tmp\ 5941}#) (if #{tmp\ 5941}# (apply (lambda (#{_\ 5944}# #{e\ 5945}#) (#{build-data\ 3451}# #{s\ 5933}# (#{strip\ 3612}# #{e\ 5945}# #{w\ 5932}#))) #{tmp\ 5941}#) ((lambda (#{_\ 5947}#) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 3572}# #{e\ 5930}# #{w\ 5932}# #{s\ 5933}# #{mod\ 5934}#))) #{tmp\ 5940}#))) ($sc-dispatch #{tmp\ 5940}# (quote (any any))))) #{e\ 5930}#))) (#{global-extend\ 3497}# 'core 'syntax (letrec ((#{regen\ 5963}# (lambda (#{x\ 5964}#) (let ((#{atom-key\ 5968}# (car #{x\ 5964}#))) (if (memv #{atom-key\ 5968}# (quote (ref))) (#{build-lexical-reference\ 3429}# 'value #f (cadr #{x\ 5964}#) (cadr #{x\ 5964}#)) (if (memv #{atom-key\ 5968}# (quote (primitive))) (#{build-primref\ 3449}# #f (cadr #{x\ 5964}#)) (if (memv #{atom-key\ 5968}# (quote (quote))) (#{build-data\ 3451}# #f (cadr #{x\ 5964}#)) (if (memv #{atom-key\ 5968}# (quote (lambda))) (if (list? (cadr #{x\ 5964}#)) (#{build-simple-lambda\ 3443}# #f (cadr #{x\ 5964}#) #f (cadr #{x\ 5964}#) #f (#{regen\ 5963}# (caddr #{x\ 5964}#))) (error "how did we get here" #{x\ 5964}#)) (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f (car #{x\ 5964}#)) (map #{regen\ 5963}# (cdr #{x\ 5964}#)))))))))) (#{gen-vector\ 5961}# (lambda (#{x\ 5980}#) (if (eq? (car #{x\ 5980}#) (quote list)) (cons (quote vector) (cdr #{x\ 5980}#)) (if (eq? (car #{x\ 5980}#) (quote quote)) (list 'quote (list->vector (cadr #{x\ 5980}#))) (list (quote list->vector) #{x\ 5980}#))))) (#{gen-append\ 5959}# (lambda (#{x\ 5990}# #{y\ 5991}#) (if (equal? #{y\ 5991}# (quote (quote ()))) #{x\ 5990}# (list (quote append) #{x\ 5990}# #{y\ 5991}#)))) (#{gen-cons\ 5957}# (lambda (#{x\ 5995}# #{y\ 5996}#) (let ((#{atom-key\ 6001}# (car #{y\ 5996}#))) (if (memv #{atom-key\ 6001}# (quote (quote))) (if (eq? (car #{x\ 5995}#) (quote quote)) (list 'quote (cons (cadr #{x\ 5995}#) (cadr #{y\ 5996}#))) (if (eq? (cadr #{y\ 5996}#) (quote ())) (list (quote list) #{x\ 5995}#) (list (quote cons) #{x\ 5995}# #{y\ 5996}#))) (if (memv #{atom-key\ 6001}# (quote (list))) (cons 'list (cons #{x\ 5995}# (cdr #{y\ 5996}#))) (list (quote cons) #{x\ 5995}# #{y\ 5996}#)))))) (#{gen-map\ 5955}# (lambda (#{e\ 6010}# #{map-env\ 6011}#) (let ((#{formals\ 6016}# (map cdr #{map-env\ 6011}#)) (#{actuals\ 6017}# (map (lambda (#{x\ 6018}#) (list (quote ref) (car #{x\ 6018}#))) #{map-env\ 6011}#))) (if (eq? (car #{e\ 6010}#) (quote ref)) (car #{actuals\ 6017}#) (if (and-map (lambda (#{x\ 6025}#) (if (eq? (car #{x\ 6025}#) (quote ref)) (memq (cadr #{x\ 6025}#) #{formals\ 6016}#) #f)) (cdr #{e\ 6010}#)) (cons 'map (cons (list 'primitive (car #{e\ 6010}#)) (map (let ((#{r\ 6031}# (map cons #{formals\ 6016}# #{actuals\ 6017}#))) (lambda (#{x\ 6032}#) (cdr (assq (cadr #{x\ 6032}#) #{r\ 6031}#)))) (cdr #{e\ 6010}#)))) (cons 'map (cons (list 'lambda #{formals\ 6016}# #{e\ 6010}#) #{actuals\ 6017}#))))))) (#{gen-mappend\ 5953}# (lambda (#{e\ 6036}# #{map-env\ 6037}#) (list 'apply '(primitive append) (#{gen-map\ 5955}# #{e\ 6036}# #{map-env\ 6037}#)))) (#{gen-ref\ 5951}# (lambda (#{src\ 6041}# #{var\ 6042}# #{level\ 6043}# #{maps\ 6044}#) (if (#{fx=\ 3406}# #{level\ 6043}# 0) (values #{var\ 6042}# #{maps\ 6044}#) (if (null? #{maps\ 6044}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 6041}#) (call-with-values (lambda () (#{gen-ref\ 5951}# #{src\ 6041}# #{var\ 6042}# (#{fx-\ 3404}# #{level\ 6043}# 1) (cdr #{maps\ 6044}#))) (lambda (#{outer-var\ 6049}# #{outer-maps\ 6050}#) (let ((#{b\ 6054}# (assq #{outer-var\ 6049}# (car #{maps\ 6044}#)))) (if #{b\ 6054}# (values (cdr #{b\ 6054}#) #{maps\ 6044}#) (let ((#{inner-var\ 6056}# (#{gen-var\ 3614}# (quote tmp)))) (values #{inner-var\ 6056}# (cons (cons (cons #{outer-var\ 6049}# #{inner-var\ 6056}#) (car #{maps\ 6044}#)) #{outer-maps\ 6050}#))))))))))) (#{gen-syntax\ 5949}# (lambda (#{src\ 6057}# #{e\ 6058}# #{r\ 6059}# #{maps\ 6060}# #{ellipsis?\ 6061}# #{mod\ 6062}#) (if (#{id?\ 3501}# #{e\ 6058}#) (let ((#{label\ 6070}# (#{id-var-name\ 3558}# #{e\ 6058}# '(())))) (let ((#{b\ 6073}# (#{lookup\ 3495}# #{label\ 6070}# #{r\ 6059}# #{mod\ 6062}#))) (if (eq? (#{binding-type\ 3484}# #{b\ 6073}#) 'syntax) (call-with-values (lambda () (let ((#{var.lev\ 6075}# (#{binding-value\ 3486}# #{b\ 6073}#))) (#{gen-ref\ 5951}# #{src\ 6057}# (car #{var.lev\ 6075}#) (cdr #{var.lev\ 6075}#) #{maps\ 6060}#))) (lambda (#{var\ 6076}# #{maps\ 6077}#) (values (list (quote ref) #{var\ 6076}#) #{maps\ 6077}#))) (if (#{ellipsis?\ 6061}# #{e\ 6058}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 6057}#) (values (list (quote quote) #{e\ 6058}#) #{maps\ 6060}#))))) ((lambda (#{tmp\ 6082}#) ((lambda (#{tmp\ 6083}#) (if (if #{tmp\ 6083}# (apply (lambda (#{dots\ 6086}# #{e\ 6087}#) (#{ellipsis?\ 6061}# #{dots\ 6086}#)) #{tmp\ 6083}#) #f) (apply (lambda (#{dots\ 6090}# #{e\ 6091}#) (#{gen-syntax\ 5949}# #{src\ 6057}# #{e\ 6091}# #{r\ 6059}# #{maps\ 6060}# (lambda (#{x\ 6092}#) #f) #{mod\ 6062}#)) #{tmp\ 6083}#) ((lambda (#{tmp\ 6094}#) (if (if #{tmp\ 6094}# (apply (lambda (#{x\ 6098}# #{dots\ 6099}# #{y\ 6100}#) (#{ellipsis?\ 6061}# #{dots\ 6099}#)) #{tmp\ 6094}#) #f) (apply (lambda (#{x\ 6104}# #{dots\ 6105}# #{y\ 6106}#) (letrec ((#{f\ 6110}# (lambda (#{y\ 6111}# #{k\ 6112}#) ((lambda (#{tmp\ 6119}#) ((lambda (#{tmp\ 6120}#) (if (if #{tmp\ 6120}# (apply (lambda (#{dots\ 6123}# #{y\ 6124}#) (#{ellipsis?\ 6061}# #{dots\ 6123}#)) #{tmp\ 6120}#) #f) (apply (lambda (#{dots\ 6127}# #{y\ 6128}#) (#{f\ 6110}# #{y\ 6128}# (lambda (#{maps\ 6129}#) (call-with-values (lambda () (#{k\ 6112}# (cons '() #{maps\ 6129}#))) (lambda (#{x\ 6131}# #{maps\ 6132}#) (if (null? (car #{maps\ 6132}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 6057}#) (values (#{gen-mappend\ 5953}# #{x\ 6131}# (car #{maps\ 6132}#)) (cdr #{maps\ 6132}#)))))))) #{tmp\ 6120}#) ((lambda (#{_\ 6136}#) (call-with-values (lambda () (#{gen-syntax\ 5949}# #{src\ 6057}# #{y\ 6111}# #{r\ 6059}# #{maps\ 6060}# #{ellipsis?\ 6061}# #{mod\ 6062}#)) (lambda (#{y\ 6137}# #{maps\ 6138}#) (call-with-values (lambda () (#{k\ 6112}# #{maps\ 6138}#)) (lambda (#{x\ 6141}# #{maps\ 6142}#) (values (#{gen-append\ 5959}# #{x\ 6141}# #{y\ 6137}#) #{maps\ 6142}#)))))) #{tmp\ 6119}#))) ($sc-dispatch #{tmp\ 6119}# '(any . any)))) #{y\ 6111}#)))) (#{f\ 6110}# #{y\ 6106}# (lambda (#{maps\ 6113}#) (call-with-values (lambda () (#{gen-syntax\ 5949}# #{src\ 6057}# #{x\ 6104}# #{r\ 6059}# (cons '() #{maps\ 6113}#) #{ellipsis?\ 6061}# #{mod\ 6062}#)) (lambda (#{x\ 6115}# #{maps\ 6116}#) (if (null? (car #{maps\ 6116}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 6057}#) (values (#{gen-map\ 5955}# #{x\ 6115}# (car #{maps\ 6116}#)) (cdr #{maps\ 6116}#))))))))) #{tmp\ 6094}#) ((lambda (#{tmp\ 6145}#) (if #{tmp\ 6145}# (apply (lambda (#{x\ 6148}# #{y\ 6149}#) (call-with-values (lambda () (#{gen-syntax\ 5949}# #{src\ 6057}# #{x\ 6148}# #{r\ 6059}# #{maps\ 6060}# #{ellipsis?\ 6061}# #{mod\ 6062}#)) (lambda (#{x\ 6150}# #{maps\ 6151}#) (call-with-values (lambda () (#{gen-syntax\ 5949}# #{src\ 6057}# #{y\ 6149}# #{r\ 6059}# #{maps\ 6151}# #{ellipsis?\ 6061}# #{mod\ 6062}#)) (lambda (#{y\ 6154}# #{maps\ 6155}#) (values (#{gen-cons\ 5957}# #{x\ 6150}# #{y\ 6154}#) #{maps\ 6155}#)))))) #{tmp\ 6145}#) ((lambda (#{tmp\ 6158}#) (if #{tmp\ 6158}# (apply (lambda (#{e1\ 6161}# #{e2\ 6162}#) (call-with-values (lambda () (#{gen-syntax\ 5949}# #{src\ 6057}# (cons #{e1\ 6161}# #{e2\ 6162}#) #{r\ 6059}# #{maps\ 6060}# #{ellipsis?\ 6061}# #{mod\ 6062}#)) (lambda (#{e\ 6164}# #{maps\ 6165}#) (values (#{gen-vector\ 5961}# #{e\ 6164}#) #{maps\ 6165}#)))) #{tmp\ 6158}#) ((lambda (#{_\ 6169}#) (values (list 'quote #{e\ 6058}#) #{maps\ 6060}#)) #{tmp\ 6082}#))) ($sc-dispatch #{tmp\ 6082}# '#(vector (any . each-any)))))) ($sc-dispatch #{tmp\ 6082}# '(any . any))))) ($sc-dispatch #{tmp\ 6082}# '(any any . any))))) ($sc-dispatch #{tmp\ 6082}# (quote (any any))))) #{e\ 6058}#))))) (lambda (#{e\ 6171}# #{r\ 6172}# #{w\ 6173}# #{s\ 6174}# #{mod\ 6175}#) (let ((#{e\ 6182}# (#{source-wrap\ 3572}# #{e\ 6171}# #{w\ 6173}# #{s\ 6174}# #{mod\ 6175}#))) ((lambda (#{tmp\ 6183}#) ((lambda (#{tmp\ 6184}#) (if #{tmp\ 6184}# (apply (lambda (#{_\ 6187}# #{x\ 6188}#) (call-with-values (lambda () (#{gen-syntax\ 5949}# #{e\ 6182}# #{x\ 6188}# #{r\ 6172}# '() #{ellipsis?\ 3602}# #{mod\ 6175}#)) (lambda (#{e\ 6189}# #{maps\ 6190}#) (#{regen\ 5963}# #{e\ 6189}#)))) #{tmp\ 6184}#) ((lambda (#{_\ 6194}#) (syntax-violation 'syntax "bad `syntax' form" #{e\ 6182}#)) #{tmp\ 6183}#))) ($sc-dispatch #{tmp\ 6183}# (quote (any any))))) #{e\ 6182}#))))) (#{global-extend\ 3497}# 'core 'lambda (lambda (#{e\ 6195}# #{r\ 6196}# #{w\ 6197}# #{s\ 6198}# #{mod\ 6199}#) ((lambda (#{tmp\ 6205}#) ((lambda (#{tmp\ 6206}#) (if (if #{tmp\ 6206}# (apply (lambda (#{_\ 6212}# #{args\ 6213}# #{docstring\ 6214}# #{e1\ 6215}# #{e2\ 6216}#) (string? (syntax->datum #{docstring\ 6214}#))) #{tmp\ 6206}#) #f) (apply (lambda (#{_\ 6222}# #{args\ 6223}# #{docstring\ 6224}# #{e1\ 6225}# #{e2\ 6226}#) (call-with-values (lambda () (#{lambda-formals\ 3604}# #{args\ 6223}#)) (lambda (#{req\ 6227}# #{opt\ 6228}# #{rest\ 6229}# #{kw\ 6230}#) (#{chi-simple-lambda\ 3606}# #{e\ 6195}# #{r\ 6196}# #{w\ 6197}# #{s\ 6198}# #{mod\ 6199}# #{req\ 6227}# #{rest\ 6229}# (syntax->datum #{docstring\ 6224}#) (cons #{e1\ 6225}# #{e2\ 6226}#))))) #{tmp\ 6206}#) ((lambda (#{tmp\ 6236}#) (if #{tmp\ 6236}# (apply (lambda (#{_\ 6241}# #{args\ 6242}# #{e1\ 6243}# #{e2\ 6244}#) (call-with-values (lambda () (#{lambda-formals\ 3604}# #{args\ 6242}#)) (lambda (#{req\ 6245}# #{opt\ 6246}# #{rest\ 6247}# #{kw\ 6248}#) (#{chi-simple-lambda\ 3606}# #{e\ 6195}# #{r\ 6196}# #{w\ 6197}# #{s\ 6198}# #{mod\ 6199}# #{req\ 6245}# #{rest\ 6247}# #f (cons #{e1\ 6243}# #{e2\ 6244}#))))) #{tmp\ 6236}#) ((lambda (#{_\ 6255}#) (syntax-violation 'lambda "bad lambda" #{e\ 6195}#)) #{tmp\ 6205}#))) ($sc-dispatch #{tmp\ 6205}# '(any any any . each-any))))) ($sc-dispatch #{tmp\ 6205}# '(any any any any . each-any)))) #{e\ 6195}#))) (#{global-extend\ 3497}# 'core 'lambda* (lambda (#{e\ 6256}# #{r\ 6257}# #{w\ 6258}# #{s\ 6259}# #{mod\ 6260}#) ((lambda (#{tmp\ 6266}#) ((lambda (#{tmp\ 6267}#) (if #{tmp\ 6267}# (apply (lambda (#{_\ 6272}# #{args\ 6273}# #{e1\ 6274}# #{e2\ 6275}#) (call-with-values (lambda () (#{chi-lambda-case\ 3610}# #{e\ 6256}# #{r\ 6257}# #{w\ 6258}# #{s\ 6259}# #{mod\ 6260}# #{lambda*-formals\ 3608}# (list (cons #{args\ 6273}# (cons #{e1\ 6274}# #{e2\ 6275}#))))) (lambda (#{docstring\ 6277}# #{lcase\ 6278}#) (#{build-case-lambda\ 3445}# #{s\ 6259}# #{docstring\ 6277}# #{lcase\ 6278}#)))) #{tmp\ 6267}#) ((lambda (#{_\ 6282}#) (syntax-violation 'lambda "bad lambda*" #{e\ 6256}#)) #{tmp\ 6266}#))) ($sc-dispatch #{tmp\ 6266}# '(any any any . each-any)))) #{e\ 6256}#))) (#{global-extend\ 3497}# 'core 'case-lambda (lambda (#{e\ 6283}# #{r\ 6284}# #{w\ 6285}# #{s\ 6286}# #{mod\ 6287}#) ((lambda (#{tmp\ 6293}#) ((lambda (#{tmp\ 6294}#) (if #{tmp\ 6294}# (apply (lambda (#{_\ 6302}# #{args\ 6303}# #{e1\ 6304}# #{e2\ 6305}# #{args*\ 6306}# #{e1*\ 6307}# #{e2*\ 6308}#) (call-with-values (lambda () (#{chi-lambda-case\ 3610}# #{e\ 6283}# #{r\ 6284}# #{w\ 6285}# #{s\ 6286}# #{mod\ 6287}# #{lambda-formals\ 3604}# (cons (cons #{args\ 6303}# (cons #{e1\ 6304}# #{e2\ 6305}#)) (map (lambda (#{tmp\ 6312}# #{tmp\ 6311}# #{tmp\ 6310}#) (cons #{tmp\ 6310}# (cons #{tmp\ 6311}# #{tmp\ 6312}#))) #{e2*\ 6308}# #{e1*\ 6307}# #{args*\ 6306}#)))) (lambda (#{docstring\ 6314}# #{lcase\ 6315}#) (#{build-case-lambda\ 3445}# #{s\ 6286}# #{docstring\ 6314}# #{lcase\ 6315}#)))) #{tmp\ 6294}#) ((lambda (#{_\ 6319}#) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 6283}#)) #{tmp\ 6293}#))) ($sc-dispatch #{tmp\ 6293}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 6283}#))) (#{global-extend\ 3497}# 'core 'case-lambda* (lambda (#{e\ 6320}# #{r\ 6321}# #{w\ 6322}# #{s\ 6323}# #{mod\ 6324}#) ((lambda (#{tmp\ 6330}#) ((lambda (#{tmp\ 6331}#) (if #{tmp\ 6331}# (apply (lambda (#{_\ 6339}# #{args\ 6340}# #{e1\ 6341}# #{e2\ 6342}# #{args*\ 6343}# #{e1*\ 6344}# #{e2*\ 6345}#) (call-with-values (lambda () (#{chi-lambda-case\ 3610}# #{e\ 6320}# #{r\ 6321}# #{w\ 6322}# #{s\ 6323}# #{mod\ 6324}# #{lambda*-formals\ 3608}# (cons (cons #{args\ 6340}# (cons #{e1\ 6341}# #{e2\ 6342}#)) (map (lambda (#{tmp\ 6349}# #{tmp\ 6348}# #{tmp\ 6347}#) (cons #{tmp\ 6347}# (cons #{tmp\ 6348}# #{tmp\ 6349}#))) #{e2*\ 6345}# #{e1*\ 6344}# #{args*\ 6343}#)))) (lambda (#{docstring\ 6351}# #{lcase\ 6352}#) (#{build-case-lambda\ 3445}# #{s\ 6323}# #{docstring\ 6351}# #{lcase\ 6352}#)))) #{tmp\ 6331}#) ((lambda (#{_\ 6356}#) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 6320}#)) #{tmp\ 6330}#))) ($sc-dispatch #{tmp\ 6330}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 6320}#))) (#{global-extend\ 3497}# 'core 'let (letrec ((#{chi-let\ 6358}# (lambda (#{e\ 6359}# #{r\ 6360}# #{w\ 6361}# #{s\ 6362}# #{mod\ 6363}# #{constructor\ 6364}# #{ids\ 6365}# #{vals\ 6366}# #{exps\ 6367}#) (if (not (#{valid-bound-ids?\ 3564}# #{ids\ 6365}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 6359}#) (let ((#{labels\ 6379}# (#{gen-labels\ 3519}# #{ids\ 6365}#)) (#{new-vars\ 6380}# (map #{gen-var\ 3614}# #{ids\ 6365}#))) (let ((#{nw\ 6383}# (#{make-binding-wrap\ 3548}# #{ids\ 6365}# #{labels\ 6379}# #{w\ 6361}#)) (#{nr\ 6384}# (#{extend-var-env\ 3491}# #{labels\ 6379}# #{new-vars\ 6380}# #{r\ 6360}#))) (#{constructor\ 6364}# #{s\ 6362}# (map syntax->datum #{ids\ 6365}#) #{new-vars\ 6380}# (map (lambda (#{x\ 6385}#) (#{chi\ 3586}# #{x\ 6385}# #{r\ 6360}# #{w\ 6361}# #{mod\ 6363}#)) #{vals\ 6366}#) (#{chi-body\ 3594}# #{exps\ 6367}# (#{source-wrap\ 3572}# #{e\ 6359}# #{nw\ 6383}# #{s\ 6362}# #{mod\ 6363}#) #{nr\ 6384}# #{nw\ 6383}# #{mod\ 6363}#)))))))) (lambda (#{e\ 6387}# #{r\ 6388}# #{w\ 6389}# #{s\ 6390}# #{mod\ 6391}#) ((lambda (#{tmp\ 6397}#) ((lambda (#{tmp\ 6398}#) (if (if #{tmp\ 6398}# (apply (lambda (#{_\ 6404}# #{id\ 6405}# #{val\ 6406}# #{e1\ 6407}# #{e2\ 6408}#) (and-map #{id?\ 3501}# #{id\ 6405}#)) #{tmp\ 6398}#) #f) (apply (lambda (#{_\ 6415}# #{id\ 6416}# #{val\ 6417}# #{e1\ 6418}# #{e2\ 6419}#) (#{chi-let\ 6358}# #{e\ 6387}# #{r\ 6388}# #{w\ 6389}# #{s\ 6390}# #{mod\ 6391}# #{build-let\ 3455}# #{id\ 6416}# #{val\ 6417}# (cons #{e1\ 6418}# #{e2\ 6419}#))) #{tmp\ 6398}#) ((lambda (#{tmp\ 6423}#) (if (if #{tmp\ 6423}# (apply (lambda (#{_\ 6430}# #{f\ 6431}# #{id\ 6432}# #{val\ 6433}# #{e1\ 6434}# #{e2\ 6435}#) (if (#{id?\ 3501}# #{f\ 6431}#) (and-map #{id?\ 3501}# #{id\ 6432}#) #f)) #{tmp\ 6423}#) #f) (apply (lambda (#{_\ 6445}# #{f\ 6446}# #{id\ 6447}# #{val\ 6448}# #{e1\ 6449}# #{e2\ 6450}#) (#{chi-let\ 6358}# #{e\ 6387}# #{r\ 6388}# #{w\ 6389}# #{s\ 6390}# #{mod\ 6391}# #{build-named-let\ 3457}# (cons #{f\ 6446}# #{id\ 6447}#) #{val\ 6448}# (cons #{e1\ 6449}# #{e2\ 6450}#))) #{tmp\ 6423}#) ((lambda (#{_\ 6455}#) (syntax-violation 'let "bad let" (#{source-wrap\ 3572}# #{e\ 6387}# #{w\ 6389}# #{s\ 6390}# #{mod\ 6391}#))) #{tmp\ 6397}#))) ($sc-dispatch #{tmp\ 6397}# '(any any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 6397}# '(any #(each (any any)) any . each-any)))) #{e\ 6387}#)))) (#{global-extend\ 3497}# 'core 'letrec (lambda (#{e\ 6456}# #{r\ 6457}# #{w\ 6458}# #{s\ 6459}# #{mod\ 6460}#) ((lambda (#{tmp\ 6466}#) ((lambda (#{tmp\ 6467}#) (if (if #{tmp\ 6467}# (apply (lambda (#{_\ 6473}# #{id\ 6474}# #{val\ 6475}# #{e1\ 6476}# #{e2\ 6477}#) (and-map #{id?\ 3501}# #{id\ 6474}#)) #{tmp\ 6467}#) #f) (apply (lambda (#{_\ 6484}# #{id\ 6485}# #{val\ 6486}# #{e1\ 6487}# #{e2\ 6488}#) (let ((#{ids\ 6490}# #{id\ 6485}#)) (if (not (#{valid-bound-ids?\ 3564}# #{ids\ 6490}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 6456}#) (let ((#{labels\ 6494}# (#{gen-labels\ 3519}# #{ids\ 6490}#)) (#{new-vars\ 6495}# (map #{gen-var\ 3614}# #{ids\ 6490}#))) (let ((#{w\ 6498}# (#{make-binding-wrap\ 3548}# #{ids\ 6490}# #{labels\ 6494}# #{w\ 6458}#)) (#{r\ 6499}# (#{extend-var-env\ 3491}# #{labels\ 6494}# #{new-vars\ 6495}# #{r\ 6457}#))) (#{build-letrec\ 3459}# #{s\ 6459}# (map syntax->datum #{ids\ 6490}#) #{new-vars\ 6495}# (map (lambda (#{x\ 6500}#) (#{chi\ 3586}# #{x\ 6500}# #{r\ 6499}# #{w\ 6498}# #{mod\ 6460}#)) #{val\ 6486}#) (#{chi-body\ 3594}# (cons #{e1\ 6487}# #{e2\ 6488}#) (#{source-wrap\ 3572}# #{e\ 6456}# #{w\ 6498}# #{s\ 6459}# #{mod\ 6460}#) #{r\ 6499}# #{w\ 6498}# #{mod\ 6460}#))))))) #{tmp\ 6467}#) ((lambda (#{_\ 6505}#) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 3572}# #{e\ 6456}# #{w\ 6458}# #{s\ 6459}# #{mod\ 6460}#))) #{tmp\ 6466}#))) ($sc-dispatch #{tmp\ 6466}# '(any #(each (any any)) any . each-any)))) #{e\ 6456}#))) (#{global-extend\ 3497}# 'core 'set! (lambda (#{e\ 6506}# #{r\ 6507}# #{w\ 6508}# #{s\ 6509}# #{mod\ 6510}#) ((lambda (#{tmp\ 6516}#) ((lambda (#{tmp\ 6517}#) (if (if #{tmp\ 6517}# (apply (lambda (#{_\ 6521}# #{id\ 6522}# #{val\ 6523}#) (#{id?\ 3501}# #{id\ 6522}#)) #{tmp\ 6517}#) #f) (apply (lambda (#{_\ 6527}# #{id\ 6528}# #{val\ 6529}#) (let ((#{val\ 6532}# (#{chi\ 3586}# #{val\ 6529}# #{r\ 6507}# #{w\ 6508}# #{mod\ 6510}#)) (#{n\ 6533}# (#{id-var-name\ 3558}# #{id\ 6528}# #{w\ 6508}#))) (let ((#{b\ 6535}# (#{lookup\ 3495}# #{n\ 6533}# #{r\ 6507}# #{mod\ 6510}#))) (let ((#{atom-key\ 6538}# (#{binding-type\ 3484}# #{b\ 6535}#))) (if (memv #{atom-key\ 6538}# '(lexical)) (#{build-lexical-assignment\ 3431}# #{s\ 6509}# (syntax->datum #{id\ 6528}#) (#{binding-value\ 3486}# #{b\ 6535}#) #{val\ 6532}#) (if (memv #{atom-key\ 6538}# '(global)) (#{build-global-assignment\ 3437}# #{s\ 6509}# #{n\ 6533}# #{val\ 6532}# #{mod\ 6510}#) (if (memv #{atom-key\ 6538}# '(displaced-lexical)) (syntax-violation 'set! "identifier out of context" (#{wrap\ 3570}# #{id\ 6528}# #{w\ 6508}# #{mod\ 6510}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 3572}# #{e\ 6506}# #{w\ 6508}# #{s\ 6509}# #{mod\ 6510}#))))))))) #{tmp\ 6517}#) ((lambda (#{tmp\ 6543}#) (if #{tmp\ 6543}# (apply (lambda (#{_\ 6548}# #{head\ 6549}# #{tail\ 6550}# #{val\ 6551}#) (call-with-values (lambda () (#{syntax-type\ 3582}# #{head\ 6549}# #{r\ 6507}# '(()) #f #f #{mod\ 6510}# #t)) (lambda (#{type\ 6554}# #{value\ 6555}# #{ee\ 6556}# #{ww\ 6557}# #{ss\ 6558}# #{modmod\ 6559}#) (if (memv #{type\ 6554}# '(module-ref)) (let ((#{val\ 6568}# (#{chi\ 3586}# #{val\ 6551}# #{r\ 6507}# #{w\ 6508}# #{mod\ 6510}#))) (call-with-values (lambda () (#{value\ 6555}# (cons #{head\ 6549}# #{tail\ 6550}#))) (lambda (#{id\ 6570}# #{mod\ 6571}#) (#{build-global-assignment\ 3437}# #{s\ 6509}# #{id\ 6570}# #{val\ 6568}# #{mod\ 6571}#)))) (#{build-application\ 3423}# #{s\ 6509}# (#{chi\ 3586}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i6560" "i6561" "i6562" "i6563" "i6564" "i6565")) #(ribcage #(_ head tail val) #((top) (top) (top) (top)) #("i6544" "i6545" "i6546" "i6547")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i6511" "i6512" "i6513" "i6514" "i6515")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)) #{head\ 6549}#) #{r\ 6507}# #{w\ 6508}# #{mod\ 6510}#) (map (lambda (#{e\ 6575}#) (#{chi\ 3586}# #{e\ 6575}# #{r\ 6507}# #{w\ 6508}# #{mod\ 6510}#)) (append #{tail\ 6550}# (list #{val\ 6551}#)))))))) #{tmp\ 6543}#) ((lambda (#{_\ 6579}#) (syntax-violation 'set! "bad set!" (#{source-wrap\ 3572}# #{e\ 6506}# #{w\ 6508}# #{s\ 6509}# #{mod\ 6510}#))) #{tmp\ 6516}#))) ($sc-dispatch #{tmp\ 6516}# '(any (any . each-any) any))))) ($sc-dispatch #{tmp\ 6516}# '(any any any)))) #{e\ 6506}#))) (#{global-extend\ 3497}# 'module-ref '@ (lambda (#{e\ 6580}#) ((lambda (#{tmp\ 6582}#) ((lambda (#{tmp\ 6583}#) (if (if #{tmp\ 6583}# (apply (lambda (#{_\ 6587}# #{mod\ 6588}# #{id\ 6589}#) (if (and-map #{id?\ 3501}# #{mod\ 6588}#) (#{id?\ 3501}# #{id\ 6589}#) #f)) #{tmp\ 6583}#) #f) (apply (lambda (#{_\ 6596}# #{mod\ 6597}# #{id\ 6598}#) (values (syntax->datum #{id\ 6598}#) (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(_ mod id) #((top) (top) (top)) #("i6593" "i6594" "i6595")) #(ribcage () () ()) #(ribcage #(e) #((top)) #("i6581")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)) #{mod\ 6597}#)))) #{tmp\ 6583}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 6582}#))) ($sc-dispatch #{tmp\ 6582}# '(any each-any any)))) #{e\ 6580}#))) (#{global-extend\ 3497}# 'module-ref '@@ (lambda (#{e\ 6600}#) ((lambda (#{tmp\ 6602}#) ((lambda (#{tmp\ 6603}#) (if (if #{tmp\ 6603}# (apply (lambda (#{_\ 6607}# #{mod\ 6608}# #{id\ 6609}#) (if (and-map #{id?\ 3501}# #{mod\ 6608}#) (#{id?\ 3501}# #{id\ 6609}#) #f)) #{tmp\ 6603}#) #f) (apply (lambda (#{_\ 6616}# #{mod\ 6617}# #{id\ 6618}#) (values (syntax->datum #{id\ 6618}#) (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(_ mod id) #((top) (top) (top)) #("i6613" "i6614" "i6615")) #(ribcage () () ()) #(ribcage #(e) #((top)) #("i6601")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)) #{mod\ 6617}#)))) #{tmp\ 6603}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 6602}#))) ($sc-dispatch #{tmp\ 6602}# '(any each-any any)))) #{e\ 6600}#))) (#{global-extend\ 3497}# 'core 'if (lambda (#{e\ 6620}# #{r\ 6621}# #{w\ 6622}# #{s\ 6623}# #{mod\ 6624}#) ((lambda (#{tmp\ 6630}#) ((lambda (#{tmp\ 6631}#) (if #{tmp\ 6631}# (apply (lambda (#{_\ 6635}# #{test\ 6636}# #{then\ 6637}#) (#{build-conditional\ 3425}# #{s\ 6623}# (#{chi\ 3586}# #{test\ 6636}# #{r\ 6621}# #{w\ 6622}# #{mod\ 6624}#) (#{chi\ 3586}# #{then\ 6637}# #{r\ 6621}# #{w\ 6622}# #{mod\ 6624}#) (#{build-void\ 3421}# #f))) #{tmp\ 6631}#) ((lambda (#{tmp\ 6639}#) (if #{tmp\ 6639}# (apply (lambda (#{_\ 6644}# #{test\ 6645}# #{then\ 6646}# #{else\ 6647}#) (#{build-conditional\ 3425}# #{s\ 6623}# (#{chi\ 3586}# #{test\ 6645}# #{r\ 6621}# #{w\ 6622}# #{mod\ 6624}#) (#{chi\ 3586}# #{then\ 6646}# #{r\ 6621}# #{w\ 6622}# #{mod\ 6624}#) (#{chi\ 3586}# #{else\ 6647}# #{r\ 6621}# #{w\ 6622}# #{mod\ 6624}#))) #{tmp\ 6639}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 6630}#))) ($sc-dispatch #{tmp\ 6630}# '(any any any any))))) ($sc-dispatch #{tmp\ 6630}# '(any any any)))) #{e\ 6620}#))) (#{global-extend\ 3497}# 'core 'with-fluids (lambda (#{e\ 6648}# #{r\ 6649}# #{w\ 6650}# #{s\ 6651}# #{mod\ 6652}#) ((lambda (#{tmp\ 6658}#) ((lambda (#{tmp\ 6659}#) (if #{tmp\ 6659}# (apply (lambda (#{_\ 6665}# #{fluid\ 6666}# #{val\ 6667}# #{b\ 6668}# #{b*\ 6669}#) (#{build-dynlet\ 3427}# #{s\ 6651}# (map (lambda (#{x\ 6670}#) (#{chi\ 3586}# #{x\ 6670}# #{r\ 6649}# #{w\ 6650}# #{mod\ 6652}#)) #{fluid\ 6666}#) (map (lambda (#{x\ 6673}#) (#{chi\ 3586}# #{x\ 6673}# #{r\ 6649}# #{w\ 6650}# #{mod\ 6652}#)) #{val\ 6667}#) (#{chi-body\ 3594}# (cons #{b\ 6668}# #{b*\ 6669}#) (#{source-wrap\ 3572}# #{e\ 6648}# #{w\ 6650}# #{s\ 6651}# #{mod\ 6652}#) #{r\ 6649}# #{w\ 6650}# #{mod\ 6652}#))) #{tmp\ 6659}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 6658}#))) ($sc-dispatch #{tmp\ 6658}# '(any #(each (any any)) any . each-any)))) #{e\ 6648}#))) (#{global-extend\ 3497}# 'begin 'begin '()) (#{global-extend\ 3497}# 'define 'define '()) (#{global-extend\ 3497}# 'define-syntax 'define-syntax '()) (#{global-extend\ 3497}# 'eval-when 'eval-when '()) (#{global-extend\ 3497}# 'core 'syntax-case (letrec ((#{gen-syntax-case\ 6684}# (lambda (#{x\ 6685}# #{keys\ 6686}# #{clauses\ 6687}# #{r\ 6688}# #{mod\ 6689}#) (if (null? #{clauses\ 6687}#) (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f 'syntax-violation) (list (#{build-data\ 3451}# #f #f) (#{build-data\ 3451}# #f "source expression failed to match any pattern") #{x\ 6685}#)) ((lambda (#{tmp\ 6699}#) ((lambda (#{tmp\ 6700}#) (if #{tmp\ 6700}# (apply (lambda (#{pat\ 6703}# #{exp\ 6704}#) (if (if (#{id?\ 3501}# #{pat\ 6703}#) (and-map (lambda (#{x\ 6707}#) (not (#{free-id=?\ 3560}# #{pat\ 6703}# #{x\ 6707}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i6701" "i6702")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i6690" "i6691" "i6692" "i6693" "i6694")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i6683" "i6681" "i6679" "i6677")) #(ribcage (lambda-var-list gen-var strip chi-lambda-case lambda*-formals chi-simple-lambda lambda-formals ellipsis? chi-void eval-local-transformer chi-local-syntax chi-body chi-macro chi-application chi-expr chi chi-top syntax-type chi-when-list chi-install-global chi-top-sequence chi-sequence source-wrap wrap bound-id-member? distinct-bound-ids? valid-bound-ids? bound-id=? free-id=? id-var-name same-marks? join-marks join-wraps smart-append make-binding-wrap extend-ribcage! make-empty-ribcage new-mark anti-mark the-anti-mark top-marked? top-wrap empty-wrap set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels gen-label make-rename rename-marks rename-new rename-old subst-rename? wrap-subst wrap-marks make-wrap id-sym-name&marks id-sym-name id? nonsymbol-id? global-extend lookup macros-only-env extend-var-env extend-env null-env binding-value binding-type make-binding arg-check source-annotation no-source set-syntax-object-module! set-syntax-object-wrap! set-syntax-object-expression! syntax-object-module syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object build-lexical-var build-letrec build-named-let build-let build-sequence build-data build-primref build-lambda-case build-case-lambda build-simple-lambda build-global-definition maybe-name-value! build-global-assignment build-global-reference analyze-variable build-lexical-assignment build-lexical-reference build-dynlet build-conditional build-application build-void decorate-source get-global-definition-hook put-global-definition-hook gensym-hook local-eval-hook top-level-eval-hook fx< fx= fx- fx+ *mode* noexpand) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i3615" "i3613" "i3611" "i3609" "i3607" "i3605" "i3603" "i3601" "i3599" "i3597" "i3595" "i3593" "i3591" "i3589" "i3587" "i3585" "i3583" "i3581" "i3579" "i3577" "i3575" "i3573" "i3571" "i3569" "i3567" "i3565" "i3563" "i3561" "i3559" "i3557" "i3555" "i3553" "i3551" "i3549" "i3547" "i3545" "i3544" "i3543" "i3541" "i3540" "i3539" "i3538" "i3537" "i3535" "i3533" "i3531" "i3529" "i3527" "i3525" "i3523" "i3521" "i3518" "i3516" "i3515" "i3514" "i3513" "i3512" "i3511" "i3509" "i3507" "i3505" "i3503" "i3502" "i3500" "i3498" "i3496" "i3494" "i3492" "i3490" "i3488" "i3487" "i3485" "i3483" "i3482" "i3481" "i3479" "i3478" "i3476" "i3474" "i3472" "i3470" "i3468" "i3466" "i3464" "i3462" "i3460" "i3458" "i3456" "i3454" "i3452" "i3450" "i3448" "i3446" "i3444" "i3442" "i3440" "i3438" "i3436" "i3434" "i3432" "i3430" "i3428" "i3426" "i3424" "i3422" "i3420" "i3418" "i3416" "i3414" "i3413" "i3411" "i3409" "i3407" "i3405" "i3403" "i3401" "i3399" "i3397")) #(ribcage (define-structure and-map*) ((top) (top)) ("i3300" "i3298"))) (hygiene guile)) #{keys\ 6686}#)) #f) (let ((#{labels\ 6711}# (list (#{gen-label\ 3517}#))) (#{var\ 6712}# (#{gen-var\ 3614}# #{pat\ 6703}#))) (#{build-application\ 3423}# #f (#{build-simple-lambda\ 3443}# #f (list (syntax->datum #{pat\ 6703}#)) #f (list #{var\ 6712}#) #f (#{chi\ 3586}# #{exp\ 6704}# (#{extend-env\ 3489}# #{labels\ 6711}# (list (cons 'syntax (cons #{var\ 6712}# 0))) #{r\ 6688}#) (#{make-binding-wrap\ 3548}# (list #{pat\ 6703}#) #{labels\ 6711}# '(())) #{mod\ 6689}#)) (list #{x\ 6685}#))) (#{gen-clause\ 6682}# #{x\ 6685}# #{keys\ 6686}# (cdr #{clauses\ 6687}#) #{r\ 6688}# #{pat\ 6703}# #t #{exp\ 6704}# #{mod\ 6689}#))) #{tmp\ 6700}#) ((lambda (#{tmp\ 6718}#) (if #{tmp\ 6718}# (apply (lambda (#{pat\ 6722}# #{fender\ 6723}# #{exp\ 6724}#) (#{gen-clause\ 6682}# #{x\ 6685}# #{keys\ 6686}# (cdr #{clauses\ 6687}#) #{r\ 6688}# #{pat\ 6722}# #{fender\ 6723}# #{exp\ 6724}# #{mod\ 6689}#)) #{tmp\ 6718}#) ((lambda (#{_\ 6726}#) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 6687}#))) #{tmp\ 6699}#))) ($sc-dispatch #{tmp\ 6699}# '(any any any))))) ($sc-dispatch #{tmp\ 6699}# (quote (any any))))) (car #{clauses\ 6687}#))))) (#{gen-clause\ 6682}# (lambda (#{x\ 6727}# #{keys\ 6728}# #{clauses\ 6729}# #{r\ 6730}# #{pat\ 6731}# #{fender\ 6732}# #{exp\ 6733}# #{mod\ 6734}#) (call-with-values (lambda () (#{convert-pattern\ 6678}# #{pat\ 6731}# #{keys\ 6728}#)) (lambda (#{p\ 6743}# #{pvars\ 6744}#) (if (not (#{distinct-bound-ids?\ 3566}# (map car #{pvars\ 6744}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 6731}#) (if (not (and-map (lambda (#{x\ 6751}#) (not (#{ellipsis?\ 3602}# (car #{x\ 6751}#)))) #{pvars\ 6744}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 6731}#) (let ((#{y\ 6755}# (#{gen-var\ 3614}# (quote tmp)))) (#{build-application\ 3423}# #f (#{build-simple-lambda\ 3443}# #f (list (quote tmp)) #f (list #{y\ 6755}#) #f (let ((#{y\ 6759}# (#{build-lexical-reference\ 3429}# 'value #f 'tmp #{y\ 6755}#))) (#{build-conditional\ 3425}# #f ((lambda (#{tmp\ 6762}#) ((lambda (#{tmp\ 6763}#) (if #{tmp\ 6763}# (apply (lambda () #{y\ 6759}#) #{tmp\ 6763}#) ((lambda (#{_\ 6765}#) (#{build-conditional\ 3425}# #f #{y\ 6759}# (#{build-dispatch-call\ 6680}# #{pvars\ 6744}# #{fender\ 6732}# #{y\ 6759}# #{r\ 6730}# #{mod\ 6734}#) (#{build-data\ 3451}# #f #f))) #{tmp\ 6762}#))) ($sc-dispatch #{tmp\ 6762}# '#(atom #t)))) #{fender\ 6732}#) (#{build-dispatch-call\ 6680}# #{pvars\ 6744}# #{exp\ 6733}# #{y\ 6759}# #{r\ 6730}# #{mod\ 6734}#) (#{gen-syntax-case\ 6684}# #{x\ 6727}# #{keys\ 6728}# #{clauses\ 6729}# #{r\ 6730}# #{mod\ 6734}#)))) (list (if (eq? #{p\ 6743}# (quote any)) (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f 'list) (list #{x\ 6727}#)) (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f '$sc-dispatch) (list #{x\ 6727}# (#{build-data\ 3451}# #f #{p\ 6743}#))))))))))))) (#{build-dispatch-call\ 6680}# (lambda (#{pvars\ 6773}# #{exp\ 6774}# #{y\ 6775}# #{r\ 6776}# #{mod\ 6777}#) (let ((#{ids\ 6785}# (map car #{pvars\ 6773}#)) (#{levels\ 6786}# (map cdr #{pvars\ 6773}#))) (let ((#{labels\ 6789}# (#{gen-labels\ 3519}# #{ids\ 6785}#)) (#{new-vars\ 6790}# (map #{gen-var\ 3614}# #{ids\ 6785}#))) (#{build-application\ 3423}# #f (#{build-primref\ 3449}# #f (quote apply)) (list (#{build-simple-lambda\ 3443}# #f (map syntax->datum #{ids\ 6785}#) #f #{new-vars\ 6790}# #f (#{chi\ 3586}# #{exp\ 6774}# (#{extend-env\ 3489}# #{labels\ 6789}# (map (lambda (#{var\ 6794}# #{level\ 6795}#) (cons 'syntax (cons #{var\ 6794}# #{level\ 6795}#))) #{new-vars\ 6790}# (map cdr #{pvars\ 6773}#)) #{r\ 6776}#) (#{make-binding-wrap\ 3548}# #{ids\ 6785}# #{labels\ 6789}# '(())) #{mod\ 6777}#)) #{y\ 6775}#)))))) (#{convert-pattern\ 6678}# (lambda (#{pattern\ 6801}# #{keys\ 6802}#) (letrec ((#{cvt\ 6808}# (lambda (#{p\ 6809}# #{n\ 6810}# #{ids\ 6811}#) (if (#{id?\ 3501}# #{p\ 6809}#) (if (#{bound-id-member?\ 3568}# #{p\ 6809}# #{keys\ 6802}#) (values (vector (quote free-id) #{p\ 6809}#) #{ids\ 6811}#) (values 'any (cons (cons #{p\ 6809}# #{n\ 6810}#) #{ids\ 6811}#))) ((lambda (#{tmp\ 6815}#) ((lambda (#{tmp\ 6816}#) (if (if #{tmp\ 6816}# (apply (lambda (#{x\ 6819}# #{dots\ 6820}#) (#{ellipsis?\ 3602}# #{dots\ 6820}#)) #{tmp\ 6816}#) #f) (apply (lambda (#{x\ 6823}# #{dots\ 6824}#) (call-with-values (lambda () (#{cvt\ 6808}# #{x\ 6823}# (#{fx+\ 3402}# #{n\ 6810}# 1) #{ids\ 6811}#)) (lambda (#{p\ 6825}# #{ids\ 6826}#) (values (if (eq? #{p\ 6825}# 'any) 'each-any (vector 'each #{p\ 6825}#)) #{ids\ 6826}#)))) #{tmp\ 6816}#) ((lambda (#{tmp\ 6829}#) (if (if #{tmp\ 6829}# (apply (lambda (#{x\ 6833}# #{dots\ 6834}# #{ys\ 6835}#) (#{ellipsis?\ 3602}# #{dots\ 6834}#)) #{tmp\ 6829}#) #f) (apply (lambda (#{x\ 6839}# #{dots\ 6840}# #{ys\ 6841}#) (call-with-values (lambda () (#{cvt*\ 6806}# #{ys\ 6841}# #{n\ 6810}# #{ids\ 6811}#)) (lambda (#{ys\ 6843}# #{ids\ 6844}#) (call-with-values (lambda () (#{cvt\ 6808}# #{x\ 6839}# (+ #{n\ 6810}# 1) #{ids\ 6844}#)) (lambda (#{x\ 6847}# #{ids\ 6848}#) (values (list->vector (cons 'each+ (cons #{x\ 6847}# (cons (reverse #{ys\ 6843}#) '(()))))) #{ids\ 6848}#)))))) #{tmp\ 6829}#) ((lambda (#{tmp\ 6852}#) (if #{tmp\ 6852}# (apply (lambda (#{x\ 6855}# #{y\ 6856}#) (call-with-values (lambda () (#{cvt\ 6808}# #{y\ 6856}# #{n\ 6810}# #{ids\ 6811}#)) (lambda (#{y\ 6857}# #{ids\ 6858}#) (call-with-values (lambda () (#{cvt\ 6808}# #{x\ 6855}# #{n\ 6810}# #{ids\ 6858}#)) (lambda (#{x\ 6861}# #{ids\ 6862}#) (values (cons #{x\ 6861}# #{y\ 6857}#) #{ids\ 6862}#)))))) #{tmp\ 6852}#) ((lambda (#{tmp\ 6865}#) (if #{tmp\ 6865}# (apply (lambda () (values '() #{ids\ 6811}#)) #{tmp\ 6865}#) ((lambda (#{tmp\ 6866}#) (if #{tmp\ 6866}# (apply (lambda (#{x\ 6868}#) (call-with-values (lambda () (#{cvt\ 6808}# #{x\ 6868}# #{n\ 6810}# #{ids\ 6811}#)) (lambda (#{p\ 6870}# #{ids\ 6871}#) (values (vector 'vector #{p\ 6870}#) #{ids\ 6871}#)))) #{tmp\ 6866}#) ((lambda (#{x\ 6875}#) (values (vector 'atom (#{strip\ 3612}# #{p\ 6809}# '(()))) #{ids\ 6811}#)) #{tmp\ 6815}#))) ($sc-dispatch #{tmp\ 6815}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 6815}# '())))) ($sc-dispatch #{tmp\ 6815}# '(any . any))))) ($sc-dispatch #{tmp\ 6815}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 6815}# '(any any)))) #{p\ 6809}#)))) (#{cvt*\ 6806}# (lambda (#{p*\ 6877}# #{n\ 6878}# #{ids\ 6879}#) (if (null? #{p*\ 6877}#) (values (quote ()) #{ids\ 6879}#) (call-with-values (lambda () (#{cvt*\ 6806}# (cdr #{p*\ 6877}#) #{n\ 6878}# #{ids\ 6879}#)) (lambda (#{y\ 6883}# #{ids\ 6884}#) (call-with-values (lambda () (#{cvt\ 6808}# (car #{p*\ 6877}#) #{n\ 6878}# #{ids\ 6884}#)) (lambda (#{x\ 6887}# #{ids\ 6888}#) (values (cons #{x\ 6887}# #{y\ 6883}#) #{ids\ 6888}#))))))))) (#{cvt\ 6808}# #{pattern\ 6801}# 0 (quote ())))))) (lambda (#{e\ 6891}# #{r\ 6892}# #{w\ 6893}# #{s\ 6894}# #{mod\ 6895}#) (let ((#{e\ 6902}# (#{source-wrap\ 3572}# #{e\ 6891}# #{w\ 6893}# #{s\ 6894}# #{mod\ 6895}#))) ((lambda (#{tmp\ 6903}#) ((lambda (#{tmp\ 6904}#) (if #{tmp\ 6904}# (apply (lambda (#{_\ 6909}# #{val\ 6910}# #{key\ 6911}# #{m\ 6912}#) (if (and-map (lambda (#{x\ 6913}#) (if (#{id?\ 3501}# #{x\ 6913}#) (not (#{ellipsis?\ 3602}# #{x\ 6913}#)) #f)) #{key\ 6911}#) (let ((#{x\ 6919}# (#{gen-var\ 3614}# (quote tmp)))) (#{build-application\ 3423}# #{s\ 6894}# (#{build-simple-lambda\ 3443}# #f (list (quote tmp)) #f (list #{x\ 6919}#) #f (#{gen-syntax-case\ 6684}# (#{build-lexical-reference\ 3429}# 'value #f 'tmp #{x\ 6919}#) #{key\ 6911}# #{m\ 6912}# #{r\ 6892}# #{mod\ 6895}#)) (list (#{chi\ 3586}# #{val\ 6910}# #{r\ 6892}# '(()) #{mod\ 6895}#)))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 6902}#))) #{tmp\ 6904}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 6903}#))) ($sc-dispatch #{tmp\ 6903}# '(any any each-any . each-any)))) #{e\ 6902}#))))) (set! macroexpand (lambda (#{x\ 6925}# . #{rest\ 6926}#) (if (if (pair? #{x\ 6925}#) (equal? (car #{x\ 6925}#) #{noexpand\ 3398}#) #f) (cadr #{x\ 6925}#) (let ((#{m\ 6933}# (if (null? #{rest\ 6926}#) 'e (car #{rest\ 6926}#))) (#{esew\ 6934}# (if (let ((#{t\ 6937}# (null? #{rest\ 6926}#))) (if #{t\ 6937}# #{t\ 6937}# (null? (cdr #{rest\ 6926}#)))) '(eval) (cadr #{rest\ 6926}#)))) (with-fluids ((#{*mode*\ 3400}# #{m\ 6933}#)) (#{chi-top\ 3584}# #{x\ 6925}# '() '((top)) #{m\ 6933}# #{esew\ 6934}# (cons 'hygiene (module-name (current-module))))))))) (set! identifier? (lambda (#{x\ 6941}#) (#{nonsymbol-id?\ 3499}# #{x\ 6941}#))) (set! datum->syntax (lambda (#{id\ 6943}# #{datum\ 6944}#) (#{make-syntax-object\ 3463}# #{datum\ 6944}# (#{syntax-object-wrap\ 3469}# #{id\ 6943}#) #f))) (set! syntax->datum (lambda (#{x\ 6947}#) (#{strip\ 3612}# #{x\ 6947}# (quote (()))))) (set! generate-temporaries (lambda (#{ls\ 6950}#) (begin (let ((#{x\ 6954}# #{ls\ 6950}#)) (if (not (list? #{x\ 6954}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 6954}#))) (map (lambda (#{x\ 6955}#) (#{wrap\ 3570}# (gensym) (quote ((top))) #f)) #{ls\ 6950}#)))) (set! free-identifier=? (lambda (#{x\ 6959}# #{y\ 6960}#) (begin (let ((#{x\ 6965}# #{x\ 6959}#)) (if (not (#{nonsymbol-id?\ 3499}# #{x\ 6965}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 6965}#))) (let ((#{x\ 6968}# #{y\ 6960}#)) (if (not (#{nonsymbol-id?\ 3499}# #{x\ 6968}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 6968}#))) (#{free-id=?\ 3560}# #{x\ 6959}# #{y\ 6960}#)))) (set! bound-identifier=? (lambda (#{x\ 6969}# #{y\ 6970}#) (begin (let ((#{x\ 6975}# #{x\ 6969}#)) (if (not (#{nonsymbol-id?\ 3499}# #{x\ 6975}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 6975}#))) (let ((#{x\ 6978}# #{y\ 6970}#)) (if (not (#{nonsymbol-id?\ 3499}# #{x\ 6978}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 6978}#))) (#{bound-id=?\ 3562}# #{x\ 6969}# #{y\ 6970}#)))) (set! syntax-violation (lambda (#{who\ 6979}# #{message\ 6980}# #{form\ 6981}# . #{subform\ 6982}#) (begin (let ((#{x\ 6989}# #{who\ 6979}#)) (if (not ((lambda (#{x\ 6990}#) (let ((#{t\ 6994}# (not #{x\ 6990}#))) (if #{t\ 6994}# #{t\ 6994}# (let ((#{t\ 6997}# (string? #{x\ 6990}#))) (if #{t\ 6997}# #{t\ 6997}# (symbol? #{x\ 6990}#)))))) #{x\ 6989}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 6989}#))) (let ((#{x\ 7001}# #{message\ 6980}#)) (if (not (string? #{x\ 7001}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 7001}#))) (scm-error 'syntax-error 'macroexpand (string-append (if #{who\ 6979}# "~a: " "") "~a " (if (null? #{subform\ 6982}#) "in ~a" "in subform `~s' of `~s'")) (let ((#{tail\ 7003}# (cons #{message\ 6980}# (map (lambda (#{x\ 7004}#) (#{strip\ 3612}# #{x\ 7004}# (quote (())))) (append #{subform\ 6982}# (list #{form\ 6981}#)))))) (if #{who\ 6979}# (cons #{who\ 6979}# #{tail\ 7003}#) #{tail\ 7003}#)) #f)))) (letrec ((#{match\ 7020}# (lambda (#{e\ 7021}# #{p\ 7022}# #{w\ 7023}# #{r\ 7024}# #{mod\ 7025}#) (if (not #{r\ 7024}#) #f (if (eq? #{p\ 7022}# (quote any)) (cons (#{wrap\ 3570}# #{e\ 7021}# #{w\ 7023}# #{mod\ 7025}#) #{r\ 7024}#) (if (#{syntax-object?\ 3465}# #{e\ 7021}#) (#{match*\ 7018}# (#{syntax-object-expression\ 3467}# #{e\ 7021}#) #{p\ 7022}# (#{join-wraps\ 3552}# #{w\ 7023}# (#{syntax-object-wrap\ 3469}# #{e\ 7021}#)) #{r\ 7024}# (#{syntax-object-module\ 3471}# #{e\ 7021}#)) (#{match*\ 7018}# #{e\ 7021}# #{p\ 7022}# #{w\ 7023}# #{r\ 7024}# #{mod\ 7025}#)))))) (#{match*\ 7018}# (lambda (#{e\ 7038}# #{p\ 7039}# #{w\ 7040}# #{r\ 7041}# #{mod\ 7042}#) (if (null? #{p\ 7039}#) (if (null? #{e\ 7038}#) #{r\ 7041}# #f) (if (pair? #{p\ 7039}#) (if (pair? #{e\ 7038}#) (#{match\ 7020}# (car #{e\ 7038}#) (car #{p\ 7039}#) #{w\ 7040}# (#{match\ 7020}# (cdr #{e\ 7038}#) (cdr #{p\ 7039}#) #{w\ 7040}# #{r\ 7041}# #{mod\ 7042}#) #{mod\ 7042}#) #f) (if (eq? #{p\ 7039}# (quote each-any)) (let ((#{l\ 7059}# (#{match-each-any\ 7012}# #{e\ 7038}# #{w\ 7040}# #{mod\ 7042}#))) (if #{l\ 7059}# (cons #{l\ 7059}# #{r\ 7041}#) #f)) (let ((#{atom-key\ 7065}# (vector-ref #{p\ 7039}# 0))) (if (memv #{atom-key\ 7065}# (quote (each))) (if (null? #{e\ 7038}#) (#{match-empty\ 7014}# (vector-ref #{p\ 7039}# 1) #{r\ 7041}#) (let ((#{l\ 7068}# (#{match-each\ 7008}# #{e\ 7038}# (vector-ref #{p\ 7039}# 1) #{w\ 7040}# #{mod\ 7042}#))) (if #{l\ 7068}# (letrec ((#{collect\ 7073}# (lambda (#{l\ 7074}#) (if (null? (car #{l\ 7074}#)) #{r\ 7041}# (cons (map car #{l\ 7074}#) (#{collect\ 7073}# (map cdr #{l\ 7074}#))))))) (#{collect\ 7073}# #{l\ 7068}#)) #f))) (if (memv #{atom-key\ 7065}# (quote (each+))) (call-with-values (lambda () (#{match-each+\ 7010}# #{e\ 7038}# (vector-ref #{p\ 7039}# 1) (vector-ref #{p\ 7039}# 2) (vector-ref #{p\ 7039}# 3) #{w\ 7040}# #{r\ 7041}# #{mod\ 7042}#)) (lambda (#{xr*\ 7076}# #{y-pat\ 7077}# #{r\ 7078}#) (if #{r\ 7078}# (if (null? #{y-pat\ 7077}#) (if (null? #{xr*\ 7076}#) (#{match-empty\ 7014}# (vector-ref #{p\ 7039}# 1) #{r\ 7078}#) (#{combine\ 7016}# #{xr*\ 7076}# #{r\ 7078}#)) #f) #f))) (if (memv #{atom-key\ 7065}# (quote (free-id))) (if (#{id?\ 3501}# #{e\ 7038}#) (if (#{free-id=?\ 3560}# (#{wrap\ 3570}# #{e\ 7038}# #{w\ 7040}# #{mod\ 7042}#) (vector-ref #{p\ 7039}# 1)) #{r\ 7041}# #f) #f) (if (memv #{atom-key\ 7065}# (quote (atom))) (if (equal? (vector-ref #{p\ 7039}# 1) (#{strip\ 3612}# #{e\ 7038}# #{w\ 7040}#)) #{r\ 7041}# #f) (if (memv #{atom-key\ 7065}# '(vector)) (if (vector? #{e\ 7038}#) (#{match\ 7020}# (vector->list #{e\ 7038}#) (vector-ref #{p\ 7039}# 1) #{w\ 7040}# #{r\ 7041}# #{mod\ 7042}#) #f)))))))))))) (#{combine\ 7016}# (lambda (#{r*\ 7095}# #{r\ 7096}#) (if (null? (car #{r*\ 7095}#)) #{r\ 7096}# (cons (map car #{r*\ 7095}#) (#{combine\ 7016}# (map cdr #{r*\ 7095}#) #{r\ 7096}#))))) (#{match-empty\ 7014}# (lambda (#{p\ 7099}# #{r\ 7100}#) (if (null? #{p\ 7099}#) #{r\ 7100}# (if (eq? #{p\ 7099}# (quote any)) (cons (quote ()) #{r\ 7100}#) (if (pair? #{p\ 7099}#) (#{match-empty\ 7014}# (car #{p\ 7099}#) (#{match-empty\ 7014}# (cdr #{p\ 7099}#) #{r\ 7100}#)) (if (eq? #{p\ 7099}# (quote each-any)) (cons (quote ()) #{r\ 7100}#) (let ((#{atom-key\ 7114}# (vector-ref #{p\ 7099}# 0))) (if (memv #{atom-key\ 7114}# (quote (each))) (#{match-empty\ 7014}# (vector-ref #{p\ 7099}# 1) #{r\ 7100}#) (if (memv #{atom-key\ 7114}# (quote (each+))) (#{match-empty\ 7014}# (vector-ref #{p\ 7099}# 1) (#{match-empty\ 7014}# (reverse (vector-ref #{p\ 7099}# 2)) (#{match-empty\ 7014}# (vector-ref #{p\ 7099}# 3) #{r\ 7100}#))) (if (memv #{atom-key\ 7114}# '(free-id atom)) #{r\ 7100}# (if (memv #{atom-key\ 7114}# '(vector)) (#{match-empty\ 7014}# (vector-ref #{p\ 7099}# 1) #{r\ 7100}#)))))))))))) (#{match-each-any\ 7012}# (lambda (#{e\ 7119}# #{w\ 7120}# #{mod\ 7121}#) (if (pair? #{e\ 7119}#) (let ((#{l\ 7128}# (#{match-each-any\ 7012}# (cdr #{e\ 7119}#) #{w\ 7120}# #{mod\ 7121}#))) (if #{l\ 7128}# (cons (#{wrap\ 3570}# (car #{e\ 7119}#) #{w\ 7120}# #{mod\ 7121}#) #{l\ 7128}#) #f)) (if (null? #{e\ 7119}#) '() (if (#{syntax-object?\ 3465}# #{e\ 7119}#) (#{match-each-any\ 7012}# (#{syntax-object-expression\ 3467}# #{e\ 7119}#) (#{join-wraps\ 3552}# #{w\ 7120}# (#{syntax-object-wrap\ 3469}# #{e\ 7119}#)) #{mod\ 7121}#) #f))))) (#{match-each+\ 7010}# (lambda (#{e\ 7136}# #{x-pat\ 7137}# #{y-pat\ 7138}# #{z-pat\ 7139}# #{w\ 7140}# #{r\ 7141}# #{mod\ 7142}#) (letrec ((#{f\ 7153}# (lambda (#{e\ 7154}# #{w\ 7155}#) (if (pair? #{e\ 7154}#) (call-with-values (lambda () (#{f\ 7153}# (cdr #{e\ 7154}#) #{w\ 7155}#)) (lambda (#{xr*\ 7158}# #{y-pat\ 7159}# #{r\ 7160}#) (if #{r\ 7160}# (if (null? #{y-pat\ 7159}#) (let ((#{xr\ 7165}# (#{match\ 7020}# (car #{e\ 7154}#) #{x-pat\ 7137}# #{w\ 7155}# '() #{mod\ 7142}#))) (if #{xr\ 7165}# (values (cons #{xr\ 7165}# #{xr*\ 7158}#) #{y-pat\ 7159}# #{r\ 7160}#) (values #f #f #f))) (values '() (cdr #{y-pat\ 7159}#) (#{match\ 7020}# (car #{e\ 7154}#) (car #{y-pat\ 7159}#) #{w\ 7155}# #{r\ 7160}# #{mod\ 7142}#))) (values #f #f #f)))) (if (#{syntax-object?\ 3465}# #{e\ 7154}#) (#{f\ 7153}# (#{syntax-object-expression\ 3467}# #{e\ 7154}#) (#{join-wraps\ 3552}# #{w\ 7155}# #{e\ 7154}#)) (values '() #{y-pat\ 7138}# (#{match\ 7020}# #{e\ 7154}# #{z-pat\ 7139}# #{w\ 7155}# #{r\ 7141}# #{mod\ 7142}#))))))) (#{f\ 7153}# #{e\ 7136}# #{w\ 7140}#)))) (#{match-each\ 7008}# (lambda (#{e\ 7169}# #{p\ 7170}# #{w\ 7171}# #{mod\ 7172}#) (if (pair? #{e\ 7169}#) (let ((#{first\ 7180}# (#{match\ 7020}# (car #{e\ 7169}#) #{p\ 7170}# #{w\ 7171}# '() #{mod\ 7172}#))) (if #{first\ 7180}# (let ((#{rest\ 7184}# (#{match-each\ 7008}# (cdr #{e\ 7169}#) #{p\ 7170}# #{w\ 7171}# #{mod\ 7172}#))) (if #{rest\ 7184}# (cons #{first\ 7180}# #{rest\ 7184}#) #f)) #f)) (if (null? #{e\ 7169}#) '() (if (#{syntax-object?\ 3465}# #{e\ 7169}#) (#{match-each\ 7008}# (#{syntax-object-expression\ 3467}# #{e\ 7169}#) #{p\ 7170}# (#{join-wraps\ 3552}# #{w\ 7171}# (#{syntax-object-wrap\ 3469}# #{e\ 7169}#)) (#{syntax-object-module\ 3471}# #{e\ 7169}#)) #f)))))) (set! $sc-dispatch (lambda (#{e\ 7192}# #{p\ 7193}#) (if (eq? #{p\ 7193}# (quote any)) (list #{e\ 7192}#) (if (#{syntax-object?\ 3465}# #{e\ 7192}#) (#{match*\ 7018}# (#{syntax-object-expression\ 3467}# #{e\ 7192}#) #{p\ 7193}# (#{syntax-object-wrap\ 3469}# #{e\ 7192}#) '() (#{syntax-object-module\ 3471}# #{e\ 7192}#)) (#{match*\ 7018}# #{e\ 7192}# #{p\ 7193}# '(()) '() #f))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (cons (lambda (#{x\ 7202}#) ((lambda (#{tmp\ 7204}#) ((lambda (#{tmp\ 7205}#) (if #{tmp\ 7205}# (apply (lambda (#{_\ 7209}# #{e1\ 7210}# #{e2\ 7211}#) (cons '#(syntax-object begin ((top) #(ribcage #(_ e1 e2) #((top) (top) (top)) #("i7206" "i7207" "i7208")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7203"))) (hygiene guile)) (cons #{e1\ 7210}# #{e2\ 7211}#))) #{tmp\ 7205}#) ((lambda (#{tmp\ 7213}#) (if #{tmp\ 7213}# (apply (lambda (#{_\ 7219}# #{out\ 7220}# #{in\ 7221}# #{e1\ 7222}# #{e2\ 7223}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i7214" "i7215" "i7216" "i7217" "i7218")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7203"))) (hygiene guile)) #{in\ 7221}# '() (list #{out\ 7220}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i7214" "i7215" "i7216" "i7217" "i7218")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7203"))) (hygiene guile)) (cons #{e1\ 7222}# #{e2\ 7223}#))))) #{tmp\ 7213}#) ((lambda (#{tmp\ 7225}#) (if #{tmp\ 7225}# (apply (lambda (#{_\ 7231}# #{out\ 7232}# #{in\ 7233}# #{e1\ 7234}# #{e2\ 7235}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i7226" "i7227" "i7228" "i7229" "i7230")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7203"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i7226" "i7227" "i7228" "i7229" "i7230")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7203"))) (hygiene guile)) #{in\ 7233}#) '() (list #{out\ 7232}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i7226" "i7227" "i7228" "i7229" "i7230")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7203"))) (hygiene guile)) (cons #{e1\ 7234}# #{e2\ 7235}#))))) #{tmp\ 7225}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7204}#))) ($sc-dispatch #{tmp\ 7204}# '(any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 7204}# '(any ((any any)) any . each-any))))) ($sc-dispatch #{tmp\ 7204}# '(any () any . each-any)))) #{x\ 7202}#)) (module-name (current-module))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (cons (lambda (#{x\ 7239}#) ((lambda (#{tmp\ 7241}#) ((lambda (#{tmp\ 7242}#) (if #{tmp\ 7242}# (apply (lambda (#{_\ 7248}# #{k\ 7249}# #{keyword\ 7250}# #{pattern\ 7251}# #{template\ 7252}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i7243" "i7244" "i7245" "i7246" "i7247")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7240"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i7243" "i7244" "i7245" "i7246" "i7247")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7240"))) (hygiene guile))) (cons '#(syntax-object syntax-case ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i7243" "i7244" "i7245" "i7246" "i7247")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7240"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i7243" "i7244" "i7245" "i7246" "i7247")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7240"))) (hygiene guile)) (cons #{k\ 7249}# (map (lambda (#{tmp\ 7255}# #{tmp\ 7254}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i7243" "i7244" "i7245" "i7246" "i7247")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7240"))) (hygiene guile)) #{tmp\ 7254}#) (list '#(syntax-object syntax ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i7243" "i7244" "i7245" "i7246" "i7247")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7240"))) (hygiene guile)) #{tmp\ 7255}#))) #{template\ 7252}# #{pattern\ 7251}#)))))) #{tmp\ 7242}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7241}#))) ($sc-dispatch #{tmp\ 7241}# '(any each-any . #(each ((any . any) any)))))) #{x\ 7239}#)) (module-name (current-module))))) (define let* (make-syntax-transformer 'let* 'macro (cons (lambda (#{x\ 7256}#) ((lambda (#{tmp\ 7258}#) ((lambda (#{tmp\ 7259}#) (if (if #{tmp\ 7259}# (apply (lambda (#{let*\ 7265}# #{x\ 7266}# #{v\ 7267}# #{e1\ 7268}# #{e2\ 7269}#) (and-map identifier? #{x\ 7266}#)) #{tmp\ 7259}#) #f) (apply (lambda (#{let*\ 7276}# #{x\ 7277}# #{v\ 7278}# #{e1\ 7279}# #{e2\ 7280}#) (letrec ((#{f\ 7283}# (lambda (#{bindings\ 7284}#) (if (null? #{bindings\ 7284}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i7281" "i7282")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i7271" "i7272" "i7273" "i7274" "i7275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7257"))) (hygiene guile)) (cons '() (cons #{e1\ 7279}# #{e2\ 7280}#))) ((lambda (#{tmp\ 7289}#) ((lambda (#{tmp\ 7290}#) (if #{tmp\ 7290}# (apply (lambda (#{body\ 7293}# #{binding\ 7294}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i7291" "i7292")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i7281" "i7282")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i7271" "i7272" "i7273" "i7274" "i7275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7257"))) (hygiene guile)) (list #{binding\ 7294}#) #{body\ 7293}#)) #{tmp\ 7290}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7289}#))) ($sc-dispatch #{tmp\ 7289}# '(any any)))) (list (#{f\ 7283}# (cdr #{bindings\ 7284}#)) (car #{bindings\ 7284}#))))))) (#{f\ 7283}# (map list #{x\ 7277}# #{v\ 7278}#)))) #{tmp\ 7259}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7258}#))) ($sc-dispatch #{tmp\ 7258}# '(any #(each (any any)) any . each-any)))) #{x\ 7256}#)) (module-name (current-module))))) (define do (make-syntax-transformer 'do 'macro (cons (lambda (#{orig-x\ 7295}#) ((lambda (#{tmp\ 7297}#) ((lambda (#{tmp\ 7298}#) (if #{tmp\ 7298}# (apply (lambda (#{_\ 7306}# #{var\ 7307}# #{init\ 7308}# #{step\ 7309}# #{e0\ 7310}# #{e1\ 7311}# #{c\ 7312}#) ((lambda (#{tmp\ 7314}#) ((lambda (#{tmp\ 7315}#) (if #{tmp\ 7315}# (apply (lambda (#{step\ 7317}#) ((lambda (#{tmp\ 7318}#) ((lambda (#{tmp\ 7319}#) (if #{tmp\ 7319}# (apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) (map list #{var\ 7307}# #{init\ 7308}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) #{e0\ 7310}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) (append #{c\ 7312}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) #{step\ 7317}#))))))) #{tmp\ 7319}#) ((lambda (#{tmp\ 7324}#) (if #{tmp\ 7324}# (apply (lambda (#{e1\ 7327}# #{e2\ 7328}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i7325" "i7326")) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i7325" "i7326")) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) (map list #{var\ 7307}# #{init\ 7308}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i7325" "i7326")) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) #{e0\ 7310}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i7325" "i7326")) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) (cons #{e1\ 7327}# #{e2\ 7328}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i7325" "i7326")) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) (append #{c\ 7312}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i7325" "i7326")) #(ribcage #(step) #((top)) #("i7316")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i7299" "i7300" "i7301" "i7302" "i7303" "i7304" "i7305")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i7296"))) (hygiene guile)) #{step\ 7317}#))))))) #{tmp\ 7324}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7318}#))) ($sc-dispatch #{tmp\ 7318}# '(any . each-any))))) ($sc-dispatch #{tmp\ 7318}# '()))) #{e1\ 7311}#)) #{tmp\ 7315}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7314}#))) ($sc-dispatch #{tmp\ 7314}# 'each-any))) (map (lambda (#{v\ 7335}# #{s\ 7336}#) ((lambda (#{tmp\ 7339}#) ((lambda (#{tmp\ 7340}#) (if #{tmp\ 7340}# (apply (lambda () #{v\ 7335}#) #{tmp\ 7340}#) ((lambda (#{tmp\ 7341}#) (if #{tmp\ 7341}# (apply (lambda (#{e\ 7343}#) #{e\ 7343}#) #{tmp\ 7341}#) ((lambda (#{_\ 7345}#) (syntax-violation 'do "bad step expression" #{orig-x\ 7295}# #{s\ 7336}#)) #{tmp\ 7339}#))) ($sc-dispatch #{tmp\ 7339}# '(any))))) ($sc-dispatch #{tmp\ 7339}# '()))) #{s\ 7336}#)) #{var\ 7307}# #{step\ 7309}#))) #{tmp\ 7298}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7297}#))) ($sc-dispatch #{tmp\ 7297}# '(any #(each (any any . any)) (any . each-any) . each-any)))) #{orig-x\ 7295}#)) (module-name (current-module))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (cons (letrec ((#{quasicons\ 7352}# (lambda (#{x\ 7356}# #{y\ 7357}#) ((lambda (#{tmp\ 7361}#) ((lambda (#{tmp\ 7362}#) (if #{tmp\ 7362}# (apply (lambda (#{x\ 7365}# #{y\ 7366}#) ((lambda (#{tmp\ 7367}#) ((lambda (#{tmp\ 7368}#) (if #{tmp\ 7368}# (apply (lambda (#{dy\ 7370}#) ((lambda (#{tmp\ 7371}#) ((lambda (#{tmp\ 7372}#) (if #{tmp\ 7372}# (apply (lambda (#{dx\ 7374}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) #("i7373")) #(ribcage #(dy) #((top)) #("i7369")) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) (cons #{dx\ 7374}# #{dy\ 7370}#))) #{tmp\ 7372}#) ((lambda (#{_\ 7376}#) (if (null? #{dy\ 7370}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) #("i7375")) #(ribcage #(dy) #((top)) #("i7369")) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{x\ 7365}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) #("i7375")) #(ribcage #(dy) #((top)) #("i7369")) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{x\ 7365}# #{y\ 7366}#))) #{tmp\ 7371}#))) ($sc-dispatch #{tmp\ 7371}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(dy) #((top)) #("i7369")) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) any)))) #{x\ 7365}#)) #{tmp\ 7368}#) ((lambda (#{tmp\ 7377}#) (if #{tmp\ 7377}# (apply (lambda (#{stuff\ 7379}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) #("i7378")) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) (cons #{x\ 7365}# #{stuff\ 7379}#))) #{tmp\ 7377}#) ((lambda (#{else\ 7381}#) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) #("i7380")) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{x\ 7365}# #{y\ 7366}#)) #{tmp\ 7367}#))) ($sc-dispatch #{tmp\ 7367}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 7367}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i7363" "i7364")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7358" "i7359")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) any)))) #{y\ 7366}#)) #{tmp\ 7362}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7361}#))) ($sc-dispatch #{tmp\ 7361}# (quote (any any))))) (list #{x\ 7356}# #{y\ 7357}#)))) (#{quasiappend\ 7353}# (lambda (#{x\ 7382}# #{y\ 7383}#) ((lambda (#{tmp\ 7387}#) ((lambda (#{tmp\ 7388}#) (if #{tmp\ 7388}# (apply (lambda (#{x\ 7391}# #{y\ 7392}#) ((lambda (#{tmp\ 7393}#) ((lambda (#{tmp\ 7394}#) (if #{tmp\ 7394}# (apply (lambda () #{x\ 7391}#) #{tmp\ 7394}#) ((lambda (#{_\ 7396}#) (list '#(syntax-object append ((top) #(ribcage #(_) #((top)) #("i7395")) #(ribcage #(x y) #((top) (top)) #("i7389" "i7390")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7384" "i7385")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{x\ 7391}# #{y\ 7392}#)) #{tmp\ 7393}#))) ($sc-dispatch #{tmp\ 7393}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i7389" "i7390")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i7384" "i7385")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) ())))) #{y\ 7392}#)) #{tmp\ 7388}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7387}#))) ($sc-dispatch #{tmp\ 7387}# (quote (any any))))) (list #{x\ 7382}# #{y\ 7383}#)))) (#{quasivector\ 7354}# (lambda (#{x\ 7397}#) ((lambda (#{tmp\ 7400}#) ((lambda (#{x\ 7402}#) ((lambda (#{tmp\ 7403}#) ((lambda (#{tmp\ 7404}#) (if #{tmp\ 7404}# (apply (lambda (#{x\ 7406}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i7405")) #(ribcage #(x) #((top)) #("i7401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7398")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) (list->vector #{x\ 7406}#))) #{tmp\ 7404}#) ((lambda (#{tmp\ 7408}#) (if #{tmp\ 7408}# (apply (lambda (#{x\ 7410}#) (cons '#(syntax-object vector ((top) #(ribcage #(x) #((top)) #("i7409")) #(ribcage #(x) #((top)) #("i7401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7398")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{x\ 7410}#)) #{tmp\ 7408}#) ((lambda (#{_\ 7413}#) (list '#(syntax-object list->vector ((top) #(ribcage #(_) #((top)) #("i7412")) #(ribcage #(x) #((top)) #("i7401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7398")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{x\ 7402}#)) #{tmp\ 7403}#))) ($sc-dispatch #{tmp\ 7403}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x) #((top)) #("i7401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7398")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) . each-any))))) ($sc-dispatch #{tmp\ 7403}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i7401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7398")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) each-any)))) #{x\ 7402}#)) #{tmp\ 7400}#)) #{x\ 7397}#))) (#{quasi\ 7355}# (lambda (#{p\ 7414}# #{lev\ 7415}#) ((lambda (#{tmp\ 7418}#) ((lambda (#{tmp\ 7419}#) (if #{tmp\ 7419}# (apply (lambda (#{p\ 7421}#) (if (= #{lev\ 7415}# 0) #{p\ 7421}# (#{quasicons\ 7352}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i7420")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i7420")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) (#{quasi\ 7355}# (list #{p\ 7421}#) (- #{lev\ 7415}# 1))))) #{tmp\ 7419}#) ((lambda (#{tmp\ 7422}#) (if (if #{tmp\ 7422}# (apply (lambda (#{args\ 7424}#) (= #{lev\ 7415}# 0)) #{tmp\ 7422}#) #f) (apply (lambda (#{args\ 7426}#) (syntax-violation 'unquote "unquote takes exactly one argument" #{p\ 7414}# (cons '#(syntax-object unquote ((top) #(ribcage #(args) #((top)) #("i7425")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{args\ 7426}#))) #{tmp\ 7422}#) ((lambda (#{tmp\ 7427}#) (if #{tmp\ 7427}# (apply (lambda (#{p\ 7430}# #{q\ 7431}#) (if (= #{lev\ 7415}# 0) (#{quasiappend\ 7353}# #{p\ 7430}# (#{quasi\ 7355}# #{q\ 7431}# #{lev\ 7415}#)) (#{quasicons\ 7352}# (#{quasicons\ 7352}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) #("i7428" "i7429")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i7428" "i7429")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) (#{quasi\ 7355}# (list #{p\ 7430}#) (- #{lev\ 7415}# 1))) (#{quasi\ 7355}# #{q\ 7431}# #{lev\ 7415}#)))) #{tmp\ 7427}#) ((lambda (#{tmp\ 7432}#) (if (if #{tmp\ 7432}# (apply (lambda (#{args\ 7435}# #{q\ 7436}#) (= #{lev\ 7415}# 0)) #{tmp\ 7432}#) #f) (apply (lambda (#{args\ 7439}# #{q\ 7440}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" #{p\ 7414}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) #("i7437" "i7438")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{args\ 7439}#))) #{tmp\ 7432}#) ((lambda (#{tmp\ 7441}#) (if #{tmp\ 7441}# (apply (lambda (#{p\ 7443}#) (#{quasicons\ 7352}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i7442")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i7442")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) (#{quasi\ 7355}# (list #{p\ 7443}#) (+ #{lev\ 7415}# 1)))) #{tmp\ 7441}#) ((lambda (#{tmp\ 7444}#) (if #{tmp\ 7444}# (apply (lambda (#{p\ 7447}# #{q\ 7448}#) (#{quasicons\ 7352}# (#{quasi\ 7355}# #{p\ 7447}# #{lev\ 7415}#) (#{quasi\ 7355}# #{q\ 7448}# #{lev\ 7415}#))) #{tmp\ 7444}#) ((lambda (#{tmp\ 7449}#) (if #{tmp\ 7449}# (apply (lambda (#{x\ 7451}#) (#{quasivector\ 7354}# (#{quasi\ 7355}# #{x\ 7451}# #{lev\ 7415}#))) #{tmp\ 7449}#) ((lambda (#{p\ 7454}#) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i7453")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile)) #{p\ 7454}#)) #{tmp\ 7418}#))) ($sc-dispatch #{tmp\ 7418}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 7418}# '(any . any))))) ($sc-dispatch #{tmp\ 7418}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) any))))) ($sc-dispatch #{tmp\ 7418}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) . any) . any))))) ($sc-dispatch #{tmp\ 7418}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) any) . any))))) ($sc-dispatch #{tmp\ 7418}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 7418}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i7416" "i7417")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i7348" "i7349" "i7350" "i7351"))) (hygiene guile))) any)))) #{p\ 7414}#)))) (lambda (#{x\ 7455}#) ((lambda (#{tmp\ 7457}#) ((lambda (#{tmp\ 7458}#) (if #{tmp\ 7458}# (apply (lambda (#{_\ 7461}# #{e\ 7462}#) (#{quasi\ 7355}# #{e\ 7462}# 0)) #{tmp\ 7458}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7457}#))) ($sc-dispatch #{tmp\ 7457}# (quote (any any))))) #{x\ 7455}#))) (module-name (current-module))))) (define include (make-syntax-transformer 'include 'macro (cons (lambda (#{x\ 7463}#) (letrec ((#{read-file\ 7466}# (lambda (#{fn\ 7467}# #{k\ 7468}#) (let ((#{p\ 7472}# (open-input-file #{fn\ 7467}#))) (letrec ((#{f\ 7475}# (lambda (#{x\ 7476}#) (if (eof-object? #{x\ 7476}#) (begin (close-input-port #{p\ 7472}#) '()) (cons (datum->syntax #{k\ 7468}# #{x\ 7476}#) (#{f\ 7475}# (read #{p\ 7472}#))))))) (#{f\ 7475}# (read #{p\ 7472}#))))))) ((lambda (#{tmp\ 7477}#) ((lambda (#{tmp\ 7478}#) (if #{tmp\ 7478}# (apply (lambda (#{k\ 7481}# #{filename\ 7482}#) (let ((#{fn\ 7484}# (syntax->datum #{filename\ 7482}#))) ((lambda (#{tmp\ 7486}#) ((lambda (#{tmp\ 7487}#) (if #{tmp\ 7487}# (apply (lambda (#{exp\ 7489}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i7488")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i7483")) #(ribcage #(k filename) #((top) (top)) #("i7479" "i7480")) #(ribcage (read-file) ((top)) ("i7465")) #(ribcage #(x) #((top)) #("i7464"))) (hygiene guile)) #{exp\ 7489}#)) #{tmp\ 7487}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7486}#))) ($sc-dispatch #{tmp\ 7486}# 'each-any))) (#{read-file\ 7466}# #{fn\ 7484}# #{k\ 7481}#)))) #{tmp\ 7478}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7477}#))) ($sc-dispatch #{tmp\ 7477}# (quote (any any))))) #{x\ 7463}#))) (module-name (current-module))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (cons (lambda (#{x\ 7491}#) ((lambda (#{tmp\ 7493}#) ((lambda (#{tmp\ 7494}#) (if #{tmp\ 7494}# (apply (lambda (#{k\ 7497}# #{filename\ 7498}#) (let ((#{fn\ 7500}# (syntax->datum #{filename\ 7498}#))) ((lambda (#{tmp\ 7502}#) ((lambda (#{fn\ 7504}#) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i7503")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i7499")) #(ribcage #(k filename) #((top) (top)) #("i7495" "i7496")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7492"))) (hygiene guile)) #{fn\ 7504}#)) #{tmp\ 7502}#)) (let ((#{t\ 7507}# (%search-load-path #{fn\ 7500}#))) (if #{t\ 7507}# #{t\ 7507}# (syntax-violation 'include-from-path "file not found in path" #{x\ 7491}# #{filename\ 7498}#)))))) #{tmp\ 7494}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7493}#))) ($sc-dispatch #{tmp\ 7493}# (quote (any any))))) #{x\ 7491}#)) (module-name (current-module))))) (define unquote (make-syntax-transformer 'unquote 'macro (cons (lambda (#{x\ 7509}#) ((lambda (#{tmp\ 7511}#) ((lambda (#{tmp\ 7512}#) (if #{tmp\ 7512}# (apply (lambda (#{_\ 7515}# #{e\ 7516}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 7509}#)) #{tmp\ 7512}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7511}#))) ($sc-dispatch #{tmp\ 7511}# (quote (any any))))) #{x\ 7509}#)) (module-name (current-module))))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (cons (lambda (#{x\ 7517}#) ((lambda (#{tmp\ 7519}#) ((lambda (#{tmp\ 7520}#) (if #{tmp\ 7520}# (apply (lambda (#{_\ 7523}# #{e\ 7524}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 7517}#)) #{tmp\ 7520}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7519}#))) ($sc-dispatch #{tmp\ 7519}# (quote (any any))))) #{x\ 7517}#)) (module-name (current-module))))) (define case (make-syntax-transformer 'case 'macro (cons (lambda (#{x\ 7525}#) ((lambda (#{tmp\ 7527}#) ((lambda (#{tmp\ 7528}#) (if #{tmp\ 7528}# (apply (lambda (#{_\ 7533}# #{e\ 7534}# #{m1\ 7535}# #{m2\ 7536}#) ((lambda (#{tmp\ 7538}#) ((lambda (#{body\ 7540}#) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i7539")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i7539")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) #{e\ 7534}#)) #{body\ 7540}#)) #{tmp\ 7538}#)) (letrec ((#{f\ 7544}# (lambda (#{clause\ 7545}# #{clauses\ 7546}#) (if (null? #{clauses\ 7546}#) ((lambda (#{tmp\ 7548}#) ((lambda (#{tmp\ 7549}#) (if #{tmp\ 7549}# (apply (lambda (#{e1\ 7552}# #{e2\ 7553}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i7550" "i7551")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (cons #{e1\ 7552}# #{e2\ 7553}#))) #{tmp\ 7549}#) ((lambda (#{tmp\ 7555}#) (if #{tmp\ 7555}# (apply (lambda (#{k\ 7559}# #{e1\ 7560}# #{e2\ 7561}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7556" "i7557" "i7558")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7556" "i7557" "i7558")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7556" "i7557" "i7558")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7556" "i7557" "i7558")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) #{k\ 7559}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7556" "i7557" "i7558")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (cons #{e1\ 7560}# #{e2\ 7561}#)))) #{tmp\ 7555}#) ((lambda (#{_\ 7565}#) (syntax-violation 'case "bad clause" #{x\ 7525}# #{clause\ 7545}#)) #{tmp\ 7548}#))) ($sc-dispatch #{tmp\ 7548}# '(each-any any . each-any))))) ($sc-dispatch #{tmp\ 7548}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile))) any . each-any)))) #{clause\ 7545}#) ((lambda (#{tmp\ 7567}#) ((lambda (#{rest\ 7569}#) ((lambda (#{tmp\ 7570}#) ((lambda (#{tmp\ 7571}#) (if #{tmp\ 7571}# (apply (lambda (#{k\ 7575}# #{e1\ 7576}# #{e2\ 7577}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7572" "i7573" "i7574")) #(ribcage #(rest) #((top)) #("i7568")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7572" "i7573" "i7574")) #(ribcage #(rest) #((top)) #("i7568")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7572" "i7573" "i7574")) #(ribcage #(rest) #((top)) #("i7568")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7572" "i7573" "i7574")) #(ribcage #(rest) #((top)) #("i7568")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) #{k\ 7575}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i7572" "i7573" "i7574")) #(ribcage #(rest) #((top)) #("i7568")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i7541" "i7542" "i7543")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i7529" "i7530" "i7531" "i7532")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7526"))) (hygiene guile)) (cons #{e1\ 7576}# #{e2\ 7577}#)) #{rest\ 7569}#)) #{tmp\ 7571}#) ((lambda (#{_\ 7581}#) (syntax-violation 'case "bad clause" #{x\ 7525}# #{clause\ 7545}#)) #{tmp\ 7570}#))) ($sc-dispatch #{tmp\ 7570}# '(each-any any . each-any)))) #{clause\ 7545}#)) #{tmp\ 7567}#)) (#{f\ 7544}# (car #{clauses\ 7546}#) (cdr #{clauses\ 7546}#))))))) (#{f\ 7544}# #{m1\ 7535}# #{m2\ 7536}#)))) #{tmp\ 7528}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7527}#))) ($sc-dispatch #{tmp\ 7527}# '(any any any . each-any)))) #{x\ 7525}#)) (module-name (current-module))))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (cons (lambda (#{x\ 7582}#) ((lambda (#{tmp\ 7584}#) ((lambda (#{tmp\ 7585}#) (if #{tmp\ 7585}# (apply (lambda (#{_\ 7588}# #{e\ 7589}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile))) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) #{e\ 7589}#)) (list (cons #{_\ 7588}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) (cons #{e\ 7589}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i7586" "i7587")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7583"))) (hygiene guile))))))))) #{tmp\ 7585}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7584}#))) ($sc-dispatch #{tmp\ 7584}# (quote (any any))))) #{x\ 7582}#)) (module-name (current-module))))) (define define* (make-syntax-transformer 'define* 'macro (cons (lambda (#{x\ 7590}#) ((lambda (#{tmp\ 7592}#) ((lambda (#{tmp\ 7593}#) (if #{tmp\ 7593}# (apply (lambda (#{_\ 7599}# #{id\ 7600}# #{args\ 7601}# #{b0\ 7602}# #{b1\ 7603}#) (list '#(syntax-object define ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i7594" "i7595" "i7596" "i7597" "i7598")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7591"))) (hygiene guile)) #{id\ 7600}# (cons '#(syntax-object lambda* ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i7594" "i7595" "i7596" "i7597" "i7598")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7591"))) (hygiene guile)) (cons #{args\ 7601}# (cons #{b0\ 7602}# #{b1\ 7603}#))))) #{tmp\ 7593}#) ((lambda (#{tmp\ 7605}#) (if (if #{tmp\ 7605}# (apply (lambda (#{_\ 7609}# #{id\ 7610}# #{val\ 7611}#) (identifier? '#(syntax-object x ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i7606" "i7607" "i7608")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7591"))) (hygiene guile)))) #{tmp\ 7605}#) #f) (apply (lambda (#{_\ 7615}# #{id\ 7616}# #{val\ 7617}#) (list '#(syntax-object define ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i7612" "i7613" "i7614")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i7591"))) (hygiene guile)) #{id\ 7616}# #{val\ 7617}#)) #{tmp\ 7605}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 7592}#))) ($sc-dispatch #{tmp\ 7592}# '(any any any))))) ($sc-dispatch #{tmp\ 7592}# '(any (any . any) any . each-any)))) #{x\ 7590}#)) (module-name (current-module)))))