(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec ((#{and-map*\ 20}# (lambda (#{f\ 82}# #{first\ 83}# . #{rest\ 84}#) (let ((#{t\ 90}# (null? #{first\ 83}#))) (if #{t\ 90}# #{t\ 90}# (if (null? #{rest\ 84}#) (letrec ((#{andmap\ 94}# (lambda (#{first\ 95}#) (let ((#{x\ 98}# (car #{first\ 95}#)) (#{first\ 99}# (cdr #{first\ 95}#))) (if (null? #{first\ 99}#) (#{f\ 82}# #{x\ 98}#) (if (#{f\ 82}# #{x\ 98}#) (#{andmap\ 94}# #{first\ 99}#) #f)))))) (#{andmap\ 94}# #{first\ 83}#)) (letrec ((#{andmap\ 105}# (lambda (#{first\ 106}# #{rest\ 107}#) (let ((#{x\ 112}# (car #{first\ 106}#)) (#{xr\ 113}# (map car #{rest\ 107}#)) (#{first\ 114}# (cdr #{first\ 106}#)) (#{rest\ 115}# (map cdr #{rest\ 107}#))) (if (null? #{first\ 114}#) (apply #{f\ 82}# (cons #{x\ 112}# #{xr\ 113}#)) (if (apply #{f\ 82}# (cons #{x\ 112}# #{xr\ 113}#)) (#{andmap\ 105}# #{first\ 114}# #{rest\ 115}#) #f)))))) (#{andmap\ 105}# #{first\ 83}# #{rest\ 84}#)))))))) (letrec ((#{lambda-var-list\ 337}# (lambda (#{vars\ 552}#) (letrec ((#{lvl\ 558}# (lambda (#{vars\ 559}# #{ls\ 560}# #{w\ 561}#) (if (pair? #{vars\ 559}#) (#{lvl\ 558}# (cdr #{vars\ 559}#) (cons (#{wrap\ 291}# (car #{vars\ 559}#) #{w\ 561}# #f) #{ls\ 560}#) #{w\ 561}#) (if (#{id?\ 222}# #{vars\ 559}#) (cons (#{wrap\ 291}# #{vars\ 559}# #{w\ 561}# #f) #{ls\ 560}#) (if (null? #{vars\ 559}#) #{ls\ 560}# (if (#{syntax-object?\ 186}# #{vars\ 559}#) (#{lvl\ 558}# (#{syntax-object-expression\ 188}# #{vars\ 559}#) #{ls\ 560}# (#{join-wraps\ 273}# #{w\ 561}# (#{syntax-object-wrap\ 190}# #{vars\ 559}#))) (cons #{vars\ 559}# #{ls\ 560}#)))))))) (#{lvl\ 558}# #{vars\ 552}# '() '(()))))) (#{gen-var\ 335}# (lambda (#{id\ 572}#) (let ((#{id\ 575}# (if (#{syntax-object?\ 186}# #{id\ 572}#) (#{syntax-object-expression\ 188}# #{id\ 572}#) #{id\ 572}#))) (gensym (string-append (symbol->string #{id\ 575}#) " "))))) (#{strip\ 333}# (lambda (#{x\ 577}# #{w\ 578}#) (if (memq 'top (#{wrap-marks\ 229}# #{w\ 578}#)) #{x\ 577}# (letrec ((#{f\ 584}# (lambda (#{x\ 585}#) (if (#{syntax-object?\ 186}# #{x\ 585}#) (#{strip\ 333}# (#{syntax-object-expression\ 188}# #{x\ 585}#) (#{syntax-object-wrap\ 190}# #{x\ 585}#)) (if (pair? #{x\ 585}#) (let ((#{a\ 592}# (#{f\ 584}# (car #{x\ 585}#))) (#{d\ 593}# (#{f\ 584}# (cdr #{x\ 585}#)))) (if (if (eq? #{a\ 592}# (car #{x\ 585}#)) (eq? #{d\ 593}# (cdr #{x\ 585}#)) #f) #{x\ 585}# (cons #{a\ 592}# #{d\ 593}#))) (if (vector? #{x\ 585}#) (let ((#{old\ 599}# (vector->list #{x\ 585}#))) (let ((#{new\ 601}# (map #{f\ 584}# #{old\ 599}#))) (if (#{and-map*\ 20}# eq? #{old\ 599}# #{new\ 601}#) #{x\ 585}# (list->vector #{new\ 601}#)))) #{x\ 585}#)))))) (#{f\ 584}# #{x\ 577}#))))) (#{chi-lambda-case\ 331}# (lambda (#{e\ 603}# #{r\ 604}# #{w\ 605}# #{s\ 606}# #{mod\ 607}# #{get-formals\ 608}# #{clauses\ 609}#) (letrec ((#{expand-body\ 624}# (lambda (#{req\ 625}# #{opt\ 626}# #{rest\ 627}# #{kw\ 628}# #{body\ 629}# #{vars\ 630}# #{r*\ 631}# #{w*\ 632}# #{inits\ 633}# #{meta\ 634}#) ((lambda (#{tmp\ 645}#) ((lambda (#{tmp\ 646}#) (if (if #{tmp\ 646}# (apply (lambda (#{docstring\ 650}# #{e1\ 651}# #{e2\ 652}#) (string? (syntax->datum #{docstring\ 650}#))) #{tmp\ 646}#) #f) (apply (lambda (#{docstring\ 656}# #{e1\ 657}# #{e2\ 658}#) (#{expand-body\ 624}# #{req\ 625}# #{opt\ 626}# #{rest\ 627}# #{kw\ 628}# (cons #{e1\ 657}# #{e2\ 658}#) #{vars\ 630}# #{r*\ 631}# #{w*\ 632}# #{inits\ 633}# (append #{meta\ 634}# (list (cons 'documentation (syntax->datum #{docstring\ 656}#)))))) #{tmp\ 646}#) ((lambda (#{tmp\ 661}#) (if #{tmp\ 661}# (apply (lambda (#{k\ 666}# #{v\ 667}# #{e1\ 668}# #{e2\ 669}#) (#{expand-body\ 624}# #{req\ 625}# #{opt\ 626}# #{rest\ 627}# #{kw\ 628}# (cons #{e1\ 668}# #{e2\ 669}#) #{vars\ 630}# #{r*\ 631}# #{w*\ 632}# #{inits\ 633}# (append #{meta\ 634}# (syntax->datum (map cons #{k\ 666}# #{v\ 667}#))))) #{tmp\ 661}#) ((lambda (#{tmp\ 673}#) (if #{tmp\ 673}# (apply (lambda (#{e1\ 676}# #{e2\ 677}#) (values #{meta\ 634}# #{req\ 625}# #{opt\ 626}# #{rest\ 627}# #{kw\ 628}# #{inits\ 633}# #{vars\ 630}# (#{chi-body\ 315}# (cons #{e1\ 676}# #{e2\ 677}#) (#{source-wrap\ 293}# #{e\ 603}# #{w\ 605}# #{s\ 606}# #{mod\ 607}#) #{r*\ 631}# #{w*\ 632}# #{mod\ 607}#))) #{tmp\ 673}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 645}#))) ($sc-dispatch #{tmp\ 645}# '(any . each-any))))) ($sc-dispatch #{tmp\ 645}# '(#(vector #(each (any . any))) any . each-any))))) ($sc-dispatch #{tmp\ 645}# '(any any . each-any)))) #{body\ 629}#))) (#{expand-kw\ 622}# (lambda (#{req\ 679}# #{opt\ 680}# #{rest\ 681}# #{kw\ 682}# #{body\ 683}# #{vars\ 684}# #{r*\ 685}# #{w*\ 686}# #{aok\ 687}# #{out\ 688}# #{inits\ 689}#) (if (pair? #{kw\ 682}#) ((lambda (#{tmp\ 703}#) ((lambda (#{tmp\ 704}#) (if #{tmp\ 704}# (apply (lambda (#{k\ 708}# #{id\ 709}# #{i\ 710}#) (let ((#{v\ 713}# (#{gen-var\ 335}# #{id\ 709}#))) (let ((#{l\ 715}# (#{gen-labels\ 240}# (list #{v\ 713}#)))) (let ((#{r**\ 717}# (#{extend-var-env\ 212}# #{l\ 715}# (list #{v\ 713}#) #{r*\ 685}#))) (let ((#{w**\ 719}# (#{make-binding-wrap\ 269}# (list #{id\ 709}#) #{l\ 715}# #{w*\ 686}#))) (#{expand-kw\ 622}# #{req\ 679}# #{opt\ 680}# #{rest\ 681}# (cdr #{kw\ 682}#) #{body\ 683}# (cons #{v\ 713}# #{vars\ 684}#) #{r**\ 717}# #{w**\ 719}# #{aok\ 687}# (cons (list (syntax->datum #{k\ 708}#) (syntax->datum #{id\ 709}#) #{v\ 713}#) #{out\ 688}#) (cons (#{chi\ 307}# #{i\ 710}# #{r*\ 685}# #{w*\ 686}# #{mod\ 607}#) #{inits\ 689}#))))))) #{tmp\ 704}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 703}#))) ($sc-dispatch #{tmp\ 703}# '(any any any)))) (car #{kw\ 682}#)) (#{expand-body\ 624}# #{req\ 679}# #{opt\ 680}# #{rest\ 681}# (if (let ((#{t\ 723}# #{aok\ 687}#)) (if #{t\ 723}# #{t\ 723}# (pair? #{out\ 688}#))) (cons #{aok\ 687}# (reverse #{out\ 688}#)) #f) #{body\ 683}# (reverse #{vars\ 684}#) #{r*\ 685}# #{w*\ 686}# (reverse #{inits\ 689}#) '())))) (#{expand-opt\ 620}# (lambda (#{req\ 725}# #{opt\ 726}# #{rest\ 727}# #{kw\ 728}# #{body\ 729}# #{vars\ 730}# #{r*\ 731}# #{w*\ 732}# #{out\ 733}# #{inits\ 734}#) (if (pair? #{opt\ 726}#) ((lambda (#{tmp\ 747}#) ((lambda (#{tmp\ 748}#) (if #{tmp\ 748}# (apply (lambda (#{id\ 751}# #{i\ 752}#) (let ((#{v\ 755}# (#{gen-var\ 335}# #{id\ 751}#))) (let ((#{l\ 757}# (#{gen-labels\ 240}# (list #{v\ 755}#)))) (let ((#{r**\ 759}# (#{extend-var-env\ 212}# #{l\ 757}# (list #{v\ 755}#) #{r*\ 731}#))) (let ((#{w**\ 761}# (#{make-binding-wrap\ 269}# (list #{id\ 751}#) #{l\ 757}# #{w*\ 732}#))) (#{expand-opt\ 620}# #{req\ 725}# (cdr #{opt\ 726}#) #{rest\ 727}# #{kw\ 728}# #{body\ 729}# (cons #{v\ 755}# #{vars\ 730}#) #{r**\ 759}# #{w**\ 761}# (cons (syntax->datum #{id\ 751}#) #{out\ 733}#) (cons (#{chi\ 307}# #{i\ 752}# #{r*\ 731}# #{w*\ 732}# #{mod\ 607}#) #{inits\ 734}#))))))) #{tmp\ 748}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 747}#))) ($sc-dispatch #{tmp\ 747}# '(any any)))) (car #{opt\ 726}#)) (if #{rest\ 727}# (let ((#{v\ 766}# (#{gen-var\ 335}# #{rest\ 727}#))) (let ((#{l\ 768}# (#{gen-labels\ 240}# (list #{v\ 766}#)))) (let ((#{r*\ 770}# (#{extend-var-env\ 212}# #{l\ 768}# (list #{v\ 766}#) #{r*\ 731}#))) (let ((#{w*\ 772}# (#{make-binding-wrap\ 269}# (list #{rest\ 727}#) #{l\ 768}# #{w*\ 732}#))) (#{expand-kw\ 622}# #{req\ 725}# (if (pair? #{out\ 733}#) (reverse #{out\ 733}#) #f) (syntax->datum #{rest\ 727}#) (if (pair? #{kw\ 728}#) (cdr #{kw\ 728}#) #{kw\ 728}#) #{body\ 729}# (cons #{v\ 766}# #{vars\ 730}#) #{r*\ 770}# #{w*\ 772}# (if (pair? #{kw\ 728}#) (car #{kw\ 728}#) #f) '() #{inits\ 734}#))))) (#{expand-kw\ 622}# #{req\ 725}# (if (pair? #{out\ 733}#) (reverse #{out\ 733}#) #f) #f (if (pair? #{kw\ 728}#) (cdr #{kw\ 728}#) #{kw\ 728}#) #{body\ 729}# #{vars\ 730}# #{r*\ 731}# #{w*\ 732}# (if (pair? #{kw\ 728}#) (car #{kw\ 728}#) #f) '() #{inits\ 734}#))))) (#{expand-req\ 618}# (lambda (#{req\ 774}# #{opt\ 775}# #{rest\ 776}# #{kw\ 777}# #{body\ 778}#) (let ((#{vars\ 786}# (map #{gen-var\ 335}# #{req\ 774}#)) (#{labels\ 787}# (#{gen-labels\ 240}# #{req\ 774}#))) (let ((#{r*\ 790}# (#{extend-var-env\ 212}# #{labels\ 787}# #{vars\ 786}# #{r\ 604}#)) (#{w*\ 791}# (#{make-binding-wrap\ 269}# #{req\ 774}# #{labels\ 787}# #{w\ 605}#))) (#{expand-opt\ 620}# (map syntax->datum #{req\ 774}#) #{opt\ 775}# #{rest\ 776}# #{kw\ 777}# #{body\ 778}# (reverse #{vars\ 786}#) #{r*\ 790}# #{w*\ 791}# '() '())))))) ((lambda (#{tmp\ 792}#) ((lambda (#{tmp\ 793}#) (if #{tmp\ 793}# (apply (lambda () (values (quote ()) #f)) #{tmp\ 793}#) ((lambda (#{tmp\ 794}#) (if #{tmp\ 794}# (apply (lambda (#{args\ 801}# #{e1\ 802}# #{e2\ 803}# #{args*\ 804}# #{e1*\ 805}# #{e2*\ 806}#) (call-with-values (lambda () (#{get-formals\ 608}# #{args\ 801}#)) (lambda (#{req\ 807}# #{opt\ 808}# #{rest\ 809}# #{kw\ 810}#) (call-with-values (lambda () (#{expand-req\ 618}# #{req\ 807}# #{opt\ 808}# #{rest\ 809}# #{kw\ 810}# (cons #{e1\ 802}# #{e2\ 803}#))) (lambda (#{meta\ 816}# #{req\ 817}# #{opt\ 818}# #{rest\ 819}# #{kw\ 820}# #{inits\ 821}# #{vars\ 822}# #{body\ 823}#) (call-with-values (lambda () (#{chi-lambda-case\ 331}# #{e\ 603}# #{r\ 604}# #{w\ 605}# #{s\ 606}# #{mod\ 607}# #{get-formals\ 608}# (map (lambda (#{tmp\ 834}# #{tmp\ 833}# #{tmp\ 832}#) (cons #{tmp\ 832}# (cons #{tmp\ 833}# #{tmp\ 834}#))) #{e2*\ 806}# #{e1*\ 805}# #{args*\ 804}#))) (lambda (#{meta*\ 836}# #{else*\ 837}#) (values (append #{meta\ 816}# #{meta*\ 836}#) (#{build-lambda-case\ 168}# #{s\ 606}# #{req\ 817}# #{opt\ 818}# #{rest\ 819}# #{kw\ 820}# #{inits\ 821}# #{vars\ 822}# #{body\ 823}# #{else*\ 837}#))))))))) #{tmp\ 794}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 792}#))) ($sc-dispatch #{tmp\ 792}# '((any any . each-any) . #(each (any any . each-any))))))) ($sc-dispatch #{tmp\ 792}# (quote ())))) #{clauses\ 609}#)))) (#{lambda*-formals\ 329}# (lambda (#{orig-args\ 840}#) (letrec ((#{check\ 851}# (lambda (#{req\ 852}# #{opt\ 853}# #{rest\ 854}# #{kw\ 855}#) (if (#{distinct-bound-ids?\ 287}# (append #{req\ 852}# (map car #{opt\ 853}#) (if #{rest\ 854}# (list #{rest\ 854}#) '()) (if (pair? #{kw\ 855}#) (map cadr (cdr #{kw\ 855}#)) '()))) (values #{req\ 852}# #{opt\ 853}# #{rest\ 854}# #{kw\ 855}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 840}#)))) (#{rest\ 849}# (lambda (#{args\ 863}# #{req\ 864}# #{opt\ 865}# #{kw\ 866}#) ((lambda (#{tmp\ 871}#) ((lambda (#{tmp\ 872}#) (if (if #{tmp\ 872}# (apply (lambda (#{r\ 874}#) (#{id?\ 222}# #{r\ 874}#)) #{tmp\ 872}#) #f) (apply (lambda (#{r\ 876}#) (#{check\ 851}# #{req\ 864}# #{opt\ 865}# #{r\ 876}# #{kw\ 866}#)) #{tmp\ 872}#) ((lambda (#{else\ 878}#) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 840}# #{args\ 863}#)) #{tmp\ 871}#))) (list #{tmp\ 871}#))) #{args\ 863}#))) (#{key\ 847}# (lambda (#{args\ 879}# #{req\ 880}# #{opt\ 881}# #{rkey\ 882}#) ((lambda (#{tmp\ 887}#) ((lambda (#{tmp\ 888}#) (if #{tmp\ 888}# (apply (lambda () (#{check\ 851}# #{req\ 880}# #{opt\ 881}# #f (cons #f (reverse #{rkey\ 882}#)))) #{tmp\ 888}#) ((lambda (#{tmp\ 889}#) (if (if #{tmp\ 889}# (apply (lambda (#{a\ 892}# #{b\ 893}#) (#{id?\ 222}# #{a\ 892}#)) #{tmp\ 889}#) #f) (apply (lambda (#{a\ 896}# #{b\ 897}#) ((lambda (#{tmp\ 899}#) ((lambda (#{k\ 901}#) (#{key\ 847}# #{b\ 897}# #{req\ 880}# #{opt\ 881}# (cons (cons #{k\ 901}# (cons #{a\ 896}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i900")) #(ribcage #(a b) #((top) (top)) #("i894" "i895")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i883" "i884" "i885" "i886")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i850" "i848" "i846" "i844" "i842")) #(ribcage #(orig-args) #((top)) #("i841")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile))))) #{rkey\ 882}#))) #{tmp\ 899}#)) (symbol->keyword (syntax->datum #{a\ 896}#)))) #{tmp\ 889}#) ((lambda (#{tmp\ 902}#) (if (if #{tmp\ 902}# (apply (lambda (#{a\ 906}# #{init\ 907}# #{b\ 908}#) (#{id?\ 222}# #{a\ 906}#)) #{tmp\ 902}#) #f) (apply (lambda (#{a\ 912}# #{init\ 913}# #{b\ 914}#) ((lambda (#{tmp\ 916}#) ((lambda (#{k\ 918}#) (#{key\ 847}# #{b\ 914}# #{req\ 880}# #{opt\ 881}# (cons (list #{k\ 918}# #{a\ 912}# #{init\ 913}#) #{rkey\ 882}#))) #{tmp\ 916}#)) (symbol->keyword (syntax->datum #{a\ 912}#)))) #{tmp\ 902}#) ((lambda (#{tmp\ 919}#) (if (if #{tmp\ 919}# (apply (lambda (#{a\ 924}# #{init\ 925}# #{k\ 926}# #{b\ 927}#) (if (#{id?\ 222}# #{a\ 924}#) (keyword? (syntax->datum #{k\ 926}#)) #f)) #{tmp\ 919}#) #f) (apply (lambda (#{a\ 934}# #{init\ 935}# #{k\ 936}# #{b\ 937}#) (#{key\ 847}# #{b\ 937}# #{req\ 880}# #{opt\ 881}# (cons (list #{k\ 936}# #{a\ 934}# #{init\ 935}#) #{rkey\ 882}#))) #{tmp\ 919}#) ((lambda (#{tmp\ 938}#) (if (if #{tmp\ 938}# (apply (lambda (#{aok\ 940}#) (eq? (syntax->datum #{aok\ 940}#) #:allow-other-keys)) #{tmp\ 938}#) #f) (apply (lambda (#{aok\ 942}#) (#{check\ 851}# #{req\ 880}# #{opt\ 881}# #f (cons #t (reverse #{rkey\ 882}#)))) #{tmp\ 938}#) ((lambda (#{tmp\ 943}#) (if (if #{tmp\ 943}# (apply (lambda (#{aok\ 947}# #{a\ 948}# #{b\ 949}#) (if (eq? (syntax->datum #{aok\ 947}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 948}#) #:rest) #f)) #{tmp\ 943}#) #f) (apply (lambda (#{aok\ 955}# #{a\ 956}# #{b\ 957}#) (#{rest\ 849}# #{b\ 957}# #{req\ 880}# #{opt\ 881}# (cons #t (reverse #{rkey\ 882}#)))) #{tmp\ 943}#) ((lambda (#{tmp\ 958}#) (if (if #{tmp\ 958}# (apply (lambda (#{aok\ 961}# #{r\ 962}#) (if (eq? (syntax->datum #{aok\ 961}#) #:allow-other-keys) (#{id?\ 222}# #{r\ 962}#) #f)) #{tmp\ 958}#) #f) (apply (lambda (#{aok\ 967}# #{r\ 968}#) (#{rest\ 849}# #{r\ 968}# #{req\ 880}# #{opt\ 881}# (cons #t (reverse #{rkey\ 882}#)))) #{tmp\ 958}#) ((lambda (#{tmp\ 969}#) (if (if #{tmp\ 969}# (apply (lambda (#{a\ 972}# #{b\ 973}#) (eq? (syntax->datum #{a\ 972}#) #:rest)) #{tmp\ 969}#) #f) (apply (lambda (#{a\ 976}# #{b\ 977}#) (#{rest\ 849}# #{b\ 977}# #{req\ 880}# #{opt\ 881}# (cons #f (reverse #{rkey\ 882}#)))) #{tmp\ 969}#) ((lambda (#{tmp\ 978}#) (if (if #{tmp\ 978}# (apply (lambda (#{r\ 980}#) (#{id?\ 222}# #{r\ 980}#)) #{tmp\ 978}#) #f) (apply (lambda (#{r\ 982}#) (#{rest\ 849}# #{r\ 982}# #{req\ 880}# #{opt\ 881}# (cons #f (reverse #{rkey\ 882}#)))) #{tmp\ 978}#) ((lambda (#{else\ 984}#) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 840}# #{args\ 879}#)) #{tmp\ 887}#))) (list #{tmp\ 887}#)))) ($sc-dispatch #{tmp\ 887}# '(any any))))) ($sc-dispatch #{tmp\ 887}# '(any . any))))) ($sc-dispatch #{tmp\ 887}# '(any any any))))) ($sc-dispatch #{tmp\ 887}# '(any))))) ($sc-dispatch #{tmp\ 887}# '((any any any) . any))))) ($sc-dispatch #{tmp\ 887}# '((any any) . any))))) ($sc-dispatch #{tmp\ 887}# '(any . any))))) ($sc-dispatch #{tmp\ 887}# (quote ())))) #{args\ 879}#))) (#{opt\ 845}# (lambda (#{args\ 985}# #{req\ 986}# #{ropt\ 987}#) ((lambda (#{tmp\ 991}#) ((lambda (#{tmp\ 992}#) (if #{tmp\ 992}# (apply (lambda () (#{check\ 851}# #{req\ 986}# (reverse #{ropt\ 987}#) #f '())) #{tmp\ 992}#) ((lambda (#{tmp\ 993}#) (if (if #{tmp\ 993}# (apply (lambda (#{a\ 996}# #{b\ 997}#) (#{id?\ 222}# #{a\ 996}#)) #{tmp\ 993}#) #f) (apply (lambda (#{a\ 1000}# #{b\ 1001}#) (#{opt\ 845}# #{b\ 1001}# #{req\ 986}# (cons (cons #{a\ 1000}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i998" "i999")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i988" "i989" "i990")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i850" "i848" "i846" "i844" "i842")) #(ribcage #(orig-args) #((top)) #("i841")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)))) #{ropt\ 987}#))) #{tmp\ 993}#) ((lambda (#{tmp\ 1002}#) (if (if #{tmp\ 1002}# (apply (lambda (#{a\ 1006}# #{init\ 1007}# #{b\ 1008}#) (#{id?\ 222}# #{a\ 1006}#)) #{tmp\ 1002}#) #f) (apply (lambda (#{a\ 1012}# #{init\ 1013}# #{b\ 1014}#) (#{opt\ 845}# #{b\ 1014}# #{req\ 986}# (cons (list #{a\ 1012}# #{init\ 1013}#) #{ropt\ 987}#))) #{tmp\ 1002}#) ((lambda (#{tmp\ 1015}#) (if (if #{tmp\ 1015}# (apply (lambda (#{a\ 1018}# #{b\ 1019}#) (eq? (syntax->datum #{a\ 1018}#) #:key)) #{tmp\ 1015}#) #f) (apply (lambda (#{a\ 1022}# #{b\ 1023}#) (#{key\ 847}# #{b\ 1023}# #{req\ 986}# (reverse #{ropt\ 987}#) '())) #{tmp\ 1015}#) ((lambda (#{tmp\ 1024}#) (if (if #{tmp\ 1024}# (apply (lambda (#{a\ 1027}# #{b\ 1028}#) (eq? (syntax->datum #{a\ 1027}#) #:rest)) #{tmp\ 1024}#) #f) (apply (lambda (#{a\ 1031}# #{b\ 1032}#) (#{rest\ 849}# #{b\ 1032}# #{req\ 986}# (reverse #{ropt\ 987}#) '())) #{tmp\ 1024}#) ((lambda (#{tmp\ 1033}#) (if (if #{tmp\ 1033}# (apply (lambda (#{r\ 1035}#) (#{id?\ 222}# #{r\ 1035}#)) #{tmp\ 1033}#) #f) (apply (lambda (#{r\ 1037}#) (#{rest\ 849}# #{r\ 1037}# #{req\ 986}# (reverse #{ropt\ 987}#) '())) #{tmp\ 1033}#) ((lambda (#{else\ 1039}#) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 840}# #{args\ 985}#)) #{tmp\ 991}#))) (list #{tmp\ 991}#)))) ($sc-dispatch #{tmp\ 991}# '(any any))))) ($sc-dispatch #{tmp\ 991}# '(any . any))))) ($sc-dispatch #{tmp\ 991}# '((any any) . any))))) ($sc-dispatch #{tmp\ 991}# '(any . any))))) ($sc-dispatch #{tmp\ 991}# (quote ())))) #{args\ 985}#))) (#{req\ 843}# (lambda (#{args\ 1040}# #{rreq\ 1041}#) ((lambda (#{tmp\ 1044}#) ((lambda (#{tmp\ 1045}#) (if #{tmp\ 1045}# (apply (lambda () (#{check\ 851}# (reverse #{rreq\ 1041}#) '() #f '())) #{tmp\ 1045}#) ((lambda (#{tmp\ 1046}#) (if (if #{tmp\ 1046}# (apply (lambda (#{a\ 1049}# #{b\ 1050}#) (#{id?\ 222}# #{a\ 1049}#)) #{tmp\ 1046}#) #f) (apply (lambda (#{a\ 1053}# #{b\ 1054}#) (#{req\ 843}# #{b\ 1054}# (cons #{a\ 1053}# #{rreq\ 1041}#))) #{tmp\ 1046}#) ((lambda (#{tmp\ 1055}#) (if (if #{tmp\ 1055}# (apply (lambda (#{a\ 1058}# #{b\ 1059}#) (eq? (syntax->datum #{a\ 1058}#) #:optional)) #{tmp\ 1055}#) #f) (apply (lambda (#{a\ 1062}# #{b\ 1063}#) (#{opt\ 845}# #{b\ 1063}# (reverse #{rreq\ 1041}#) '())) #{tmp\ 1055}#) ((lambda (#{tmp\ 1064}#) (if (if #{tmp\ 1064}# (apply (lambda (#{a\ 1067}# #{b\ 1068}#) (eq? (syntax->datum #{a\ 1067}#) #:key)) #{tmp\ 1064}#) #f) (apply (lambda (#{a\ 1071}# #{b\ 1072}#) (#{key\ 847}# #{b\ 1072}# (reverse #{rreq\ 1041}#) '() '())) #{tmp\ 1064}#) ((lambda (#{tmp\ 1073}#) (if (if #{tmp\ 1073}# (apply (lambda (#{a\ 1076}# #{b\ 1077}#) (eq? (syntax->datum #{a\ 1076}#) #:rest)) #{tmp\ 1073}#) #f) (apply (lambda (#{a\ 1080}# #{b\ 1081}#) (#{rest\ 849}# #{b\ 1081}# (reverse #{rreq\ 1041}#) '() '())) #{tmp\ 1073}#) ((lambda (#{tmp\ 1082}#) (if (if #{tmp\ 1082}# (apply (lambda (#{r\ 1084}#) (#{id?\ 222}# #{r\ 1084}#)) #{tmp\ 1082}#) #f) (apply (lambda (#{r\ 1086}#) (#{rest\ 849}# #{r\ 1086}# (reverse #{rreq\ 1041}#) '() '())) #{tmp\ 1082}#) ((lambda (#{else\ 1088}#) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 840}# #{args\ 1040}#)) #{tmp\ 1044}#))) (list #{tmp\ 1044}#)))) ($sc-dispatch #{tmp\ 1044}# '(any any))))) ($sc-dispatch #{tmp\ 1044}# '(any . any))))) ($sc-dispatch #{tmp\ 1044}# '(any . any))))) ($sc-dispatch #{tmp\ 1044}# '(any . any))))) ($sc-dispatch #{tmp\ 1044}# (quote ())))) #{args\ 1040}#)))) (#{req\ 843}# #{orig-args\ 840}# (quote ()))))) (#{chi-simple-lambda\ 327}# (lambda (#{e\ 1089}# #{r\ 1090}# #{w\ 1091}# #{s\ 1092}# #{mod\ 1093}# #{req\ 1094}# #{rest\ 1095}# #{meta\ 1096}# #{body\ 1097}#) (let ((#{ids\ 1109}# (if #{rest\ 1095}# (append #{req\ 1094}# (list #{rest\ 1095}#)) #{req\ 1094}#))) (let ((#{vars\ 1111}# (map #{gen-var\ 335}# #{ids\ 1109}#))) (let ((#{labels\ 1113}# (#{gen-labels\ 240}# #{ids\ 1109}#))) (#{build-simple-lambda\ 164}# #{s\ 1092}# (map syntax->datum #{req\ 1094}#) (if #{rest\ 1095}# (syntax->datum #{rest\ 1095}#) #f) #{vars\ 1111}# #{meta\ 1096}# (#{chi-body\ 315}# #{body\ 1097}# (#{source-wrap\ 293}# #{e\ 1089}# #{w\ 1091}# #{s\ 1092}# #{mod\ 1093}#) (#{extend-var-env\ 212}# #{labels\ 1113}# #{vars\ 1111}# #{r\ 1090}#) (#{make-binding-wrap\ 269}# #{ids\ 1109}# #{labels\ 1113}# #{w\ 1091}#) #{mod\ 1093}#))))))) (#{lambda-formals\ 325}# (lambda (#{orig-args\ 1116}#) (letrec ((#{check\ 1121}# (lambda (#{req\ 1122}# #{rest\ 1123}#) (if (#{distinct-bound-ids?\ 287}# (if #{rest\ 1123}# (cons #{rest\ 1123}# #{req\ 1122}#) #{req\ 1122}#)) (values #{req\ 1122}# #f #{rest\ 1123}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 1116}#)))) (#{req\ 1119}# (lambda (#{args\ 1129}# #{rreq\ 1130}#) ((lambda (#{tmp\ 1133}#) ((lambda (#{tmp\ 1134}#) (if #{tmp\ 1134}# (apply (lambda () (#{check\ 1121}# (reverse #{rreq\ 1130}#) #f)) #{tmp\ 1134}#) ((lambda (#{tmp\ 1135}#) (if (if #{tmp\ 1135}# (apply (lambda (#{a\ 1138}# #{b\ 1139}#) (#{id?\ 222}# #{a\ 1138}#)) #{tmp\ 1135}#) #f) (apply (lambda (#{a\ 1142}# #{b\ 1143}#) (#{req\ 1119}# #{b\ 1143}# (cons #{a\ 1142}# #{rreq\ 1130}#))) #{tmp\ 1135}#) ((lambda (#{tmp\ 1144}#) (if (if #{tmp\ 1144}# (apply (lambda (#{r\ 1146}#) (#{id?\ 222}# #{r\ 1146}#)) #{tmp\ 1144}#) #f) (apply (lambda (#{r\ 1148}#) (#{check\ 1121}# (reverse #{rreq\ 1130}#) #{r\ 1148}#)) #{tmp\ 1144}#) ((lambda (#{else\ 1150}#) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 1116}# #{args\ 1129}#)) #{tmp\ 1133}#))) (list #{tmp\ 1133}#)))) ($sc-dispatch #{tmp\ 1133}# '(any . any))))) ($sc-dispatch #{tmp\ 1133}# (quote ())))) #{args\ 1129}#)))) (#{req\ 1119}# #{orig-args\ 1116}# (quote ()))))) (#{ellipsis?\ 323}# (lambda (#{x\ 1151}#) (if (#{nonsymbol-id?\ 220}# #{x\ 1151}#) (#{free-id=?\ 281}# #{x\ 1151}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1152")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile))) #f))) (#{chi-void\ 321}# (lambda () (#{build-void\ 142}# #f))) (#{eval-local-transformer\ 319}# (lambda (#{expanded\ 1156}# #{mod\ 1157}#) (let ((#{p\ 1161}# (#{local-eval-hook\ 133}# #{expanded\ 1156}# #{mod\ 1157}#))) (if (procedure? #{p\ 1161}#) (cons #{p\ 1161}# (module-name (current-module))) (syntax-violation #f "nonprocedure transformer" #{p\ 1161}#))))) (#{chi-local-syntax\ 317}# (lambda (#{rec?\ 1162}# #{e\ 1163}# #{r\ 1164}# #{w\ 1165}# #{s\ 1166}# #{mod\ 1167}# #{k\ 1168}#) ((lambda (#{tmp\ 1176}#) ((lambda (#{tmp\ 1177}#) (if #{tmp\ 1177}# (apply (lambda (#{_\ 1183}# #{id\ 1184}# #{val\ 1185}# #{e1\ 1186}# #{e2\ 1187}#) (let ((#{ids\ 1189}# #{id\ 1184}#)) (if (not (#{valid-bound-ids?\ 285}# #{ids\ 1189}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 1163}#) (let ((#{labels\ 1192}# (#{gen-labels\ 240}# #{ids\ 1189}#))) (let ((#{new-w\ 1194}# (#{make-binding-wrap\ 269}# #{ids\ 1189}# #{labels\ 1192}# #{w\ 1165}#))) (#{k\ 1168}# (cons #{e1\ 1186}# #{e2\ 1187}#) (#{extend-env\ 210}# #{labels\ 1192}# (let ((#{w\ 1198}# (if #{rec?\ 1162}# #{new-w\ 1194}# #{w\ 1165}#)) (#{trans-r\ 1199}# (#{macros-only-env\ 214}# #{r\ 1164}#))) (map (lambda (#{x\ 1200}#) (cons 'macro (#{eval-local-transformer\ 319}# (#{chi\ 307}# #{x\ 1200}# #{trans-r\ 1199}# #{w\ 1198}# #{mod\ 1167}#) #{mod\ 1167}#))) #{val\ 1185}#)) #{r\ 1164}#) #{new-w\ 1194}# #{s\ 1166}# #{mod\ 1167}#)))))) #{tmp\ 1177}#) ((lambda (#{_\ 1205}#) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 293}# #{e\ 1163}# #{w\ 1165}# #{s\ 1166}# #{mod\ 1167}#))) #{tmp\ 1176}#))) ($sc-dispatch #{tmp\ 1176}# '(any #(each (any any)) any . each-any)))) #{e\ 1163}#))) (#{chi-body\ 315}# (lambda (#{body\ 1206}# #{outer-form\ 1207}# #{r\ 1208}# #{w\ 1209}# #{mod\ 1210}#) (let ((#{r\ 1218}# (cons '("placeholder" placeholder) #{r\ 1208}#))) (let ((#{ribcage\ 1220}# (#{make-ribcage\ 243}# '() '() '()))) (let ((#{w\ 1223}# (#{make-wrap\ 227}# (#{wrap-marks\ 229}# #{w\ 1209}#) (cons #{ribcage\ 1220}# (#{wrap-subst\ 231}# #{w\ 1209}#))))) (letrec ((#{parse\ 1232}# (lambda (#{body\ 1233}# #{ids\ 1234}# #{labels\ 1235}# #{var-ids\ 1236}# #{vars\ 1237}# #{vals\ 1238}# #{bindings\ 1239}#) (if (null? #{body\ 1233}#) (syntax-violation #f "no expressions in body" #{outer-form\ 1207}#) (let ((#{e\ 1244}# (cdar #{body\ 1233}#)) (#{er\ 1245}# (caar #{body\ 1233}#))) (call-with-values (lambda () (#{syntax-type\ 303}# #{e\ 1244}# #{er\ 1245}# '(()) (#{source-annotation\ 201}# #{er\ 1245}#) #{ribcage\ 1220}# #{mod\ 1210}# #f)) (lambda (#{type\ 1247}# #{value\ 1248}# #{e\ 1249}# #{w\ 1250}# #{s\ 1251}# #{mod\ 1252}#) (if (memv #{type\ 1247}# '(define-form)) (let ((#{id\ 1262}# (#{wrap\ 291}# #{value\ 1248}# #{w\ 1250}# #{mod\ 1252}#)) (#{label\ 1263}# (#{gen-label\ 238}#))) (let ((#{var\ 1265}# (#{gen-var\ 335}# #{id\ 1262}#))) (begin (#{extend-ribcage!\ 267}# #{ribcage\ 1220}# #{id\ 1262}# #{label\ 1263}#) (#{parse\ 1232}# (cdr #{body\ 1233}#) (cons #{id\ 1262}# #{ids\ 1234}#) (cons #{label\ 1263}# #{labels\ 1235}#) (cons #{id\ 1262}# #{var-ids\ 1236}#) (cons #{var\ 1265}# #{vars\ 1237}#) (cons (cons #{er\ 1245}# (#{wrap\ 291}# #{e\ 1249}# #{w\ 1250}# #{mod\ 1252}#)) #{vals\ 1238}#) (cons (cons 'lexical #{var\ 1265}#) #{bindings\ 1239}#))))) (if (memv #{type\ 1247}# '(define-syntax-form)) (let ((#{id\ 1270}# (#{wrap\ 291}# #{value\ 1248}# #{w\ 1250}# #{mod\ 1252}#)) (#{label\ 1271}# (#{gen-label\ 238}#))) (begin (#{extend-ribcage!\ 267}# #{ribcage\ 1220}# #{id\ 1270}# #{label\ 1271}#) (#{parse\ 1232}# (cdr #{body\ 1233}#) (cons #{id\ 1270}# #{ids\ 1234}#) (cons #{label\ 1271}# #{labels\ 1235}#) #{var-ids\ 1236}# #{vars\ 1237}# #{vals\ 1238}# (cons (cons 'macro (cons #{er\ 1245}# (#{wrap\ 291}# #{e\ 1249}# #{w\ 1250}# #{mod\ 1252}#))) #{bindings\ 1239}#)))) (if (memv #{type\ 1247}# '(begin-form)) ((lambda (#{tmp\ 1274}#) ((lambda (#{tmp\ 1275}#) (if #{tmp\ 1275}# (apply (lambda (#{_\ 1278}# #{e1\ 1279}#) (#{parse\ 1232}# (letrec ((#{f\ 1282}# (lambda (#{forms\ 1283}#) (if (null? #{forms\ 1283}#) (cdr #{body\ 1233}#) (cons (cons #{er\ 1245}# (#{wrap\ 291}# (car #{forms\ 1283}#) #{w\ 1250}# #{mod\ 1252}#)) (#{f\ 1282}# (cdr #{forms\ 1283}#))))))) (#{f\ 1282}# #{e1\ 1279}#)) #{ids\ 1234}# #{labels\ 1235}# #{var-ids\ 1236}# #{vars\ 1237}# #{vals\ 1238}# #{bindings\ 1239}#)) #{tmp\ 1275}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1274}#))) ($sc-dispatch #{tmp\ 1274}# '(any . each-any)))) #{e\ 1249}#) (if (memv #{type\ 1247}# '(local-syntax-form)) (#{chi-local-syntax\ 317}# #{value\ 1248}# #{e\ 1249}# #{er\ 1245}# #{w\ 1250}# #{s\ 1251}# #{mod\ 1252}# (lambda (#{forms\ 1286}# #{er\ 1287}# #{w\ 1288}# #{s\ 1289}# #{mod\ 1290}#) (#{parse\ 1232}# (letrec ((#{f\ 1298}# (lambda (#{forms\ 1299}#) (if (null? #{forms\ 1299}#) (cdr #{body\ 1233}#) (cons (cons #{er\ 1287}# (#{wrap\ 291}# (car #{forms\ 1299}#) #{w\ 1288}# #{mod\ 1290}#)) (#{f\ 1298}# (cdr #{forms\ 1299}#))))))) (#{f\ 1298}# #{forms\ 1286}#)) #{ids\ 1234}# #{labels\ 1235}# #{var-ids\ 1236}# #{vars\ 1237}# #{vals\ 1238}# #{bindings\ 1239}#))) (if (null? #{ids\ 1234}#) (#{build-sequence\ 174}# #f (map (lambda (#{x\ 1302}#) (#{chi\ 307}# (cdr #{x\ 1302}#) (car #{x\ 1302}#) '(()) #{mod\ 1252}#)) (cons (cons #{er\ 1245}# (#{source-wrap\ 293}# #{e\ 1249}# #{w\ 1250}# #{s\ 1251}# #{mod\ 1252}#)) (cdr #{body\ 1233}#)))) (begin (if (not (#{valid-bound-ids?\ 285}# #{ids\ 1234}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 1207}#)) (letrec ((#{loop\ 1309}# (lambda (#{bs\ 1310}# #{er-cache\ 1311}# #{r-cache\ 1312}#) (if (not (null? #{bs\ 1310}#)) (let ((#{b\ 1315}# (car #{bs\ 1310}#))) (if (eq? (car #{b\ 1315}#) 'macro) (let ((#{er\ 1318}# (cadr #{b\ 1315}#))) (let ((#{r-cache\ 1320}# (if (eq? #{er\ 1318}# #{er-cache\ 1311}#) #{r-cache\ 1312}# (#{macros-only-env\ 214}# #{er\ 1318}#)))) (begin (set-cdr! #{b\ 1315}# (#{eval-local-transformer\ 319}# (#{chi\ 307}# (cddr #{b\ 1315}#) #{r-cache\ 1320}# '(()) #{mod\ 1252}#) #{mod\ 1252}#)) (#{loop\ 1309}# (cdr #{bs\ 1310}#) #{er\ 1318}# #{r-cache\ 1320}#)))) (#{loop\ 1309}# (cdr #{bs\ 1310}#) #{er-cache\ 1311}# #{r-cache\ 1312}#))))))) (#{loop\ 1309}# #{bindings\ 1239}# #f #f)) (set-cdr! #{r\ 1218}# (#{extend-env\ 210}# #{labels\ 1235}# #{bindings\ 1239}# (cdr #{r\ 1218}#))) (#{build-letrec\ 180}# #f (map syntax->datum #{var-ids\ 1236}#) #{vars\ 1237}# (map (lambda (#{x\ 1323}#) (#{chi\ 307}# (cdr #{x\ 1323}#) (car #{x\ 1323}#) '(()) #{mod\ 1252}#)) #{vals\ 1238}#) (#{build-sequence\ 174}# #f (map (lambda (#{x\ 1327}#) (#{chi\ 307}# (cdr #{x\ 1327}#) (car #{x\ 1327}#) '(()) #{mod\ 1252}#)) (cons (cons #{er\ 1245}# (#{source-wrap\ 293}# #{e\ 1249}# #{w\ 1250}# #{s\ 1251}# #{mod\ 1252}#)) (cdr #{body\ 1233}#)))))))))))))))))) (#{parse\ 1232}# (map (lambda (#{x\ 1240}#) (cons #{r\ 1218}# (#{wrap\ 291}# #{x\ 1240}# #{w\ 1223}# #{mod\ 1210}#))) #{body\ 1206}#) '() '() '() '() '() '()))))))) (#{chi-macro\ 313}# (lambda (#{p\ 1330}# #{e\ 1331}# #{r\ 1332}# #{w\ 1333}# #{rib\ 1334}# #{mod\ 1335}#) (letrec ((#{rebuild-macro-output\ 1343}# (lambda (#{x\ 1344}# #{m\ 1345}#) (if (pair? #{x\ 1344}#) (cons (#{rebuild-macro-output\ 1343}# (car #{x\ 1344}#) #{m\ 1345}#) (#{rebuild-macro-output\ 1343}# (cdr #{x\ 1344}#) #{m\ 1345}#)) (if (#{syntax-object?\ 186}# #{x\ 1344}#) (let ((#{w\ 1353}# (#{syntax-object-wrap\ 190}# #{x\ 1344}#))) (let ((#{ms\ 1356}# (#{wrap-marks\ 229}# #{w\ 1353}#)) (#{s\ 1357}# (#{wrap-subst\ 231}# #{w\ 1353}#))) (if (if (pair? #{ms\ 1356}#) (eq? (car #{ms\ 1356}#) #f) #f) (#{make-syntax-object\ 184}# (#{syntax-object-expression\ 188}# #{x\ 1344}#) (#{make-wrap\ 227}# (cdr #{ms\ 1356}#) (if #{rib\ 1334}# (cons #{rib\ 1334}# (cdr #{s\ 1357}#)) (cdr #{s\ 1357}#))) (#{syntax-object-module\ 192}# #{x\ 1344}#)) (#{make-syntax-object\ 184}# (#{syntax-object-expression\ 188}# #{x\ 1344}#) (#{make-wrap\ 227}# (cons #{m\ 1345}# #{ms\ 1356}#) (if #{rib\ 1334}# (cons #{rib\ 1334}# (cons 'shift #{s\ 1357}#)) (cons (quote shift) #{s\ 1357}#))) (cons 'hygiene (cdr #{p\ 1330}#)))))) (if (vector? #{x\ 1344}#) (let ((#{n\ 1365}# (vector-length #{x\ 1344}#))) (let ((#{v\ 1367}# (make-vector #{n\ 1365}#))) (letrec ((#{loop\ 1370}# (lambda (#{i\ 1371}#) (if (#{fx=\ 127}# #{i\ 1371}# #{n\ 1365}#) (begin (if #f #f) #{v\ 1367}#) (begin (vector-set! #{v\ 1367}# #{i\ 1371}# (#{rebuild-macro-output\ 1343}# (vector-ref #{x\ 1344}# #{i\ 1371}#) #{m\ 1345}#)) (#{loop\ 1370}# (#{fx+\ 123}# #{i\ 1371}# 1))))))) (#{loop\ 1370}# 0)))) (if (symbol? #{x\ 1344}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 293}# #{e\ 1331}# #{w\ 1333}# (#{wrap-subst\ 231}# #{w\ 1333}#) #{mod\ 1335}#) #{x\ 1344}#) #{x\ 1344}#))))))) (#{rebuild-macro-output\ 1343}# ((car #{p\ 1330}#) (#{wrap\ 291}# #{e\ 1331}# (#{anti-mark\ 263}# #{w\ 1333}#) #{mod\ 1335}#)) (gensym "m"))))) (#{chi-application\ 311}# (lambda (#{x\ 1378}# #{e\ 1379}# #{r\ 1380}# #{w\ 1381}# #{s\ 1382}# #{mod\ 1383}#) ((lambda (#{tmp\ 1390}#) ((lambda (#{tmp\ 1391}#) (if #{tmp\ 1391}# (apply (lambda (#{e0\ 1394}# #{e1\ 1395}#) (#{build-application\ 144}# #{s\ 1382}# #{x\ 1378}# (map (lambda (#{e\ 1396}#) (#{chi\ 307}# #{e\ 1396}# #{r\ 1380}# #{w\ 1381}# #{mod\ 1383}#)) #{e1\ 1395}#))) #{tmp\ 1391}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1390}#))) ($sc-dispatch #{tmp\ 1390}# '(any . each-any)))) #{e\ 1379}#))) (#{chi-expr\ 309}# (lambda (#{type\ 1399}# #{value\ 1400}# #{e\ 1401}# #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#) (if (memv #{type\ 1399}# (quote (lexical))) (#{build-lexical-reference\ 150}# 'value #{s\ 1404}# #{e\ 1401}# #{value\ 1400}#) (if (memv #{type\ 1399}# (quote (core core-form))) (#{value\ 1400}# #{e\ 1401}# #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#) (if (memv #{type\ 1399}# (quote (module-ref))) (call-with-values (lambda () (#{value\ 1400}# #{e\ 1401}# #{r\ 1402}# #{w\ 1403}#)) (lambda (#{e\ 1416}# #{r\ 1417}# #{w\ 1418}# #{s\ 1419}# #{mod\ 1420}#) (#{chi\ 307}# #{e\ 1416}# #{r\ 1417}# #{w\ 1418}# #{mod\ 1420}#))) (if (memv #{type\ 1399}# (quote (lexical-call))) (#{chi-application\ 311}# (#{build-lexical-reference\ 150}# 'fun (#{source-annotation\ 201}# (car #{e\ 1401}#)) (car #{e\ 1401}#) #{value\ 1400}#) #{e\ 1401}# #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#) (if (memv #{type\ 1399}# (quote (global-call))) (#{chi-application\ 311}# (#{build-global-reference\ 156}# (#{source-annotation\ 201}# (car #{e\ 1401}#)) (if (#{syntax-object?\ 186}# #{value\ 1400}#) (#{syntax-object-expression\ 188}# #{value\ 1400}#) #{value\ 1400}#) (if (#{syntax-object?\ 186}# #{value\ 1400}#) (#{syntax-object-module\ 192}# #{value\ 1400}#) #{mod\ 1405}#)) #{e\ 1401}# #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#) (if (memv #{type\ 1399}# (quote (constant))) (#{build-data\ 172}# #{s\ 1404}# (#{strip\ 333}# (#{source-wrap\ 293}# #{e\ 1401}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#) '(()))) (if (memv #{type\ 1399}# (quote (global))) (#{build-global-reference\ 156}# #{s\ 1404}# #{value\ 1400}# #{mod\ 1405}#) (if (memv #{type\ 1399}# (quote (call))) (#{chi-application\ 311}# (#{chi\ 307}# (car #{e\ 1401}#) #{r\ 1402}# #{w\ 1403}# #{mod\ 1405}#) #{e\ 1401}# #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#) (if (memv #{type\ 1399}# (quote (begin-form))) ((lambda (#{tmp\ 1433}#) ((lambda (#{tmp\ 1434}#) (if #{tmp\ 1434}# (apply (lambda (#{_\ 1438}# #{e1\ 1439}# #{e2\ 1440}#) (#{chi-sequence\ 295}# (cons #{e1\ 1439}# #{e2\ 1440}#) #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#)) #{tmp\ 1434}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1433}#))) ($sc-dispatch #{tmp\ 1433}# '(any any . each-any)))) #{e\ 1401}#) (if (memv #{type\ 1399}# '(local-syntax-form)) (#{chi-local-syntax\ 317}# #{value\ 1400}# #{e\ 1401}# #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}# #{chi-sequence\ 295}#) (if (memv #{type\ 1399}# '(eval-when-form)) ((lambda (#{tmp\ 1444}#) ((lambda (#{tmp\ 1445}#) (if #{tmp\ 1445}# (apply (lambda (#{_\ 1450}# #{x\ 1451}# #{e1\ 1452}# #{e2\ 1453}#) (let ((#{when-list\ 1455}# (#{chi-when-list\ 301}# #{e\ 1401}# #{x\ 1451}# #{w\ 1403}#))) (if (memq 'eval #{when-list\ 1455}#) (#{chi-sequence\ 295}# (cons #{e1\ 1452}# #{e2\ 1453}#) #{r\ 1402}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#) (#{chi-void\ 321}#)))) #{tmp\ 1445}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1444}#))) ($sc-dispatch #{tmp\ 1444}# '(any each-any any . each-any)))) #{e\ 1401}#) (if (memv #{type\ 1399}# '(define-form define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 1401}# (#{wrap\ 291}# #{value\ 1400}# #{w\ 1403}# #{mod\ 1405}#)) (if (memv #{type\ 1399}# '(syntax)) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 293}# #{e\ 1401}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#)) (if (memv #{type\ 1399}# '(displaced-lexical)) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 293}# #{e\ 1401}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 293}# #{e\ 1401}# #{w\ 1403}# #{s\ 1404}# #{mod\ 1405}#)))))))))))))))))) (#{chi\ 307}# (lambda (#{e\ 1462}# #{r\ 1463}# #{w\ 1464}# #{mod\ 1465}#) (call-with-values (lambda () (#{syntax-type\ 303}# #{e\ 1462}# #{r\ 1463}# #{w\ 1464}# (#{source-annotation\ 201}# #{e\ 1462}#) #f #{mod\ 1465}# #f)) (lambda (#{type\ 1470}# #{value\ 1471}# #{e\ 1472}# #{w\ 1473}# #{s\ 1474}# #{mod\ 1475}#) (#{chi-expr\ 309}# #{type\ 1470}# #{value\ 1471}# #{e\ 1472}# #{r\ 1463}# #{w\ 1473}# #{s\ 1474}# #{mod\ 1475}#))))) (#{chi-top\ 305}# (lambda (#{e\ 1482}# #{r\ 1483}# #{w\ 1484}# #{m\ 1485}# #{esew\ 1486}# #{mod\ 1487}#) (call-with-values (lambda () (#{syntax-type\ 303}# #{e\ 1482}# #{r\ 1483}# #{w\ 1484}# (#{source-annotation\ 201}# #{e\ 1482}#) #f #{mod\ 1487}# #f)) (lambda (#{type\ 1508}# #{value\ 1509}# #{e\ 1510}# #{w\ 1511}# #{s\ 1512}# #{mod\ 1513}#) (if (memv #{type\ 1508}# (quote (begin-form))) ((lambda (#{tmp\ 1521}#) ((lambda (#{tmp\ 1522}#) (if #{tmp\ 1522}# (apply (lambda (#{_\ 1524}#) (#{chi-void\ 321}#)) #{tmp\ 1522}#) ((lambda (#{tmp\ 1525}#) (if #{tmp\ 1525}# (apply (lambda (#{_\ 1529}# #{e1\ 1530}# #{e2\ 1531}#) (#{chi-top-sequence\ 297}# (cons #{e1\ 1530}# #{e2\ 1531}#) #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# #{m\ 1485}# #{esew\ 1486}# #{mod\ 1513}#)) #{tmp\ 1525}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1521}#))) ($sc-dispatch #{tmp\ 1521}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 1521}# (quote (any))))) #{e\ 1510}#) (if (memv #{type\ 1508}# (quote (local-syntax-form))) (#{chi-local-syntax\ 317}# #{value\ 1509}# #{e\ 1510}# #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# #{mod\ 1513}# (lambda (#{body\ 1534}# #{r\ 1535}# #{w\ 1536}# #{s\ 1537}# #{mod\ 1538}#) (#{chi-top-sequence\ 297}# #{body\ 1534}# #{r\ 1535}# #{w\ 1536}# #{s\ 1537}# #{m\ 1485}# #{esew\ 1486}# #{mod\ 1538}#))) (if (memv #{type\ 1508}# (quote (eval-when-form))) ((lambda (#{tmp\ 1545}#) ((lambda (#{tmp\ 1546}#) (if #{tmp\ 1546}# (apply (lambda (#{_\ 1551}# #{x\ 1552}# #{e1\ 1553}# #{e2\ 1554}#) (let ((#{when-list\ 1557}# (#{chi-when-list\ 301}# #{e\ 1510}# #{x\ 1552}# #{w\ 1511}#)) (#{body\ 1558}# (cons #{e1\ 1553}# #{e2\ 1554}#))) (if (eq? #{m\ 1485}# (quote e)) (if (memq 'eval #{when-list\ 1557}#) (#{chi-top-sequence\ 297}# #{body\ 1558}# #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# (if (memq 'expand #{when-list\ 1557}#) 'c&e 'e) '(eval) #{mod\ 1513}#) (begin (if (memq 'expand #{when-list\ 1557}#) (#{top-level-eval-hook\ 131}# (#{chi-top-sequence\ 297}# #{body\ 1558}# #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# 'e '(eval) #{mod\ 1513}#) #{mod\ 1513}#)) (#{chi-void\ 321}#))) (if (memq 'load #{when-list\ 1557}#) (if (let ((#{t\ 1567}# (memq 'compile #{when-list\ 1557}#))) (if #{t\ 1567}# #{t\ 1567}# (let ((#{t\ 1570}# (memq 'expand #{when-list\ 1557}#))) (if #{t\ 1570}# #{t\ 1570}# (if (eq? #{m\ 1485}# 'c&e) (memq 'eval #{when-list\ 1557}#) #f))))) (#{chi-top-sequence\ 297}# #{body\ 1558}# #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# 'c&e '(compile load) #{mod\ 1513}#) (if (memq #{m\ 1485}# '(c c&e)) (#{chi-top-sequence\ 297}# #{body\ 1558}# #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# 'c '(load) #{mod\ 1513}#) (#{chi-void\ 321}#))) (if (let ((#{t\ 1578}# (memq 'compile #{when-list\ 1557}#))) (if #{t\ 1578}# #{t\ 1578}# (let ((#{t\ 1581}# (memq 'expand #{when-list\ 1557}#))) (if #{t\ 1581}# #{t\ 1581}# (if (eq? #{m\ 1485}# 'c&e) (memq 'eval #{when-list\ 1557}#) #f))))) (begin (#{top-level-eval-hook\ 131}# (#{chi-top-sequence\ 297}# #{body\ 1558}# #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# 'e '(eval) #{mod\ 1513}#) #{mod\ 1513}#) (#{chi-void\ 321}#)) (#{chi-void\ 321}#)))))) #{tmp\ 1546}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1545}#))) ($sc-dispatch #{tmp\ 1545}# '(any each-any any . each-any)))) #{e\ 1510}#) (if (memv #{type\ 1508}# '(define-syntax-form)) (let ((#{n\ 1589}# (#{id-var-name\ 279}# #{value\ 1509}# #{w\ 1511}#)) (#{r\ 1590}# (#{macros-only-env\ 214}# #{r\ 1483}#))) (if (memv #{m\ 1485}# (quote (c))) (if (memq (quote compile) #{esew\ 1486}#) (let ((#{e\ 1593}# (#{chi-install-global\ 299}# #{n\ 1589}# (#{chi\ 307}# #{e\ 1510}# #{r\ 1590}# #{w\ 1511}# #{mod\ 1513}#)))) (begin (#{top-level-eval-hook\ 131}# #{e\ 1593}# #{mod\ 1513}#) (if (memq (quote load) #{esew\ 1486}#) #{e\ 1593}# (#{chi-void\ 321}#)))) (if (memq (quote load) #{esew\ 1486}#) (#{chi-install-global\ 299}# #{n\ 1589}# (#{chi\ 307}# #{e\ 1510}# #{r\ 1590}# #{w\ 1511}# #{mod\ 1513}#)) (#{chi-void\ 321}#))) (if (memv #{m\ 1485}# (quote (c&e))) (let ((#{e\ 1596}# (#{chi-install-global\ 299}# #{n\ 1589}# (#{chi\ 307}# #{e\ 1510}# #{r\ 1590}# #{w\ 1511}# #{mod\ 1513}#)))) (begin (#{top-level-eval-hook\ 131}# #{e\ 1596}# #{mod\ 1513}#) #{e\ 1596}#)) (begin (if (memq (quote eval) #{esew\ 1486}#) (#{top-level-eval-hook\ 131}# (#{chi-install-global\ 299}# #{n\ 1589}# (#{chi\ 307}# #{e\ 1510}# #{r\ 1590}# #{w\ 1511}# #{mod\ 1513}#)) #{mod\ 1513}#)) (#{chi-void\ 321}#))))) (if (memv #{type\ 1508}# (quote (define-form))) (let ((#{n\ 1601}# (#{id-var-name\ 279}# #{value\ 1509}# #{w\ 1511}#))) (let ((#{type\ 1603}# (#{binding-type\ 205}# (#{lookup\ 216}# #{n\ 1601}# #{r\ 1483}# #{mod\ 1513}#)))) (if (memv #{type\ 1603}# '(global core macro module-ref)) (begin (if (if (memq #{m\ 1485}# (quote (c c&e))) (if (not (module-local-variable (current-module) #{n\ 1601}#)) (current-module) #f) #f) (let ((#{old\ 1609}# (module-variable (current-module) #{n\ 1601}#))) (module-define! (current-module) #{n\ 1601}# (if (variable? #{old\ 1609}#) (variable-ref #{old\ 1609}#) #f)))) (let ((#{x\ 1612}# (#{build-global-definition\ 162}# #{s\ 1512}# #{n\ 1601}# (#{chi\ 307}# #{e\ 1510}# #{r\ 1483}# #{w\ 1511}# #{mod\ 1513}#)))) (begin (if (eq? #{m\ 1485}# (quote c&e)) (#{top-level-eval-hook\ 131}# #{x\ 1612}# #{mod\ 1513}#)) #{x\ 1612}#))) (if (memv #{type\ 1603}# '(displaced-lexical)) (syntax-violation #f "identifier out of context" #{e\ 1510}# (#{wrap\ 291}# #{value\ 1509}# #{w\ 1511}# #{mod\ 1513}#)) (syntax-violation #f "cannot define keyword at top level" #{e\ 1510}# (#{wrap\ 291}# #{value\ 1509}# #{w\ 1511}# #{mod\ 1513}#)))))) (let ((#{x\ 1618}# (#{chi-expr\ 309}# #{type\ 1508}# #{value\ 1509}# #{e\ 1510}# #{r\ 1483}# #{w\ 1511}# #{s\ 1512}# #{mod\ 1513}#))) (begin (if (eq? #{m\ 1485}# (quote c&e)) (#{top-level-eval-hook\ 131}# #{x\ 1618}# #{mod\ 1513}#)) #{x\ 1618}#))))))))))) (#{syntax-type\ 303}# (lambda (#{e\ 1619}# #{r\ 1620}# #{w\ 1621}# #{s\ 1622}# #{rib\ 1623}# #{mod\ 1624}# #{for-car?\ 1625}#) (if (symbol? #{e\ 1619}#) (let ((#{n\ 1637}# (#{id-var-name\ 279}# #{e\ 1619}# #{w\ 1621}#))) (let ((#{b\ 1639}# (#{lookup\ 216}# #{n\ 1637}# #{r\ 1620}# #{mod\ 1624}#))) (let ((#{type\ 1641}# (#{binding-type\ 205}# #{b\ 1639}#))) (if (memv #{type\ 1641}# (quote (lexical))) (values #{type\ 1641}# (#{binding-value\ 207}# #{b\ 1639}#) #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{type\ 1641}# (quote (global))) (values #{type\ 1641}# #{n\ 1637}# #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{type\ 1641}# (quote (macro))) (if #{for-car?\ 1625}# (values #{type\ 1641}# (#{binding-value\ 207}# #{b\ 1639}#) #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (#{syntax-type\ 303}# (#{chi-macro\ 313}# (#{binding-value\ 207}# #{b\ 1639}#) #{e\ 1619}# #{r\ 1620}# #{w\ 1621}# #{rib\ 1623}# #{mod\ 1624}#) #{r\ 1620}# '(()) #{s\ 1622}# #{rib\ 1623}# #{mod\ 1624}# #f)) (values #{type\ 1641}# (#{binding-value\ 207}# #{b\ 1639}#) #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#))))))) (if (pair? #{e\ 1619}#) (let ((#{first\ 1650}# (car #{e\ 1619}#))) (call-with-values (lambda () (#{syntax-type\ 303}# #{first\ 1650}# #{r\ 1620}# #{w\ 1621}# #{s\ 1622}# #{rib\ 1623}# #{mod\ 1624}# #t)) (lambda (#{ftype\ 1651}# #{fval\ 1652}# #{fe\ 1653}# #{fw\ 1654}# #{fs\ 1655}# #{fmod\ 1656}#) (if (memv #{ftype\ 1651}# (quote (lexical))) (values 'lexical-call #{fval\ 1652}# #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{ftype\ 1651}# (quote (global))) (values 'global-call (#{make-syntax-object\ 184}# #{fval\ 1652}# #{w\ 1621}# #{fmod\ 1656}#) #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{ftype\ 1651}# (quote (macro))) (#{syntax-type\ 303}# (#{chi-macro\ 313}# #{fval\ 1652}# #{e\ 1619}# #{r\ 1620}# #{w\ 1621}# #{rib\ 1623}# #{mod\ 1624}#) #{r\ 1620}# '(()) #{s\ 1622}# #{rib\ 1623}# #{mod\ 1624}# #{for-car?\ 1625}#) (if (memv #{ftype\ 1651}# (quote (module-ref))) (call-with-values (lambda () (#{fval\ 1652}# #{e\ 1619}# #{r\ 1620}# #{w\ 1621}#)) (lambda (#{e\ 1668}# #{r\ 1669}# #{w\ 1670}# #{s\ 1671}# #{mod\ 1672}#) (#{syntax-type\ 303}# #{e\ 1668}# #{r\ 1669}# #{w\ 1670}# #{s\ 1671}# #{rib\ 1623}# #{mod\ 1672}# #{for-car?\ 1625}#))) (if (memv #{ftype\ 1651}# (quote (core))) (values 'core-form #{fval\ 1652}# #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{ftype\ 1651}# '(local-syntax)) (values 'local-syntax-form #{fval\ 1652}# #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{ftype\ 1651}# (quote (begin))) (values 'begin-form #f #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{ftype\ 1651}# '(eval-when)) (values 'eval-when-form #f #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (if (memv #{ftype\ 1651}# '(define)) ((lambda (#{tmp\ 1683}#) ((lambda (#{tmp\ 1684}#) (if (if #{tmp\ 1684}# (apply (lambda (#{_\ 1688}# #{name\ 1689}# #{val\ 1690}#) (#{id?\ 222}# #{name\ 1689}#)) #{tmp\ 1684}#) #f) (apply (lambda (#{_\ 1694}# #{name\ 1695}# #{val\ 1696}#) (values 'define-form #{name\ 1695}# #{val\ 1696}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#)) #{tmp\ 1684}#) ((lambda (#{tmp\ 1697}#) (if (if #{tmp\ 1697}# (apply (lambda (#{_\ 1703}# #{name\ 1704}# #{args\ 1705}# #{e1\ 1706}# #{e2\ 1707}#) (if (#{id?\ 222}# #{name\ 1704}#) (#{valid-bound-ids?\ 285}# (#{lambda-var-list\ 337}# #{args\ 1705}#)) #f)) #{tmp\ 1697}#) #f) (apply (lambda (#{_\ 1715}# #{name\ 1716}# #{args\ 1717}# #{e1\ 1718}# #{e2\ 1719}#) (values 'define-form (#{wrap\ 291}# #{name\ 1716}# #{w\ 1621}# #{mod\ 1624}#) (#{decorate-source\ 140}# (cons '#(syntax-object lambda ((top) #(ribcage #(_ name args e1 e2) #((top) (top) (top) (top) (top)) #("i1710" "i1711" "i1712" "i1713" "i1714")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1657" "i1658" "i1659" "i1660" "i1661" "i1662")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1649")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1626" "i1627" "i1628" "i1629" "i1630" "i1631" "i1632")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)) (#{wrap\ 291}# (cons #{args\ 1717}# (cons #{e1\ 1718}# #{e2\ 1719}#)) #{w\ 1621}# #{mod\ 1624}#)) #{s\ 1622}#) '(()) #{s\ 1622}# #{mod\ 1624}#)) #{tmp\ 1697}#) ((lambda (#{tmp\ 1722}#) (if (if #{tmp\ 1722}# (apply (lambda (#{_\ 1725}# #{name\ 1726}#) (#{id?\ 222}# #{name\ 1726}#)) #{tmp\ 1722}#) #f) (apply (lambda (#{_\ 1729}# #{name\ 1730}#) (values 'define-form (#{wrap\ 291}# #{name\ 1730}# #{w\ 1621}# #{mod\ 1624}#) '(#(syntax-object if ((top) #(ribcage #(_ name) #((top) (top)) #("i1727" "i1728")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1657" "i1658" "i1659" "i1660" "i1661" "i1662")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1649")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1626" "i1627" "i1628" "i1629" "i1630" "i1631" "i1632")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i1727" "i1728")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1657" "i1658" "i1659" "i1660" "i1661" "i1662")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1649")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1626" "i1627" "i1628" "i1629" "i1630" "i1631" "i1632")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i1727" "i1728")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1657" "i1658" "i1659" "i1660" "i1661" "i1662")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1649")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1626" "i1627" "i1628" "i1629" "i1630" "i1631" "i1632")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile))) '(()) #{s\ 1622}# #{mod\ 1624}#)) #{tmp\ 1722}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1683}#))) ($sc-dispatch #{tmp\ 1683}# '(any any))))) ($sc-dispatch #{tmp\ 1683}# '(any (any . any) any . each-any))))) ($sc-dispatch #{tmp\ 1683}# '(any any any)))) #{e\ 1619}#) (if (memv #{ftype\ 1651}# '(define-syntax)) ((lambda (#{tmp\ 1733}#) ((lambda (#{tmp\ 1734}#) (if (if #{tmp\ 1734}# (apply (lambda (#{_\ 1738}# #{name\ 1739}# #{val\ 1740}#) (#{id?\ 222}# #{name\ 1739}#)) #{tmp\ 1734}#) #f) (apply (lambda (#{_\ 1744}# #{name\ 1745}# #{val\ 1746}#) (values 'define-syntax-form #{name\ 1745}# #{val\ 1746}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#)) #{tmp\ 1734}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1733}#))) ($sc-dispatch #{tmp\ 1733}# '(any any any)))) #{e\ 1619}#) (values 'call #f #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#)))))))))))))) (if (#{syntax-object?\ 186}# #{e\ 1619}#) (#{syntax-type\ 303}# (#{syntax-object-expression\ 188}# #{e\ 1619}#) #{r\ 1620}# (#{join-wraps\ 273}# #{w\ 1621}# (#{syntax-object-wrap\ 190}# #{e\ 1619}#)) #{s\ 1622}# #{rib\ 1623}# (let ((#{t\ 1752}# (#{syntax-object-module\ 192}# #{e\ 1619}#))) (if #{t\ 1752}# #{t\ 1752}# #{mod\ 1624}#)) #{for-car?\ 1625}#) (if (self-evaluating? #{e\ 1619}#) (values 'constant #f #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#) (values 'other #f #{e\ 1619}# #{w\ 1621}# #{s\ 1622}# #{mod\ 1624}#))))))) (#{chi-when-list\ 301}# (lambda (#{e\ 1757}# #{when-list\ 1758}# #{w\ 1759}#) (letrec ((#{f\ 1766}# (lambda (#{when-list\ 1767}# #{situations\ 1768}#) (if (null? #{when-list\ 1767}#) #{situations\ 1768}# (#{f\ 1766}# (cdr #{when-list\ 1767}#) (cons (let ((#{x\ 1770}# (car #{when-list\ 1767}#))) (if (#{free-id=?\ 281}# #{x\ 1770}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1769")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1763" "i1764" "i1765")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1760" "i1761" "i1762")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile))) 'compile (if (#{free-id=?\ 281}# #{x\ 1770}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1769")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1763" "i1764" "i1765")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1760" "i1761" "i1762")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile))) 'load (if (#{free-id=?\ 281}# #{x\ 1770}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1769")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1763" "i1764" "i1765")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1760" "i1761" "i1762")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile))) 'eval (if (#{free-id=?\ 281}# #{x\ 1770}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1769")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1763" "i1764" "i1765")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1760" "i1761" "i1762")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e\ 1757}# (#{wrap\ 291}# #{x\ 1770}# #{w\ 1759}# #f))))))) #{situations\ 1768}#)))))) (#{f\ 1766}# #{when-list\ 1758}# (quote ()))))) (#{chi-install-global\ 299}# (lambda (#{name\ 1780}# #{e\ 1781}#) (#{build-global-definition\ 162}# #f #{name\ 1780}# (#{build-application\ 144}# #f (#{build-primref\ 170}# #f 'make-syntax-transformer) (list (#{build-data\ 172}# #f #{name\ 1780}#) (#{build-data\ 172}# #f (quote macro)) (#{build-application\ 144}# #f (#{build-primref\ 170}# #f (quote cons)) (list #{e\ 1781}# (#{build-application\ 144}# #f (#{build-primref\ 170}# #f 'module-name) (list (#{build-application\ 144}# #f (#{build-primref\ 170}# #f 'current-module) '())))))))))) (#{chi-top-sequence\ 297}# (lambda (#{body\ 1795}# #{r\ 1796}# #{w\ 1797}# #{s\ 1798}# #{m\ 1799}# #{esew\ 1800}# #{mod\ 1801}#) (#{build-sequence\ 174}# #{s\ 1798}# (letrec ((#{dobody\ 1817}# (lambda (#{body\ 1818}# #{r\ 1819}# #{w\ 1820}# #{m\ 1821}# #{esew\ 1822}# #{mod\ 1823}# #{out\ 1824}#) (if (null? #{body\ 1818}#) (reverse #{out\ 1824}#) (#{dobody\ 1817}# (cdr #{body\ 1818}#) #{r\ 1819}# #{w\ 1820}# #{m\ 1821}# #{esew\ 1822}# #{mod\ 1823}# (cons (#{chi-top\ 305}# (car #{body\ 1818}#) #{r\ 1819}# #{w\ 1820}# #{m\ 1821}# #{esew\ 1822}# #{mod\ 1823}#) #{out\ 1824}#)))))) (#{dobody\ 1817}# #{body\ 1795}# #{r\ 1796}# #{w\ 1797}# #{m\ 1799}# #{esew\ 1800}# #{mod\ 1801}# '()))))) (#{chi-sequence\ 295}# (lambda (#{body\ 1825}# #{r\ 1826}# #{w\ 1827}# #{s\ 1828}# #{mod\ 1829}#) (#{build-sequence\ 174}# #{s\ 1828}# (letrec ((#{dobody\ 1840}# (lambda (#{body\ 1841}# #{r\ 1842}# #{w\ 1843}# #{mod\ 1844}#) (if (null? #{body\ 1841}#) '() (let ((#{first\ 1846}# (#{chi\ 307}# (car #{body\ 1841}#) #{r\ 1842}# #{w\ 1843}# #{mod\ 1844}#))) (cons #{first\ 1846}# (#{dobody\ 1840}# (cdr #{body\ 1841}#) #{r\ 1842}# #{w\ 1843}# #{mod\ 1844}#))))))) (#{dobody\ 1840}# #{body\ 1825}# #{r\ 1826}# #{w\ 1827}# #{mod\ 1829}#))))) (#{source-wrap\ 293}# (lambda (#{x\ 1847}# #{w\ 1848}# #{s\ 1849}# #{defmod\ 1850}#) (#{wrap\ 291}# (#{decorate-source\ 140}# #{x\ 1847}# #{s\ 1849}#) #{w\ 1848}# #{defmod\ 1850}#))) (#{wrap\ 291}# (lambda (#{x\ 1855}# #{w\ 1856}# #{defmod\ 1857}#) (if (if (null? (#{wrap-marks\ 229}# #{w\ 1856}#)) (null? (#{wrap-subst\ 231}# #{w\ 1856}#)) #f) #{x\ 1855}# (if (#{syntax-object?\ 186}# #{x\ 1855}#) (#{make-syntax-object\ 184}# (#{syntax-object-expression\ 188}# #{x\ 1855}#) (#{join-wraps\ 273}# #{w\ 1856}# (#{syntax-object-wrap\ 190}# #{x\ 1855}#)) (#{syntax-object-module\ 192}# #{x\ 1855}#)) (if (null? #{x\ 1855}#) #{x\ 1855}# (#{make-syntax-object\ 184}# #{x\ 1855}# #{w\ 1856}# #{defmod\ 1857}#)))))) (#{bound-id-member?\ 289}# (lambda (#{x\ 1870}# #{list\ 1871}#) (if (not (null? #{list\ 1871}#)) (let ((#{t\ 1878}# (#{bound-id=?\ 283}# #{x\ 1870}# (car #{list\ 1871}#)))) (if #{t\ 1878}# #{t\ 1878}# (#{bound-id-member?\ 289}# #{x\ 1870}# (cdr #{list\ 1871}#)))) #f))) (#{distinct-bound-ids?\ 287}# (lambda (#{ids\ 1880}#) (letrec ((#{distinct?\ 1884}# (lambda (#{ids\ 1885}#) (let ((#{t\ 1888}# (null? #{ids\ 1885}#))) (if #{t\ 1888}# #{t\ 1888}# (if (not (#{bound-id-member?\ 289}# (car #{ids\ 1885}#) (cdr #{ids\ 1885}#))) (#{distinct?\ 1884}# (cdr #{ids\ 1885}#)) #f)))))) (#{distinct?\ 1884}# #{ids\ 1880}#)))) (#{valid-bound-ids?\ 285}# (lambda (#{ids\ 1892}#) (if (letrec ((#{all-ids?\ 1897}# (lambda (#{ids\ 1898}#) (let ((#{t\ 1901}# (null? #{ids\ 1898}#))) (if #{t\ 1901}# #{t\ 1901}# (if (#{id?\ 222}# (car #{ids\ 1898}#)) (#{all-ids?\ 1897}# (cdr #{ids\ 1898}#)) #f)))))) (#{all-ids?\ 1897}# #{ids\ 1892}#)) (#{distinct-bound-ids?\ 287}# #{ids\ 1892}#) #f))) (#{bound-id=?\ 283}# (lambda (#{i\ 1906}# #{j\ 1907}#) (if (if (#{syntax-object?\ 186}# #{i\ 1906}#) (#{syntax-object?\ 186}# #{j\ 1907}#) #f) (if (eq? (#{syntax-object-expression\ 188}# #{i\ 1906}#) (#{syntax-object-expression\ 188}# #{j\ 1907}#)) (#{same-marks?\ 277}# (#{wrap-marks\ 229}# (#{syntax-object-wrap\ 190}# #{i\ 1906}#)) (#{wrap-marks\ 229}# (#{syntax-object-wrap\ 190}# #{j\ 1907}#))) #f) (eq? #{i\ 1906}# #{j\ 1907}#)))) (#{free-id=?\ 281}# (lambda (#{i\ 1914}# #{j\ 1915}#) (if (eq? (let ((#{x\ 1921}# #{i\ 1914}#)) (if (#{syntax-object?\ 186}# #{x\ 1921}#) (#{syntax-object-expression\ 188}# #{x\ 1921}#) #{x\ 1921}#)) (let ((#{x\ 1924}# #{j\ 1915}#)) (if (#{syntax-object?\ 186}# #{x\ 1924}#) (#{syntax-object-expression\ 188}# #{x\ 1924}#) #{x\ 1924}#))) (eq? (#{id-var-name\ 279}# #{i\ 1914}# (quote (()))) (#{id-var-name\ 279}# #{j\ 1915}# (quote (())))) #f))) (#{id-var-name\ 279}# (lambda (#{id\ 1928}# #{w\ 1929}#) (letrec ((#{search-vector-rib\ 1938}# (lambda (#{sym\ 1950}# #{subst\ 1951}# #{marks\ 1952}# #{symnames\ 1953}# #{ribcage\ 1954}#) (let ((#{n\ 1961}# (vector-length #{symnames\ 1953}#))) (letrec ((#{f\ 1964}# (lambda (#{i\ 1965}#) (if (#{fx=\ 127}# #{i\ 1965}# #{n\ 1961}#) (#{search\ 1934}# #{sym\ 1950}# (cdr #{subst\ 1951}#) #{marks\ 1952}#) (if (if (eq? (vector-ref #{symnames\ 1953}# #{i\ 1965}#) #{sym\ 1950}#) (#{same-marks?\ 277}# #{marks\ 1952}# (vector-ref (#{ribcage-marks\ 249}# #{ribcage\ 1954}#) #{i\ 1965}#)) #f) (values (vector-ref (#{ribcage-labels\ 251}# #{ribcage\ 1954}#) #{i\ 1965}#) #{marks\ 1952}#) (#{f\ 1964}# (#{fx+\ 123}# #{i\ 1965}# 1))))))) (#{f\ 1964}# 0))))) (#{search-list-rib\ 1936}# (lambda (#{sym\ 1973}# #{subst\ 1974}# #{marks\ 1975}# #{symnames\ 1976}# #{ribcage\ 1977}#) (letrec ((#{f\ 1986}# (lambda (#{symnames\ 1987}# #{i\ 1988}#) (if (null? #{symnames\ 1987}#) (#{search\ 1934}# #{sym\ 1973}# (cdr #{subst\ 1974}#) #{marks\ 1975}#) (if (if (eq? (car #{symnames\ 1987}#) #{sym\ 1973}#) (#{same-marks?\ 277}# #{marks\ 1975}# (list-ref (#{ribcage-marks\ 249}# #{ribcage\ 1977}#) #{i\ 1988}#)) #f) (values (list-ref (#{ribcage-labels\ 251}# #{ribcage\ 1977}#) #{i\ 1988}#) #{marks\ 1975}#) (#{f\ 1986}# (cdr #{symnames\ 1987}#) (#{fx+\ 123}# #{i\ 1988}# 1))))))) (#{f\ 1986}# #{symnames\ 1976}# 0)))) (#{search\ 1934}# (lambda (#{sym\ 1996}# #{subst\ 1997}# #{marks\ 1998}#) (if (null? #{subst\ 1997}#) (values #f #{marks\ 1998}#) (let ((#{fst\ 2003}# (car #{subst\ 1997}#))) (if (eq? #{fst\ 2003}# (quote shift)) (#{search\ 1934}# #{sym\ 1996}# (cdr #{subst\ 1997}#) (cdr #{marks\ 1998}#)) (let ((#{symnames\ 2005}# (#{ribcage-symnames\ 247}# #{fst\ 2003}#))) (if (vector? #{symnames\ 2005}#) (#{search-vector-rib\ 1938}# #{sym\ 1996}# #{subst\ 1997}# #{marks\ 1998}# #{symnames\ 2005}# #{fst\ 2003}#) (#{search-list-rib\ 1936}# #{sym\ 1996}# #{subst\ 1997}# #{marks\ 1998}# #{symnames\ 2005}# #{fst\ 2003}#))))))))) (if (symbol? #{id\ 1928}#) (let ((#{t\ 2008}# (call-with-values (lambda () (#{search\ 1934}# #{id\ 1928}# (#{wrap-subst\ 231}# #{w\ 1929}#) (#{wrap-marks\ 229}# #{w\ 1929}#))) (lambda (#{x\ 2010}# . #{ignore\ 2011}#) #{x\ 2010}#)))) (if #{t\ 2008}# #{t\ 2008}# #{id\ 1928}#)) (if (#{syntax-object?\ 186}# #{id\ 1928}#) (let ((#{id\ 2019}# (#{syntax-object-expression\ 188}# #{id\ 1928}#)) (#{w1\ 2020}# (#{syntax-object-wrap\ 190}# #{id\ 1928}#))) (let ((#{marks\ 2022}# (#{join-marks\ 275}# (#{wrap-marks\ 229}# #{w\ 1929}#) (#{wrap-marks\ 229}# #{w1\ 2020}#)))) (call-with-values (lambda () (#{search\ 1934}# #{id\ 2019}# (#{wrap-subst\ 231}# #{w\ 1929}#) #{marks\ 2022}#)) (lambda (#{new-id\ 2023}# #{marks\ 2024}#) (let ((#{t\ 2029}# #{new-id\ 2023}#)) (if #{t\ 2029}# #{t\ 2029}# (let ((#{t\ 2032}# (call-with-values (lambda () (#{search\ 1934}# #{id\ 2019}# (#{wrap-subst\ 231}# #{w1\ 2020}#) #{marks\ 2024}#)) (lambda (#{x\ 2034}# . #{ignore\ 2035}#) #{x\ 2034}#)))) (if #{t\ 2032}# #{t\ 2032}# #{id\ 2019}#)))))))) (syntax-violation 'id-var-name "invalid id" #{id\ 1928}#)))))) (#{same-marks?\ 277}# (lambda (#{x\ 2040}# #{y\ 2041}#) (let ((#{t\ 2046}# (eq? #{x\ 2040}# #{y\ 2041}#))) (if #{t\ 2046}# #{t\ 2046}# (if (not (null? #{x\ 2040}#)) (if (not (null? #{y\ 2041}#)) (if (eq? (car #{x\ 2040}#) (car #{y\ 2041}#)) (#{same-marks?\ 277}# (cdr #{x\ 2040}#) (cdr #{y\ 2041}#)) #f) #f) #f))))) (#{join-marks\ 275}# (lambda (#{m1\ 2052}# #{m2\ 2053}#) (#{smart-append\ 271}# #{m1\ 2052}# #{m2\ 2053}#))) (#{join-wraps\ 273}# (lambda (#{w1\ 2056}# #{w2\ 2057}#) (let ((#{m1\ 2062}# (#{wrap-marks\ 229}# #{w1\ 2056}#)) (#{s1\ 2063}# (#{wrap-subst\ 231}# #{w1\ 2056}#))) (if (null? #{m1\ 2062}#) (if (null? #{s1\ 2063}#) #{w2\ 2057}# (#{make-wrap\ 227}# (#{wrap-marks\ 229}# #{w2\ 2057}#) (#{smart-append\ 271}# #{s1\ 2063}# (#{wrap-subst\ 231}# #{w2\ 2057}#)))) (#{make-wrap\ 227}# (#{smart-append\ 271}# #{m1\ 2062}# (#{wrap-marks\ 229}# #{w2\ 2057}#)) (#{smart-append\ 271}# #{s1\ 2063}# (#{wrap-subst\ 231}# #{w2\ 2057}#))))))) (#{smart-append\ 271}# (lambda (#{m1\ 2064}# #{m2\ 2065}#) (if (null? #{m2\ 2065}#) #{m1\ 2064}# (append #{m1\ 2064}# #{m2\ 2065}#)))) (#{make-binding-wrap\ 269}# (lambda (#{ids\ 2068}# #{labels\ 2069}# #{w\ 2070}#) (if (null? #{ids\ 2068}#) #{w\ 2070}# (#{make-wrap\ 227}# (#{wrap-marks\ 229}# #{w\ 2070}#) (cons (let ((#{labelvec\ 2075}# (list->vector #{labels\ 2069}#))) (let ((#{n\ 2077}# (vector-length #{labelvec\ 2075}#))) (let ((#{symnamevec\ 2080}# (make-vector #{n\ 2077}#)) (#{marksvec\ 2081}# (make-vector #{n\ 2077}#))) (begin (letrec ((#{f\ 2085}# (lambda (#{ids\ 2086}# #{i\ 2087}#) (if (not (null? #{ids\ 2086}#)) (call-with-values (lambda () (#{id-sym-name&marks\ 225}# (car #{ids\ 2086}#) #{w\ 2070}#)) (lambda (#{symname\ 2088}# #{marks\ 2089}#) (begin (vector-set! #{symnamevec\ 2080}# #{i\ 2087}# #{symname\ 2088}#) (vector-set! #{marksvec\ 2081}# #{i\ 2087}# #{marks\ 2089}#) (#{f\ 2085}# (cdr #{ids\ 2086}#) (#{fx+\ 123}# #{i\ 2087}# 1))))))))) (#{f\ 2085}# #{ids\ 2068}# 0)) (#{make-ribcage\ 243}# #{symnamevec\ 2080}# #{marksvec\ 2081}# #{labelvec\ 2075}#))))) (#{wrap-subst\ 231}# #{w\ 2070}#)))))) (#{extend-ribcage!\ 267}# (lambda (#{ribcage\ 2092}# #{id\ 2093}# #{label\ 2094}#) (begin (#{set-ribcage-symnames!\ 253}# #{ribcage\ 2092}# (cons (#{syntax-object-expression\ 188}# #{id\ 2093}#) (#{ribcage-symnames\ 247}# #{ribcage\ 2092}#))) (#{set-ribcage-marks!\ 255}# #{ribcage\ 2092}# (cons (#{wrap-marks\ 229}# (#{syntax-object-wrap\ 190}# #{id\ 2093}#)) (#{ribcage-marks\ 249}# #{ribcage\ 2092}#))) (#{set-ribcage-labels!\ 257}# #{ribcage\ 2092}# (cons #{label\ 2094}# (#{ribcage-labels\ 251}# #{ribcage\ 2092}#)))))) (#{anti-mark\ 263}# (lambda (#{w\ 2098}#) (#{make-wrap\ 227}# (cons #f (#{wrap-marks\ 229}# #{w\ 2098}#)) (cons 'shift (#{wrap-subst\ 231}# #{w\ 2098}#))))) (#{set-ribcage-labels!\ 257}# (lambda (#{x\ 2101}# #{update\ 2102}#) (vector-set! #{x\ 2101}# 3 #{update\ 2102}#))) (#{set-ribcage-marks!\ 255}# (lambda (#{x\ 2105}# #{update\ 2106}#) (vector-set! #{x\ 2105}# 2 #{update\ 2106}#))) (#{set-ribcage-symnames!\ 253}# (lambda (#{x\ 2109}# #{update\ 2110}#) (vector-set! #{x\ 2109}# 1 #{update\ 2110}#))) (#{ribcage-labels\ 251}# (lambda (#{x\ 2113}#) (vector-ref #{x\ 2113}# 3))) (#{ribcage-marks\ 249}# (lambda (#{x\ 2115}#) (vector-ref #{x\ 2115}# 2))) (#{ribcage-symnames\ 247}# (lambda (#{x\ 2117}#) (vector-ref #{x\ 2117}# 1))) (#{ribcage?\ 245}# (lambda (#{x\ 2119}#) (if (vector? #{x\ 2119}#) (if (= (vector-length #{x\ 2119}#) 4) (eq? (vector-ref #{x\ 2119}# 0) (quote ribcage)) #f) #f))) (#{make-ribcage\ 243}# (lambda (#{symnames\ 2124}# #{marks\ 2125}# #{labels\ 2126}#) (vector 'ribcage #{symnames\ 2124}# #{marks\ 2125}# #{labels\ 2126}#))) (#{gen-labels\ 240}# (lambda (#{ls\ 2130}#) (if (null? #{ls\ 2130}#) '() (cons (#{gen-label\ 238}#) (#{gen-labels\ 240}# (cdr #{ls\ 2130}#)))))) (#{gen-label\ 238}# (lambda () (symbol->string (gensym "i")))) (#{wrap-subst\ 231}# cdr) (#{wrap-marks\ 229}# car) (#{make-wrap\ 227}# cons) (#{id-sym-name&marks\ 225}# (lambda (#{x\ 2132}# #{w\ 2133}#) (if (#{syntax-object?\ 186}# #{x\ 2132}#) (values (#{syntax-object-expression\ 188}# #{x\ 2132}#) (#{join-marks\ 275}# (#{wrap-marks\ 229}# #{w\ 2133}#) (#{wrap-marks\ 229}# (#{syntax-object-wrap\ 190}# #{x\ 2132}#)))) (values #{x\ 2132}# (#{wrap-marks\ 229}# #{w\ 2133}#))))) (#{id?\ 222}# (lambda (#{x\ 2136}#) (if (symbol? #{x\ 2136}#) #t (if (#{syntax-object?\ 186}# #{x\ 2136}#) (symbol? (#{syntax-object-expression\ 188}# #{x\ 2136}#)) #f)))) (#{nonsymbol-id?\ 220}# (lambda (#{x\ 2143}#) (if (#{syntax-object?\ 186}# #{x\ 2143}#) (symbol? (#{syntax-object-expression\ 188}# #{x\ 2143}#)) #f))) (#{global-extend\ 218}# (lambda (#{type\ 2147}# #{sym\ 2148}# #{val\ 2149}#) (#{put-global-definition-hook\ 136}# #{sym\ 2148}# #{type\ 2147}# #{val\ 2149}#))) (#{lookup\ 216}# (lambda (#{x\ 2153}# #{r\ 2154}# #{mod\ 2155}#) (let ((#{t\ 2161}# (assq #{x\ 2153}# #{r\ 2154}#))) (if #{t\ 2161}# (cdr #{t\ 2161}#) (if (symbol? #{x\ 2153}#) (let ((#{t\ 2167}# (#{get-global-definition-hook\ 138}# #{x\ 2153}# #{mod\ 2155}#))) (if #{t\ 2167}# #{t\ 2167}# (quote (global)))) '(displaced-lexical)))))) (#{macros-only-env\ 214}# (lambda (#{r\ 2172}#) (if (null? #{r\ 2172}#) '() (let ((#{a\ 2175}# (car #{r\ 2172}#))) (if (eq? (cadr #{a\ 2175}#) (quote macro)) (cons #{a\ 2175}# (#{macros-only-env\ 214}# (cdr #{r\ 2172}#))) (#{macros-only-env\ 214}# (cdr #{r\ 2172}#))))))) (#{extend-var-env\ 212}# (lambda (#{labels\ 2176}# #{vars\ 2177}# #{r\ 2178}#) (if (null? #{labels\ 2176}#) #{r\ 2178}# (#{extend-var-env\ 212}# (cdr #{labels\ 2176}#) (cdr #{vars\ 2177}#) (cons (cons (car #{labels\ 2176}#) (cons (quote lexical) (car #{vars\ 2177}#))) #{r\ 2178}#))))) (#{extend-env\ 210}# (lambda (#{labels\ 2183}# #{bindings\ 2184}# #{r\ 2185}#) (if (null? #{labels\ 2183}#) #{r\ 2185}# (#{extend-env\ 210}# (cdr #{labels\ 2183}#) (cdr #{bindings\ 2184}#) (cons (cons (car #{labels\ 2183}#) (car #{bindings\ 2184}#)) #{r\ 2185}#))))) (#{binding-value\ 207}# cdr) (#{binding-type\ 205}# car) (#{source-annotation\ 201}# (lambda (#{x\ 2189}#) (if (#{syntax-object?\ 186}# #{x\ 2189}#) (#{source-annotation\ 201}# (#{syntax-object-expression\ 188}# #{x\ 2189}#)) (if (pair? #{x\ 2189}#) (let ((#{props\ 2196}# (source-properties #{x\ 2189}#))) (if (pair? #{props\ 2196}#) #{props\ 2196}# #f)) #f)))) (#{set-syntax-object-module!\ 198}# (lambda (#{x\ 2198}# #{update\ 2199}#) (vector-set! #{x\ 2198}# 3 #{update\ 2199}#))) (#{set-syntax-object-wrap!\ 196}# (lambda (#{x\ 2202}# #{update\ 2203}#) (vector-set! #{x\ 2202}# 2 #{update\ 2203}#))) (#{set-syntax-object-expression!\ 194}# (lambda (#{x\ 2206}# #{update\ 2207}#) (vector-set! #{x\ 2206}# 1 #{update\ 2207}#))) (#{syntax-object-module\ 192}# (lambda (#{x\ 2210}#) (vector-ref #{x\ 2210}# 3))) (#{syntax-object-wrap\ 190}# (lambda (#{x\ 2212}#) (vector-ref #{x\ 2212}# 2))) (#{syntax-object-expression\ 188}# (lambda (#{x\ 2214}#) (vector-ref #{x\ 2214}# 1))) (#{syntax-object?\ 186}# (lambda (#{x\ 2216}#) (if (vector? #{x\ 2216}#) (if (= (vector-length #{x\ 2216}#) 4) (eq? (vector-ref #{x\ 2216}# 0) 'syntax-object) #f) #f))) (#{make-syntax-object\ 184}# (lambda (#{expression\ 2221}# #{wrap\ 2222}# #{module\ 2223}#) (vector 'syntax-object #{expression\ 2221}# #{wrap\ 2222}# #{module\ 2223}#))) (#{build-letrec\ 180}# (lambda (#{src\ 2227}# #{ids\ 2228}# #{vars\ 2229}# #{val-exps\ 2230}# #{body-exp\ 2231}#) (if (null? #{vars\ 2229}#) #{body-exp\ 2231}# (let ((#{atom-key\ 2239}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2239}# (quote (c))) (begin (for-each #{maybe-name-value!\ 160}# #{ids\ 2228}# #{val-exps\ 2230}#) ((@ (language tree-il) make-letrec) #{src\ 2227}# #{ids\ 2228}# #{vars\ 2229}# #{val-exps\ 2230}# #{body-exp\ 2231}#)) (#{decorate-source\ 140}# (list 'letrec (map list #{vars\ 2229}# #{val-exps\ 2230}#) #{body-exp\ 2231}#) #{src\ 2227}#)))))) (#{build-named-let\ 178}# (lambda (#{src\ 2243}# #{ids\ 2244}# #{vars\ 2245}# #{val-exps\ 2246}# #{body-exp\ 2247}#) (let ((#{f\ 2257}# (car #{vars\ 2245}#)) (#{f-name\ 2258}# (car #{ids\ 2244}#)) (#{vars\ 2259}# (cdr #{vars\ 2245}#)) (#{ids\ 2260}# (cdr #{ids\ 2244}#))) (let ((#{atom-key\ 2263}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2263}# (quote (c))) (let ((#{proc\ 2266}# (#{build-simple-lambda\ 164}# #{src\ 2243}# #{ids\ 2260}# #f #{vars\ 2259}# '() #{body-exp\ 2247}#))) (begin (#{maybe-name-value!\ 160}# #{f-name\ 2258}# #{proc\ 2266}#) (for-each #{maybe-name-value!\ 160}# #{ids\ 2260}# #{val-exps\ 2246}#) ((@ (language tree-il) make-letrec) #{src\ 2243}# (list #{f-name\ 2258}#) (list #{f\ 2257}#) (list #{proc\ 2266}#) (#{build-application\ 144}# #{src\ 2243}# (#{build-lexical-reference\ 150}# 'fun #{src\ 2243}# #{f-name\ 2258}# #{f\ 2257}#) #{val-exps\ 2246}#)))) (#{decorate-source\ 140}# (list 'letrec (list (list #{f\ 2257}# (list 'lambda #{vars\ 2259}# #{body-exp\ 2247}#))) (cons #{f\ 2257}# #{val-exps\ 2246}#)) #{src\ 2243}#)))))) (#{build-let\ 176}# (lambda (#{src\ 2269}# #{ids\ 2270}# #{vars\ 2271}# #{val-exps\ 2272}# #{body-exp\ 2273}#) (if (null? #{vars\ 2271}#) #{body-exp\ 2273}# (let ((#{atom-key\ 2281}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2281}# (quote (c))) (begin (for-each #{maybe-name-value!\ 160}# #{ids\ 2270}# #{val-exps\ 2272}#) ((@ (language tree-il) make-let) #{src\ 2269}# #{ids\ 2270}# #{vars\ 2271}# #{val-exps\ 2272}# #{body-exp\ 2273}#)) (#{decorate-source\ 140}# (list 'let (map list #{vars\ 2271}# #{val-exps\ 2272}#) #{body-exp\ 2273}#) #{src\ 2269}#)))))) (#{build-sequence\ 174}# (lambda (#{src\ 2285}# #{exps\ 2286}#) (if (null? (cdr #{exps\ 2286}#)) (car #{exps\ 2286}#) (let ((#{atom-key\ 2291}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2291}# (quote (c))) ((@ (language tree-il) make-sequence) #{src\ 2285}# #{exps\ 2286}#) (#{decorate-source\ 140}# (cons (quote begin) #{exps\ 2286}#) #{src\ 2285}#)))))) (#{build-data\ 172}# (lambda (#{src\ 2295}# #{exp\ 2296}#) (let ((#{atom-key\ 2301}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2301}# (quote (c))) ((@ (language tree-il) make-const) #{src\ 2295}# #{exp\ 2296}#) (#{decorate-source\ 140}# (if (if (self-evaluating? #{exp\ 2296}#) (not (vector? #{exp\ 2296}#)) #f) #{exp\ 2296}# (list (quote quote) #{exp\ 2296}#)) #{src\ 2295}#))))) (#{build-primref\ 170}# (lambda (#{src\ 2306}# #{name\ 2307}#) (if (equal? (module-name (current-module)) '(guile)) (let ((#{atom-key\ 2312}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2312}# (quote (c))) ((@ (language tree-il) make-toplevel-ref) #{src\ 2306}# #{name\ 2307}#) (#{decorate-source\ 140}# #{name\ 2307}# #{src\ 2306}#))) (let ((#{atom-key\ 2317}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2317}# (quote (c))) ((@ (language tree-il) make-module-ref) #{src\ 2306}# '(guile) #{name\ 2307}# #f) (#{decorate-source\ 140}# (list (quote @@) (quote (guile)) #{name\ 2307}#) #{src\ 2306}#)))))) (#{build-lambda-case\ 168}# (lambda (#{src\ 2321}# #{req\ 2322}# #{opt\ 2323}# #{rest\ 2324}# #{kw\ 2325}# #{inits\ 2326}# #{vars\ 2327}# #{body\ 2328}# #{else-case\ 2329}#) (let ((#{atom-key\ 2341}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2341}# (quote (c))) ((@ (language tree-il) make-lambda-case) #{src\ 2321}# #{req\ 2322}# #{opt\ 2323}# #{rest\ 2324}# #{kw\ 2325}# #{inits\ 2326}# #{vars\ 2327}# #{body\ 2328}# #{else-case\ 2329}#) (let ((#{nreq\ 2346}# (length #{req\ 2322}#))) (let ((#{nopt\ 2348}# (if #{opt\ 2323}# (length #{opt\ 2323}#) 0))) (let ((#{rest-idx\ 2350}# (if #{rest\ 2324}# (+ #{nreq\ 2346}# #{nopt\ 2348}#) #f))) (let ((#{allow-other-keys?\ 2354}# (if #{kw\ 2325}# (car #{kw\ 2325}#) #f))) (let ((#{kw-indices\ 2356}# (map (lambda (#{x\ 2357}#) (cons (car #{x\ 2357}#) (list-index #{vars\ 2327}# (caddr #{x\ 2357}#)))) (if #{kw\ 2325}# (cdr #{kw\ 2325}#) '())))) (let ((#{nargs\ 2360}# (apply max (+ #{nreq\ 2346}# #{nopt\ 2348}# (if #{rest\ 2324}# 1 0)) (map 1+ (map cdr #{kw-indices\ 2356}#))))) (begin (let ((#{t\ 2363}# (= #{nargs\ 2360}# (length #{vars\ 2327}#) (+ #{nreq\ 2346}# (length #{inits\ 2326}#) (if #{rest\ 2324}# 1 0))))) (if #{t\ 2363}# #{t\ 2363}# (error "something went wrong" #{req\ 2322}# #{opt\ 2323}# #{rest\ 2324}# #{kw\ 2325}# #{inits\ 2326}# #{vars\ 2327}# #{nreq\ 2346}# #{nopt\ 2348}# #{kw-indices\ 2356}# #{nargs\ 2360}#))) (#{decorate-source\ 140}# (cons (list (cons '(@@ (ice-9 optargs) parse-lambda-case) (cons (list 'quote (list #{nreq\ 2346}# #{nopt\ 2348}# #{rest-idx\ 2350}# #{nargs\ 2360}# #{allow-other-keys?\ 2354}# #{kw-indices\ 2356}#)) (cons (cons 'list (map (lambda (#{i\ 2366}#) (list 'lambda #{vars\ 2327}# #{i\ 2366}#)) #{inits\ 2326}#)) '(%%args)))) '=> (list 'lambda '(%%args) (cons 'apply (cons (list 'lambda #{vars\ 2327}# #{body\ 2328}#) '(%%args))))) (let ((#{t\ 2371}# #{else-case\ 2329}#)) (if #{t\ 2371}# #{t\ 2371}# '((%%args (scm-error 'wrong-number-of-args #f "Wrong number of arguments" '() %%args)))))) #{src\ 2321}#)))))))))))) (#{build-case-lambda\ 166}# (lambda (#{src\ 2374}# #{meta\ 2375}# #{body\ 2376}#) (let ((#{atom-key\ 2382}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2382}# (quote (c))) ((@ (language tree-il) make-lambda) #{src\ 2374}# #{meta\ 2375}# #{body\ 2376}#) (#{decorate-source\ 140}# (list 'lambda '%%args (cons (quote cond) #{body\ 2376}#)) #{src\ 2374}#))))) (#{build-simple-lambda\ 164}# (lambda (#{src\ 2386}# #{req\ 2387}# #{rest\ 2388}# #{vars\ 2389}# #{meta\ 2390}# #{exp\ 2391}#) (let ((#{atom-key\ 2400}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2400}# (quote (c))) ((@ (language tree-il) make-lambda) #{src\ 2386}# #{meta\ 2390}# ((@ (language tree-il) make-lambda-case) #{src\ 2386}# #{req\ 2387}# #f #{rest\ 2388}# #f '() #{vars\ 2389}# #{exp\ 2391}# #f)) (#{decorate-source\ 140}# (list 'lambda (if #{rest\ 2388}# (apply cons* #{vars\ 2389}#) #{vars\ 2389}#) #{exp\ 2391}#) #{src\ 2386}#))))) (#{build-global-definition\ 162}# (lambda (#{source\ 2404}# #{var\ 2405}# #{exp\ 2406}#) (let ((#{atom-key\ 2412}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2412}# (quote (c))) (begin (#{maybe-name-value!\ 160}# #{var\ 2405}# #{exp\ 2406}#) ((@ (language tree-il) make-toplevel-define) #{source\ 2404}# #{var\ 2405}# #{exp\ 2406}#)) (#{decorate-source\ 140}# (list (quote define) #{var\ 2405}# #{exp\ 2406}#) #{source\ 2404}#))))) (#{maybe-name-value!\ 160}# (lambda (#{name\ 2416}# #{val\ 2417}#) (if ((@ (language tree-il) lambda?) #{val\ 2417}#) (let ((#{meta\ 2423}# ((@ (language tree-il) lambda-meta) #{val\ 2417}#))) (if (not (assq (quote name) #{meta\ 2423}#)) ((setter (@ (language tree-il) lambda-meta)) #{val\ 2417}# (acons 'name #{name\ 2416}# #{meta\ 2423}#))))))) (#{build-global-assignment\ 158}# (lambda (#{source\ 2424}# #{var\ 2425}# #{exp\ 2426}# #{mod\ 2427}#) (#{analyze-variable\ 154}# #{mod\ 2427}# #{var\ 2425}# (lambda (#{mod\ 2432}# #{var\ 2433}# #{public?\ 2434}#) (let ((#{atom-key\ 2440}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2440}# (quote (c))) ((@ (language tree-il) make-module-set) #{source\ 2424}# #{mod\ 2432}# #{var\ 2433}# #{public?\ 2434}# #{exp\ 2426}#) (#{decorate-source\ 140}# (list 'set! (list (if #{public?\ 2434}# '@ '@@) #{mod\ 2432}# #{var\ 2433}#) #{exp\ 2426}#) #{source\ 2424}#)))) (lambda (#{var\ 2444}#) (let ((#{atom-key\ 2448}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2448}# (quote (c))) ((@ (language tree-il) make-toplevel-set) #{source\ 2424}# #{var\ 2444}# #{exp\ 2426}#) (#{decorate-source\ 140}# (list (quote set!) #{var\ 2444}# #{exp\ 2426}#) #{source\ 2424}#))))))) (#{build-global-reference\ 156}# (lambda (#{source\ 2452}# #{var\ 2453}# #{mod\ 2454}#) (#{analyze-variable\ 154}# #{mod\ 2454}# #{var\ 2453}# (lambda (#{mod\ 2458}# #{var\ 2459}# #{public?\ 2460}#) (let ((#{atom-key\ 2466}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2466}# (quote (c))) ((@ (language tree-il) make-module-ref) #{source\ 2452}# #{mod\ 2458}# #{var\ 2459}# #{public?\ 2460}#) (#{decorate-source\ 140}# (list (if #{public?\ 2460}# (quote @) (quote @@)) #{mod\ 2458}# #{var\ 2459}#) #{source\ 2452}#)))) (lambda (#{var\ 2469}#) (let ((#{atom-key\ 2473}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2473}# (quote (c))) ((@ (language tree-il) make-toplevel-ref) #{source\ 2452}# #{var\ 2469}#) (#{decorate-source\ 140}# #{var\ 2469}# #{source\ 2452}#))))))) (#{analyze-variable\ 154}# (lambda (#{mod\ 2476}# #{var\ 2477}# #{modref-cont\ 2478}# #{bare-cont\ 2479}#) (if (not #{mod\ 2476}#) (#{bare-cont\ 2479}# #{var\ 2477}#) (let ((#{kind\ 2486}# (car #{mod\ 2476}#)) (#{mod\ 2487}# (cdr #{mod\ 2476}#))) (if (memv #{kind\ 2486}# (quote (public))) (#{modref-cont\ 2478}# #{mod\ 2487}# #{var\ 2477}# #t) (if (memv #{kind\ 2486}# (quote (private))) (if (not (equal? #{mod\ 2487}# (module-name (current-module)))) (#{modref-cont\ 2478}# #{mod\ 2487}# #{var\ 2477}# #f) (#{bare-cont\ 2479}# #{var\ 2477}#)) (if (memv #{kind\ 2486}# (quote (bare))) (#{bare-cont\ 2479}# #{var\ 2477}#) (if (memv #{kind\ 2486}# (quote (hygiene))) (if (if (not (equal? #{mod\ 2487}# (module-name (current-module)))) (module-variable (resolve-module #{mod\ 2487}#) #{var\ 2477}#) #f) (#{modref-cont\ 2478}# #{mod\ 2487}# #{var\ 2477}# #f) (#{bare-cont\ 2479}# #{var\ 2477}#)) (syntax-violation #f "bad module kind" #{var\ 2477}# #{mod\ 2487}#))))))))) (#{build-lexical-assignment\ 152}# (lambda (#{source\ 2495}# #{name\ 2496}# #{var\ 2497}# #{exp\ 2498}#) (let ((#{atom-key\ 2505}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2505}# (quote (c))) ((@ (language tree-il) make-lexical-set) #{source\ 2495}# #{name\ 2496}# #{var\ 2497}# #{exp\ 2498}#) (#{decorate-source\ 140}# (list (quote set!) #{var\ 2497}# #{exp\ 2498}#) #{source\ 2495}#))))) (#{build-lexical-reference\ 150}# (lambda (#{type\ 2509}# #{source\ 2510}# #{name\ 2511}# #{var\ 2512}#) (let ((#{atom-key\ 2519}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2519}# (quote (c))) ((@ (language tree-il) make-lexical-ref) #{source\ 2510}# #{name\ 2511}# #{var\ 2512}#) (#{decorate-source\ 140}# #{var\ 2512}# #{source\ 2510}#))))) (#{build-dynlet\ 148}# (lambda (#{source\ 2522}# #{fluids\ 2523}# #{vals\ 2524}# #{body\ 2525}#) (let ((#{atom-key\ 2532}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2532}# (quote (c))) ((@ (language tree-il) make-dynlet) #{source\ 2522}# #{fluids\ 2523}# #{vals\ 2524}# #{body\ 2525}#) (#{decorate-source\ 140}# (list 'with-fluids (map list #{fluids\ 2523}# #{vals\ 2524}#) #{body\ 2525}#) #{source\ 2522}#))))) (#{build-conditional\ 146}# (lambda (#{source\ 2536}# #{test-exp\ 2537}# #{then-exp\ 2538}# #{else-exp\ 2539}#) (let ((#{atom-key\ 2546}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2546}# (quote (c))) ((@ (language tree-il) make-conditional) #{source\ 2536}# #{test-exp\ 2537}# #{then-exp\ 2538}# #{else-exp\ 2539}#) (#{decorate-source\ 140}# (if (equal? #{else-exp\ 2539}# (quote (if #f #f))) (list 'if #{test-exp\ 2537}# #{then-exp\ 2538}#) (list 'if #{test-exp\ 2537}# #{then-exp\ 2538}# #{else-exp\ 2539}#)) #{source\ 2536}#))))) (#{build-application\ 144}# (lambda (#{source\ 2551}# #{fun-exp\ 2552}# #{arg-exps\ 2553}#) (let ((#{atom-key\ 2559}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2559}# (quote (c))) ((@ (language tree-il) make-application) #{source\ 2551}# #{fun-exp\ 2552}# #{arg-exps\ 2553}#) (#{decorate-source\ 140}# (cons #{fun-exp\ 2552}# #{arg-exps\ 2553}#) #{source\ 2551}#))))) (#{build-void\ 142}# (lambda (#{source\ 2563}#) (let ((#{atom-key\ 2567}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2567}# (quote (c))) ((@ (language tree-il) make-void) #{source\ 2563}#) (#{decorate-source\ 140}# '(if #f #f) #{source\ 2563}#))))) (#{decorate-source\ 140}# (lambda (#{e\ 2570}# #{s\ 2571}#) (begin (if (if (pair? #{e\ 2570}#) #{s\ 2571}# #f) (set-source-properties! #{e\ 2570}# #{s\ 2571}#)) #{e\ 2570}#))) (#{get-global-definition-hook\ 138}# (lambda (#{symbol\ 2576}# #{module\ 2577}#) (begin (if (if (not #{module\ 2577}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol\ 2576}#)) (let ((#{v\ 2583}# (module-variable (if #{module\ 2577}# (resolve-module (cdr #{module\ 2577}#)) (current-module)) #{symbol\ 2576}#))) (if #{v\ 2583}# (if (variable-bound? #{v\ 2583}#) (let ((#{val\ 2588}# (variable-ref #{v\ 2583}#))) (if (macro? #{val\ 2588}#) (if (macro-type #{val\ 2588}#) (cons (macro-type #{val\ 2588}#) (macro-binding #{val\ 2588}#)) #f) #f)) #f) #f))))) (#{put-global-definition-hook\ 136}# (lambda (#{symbol\ 2592}# #{type\ 2593}# #{val\ 2594}#) (module-define! (current-module) #{symbol\ 2592}# (make-syntax-transformer #{symbol\ 2592}# #{type\ 2593}# #{val\ 2594}#)))) (#{local-eval-hook\ 133}# (lambda (#{x\ 2598}# #{mod\ 2599}#) (primitive-eval (list #{noexpand\ 119}# (let ((#{atom-key\ 2605}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2605}# (quote (c))) ((@ (language tree-il) tree-il->scheme) #{x\ 2598}#) #{x\ 2598}#)))))) (#{top-level-eval-hook\ 131}# (lambda (#{x\ 2608}# #{mod\ 2609}#) (primitive-eval (list #{noexpand\ 119}# (let ((#{atom-key\ 2615}# (fluid-ref #{*mode*\ 121}#))) (if (memv #{atom-key\ 2615}# (quote (c))) ((@ (language tree-il) tree-il->scheme) #{x\ 2608}#) #{x\ 2608}#)))))) (#{fx<\ 129}# <) (#{fx=\ 127}# =) (#{fx-\ 125}# -) (#{fx+\ 123}# +) (#{*mode*\ 121}# (make-fluid)) (#{noexpand\ 119}# "noexpand")) (begin (#{global-extend\ 218}# 'local-syntax 'letrec-syntax #t) (#{global-extend\ 218}# 'local-syntax 'let-syntax #f) (#{global-extend\ 218}# 'core 'fluid-let-syntax (lambda (#{e\ 2618}# #{r\ 2619}# #{w\ 2620}# #{s\ 2621}# #{mod\ 2622}#) ((lambda (#{tmp\ 2628}#) ((lambda (#{tmp\ 2629}#) (if (if #{tmp\ 2629}# (apply (lambda (#{_\ 2635}# #{var\ 2636}# #{val\ 2637}# #{e1\ 2638}# #{e2\ 2639}#) (#{valid-bound-ids?\ 285}# #{var\ 2636}#)) #{tmp\ 2629}#) #f) (apply (lambda (#{_\ 2646}# #{var\ 2647}# #{val\ 2648}# #{e1\ 2649}# #{e2\ 2650}#) (let ((#{names\ 2652}# (map (lambda (#{x\ 2653}#) (#{id-var-name\ 279}# #{x\ 2653}# #{w\ 2620}#)) #{var\ 2647}#))) (begin (for-each (lambda (#{id\ 2656}# #{n\ 2657}#) (let ((#{atom-key\ 2662}# (#{binding-type\ 205}# (#{lookup\ 216}# #{n\ 2657}# #{r\ 2619}# #{mod\ 2622}#)))) (if (memv #{atom-key\ 2662}# '(displaced-lexical)) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 2618}# (#{source-wrap\ 293}# #{id\ 2656}# #{w\ 2620}# #{s\ 2621}# #{mod\ 2622}#))))) #{var\ 2647}# #{names\ 2652}#) (#{chi-body\ 315}# (cons #{e1\ 2649}# #{e2\ 2650}#) (#{source-wrap\ 293}# #{e\ 2618}# #{w\ 2620}# #{s\ 2621}# #{mod\ 2622}#) (#{extend-env\ 210}# #{names\ 2652}# (let ((#{trans-r\ 2667}# (#{macros-only-env\ 214}# #{r\ 2619}#))) (map (lambda (#{x\ 2668}#) (cons 'macro (#{eval-local-transformer\ 319}# (#{chi\ 307}# #{x\ 2668}# #{trans-r\ 2667}# #{w\ 2620}# #{mod\ 2622}#) #{mod\ 2622}#))) #{val\ 2648}#)) #{r\ 2619}#) #{w\ 2620}# #{mod\ 2622}#)))) #{tmp\ 2629}#) ((lambda (#{_\ 2673}#) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 293}# #{e\ 2618}# #{w\ 2620}# #{s\ 2621}# #{mod\ 2622}#))) #{tmp\ 2628}#))) ($sc-dispatch #{tmp\ 2628}# '(any #(each (any any)) any . each-any)))) #{e\ 2618}#))) (#{global-extend\ 218}# 'core 'quote (lambda (#{e\ 2674}# #{r\ 2675}# #{w\ 2676}# #{s\ 2677}# #{mod\ 2678}#) ((lambda (#{tmp\ 2684}#) ((lambda (#{tmp\ 2685}#) (if #{tmp\ 2685}# (apply (lambda (#{_\ 2688}# #{e\ 2689}#) (#{build-data\ 172}# #{s\ 2677}# (#{strip\ 333}# #{e\ 2689}# #{w\ 2676}#))) #{tmp\ 2685}#) ((lambda (#{_\ 2691}#) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 293}# #{e\ 2674}# #{w\ 2676}# #{s\ 2677}# #{mod\ 2678}#))) #{tmp\ 2684}#))) ($sc-dispatch #{tmp\ 2684}# (quote (any any))))) #{e\ 2674}#))) (#{global-extend\ 218}# 'core 'syntax (letrec ((#{regen\ 2707}# (lambda (#{x\ 2708}#) (let ((#{atom-key\ 2712}# (car #{x\ 2708}#))) (if (memv #{atom-key\ 2712}# (quote (ref))) (#{build-lexical-reference\ 150}# 'value #f (cadr #{x\ 2708}#) (cadr #{x\ 2708}#)) (if (memv #{atom-key\ 2712}# (quote (primitive))) (#{build-primref\ 170}# #f (cadr #{x\ 2708}#)) (if (memv #{atom-key\ 2712}# (quote (quote))) (#{build-data\ 172}# #f (cadr #{x\ 2708}#)) (if (memv #{atom-key\ 2712}# (quote (lambda))) (if (list? (cadr #{x\ 2708}#)) (#{build-simple-lambda\ 164}# #f (cadr #{x\ 2708}#) #f (cadr #{x\ 2708}#) '() (#{regen\ 2707}# (caddr #{x\ 2708}#))) (error "how did we get here" #{x\ 2708}#)) (#{build-application\ 144}# #f (#{build-primref\ 170}# #f (car #{x\ 2708}#)) (map #{regen\ 2707}# (cdr #{x\ 2708}#)))))))))) (#{gen-vector\ 2705}# (lambda (#{x\ 2724}#) (if (eq? (car #{x\ 2724}#) (quote list)) (cons (quote vector) (cdr #{x\ 2724}#)) (if (eq? (car #{x\ 2724}#) (quote quote)) (list 'quote (list->vector (cadr #{x\ 2724}#))) (list (quote list->vector) #{x\ 2724}#))))) (#{gen-append\ 2703}# (lambda (#{x\ 2734}# #{y\ 2735}#) (if (equal? #{y\ 2735}# (quote (quote ()))) #{x\ 2734}# (list (quote append) #{x\ 2734}# #{y\ 2735}#)))) (#{gen-cons\ 2701}# (lambda (#{x\ 2739}# #{y\ 2740}#) (let ((#{atom-key\ 2745}# (car #{y\ 2740}#))) (if (memv #{atom-key\ 2745}# (quote (quote))) (if (eq? (car #{x\ 2739}#) (quote quote)) (list 'quote (cons (cadr #{x\ 2739}#) (cadr #{y\ 2740}#))) (if (eq? (cadr #{y\ 2740}#) (quote ())) (list (quote list) #{x\ 2739}#) (list (quote cons) #{x\ 2739}# #{y\ 2740}#))) (if (memv #{atom-key\ 2745}# (quote (list))) (cons 'list (cons #{x\ 2739}# (cdr #{y\ 2740}#))) (list (quote cons) #{x\ 2739}# #{y\ 2740}#)))))) (#{gen-map\ 2699}# (lambda (#{e\ 2754}# #{map-env\ 2755}#) (let ((#{formals\ 2760}# (map cdr #{map-env\ 2755}#)) (#{actuals\ 2761}# (map (lambda (#{x\ 2762}#) (list (quote ref) (car #{x\ 2762}#))) #{map-env\ 2755}#))) (if (eq? (car #{e\ 2754}#) (quote ref)) (car #{actuals\ 2761}#) (if (and-map (lambda (#{x\ 2769}#) (if (eq? (car #{x\ 2769}#) (quote ref)) (memq (cadr #{x\ 2769}#) #{formals\ 2760}#) #f)) (cdr #{e\ 2754}#)) (cons 'map (cons (list 'primitive (car #{e\ 2754}#)) (map (let ((#{r\ 2775}# (map cons #{formals\ 2760}# #{actuals\ 2761}#))) (lambda (#{x\ 2776}#) (cdr (assq (cadr #{x\ 2776}#) #{r\ 2775}#)))) (cdr #{e\ 2754}#)))) (cons 'map (cons (list 'lambda #{formals\ 2760}# #{e\ 2754}#) #{actuals\ 2761}#))))))) (#{gen-mappend\ 2697}# (lambda (#{e\ 2780}# #{map-env\ 2781}#) (list 'apply '(primitive append) (#{gen-map\ 2699}# #{e\ 2780}# #{map-env\ 2781}#)))) (#{gen-ref\ 2695}# (lambda (#{src\ 2785}# #{var\ 2786}# #{level\ 2787}# #{maps\ 2788}#) (if (#{fx=\ 127}# #{level\ 2787}# 0) (values #{var\ 2786}# #{maps\ 2788}#) (if (null? #{maps\ 2788}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 2785}#) (call-with-values (lambda () (#{gen-ref\ 2695}# #{src\ 2785}# #{var\ 2786}# (#{fx-\ 125}# #{level\ 2787}# 1) (cdr #{maps\ 2788}#))) (lambda (#{outer-var\ 2793}# #{outer-maps\ 2794}#) (let ((#{b\ 2798}# (assq #{outer-var\ 2793}# (car #{maps\ 2788}#)))) (if #{b\ 2798}# (values (cdr #{b\ 2798}#) #{maps\ 2788}#) (let ((#{inner-var\ 2800}# (#{gen-var\ 335}# (quote tmp)))) (values #{inner-var\ 2800}# (cons (cons (cons #{outer-var\ 2793}# #{inner-var\ 2800}#) (car #{maps\ 2788}#)) #{outer-maps\ 2794}#))))))))))) (#{gen-syntax\ 2693}# (lambda (#{src\ 2801}# #{e\ 2802}# #{r\ 2803}# #{maps\ 2804}# #{ellipsis?\ 2805}# #{mod\ 2806}#) (if (#{id?\ 222}# #{e\ 2802}#) (let ((#{label\ 2814}# (#{id-var-name\ 279}# #{e\ 2802}# '(())))) (let ((#{b\ 2817}# (#{lookup\ 216}# #{label\ 2814}# #{r\ 2803}# #{mod\ 2806}#))) (if (eq? (#{binding-type\ 205}# #{b\ 2817}#) 'syntax) (call-with-values (lambda () (let ((#{var.lev\ 2819}# (#{binding-value\ 207}# #{b\ 2817}#))) (#{gen-ref\ 2695}# #{src\ 2801}# (car #{var.lev\ 2819}#) (cdr #{var.lev\ 2819}#) #{maps\ 2804}#))) (lambda (#{var\ 2820}# #{maps\ 2821}#) (values (list (quote ref) #{var\ 2820}#) #{maps\ 2821}#))) (if (#{ellipsis?\ 2805}# #{e\ 2802}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 2801}#) (values (list (quote quote) #{e\ 2802}#) #{maps\ 2804}#))))) ((lambda (#{tmp\ 2826}#) ((lambda (#{tmp\ 2827}#) (if (if #{tmp\ 2827}# (apply (lambda (#{dots\ 2830}# #{e\ 2831}#) (#{ellipsis?\ 2805}# #{dots\ 2830}#)) #{tmp\ 2827}#) #f) (apply (lambda (#{dots\ 2834}# #{e\ 2835}#) (#{gen-syntax\ 2693}# #{src\ 2801}# #{e\ 2835}# #{r\ 2803}# #{maps\ 2804}# (lambda (#{x\ 2836}#) #f) #{mod\ 2806}#)) #{tmp\ 2827}#) ((lambda (#{tmp\ 2838}#) (if (if #{tmp\ 2838}# (apply (lambda (#{x\ 2842}# #{dots\ 2843}# #{y\ 2844}#) (#{ellipsis?\ 2805}# #{dots\ 2843}#)) #{tmp\ 2838}#) #f) (apply (lambda (#{x\ 2848}# #{dots\ 2849}# #{y\ 2850}#) (letrec ((#{f\ 2854}# (lambda (#{y\ 2855}# #{k\ 2856}#) ((lambda (#{tmp\ 2863}#) ((lambda (#{tmp\ 2864}#) (if (if #{tmp\ 2864}# (apply (lambda (#{dots\ 2867}# #{y\ 2868}#) (#{ellipsis?\ 2805}# #{dots\ 2867}#)) #{tmp\ 2864}#) #f) (apply (lambda (#{dots\ 2871}# #{y\ 2872}#) (#{f\ 2854}# #{y\ 2872}# (lambda (#{maps\ 2873}#) (call-with-values (lambda () (#{k\ 2856}# (cons '() #{maps\ 2873}#))) (lambda (#{x\ 2875}# #{maps\ 2876}#) (if (null? (car #{maps\ 2876}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2801}#) (values (#{gen-mappend\ 2697}# #{x\ 2875}# (car #{maps\ 2876}#)) (cdr #{maps\ 2876}#)))))))) #{tmp\ 2864}#) ((lambda (#{_\ 2880}#) (call-with-values (lambda () (#{gen-syntax\ 2693}# #{src\ 2801}# #{y\ 2855}# #{r\ 2803}# #{maps\ 2804}# #{ellipsis?\ 2805}# #{mod\ 2806}#)) (lambda (#{y\ 2881}# #{maps\ 2882}#) (call-with-values (lambda () (#{k\ 2856}# #{maps\ 2882}#)) (lambda (#{x\ 2885}# #{maps\ 2886}#) (values (#{gen-append\ 2703}# #{x\ 2885}# #{y\ 2881}#) #{maps\ 2886}#)))))) #{tmp\ 2863}#))) ($sc-dispatch #{tmp\ 2863}# '(any . any)))) #{y\ 2855}#)))) (#{f\ 2854}# #{y\ 2850}# (lambda (#{maps\ 2857}#) (call-with-values (lambda () (#{gen-syntax\ 2693}# #{src\ 2801}# #{x\ 2848}# #{r\ 2803}# (cons '() #{maps\ 2857}#) #{ellipsis?\ 2805}# #{mod\ 2806}#)) (lambda (#{x\ 2859}# #{maps\ 2860}#) (if (null? (car #{maps\ 2860}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2801}#) (values (#{gen-map\ 2699}# #{x\ 2859}# (car #{maps\ 2860}#)) (cdr #{maps\ 2860}#))))))))) #{tmp\ 2838}#) ((lambda (#{tmp\ 2889}#) (if #{tmp\ 2889}# (apply (lambda (#{x\ 2892}# #{y\ 2893}#) (call-with-values (lambda () (#{gen-syntax\ 2693}# #{src\ 2801}# #{x\ 2892}# #{r\ 2803}# #{maps\ 2804}# #{ellipsis?\ 2805}# #{mod\ 2806}#)) (lambda (#{x\ 2894}# #{maps\ 2895}#) (call-with-values (lambda () (#{gen-syntax\ 2693}# #{src\ 2801}# #{y\ 2893}# #{r\ 2803}# #{maps\ 2895}# #{ellipsis?\ 2805}# #{mod\ 2806}#)) (lambda (#{y\ 2898}# #{maps\ 2899}#) (values (#{gen-cons\ 2701}# #{x\ 2894}# #{y\ 2898}#) #{maps\ 2899}#)))))) #{tmp\ 2889}#) ((lambda (#{tmp\ 2902}#) (if #{tmp\ 2902}# (apply (lambda (#{e1\ 2905}# #{e2\ 2906}#) (call-with-values (lambda () (#{gen-syntax\ 2693}# #{src\ 2801}# (cons #{e1\ 2905}# #{e2\ 2906}#) #{r\ 2803}# #{maps\ 2804}# #{ellipsis?\ 2805}# #{mod\ 2806}#)) (lambda (#{e\ 2908}# #{maps\ 2909}#) (values (#{gen-vector\ 2705}# #{e\ 2908}#) #{maps\ 2909}#)))) #{tmp\ 2902}#) ((lambda (#{_\ 2913}#) (values (list 'quote #{e\ 2802}#) #{maps\ 2804}#)) #{tmp\ 2826}#))) ($sc-dispatch #{tmp\ 2826}# '#(vector (any . each-any)))))) ($sc-dispatch #{tmp\ 2826}# '(any . any))))) ($sc-dispatch #{tmp\ 2826}# '(any any . any))))) ($sc-dispatch #{tmp\ 2826}# (quote (any any))))) #{e\ 2802}#))))) (lambda (#{e\ 2915}# #{r\ 2916}# #{w\ 2917}# #{s\ 2918}# #{mod\ 2919}#) (let ((#{e\ 2926}# (#{source-wrap\ 293}# #{e\ 2915}# #{w\ 2917}# #{s\ 2918}# #{mod\ 2919}#))) ((lambda (#{tmp\ 2927}#) ((lambda (#{tmp\ 2928}#) (if #{tmp\ 2928}# (apply (lambda (#{_\ 2931}# #{x\ 2932}#) (call-with-values (lambda () (#{gen-syntax\ 2693}# #{e\ 2926}# #{x\ 2932}# #{r\ 2916}# '() #{ellipsis?\ 323}# #{mod\ 2919}#)) (lambda (#{e\ 2933}# #{maps\ 2934}#) (#{regen\ 2707}# #{e\ 2933}#)))) #{tmp\ 2928}#) ((lambda (#{_\ 2938}#) (syntax-violation 'syntax "bad `syntax' form" #{e\ 2926}#)) #{tmp\ 2927}#))) ($sc-dispatch #{tmp\ 2927}# (quote (any any))))) #{e\ 2926}#))))) (#{global-extend\ 218}# 'core 'lambda (lambda (#{e\ 2939}# #{r\ 2940}# #{w\ 2941}# #{s\ 2942}# #{mod\ 2943}#) ((lambda (#{tmp\ 2949}#) ((lambda (#{tmp\ 2950}#) (if #{tmp\ 2950}# (apply (lambda (#{_\ 2955}# #{args\ 2956}# #{e1\ 2957}# #{e2\ 2958}#) (call-with-values (lambda () (#{lambda-formals\ 325}# #{args\ 2956}#)) (lambda (#{req\ 2959}# #{opt\ 2960}# #{rest\ 2961}# #{kw\ 2962}#) (letrec ((#{lp\ 2970}# (lambda (#{body\ 2971}# #{meta\ 2972}#) ((lambda (#{tmp\ 2974}#) ((lambda (#{tmp\ 2975}#) (if (if #{tmp\ 2975}# (apply (lambda (#{docstring\ 2979}# #{e1\ 2980}# #{e2\ 2981}#) (string? (syntax->datum #{docstring\ 2979}#))) #{tmp\ 2975}#) #f) (apply (lambda (#{docstring\ 2985}# #{e1\ 2986}# #{e2\ 2987}#) (#{lp\ 2970}# (cons #{e1\ 2986}# #{e2\ 2987}#) (append #{meta\ 2972}# (list (cons 'documentation (syntax->datum #{docstring\ 2985}#)))))) #{tmp\ 2975}#) ((lambda (#{tmp\ 2990}#) (if #{tmp\ 2990}# (apply (lambda (#{k\ 2995}# #{v\ 2996}# #{e1\ 2997}# #{e2\ 2998}#) (#{lp\ 2970}# (cons #{e1\ 2997}# #{e2\ 2998}#) (append #{meta\ 2972}# (syntax->datum (map cons #{k\ 2995}# #{v\ 2996}#))))) #{tmp\ 2990}#) ((lambda (#{_\ 3003}#) (#{chi-simple-lambda\ 327}# #{e\ 2939}# #{r\ 2940}# #{w\ 2941}# #{s\ 2942}# #{mod\ 2943}# #{req\ 2959}# #{rest\ 2961}# #{meta\ 2972}# #{body\ 2971}#)) #{tmp\ 2974}#))) ($sc-dispatch #{tmp\ 2974}# '(#(vector #(each (any . any))) any . each-any))))) ($sc-dispatch #{tmp\ 2974}# '(any any . each-any)))) #{body\ 2971}#)))) (#{lp\ 2970}# (cons #{e1\ 2957}# #{e2\ 2958}#) '()))))) #{tmp\ 2950}#) ((lambda (#{_\ 3005}#) (syntax-violation 'lambda "bad lambda" #{e\ 2939}#)) #{tmp\ 2949}#))) ($sc-dispatch #{tmp\ 2949}# '(any any any . each-any)))) #{e\ 2939}#))) (#{global-extend\ 218}# 'core 'lambda* (lambda (#{e\ 3006}# #{r\ 3007}# #{w\ 3008}# #{s\ 3009}# #{mod\ 3010}#) ((lambda (#{tmp\ 3016}#) ((lambda (#{tmp\ 3017}#) (if #{tmp\ 3017}# (apply (lambda (#{_\ 3022}# #{args\ 3023}# #{e1\ 3024}# #{e2\ 3025}#) (call-with-values (lambda () (#{chi-lambda-case\ 331}# #{e\ 3006}# #{r\ 3007}# #{w\ 3008}# #{s\ 3009}# #{mod\ 3010}# #{lambda*-formals\ 329}# (list (cons #{args\ 3023}# (cons #{e1\ 3024}# #{e2\ 3025}#))))) (lambda (#{meta\ 3027}# #{lcase\ 3028}#) (#{build-case-lambda\ 166}# #{s\ 3009}# #{meta\ 3027}# #{lcase\ 3028}#)))) #{tmp\ 3017}#) ((lambda (#{_\ 3032}#) (syntax-violation 'lambda "bad lambda*" #{e\ 3006}#)) #{tmp\ 3016}#))) ($sc-dispatch #{tmp\ 3016}# '(any any any . each-any)))) #{e\ 3006}#))) (#{global-extend\ 218}# 'core 'case-lambda (lambda (#{e\ 3033}# #{r\ 3034}# #{w\ 3035}# #{s\ 3036}# #{mod\ 3037}#) ((lambda (#{tmp\ 3043}#) ((lambda (#{tmp\ 3044}#) (if #{tmp\ 3044}# (apply (lambda (#{_\ 3052}# #{args\ 3053}# #{e1\ 3054}# #{e2\ 3055}# #{args*\ 3056}# #{e1*\ 3057}# #{e2*\ 3058}#) (call-with-values (lambda () (#{chi-lambda-case\ 331}# #{e\ 3033}# #{r\ 3034}# #{w\ 3035}# #{s\ 3036}# #{mod\ 3037}# #{lambda-formals\ 325}# (cons (cons #{args\ 3053}# (cons #{e1\ 3054}# #{e2\ 3055}#)) (map (lambda (#{tmp\ 3062}# #{tmp\ 3061}# #{tmp\ 3060}#) (cons #{tmp\ 3060}# (cons #{tmp\ 3061}# #{tmp\ 3062}#))) #{e2*\ 3058}# #{e1*\ 3057}# #{args*\ 3056}#)))) (lambda (#{meta\ 3064}# #{lcase\ 3065}#) (#{build-case-lambda\ 166}# #{s\ 3036}# #{meta\ 3064}# #{lcase\ 3065}#)))) #{tmp\ 3044}#) ((lambda (#{_\ 3069}#) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 3033}#)) #{tmp\ 3043}#))) ($sc-dispatch #{tmp\ 3043}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 3033}#))) (#{global-extend\ 218}# 'core 'case-lambda* (lambda (#{e\ 3070}# #{r\ 3071}# #{w\ 3072}# #{s\ 3073}# #{mod\ 3074}#) ((lambda (#{tmp\ 3080}#) ((lambda (#{tmp\ 3081}#) (if #{tmp\ 3081}# (apply (lambda (#{_\ 3089}# #{args\ 3090}# #{e1\ 3091}# #{e2\ 3092}# #{args*\ 3093}# #{e1*\ 3094}# #{e2*\ 3095}#) (call-with-values (lambda () (#{chi-lambda-case\ 331}# #{e\ 3070}# #{r\ 3071}# #{w\ 3072}# #{s\ 3073}# #{mod\ 3074}# #{lambda*-formals\ 329}# (cons (cons #{args\ 3090}# (cons #{e1\ 3091}# #{e2\ 3092}#)) (map (lambda (#{tmp\ 3099}# #{tmp\ 3098}# #{tmp\ 3097}#) (cons #{tmp\ 3097}# (cons #{tmp\ 3098}# #{tmp\ 3099}#))) #{e2*\ 3095}# #{e1*\ 3094}# #{args*\ 3093}#)))) (lambda (#{meta\ 3101}# #{lcase\ 3102}#) (#{build-case-lambda\ 166}# #{s\ 3073}# #{meta\ 3101}# #{lcase\ 3102}#)))) #{tmp\ 3081}#) ((lambda (#{_\ 3106}#) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 3070}#)) #{tmp\ 3080}#))) ($sc-dispatch #{tmp\ 3080}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 3070}#))) (#{global-extend\ 218}# 'core 'let (letrec ((#{chi-let\ 3108}# (lambda (#{e\ 3109}# #{r\ 3110}# #{w\ 3111}# #{s\ 3112}# #{mod\ 3113}# #{constructor\ 3114}# #{ids\ 3115}# #{vals\ 3116}# #{exps\ 3117}#) (if (not (#{valid-bound-ids?\ 285}# #{ids\ 3115}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 3109}#) (let ((#{labels\ 3129}# (#{gen-labels\ 240}# #{ids\ 3115}#)) (#{new-vars\ 3130}# (map #{gen-var\ 335}# #{ids\ 3115}#))) (let ((#{nw\ 3133}# (#{make-binding-wrap\ 269}# #{ids\ 3115}# #{labels\ 3129}# #{w\ 3111}#)) (#{nr\ 3134}# (#{extend-var-env\ 212}# #{labels\ 3129}# #{new-vars\ 3130}# #{r\ 3110}#))) (#{constructor\ 3114}# #{s\ 3112}# (map syntax->datum #{ids\ 3115}#) #{new-vars\ 3130}# (map (lambda (#{x\ 3135}#) (#{chi\ 307}# #{x\ 3135}# #{r\ 3110}# #{w\ 3111}# #{mod\ 3113}#)) #{vals\ 3116}#) (#{chi-body\ 315}# #{exps\ 3117}# (#{source-wrap\ 293}# #{e\ 3109}# #{nw\ 3133}# #{s\ 3112}# #{mod\ 3113}#) #{nr\ 3134}# #{nw\ 3133}# #{mod\ 3113}#)))))))) (lambda (#{e\ 3137}# #{r\ 3138}# #{w\ 3139}# #{s\ 3140}# #{mod\ 3141}#) ((lambda (#{tmp\ 3147}#) ((lambda (#{tmp\ 3148}#) (if (if #{tmp\ 3148}# (apply (lambda (#{_\ 3154}# #{id\ 3155}# #{val\ 3156}# #{e1\ 3157}# #{e2\ 3158}#) (and-map #{id?\ 222}# #{id\ 3155}#)) #{tmp\ 3148}#) #f) (apply (lambda (#{_\ 3165}# #{id\ 3166}# #{val\ 3167}# #{e1\ 3168}# #{e2\ 3169}#) (#{chi-let\ 3108}# #{e\ 3137}# #{r\ 3138}# #{w\ 3139}# #{s\ 3140}# #{mod\ 3141}# #{build-let\ 176}# #{id\ 3166}# #{val\ 3167}# (cons #{e1\ 3168}# #{e2\ 3169}#))) #{tmp\ 3148}#) ((lambda (#{tmp\ 3173}#) (if (if #{tmp\ 3173}# (apply (lambda (#{_\ 3180}# #{f\ 3181}# #{id\ 3182}# #{val\ 3183}# #{e1\ 3184}# #{e2\ 3185}#) (if (#{id?\ 222}# #{f\ 3181}#) (and-map #{id?\ 222}# #{id\ 3182}#) #f)) #{tmp\ 3173}#) #f) (apply (lambda (#{_\ 3195}# #{f\ 3196}# #{id\ 3197}# #{val\ 3198}# #{e1\ 3199}# #{e2\ 3200}#) (#{chi-let\ 3108}# #{e\ 3137}# #{r\ 3138}# #{w\ 3139}# #{s\ 3140}# #{mod\ 3141}# #{build-named-let\ 178}# (cons #{f\ 3196}# #{id\ 3197}#) #{val\ 3198}# (cons #{e1\ 3199}# #{e2\ 3200}#))) #{tmp\ 3173}#) ((lambda (#{_\ 3205}#) (syntax-violation 'let "bad let" (#{source-wrap\ 293}# #{e\ 3137}# #{w\ 3139}# #{s\ 3140}# #{mod\ 3141}#))) #{tmp\ 3147}#))) ($sc-dispatch #{tmp\ 3147}# '(any any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 3147}# '(any #(each (any any)) any . each-any)))) #{e\ 3137}#)))) (#{global-extend\ 218}# 'core 'letrec (lambda (#{e\ 3206}# #{r\ 3207}# #{w\ 3208}# #{s\ 3209}# #{mod\ 3210}#) ((lambda (#{tmp\ 3216}#) ((lambda (#{tmp\ 3217}#) (if (if #{tmp\ 3217}# (apply (lambda (#{_\ 3223}# #{id\ 3224}# #{val\ 3225}# #{e1\ 3226}# #{e2\ 3227}#) (and-map #{id?\ 222}# #{id\ 3224}#)) #{tmp\ 3217}#) #f) (apply (lambda (#{_\ 3234}# #{id\ 3235}# #{val\ 3236}# #{e1\ 3237}# #{e2\ 3238}#) (let ((#{ids\ 3240}# #{id\ 3235}#)) (if (not (#{valid-bound-ids?\ 285}# #{ids\ 3240}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 3206}#) (let ((#{labels\ 3244}# (#{gen-labels\ 240}# #{ids\ 3240}#)) (#{new-vars\ 3245}# (map #{gen-var\ 335}# #{ids\ 3240}#))) (let ((#{w\ 3248}# (#{make-binding-wrap\ 269}# #{ids\ 3240}# #{labels\ 3244}# #{w\ 3208}#)) (#{r\ 3249}# (#{extend-var-env\ 212}# #{labels\ 3244}# #{new-vars\ 3245}# #{r\ 3207}#))) (#{build-letrec\ 180}# #{s\ 3209}# (map syntax->datum #{ids\ 3240}#) #{new-vars\ 3245}# (map (lambda (#{x\ 3250}#) (#{chi\ 307}# #{x\ 3250}# #{r\ 3249}# #{w\ 3248}# #{mod\ 3210}#)) #{val\ 3236}#) (#{chi-body\ 315}# (cons #{e1\ 3237}# #{e2\ 3238}#) (#{source-wrap\ 293}# #{e\ 3206}# #{w\ 3248}# #{s\ 3209}# #{mod\ 3210}#) #{r\ 3249}# #{w\ 3248}# #{mod\ 3210}#))))))) #{tmp\ 3217}#) ((lambda (#{_\ 3255}#) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 293}# #{e\ 3206}# #{w\ 3208}# #{s\ 3209}# #{mod\ 3210}#))) #{tmp\ 3216}#))) ($sc-dispatch #{tmp\ 3216}# '(any #(each (any any)) any . each-any)))) #{e\ 3206}#))) (#{global-extend\ 218}# 'core 'set! (lambda (#{e\ 3256}# #{r\ 3257}# #{w\ 3258}# #{s\ 3259}# #{mod\ 3260}#) ((lambda (#{tmp\ 3266}#) ((lambda (#{tmp\ 3267}#) (if (if #{tmp\ 3267}# (apply (lambda (#{_\ 3271}# #{id\ 3272}# #{val\ 3273}#) (#{id?\ 222}# #{id\ 3272}#)) #{tmp\ 3267}#) #f) (apply (lambda (#{_\ 3277}# #{id\ 3278}# #{val\ 3279}#) (let ((#{val\ 3282}# (#{chi\ 307}# #{val\ 3279}# #{r\ 3257}# #{w\ 3258}# #{mod\ 3260}#)) (#{n\ 3283}# (#{id-var-name\ 279}# #{id\ 3278}# #{w\ 3258}#))) (let ((#{b\ 3285}# (#{lookup\ 216}# #{n\ 3283}# #{r\ 3257}# #{mod\ 3260}#))) (let ((#{atom-key\ 3288}# (#{binding-type\ 205}# #{b\ 3285}#))) (if (memv #{atom-key\ 3288}# '(lexical)) (#{build-lexical-assignment\ 152}# #{s\ 3259}# (syntax->datum #{id\ 3278}#) (#{binding-value\ 207}# #{b\ 3285}#) #{val\ 3282}#) (if (memv #{atom-key\ 3288}# '(global)) (#{build-global-assignment\ 158}# #{s\ 3259}# #{n\ 3283}# #{val\ 3282}# #{mod\ 3260}#) (if (memv #{atom-key\ 3288}# '(displaced-lexical)) (syntax-violation 'set! "identifier out of context" (#{wrap\ 291}# #{id\ 3278}# #{w\ 3258}# #{mod\ 3260}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 293}# #{e\ 3256}# #{w\ 3258}# #{s\ 3259}# #{mod\ 3260}#))))))))) #{tmp\ 3267}#) ((lambda (#{tmp\ 3293}#) (if #{tmp\ 3293}# (apply (lambda (#{_\ 3298}# #{head\ 3299}# #{tail\ 3300}# #{val\ 3301}#) (call-with-values (lambda () (#{syntax-type\ 303}# #{head\ 3299}# #{r\ 3257}# '(()) #f #f #{mod\ 3260}# #t)) (lambda (#{type\ 3304}# #{value\ 3305}# #{ee\ 3306}# #{ww\ 3307}# #{ss\ 3308}# #{modmod\ 3309}#) (if (memv #{type\ 3304}# '(module-ref)) (let ((#{val\ 3318}# (#{chi\ 307}# #{val\ 3301}# #{r\ 3257}# #{w\ 3258}# #{mod\ 3260}#))) (call-with-values (lambda () (#{value\ 3305}# (cons #{head\ 3299}# #{tail\ 3300}#) #{r\ 3257}# #{w\ 3258}#)) (lambda (#{e\ 3320}# #{r\ 3321}# #{w\ 3322}# #{s*\ 3323}# #{mod\ 3324}#) ((lambda (#{tmp\ 3330}#) ((lambda (#{tmp\ 3331}#) (if (if #{tmp\ 3331}# (apply (lambda (#{e\ 3333}#) (#{id?\ 222}# #{e\ 3333}#)) #{tmp\ 3331}#) #f) (apply (lambda (#{e\ 3335}#) (#{build-global-assignment\ 158}# #{s\ 3259}# (syntax->datum #{e\ 3335}#) #{val\ 3318}# #{mod\ 3324}#)) #{tmp\ 3331}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3330}#))) (list #{tmp\ 3330}#))) #{e\ 3320}#)))) (#{build-application\ 144}# #{s\ 3259}# (#{chi\ 307}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3310" "i3311" "i3312" "i3313" "i3314" "i3315")) #(ribcage #(_ head tail val) #((top) (top) (top) (top)) #("i3294" "i3295" "i3296" "i3297")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3261" "i3262" "i3263" "i3264" "i3265")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)) #{head\ 3299}#) #{r\ 3257}# #{w\ 3258}# #{mod\ 3260}#) (map (lambda (#{e\ 3337}#) (#{chi\ 307}# #{e\ 3337}# #{r\ 3257}# #{w\ 3258}# #{mod\ 3260}#)) (append #{tail\ 3300}# (list #{val\ 3301}#)))))))) #{tmp\ 3293}#) ((lambda (#{_\ 3341}#) (syntax-violation 'set! "bad set!" (#{source-wrap\ 293}# #{e\ 3256}# #{w\ 3258}# #{s\ 3259}# #{mod\ 3260}#))) #{tmp\ 3266}#))) ($sc-dispatch #{tmp\ 3266}# '(any (any . each-any) any))))) ($sc-dispatch #{tmp\ 3266}# '(any any any)))) #{e\ 3256}#))) (#{global-extend\ 218}# 'module-ref '@ (lambda (#{e\ 3342}# #{r\ 3343}# #{w\ 3344}#) ((lambda (#{tmp\ 3348}#) ((lambda (#{tmp\ 3349}#) (if (if #{tmp\ 3349}# (apply (lambda (#{_\ 3353}# #{mod\ 3354}# #{id\ 3355}#) (if (and-map #{id?\ 222}# #{mod\ 3354}#) (#{id?\ 222}# #{id\ 3355}#) #f)) #{tmp\ 3349}#) #f) (apply (lambda (#{_\ 3362}# #{mod\ 3363}# #{id\ 3364}#) (values (syntax->datum #{id\ 3364}#) #{r\ 3343}# #{w\ 3344}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(_ mod id) #((top) (top) (top)) #("i3359" "i3360" "i3361")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3345" "i3346" "i3347")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)) #{mod\ 3363}#)))) #{tmp\ 3349}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3348}#))) ($sc-dispatch #{tmp\ 3348}# '(any each-any any)))) #{e\ 3342}#))) (#{global-extend\ 218}# 'module-ref '@@ (lambda (#{e\ 3366}# #{r\ 3367}# #{w\ 3368}#) (letrec ((#{remodulate\ 3373}# (lambda (#{x\ 3374}# #{mod\ 3375}#) (if (pair? #{x\ 3374}#) (cons (#{remodulate\ 3373}# (car #{x\ 3374}#) #{mod\ 3375}#) (#{remodulate\ 3373}# (cdr #{x\ 3374}#) #{mod\ 3375}#)) (if (#{syntax-object?\ 186}# #{x\ 3374}#) (#{make-syntax-object\ 184}# (#{remodulate\ 3373}# (#{syntax-object-expression\ 188}# #{x\ 3374}#) #{mod\ 3375}#) (#{syntax-object-wrap\ 190}# #{x\ 3374}#) #{mod\ 3375}#) (if (vector? #{x\ 3374}#) (let ((#{n\ 3386}# (vector-length #{x\ 3374}#))) (let ((#{v\ 3388}# (make-vector #{n\ 3386}#))) (letrec ((#{loop\ 3391}# (lambda (#{i\ 3392}#) (if (#{fx=\ 127}# #{i\ 3392}# #{n\ 3386}#) (begin (if #f #f) #{v\ 3388}#) (begin (vector-set! #{v\ 3388}# #{i\ 3392}# (#{remodulate\ 3373}# (vector-ref #{x\ 3374}# #{i\ 3392}#) #{mod\ 3375}#)) (#{loop\ 3391}# (#{fx+\ 123}# #{i\ 3392}# 1))))))) (#{loop\ 3391}# 0)))) #{x\ 3374}#)))))) ((lambda (#{tmp\ 3396}#) ((lambda (#{tmp\ 3397}#) (if (if #{tmp\ 3397}# (apply (lambda (#{_\ 3401}# #{mod\ 3402}# #{exp\ 3403}#) (and-map #{id?\ 222}# #{mod\ 3402}#)) #{tmp\ 3397}#) #f) (apply (lambda (#{_\ 3408}# #{mod\ 3409}# #{exp\ 3410}#) (let ((#{mod\ 3412}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(_ mod exp) #((top) (top) (top)) #("i3405" "i3406" "i3407")) #(ribcage (remodulate) ((top)) ("i3372")) #(ribcage #(e r w) #((top) (top) (top)) #("i3369" "i3370" "i3371")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)) #{mod\ 3409}#)))) (values (#{remodulate\ 3373}# #{exp\ 3410}# #{mod\ 3412}#) #{r\ 3367}# #{w\ 3368}# (#{source-annotation\ 201}# #{exp\ 3410}#) #{mod\ 3412}#))) #{tmp\ 3397}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3396}#))) ($sc-dispatch #{tmp\ 3396}# '(any each-any any)))) #{e\ 3366}#)))) (#{global-extend\ 218}# 'core 'if (lambda (#{e\ 3414}# #{r\ 3415}# #{w\ 3416}# #{s\ 3417}# #{mod\ 3418}#) ((lambda (#{tmp\ 3424}#) ((lambda (#{tmp\ 3425}#) (if #{tmp\ 3425}# (apply (lambda (#{_\ 3429}# #{test\ 3430}# #{then\ 3431}#) (#{build-conditional\ 146}# #{s\ 3417}# (#{chi\ 307}# #{test\ 3430}# #{r\ 3415}# #{w\ 3416}# #{mod\ 3418}#) (#{chi\ 307}# #{then\ 3431}# #{r\ 3415}# #{w\ 3416}# #{mod\ 3418}#) (#{build-void\ 142}# #f))) #{tmp\ 3425}#) ((lambda (#{tmp\ 3433}#) (if #{tmp\ 3433}# (apply (lambda (#{_\ 3438}# #{test\ 3439}# #{then\ 3440}# #{else\ 3441}#) (#{build-conditional\ 146}# #{s\ 3417}# (#{chi\ 307}# #{test\ 3439}# #{r\ 3415}# #{w\ 3416}# #{mod\ 3418}#) (#{chi\ 307}# #{then\ 3440}# #{r\ 3415}# #{w\ 3416}# #{mod\ 3418}#) (#{chi\ 307}# #{else\ 3441}# #{r\ 3415}# #{w\ 3416}# #{mod\ 3418}#))) #{tmp\ 3433}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3424}#))) ($sc-dispatch #{tmp\ 3424}# '(any any any any))))) ($sc-dispatch #{tmp\ 3424}# '(any any any)))) #{e\ 3414}#))) (#{global-extend\ 218}# 'core 'with-fluids (lambda (#{e\ 3442}# #{r\ 3443}# #{w\ 3444}# #{s\ 3445}# #{mod\ 3446}#) ((lambda (#{tmp\ 3452}#) ((lambda (#{tmp\ 3453}#) (if #{tmp\ 3453}# (apply (lambda (#{_\ 3459}# #{fluid\ 3460}# #{val\ 3461}# #{b\ 3462}# #{b*\ 3463}#) (#{build-dynlet\ 148}# #{s\ 3445}# (map (lambda (#{x\ 3464}#) (#{chi\ 307}# #{x\ 3464}# #{r\ 3443}# #{w\ 3444}# #{mod\ 3446}#)) #{fluid\ 3460}#) (map (lambda (#{x\ 3467}#) (#{chi\ 307}# #{x\ 3467}# #{r\ 3443}# #{w\ 3444}# #{mod\ 3446}#)) #{val\ 3461}#) (#{chi-body\ 315}# (cons #{b\ 3462}# #{b*\ 3463}#) (#{source-wrap\ 293}# #{e\ 3442}# #{w\ 3444}# #{s\ 3445}# #{mod\ 3446}#) #{r\ 3443}# #{w\ 3444}# #{mod\ 3446}#))) #{tmp\ 3453}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3452}#))) ($sc-dispatch #{tmp\ 3452}# '(any #(each (any any)) any . each-any)))) #{e\ 3442}#))) (#{global-extend\ 218}# 'begin 'begin '()) (#{global-extend\ 218}# 'define 'define '()) (#{global-extend\ 218}# 'define-syntax 'define-syntax '()) (#{global-extend\ 218}# 'eval-when 'eval-when '()) (#{global-extend\ 218}# 'core 'syntax-case (letrec ((#{gen-syntax-case\ 3478}# (lambda (#{x\ 3479}# #{keys\ 3480}# #{clauses\ 3481}# #{r\ 3482}# #{mod\ 3483}#) (if (null? #{clauses\ 3481}#) (#{build-application\ 144}# #f (#{build-primref\ 170}# #f 'syntax-violation) (list (#{build-data\ 172}# #f #f) (#{build-data\ 172}# #f "source expression failed to match any pattern") #{x\ 3479}#)) ((lambda (#{tmp\ 3493}#) ((lambda (#{tmp\ 3494}#) (if #{tmp\ 3494}# (apply (lambda (#{pat\ 3497}# #{exp\ 3498}#) (if (if (#{id?\ 222}# #{pat\ 3497}#) (and-map (lambda (#{x\ 3501}#) (not (#{free-id=?\ 281}# #{pat\ 3497}# #{x\ 3501}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3495" "i3496")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3484" "i3485" "i3486" "i3487" "i3488")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3477" "i3475" "i3473" "i3471")) #(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)) ("i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i286" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i265" "i264" "i262" "i261" "i260" "i259" "i258" "i256" "i254" "i252" "i250" "i248" "i246" "i244" "i242" "i239" "i237" "i236" "i235" "i234" "i233" "i232" "i230" "i228" "i226" "i224" "i223" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i208" "i206" "i204" "i203" "i202" "i200" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i155" "i153" "i151" "i149" "i147" "i145" "i143" "i141" "i139" "i137" "i135" "i134" "i132" "i130" "i128" "i126" "i124" "i122" "i120" "i118")) #(ribcage (define-structure and-map*) ((top) (top)) ("i21" "i19"))) (hygiene guile)) #{keys\ 3480}#)) #f) (let ((#{labels\ 3505}# (list (#{gen-label\ 238}#))) (#{var\ 3506}# (#{gen-var\ 335}# #{pat\ 3497}#))) (#{build-application\ 144}# #f (#{build-simple-lambda\ 164}# #f (list (syntax->datum #{pat\ 3497}#)) #f (list #{var\ 3506}#) '() (#{chi\ 307}# #{exp\ 3498}# (#{extend-env\ 210}# #{labels\ 3505}# (list (cons 'syntax (cons #{var\ 3506}# 0))) #{r\ 3482}#) (#{make-binding-wrap\ 269}# (list #{pat\ 3497}#) #{labels\ 3505}# '(())) #{mod\ 3483}#)) (list #{x\ 3479}#))) (#{gen-clause\ 3476}# #{x\ 3479}# #{keys\ 3480}# (cdr #{clauses\ 3481}#) #{r\ 3482}# #{pat\ 3497}# #t #{exp\ 3498}# #{mod\ 3483}#))) #{tmp\ 3494}#) ((lambda (#{tmp\ 3512}#) (if #{tmp\ 3512}# (apply (lambda (#{pat\ 3516}# #{fender\ 3517}# #{exp\ 3518}#) (#{gen-clause\ 3476}# #{x\ 3479}# #{keys\ 3480}# (cdr #{clauses\ 3481}#) #{r\ 3482}# #{pat\ 3516}# #{fender\ 3517}# #{exp\ 3518}# #{mod\ 3483}#)) #{tmp\ 3512}#) ((lambda (#{_\ 3520}#) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 3481}#))) #{tmp\ 3493}#))) ($sc-dispatch #{tmp\ 3493}# '(any any any))))) ($sc-dispatch #{tmp\ 3493}# (quote (any any))))) (car #{clauses\ 3481}#))))) (#{gen-clause\ 3476}# (lambda (#{x\ 3521}# #{keys\ 3522}# #{clauses\ 3523}# #{r\ 3524}# #{pat\ 3525}# #{fender\ 3526}# #{exp\ 3527}# #{mod\ 3528}#) (call-with-values (lambda () (#{convert-pattern\ 3472}# #{pat\ 3525}# #{keys\ 3522}#)) (lambda (#{p\ 3537}# #{pvars\ 3538}#) (if (not (#{distinct-bound-ids?\ 287}# (map car #{pvars\ 3538}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 3525}#) (if (not (and-map (lambda (#{x\ 3545}#) (not (#{ellipsis?\ 323}# (car #{x\ 3545}#)))) #{pvars\ 3538}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 3525}#) (let ((#{y\ 3549}# (#{gen-var\ 335}# (quote tmp)))) (#{build-application\ 144}# #f (#{build-simple-lambda\ 164}# #f (list (quote tmp)) #f (list #{y\ 3549}#) '() (let ((#{y\ 3553}# (#{build-lexical-reference\ 150}# 'value #f 'tmp #{y\ 3549}#))) (#{build-conditional\ 146}# #f ((lambda (#{tmp\ 3556}#) ((lambda (#{tmp\ 3557}#) (if #{tmp\ 3557}# (apply (lambda () #{y\ 3553}#) #{tmp\ 3557}#) ((lambda (#{_\ 3559}#) (#{build-conditional\ 146}# #f #{y\ 3553}# (#{build-dispatch-call\ 3474}# #{pvars\ 3538}# #{fender\ 3526}# #{y\ 3553}# #{r\ 3524}# #{mod\ 3528}#) (#{build-data\ 172}# #f #f))) #{tmp\ 3556}#))) ($sc-dispatch #{tmp\ 3556}# '#(atom #t)))) #{fender\ 3526}#) (#{build-dispatch-call\ 3474}# #{pvars\ 3538}# #{exp\ 3527}# #{y\ 3553}# #{r\ 3524}# #{mod\ 3528}#) (#{gen-syntax-case\ 3478}# #{x\ 3521}# #{keys\ 3522}# #{clauses\ 3523}# #{r\ 3524}# #{mod\ 3528}#)))) (list (if (eq? #{p\ 3537}# (quote any)) (#{build-application\ 144}# #f (#{build-primref\ 170}# #f 'list) (list #{x\ 3521}#)) (#{build-application\ 144}# #f (#{build-primref\ 170}# #f '$sc-dispatch) (list #{x\ 3521}# (#{build-data\ 172}# #f #{p\ 3537}#))))))))))))) (#{build-dispatch-call\ 3474}# (lambda (#{pvars\ 3567}# #{exp\ 3568}# #{y\ 3569}# #{r\ 3570}# #{mod\ 3571}#) (let ((#{ids\ 3579}# (map car #{pvars\ 3567}#)) (#{levels\ 3580}# (map cdr #{pvars\ 3567}#))) (let ((#{labels\ 3583}# (#{gen-labels\ 240}# #{ids\ 3579}#)) (#{new-vars\ 3584}# (map #{gen-var\ 335}# #{ids\ 3579}#))) (#{build-application\ 144}# #f (#{build-primref\ 170}# #f (quote apply)) (list (#{build-simple-lambda\ 164}# #f (map syntax->datum #{ids\ 3579}#) #f #{new-vars\ 3584}# '() (#{chi\ 307}# #{exp\ 3568}# (#{extend-env\ 210}# #{labels\ 3583}# (map (lambda (#{var\ 3588}# #{level\ 3589}#) (cons 'syntax (cons #{var\ 3588}# #{level\ 3589}#))) #{new-vars\ 3584}# (map cdr #{pvars\ 3567}#)) #{r\ 3570}#) (#{make-binding-wrap\ 269}# #{ids\ 3579}# #{labels\ 3583}# '(())) #{mod\ 3571}#)) #{y\ 3569}#)))))) (#{convert-pattern\ 3472}# (lambda (#{pattern\ 3595}# #{keys\ 3596}#) (letrec ((#{cvt\ 3602}# (lambda (#{p\ 3603}# #{n\ 3604}# #{ids\ 3605}#) (if (#{id?\ 222}# #{p\ 3603}#) (if (#{bound-id-member?\ 289}# #{p\ 3603}# #{keys\ 3596}#) (values (vector (quote free-id) #{p\ 3603}#) #{ids\ 3605}#) (values 'any (cons (cons #{p\ 3603}# #{n\ 3604}#) #{ids\ 3605}#))) ((lambda (#{tmp\ 3609}#) ((lambda (#{tmp\ 3610}#) (if (if #{tmp\ 3610}# (apply (lambda (#{x\ 3613}# #{dots\ 3614}#) (#{ellipsis?\ 323}# #{dots\ 3614}#)) #{tmp\ 3610}#) #f) (apply (lambda (#{x\ 3617}# #{dots\ 3618}#) (call-with-values (lambda () (#{cvt\ 3602}# #{x\ 3617}# (#{fx+\ 123}# #{n\ 3604}# 1) #{ids\ 3605}#)) (lambda (#{p\ 3619}# #{ids\ 3620}#) (values (if (eq? #{p\ 3619}# 'any) 'each-any (vector 'each #{p\ 3619}#)) #{ids\ 3620}#)))) #{tmp\ 3610}#) ((lambda (#{tmp\ 3623}#) (if (if #{tmp\ 3623}# (apply (lambda (#{x\ 3627}# #{dots\ 3628}# #{ys\ 3629}#) (#{ellipsis?\ 323}# #{dots\ 3628}#)) #{tmp\ 3623}#) #f) (apply (lambda (#{x\ 3633}# #{dots\ 3634}# #{ys\ 3635}#) (call-with-values (lambda () (#{cvt*\ 3600}# #{ys\ 3635}# #{n\ 3604}# #{ids\ 3605}#)) (lambda (#{ys\ 3637}# #{ids\ 3638}#) (call-with-values (lambda () (#{cvt\ 3602}# #{x\ 3633}# (+ #{n\ 3604}# 1) #{ids\ 3638}#)) (lambda (#{x\ 3641}# #{ids\ 3642}#) (values (list->vector (cons 'each+ (cons #{x\ 3641}# (cons (reverse #{ys\ 3637}#) '(()))))) #{ids\ 3642}#)))))) #{tmp\ 3623}#) ((lambda (#{tmp\ 3646}#) (if #{tmp\ 3646}# (apply (lambda (#{x\ 3649}# #{y\ 3650}#) (call-with-values (lambda () (#{cvt\ 3602}# #{y\ 3650}# #{n\ 3604}# #{ids\ 3605}#)) (lambda (#{y\ 3651}# #{ids\ 3652}#) (call-with-values (lambda () (#{cvt\ 3602}# #{x\ 3649}# #{n\ 3604}# #{ids\ 3652}#)) (lambda (#{x\ 3655}# #{ids\ 3656}#) (values (cons #{x\ 3655}# #{y\ 3651}#) #{ids\ 3656}#)))))) #{tmp\ 3646}#) ((lambda (#{tmp\ 3659}#) (if #{tmp\ 3659}# (apply (lambda () (values '() #{ids\ 3605}#)) #{tmp\ 3659}#) ((lambda (#{tmp\ 3660}#) (if #{tmp\ 3660}# (apply (lambda (#{x\ 3662}#) (call-with-values (lambda () (#{cvt\ 3602}# #{x\ 3662}# #{n\ 3604}# #{ids\ 3605}#)) (lambda (#{p\ 3664}# #{ids\ 3665}#) (values (vector 'vector #{p\ 3664}#) #{ids\ 3665}#)))) #{tmp\ 3660}#) ((lambda (#{x\ 3669}#) (values (vector 'atom (#{strip\ 333}# #{p\ 3603}# '(()))) #{ids\ 3605}#)) #{tmp\ 3609}#))) ($sc-dispatch #{tmp\ 3609}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 3609}# '())))) ($sc-dispatch #{tmp\ 3609}# '(any . any))))) ($sc-dispatch #{tmp\ 3609}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 3609}# '(any any)))) #{p\ 3603}#)))) (#{cvt*\ 3600}# (lambda (#{p*\ 3671}# #{n\ 3672}# #{ids\ 3673}#) (if (null? #{p*\ 3671}#) (values (quote ()) #{ids\ 3673}#) (call-with-values (lambda () (#{cvt*\ 3600}# (cdr #{p*\ 3671}#) #{n\ 3672}# #{ids\ 3673}#)) (lambda (#{y\ 3677}# #{ids\ 3678}#) (call-with-values (lambda () (#{cvt\ 3602}# (car #{p*\ 3671}#) #{n\ 3672}# #{ids\ 3678}#)) (lambda (#{x\ 3681}# #{ids\ 3682}#) (values (cons #{x\ 3681}# #{y\ 3677}#) #{ids\ 3682}#))))))))) (#{cvt\ 3602}# #{pattern\ 3595}# 0 (quote ())))))) (lambda (#{e\ 3685}# #{r\ 3686}# #{w\ 3687}# #{s\ 3688}# #{mod\ 3689}#) (let ((#{e\ 3696}# (#{source-wrap\ 293}# #{e\ 3685}# #{w\ 3687}# #{s\ 3688}# #{mod\ 3689}#))) ((lambda (#{tmp\ 3697}#) ((lambda (#{tmp\ 3698}#) (if #{tmp\ 3698}# (apply (lambda (#{_\ 3703}# #{val\ 3704}# #{key\ 3705}# #{m\ 3706}#) (if (and-map (lambda (#{x\ 3707}#) (if (#{id?\ 222}# #{x\ 3707}#) (not (#{ellipsis?\ 323}# #{x\ 3707}#)) #f)) #{key\ 3705}#) (let ((#{x\ 3713}# (#{gen-var\ 335}# (quote tmp)))) (#{build-application\ 144}# #{s\ 3688}# (#{build-simple-lambda\ 164}# #f (list (quote tmp)) #f (list #{x\ 3713}#) '() (#{gen-syntax-case\ 3478}# (#{build-lexical-reference\ 150}# 'value #f 'tmp #{x\ 3713}#) #{key\ 3705}# #{m\ 3706}# #{r\ 3686}# #{mod\ 3689}#)) (list (#{chi\ 307}# #{val\ 3704}# #{r\ 3686}# '(()) #{mod\ 3689}#)))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 3696}#))) #{tmp\ 3698}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3697}#))) ($sc-dispatch #{tmp\ 3697}# '(any any each-any . each-any)))) #{e\ 3696}#))))) (set! macroexpand (lambda (#{x\ 3719}# . #{rest\ 3720}#) (if (if (pair? #{x\ 3719}#) (equal? (car #{x\ 3719}#) #{noexpand\ 119}#) #f) (cadr #{x\ 3719}#) (let ((#{m\ 3727}# (if (null? #{rest\ 3720}#) 'e (car #{rest\ 3720}#))) (#{esew\ 3728}# (if (let ((#{t\ 3731}# (null? #{rest\ 3720}#))) (if #{t\ 3731}# #{t\ 3731}# (null? (cdr #{rest\ 3720}#)))) '(eval) (cadr #{rest\ 3720}#)))) (with-fluids ((#{*mode*\ 121}# #{m\ 3727}#)) (#{chi-top\ 305}# #{x\ 3719}# '() '((top)) #{m\ 3727}# #{esew\ 3728}# (cons 'hygiene (module-name (current-module))))))))) (set! identifier? (lambda (#{x\ 3735}#) (#{nonsymbol-id?\ 220}# #{x\ 3735}#))) (set! datum->syntax (lambda (#{id\ 3737}# #{datum\ 3738}#) (#{make-syntax-object\ 184}# #{datum\ 3738}# (#{syntax-object-wrap\ 190}# #{id\ 3737}#) #f))) (set! syntax->datum (lambda (#{x\ 3741}#) (#{strip\ 333}# #{x\ 3741}# (quote (()))))) (set! generate-temporaries (lambda (#{ls\ 3744}#) (begin (let ((#{x\ 3748}# #{ls\ 3744}#)) (if (not (list? #{x\ 3748}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 3748}#))) (map (lambda (#{x\ 3749}#) (#{wrap\ 291}# (gensym) (quote ((top))) #f)) #{ls\ 3744}#)))) (set! free-identifier=? (lambda (#{x\ 3753}# #{y\ 3754}#) (begin (let ((#{x\ 3759}# #{x\ 3753}#)) (if (not (#{nonsymbol-id?\ 220}# #{x\ 3759}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3759}#))) (let ((#{x\ 3762}# #{y\ 3754}#)) (if (not (#{nonsymbol-id?\ 220}# #{x\ 3762}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3762}#))) (#{free-id=?\ 281}# #{x\ 3753}# #{y\ 3754}#)))) (set! bound-identifier=? (lambda (#{x\ 3763}# #{y\ 3764}#) (begin (let ((#{x\ 3769}# #{x\ 3763}#)) (if (not (#{nonsymbol-id?\ 220}# #{x\ 3769}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3769}#))) (let ((#{x\ 3772}# #{y\ 3764}#)) (if (not (#{nonsymbol-id?\ 220}# #{x\ 3772}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3772}#))) (#{bound-id=?\ 283}# #{x\ 3763}# #{y\ 3764}#)))) (set! syntax-violation (lambda (#{who\ 3773}# #{message\ 3774}# #{form\ 3775}# . #{subform\ 3776}#) (begin (let ((#{x\ 3783}# #{who\ 3773}#)) (if (not ((lambda (#{x\ 3784}#) (let ((#{t\ 3788}# (not #{x\ 3784}#))) (if #{t\ 3788}# #{t\ 3788}# (let ((#{t\ 3791}# (string? #{x\ 3784}#))) (if #{t\ 3791}# #{t\ 3791}# (symbol? #{x\ 3784}#)))))) #{x\ 3783}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3783}#))) (let ((#{x\ 3795}# #{message\ 3774}#)) (if (not (string? #{x\ 3795}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3795}#))) (scm-error 'syntax-error 'macroexpand (string-append (if #{who\ 3773}# "~a: " "") "~a " (if (null? #{subform\ 3776}#) "in ~a" "in subform `~s' of `~s'")) (let ((#{tail\ 3797}# (cons #{message\ 3774}# (map (lambda (#{x\ 3798}#) (#{strip\ 333}# #{x\ 3798}# (quote (())))) (append #{subform\ 3776}# (list #{form\ 3775}#)))))) (if #{who\ 3773}# (cons #{who\ 3773}# #{tail\ 3797}#) #{tail\ 3797}#)) #f)))) (letrec ((#{match\ 3814}# (lambda (#{e\ 3815}# #{p\ 3816}# #{w\ 3817}# #{r\ 3818}# #{mod\ 3819}#) (if (not #{r\ 3818}#) #f (if (eq? #{p\ 3816}# (quote any)) (cons (#{wrap\ 291}# #{e\ 3815}# #{w\ 3817}# #{mod\ 3819}#) #{r\ 3818}#) (if (#{syntax-object?\ 186}# #{e\ 3815}#) (#{match*\ 3812}# (#{syntax-object-expression\ 188}# #{e\ 3815}#) #{p\ 3816}# (#{join-wraps\ 273}# #{w\ 3817}# (#{syntax-object-wrap\ 190}# #{e\ 3815}#)) #{r\ 3818}# (#{syntax-object-module\ 192}# #{e\ 3815}#)) (#{match*\ 3812}# #{e\ 3815}# #{p\ 3816}# #{w\ 3817}# #{r\ 3818}# #{mod\ 3819}#)))))) (#{match*\ 3812}# (lambda (#{e\ 3832}# #{p\ 3833}# #{w\ 3834}# #{r\ 3835}# #{mod\ 3836}#) (if (null? #{p\ 3833}#) (if (null? #{e\ 3832}#) #{r\ 3835}# #f) (if (pair? #{p\ 3833}#) (if (pair? #{e\ 3832}#) (#{match\ 3814}# (car #{e\ 3832}#) (car #{p\ 3833}#) #{w\ 3834}# (#{match\ 3814}# (cdr #{e\ 3832}#) (cdr #{p\ 3833}#) #{w\ 3834}# #{r\ 3835}# #{mod\ 3836}#) #{mod\ 3836}#) #f) (if (eq? #{p\ 3833}# (quote each-any)) (let ((#{l\ 3853}# (#{match-each-any\ 3806}# #{e\ 3832}# #{w\ 3834}# #{mod\ 3836}#))) (if #{l\ 3853}# (cons #{l\ 3853}# #{r\ 3835}#) #f)) (let ((#{atom-key\ 3859}# (vector-ref #{p\ 3833}# 0))) (if (memv #{atom-key\ 3859}# (quote (each))) (if (null? #{e\ 3832}#) (#{match-empty\ 3808}# (vector-ref #{p\ 3833}# 1) #{r\ 3835}#) (let ((#{l\ 3862}# (#{match-each\ 3802}# #{e\ 3832}# (vector-ref #{p\ 3833}# 1) #{w\ 3834}# #{mod\ 3836}#))) (if #{l\ 3862}# (letrec ((#{collect\ 3867}# (lambda (#{l\ 3868}#) (if (null? (car #{l\ 3868}#)) #{r\ 3835}# (cons (map car #{l\ 3868}#) (#{collect\ 3867}# (map cdr #{l\ 3868}#))))))) (#{collect\ 3867}# #{l\ 3862}#)) #f))) (if (memv #{atom-key\ 3859}# (quote (each+))) (call-with-values (lambda () (#{match-each+\ 3804}# #{e\ 3832}# (vector-ref #{p\ 3833}# 1) (vector-ref #{p\ 3833}# 2) (vector-ref #{p\ 3833}# 3) #{w\ 3834}# #{r\ 3835}# #{mod\ 3836}#)) (lambda (#{xr*\ 3870}# #{y-pat\ 3871}# #{r\ 3872}#) (if #{r\ 3872}# (if (null? #{y-pat\ 3871}#) (if (null? #{xr*\ 3870}#) (#{match-empty\ 3808}# (vector-ref #{p\ 3833}# 1) #{r\ 3872}#) (#{combine\ 3810}# #{xr*\ 3870}# #{r\ 3872}#)) #f) #f))) (if (memv #{atom-key\ 3859}# (quote (free-id))) (if (#{id?\ 222}# #{e\ 3832}#) (if (#{free-id=?\ 281}# (#{wrap\ 291}# #{e\ 3832}# #{w\ 3834}# #{mod\ 3836}#) (vector-ref #{p\ 3833}# 1)) #{r\ 3835}# #f) #f) (if (memv #{atom-key\ 3859}# (quote (atom))) (if (equal? (vector-ref #{p\ 3833}# 1) (#{strip\ 333}# #{e\ 3832}# #{w\ 3834}#)) #{r\ 3835}# #f) (if (memv #{atom-key\ 3859}# '(vector)) (if (vector? #{e\ 3832}#) (#{match\ 3814}# (vector->list #{e\ 3832}#) (vector-ref #{p\ 3833}# 1) #{w\ 3834}# #{r\ 3835}# #{mod\ 3836}#) #f)))))))))))) (#{combine\ 3810}# (lambda (#{r*\ 3889}# #{r\ 3890}#) (if (null? (car #{r*\ 3889}#)) #{r\ 3890}# (cons (map car #{r*\ 3889}#) (#{combine\ 3810}# (map cdr #{r*\ 3889}#) #{r\ 3890}#))))) (#{match-empty\ 3808}# (lambda (#{p\ 3893}# #{r\ 3894}#) (if (null? #{p\ 3893}#) #{r\ 3894}# (if (eq? #{p\ 3893}# (quote any)) (cons (quote ()) #{r\ 3894}#) (if (pair? #{p\ 3893}#) (#{match-empty\ 3808}# (car #{p\ 3893}#) (#{match-empty\ 3808}# (cdr #{p\ 3893}#) #{r\ 3894}#)) (if (eq? #{p\ 3893}# (quote each-any)) (cons (quote ()) #{r\ 3894}#) (let ((#{atom-key\ 3908}# (vector-ref #{p\ 3893}# 0))) (if (memv #{atom-key\ 3908}# (quote (each))) (#{match-empty\ 3808}# (vector-ref #{p\ 3893}# 1) #{r\ 3894}#) (if (memv #{atom-key\ 3908}# (quote (each+))) (#{match-empty\ 3808}# (vector-ref #{p\ 3893}# 1) (#{match-empty\ 3808}# (reverse (vector-ref #{p\ 3893}# 2)) (#{match-empty\ 3808}# (vector-ref #{p\ 3893}# 3) #{r\ 3894}#))) (if (memv #{atom-key\ 3908}# '(free-id atom)) #{r\ 3894}# (if (memv #{atom-key\ 3908}# '(vector)) (#{match-empty\ 3808}# (vector-ref #{p\ 3893}# 1) #{r\ 3894}#)))))))))))) (#{match-each-any\ 3806}# (lambda (#{e\ 3913}# #{w\ 3914}# #{mod\ 3915}#) (if (pair? #{e\ 3913}#) (let ((#{l\ 3922}# (#{match-each-any\ 3806}# (cdr #{e\ 3913}#) #{w\ 3914}# #{mod\ 3915}#))) (if #{l\ 3922}# (cons (#{wrap\ 291}# (car #{e\ 3913}#) #{w\ 3914}# #{mod\ 3915}#) #{l\ 3922}#) #f)) (if (null? #{e\ 3913}#) '() (if (#{syntax-object?\ 186}# #{e\ 3913}#) (#{match-each-any\ 3806}# (#{syntax-object-expression\ 188}# #{e\ 3913}#) (#{join-wraps\ 273}# #{w\ 3914}# (#{syntax-object-wrap\ 190}# #{e\ 3913}#)) #{mod\ 3915}#) #f))))) (#{match-each+\ 3804}# (lambda (#{e\ 3930}# #{x-pat\ 3931}# #{y-pat\ 3932}# #{z-pat\ 3933}# #{w\ 3934}# #{r\ 3935}# #{mod\ 3936}#) (letrec ((#{f\ 3947}# (lambda (#{e\ 3948}# #{w\ 3949}#) (if (pair? #{e\ 3948}#) (call-with-values (lambda () (#{f\ 3947}# (cdr #{e\ 3948}#) #{w\ 3949}#)) (lambda (#{xr*\ 3952}# #{y-pat\ 3953}# #{r\ 3954}#) (if #{r\ 3954}# (if (null? #{y-pat\ 3953}#) (let ((#{xr\ 3959}# (#{match\ 3814}# (car #{e\ 3948}#) #{x-pat\ 3931}# #{w\ 3949}# '() #{mod\ 3936}#))) (if #{xr\ 3959}# (values (cons #{xr\ 3959}# #{xr*\ 3952}#) #{y-pat\ 3953}# #{r\ 3954}#) (values #f #f #f))) (values '() (cdr #{y-pat\ 3953}#) (#{match\ 3814}# (car #{e\ 3948}#) (car #{y-pat\ 3953}#) #{w\ 3949}# #{r\ 3954}# #{mod\ 3936}#))) (values #f #f #f)))) (if (#{syntax-object?\ 186}# #{e\ 3948}#) (#{f\ 3947}# (#{syntax-object-expression\ 188}# #{e\ 3948}#) (#{join-wraps\ 273}# #{w\ 3949}# #{e\ 3948}#)) (values '() #{y-pat\ 3932}# (#{match\ 3814}# #{e\ 3948}# #{z-pat\ 3933}# #{w\ 3949}# #{r\ 3935}# #{mod\ 3936}#))))))) (#{f\ 3947}# #{e\ 3930}# #{w\ 3934}#)))) (#{match-each\ 3802}# (lambda (#{e\ 3963}# #{p\ 3964}# #{w\ 3965}# #{mod\ 3966}#) (if (pair? #{e\ 3963}#) (let ((#{first\ 3974}# (#{match\ 3814}# (car #{e\ 3963}#) #{p\ 3964}# #{w\ 3965}# '() #{mod\ 3966}#))) (if #{first\ 3974}# (let ((#{rest\ 3978}# (#{match-each\ 3802}# (cdr #{e\ 3963}#) #{p\ 3964}# #{w\ 3965}# #{mod\ 3966}#))) (if #{rest\ 3978}# (cons #{first\ 3974}# #{rest\ 3978}#) #f)) #f)) (if (null? #{e\ 3963}#) '() (if (#{syntax-object?\ 186}# #{e\ 3963}#) (#{match-each\ 3802}# (#{syntax-object-expression\ 188}# #{e\ 3963}#) #{p\ 3964}# (#{join-wraps\ 273}# #{w\ 3965}# (#{syntax-object-wrap\ 190}# #{e\ 3963}#)) (#{syntax-object-module\ 192}# #{e\ 3963}#)) #f)))))) (set! $sc-dispatch (lambda (#{e\ 3986}# #{p\ 3987}#) (if (eq? #{p\ 3987}# (quote any)) (list #{e\ 3986}#) (if (#{syntax-object?\ 186}# #{e\ 3986}#) (#{match*\ 3812}# (#{syntax-object-expression\ 188}# #{e\ 3986}#) #{p\ 3987}# (#{syntax-object-wrap\ 190}# #{e\ 3986}#) '() (#{syntax-object-module\ 192}# #{e\ 3986}#)) (#{match*\ 3812}# #{e\ 3986}# #{p\ 3987}# '(()) '() #f))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (cons (lambda (#{x\ 3996}#) ((lambda (#{tmp\ 3998}#) ((lambda (#{tmp\ 3999}#) (if #{tmp\ 3999}# (apply (lambda (#{_\ 4003}# #{e1\ 4004}# #{e2\ 4005}#) (cons '#(syntax-object begin ((top) #(ribcage #(_ e1 e2) #((top) (top) (top)) #("i4000" "i4001" "i4002")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3997"))) (hygiene guile)) (cons #{e1\ 4004}# #{e2\ 4005}#))) #{tmp\ 3999}#) ((lambda (#{tmp\ 4007}#) (if #{tmp\ 4007}# (apply (lambda (#{_\ 4013}# #{out\ 4014}# #{in\ 4015}# #{e1\ 4016}# #{e2\ 4017}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4008" "i4009" "i4010" "i4011" "i4012")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3997"))) (hygiene guile)) #{in\ 4015}# '() (list #{out\ 4014}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4008" "i4009" "i4010" "i4011" "i4012")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3997"))) (hygiene guile)) (cons #{e1\ 4016}# #{e2\ 4017}#))))) #{tmp\ 4007}#) ((lambda (#{tmp\ 4019}#) (if #{tmp\ 4019}# (apply (lambda (#{_\ 4025}# #{out\ 4026}# #{in\ 4027}# #{e1\ 4028}# #{e2\ 4029}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4020" "i4021" "i4022" "i4023" "i4024")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3997"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4020" "i4021" "i4022" "i4023" "i4024")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3997"))) (hygiene guile)) #{in\ 4027}#) '() (list #{out\ 4026}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4020" "i4021" "i4022" "i4023" "i4024")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3997"))) (hygiene guile)) (cons #{e1\ 4028}# #{e2\ 4029}#))))) #{tmp\ 4019}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3998}#))) ($sc-dispatch #{tmp\ 3998}# '(any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 3998}# '(any ((any any)) any . each-any))))) ($sc-dispatch #{tmp\ 3998}# '(any () any . each-any)))) #{x\ 3996}#)) (module-name (current-module))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (cons (lambda (#{x\ 4033}#) ((lambda (#{tmp\ 4035}#) ((lambda (#{tmp\ 4036}#) (if #{tmp\ 4036}# (apply (lambda (#{_\ 4042}# #{k\ 4043}# #{keyword\ 4044}# #{pattern\ 4045}# #{template\ 4046}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile)) #{pattern\ 4045}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile)) (cons #{k\ 4043}# (map (lambda (#{tmp\ 4050}# #{tmp\ 4049}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile)) #{tmp\ 4049}#) (list '#(syntax-object syntax ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4037" "i4038" "i4039" "i4040" "i4041")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4034"))) (hygiene guile)) #{tmp\ 4050}#))) #{template\ 4046}# #{pattern\ 4045}#)))))) #{tmp\ 4036}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4035}#))) ($sc-dispatch #{tmp\ 4035}# '(any each-any . #(each ((any . any) any)))))) #{x\ 4033}#)) (module-name (current-module))))) (define let* (make-syntax-transformer 'let* 'macro (cons (lambda (#{x\ 4051}#) ((lambda (#{tmp\ 4053}#) ((lambda (#{tmp\ 4054}#) (if (if #{tmp\ 4054}# (apply (lambda (#{let*\ 4060}# #{x\ 4061}# #{v\ 4062}# #{e1\ 4063}# #{e2\ 4064}#) (and-map identifier? #{x\ 4061}#)) #{tmp\ 4054}#) #f) (apply (lambda (#{let*\ 4071}# #{x\ 4072}# #{v\ 4073}# #{e1\ 4074}# #{e2\ 4075}#) (letrec ((#{f\ 4078}# (lambda (#{bindings\ 4079}#) (if (null? #{bindings\ 4079}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4076" "i4077")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4066" "i4067" "i4068" "i4069" "i4070")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4052"))) (hygiene guile)) (cons '() (cons #{e1\ 4074}# #{e2\ 4075}#))) ((lambda (#{tmp\ 4084}#) ((lambda (#{tmp\ 4085}#) (if #{tmp\ 4085}# (apply (lambda (#{body\ 4088}# #{binding\ 4089}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i4086" "i4087")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4076" "i4077")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4066" "i4067" "i4068" "i4069" "i4070")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4052"))) (hygiene guile)) (list #{binding\ 4089}#) #{body\ 4088}#)) #{tmp\ 4085}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4084}#))) ($sc-dispatch #{tmp\ 4084}# '(any any)))) (list (#{f\ 4078}# (cdr #{bindings\ 4079}#)) (car #{bindings\ 4079}#))))))) (#{f\ 4078}# (map list #{x\ 4072}# #{v\ 4073}#)))) #{tmp\ 4054}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4053}#))) ($sc-dispatch #{tmp\ 4053}# '(any #(each (any any)) any . each-any)))) #{x\ 4051}#)) (module-name (current-module))))) (define do (make-syntax-transformer 'do 'macro (cons (lambda (#{orig-x\ 4090}#) ((lambda (#{tmp\ 4092}#) ((lambda (#{tmp\ 4093}#) (if #{tmp\ 4093}# (apply (lambda (#{_\ 4101}# #{var\ 4102}# #{init\ 4103}# #{step\ 4104}# #{e0\ 4105}# #{e1\ 4106}# #{c\ 4107}#) ((lambda (#{tmp\ 4109}#) ((lambda (#{tmp\ 4110}#) (if #{tmp\ 4110}# (apply (lambda (#{step\ 4112}#) ((lambda (#{tmp\ 4113}#) ((lambda (#{tmp\ 4114}#) (if #{tmp\ 4114}# (apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) (map list #{var\ 4102}# #{init\ 4103}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) #{e0\ 4105}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) (append #{c\ 4107}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) #{step\ 4112}#))))))) #{tmp\ 4114}#) ((lambda (#{tmp\ 4119}#) (if #{tmp\ 4119}# (apply (lambda (#{e1\ 4122}# #{e2\ 4123}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4120" "i4121")) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4120" "i4121")) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) (map list #{var\ 4102}# #{init\ 4103}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4120" "i4121")) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) #{e0\ 4105}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4120" "i4121")) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) (cons #{e1\ 4122}# #{e2\ 4123}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4120" "i4121")) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) (append #{c\ 4107}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4120" "i4121")) #(ribcage #(step) #((top)) #("i4111")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4094" "i4095" "i4096" "i4097" "i4098" "i4099" "i4100")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4091"))) (hygiene guile)) #{step\ 4112}#))))))) #{tmp\ 4119}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4113}#))) ($sc-dispatch #{tmp\ 4113}# '(any . each-any))))) ($sc-dispatch #{tmp\ 4113}# '()))) #{e1\ 4106}#)) #{tmp\ 4110}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4109}#))) ($sc-dispatch #{tmp\ 4109}# 'each-any))) (map (lambda (#{v\ 4130}# #{s\ 4131}#) ((lambda (#{tmp\ 4134}#) ((lambda (#{tmp\ 4135}#) (if #{tmp\ 4135}# (apply (lambda () #{v\ 4130}#) #{tmp\ 4135}#) ((lambda (#{tmp\ 4136}#) (if #{tmp\ 4136}# (apply (lambda (#{e\ 4138}#) #{e\ 4138}#) #{tmp\ 4136}#) ((lambda (#{_\ 4140}#) (syntax-violation 'do "bad step expression" #{orig-x\ 4090}# #{s\ 4131}#)) #{tmp\ 4134}#))) ($sc-dispatch #{tmp\ 4134}# '(any))))) ($sc-dispatch #{tmp\ 4134}# '()))) #{s\ 4131}#)) #{var\ 4102}# #{step\ 4104}#))) #{tmp\ 4093}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4092}#))) ($sc-dispatch #{tmp\ 4092}# '(any #(each (any any . any)) (any . each-any) . each-any)))) #{orig-x\ 4090}#)) (module-name (current-module))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (cons (letrec ((#{quasicons\ 4147}# (lambda (#{x\ 4151}# #{y\ 4152}#) ((lambda (#{tmp\ 4156}#) ((lambda (#{tmp\ 4157}#) (if #{tmp\ 4157}# (apply (lambda (#{x\ 4160}# #{y\ 4161}#) ((lambda (#{tmp\ 4162}#) ((lambda (#{tmp\ 4163}#) (if #{tmp\ 4163}# (apply (lambda (#{dy\ 4165}#) ((lambda (#{tmp\ 4166}#) ((lambda (#{tmp\ 4167}#) (if #{tmp\ 4167}# (apply (lambda (#{dx\ 4169}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) #("i4168")) #(ribcage #(dy) #((top)) #("i4164")) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) (cons #{dx\ 4169}# #{dy\ 4165}#))) #{tmp\ 4167}#) ((lambda (#{_\ 4171}#) (if (null? #{dy\ 4165}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) #("i4170")) #(ribcage #(dy) #((top)) #("i4164")) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{x\ 4160}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) #("i4170")) #(ribcage #(dy) #((top)) #("i4164")) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{x\ 4160}# #{y\ 4161}#))) #{tmp\ 4166}#))) ($sc-dispatch #{tmp\ 4166}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(dy) #((top)) #("i4164")) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) any)))) #{x\ 4160}#)) #{tmp\ 4163}#) ((lambda (#{tmp\ 4172}#) (if #{tmp\ 4172}# (apply (lambda (#{stuff\ 4174}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) #("i4173")) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) (cons #{x\ 4160}# #{stuff\ 4174}#))) #{tmp\ 4172}#) ((lambda (#{else\ 4176}#) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) #("i4175")) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{x\ 4160}# #{y\ 4161}#)) #{tmp\ 4162}#))) ($sc-dispatch #{tmp\ 4162}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 4162}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4158" "i4159")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4153" "i4154")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) any)))) #{y\ 4161}#)) #{tmp\ 4157}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4156}#))) ($sc-dispatch #{tmp\ 4156}# (quote (any any))))) (list #{x\ 4151}# #{y\ 4152}#)))) (#{quasiappend\ 4148}# (lambda (#{x\ 4177}# #{y\ 4178}#) ((lambda (#{tmp\ 4182}#) ((lambda (#{tmp\ 4183}#) (if #{tmp\ 4183}# (apply (lambda (#{x\ 4186}# #{y\ 4187}#) ((lambda (#{tmp\ 4188}#) ((lambda (#{tmp\ 4189}#) (if #{tmp\ 4189}# (apply (lambda () #{x\ 4186}#) #{tmp\ 4189}#) ((lambda (#{_\ 4191}#) (list '#(syntax-object append ((top) #(ribcage #(_) #((top)) #("i4190")) #(ribcage #(x y) #((top) (top)) #("i4184" "i4185")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4179" "i4180")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{x\ 4186}# #{y\ 4187}#)) #{tmp\ 4188}#))) ($sc-dispatch #{tmp\ 4188}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4184" "i4185")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4179" "i4180")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) ())))) #{y\ 4187}#)) #{tmp\ 4183}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4182}#))) ($sc-dispatch #{tmp\ 4182}# (quote (any any))))) (list #{x\ 4177}# #{y\ 4178}#)))) (#{quasivector\ 4149}# (lambda (#{x\ 4192}#) ((lambda (#{tmp\ 4195}#) ((lambda (#{x\ 4197}#) ((lambda (#{tmp\ 4198}#) ((lambda (#{tmp\ 4199}#) (if #{tmp\ 4199}# (apply (lambda (#{x\ 4201}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4200")) #(ribcage #(x) #((top)) #("i4196")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4193")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) (list->vector #{x\ 4201}#))) #{tmp\ 4199}#) ((lambda (#{tmp\ 4203}#) (if #{tmp\ 4203}# (apply (lambda (#{x\ 4205}#) (cons '#(syntax-object vector ((top) #(ribcage #(x) #((top)) #("i4204")) #(ribcage #(x) #((top)) #("i4196")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4193")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{x\ 4205}#)) #{tmp\ 4203}#) ((lambda (#{_\ 4208}#) (list '#(syntax-object list->vector ((top) #(ribcage #(_) #((top)) #("i4207")) #(ribcage #(x) #((top)) #("i4196")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4193")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{x\ 4197}#)) #{tmp\ 4198}#))) ($sc-dispatch #{tmp\ 4198}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x) #((top)) #("i4196")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4193")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) . each-any))))) ($sc-dispatch #{tmp\ 4198}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4196")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4193")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) each-any)))) #{x\ 4197}#)) #{tmp\ 4195}#)) #{x\ 4192}#))) (#{quasi\ 4150}# (lambda (#{p\ 4209}# #{lev\ 4210}#) ((lambda (#{tmp\ 4213}#) ((lambda (#{tmp\ 4214}#) (if #{tmp\ 4214}# (apply (lambda (#{p\ 4216}#) (if (= #{lev\ 4210}# 0) #{p\ 4216}# (#{quasicons\ 4147}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4215")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4215")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) (#{quasi\ 4150}# (list #{p\ 4216}#) (- #{lev\ 4210}# 1))))) #{tmp\ 4214}#) ((lambda (#{tmp\ 4217}#) (if (if #{tmp\ 4217}# (apply (lambda (#{args\ 4219}#) (= #{lev\ 4210}# 0)) #{tmp\ 4217}#) #f) (apply (lambda (#{args\ 4221}#) (syntax-violation 'unquote "unquote takes exactly one argument" #{p\ 4209}# (cons '#(syntax-object unquote ((top) #(ribcage #(args) #((top)) #("i4220")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{args\ 4221}#))) #{tmp\ 4217}#) ((lambda (#{tmp\ 4222}#) (if #{tmp\ 4222}# (apply (lambda (#{p\ 4225}# #{q\ 4226}#) (if (= #{lev\ 4210}# 0) (#{quasiappend\ 4148}# #{p\ 4225}# (#{quasi\ 4150}# #{q\ 4226}# #{lev\ 4210}#)) (#{quasicons\ 4147}# (#{quasicons\ 4147}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) #("i4223" "i4224")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4223" "i4224")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) (#{quasi\ 4150}# (list #{p\ 4225}#) (- #{lev\ 4210}# 1))) (#{quasi\ 4150}# #{q\ 4226}# #{lev\ 4210}#)))) #{tmp\ 4222}#) ((lambda (#{tmp\ 4227}#) (if (if #{tmp\ 4227}# (apply (lambda (#{args\ 4230}# #{q\ 4231}#) (= #{lev\ 4210}# 0)) #{tmp\ 4227}#) #f) (apply (lambda (#{args\ 4234}# #{q\ 4235}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" #{p\ 4209}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) #("i4232" "i4233")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{args\ 4234}#))) #{tmp\ 4227}#) ((lambda (#{tmp\ 4236}#) (if #{tmp\ 4236}# (apply (lambda (#{p\ 4238}#) (#{quasicons\ 4147}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4237")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4237")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) (#{quasi\ 4150}# (list #{p\ 4238}#) (+ #{lev\ 4210}# 1)))) #{tmp\ 4236}#) ((lambda (#{tmp\ 4239}#) (if #{tmp\ 4239}# (apply (lambda (#{p\ 4242}# #{q\ 4243}#) (#{quasicons\ 4147}# (#{quasi\ 4150}# #{p\ 4242}# #{lev\ 4210}#) (#{quasi\ 4150}# #{q\ 4243}# #{lev\ 4210}#))) #{tmp\ 4239}#) ((lambda (#{tmp\ 4244}#) (if #{tmp\ 4244}# (apply (lambda (#{x\ 4246}#) (#{quasivector\ 4149}# (#{quasi\ 4150}# #{x\ 4246}# #{lev\ 4210}#))) #{tmp\ 4244}#) ((lambda (#{p\ 4249}#) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4248")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile)) #{p\ 4249}#)) #{tmp\ 4213}#))) ($sc-dispatch #{tmp\ 4213}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 4213}# '(any . any))))) ($sc-dispatch #{tmp\ 4213}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) any))))) ($sc-dispatch #{tmp\ 4213}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) . any) . any))))) ($sc-dispatch #{tmp\ 4213}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) any) . any))))) ($sc-dispatch #{tmp\ 4213}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 4213}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4211" "i4212")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4143" "i4144" "i4145" "i4146"))) (hygiene guile))) any)))) #{p\ 4209}#)))) (lambda (#{x\ 4250}#) ((lambda (#{tmp\ 4252}#) ((lambda (#{tmp\ 4253}#) (if #{tmp\ 4253}# (apply (lambda (#{_\ 4256}# #{e\ 4257}#) (#{quasi\ 4150}# #{e\ 4257}# 0)) #{tmp\ 4253}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4252}#))) ($sc-dispatch #{tmp\ 4252}# (quote (any any))))) #{x\ 4250}#))) (module-name (current-module))))) (define include (make-syntax-transformer 'include 'macro (cons (lambda (#{x\ 4258}#) (letrec ((#{read-file\ 4261}# (lambda (#{fn\ 4262}# #{k\ 4263}#) (let ((#{p\ 4267}# (open-input-file #{fn\ 4262}#))) (letrec ((#{f\ 4271}# (lambda (#{x\ 4272}# #{result\ 4273}#) (if (eof-object? #{x\ 4272}#) (begin (close-input-port #{p\ 4267}#) (reverse #{result\ 4273}#)) (#{f\ 4271}# (read #{p\ 4267}#) (cons (datum->syntax #{k\ 4263}# #{x\ 4272}#) #{result\ 4273}#)))))) (#{f\ 4271}# (read #{p\ 4267}#) (quote ()))))))) ((lambda (#{tmp\ 4274}#) ((lambda (#{tmp\ 4275}#) (if #{tmp\ 4275}# (apply (lambda (#{k\ 4278}# #{filename\ 4279}#) (let ((#{fn\ 4281}# (syntax->datum #{filename\ 4279}#))) ((lambda (#{tmp\ 4283}#) ((lambda (#{tmp\ 4284}#) (if #{tmp\ 4284}# (apply (lambda (#{exp\ 4286}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i4285")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4280")) #(ribcage #(k filename) #((top) (top)) #("i4276" "i4277")) #(ribcage (read-file) ((top)) ("i4260")) #(ribcage #(x) #((top)) #("i4259"))) (hygiene guile)) #{exp\ 4286}#)) #{tmp\ 4284}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4283}#))) ($sc-dispatch #{tmp\ 4283}# 'each-any))) (#{read-file\ 4261}# #{fn\ 4281}# #{k\ 4278}#)))) #{tmp\ 4275}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4274}#))) ($sc-dispatch #{tmp\ 4274}# (quote (any any))))) #{x\ 4258}#))) (module-name (current-module))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (cons (lambda (#{x\ 4288}#) ((lambda (#{tmp\ 4290}#) ((lambda (#{tmp\ 4291}#) (if #{tmp\ 4291}# (apply (lambda (#{k\ 4294}# #{filename\ 4295}#) (let ((#{fn\ 4297}# (syntax->datum #{filename\ 4295}#))) ((lambda (#{tmp\ 4299}#) ((lambda (#{fn\ 4301}#) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i4300")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4296")) #(ribcage #(k filename) #((top) (top)) #("i4292" "i4293")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4289"))) (hygiene guile)) #{fn\ 4301}#)) #{tmp\ 4299}#)) (let ((#{t\ 4304}# (%search-load-path #{fn\ 4297}#))) (if #{t\ 4304}# #{t\ 4304}# (syntax-violation 'include-from-path "file not found in path" #{x\ 4288}# #{filename\ 4295}#)))))) #{tmp\ 4291}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4290}#))) ($sc-dispatch #{tmp\ 4290}# (quote (any any))))) #{x\ 4288}#)) (module-name (current-module))))) (define unquote (make-syntax-transformer 'unquote 'macro (cons (lambda (#{x\ 4306}#) ((lambda (#{tmp\ 4308}#) ((lambda (#{tmp\ 4309}#) (if #{tmp\ 4309}# (apply (lambda (#{_\ 4312}# #{e\ 4313}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 4306}#)) #{tmp\ 4309}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4308}#))) ($sc-dispatch #{tmp\ 4308}# (quote (any any))))) #{x\ 4306}#)) (module-name (current-module))))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (cons (lambda (#{x\ 4314}#) ((lambda (#{tmp\ 4316}#) ((lambda (#{tmp\ 4317}#) (if #{tmp\ 4317}# (apply (lambda (#{_\ 4320}# #{e\ 4321}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 4314}#)) #{tmp\ 4317}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4316}#))) ($sc-dispatch #{tmp\ 4316}# (quote (any any))))) #{x\ 4314}#)) (module-name (current-module))))) (define case (make-syntax-transformer 'case 'macro (cons (lambda (#{x\ 4322}#) ((lambda (#{tmp\ 4324}#) ((lambda (#{tmp\ 4325}#) (if #{tmp\ 4325}# (apply (lambda (#{_\ 4330}# #{e\ 4331}# #{m1\ 4332}# #{m2\ 4333}#) ((lambda (#{tmp\ 4335}#) ((lambda (#{body\ 4337}#) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i4336")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i4336")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) #{e\ 4331}#)) #{body\ 4337}#)) #{tmp\ 4335}#)) (letrec ((#{f\ 4341}# (lambda (#{clause\ 4342}# #{clauses\ 4343}#) (if (null? #{clauses\ 4343}#) ((lambda (#{tmp\ 4345}#) ((lambda (#{tmp\ 4346}#) (if #{tmp\ 4346}# (apply (lambda (#{e1\ 4349}# #{e2\ 4350}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4347" "i4348")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (cons #{e1\ 4349}# #{e2\ 4350}#))) #{tmp\ 4346}#) ((lambda (#{tmp\ 4352}#) (if #{tmp\ 4352}# (apply (lambda (#{k\ 4356}# #{e1\ 4357}# #{e2\ 4358}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4353" "i4354" "i4355")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4353" "i4354" "i4355")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4353" "i4354" "i4355")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4353" "i4354" "i4355")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) #{k\ 4356}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4353" "i4354" "i4355")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (cons #{e1\ 4357}# #{e2\ 4358}#)))) #{tmp\ 4352}#) ((lambda (#{_\ 4362}#) (syntax-violation 'case "bad clause" #{x\ 4322}# #{clause\ 4342}#)) #{tmp\ 4345}#))) ($sc-dispatch #{tmp\ 4345}# '(each-any any . each-any))))) ($sc-dispatch #{tmp\ 4345}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile))) any . each-any)))) #{clause\ 4342}#) ((lambda (#{tmp\ 4364}#) ((lambda (#{rest\ 4366}#) ((lambda (#{tmp\ 4367}#) ((lambda (#{tmp\ 4368}#) (if #{tmp\ 4368}# (apply (lambda (#{k\ 4372}# #{e1\ 4373}# #{e2\ 4374}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4369" "i4370" "i4371")) #(ribcage #(rest) #((top)) #("i4365")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4369" "i4370" "i4371")) #(ribcage #(rest) #((top)) #("i4365")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4369" "i4370" "i4371")) #(ribcage #(rest) #((top)) #("i4365")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4369" "i4370" "i4371")) #(ribcage #(rest) #((top)) #("i4365")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) #{k\ 4372}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4369" "i4370" "i4371")) #(ribcage #(rest) #((top)) #("i4365")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4338" "i4339" "i4340")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4326" "i4327" "i4328" "i4329")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4323"))) (hygiene guile)) (cons #{e1\ 4373}# #{e2\ 4374}#)) #{rest\ 4366}#)) #{tmp\ 4368}#) ((lambda (#{_\ 4378}#) (syntax-violation 'case "bad clause" #{x\ 4322}# #{clause\ 4342}#)) #{tmp\ 4367}#))) ($sc-dispatch #{tmp\ 4367}# '(each-any any . each-any)))) #{clause\ 4342}#)) #{tmp\ 4364}#)) (#{f\ 4341}# (car #{clauses\ 4343}#) (cdr #{clauses\ 4343}#))))))) (#{f\ 4341}# #{m1\ 4332}# #{m2\ 4333}#)))) #{tmp\ 4325}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4324}#))) ($sc-dispatch #{tmp\ 4324}# '(any any any . each-any)))) #{x\ 4322}#)) (module-name (current-module))))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (cons (lambda (#{x\ 4379}#) ((lambda (#{tmp\ 4381}#) ((lambda (#{tmp\ 4382}#) (if #{tmp\ 4382}# (apply (lambda (#{_\ 4385}# #{e\ 4386}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) #{e\ 4386}#)) (list (cons #{_\ 4385}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) (cons #{e\ 4386}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i4383" "i4384")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4380"))) (hygiene guile))))))))) #{tmp\ 4382}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4381}#))) ($sc-dispatch #{tmp\ 4381}# (quote (any any))))) #{x\ 4379}#)) (module-name (current-module))))) (define define* (make-syntax-transformer 'define* 'macro (cons (lambda (#{x\ 4387}#) ((lambda (#{tmp\ 4389}#) ((lambda (#{tmp\ 4390}#) (if #{tmp\ 4390}# (apply (lambda (#{_\ 4396}# #{id\ 4397}# #{args\ 4398}# #{b0\ 4399}# #{b1\ 4400}#) (list '#(syntax-object define ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i4391" "i4392" "i4393" "i4394" "i4395")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4388"))) (hygiene guile)) #{id\ 4397}# (cons '#(syntax-object lambda* ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i4391" "i4392" "i4393" "i4394" "i4395")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4388"))) (hygiene guile)) (cons #{args\ 4398}# (cons #{b0\ 4399}# #{b1\ 4400}#))))) #{tmp\ 4390}#) ((lambda (#{tmp\ 4402}#) (if (if #{tmp\ 4402}# (apply (lambda (#{_\ 4406}# #{id\ 4407}# #{val\ 4408}#) (identifier? '#(syntax-object x ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i4403" "i4404" "i4405")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4388"))) (hygiene guile)))) #{tmp\ 4402}#) #f) (apply (lambda (#{_\ 4412}# #{id\ 4413}# #{val\ 4414}#) (list '#(syntax-object define ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i4409" "i4410" "i4411")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4388"))) (hygiene guile)) #{id\ 4413}# #{val\ 4414}#)) #{tmp\ 4402}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4389}#))) ($sc-dispatch #{tmp\ 4389}# '(any any any))))) ($sc-dispatch #{tmp\ 4389}# '(any (any . any) any . each-any)))) #{x\ 4387}#)) (module-name (current-module)))))