(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec ((#{and-map*\ 42}# (lambda (#{f\ 104}# #{first\ 105}# . #{rest\ 106}#) (let ((#{t\ 112}# (null? #{first\ 105}#))) (if #{t\ 112}# #{t\ 112}# (if (null? #{rest\ 106}#) (letrec ((#{andmap\ 116}# (lambda (#{first\ 117}#) (let ((#{x\ 120}# (car #{first\ 117}#)) (#{first\ 121}# (cdr #{first\ 117}#))) (if (null? #{first\ 121}#) (#{f\ 104}# #{x\ 120}#) (if (#{f\ 104}# #{x\ 120}#) (#{andmap\ 116}# #{first\ 121}#) #f)))))) (#{andmap\ 116}# #{first\ 105}#)) (letrec ((#{andmap\ 127}# (lambda (#{first\ 128}# #{rest\ 129}#) (let ((#{x\ 134}# (car #{first\ 128}#)) (#{xr\ 135}# (map car #{rest\ 129}#)) (#{first\ 136}# (cdr #{first\ 128}#)) (#{rest\ 137}# (map cdr #{rest\ 129}#))) (if (null? #{first\ 136}#) (apply #{f\ 104}# (cons #{x\ 134}# #{xr\ 135}#)) (if (apply #{f\ 104}# (cons #{x\ 134}# #{xr\ 135}#)) (#{andmap\ 127}# #{first\ 136}# #{rest\ 137}#) #f)))))) (#{andmap\ 127}# #{first\ 105}# #{rest\ 106}#)))))))) (letrec ((#{lambda-var-list\ 359}# (lambda (#{vars\ 574}#) (letrec ((#{lvl\ 580}# (lambda (#{vars\ 581}# #{ls\ 582}# #{w\ 583}#) (if (pair? #{vars\ 581}#) (#{lvl\ 580}# (cdr #{vars\ 581}#) (cons (#{wrap\ 313}# (car #{vars\ 581}#) #{w\ 583}# #f) #{ls\ 582}#) #{w\ 583}#) (if (#{id?\ 244}# #{vars\ 581}#) (cons (#{wrap\ 313}# #{vars\ 581}# #{w\ 583}# #f) #{ls\ 582}#) (if (null? #{vars\ 581}#) #{ls\ 582}# (if (#{syntax-object?\ 208}# #{vars\ 581}#) (#{lvl\ 580}# (#{syntax-object-expression\ 210}# #{vars\ 581}#) #{ls\ 582}# (#{join-wraps\ 295}# #{w\ 583}# (#{syntax-object-wrap\ 212}# #{vars\ 581}#))) (cons #{vars\ 581}# #{ls\ 582}#)))))))) (#{lvl\ 580}# #{vars\ 574}# '() '(()))))) (#{gen-var\ 357}# (lambda (#{id\ 594}#) (let ((#{id\ 597}# (if (#{syntax-object?\ 208}# #{id\ 594}#) (#{syntax-object-expression\ 210}# #{id\ 594}#) #{id\ 594}#))) (gensym (string-append (symbol->string #{id\ 597}#) " "))))) (#{strip\ 355}# (lambda (#{x\ 599}# #{w\ 600}#) (if (memq 'top (#{wrap-marks\ 251}# #{w\ 600}#)) #{x\ 599}# (letrec ((#{f\ 606}# (lambda (#{x\ 607}#) (if (#{syntax-object?\ 208}# #{x\ 607}#) (#{strip\ 355}# (#{syntax-object-expression\ 210}# #{x\ 607}#) (#{syntax-object-wrap\ 212}# #{x\ 607}#)) (if (pair? #{x\ 607}#) (let ((#{a\ 614}# (#{f\ 606}# (car #{x\ 607}#))) (#{d\ 615}# (#{f\ 606}# (cdr #{x\ 607}#)))) (if (if (eq? #{a\ 614}# (car #{x\ 607}#)) (eq? #{d\ 615}# (cdr #{x\ 607}#)) #f) #{x\ 607}# (cons #{a\ 614}# #{d\ 615}#))) (if (vector? #{x\ 607}#) (let ((#{old\ 621}# (vector->list #{x\ 607}#))) (let ((#{new\ 623}# (map #{f\ 606}# #{old\ 621}#))) (if (#{and-map*\ 42}# eq? #{old\ 621}# #{new\ 623}#) #{x\ 607}# (list->vector #{new\ 623}#)))) #{x\ 607}#)))))) (#{f\ 606}# #{x\ 599}#))))) (#{chi-lambda-case\ 353}# (lambda (#{e\ 625}# #{r\ 626}# #{w\ 627}# #{s\ 628}# #{mod\ 629}# #{get-formals\ 630}# #{clauses\ 631}#) (letrec ((#{expand-body\ 646}# (lambda (#{req\ 647}# #{opt\ 648}# #{rest\ 649}# #{kw\ 650}# #{body\ 651}# #{vars\ 652}# #{r*\ 653}# #{w*\ 654}# #{inits\ 655}#) ((lambda (#{tmp\ 665}#) ((lambda (#{tmp\ 666}#) (if (if #{tmp\ 666}# (apply (lambda (#{docstring\ 670}# #{e1\ 671}# #{e2\ 672}#) (string? (syntax->datum #{docstring\ 670}#))) #{tmp\ 666}#) #f) (apply (lambda (#{docstring\ 676}# #{e1\ 677}# #{e2\ 678}#) (values (syntax->datum #{docstring\ 676}#) #{req\ 647}# #{opt\ 648}# #{rest\ 649}# #{kw\ 650}# #{inits\ 655}# #{vars\ 652}# (#{chi-body\ 337}# (cons #{e1\ 677}# #{e2\ 678}#) (#{source-wrap\ 315}# #{e\ 625}# #{w\ 627}# #{s\ 628}# #{mod\ 629}#) #{r*\ 653}# #{w*\ 654}# #{mod\ 629}#))) #{tmp\ 666}#) ((lambda (#{tmp\ 680}#) (if #{tmp\ 680}# (apply (lambda (#{e1\ 683}# #{e2\ 684}#) (values #f #{req\ 647}# #{opt\ 648}# #{rest\ 649}# #{kw\ 650}# #{inits\ 655}# #{vars\ 652}# (#{chi-body\ 337}# (cons #{e1\ 683}# #{e2\ 684}#) (#{source-wrap\ 315}# #{e\ 625}# #{w\ 627}# #{s\ 628}# #{mod\ 629}#) #{r*\ 653}# #{w*\ 654}# #{mod\ 629}#))) #{tmp\ 680}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 665}#))) ($sc-dispatch #{tmp\ 665}# '(any . each-any))))) ($sc-dispatch #{tmp\ 665}# '(any any . each-any)))) #{body\ 651}#))) (#{expand-kw\ 644}# (lambda (#{req\ 686}# #{opt\ 687}# #{rest\ 688}# #{kw\ 689}# #{body\ 690}# #{vars\ 691}# #{r*\ 692}# #{w*\ 693}# #{aok\ 694}# #{out\ 695}# #{inits\ 696}#) (if (pair? #{kw\ 689}#) ((lambda (#{tmp\ 710}#) ((lambda (#{tmp\ 711}#) (if #{tmp\ 711}# (apply (lambda (#{k\ 715}# #{id\ 716}# #{i\ 717}#) (let ((#{v\ 720}# (#{gen-var\ 357}# #{id\ 716}#))) (let ((#{l\ 722}# (#{gen-labels\ 262}# (list #{v\ 720}#)))) (let ((#{r**\ 724}# (#{extend-var-env\ 234}# #{l\ 722}# (list #{v\ 720}#) #{r*\ 692}#))) (let ((#{w**\ 726}# (#{make-binding-wrap\ 291}# (list #{id\ 716}#) #{l\ 722}# #{w*\ 693}#))) (#{expand-kw\ 644}# #{req\ 686}# #{opt\ 687}# #{rest\ 688}# (cdr #{kw\ 689}#) #{body\ 690}# (cons #{v\ 720}# #{vars\ 691}#) #{r**\ 724}# #{w**\ 726}# #{aok\ 694}# (cons (list (syntax->datum #{k\ 715}#) (syntax->datum #{id\ 716}#) #{v\ 720}#) #{out\ 695}#) (cons (#{chi\ 329}# #{i\ 717}# #{r*\ 692}# #{w*\ 693}# #{mod\ 629}#) #{inits\ 696}#))))))) #{tmp\ 711}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 710}#))) ($sc-dispatch #{tmp\ 710}# '(any any any)))) (car #{kw\ 689}#)) (#{expand-body\ 646}# #{req\ 686}# #{opt\ 687}# #{rest\ 688}# (if (let ((#{t\ 730}# #{aok\ 694}#)) (if #{t\ 730}# #{t\ 730}# (pair? #{out\ 695}#))) (cons #{aok\ 694}# (reverse #{out\ 695}#)) #f) #{body\ 690}# (reverse #{vars\ 691}#) #{r*\ 692}# #{w*\ 693}# (reverse #{inits\ 696}#))))) (#{expand-opt\ 642}# (lambda (#{req\ 732}# #{opt\ 733}# #{rest\ 734}# #{kw\ 735}# #{body\ 736}# #{vars\ 737}# #{r*\ 738}# #{w*\ 739}# #{out\ 740}# #{inits\ 741}#) (if (pair? #{opt\ 733}#) ((lambda (#{tmp\ 754}#) ((lambda (#{tmp\ 755}#) (if #{tmp\ 755}# (apply (lambda (#{id\ 758}# #{i\ 759}#) (let ((#{v\ 762}# (#{gen-var\ 357}# #{id\ 758}#))) (let ((#{l\ 764}# (#{gen-labels\ 262}# (list #{v\ 762}#)))) (let ((#{r**\ 766}# (#{extend-var-env\ 234}# #{l\ 764}# (list #{v\ 762}#) #{r*\ 738}#))) (let ((#{w**\ 768}# (#{make-binding-wrap\ 291}# (list #{id\ 758}#) #{l\ 764}# #{w*\ 739}#))) (#{expand-opt\ 642}# #{req\ 732}# (cdr #{opt\ 733}#) #{rest\ 734}# #{kw\ 735}# #{body\ 736}# (cons #{v\ 762}# #{vars\ 737}#) #{r**\ 766}# #{w**\ 768}# (cons (syntax->datum #{id\ 758}#) #{out\ 740}#) (cons (#{chi\ 329}# #{i\ 759}# #{r*\ 738}# #{w*\ 739}# #{mod\ 629}#) #{inits\ 741}#))))))) #{tmp\ 755}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 754}#))) ($sc-dispatch #{tmp\ 754}# '(any any)))) (car #{opt\ 733}#)) (if #{rest\ 734}# (let ((#{v\ 773}# (#{gen-var\ 357}# #{rest\ 734}#))) (let ((#{l\ 775}# (#{gen-labels\ 262}# (list #{v\ 773}#)))) (let ((#{r*\ 777}# (#{extend-var-env\ 234}# #{l\ 775}# (list #{v\ 773}#) #{r*\ 738}#))) (let ((#{w*\ 779}# (#{make-binding-wrap\ 291}# (list #{rest\ 734}#) #{l\ 775}# #{w*\ 739}#))) (#{expand-kw\ 644}# #{req\ 732}# (if (pair? #{out\ 740}#) (reverse #{out\ 740}#) #f) (syntax->datum #{rest\ 734}#) (if (pair? #{kw\ 735}#) (cdr #{kw\ 735}#) #{kw\ 735}#) #{body\ 736}# (cons #{v\ 773}# #{vars\ 737}#) #{r*\ 777}# #{w*\ 779}# (if (pair? #{kw\ 735}#) (car #{kw\ 735}#) #f) '() #{inits\ 741}#))))) (#{expand-kw\ 644}# #{req\ 732}# (if (pair? #{out\ 740}#) (reverse #{out\ 740}#) #f) #f (if (pair? #{kw\ 735}#) (cdr #{kw\ 735}#) #{kw\ 735}#) #{body\ 736}# #{vars\ 737}# #{r*\ 738}# #{w*\ 739}# (if (pair? #{kw\ 735}#) (car #{kw\ 735}#) #f) '() #{inits\ 741}#))))) (#{expand-req\ 640}# (lambda (#{req\ 781}# #{opt\ 782}# #{rest\ 783}# #{kw\ 784}# #{body\ 785}#) (let ((#{vars\ 793}# (map #{gen-var\ 357}# #{req\ 781}#)) (#{labels\ 794}# (#{gen-labels\ 262}# #{req\ 781}#))) (let ((#{r*\ 797}# (#{extend-var-env\ 234}# #{labels\ 794}# #{vars\ 793}# #{r\ 626}#)) (#{w*\ 798}# (#{make-binding-wrap\ 291}# #{req\ 781}# #{labels\ 794}# #{w\ 627}#))) (#{expand-opt\ 642}# (map syntax->datum #{req\ 781}#) #{opt\ 782}# #{rest\ 783}# #{kw\ 784}# #{body\ 785}# (reverse #{vars\ 793}#) #{r*\ 797}# #{w*\ 798}# '() '())))))) ((lambda (#{tmp\ 799}#) ((lambda (#{tmp\ 800}#) (if #{tmp\ 800}# (apply (lambda () (values #f #f)) #{tmp\ 800}#) ((lambda (#{tmp\ 801}#) (if #{tmp\ 801}# (apply (lambda (#{args\ 808}# #{e1\ 809}# #{e2\ 810}# #{args*\ 811}# #{e1*\ 812}# #{e2*\ 813}#) (call-with-values (lambda () (#{get-formals\ 630}# #{args\ 808}#)) (lambda (#{req\ 814}# #{opt\ 815}# #{rest\ 816}# #{kw\ 817}#) (call-with-values (lambda () (#{expand-req\ 640}# #{req\ 814}# #{opt\ 815}# #{rest\ 816}# #{kw\ 817}# (cons #{e1\ 809}# #{e2\ 810}#))) (lambda (#{docstring\ 823}# #{req\ 824}# #{opt\ 825}# #{rest\ 826}# #{kw\ 827}# #{inits\ 828}# #{vars\ 829}# #{body\ 830}#) (call-with-values (lambda () (#{chi-lambda-case\ 353}# #{e\ 625}# #{r\ 626}# #{w\ 627}# #{s\ 628}# #{mod\ 629}# #{get-formals\ 630}# (map (lambda (#{tmp\ 841}# #{tmp\ 840}# #{tmp\ 839}#) (cons #{tmp\ 839}# (cons #{tmp\ 840}# #{tmp\ 841}#))) #{e2*\ 813}# #{e1*\ 812}# #{args*\ 811}#))) (lambda (#{docstring*\ 843}# #{else*\ 844}#) (values (let ((#{t\ 849}# #{docstring\ 823}#)) (if #{t\ 849}# #{t\ 849}# #{docstring*\ 843}#)) (#{build-lambda-case\ 190}# #{s\ 628}# #{req\ 824}# #{opt\ 825}# #{rest\ 826}# #{kw\ 827}# #{inits\ 828}# #{vars\ 829}# #{body\ 830}# #{else*\ 844}#))))))))) #{tmp\ 801}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 799}#))) ($sc-dispatch #{tmp\ 799}# '((any any . each-any) . #(each (any any . each-any))))))) ($sc-dispatch #{tmp\ 799}# (quote ())))) #{clauses\ 631}#)))) (#{lambda*-formals\ 351}# (lambda (#{orig-args\ 851}#) (letrec ((#{check\ 862}# (lambda (#{req\ 863}# #{opt\ 864}# #{rest\ 865}# #{kw\ 866}#) (if (#{distinct-bound-ids?\ 309}# (append #{req\ 863}# (map car #{opt\ 864}#) (if #{rest\ 865}# (list #{rest\ 865}#) '()) (if (pair? #{kw\ 866}#) (map cadr (cdr #{kw\ 866}#)) '()))) (values #{req\ 863}# #{opt\ 864}# #{rest\ 865}# #{kw\ 866}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 851}#)))) (#{rest\ 860}# (lambda (#{args\ 874}# #{req\ 875}# #{opt\ 876}# #{kw\ 877}#) ((lambda (#{tmp\ 882}#) ((lambda (#{tmp\ 883}#) (if (if #{tmp\ 883}# (apply (lambda (#{r\ 885}#) (#{id?\ 244}# #{r\ 885}#)) #{tmp\ 883}#) #f) (apply (lambda (#{r\ 887}#) (#{check\ 862}# #{req\ 875}# #{opt\ 876}# #{r\ 887}# #{kw\ 877}#)) #{tmp\ 883}#) ((lambda (#{else\ 889}#) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 851}# #{args\ 874}#)) #{tmp\ 882}#))) (list #{tmp\ 882}#))) #{args\ 874}#))) (#{key\ 858}# (lambda (#{args\ 890}# #{req\ 891}# #{opt\ 892}# #{rkey\ 893}#) ((lambda (#{tmp\ 898}#) ((lambda (#{tmp\ 899}#) (if #{tmp\ 899}# (apply (lambda () (#{check\ 862}# #{req\ 891}# #{opt\ 892}# #f (cons #f (reverse #{rkey\ 893}#)))) #{tmp\ 899}#) ((lambda (#{tmp\ 900}#) (if (if #{tmp\ 900}# (apply (lambda (#{a\ 903}# #{b\ 904}#) (#{id?\ 244}# #{a\ 903}#)) #{tmp\ 900}#) #f) (apply (lambda (#{a\ 907}# #{b\ 908}#) ((lambda (#{tmp\ 910}#) ((lambda (#{k\ 912}#) (#{key\ 858}# #{b\ 908}# #{req\ 891}# #{opt\ 892}# (cons (cons #{k\ 912}# (cons #{a\ 907}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i911")) #(ribcage #(a b) #((top) (top)) #("i905" "i906")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i894" "i895" "i896" "i897")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i861" "i859" "i857" "i855" "i853")) #(ribcage #(orig-args) #((top)) #("i852")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile))))) #{rkey\ 893}#))) #{tmp\ 910}#)) (symbol->keyword (syntax->datum #{a\ 907}#)))) #{tmp\ 900}#) ((lambda (#{tmp\ 913}#) (if (if #{tmp\ 913}# (apply (lambda (#{a\ 917}# #{init\ 918}# #{b\ 919}#) (#{id?\ 244}# #{a\ 917}#)) #{tmp\ 913}#) #f) (apply (lambda (#{a\ 923}# #{init\ 924}# #{b\ 925}#) ((lambda (#{tmp\ 927}#) ((lambda (#{k\ 929}#) (#{key\ 858}# #{b\ 925}# #{req\ 891}# #{opt\ 892}# (cons (list #{k\ 929}# #{a\ 923}# #{init\ 924}#) #{rkey\ 893}#))) #{tmp\ 927}#)) (symbol->keyword (syntax->datum #{a\ 923}#)))) #{tmp\ 913}#) ((lambda (#{tmp\ 930}#) (if (if #{tmp\ 930}# (apply (lambda (#{a\ 935}# #{init\ 936}# #{k\ 937}# #{b\ 938}#) (if (#{id?\ 244}# #{a\ 935}#) (keyword? (syntax->datum #{k\ 937}#)) #f)) #{tmp\ 930}#) #f) (apply (lambda (#{a\ 945}# #{init\ 946}# #{k\ 947}# #{b\ 948}#) (#{key\ 858}# #{b\ 948}# #{req\ 891}# #{opt\ 892}# (cons (list #{k\ 947}# #{a\ 945}# #{init\ 946}#) #{rkey\ 893}#))) #{tmp\ 930}#) ((lambda (#{tmp\ 949}#) (if (if #{tmp\ 949}# (apply (lambda (#{aok\ 951}#) (eq? (syntax->datum #{aok\ 951}#) #:allow-other-keys)) #{tmp\ 949}#) #f) (apply (lambda (#{aok\ 953}#) (#{check\ 862}# #{req\ 891}# #{opt\ 892}# #f (cons #t (reverse #{rkey\ 893}#)))) #{tmp\ 949}#) ((lambda (#{tmp\ 954}#) (if (if #{tmp\ 954}# (apply (lambda (#{aok\ 958}# #{a\ 959}# #{b\ 960}#) (if (eq? (syntax->datum #{aok\ 958}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 959}#) #:rest) #f)) #{tmp\ 954}#) #f) (apply (lambda (#{aok\ 966}# #{a\ 967}# #{b\ 968}#) (#{rest\ 860}# #{b\ 968}# #{req\ 891}# #{opt\ 892}# (cons #t (reverse #{rkey\ 893}#)))) #{tmp\ 954}#) ((lambda (#{tmp\ 969}#) (if (if #{tmp\ 969}# (apply (lambda (#{aok\ 972}# #{r\ 973}#) (if (eq? (syntax->datum #{aok\ 972}#) #:allow-other-keys) (#{id?\ 244}# #{r\ 973}#) #f)) #{tmp\ 969}#) #f) (apply (lambda (#{aok\ 978}# #{r\ 979}#) (#{rest\ 860}# #{r\ 979}# #{req\ 891}# #{opt\ 892}# (cons #t (reverse #{rkey\ 893}#)))) #{tmp\ 969}#) ((lambda (#{tmp\ 980}#) (if (if #{tmp\ 980}# (apply (lambda (#{a\ 983}# #{b\ 984}#) (eq? (syntax->datum #{a\ 983}#) #:rest)) #{tmp\ 980}#) #f) (apply (lambda (#{a\ 987}# #{b\ 988}#) (#{rest\ 860}# #{b\ 988}# #{req\ 891}# #{opt\ 892}# (cons #f (reverse #{rkey\ 893}#)))) #{tmp\ 980}#) ((lambda (#{tmp\ 989}#) (if (if #{tmp\ 989}# (apply (lambda (#{r\ 991}#) (#{id?\ 244}# #{r\ 991}#)) #{tmp\ 989}#) #f) (apply (lambda (#{r\ 993}#) (#{rest\ 860}# #{r\ 993}# #{req\ 891}# #{opt\ 892}# (cons #f (reverse #{rkey\ 893}#)))) #{tmp\ 989}#) ((lambda (#{else\ 995}#) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 851}# #{args\ 890}#)) #{tmp\ 898}#))) (list #{tmp\ 898}#)))) ($sc-dispatch #{tmp\ 898}# '(any any))))) ($sc-dispatch #{tmp\ 898}# '(any . any))))) ($sc-dispatch #{tmp\ 898}# '(any any any))))) ($sc-dispatch #{tmp\ 898}# '(any))))) ($sc-dispatch #{tmp\ 898}# '((any any any) . any))))) ($sc-dispatch #{tmp\ 898}# '((any any) . any))))) ($sc-dispatch #{tmp\ 898}# '(any . any))))) ($sc-dispatch #{tmp\ 898}# (quote ())))) #{args\ 890}#))) (#{opt\ 856}# (lambda (#{args\ 996}# #{req\ 997}# #{ropt\ 998}#) ((lambda (#{tmp\ 1002}#) ((lambda (#{tmp\ 1003}#) (if #{tmp\ 1003}# (apply (lambda () (#{check\ 862}# #{req\ 997}# (reverse #{ropt\ 998}#) #f '())) #{tmp\ 1003}#) ((lambda (#{tmp\ 1004}#) (if (if #{tmp\ 1004}# (apply (lambda (#{a\ 1007}# #{b\ 1008}#) (#{id?\ 244}# #{a\ 1007}#)) #{tmp\ 1004}#) #f) (apply (lambda (#{a\ 1011}# #{b\ 1012}#) (#{opt\ 856}# #{b\ 1012}# #{req\ 997}# (cons (cons #{a\ 1011}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i1009" "i1010")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i999" "i1000" "i1001")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i861" "i859" "i857" "i855" "i853")) #(ribcage #(orig-args) #((top)) #("i852")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)))) #{ropt\ 998}#))) #{tmp\ 1004}#) ((lambda (#{tmp\ 1013}#) (if (if #{tmp\ 1013}# (apply (lambda (#{a\ 1017}# #{init\ 1018}# #{b\ 1019}#) (#{id?\ 244}# #{a\ 1017}#)) #{tmp\ 1013}#) #f) (apply (lambda (#{a\ 1023}# #{init\ 1024}# #{b\ 1025}#) (#{opt\ 856}# #{b\ 1025}# #{req\ 997}# (cons (list #{a\ 1023}# #{init\ 1024}#) #{ropt\ 998}#))) #{tmp\ 1013}#) ((lambda (#{tmp\ 1026}#) (if (if #{tmp\ 1026}# (apply (lambda (#{a\ 1029}# #{b\ 1030}#) (eq? (syntax->datum #{a\ 1029}#) #:key)) #{tmp\ 1026}#) #f) (apply (lambda (#{a\ 1033}# #{b\ 1034}#) (#{key\ 858}# #{b\ 1034}# #{req\ 997}# (reverse #{ropt\ 998}#) '())) #{tmp\ 1026}#) ((lambda (#{tmp\ 1035}#) (if (if #{tmp\ 1035}# (apply (lambda (#{a\ 1038}# #{b\ 1039}#) (eq? (syntax->datum #{a\ 1038}#) #:rest)) #{tmp\ 1035}#) #f) (apply (lambda (#{a\ 1042}# #{b\ 1043}#) (#{rest\ 860}# #{b\ 1043}# #{req\ 997}# (reverse #{ropt\ 998}#) '())) #{tmp\ 1035}#) ((lambda (#{tmp\ 1044}#) (if (if #{tmp\ 1044}# (apply (lambda (#{r\ 1046}#) (#{id?\ 244}# #{r\ 1046}#)) #{tmp\ 1044}#) #f) (apply (lambda (#{r\ 1048}#) (#{rest\ 860}# #{r\ 1048}# #{req\ 997}# (reverse #{ropt\ 998}#) '())) #{tmp\ 1044}#) ((lambda (#{else\ 1050}#) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 851}# #{args\ 996}#)) #{tmp\ 1002}#))) (list #{tmp\ 1002}#)))) ($sc-dispatch #{tmp\ 1002}# '(any any))))) ($sc-dispatch #{tmp\ 1002}# '(any . any))))) ($sc-dispatch #{tmp\ 1002}# '((any any) . any))))) ($sc-dispatch #{tmp\ 1002}# '(any . any))))) ($sc-dispatch #{tmp\ 1002}# (quote ())))) #{args\ 996}#))) (#{req\ 854}# (lambda (#{args\ 1051}# #{rreq\ 1052}#) ((lambda (#{tmp\ 1055}#) ((lambda (#{tmp\ 1056}#) (if #{tmp\ 1056}# (apply (lambda () (#{check\ 862}# (reverse #{rreq\ 1052}#) '() #f '())) #{tmp\ 1056}#) ((lambda (#{tmp\ 1057}#) (if (if #{tmp\ 1057}# (apply (lambda (#{a\ 1060}# #{b\ 1061}#) (#{id?\ 244}# #{a\ 1060}#)) #{tmp\ 1057}#) #f) (apply (lambda (#{a\ 1064}# #{b\ 1065}#) (#{req\ 854}# #{b\ 1065}# (cons #{a\ 1064}# #{rreq\ 1052}#))) #{tmp\ 1057}#) ((lambda (#{tmp\ 1066}#) (if (if #{tmp\ 1066}# (apply (lambda (#{a\ 1069}# #{b\ 1070}#) (eq? (syntax->datum #{a\ 1069}#) #:optional)) #{tmp\ 1066}#) #f) (apply (lambda (#{a\ 1073}# #{b\ 1074}#) (#{opt\ 856}# #{b\ 1074}# (reverse #{rreq\ 1052}#) '())) #{tmp\ 1066}#) ((lambda (#{tmp\ 1075}#) (if (if #{tmp\ 1075}# (apply (lambda (#{a\ 1078}# #{b\ 1079}#) (eq? (syntax->datum #{a\ 1078}#) #:key)) #{tmp\ 1075}#) #f) (apply (lambda (#{a\ 1082}# #{b\ 1083}#) (#{key\ 858}# #{b\ 1083}# (reverse #{rreq\ 1052}#) '() '())) #{tmp\ 1075}#) ((lambda (#{tmp\ 1084}#) (if (if #{tmp\ 1084}# (apply (lambda (#{a\ 1087}# #{b\ 1088}#) (eq? (syntax->datum #{a\ 1087}#) #:rest)) #{tmp\ 1084}#) #f) (apply (lambda (#{a\ 1091}# #{b\ 1092}#) (#{rest\ 860}# #{b\ 1092}# (reverse #{rreq\ 1052}#) '() '())) #{tmp\ 1084}#) ((lambda (#{tmp\ 1093}#) (if (if #{tmp\ 1093}# (apply (lambda (#{r\ 1095}#) (#{id?\ 244}# #{r\ 1095}#)) #{tmp\ 1093}#) #f) (apply (lambda (#{r\ 1097}#) (#{rest\ 860}# #{r\ 1097}# (reverse #{rreq\ 1052}#) '() '())) #{tmp\ 1093}#) ((lambda (#{else\ 1099}#) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 851}# #{args\ 1051}#)) #{tmp\ 1055}#))) (list #{tmp\ 1055}#)))) ($sc-dispatch #{tmp\ 1055}# '(any any))))) ($sc-dispatch #{tmp\ 1055}# '(any . any))))) ($sc-dispatch #{tmp\ 1055}# '(any . any))))) ($sc-dispatch #{tmp\ 1055}# '(any . any))))) ($sc-dispatch #{tmp\ 1055}# (quote ())))) #{args\ 1051}#)))) (#{req\ 854}# #{orig-args\ 851}# (quote ()))))) (#{chi-simple-lambda\ 349}# (lambda (#{e\ 1100}# #{r\ 1101}# #{w\ 1102}# #{s\ 1103}# #{mod\ 1104}# #{req\ 1105}# #{rest\ 1106}# #{docstring\ 1107}# #{body\ 1108}#) (let ((#{ids\ 1120}# (if #{rest\ 1106}# (append #{req\ 1105}# (list #{rest\ 1106}#)) #{req\ 1105}#))) (let ((#{vars\ 1122}# (map #{gen-var\ 357}# #{ids\ 1120}#))) (let ((#{labels\ 1124}# (#{gen-labels\ 262}# #{ids\ 1120}#))) (#{build-simple-lambda\ 186}# #{s\ 1103}# (map syntax->datum #{req\ 1105}#) (if #{rest\ 1106}# (syntax->datum #{rest\ 1106}#) #f) #{vars\ 1122}# #{docstring\ 1107}# (#{chi-body\ 337}# #{body\ 1108}# (#{source-wrap\ 315}# #{e\ 1100}# #{w\ 1102}# #{s\ 1103}# #{mod\ 1104}#) (#{extend-var-env\ 234}# #{labels\ 1124}# #{vars\ 1122}# #{r\ 1101}#) (#{make-binding-wrap\ 291}# #{ids\ 1120}# #{labels\ 1124}# #{w\ 1102}#) #{mod\ 1104}#))))))) (#{lambda-formals\ 347}# (lambda (#{orig-args\ 1127}#) (letrec ((#{check\ 1132}# (lambda (#{req\ 1133}# #{rest\ 1134}#) (if (#{distinct-bound-ids?\ 309}# (if #{rest\ 1134}# (cons #{rest\ 1134}# #{req\ 1133}#) #{req\ 1133}#)) (values #{req\ 1133}# #f #{rest\ 1134}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 1127}#)))) (#{req\ 1130}# (lambda (#{args\ 1140}# #{rreq\ 1141}#) ((lambda (#{tmp\ 1144}#) ((lambda (#{tmp\ 1145}#) (if #{tmp\ 1145}# (apply (lambda () (#{check\ 1132}# (reverse #{rreq\ 1141}#) #f)) #{tmp\ 1145}#) ((lambda (#{tmp\ 1146}#) (if (if #{tmp\ 1146}# (apply (lambda (#{a\ 1149}# #{b\ 1150}#) (#{id?\ 244}# #{a\ 1149}#)) #{tmp\ 1146}#) #f) (apply (lambda (#{a\ 1153}# #{b\ 1154}#) (#{req\ 1130}# #{b\ 1154}# (cons #{a\ 1153}# #{rreq\ 1141}#))) #{tmp\ 1146}#) ((lambda (#{tmp\ 1155}#) (if (if #{tmp\ 1155}# (apply (lambda (#{r\ 1157}#) (#{id?\ 244}# #{r\ 1157}#)) #{tmp\ 1155}#) #f) (apply (lambda (#{r\ 1159}#) (#{check\ 1132}# (reverse #{rreq\ 1141}#) #{r\ 1159}#)) #{tmp\ 1155}#) ((lambda (#{else\ 1161}#) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 1127}# #{args\ 1140}#)) #{tmp\ 1144}#))) (list #{tmp\ 1144}#)))) ($sc-dispatch #{tmp\ 1144}# '(any . any))))) ($sc-dispatch #{tmp\ 1144}# (quote ())))) #{args\ 1140}#)))) (#{req\ 1130}# #{orig-args\ 1127}# (quote ()))))) (#{ellipsis?\ 345}# (lambda (#{x\ 1162}#) (if (#{nonsymbol-id?\ 242}# #{x\ 1162}#) (#{free-id=?\ 303}# #{x\ 1162}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1163")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile))) #f))) (#{chi-void\ 343}# (lambda () (#{build-void\ 164}# #f))) (#{eval-local-transformer\ 341}# (lambda (#{expanded\ 1167}# #{mod\ 1168}#) (let ((#{p\ 1172}# (#{local-eval-hook\ 155}# #{expanded\ 1167}# #{mod\ 1168}#))) (if (procedure? #{p\ 1172}#) (cons #{p\ 1172}# (module-name (current-module))) (syntax-violation #f "nonprocedure transformer" #{p\ 1172}#))))) (#{chi-local-syntax\ 339}# (lambda (#{rec?\ 1173}# #{e\ 1174}# #{r\ 1175}# #{w\ 1176}# #{s\ 1177}# #{mod\ 1178}# #{k\ 1179}#) ((lambda (#{tmp\ 1187}#) ((lambda (#{tmp\ 1188}#) (if #{tmp\ 1188}# (apply (lambda (#{_\ 1194}# #{id\ 1195}# #{val\ 1196}# #{e1\ 1197}# #{e2\ 1198}#) (let ((#{ids\ 1200}# #{id\ 1195}#)) (if (not (#{valid-bound-ids?\ 307}# #{ids\ 1200}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 1174}#) (let ((#{labels\ 1203}# (#{gen-labels\ 262}# #{ids\ 1200}#))) (let ((#{new-w\ 1205}# (#{make-binding-wrap\ 291}# #{ids\ 1200}# #{labels\ 1203}# #{w\ 1176}#))) (#{k\ 1179}# (cons #{e1\ 1197}# #{e2\ 1198}#) (#{extend-env\ 232}# #{labels\ 1203}# (let ((#{w\ 1209}# (if #{rec?\ 1173}# #{new-w\ 1205}# #{w\ 1176}#)) (#{trans-r\ 1210}# (#{macros-only-env\ 236}# #{r\ 1175}#))) (map (lambda (#{x\ 1211}#) (cons 'macro (#{eval-local-transformer\ 341}# (#{chi\ 329}# #{x\ 1211}# #{trans-r\ 1210}# #{w\ 1209}# #{mod\ 1178}#) #{mod\ 1178}#))) #{val\ 1196}#)) #{r\ 1175}#) #{new-w\ 1205}# #{s\ 1177}# #{mod\ 1178}#)))))) #{tmp\ 1188}#) ((lambda (#{_\ 1216}#) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 315}# #{e\ 1174}# #{w\ 1176}# #{s\ 1177}# #{mod\ 1178}#))) #{tmp\ 1187}#))) ($sc-dispatch #{tmp\ 1187}# '(any #(each (any any)) any . each-any)))) #{e\ 1174}#))) (#{chi-body\ 337}# (lambda (#{body\ 1217}# #{outer-form\ 1218}# #{r\ 1219}# #{w\ 1220}# #{mod\ 1221}#) (let ((#{r\ 1229}# (cons '("placeholder" placeholder) #{r\ 1219}#))) (let ((#{ribcage\ 1231}# (#{make-ribcage\ 265}# '() '() '()))) (let ((#{w\ 1234}# (#{make-wrap\ 249}# (#{wrap-marks\ 251}# #{w\ 1220}#) (cons #{ribcage\ 1231}# (#{wrap-subst\ 253}# #{w\ 1220}#))))) (letrec ((#{parse\ 1243}# (lambda (#{body\ 1244}# #{ids\ 1245}# #{labels\ 1246}# #{var-ids\ 1247}# #{vars\ 1248}# #{vals\ 1249}# #{bindings\ 1250}#) (if (null? #{body\ 1244}#) (syntax-violation #f "no expressions in body" #{outer-form\ 1218}#) (let ((#{e\ 1255}# (cdar #{body\ 1244}#)) (#{er\ 1256}# (caar #{body\ 1244}#))) (call-with-values (lambda () (#{syntax-type\ 325}# #{e\ 1255}# #{er\ 1256}# '(()) (#{source-annotation\ 223}# #{er\ 1256}#) #{ribcage\ 1231}# #{mod\ 1221}# #f)) (lambda (#{type\ 1258}# #{value\ 1259}# #{e\ 1260}# #{w\ 1261}# #{s\ 1262}# #{mod\ 1263}#) (if (memv #{type\ 1258}# '(define-form)) (let ((#{id\ 1273}# (#{wrap\ 313}# #{value\ 1259}# #{w\ 1261}# #{mod\ 1263}#)) (#{label\ 1274}# (#{gen-label\ 260}#))) (let ((#{var\ 1276}# (#{gen-var\ 357}# #{id\ 1273}#))) (begin (#{extend-ribcage!\ 289}# #{ribcage\ 1231}# #{id\ 1273}# #{label\ 1274}#) (#{parse\ 1243}# (cdr #{body\ 1244}#) (cons #{id\ 1273}# #{ids\ 1245}#) (cons #{label\ 1274}# #{labels\ 1246}#) (cons #{id\ 1273}# #{var-ids\ 1247}#) (cons #{var\ 1276}# #{vars\ 1248}#) (cons (cons #{er\ 1256}# (#{wrap\ 313}# #{e\ 1260}# #{w\ 1261}# #{mod\ 1263}#)) #{vals\ 1249}#) (cons (cons 'lexical #{var\ 1276}#) #{bindings\ 1250}#))))) (if (memv #{type\ 1258}# '(define-syntax-form)) (let ((#{id\ 1281}# (#{wrap\ 313}# #{value\ 1259}# #{w\ 1261}# #{mod\ 1263}#)) (#{label\ 1282}# (#{gen-label\ 260}#))) (begin (#{extend-ribcage!\ 289}# #{ribcage\ 1231}# #{id\ 1281}# #{label\ 1282}#) (#{parse\ 1243}# (cdr #{body\ 1244}#) (cons #{id\ 1281}# #{ids\ 1245}#) (cons #{label\ 1282}# #{labels\ 1246}#) #{var-ids\ 1247}# #{vars\ 1248}# #{vals\ 1249}# (cons (cons 'macro (cons #{er\ 1256}# (#{wrap\ 313}# #{e\ 1260}# #{w\ 1261}# #{mod\ 1263}#))) #{bindings\ 1250}#)))) (if (memv #{type\ 1258}# '(begin-form)) ((lambda (#{tmp\ 1285}#) ((lambda (#{tmp\ 1286}#) (if #{tmp\ 1286}# (apply (lambda (#{_\ 1289}# #{e1\ 1290}#) (#{parse\ 1243}# (letrec ((#{f\ 1293}# (lambda (#{forms\ 1294}#) (if (null? #{forms\ 1294}#) (cdr #{body\ 1244}#) (cons (cons #{er\ 1256}# (#{wrap\ 313}# (car #{forms\ 1294}#) #{w\ 1261}# #{mod\ 1263}#)) (#{f\ 1293}# (cdr #{forms\ 1294}#))))))) (#{f\ 1293}# #{e1\ 1290}#)) #{ids\ 1245}# #{labels\ 1246}# #{var-ids\ 1247}# #{vars\ 1248}# #{vals\ 1249}# #{bindings\ 1250}#)) #{tmp\ 1286}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1285}#))) ($sc-dispatch #{tmp\ 1285}# '(any . each-any)))) #{e\ 1260}#) (if (memv #{type\ 1258}# '(local-syntax-form)) (#{chi-local-syntax\ 339}# #{value\ 1259}# #{e\ 1260}# #{er\ 1256}# #{w\ 1261}# #{s\ 1262}# #{mod\ 1263}# (lambda (#{forms\ 1297}# #{er\ 1298}# #{w\ 1299}# #{s\ 1300}# #{mod\ 1301}#) (#{parse\ 1243}# (letrec ((#{f\ 1309}# (lambda (#{forms\ 1310}#) (if (null? #{forms\ 1310}#) (cdr #{body\ 1244}#) (cons (cons #{er\ 1298}# (#{wrap\ 313}# (car #{forms\ 1310}#) #{w\ 1299}# #{mod\ 1301}#)) (#{f\ 1309}# (cdr #{forms\ 1310}#))))))) (#{f\ 1309}# #{forms\ 1297}#)) #{ids\ 1245}# #{labels\ 1246}# #{var-ids\ 1247}# #{vars\ 1248}# #{vals\ 1249}# #{bindings\ 1250}#))) (if (null? #{ids\ 1245}#) (#{build-sequence\ 196}# #f (map (lambda (#{x\ 1313}#) (#{chi\ 329}# (cdr #{x\ 1313}#) (car #{x\ 1313}#) '(()) #{mod\ 1263}#)) (cons (cons #{er\ 1256}# (#{source-wrap\ 315}# #{e\ 1260}# #{w\ 1261}# #{s\ 1262}# #{mod\ 1263}#)) (cdr #{body\ 1244}#)))) (begin (if (not (#{valid-bound-ids?\ 307}# #{ids\ 1245}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 1218}#)) (letrec ((#{loop\ 1320}# (lambda (#{bs\ 1321}# #{er-cache\ 1322}# #{r-cache\ 1323}#) (if (not (null? #{bs\ 1321}#)) (let ((#{b\ 1326}# (car #{bs\ 1321}#))) (if (eq? (car #{b\ 1326}#) 'macro) (let ((#{er\ 1329}# (cadr #{b\ 1326}#))) (let ((#{r-cache\ 1331}# (if (eq? #{er\ 1329}# #{er-cache\ 1322}#) #{r-cache\ 1323}# (#{macros-only-env\ 236}# #{er\ 1329}#)))) (begin (set-cdr! #{b\ 1326}# (#{eval-local-transformer\ 341}# (#{chi\ 329}# (cddr #{b\ 1326}#) #{r-cache\ 1331}# '(()) #{mod\ 1263}#) #{mod\ 1263}#)) (#{loop\ 1320}# (cdr #{bs\ 1321}#) #{er\ 1329}# #{r-cache\ 1331}#)))) (#{loop\ 1320}# (cdr #{bs\ 1321}#) #{er-cache\ 1322}# #{r-cache\ 1323}#))))))) (#{loop\ 1320}# #{bindings\ 1250}# #f #f)) (set-cdr! #{r\ 1229}# (#{extend-env\ 232}# #{labels\ 1246}# #{bindings\ 1250}# (cdr #{r\ 1229}#))) (#{build-letrec\ 202}# #f (map syntax->datum #{var-ids\ 1247}#) #{vars\ 1248}# (map (lambda (#{x\ 1334}#) (#{chi\ 329}# (cdr #{x\ 1334}#) (car #{x\ 1334}#) '(()) #{mod\ 1263}#)) #{vals\ 1249}#) (#{build-sequence\ 196}# #f (map (lambda (#{x\ 1338}#) (#{chi\ 329}# (cdr #{x\ 1338}#) (car #{x\ 1338}#) '(()) #{mod\ 1263}#)) (cons (cons #{er\ 1256}# (#{source-wrap\ 315}# #{e\ 1260}# #{w\ 1261}# #{s\ 1262}# #{mod\ 1263}#)) (cdr #{body\ 1244}#)))))))))))))))))) (#{parse\ 1243}# (map (lambda (#{x\ 1251}#) (cons #{r\ 1229}# (#{wrap\ 313}# #{x\ 1251}# #{w\ 1234}# #{mod\ 1221}#))) #{body\ 1217}#) '() '() '() '() '() '()))))))) (#{chi-macro\ 335}# (lambda (#{p\ 1341}# #{e\ 1342}# #{r\ 1343}# #{w\ 1344}# #{rib\ 1345}# #{mod\ 1346}#) (letrec ((#{rebuild-macro-output\ 1354}# (lambda (#{x\ 1355}# #{m\ 1356}#) (if (pair? #{x\ 1355}#) (cons (#{rebuild-macro-output\ 1354}# (car #{x\ 1355}#) #{m\ 1356}#) (#{rebuild-macro-output\ 1354}# (cdr #{x\ 1355}#) #{m\ 1356}#)) (if (#{syntax-object?\ 208}# #{x\ 1355}#) (let ((#{w\ 1364}# (#{syntax-object-wrap\ 212}# #{x\ 1355}#))) (let ((#{ms\ 1367}# (#{wrap-marks\ 251}# #{w\ 1364}#)) (#{s\ 1368}# (#{wrap-subst\ 253}# #{w\ 1364}#))) (if (if (pair? #{ms\ 1367}#) (eq? (car #{ms\ 1367}#) #f) #f) (#{make-syntax-object\ 206}# (#{syntax-object-expression\ 210}# #{x\ 1355}#) (#{make-wrap\ 249}# (cdr #{ms\ 1367}#) (if #{rib\ 1345}# (cons #{rib\ 1345}# (cdr #{s\ 1368}#)) (cdr #{s\ 1368}#))) (#{syntax-object-module\ 214}# #{x\ 1355}#)) (#{make-syntax-object\ 206}# (#{syntax-object-expression\ 210}# #{x\ 1355}#) (#{make-wrap\ 249}# (cons #{m\ 1356}# #{ms\ 1367}#) (if #{rib\ 1345}# (cons #{rib\ 1345}# (cons 'shift #{s\ 1368}#)) (cons (quote shift) #{s\ 1368}#))) (cons 'hygiene (cdr #{p\ 1341}#)))))) (if (vector? #{x\ 1355}#) (let ((#{n\ 1376}# (vector-length #{x\ 1355}#))) (let ((#{v\ 1378}# (make-vector #{n\ 1376}#))) (letrec ((#{loop\ 1381}# (lambda (#{i\ 1382}#) (if (#{fx=\ 149}# #{i\ 1382}# #{n\ 1376}#) (begin (if #f #f) #{v\ 1378}#) (begin (vector-set! #{v\ 1378}# #{i\ 1382}# (#{rebuild-macro-output\ 1354}# (vector-ref #{x\ 1355}# #{i\ 1382}#) #{m\ 1356}#)) (#{loop\ 1381}# (#{fx+\ 145}# #{i\ 1382}# 1))))))) (#{loop\ 1381}# 0)))) (if (symbol? #{x\ 1355}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 315}# #{e\ 1342}# #{w\ 1344}# (#{wrap-subst\ 253}# #{w\ 1344}#) #{mod\ 1346}#) #{x\ 1355}#) #{x\ 1355}#))))))) (#{rebuild-macro-output\ 1354}# ((car #{p\ 1341}#) (#{wrap\ 313}# #{e\ 1342}# (#{anti-mark\ 285}# #{w\ 1344}#) #{mod\ 1346}#)) (gensym "m"))))) (#{chi-application\ 333}# (lambda (#{x\ 1389}# #{e\ 1390}# #{r\ 1391}# #{w\ 1392}# #{s\ 1393}# #{mod\ 1394}#) ((lambda (#{tmp\ 1401}#) ((lambda (#{tmp\ 1402}#) (if #{tmp\ 1402}# (apply (lambda (#{e0\ 1405}# #{e1\ 1406}#) (#{build-application\ 166}# #{s\ 1393}# #{x\ 1389}# (map (lambda (#{e\ 1407}#) (#{chi\ 329}# #{e\ 1407}# #{r\ 1391}# #{w\ 1392}# #{mod\ 1394}#)) #{e1\ 1406}#))) #{tmp\ 1402}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1401}#))) ($sc-dispatch #{tmp\ 1401}# '(any . each-any)))) #{e\ 1390}#))) (#{chi-expr\ 331}# (lambda (#{type\ 1410}# #{value\ 1411}# #{e\ 1412}# #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#) (if (memv #{type\ 1410}# (quote (lexical))) (#{build-lexical-reference\ 172}# 'value #{s\ 1415}# #{e\ 1412}# #{value\ 1411}#) (if (memv #{type\ 1410}# (quote (core core-form))) (#{value\ 1411}# #{e\ 1412}# #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#) (if (memv #{type\ 1410}# (quote (module-ref))) (call-with-values (lambda () (#{value\ 1411}# #{e\ 1412}#)) (lambda (#{id\ 1427}# #{mod\ 1428}#) (#{build-global-reference\ 178}# #{s\ 1415}# #{id\ 1427}# #{mod\ 1428}#))) (if (memv #{type\ 1410}# (quote (lexical-call))) (#{chi-application\ 333}# (#{build-lexical-reference\ 172}# 'fun (#{source-annotation\ 223}# (car #{e\ 1412}#)) (car #{e\ 1412}#) #{value\ 1411}#) #{e\ 1412}# #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#) (if (memv #{type\ 1410}# (quote (global-call))) (#{chi-application\ 333}# (#{build-global-reference\ 178}# (#{source-annotation\ 223}# (car #{e\ 1412}#)) (if (#{syntax-object?\ 208}# #{value\ 1411}#) (#{syntax-object-expression\ 210}# #{value\ 1411}#) #{value\ 1411}#) (if (#{syntax-object?\ 208}# #{value\ 1411}#) (#{syntax-object-module\ 214}# #{value\ 1411}#) #{mod\ 1416}#)) #{e\ 1412}# #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#) (if (memv #{type\ 1410}# (quote (constant))) (#{build-data\ 194}# #{s\ 1415}# (#{strip\ 355}# (#{source-wrap\ 315}# #{e\ 1412}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#) '(()))) (if (memv #{type\ 1410}# (quote (global))) (#{build-global-reference\ 178}# #{s\ 1415}# #{value\ 1411}# #{mod\ 1416}#) (if (memv #{type\ 1410}# (quote (call))) (#{chi-application\ 333}# (#{chi\ 329}# (car #{e\ 1412}#) #{r\ 1413}# #{w\ 1414}# #{mod\ 1416}#) #{e\ 1412}# #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#) (if (memv #{type\ 1410}# (quote (begin-form))) ((lambda (#{tmp\ 1438}#) ((lambda (#{tmp\ 1439}#) (if #{tmp\ 1439}# (apply (lambda (#{_\ 1443}# #{e1\ 1444}# #{e2\ 1445}#) (#{chi-sequence\ 317}# (cons #{e1\ 1444}# #{e2\ 1445}#) #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#)) #{tmp\ 1439}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1438}#))) ($sc-dispatch #{tmp\ 1438}# '(any any . each-any)))) #{e\ 1412}#) (if (memv #{type\ 1410}# '(local-syntax-form)) (#{chi-local-syntax\ 339}# #{value\ 1411}# #{e\ 1412}# #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}# #{chi-sequence\ 317}#) (if (memv #{type\ 1410}# '(eval-when-form)) ((lambda (#{tmp\ 1449}#) ((lambda (#{tmp\ 1450}#) (if #{tmp\ 1450}# (apply (lambda (#{_\ 1455}# #{x\ 1456}# #{e1\ 1457}# #{e2\ 1458}#) (let ((#{when-list\ 1460}# (#{chi-when-list\ 323}# #{e\ 1412}# #{x\ 1456}# #{w\ 1414}#))) (if (memq 'eval #{when-list\ 1460}#) (#{chi-sequence\ 317}# (cons #{e1\ 1457}# #{e2\ 1458}#) #{r\ 1413}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#) (#{chi-void\ 343}#)))) #{tmp\ 1450}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1449}#))) ($sc-dispatch #{tmp\ 1449}# '(any each-any any . each-any)))) #{e\ 1412}#) (if (memv #{type\ 1410}# '(define-form define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 1412}# (#{wrap\ 313}# #{value\ 1411}# #{w\ 1414}# #{mod\ 1416}#)) (if (memv #{type\ 1410}# '(syntax)) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 315}# #{e\ 1412}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#)) (if (memv #{type\ 1410}# '(displaced-lexical)) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 315}# #{e\ 1412}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 315}# #{e\ 1412}# #{w\ 1414}# #{s\ 1415}# #{mod\ 1416}#)))))))))))))))))) (#{chi\ 329}# (lambda (#{e\ 1467}# #{r\ 1468}# #{w\ 1469}# #{mod\ 1470}#) (call-with-values (lambda () (#{syntax-type\ 325}# #{e\ 1467}# #{r\ 1468}# #{w\ 1469}# (#{source-annotation\ 223}# #{e\ 1467}#) #f #{mod\ 1470}# #f)) (lambda (#{type\ 1475}# #{value\ 1476}# #{e\ 1477}# #{w\ 1478}# #{s\ 1479}# #{mod\ 1480}#) (#{chi-expr\ 331}# #{type\ 1475}# #{value\ 1476}# #{e\ 1477}# #{r\ 1468}# #{w\ 1478}# #{s\ 1479}# #{mod\ 1480}#))))) (#{chi-top\ 327}# (lambda (#{e\ 1487}# #{r\ 1488}# #{w\ 1489}# #{m\ 1490}# #{esew\ 1491}# #{mod\ 1492}#) (call-with-values (lambda () (#{syntax-type\ 325}# #{e\ 1487}# #{r\ 1488}# #{w\ 1489}# (#{source-annotation\ 223}# #{e\ 1487}#) #f #{mod\ 1492}# #f)) (lambda (#{type\ 1513}# #{value\ 1514}# #{e\ 1515}# #{w\ 1516}# #{s\ 1517}# #{mod\ 1518}#) (if (memv #{type\ 1513}# (quote (begin-form))) ((lambda (#{tmp\ 1526}#) ((lambda (#{tmp\ 1527}#) (if #{tmp\ 1527}# (apply (lambda (#{_\ 1529}#) (#{chi-void\ 343}#)) #{tmp\ 1527}#) ((lambda (#{tmp\ 1530}#) (if #{tmp\ 1530}# (apply (lambda (#{_\ 1534}# #{e1\ 1535}# #{e2\ 1536}#) (#{chi-top-sequence\ 319}# (cons #{e1\ 1535}# #{e2\ 1536}#) #{r\ 1488}# #{w\ 1516}# #{s\ 1517}# #{m\ 1490}# #{esew\ 1491}# #{mod\ 1518}#)) #{tmp\ 1530}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1526}#))) ($sc-dispatch #{tmp\ 1526}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 1526}# (quote (any))))) #{e\ 1515}#) (if (memv #{type\ 1513}# (quote (local-syntax-form))) (#{chi-local-syntax\ 339}# #{value\ 1514}# #{e\ 1515}# #{r\ 1488}# #{w\ 1516}# #{s\ 1517}# #{mod\ 1518}# (lambda (#{body\ 1539}# #{r\ 1540}# #{w\ 1541}# #{s\ 1542}# #{mod\ 1543}#) (#{chi-top-sequence\ 319}# #{body\ 1539}# #{r\ 1540}# #{w\ 1541}# #{s\ 1542}# #{m\ 1490}# #{esew\ 1491}# #{mod\ 1543}#))) (if (memv #{type\ 1513}# (quote (eval-when-form))) ((lambda (#{tmp\ 1550}#) ((lambda (#{tmp\ 1551}#) (if #{tmp\ 1551}# (apply (lambda (#{_\ 1556}# #{x\ 1557}# #{e1\ 1558}# #{e2\ 1559}#) (let ((#{when-list\ 1562}# (#{chi-when-list\ 323}# #{e\ 1515}# #{x\ 1557}# #{w\ 1516}#)) (#{body\ 1563}# (cons #{e1\ 1558}# #{e2\ 1559}#))) (if (eq? #{m\ 1490}# (quote e)) (if (memq 'eval #{when-list\ 1562}#) (#{chi-top-sequence\ 319}# #{body\ 1563}# #{r\ 1488}# #{w\ 1516}# #{s\ 1517}# 'e '(eval) #{mod\ 1518}#) (#{chi-void\ 343}#)) (if (memq 'load #{when-list\ 1562}#) (if (let ((#{t\ 1572}# (memq 'compile #{when-list\ 1562}#))) (if #{t\ 1572}# #{t\ 1572}# (if (eq? #{m\ 1490}# 'c&e) (memq 'eval #{when-list\ 1562}#) #f))) (#{chi-top-sequence\ 319}# #{body\ 1563}# #{r\ 1488}# #{w\ 1516}# #{s\ 1517}# 'c&e '(compile load) #{mod\ 1518}#) (if (memq #{m\ 1490}# '(c c&e)) (#{chi-top-sequence\ 319}# #{body\ 1563}# #{r\ 1488}# #{w\ 1516}# #{s\ 1517}# 'c '(load) #{mod\ 1518}#) (#{chi-void\ 343}#))) (if (let ((#{t\ 1580}# (memq 'compile #{when-list\ 1562}#))) (if #{t\ 1580}# #{t\ 1580}# (if (eq? #{m\ 1490}# 'c&e) (memq 'eval #{when-list\ 1562}#) #f))) (begin (#{top-level-eval-hook\ 153}# (#{chi-top-sequence\ 319}# #{body\ 1563}# #{r\ 1488}# #{w\ 1516}# #{s\ 1517}# 'e '(eval) #{mod\ 1518}#) #{mod\ 1518}#) (#{chi-void\ 343}#)) (#{chi-void\ 343}#)))))) #{tmp\ 1551}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1550}#))) ($sc-dispatch #{tmp\ 1550}# '(any each-any any . each-any)))) #{e\ 1515}#) (if (memv #{type\ 1513}# '(define-syntax-form)) (let ((#{n\ 1588}# (#{id-var-name\ 301}# #{value\ 1514}# #{w\ 1516}#)) (#{r\ 1589}# (#{macros-only-env\ 236}# #{r\ 1488}#))) (if (memv #{m\ 1490}# (quote (c))) (if (memq (quote compile) #{esew\ 1491}#) (let ((#{e\ 1592}# (#{chi-install-global\ 321}# #{n\ 1588}# (#{chi\ 329}# #{e\ 1515}# #{r\ 1589}# #{w\ 1516}# #{mod\ 1518}#)))) (begin (#{top-level-eval-hook\ 153}# #{e\ 1592}# #{mod\ 1518}#) (if (memq (quote load) #{esew\ 1491}#) #{e\ 1592}# (#{chi-void\ 343}#)))) (if (memq (quote load) #{esew\ 1491}#) (#{chi-install-global\ 321}# #{n\ 1588}# (#{chi\ 329}# #{e\ 1515}# #{r\ 1589}# #{w\ 1516}# #{mod\ 1518}#)) (#{chi-void\ 343}#))) (if (memv #{m\ 1490}# (quote (c&e))) (let ((#{e\ 1595}# (#{chi-install-global\ 321}# #{n\ 1588}# (#{chi\ 329}# #{e\ 1515}# #{r\ 1589}# #{w\ 1516}# #{mod\ 1518}#)))) (begin (#{top-level-eval-hook\ 153}# #{e\ 1595}# #{mod\ 1518}#) #{e\ 1595}#)) (begin (if (memq (quote eval) #{esew\ 1491}#) (#{top-level-eval-hook\ 153}# (#{chi-install-global\ 321}# #{n\ 1588}# (#{chi\ 329}# #{e\ 1515}# #{r\ 1589}# #{w\ 1516}# #{mod\ 1518}#)) #{mod\ 1518}#)) (#{chi-void\ 343}#))))) (if (memv #{type\ 1513}# (quote (define-form))) (let ((#{n\ 1600}# (#{id-var-name\ 301}# #{value\ 1514}# #{w\ 1516}#))) (let ((#{type\ 1602}# (#{binding-type\ 227}# (#{lookup\ 238}# #{n\ 1600}# #{r\ 1488}# #{mod\ 1518}#)))) (if (memv #{type\ 1602}# '(global core macro module-ref)) (begin (if (if (not (module-local-variable (current-module) #{n\ 1600}#)) (current-module) #f) (let ((#{old\ 1607}# (module-variable (current-module) #{n\ 1600}#))) (module-define! (current-module) #{n\ 1600}# (if (variable? #{old\ 1607}#) (variable-ref #{old\ 1607}#) #f)))) (let ((#{x\ 1610}# (#{build-global-definition\ 184}# #{s\ 1517}# #{n\ 1600}# (#{chi\ 329}# #{e\ 1515}# #{r\ 1488}# #{w\ 1516}# #{mod\ 1518}#)))) (begin (if (eq? #{m\ 1490}# (quote c&e)) (#{top-level-eval-hook\ 153}# #{x\ 1610}# #{mod\ 1518}#)) #{x\ 1610}#))) (if (memv #{type\ 1602}# '(displaced-lexical)) (syntax-violation #f "identifier out of context" #{e\ 1515}# (#{wrap\ 313}# #{value\ 1514}# #{w\ 1516}# #{mod\ 1518}#)) (syntax-violation #f "cannot define keyword at top level" #{e\ 1515}# (#{wrap\ 313}# #{value\ 1514}# #{w\ 1516}# #{mod\ 1518}#)))))) (let ((#{x\ 1616}# (#{chi-expr\ 331}# #{type\ 1513}# #{value\ 1514}# #{e\ 1515}# #{r\ 1488}# #{w\ 1516}# #{s\ 1517}# #{mod\ 1518}#))) (begin (if (eq? #{m\ 1490}# (quote c&e)) (#{top-level-eval-hook\ 153}# #{x\ 1616}# #{mod\ 1518}#)) #{x\ 1616}#))))))))))) (#{syntax-type\ 325}# (lambda (#{e\ 1617}# #{r\ 1618}# #{w\ 1619}# #{s\ 1620}# #{rib\ 1621}# #{mod\ 1622}# #{for-car?\ 1623}#) (if (symbol? #{e\ 1617}#) (let ((#{n\ 1635}# (#{id-var-name\ 301}# #{e\ 1617}# #{w\ 1619}#))) (let ((#{b\ 1637}# (#{lookup\ 238}# #{n\ 1635}# #{r\ 1618}# #{mod\ 1622}#))) (let ((#{type\ 1639}# (#{binding-type\ 227}# #{b\ 1637}#))) (if (memv #{type\ 1639}# (quote (lexical))) (values #{type\ 1639}# (#{binding-value\ 229}# #{b\ 1637}#) #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{type\ 1639}# (quote (global))) (values #{type\ 1639}# #{n\ 1635}# #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{type\ 1639}# (quote (macro))) (if #{for-car?\ 1623}# (values #{type\ 1639}# (#{binding-value\ 229}# #{b\ 1637}#) #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (#{syntax-type\ 325}# (#{chi-macro\ 335}# (#{binding-value\ 229}# #{b\ 1637}#) #{e\ 1617}# #{r\ 1618}# #{w\ 1619}# #{rib\ 1621}# #{mod\ 1622}#) #{r\ 1618}# '(()) #{s\ 1620}# #{rib\ 1621}# #{mod\ 1622}# #f)) (values #{type\ 1639}# (#{binding-value\ 229}# #{b\ 1637}#) #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#))))))) (if (pair? #{e\ 1617}#) (let ((#{first\ 1648}# (car #{e\ 1617}#))) (call-with-values (lambda () (#{syntax-type\ 325}# #{first\ 1648}# #{r\ 1618}# #{w\ 1619}# #{s\ 1620}# #{rib\ 1621}# #{mod\ 1622}# #t)) (lambda (#{ftype\ 1649}# #{fval\ 1650}# #{fe\ 1651}# #{fw\ 1652}# #{fs\ 1653}# #{fmod\ 1654}#) (if (memv #{ftype\ 1649}# (quote (lexical))) (values 'lexical-call #{fval\ 1650}# #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{ftype\ 1649}# (quote (global))) (values 'global-call (#{make-syntax-object\ 206}# #{fval\ 1650}# #{w\ 1619}# #{fmod\ 1654}#) #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{ftype\ 1649}# (quote (macro))) (#{syntax-type\ 325}# (#{chi-macro\ 335}# #{fval\ 1650}# #{e\ 1617}# #{r\ 1618}# #{w\ 1619}# #{rib\ 1621}# #{mod\ 1622}#) #{r\ 1618}# '(()) #{s\ 1620}# #{rib\ 1621}# #{mod\ 1622}# #{for-car?\ 1623}#) (if (memv #{ftype\ 1649}# (quote (module-ref))) (call-with-values (lambda () (#{fval\ 1650}# #{e\ 1617}#)) (lambda (#{sym\ 1666}# #{mod\ 1667}#) (#{syntax-type\ 325}# #{sym\ 1666}# #{r\ 1618}# #{w\ 1619}# #{s\ 1620}# #{rib\ 1621}# #{mod\ 1667}# #{for-car?\ 1623}#))) (if (memv #{ftype\ 1649}# (quote (core))) (values 'core-form #{fval\ 1650}# #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{ftype\ 1649}# '(local-syntax)) (values 'local-syntax-form #{fval\ 1650}# #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{ftype\ 1649}# (quote (begin))) (values 'begin-form #f #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{ftype\ 1649}# '(eval-when)) (values 'eval-when-form #f #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (if (memv #{ftype\ 1649}# '(define)) ((lambda (#{tmp\ 1675}#) ((lambda (#{tmp\ 1676}#) (if (if #{tmp\ 1676}# (apply (lambda (#{_\ 1680}# #{name\ 1681}# #{val\ 1682}#) (#{id?\ 244}# #{name\ 1681}#)) #{tmp\ 1676}#) #f) (apply (lambda (#{_\ 1686}# #{name\ 1687}# #{val\ 1688}#) (values 'define-form #{name\ 1687}# #{val\ 1688}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#)) #{tmp\ 1676}#) ((lambda (#{tmp\ 1689}#) (if (if #{tmp\ 1689}# (apply (lambda (#{_\ 1695}# #{name\ 1696}# #{args\ 1697}# #{e1\ 1698}# #{e2\ 1699}#) (if (#{id?\ 244}# #{name\ 1696}#) (#{valid-bound-ids?\ 307}# (#{lambda-var-list\ 359}# #{args\ 1697}#)) #f)) #{tmp\ 1689}#) #f) (apply (lambda (#{_\ 1707}# #{name\ 1708}# #{args\ 1709}# #{e1\ 1710}# #{e2\ 1711}#) (values 'define-form (#{wrap\ 313}# #{name\ 1708}# #{w\ 1619}# #{mod\ 1622}#) (#{decorate-source\ 162}# (cons '#(syntax-object lambda ((top) #(ribcage #(_ name args e1 e2) #((top) (top) (top) (top) (top)) #("i1702" "i1703" "i1704" "i1705" "i1706")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1655" "i1656" "i1657" "i1658" "i1659" "i1660")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1647")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1624" "i1625" "i1626" "i1627" "i1628" "i1629" "i1630")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)) (#{wrap\ 313}# (cons #{args\ 1709}# (cons #{e1\ 1710}# #{e2\ 1711}#)) #{w\ 1619}# #{mod\ 1622}#)) #{s\ 1620}#) '(()) #{s\ 1620}# #{mod\ 1622}#)) #{tmp\ 1689}#) ((lambda (#{tmp\ 1714}#) (if (if #{tmp\ 1714}# (apply (lambda (#{_\ 1717}# #{name\ 1718}#) (#{id?\ 244}# #{name\ 1718}#)) #{tmp\ 1714}#) #f) (apply (lambda (#{_\ 1721}# #{name\ 1722}#) (values 'define-form (#{wrap\ 313}# #{name\ 1722}# #{w\ 1619}# #{mod\ 1622}#) '(#(syntax-object if ((top) #(ribcage #(_ name) #((top) (top)) #("i1719" "i1720")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1655" "i1656" "i1657" "i1658" "i1659" "i1660")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1647")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1624" "i1625" "i1626" "i1627" "i1628" "i1629" "i1630")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i1719" "i1720")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1655" "i1656" "i1657" "i1658" "i1659" "i1660")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1647")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1624" "i1625" "i1626" "i1627" "i1628" "i1629" "i1630")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i1719" "i1720")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1655" "i1656" "i1657" "i1658" "i1659" "i1660")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1647")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1624" "i1625" "i1626" "i1627" "i1628" "i1629" "i1630")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile))) '(()) #{s\ 1620}# #{mod\ 1622}#)) #{tmp\ 1714}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1675}#))) ($sc-dispatch #{tmp\ 1675}# '(any any))))) ($sc-dispatch #{tmp\ 1675}# '(any (any . any) any . each-any))))) ($sc-dispatch #{tmp\ 1675}# '(any any any)))) #{e\ 1617}#) (if (memv #{ftype\ 1649}# '(define-syntax)) ((lambda (#{tmp\ 1725}#) ((lambda (#{tmp\ 1726}#) (if (if #{tmp\ 1726}# (apply (lambda (#{_\ 1730}# #{name\ 1731}# #{val\ 1732}#) (#{id?\ 244}# #{name\ 1731}#)) #{tmp\ 1726}#) #f) (apply (lambda (#{_\ 1736}# #{name\ 1737}# #{val\ 1738}#) (values 'define-syntax-form #{name\ 1737}# #{val\ 1738}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#)) #{tmp\ 1726}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1725}#))) ($sc-dispatch #{tmp\ 1725}# '(any any any)))) #{e\ 1617}#) (values 'call #f #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#)))))))))))))) (if (#{syntax-object?\ 208}# #{e\ 1617}#) (#{syntax-type\ 325}# (#{syntax-object-expression\ 210}# #{e\ 1617}#) #{r\ 1618}# (#{join-wraps\ 295}# #{w\ 1619}# (#{syntax-object-wrap\ 212}# #{e\ 1617}#)) #{s\ 1620}# #{rib\ 1621}# (let ((#{t\ 1744}# (#{syntax-object-module\ 214}# #{e\ 1617}#))) (if #{t\ 1744}# #{t\ 1744}# #{mod\ 1622}#)) #{for-car?\ 1623}#) (if (self-evaluating? #{e\ 1617}#) (values 'constant #f #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#) (values 'other #f #{e\ 1617}# #{w\ 1619}# #{s\ 1620}# #{mod\ 1622}#))))))) (#{chi-when-list\ 323}# (lambda (#{e\ 1749}# #{when-list\ 1750}# #{w\ 1751}#) (letrec ((#{f\ 1758}# (lambda (#{when-list\ 1759}# #{situations\ 1760}#) (if (null? #{when-list\ 1759}#) #{situations\ 1760}# (#{f\ 1758}# (cdr #{when-list\ 1759}#) (cons (let ((#{x\ 1762}# (car #{when-list\ 1759}#))) (if (#{free-id=?\ 303}# #{x\ 1762}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1761")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1755" "i1756" "i1757")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1752" "i1753" "i1754")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile))) 'compile (if (#{free-id=?\ 303}# #{x\ 1762}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1761")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1755" "i1756" "i1757")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1752" "i1753" "i1754")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile))) 'load (if (#{free-id=?\ 303}# #{x\ 1762}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1761")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1755" "i1756" "i1757")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1752" "i1753" "i1754")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile))) 'eval (syntax-violation 'eval-when "invalid situation" #{e\ 1749}# (#{wrap\ 313}# #{x\ 1762}# #{w\ 1751}# #f)))))) #{situations\ 1760}#)))))) (#{f\ 1758}# #{when-list\ 1750}# (quote ()))))) (#{chi-install-global\ 321}# (lambda (#{name\ 1770}# #{e\ 1771}#) (#{build-global-definition\ 184}# #f #{name\ 1770}# (#{build-application\ 166}# #f (#{build-primref\ 192}# #f 'make-syntax-transformer) (list (#{build-data\ 194}# #f #{name\ 1770}#) (#{build-data\ 194}# #f (quote macro)) (#{build-application\ 166}# #f (#{build-primref\ 192}# #f (quote cons)) (list #{e\ 1771}# (#{build-application\ 166}# #f (#{build-primref\ 192}# #f 'module-name) (list (#{build-application\ 166}# #f (#{build-primref\ 192}# #f 'current-module) '())))))))))) (#{chi-top-sequence\ 319}# (lambda (#{body\ 1785}# #{r\ 1786}# #{w\ 1787}# #{s\ 1788}# #{m\ 1789}# #{esew\ 1790}# #{mod\ 1791}#) (#{build-sequence\ 196}# #{s\ 1788}# (letrec ((#{dobody\ 1808}# (lambda (#{body\ 1809}# #{r\ 1810}# #{w\ 1811}# #{m\ 1812}# #{esew\ 1813}# #{mod\ 1814}# #{module\ 1815}# #{out\ 1816}#) (if (null? #{body\ 1809}#) (reverse #{out\ 1816}#) (let ((#{first\ 1819}# (#{chi-top\ 327}# (car #{body\ 1809}#) #{r\ 1810}# #{w\ 1811}# #{m\ 1812}# #{esew\ 1813}# #{mod\ 1814}#))) (let ((#{new-module\ 1821}# (current-module))) (#{dobody\ 1808}# (cdr #{body\ 1809}#) #{r\ 1810}# #{w\ 1811}# #{m\ 1812}# #{esew\ 1813}# (if (eq? #{module\ 1815}# #{new-module\ 1821}#) #{mod\ 1814}# (cons 'hygiene (module-name #{new-module\ 1821}#))) #{new-module\ 1821}# (cons #{first\ 1819}# #{out\ 1816}#)))))))) (#{dobody\ 1808}# #{body\ 1785}# #{r\ 1786}# #{w\ 1787}# #{m\ 1789}# #{esew\ 1790}# #{mod\ 1791}# (current-module) '()))))) (#{chi-sequence\ 317}# (lambda (#{body\ 1822}# #{r\ 1823}# #{w\ 1824}# #{s\ 1825}# #{mod\ 1826}#) (#{build-sequence\ 196}# #{s\ 1825}# (letrec ((#{dobody\ 1837}# (lambda (#{body\ 1838}# #{r\ 1839}# #{w\ 1840}# #{mod\ 1841}#) (if (null? #{body\ 1838}#) '() (let ((#{first\ 1843}# (#{chi\ 329}# (car #{body\ 1838}#) #{r\ 1839}# #{w\ 1840}# #{mod\ 1841}#))) (cons #{first\ 1843}# (#{dobody\ 1837}# (cdr #{body\ 1838}#) #{r\ 1839}# #{w\ 1840}# #{mod\ 1841}#))))))) (#{dobody\ 1837}# #{body\ 1822}# #{r\ 1823}# #{w\ 1824}# #{mod\ 1826}#))))) (#{source-wrap\ 315}# (lambda (#{x\ 1844}# #{w\ 1845}# #{s\ 1846}# #{defmod\ 1847}#) (#{wrap\ 313}# (#{decorate-source\ 162}# #{x\ 1844}# #{s\ 1846}#) #{w\ 1845}# #{defmod\ 1847}#))) (#{wrap\ 313}# (lambda (#{x\ 1852}# #{w\ 1853}# #{defmod\ 1854}#) (if (if (null? (#{wrap-marks\ 251}# #{w\ 1853}#)) (null? (#{wrap-subst\ 253}# #{w\ 1853}#)) #f) #{x\ 1852}# (if (#{syntax-object?\ 208}# #{x\ 1852}#) (#{make-syntax-object\ 206}# (#{syntax-object-expression\ 210}# #{x\ 1852}#) (#{join-wraps\ 295}# #{w\ 1853}# (#{syntax-object-wrap\ 212}# #{x\ 1852}#)) (#{syntax-object-module\ 214}# #{x\ 1852}#)) (if (null? #{x\ 1852}#) #{x\ 1852}# (#{make-syntax-object\ 206}# #{x\ 1852}# #{w\ 1853}# #{defmod\ 1854}#)))))) (#{bound-id-member?\ 311}# (lambda (#{x\ 1867}# #{list\ 1868}#) (if (not (null? #{list\ 1868}#)) (let ((#{t\ 1875}# (#{bound-id=?\ 305}# #{x\ 1867}# (car #{list\ 1868}#)))) (if #{t\ 1875}# #{t\ 1875}# (#{bound-id-member?\ 311}# #{x\ 1867}# (cdr #{list\ 1868}#)))) #f))) (#{distinct-bound-ids?\ 309}# (lambda (#{ids\ 1877}#) (letrec ((#{distinct?\ 1881}# (lambda (#{ids\ 1882}#) (let ((#{t\ 1885}# (null? #{ids\ 1882}#))) (if #{t\ 1885}# #{t\ 1885}# (if (not (#{bound-id-member?\ 311}# (car #{ids\ 1882}#) (cdr #{ids\ 1882}#))) (#{distinct?\ 1881}# (cdr #{ids\ 1882}#)) #f)))))) (#{distinct?\ 1881}# #{ids\ 1877}#)))) (#{valid-bound-ids?\ 307}# (lambda (#{ids\ 1889}#) (if (letrec ((#{all-ids?\ 1894}# (lambda (#{ids\ 1895}#) (let ((#{t\ 1898}# (null? #{ids\ 1895}#))) (if #{t\ 1898}# #{t\ 1898}# (if (#{id?\ 244}# (car #{ids\ 1895}#)) (#{all-ids?\ 1894}# (cdr #{ids\ 1895}#)) #f)))))) (#{all-ids?\ 1894}# #{ids\ 1889}#)) (#{distinct-bound-ids?\ 309}# #{ids\ 1889}#) #f))) (#{bound-id=?\ 305}# (lambda (#{i\ 1903}# #{j\ 1904}#) (if (if (#{syntax-object?\ 208}# #{i\ 1903}#) (#{syntax-object?\ 208}# #{j\ 1904}#) #f) (if (eq? (#{syntax-object-expression\ 210}# #{i\ 1903}#) (#{syntax-object-expression\ 210}# #{j\ 1904}#)) (#{same-marks?\ 299}# (#{wrap-marks\ 251}# (#{syntax-object-wrap\ 212}# #{i\ 1903}#)) (#{wrap-marks\ 251}# (#{syntax-object-wrap\ 212}# #{j\ 1904}#))) #f) (eq? #{i\ 1903}# #{j\ 1904}#)))) (#{free-id=?\ 303}# (lambda (#{i\ 1911}# #{j\ 1912}#) (if (eq? (let ((#{x\ 1918}# #{i\ 1911}#)) (if (#{syntax-object?\ 208}# #{x\ 1918}#) (#{syntax-object-expression\ 210}# #{x\ 1918}#) #{x\ 1918}#)) (let ((#{x\ 1921}# #{j\ 1912}#)) (if (#{syntax-object?\ 208}# #{x\ 1921}#) (#{syntax-object-expression\ 210}# #{x\ 1921}#) #{x\ 1921}#))) (eq? (#{id-var-name\ 301}# #{i\ 1911}# (quote (()))) (#{id-var-name\ 301}# #{j\ 1912}# (quote (())))) #f))) (#{id-var-name\ 301}# (lambda (#{id\ 1925}# #{w\ 1926}#) (letrec ((#{search-vector-rib\ 1935}# (lambda (#{sym\ 1947}# #{subst\ 1948}# #{marks\ 1949}# #{symnames\ 1950}# #{ribcage\ 1951}#) (let ((#{n\ 1958}# (vector-length #{symnames\ 1950}#))) (letrec ((#{f\ 1961}# (lambda (#{i\ 1962}#) (if (#{fx=\ 149}# #{i\ 1962}# #{n\ 1958}#) (#{search\ 1931}# #{sym\ 1947}# (cdr #{subst\ 1948}#) #{marks\ 1949}#) (if (if (eq? (vector-ref #{symnames\ 1950}# #{i\ 1962}#) #{sym\ 1947}#) (#{same-marks?\ 299}# #{marks\ 1949}# (vector-ref (#{ribcage-marks\ 271}# #{ribcage\ 1951}#) #{i\ 1962}#)) #f) (values (vector-ref (#{ribcage-labels\ 273}# #{ribcage\ 1951}#) #{i\ 1962}#) #{marks\ 1949}#) (#{f\ 1961}# (#{fx+\ 145}# #{i\ 1962}# 1))))))) (#{f\ 1961}# 0))))) (#{search-list-rib\ 1933}# (lambda (#{sym\ 1970}# #{subst\ 1971}# #{marks\ 1972}# #{symnames\ 1973}# #{ribcage\ 1974}#) (letrec ((#{f\ 1983}# (lambda (#{symnames\ 1984}# #{i\ 1985}#) (if (null? #{symnames\ 1984}#) (#{search\ 1931}# #{sym\ 1970}# (cdr #{subst\ 1971}#) #{marks\ 1972}#) (if (if (eq? (car #{symnames\ 1984}#) #{sym\ 1970}#) (#{same-marks?\ 299}# #{marks\ 1972}# (list-ref (#{ribcage-marks\ 271}# #{ribcage\ 1974}#) #{i\ 1985}#)) #f) (values (list-ref (#{ribcage-labels\ 273}# #{ribcage\ 1974}#) #{i\ 1985}#) #{marks\ 1972}#) (#{f\ 1983}# (cdr #{symnames\ 1984}#) (#{fx+\ 145}# #{i\ 1985}# 1))))))) (#{f\ 1983}# #{symnames\ 1973}# 0)))) (#{search\ 1931}# (lambda (#{sym\ 1993}# #{subst\ 1994}# #{marks\ 1995}#) (if (null? #{subst\ 1994}#) (values #f #{marks\ 1995}#) (let ((#{fst\ 2000}# (car #{subst\ 1994}#))) (if (eq? #{fst\ 2000}# (quote shift)) (#{search\ 1931}# #{sym\ 1993}# (cdr #{subst\ 1994}#) (cdr #{marks\ 1995}#)) (let ((#{symnames\ 2002}# (#{ribcage-symnames\ 269}# #{fst\ 2000}#))) (if (vector? #{symnames\ 2002}#) (#{search-vector-rib\ 1935}# #{sym\ 1993}# #{subst\ 1994}# #{marks\ 1995}# #{symnames\ 2002}# #{fst\ 2000}#) (#{search-list-rib\ 1933}# #{sym\ 1993}# #{subst\ 1994}# #{marks\ 1995}# #{symnames\ 2002}# #{fst\ 2000}#))))))))) (if (symbol? #{id\ 1925}#) (let ((#{t\ 2005}# (call-with-values (lambda () (#{search\ 1931}# #{id\ 1925}# (#{wrap-subst\ 253}# #{w\ 1926}#) (#{wrap-marks\ 251}# #{w\ 1926}#))) (lambda (#{x\ 2007}# . #{ignore\ 2008}#) #{x\ 2007}#)))) (if #{t\ 2005}# #{t\ 2005}# #{id\ 1925}#)) (if (#{syntax-object?\ 208}# #{id\ 1925}#) (let ((#{id\ 2016}# (#{syntax-object-expression\ 210}# #{id\ 1925}#)) (#{w1\ 2017}# (#{syntax-object-wrap\ 212}# #{id\ 1925}#))) (let ((#{marks\ 2019}# (#{join-marks\ 297}# (#{wrap-marks\ 251}# #{w\ 1926}#) (#{wrap-marks\ 251}# #{w1\ 2017}#)))) (call-with-values (lambda () (#{search\ 1931}# #{id\ 2016}# (#{wrap-subst\ 253}# #{w\ 1926}#) #{marks\ 2019}#)) (lambda (#{new-id\ 2020}# #{marks\ 2021}#) (let ((#{t\ 2026}# #{new-id\ 2020}#)) (if #{t\ 2026}# #{t\ 2026}# (let ((#{t\ 2029}# (call-with-values (lambda () (#{search\ 1931}# #{id\ 2016}# (#{wrap-subst\ 253}# #{w1\ 2017}#) #{marks\ 2021}#)) (lambda (#{x\ 2031}# . #{ignore\ 2032}#) #{x\ 2031}#)))) (if #{t\ 2029}# #{t\ 2029}# #{id\ 2016}#)))))))) (syntax-violation 'id-var-name "invalid id" #{id\ 1925}#)))))) (#{same-marks?\ 299}# (lambda (#{x\ 2037}# #{y\ 2038}#) (let ((#{t\ 2043}# (eq? #{x\ 2037}# #{y\ 2038}#))) (if #{t\ 2043}# #{t\ 2043}# (if (not (null? #{x\ 2037}#)) (if (not (null? #{y\ 2038}#)) (if (eq? (car #{x\ 2037}#) (car #{y\ 2038}#)) (#{same-marks?\ 299}# (cdr #{x\ 2037}#) (cdr #{y\ 2038}#)) #f) #f) #f))))) (#{join-marks\ 297}# (lambda (#{m1\ 2049}# #{m2\ 2050}#) (#{smart-append\ 293}# #{m1\ 2049}# #{m2\ 2050}#))) (#{join-wraps\ 295}# (lambda (#{w1\ 2053}# #{w2\ 2054}#) (let ((#{m1\ 2059}# (#{wrap-marks\ 251}# #{w1\ 2053}#)) (#{s1\ 2060}# (#{wrap-subst\ 253}# #{w1\ 2053}#))) (if (null? #{m1\ 2059}#) (if (null? #{s1\ 2060}#) #{w2\ 2054}# (#{make-wrap\ 249}# (#{wrap-marks\ 251}# #{w2\ 2054}#) (#{smart-append\ 293}# #{s1\ 2060}# (#{wrap-subst\ 253}# #{w2\ 2054}#)))) (#{make-wrap\ 249}# (#{smart-append\ 293}# #{m1\ 2059}# (#{wrap-marks\ 251}# #{w2\ 2054}#)) (#{smart-append\ 293}# #{s1\ 2060}# (#{wrap-subst\ 253}# #{w2\ 2054}#))))))) (#{smart-append\ 293}# (lambda (#{m1\ 2061}# #{m2\ 2062}#) (if (null? #{m2\ 2062}#) #{m1\ 2061}# (append #{m1\ 2061}# #{m2\ 2062}#)))) (#{make-binding-wrap\ 291}# (lambda (#{ids\ 2065}# #{labels\ 2066}# #{w\ 2067}#) (if (null? #{ids\ 2065}#) #{w\ 2067}# (#{make-wrap\ 249}# (#{wrap-marks\ 251}# #{w\ 2067}#) (cons (let ((#{labelvec\ 2072}# (list->vector #{labels\ 2066}#))) (let ((#{n\ 2074}# (vector-length #{labelvec\ 2072}#))) (let ((#{symnamevec\ 2077}# (make-vector #{n\ 2074}#)) (#{marksvec\ 2078}# (make-vector #{n\ 2074}#))) (begin (letrec ((#{f\ 2082}# (lambda (#{ids\ 2083}# #{i\ 2084}#) (if (not (null? #{ids\ 2083}#)) (call-with-values (lambda () (#{id-sym-name&marks\ 247}# (car #{ids\ 2083}#) #{w\ 2067}#)) (lambda (#{symname\ 2085}# #{marks\ 2086}#) (begin (vector-set! #{symnamevec\ 2077}# #{i\ 2084}# #{symname\ 2085}#) (vector-set! #{marksvec\ 2078}# #{i\ 2084}# #{marks\ 2086}#) (#{f\ 2082}# (cdr #{ids\ 2083}#) (#{fx+\ 145}# #{i\ 2084}# 1))))))))) (#{f\ 2082}# #{ids\ 2065}# 0)) (#{make-ribcage\ 265}# #{symnamevec\ 2077}# #{marksvec\ 2078}# #{labelvec\ 2072}#))))) (#{wrap-subst\ 253}# #{w\ 2067}#)))))) (#{extend-ribcage!\ 289}# (lambda (#{ribcage\ 2089}# #{id\ 2090}# #{label\ 2091}#) (begin (#{set-ribcage-symnames!\ 275}# #{ribcage\ 2089}# (cons (#{syntax-object-expression\ 210}# #{id\ 2090}#) (#{ribcage-symnames\ 269}# #{ribcage\ 2089}#))) (#{set-ribcage-marks!\ 277}# #{ribcage\ 2089}# (cons (#{wrap-marks\ 251}# (#{syntax-object-wrap\ 212}# #{id\ 2090}#)) (#{ribcage-marks\ 271}# #{ribcage\ 2089}#))) (#{set-ribcage-labels!\ 279}# #{ribcage\ 2089}# (cons #{label\ 2091}# (#{ribcage-labels\ 273}# #{ribcage\ 2089}#)))))) (#{anti-mark\ 285}# (lambda (#{w\ 2095}#) (#{make-wrap\ 249}# (cons #f (#{wrap-marks\ 251}# #{w\ 2095}#)) (cons 'shift (#{wrap-subst\ 253}# #{w\ 2095}#))))) (#{set-ribcage-labels!\ 279}# (lambda (#{x\ 2098}# #{update\ 2099}#) (vector-set! #{x\ 2098}# 3 #{update\ 2099}#))) (#{set-ribcage-marks!\ 277}# (lambda (#{x\ 2102}# #{update\ 2103}#) (vector-set! #{x\ 2102}# 2 #{update\ 2103}#))) (#{set-ribcage-symnames!\ 275}# (lambda (#{x\ 2106}# #{update\ 2107}#) (vector-set! #{x\ 2106}# 1 #{update\ 2107}#))) (#{ribcage-labels\ 273}# (lambda (#{x\ 2110}#) (vector-ref #{x\ 2110}# 3))) (#{ribcage-marks\ 271}# (lambda (#{x\ 2112}#) (vector-ref #{x\ 2112}# 2))) (#{ribcage-symnames\ 269}# (lambda (#{x\ 2114}#) (vector-ref #{x\ 2114}# 1))) (#{ribcage?\ 267}# (lambda (#{x\ 2116}#) (if (vector? #{x\ 2116}#) (if (= (vector-length #{x\ 2116}#) 4) (eq? (vector-ref #{x\ 2116}# 0) (quote ribcage)) #f) #f))) (#{make-ribcage\ 265}# (lambda (#{symnames\ 2121}# #{marks\ 2122}# #{labels\ 2123}#) (vector 'ribcage #{symnames\ 2121}# #{marks\ 2122}# #{labels\ 2123}#))) (#{gen-labels\ 262}# (lambda (#{ls\ 2127}#) (if (null? #{ls\ 2127}#) '() (cons (#{gen-label\ 260}#) (#{gen-labels\ 262}# (cdr #{ls\ 2127}#)))))) (#{gen-label\ 260}# (lambda () (symbol->string (gensym "i")))) (#{wrap-subst\ 253}# cdr) (#{wrap-marks\ 251}# car) (#{make-wrap\ 249}# cons) (#{id-sym-name&marks\ 247}# (lambda (#{x\ 2129}# #{w\ 2130}#) (if (#{syntax-object?\ 208}# #{x\ 2129}#) (values (#{syntax-object-expression\ 210}# #{x\ 2129}#) (#{join-marks\ 297}# (#{wrap-marks\ 251}# #{w\ 2130}#) (#{wrap-marks\ 251}# (#{syntax-object-wrap\ 212}# #{x\ 2129}#)))) (values #{x\ 2129}# (#{wrap-marks\ 251}# #{w\ 2130}#))))) (#{id?\ 244}# (lambda (#{x\ 2133}#) (if (symbol? #{x\ 2133}#) #t (if (#{syntax-object?\ 208}# #{x\ 2133}#) (symbol? (#{syntax-object-expression\ 210}# #{x\ 2133}#)) #f)))) (#{nonsymbol-id?\ 242}# (lambda (#{x\ 2140}#) (if (#{syntax-object?\ 208}# #{x\ 2140}#) (symbol? (#{syntax-object-expression\ 210}# #{x\ 2140}#)) #f))) (#{global-extend\ 240}# (lambda (#{type\ 2144}# #{sym\ 2145}# #{val\ 2146}#) (#{put-global-definition-hook\ 158}# #{sym\ 2145}# #{type\ 2144}# #{val\ 2146}#))) (#{lookup\ 238}# (lambda (#{x\ 2150}# #{r\ 2151}# #{mod\ 2152}#) (let ((#{t\ 2158}# (assq #{x\ 2150}# #{r\ 2151}#))) (if #{t\ 2158}# (cdr #{t\ 2158}#) (if (symbol? #{x\ 2150}#) (let ((#{t\ 2164}# (#{get-global-definition-hook\ 160}# #{x\ 2150}# #{mod\ 2152}#))) (if #{t\ 2164}# #{t\ 2164}# (quote (global)))) '(displaced-lexical)))))) (#{macros-only-env\ 236}# (lambda (#{r\ 2169}#) (if (null? #{r\ 2169}#) '() (let ((#{a\ 2172}# (car #{r\ 2169}#))) (if (eq? (cadr #{a\ 2172}#) (quote macro)) (cons #{a\ 2172}# (#{macros-only-env\ 236}# (cdr #{r\ 2169}#))) (#{macros-only-env\ 236}# (cdr #{r\ 2169}#))))))) (#{extend-var-env\ 234}# (lambda (#{labels\ 2173}# #{vars\ 2174}# #{r\ 2175}#) (if (null? #{labels\ 2173}#) #{r\ 2175}# (#{extend-var-env\ 234}# (cdr #{labels\ 2173}#) (cdr #{vars\ 2174}#) (cons (cons (car #{labels\ 2173}#) (cons (quote lexical) (car #{vars\ 2174}#))) #{r\ 2175}#))))) (#{extend-env\ 232}# (lambda (#{labels\ 2180}# #{bindings\ 2181}# #{r\ 2182}#) (if (null? #{labels\ 2180}#) #{r\ 2182}# (#{extend-env\ 232}# (cdr #{labels\ 2180}#) (cdr #{bindings\ 2181}#) (cons (cons (car #{labels\ 2180}#) (car #{bindings\ 2181}#)) #{r\ 2182}#))))) (#{binding-value\ 229}# cdr) (#{binding-type\ 227}# car) (#{source-annotation\ 223}# (lambda (#{x\ 2186}#) (if (#{syntax-object?\ 208}# #{x\ 2186}#) (#{source-annotation\ 223}# (#{syntax-object-expression\ 210}# #{x\ 2186}#)) (if (pair? #{x\ 2186}#) (let ((#{props\ 2193}# (source-properties #{x\ 2186}#))) (if (pair? #{props\ 2193}#) #{props\ 2193}# #f)) #f)))) (#{set-syntax-object-module!\ 220}# (lambda (#{x\ 2195}# #{update\ 2196}#) (vector-set! #{x\ 2195}# 3 #{update\ 2196}#))) (#{set-syntax-object-wrap!\ 218}# (lambda (#{x\ 2199}# #{update\ 2200}#) (vector-set! #{x\ 2199}# 2 #{update\ 2200}#))) (#{set-syntax-object-expression!\ 216}# (lambda (#{x\ 2203}# #{update\ 2204}#) (vector-set! #{x\ 2203}# 1 #{update\ 2204}#))) (#{syntax-object-module\ 214}# (lambda (#{x\ 2207}#) (vector-ref #{x\ 2207}# 3))) (#{syntax-object-wrap\ 212}# (lambda (#{x\ 2209}#) (vector-ref #{x\ 2209}# 2))) (#{syntax-object-expression\ 210}# (lambda (#{x\ 2211}#) (vector-ref #{x\ 2211}# 1))) (#{syntax-object?\ 208}# (lambda (#{x\ 2213}#) (if (vector? #{x\ 2213}#) (if (= (vector-length #{x\ 2213}#) 4) (eq? (vector-ref #{x\ 2213}# 0) 'syntax-object) #f) #f))) (#{make-syntax-object\ 206}# (lambda (#{expression\ 2218}# #{wrap\ 2219}# #{module\ 2220}#) (vector 'syntax-object #{expression\ 2218}# #{wrap\ 2219}# #{module\ 2220}#))) (#{build-letrec\ 202}# (lambda (#{src\ 2224}# #{ids\ 2225}# #{vars\ 2226}# #{val-exps\ 2227}# #{body-exp\ 2228}#) (if (null? #{vars\ 2226}#) #{body-exp\ 2228}# (let ((#{atom-key\ 2236}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2236}# (quote (c))) (begin (for-each #{maybe-name-value!\ 182}# #{ids\ 2225}# #{val-exps\ 2227}#) ((@ (language tree-il) make-letrec) #{src\ 2224}# #{ids\ 2225}# #{vars\ 2226}# #{val-exps\ 2227}# #{body-exp\ 2228}#)) (#{decorate-source\ 162}# (list 'letrec (map list #{vars\ 2226}# #{val-exps\ 2227}#) #{body-exp\ 2228}#) #{src\ 2224}#)))))) (#{build-named-let\ 200}# (lambda (#{src\ 2240}# #{ids\ 2241}# #{vars\ 2242}# #{val-exps\ 2243}# #{body-exp\ 2244}#) (let ((#{f\ 2254}# (car #{vars\ 2242}#)) (#{f-name\ 2255}# (car #{ids\ 2241}#)) (#{vars\ 2256}# (cdr #{vars\ 2242}#)) (#{ids\ 2257}# (cdr #{ids\ 2241}#))) (let ((#{atom-key\ 2260}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2260}# (quote (c))) (let ((#{proc\ 2263}# (#{build-simple-lambda\ 186}# #{src\ 2240}# #{ids\ 2257}# #f #{vars\ 2256}# #f #{body-exp\ 2244}#))) (begin (#{maybe-name-value!\ 182}# #{f-name\ 2255}# #{proc\ 2263}#) (for-each #{maybe-name-value!\ 182}# #{ids\ 2257}# #{val-exps\ 2243}#) ((@ (language tree-il) make-letrec) #{src\ 2240}# (list #{f-name\ 2255}#) (list #{f\ 2254}#) (list #{proc\ 2263}#) (#{build-application\ 166}# #{src\ 2240}# (#{build-lexical-reference\ 172}# 'fun #{src\ 2240}# #{f-name\ 2255}# #{f\ 2254}#) #{val-exps\ 2243}#)))) (#{decorate-source\ 162}# (list 'letrec (list (list #{f\ 2254}# (list 'lambda #{vars\ 2256}# #{body-exp\ 2244}#))) (cons #{f\ 2254}# #{val-exps\ 2243}#)) #{src\ 2240}#)))))) (#{build-let\ 198}# (lambda (#{src\ 2266}# #{ids\ 2267}# #{vars\ 2268}# #{val-exps\ 2269}# #{body-exp\ 2270}#) (if (null? #{vars\ 2268}#) #{body-exp\ 2270}# (let ((#{atom-key\ 2278}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2278}# (quote (c))) (begin (for-each #{maybe-name-value!\ 182}# #{ids\ 2267}# #{val-exps\ 2269}#) ((@ (language tree-il) make-let) #{src\ 2266}# #{ids\ 2267}# #{vars\ 2268}# #{val-exps\ 2269}# #{body-exp\ 2270}#)) (#{decorate-source\ 162}# (list 'let (map list #{vars\ 2268}# #{val-exps\ 2269}#) #{body-exp\ 2270}#) #{src\ 2266}#)))))) (#{build-sequence\ 196}# (lambda (#{src\ 2282}# #{exps\ 2283}#) (if (null? (cdr #{exps\ 2283}#)) (car #{exps\ 2283}#) (let ((#{atom-key\ 2288}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2288}# (quote (c))) ((@ (language tree-il) make-sequence) #{src\ 2282}# #{exps\ 2283}#) (#{decorate-source\ 162}# (cons (quote begin) #{exps\ 2283}#) #{src\ 2282}#)))))) (#{build-data\ 194}# (lambda (#{src\ 2292}# #{exp\ 2293}#) (let ((#{atom-key\ 2298}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2298}# (quote (c))) ((@ (language tree-il) make-const) #{src\ 2292}# #{exp\ 2293}#) (#{decorate-source\ 162}# (if (if (self-evaluating? #{exp\ 2293}#) (not (vector? #{exp\ 2293}#)) #f) #{exp\ 2293}# (list (quote quote) #{exp\ 2293}#)) #{src\ 2292}#))))) (#{build-primref\ 192}# (lambda (#{src\ 2303}# #{name\ 2304}#) (if (equal? (module-name (current-module)) '(guile)) (let ((#{atom-key\ 2309}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2309}# (quote (c))) ((@ (language tree-il) make-toplevel-ref) #{src\ 2303}# #{name\ 2304}#) (#{decorate-source\ 162}# #{name\ 2304}# #{src\ 2303}#))) (let ((#{atom-key\ 2314}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2314}# (quote (c))) ((@ (language tree-il) make-module-ref) #{src\ 2303}# '(guile) #{name\ 2304}# #f) (#{decorate-source\ 162}# (list (quote @@) (quote (guile)) #{name\ 2304}#) #{src\ 2303}#)))))) (#{build-lambda-case\ 190}# (lambda (#{src\ 2318}# #{req\ 2319}# #{opt\ 2320}# #{rest\ 2321}# #{kw\ 2322}# #{inits\ 2323}# #{vars\ 2324}# #{body\ 2325}# #{else-case\ 2326}#) (let ((#{atom-key\ 2338}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2338}# (quote (c))) ((@ (language tree-il) make-lambda-case) #{src\ 2318}# #{req\ 2319}# #{opt\ 2320}# #{rest\ 2321}# #{kw\ 2322}# #{inits\ 2323}# #{vars\ 2324}# #{body\ 2325}# #{else-case\ 2326}#) (let ((#{nreq\ 2343}# (length #{req\ 2319}#))) (let ((#{nopt\ 2345}# (if #{opt\ 2320}# (length #{opt\ 2320}#) 0))) (let ((#{rest-idx\ 2347}# (if #{rest\ 2321}# (+ #{nreq\ 2343}# #{nopt\ 2345}#) #f))) (let ((#{allow-other-keys?\ 2351}# (if #{kw\ 2322}# (car #{kw\ 2322}#) #f))) (let ((#{kw-indices\ 2353}# (map (lambda (#{x\ 2354}#) (cons (car #{x\ 2354}#) (list-index #{vars\ 2324}# (caddr #{x\ 2354}#)))) (if #{kw\ 2322}# (cdr #{kw\ 2322}#) '())))) (let ((#{nargs\ 2357}# (apply max (+ #{nreq\ 2343}# #{nopt\ 2345}# (if #{rest\ 2321}# 1 0)) (map 1+ (map cdr #{kw-indices\ 2353}#))))) (begin (let ((#{t\ 2360}# (= #{nargs\ 2357}# (length #{vars\ 2324}#) (+ #{nreq\ 2343}# (length #{inits\ 2323}#) (if #{rest\ 2321}# 1 0))))) (if #{t\ 2360}# #{t\ 2360}# (error "something went wrong" #{req\ 2319}# #{opt\ 2320}# #{rest\ 2321}# #{kw\ 2322}# #{inits\ 2323}# #{vars\ 2324}# #{nreq\ 2343}# #{nopt\ 2345}# #{kw-indices\ 2353}# #{nargs\ 2357}#))) (#{decorate-source\ 162}# (cons (list (cons '(@@ (ice-9 optargs) parse-lambda-case) (cons (list 'quote (list #{nreq\ 2343}# #{nopt\ 2345}# #{rest-idx\ 2347}# #{nargs\ 2357}# #{allow-other-keys?\ 2351}# #{kw-indices\ 2353}#)) (cons (cons 'list (map (lambda (#{i\ 2363}#) (list 'lambda #{vars\ 2324}# #{i\ 2363}#)) #{inits\ 2323}#)) '(%%args)))) '=> (list 'lambda '(%%args) (cons 'apply (cons (list 'lambda #{vars\ 2324}# #{body\ 2325}#) '(%%args))))) (let ((#{t\ 2368}# #{else-case\ 2326}#)) (if #{t\ 2368}# #{t\ 2368}# '((%%args (scm-error 'wrong-number-of-args #f "Wrong number of arguments" '() %%args)))))) #{src\ 2318}#)))))))))))) (#{build-case-lambda\ 188}# (lambda (#{src\ 2371}# #{docstring\ 2372}# #{body\ 2373}#) (let ((#{atom-key\ 2379}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2379}# (quote (c))) ((@ (language tree-il) make-lambda) #{src\ 2371}# (if #{docstring\ 2372}# (list (cons (quote documentation) #{docstring\ 2372}#)) '()) #{body\ 2373}#) (#{decorate-source\ 162}# (cons 'lambda (cons '%%args (append (if #{docstring\ 2372}# (list #{docstring\ 2372}#) '()) (list (cons (quote cond) #{body\ 2373}#))))) #{src\ 2371}#))))) (#{build-simple-lambda\ 186}# (lambda (#{src\ 2384}# #{req\ 2385}# #{rest\ 2386}# #{vars\ 2387}# #{docstring\ 2388}# #{exp\ 2389}#) (let ((#{atom-key\ 2398}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2398}# (quote (c))) ((@ (language tree-il) make-lambda) #{src\ 2384}# (if #{docstring\ 2388}# (list (cons (quote documentation) #{docstring\ 2388}#)) '()) ((@ (language tree-il) make-lambda-case) #{src\ 2384}# #{req\ 2385}# #f #{rest\ 2386}# #f '() #{vars\ 2387}# #{exp\ 2389}# #f)) (#{decorate-source\ 162}# (cons 'lambda (cons (if #{rest\ 2386}# (apply cons* #{vars\ 2387}#) #{vars\ 2387}#) (append (if #{docstring\ 2388}# (list #{docstring\ 2388}#) '()) (list #{exp\ 2389}#)))) #{src\ 2384}#))))) (#{build-global-definition\ 184}# (lambda (#{source\ 2403}# #{var\ 2404}# #{exp\ 2405}#) (let ((#{atom-key\ 2411}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2411}# (quote (c))) (begin (#{maybe-name-value!\ 182}# #{var\ 2404}# #{exp\ 2405}#) ((@ (language tree-il) make-toplevel-define) #{source\ 2403}# #{var\ 2404}# #{exp\ 2405}#)) (#{decorate-source\ 162}# (list (quote define) #{var\ 2404}# #{exp\ 2405}#) #{source\ 2403}#))))) (#{maybe-name-value!\ 182}# (lambda (#{name\ 2415}# #{val\ 2416}#) (if ((@ (language tree-il) lambda?) #{val\ 2416}#) (let ((#{meta\ 2422}# ((@ (language tree-il) lambda-meta) #{val\ 2416}#))) (if (not (assq (quote name) #{meta\ 2422}#)) ((setter (@ (language tree-il) lambda-meta)) #{val\ 2416}# (acons 'name #{name\ 2415}# #{meta\ 2422}#))))))) (#{build-global-assignment\ 180}# (lambda (#{source\ 2423}# #{var\ 2424}# #{exp\ 2425}# #{mod\ 2426}#) (#{analyze-variable\ 176}# #{mod\ 2426}# #{var\ 2424}# (lambda (#{mod\ 2431}# #{var\ 2432}# #{public?\ 2433}#) (let ((#{atom-key\ 2439}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2439}# (quote (c))) ((@ (language tree-il) make-module-set) #{source\ 2423}# #{mod\ 2431}# #{var\ 2432}# #{public?\ 2433}# #{exp\ 2425}#) (#{decorate-source\ 162}# (list 'set! (list (if #{public?\ 2433}# '@ '@@) #{mod\ 2431}# #{var\ 2432}#) #{exp\ 2425}#) #{source\ 2423}#)))) (lambda (#{var\ 2443}#) (let ((#{atom-key\ 2447}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2447}# (quote (c))) ((@ (language tree-il) make-toplevel-set) #{source\ 2423}# #{var\ 2443}# #{exp\ 2425}#) (#{decorate-source\ 162}# (list (quote set!) #{var\ 2443}# #{exp\ 2425}#) #{source\ 2423}#))))))) (#{build-global-reference\ 178}# (lambda (#{source\ 2451}# #{var\ 2452}# #{mod\ 2453}#) (#{analyze-variable\ 176}# #{mod\ 2453}# #{var\ 2452}# (lambda (#{mod\ 2457}# #{var\ 2458}# #{public?\ 2459}#) (let ((#{atom-key\ 2465}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2465}# (quote (c))) ((@ (language tree-il) make-module-ref) #{source\ 2451}# #{mod\ 2457}# #{var\ 2458}# #{public?\ 2459}#) (#{decorate-source\ 162}# (list (if #{public?\ 2459}# (quote @) (quote @@)) #{mod\ 2457}# #{var\ 2458}#) #{source\ 2451}#)))) (lambda (#{var\ 2468}#) (let ((#{atom-key\ 2472}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2472}# (quote (c))) ((@ (language tree-il) make-toplevel-ref) #{source\ 2451}# #{var\ 2468}#) (#{decorate-source\ 162}# #{var\ 2468}# #{source\ 2451}#))))))) (#{analyze-variable\ 176}# (lambda (#{mod\ 2475}# #{var\ 2476}# #{modref-cont\ 2477}# #{bare-cont\ 2478}#) (if (not #{mod\ 2475}#) (#{bare-cont\ 2478}# #{var\ 2476}#) (let ((#{kind\ 2485}# (car #{mod\ 2475}#)) (#{mod\ 2486}# (cdr #{mod\ 2475}#))) (if (memv #{kind\ 2485}# (quote (public))) (#{modref-cont\ 2477}# #{mod\ 2486}# #{var\ 2476}# #t) (if (memv #{kind\ 2485}# (quote (private))) (if (not (equal? #{mod\ 2486}# (module-name (current-module)))) (#{modref-cont\ 2477}# #{mod\ 2486}# #{var\ 2476}# #f) (#{bare-cont\ 2478}# #{var\ 2476}#)) (if (memv #{kind\ 2485}# (quote (bare))) (#{bare-cont\ 2478}# #{var\ 2476}#) (if (memv #{kind\ 2485}# (quote (hygiene))) (if (if (not (equal? #{mod\ 2486}# (module-name (current-module)))) (module-variable (resolve-module #{mod\ 2486}#) #{var\ 2476}#) #f) (#{modref-cont\ 2477}# #{mod\ 2486}# #{var\ 2476}# #f) (#{bare-cont\ 2478}# #{var\ 2476}#)) (syntax-violation #f "bad module kind" #{var\ 2476}# #{mod\ 2486}#))))))))) (#{build-lexical-assignment\ 174}# (lambda (#{source\ 2494}# #{name\ 2495}# #{var\ 2496}# #{exp\ 2497}#) (let ((#{atom-key\ 2504}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2504}# (quote (c))) ((@ (language tree-il) make-lexical-set) #{source\ 2494}# #{name\ 2495}# #{var\ 2496}# #{exp\ 2497}#) (#{decorate-source\ 162}# (list (quote set!) #{var\ 2496}# #{exp\ 2497}#) #{source\ 2494}#))))) (#{build-lexical-reference\ 172}# (lambda (#{type\ 2508}# #{source\ 2509}# #{name\ 2510}# #{var\ 2511}#) (let ((#{atom-key\ 2518}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2518}# (quote (c))) ((@ (language tree-il) make-lexical-ref) #{source\ 2509}# #{name\ 2510}# #{var\ 2511}#) (#{decorate-source\ 162}# #{var\ 2511}# #{source\ 2509}#))))) (#{build-dynlet\ 170}# (lambda (#{source\ 2521}# #{fluids\ 2522}# #{vals\ 2523}# #{body\ 2524}#) (let ((#{atom-key\ 2531}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2531}# (quote (c))) ((@ (language tree-il) make-dynlet) #{source\ 2521}# #{fluids\ 2522}# #{vals\ 2523}# #{body\ 2524}#) (#{decorate-source\ 162}# (list 'with-fluids (map list #{fluids\ 2522}# #{vals\ 2523}#) #{body\ 2524}#) #{source\ 2521}#))))) (#{build-conditional\ 168}# (lambda (#{source\ 2535}# #{test-exp\ 2536}# #{then-exp\ 2537}# #{else-exp\ 2538}#) (let ((#{atom-key\ 2545}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2545}# (quote (c))) ((@ (language tree-il) make-conditional) #{source\ 2535}# #{test-exp\ 2536}# #{then-exp\ 2537}# #{else-exp\ 2538}#) (#{decorate-source\ 162}# (if (equal? #{else-exp\ 2538}# (quote (if #f #f))) (list 'if #{test-exp\ 2536}# #{then-exp\ 2537}#) (list 'if #{test-exp\ 2536}# #{then-exp\ 2537}# #{else-exp\ 2538}#)) #{source\ 2535}#))))) (#{build-application\ 166}# (lambda (#{source\ 2550}# #{fun-exp\ 2551}# #{arg-exps\ 2552}#) (let ((#{atom-key\ 2558}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2558}# (quote (c))) ((@ (language tree-il) make-application) #{source\ 2550}# #{fun-exp\ 2551}# #{arg-exps\ 2552}#) (#{decorate-source\ 162}# (cons #{fun-exp\ 2551}# #{arg-exps\ 2552}#) #{source\ 2550}#))))) (#{build-void\ 164}# (lambda (#{source\ 2562}#) (let ((#{atom-key\ 2566}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2566}# (quote (c))) ((@ (language tree-il) make-void) #{source\ 2562}#) (#{decorate-source\ 162}# '(if #f #f) #{source\ 2562}#))))) (#{decorate-source\ 162}# (lambda (#{e\ 2569}# #{s\ 2570}#) (begin (if (if (pair? #{e\ 2569}#) #{s\ 2570}# #f) (set-source-properties! #{e\ 2569}# #{s\ 2570}#)) #{e\ 2569}#))) (#{get-global-definition-hook\ 160}# (lambda (#{symbol\ 2575}# #{module\ 2576}#) (begin (if (if (not #{module\ 2576}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol\ 2575}#)) (let ((#{v\ 2582}# (module-variable (if #{module\ 2576}# (resolve-module (cdr #{module\ 2576}#)) (current-module)) #{symbol\ 2575}#))) (if #{v\ 2582}# (if (variable-bound? #{v\ 2582}#) (let ((#{val\ 2587}# (variable-ref #{v\ 2582}#))) (if (macro? #{val\ 2587}#) (if (macro-type #{val\ 2587}#) (cons (macro-type #{val\ 2587}#) (macro-binding #{val\ 2587}#)) #f) #f)) #f) #f))))) (#{put-global-definition-hook\ 158}# (lambda (#{symbol\ 2591}# #{type\ 2592}# #{val\ 2593}#) (module-define! (current-module) #{symbol\ 2591}# (make-syntax-transformer #{symbol\ 2591}# #{type\ 2592}# #{val\ 2593}#)))) (#{local-eval-hook\ 155}# (lambda (#{x\ 2597}# #{mod\ 2598}#) (primitive-eval (list #{noexpand\ 141}# (let ((#{atom-key\ 2604}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2604}# (quote (c))) ((@ (language tree-il) tree-il->scheme) #{x\ 2597}#) #{x\ 2597}#)))))) (#{top-level-eval-hook\ 153}# (lambda (#{x\ 2607}# #{mod\ 2608}#) (primitive-eval (list #{noexpand\ 141}# (let ((#{atom-key\ 2614}# (fluid-ref #{*mode*\ 143}#))) (if (memv #{atom-key\ 2614}# (quote (c))) ((@ (language tree-il) tree-il->scheme) #{x\ 2607}#) #{x\ 2607}#)))))) (#{fx<\ 151}# <) (#{fx=\ 149}# =) (#{fx-\ 147}# -) (#{fx+\ 145}# +) (#{*mode*\ 143}# (make-fluid)) (#{noexpand\ 141}# "noexpand")) (begin (#{global-extend\ 240}# 'local-syntax 'letrec-syntax #t) (#{global-extend\ 240}# 'local-syntax 'let-syntax #f) (#{global-extend\ 240}# 'core 'fluid-let-syntax (lambda (#{e\ 2617}# #{r\ 2618}# #{w\ 2619}# #{s\ 2620}# #{mod\ 2621}#) ((lambda (#{tmp\ 2627}#) ((lambda (#{tmp\ 2628}#) (if (if #{tmp\ 2628}# (apply (lambda (#{_\ 2634}# #{var\ 2635}# #{val\ 2636}# #{e1\ 2637}# #{e2\ 2638}#) (#{valid-bound-ids?\ 307}# #{var\ 2635}#)) #{tmp\ 2628}#) #f) (apply (lambda (#{_\ 2645}# #{var\ 2646}# #{val\ 2647}# #{e1\ 2648}# #{e2\ 2649}#) (let ((#{names\ 2651}# (map (lambda (#{x\ 2652}#) (#{id-var-name\ 301}# #{x\ 2652}# #{w\ 2619}#)) #{var\ 2646}#))) (begin (for-each (lambda (#{id\ 2655}# #{n\ 2656}#) (let ((#{atom-key\ 2661}# (#{binding-type\ 227}# (#{lookup\ 238}# #{n\ 2656}# #{r\ 2618}# #{mod\ 2621}#)))) (if (memv #{atom-key\ 2661}# '(displaced-lexical)) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 2617}# (#{source-wrap\ 315}# #{id\ 2655}# #{w\ 2619}# #{s\ 2620}# #{mod\ 2621}#))))) #{var\ 2646}# #{names\ 2651}#) (#{chi-body\ 337}# (cons #{e1\ 2648}# #{e2\ 2649}#) (#{source-wrap\ 315}# #{e\ 2617}# #{w\ 2619}# #{s\ 2620}# #{mod\ 2621}#) (#{extend-env\ 232}# #{names\ 2651}# (let ((#{trans-r\ 2666}# (#{macros-only-env\ 236}# #{r\ 2618}#))) (map (lambda (#{x\ 2667}#) (cons 'macro (#{eval-local-transformer\ 341}# (#{chi\ 329}# #{x\ 2667}# #{trans-r\ 2666}# #{w\ 2619}# #{mod\ 2621}#) #{mod\ 2621}#))) #{val\ 2647}#)) #{r\ 2618}#) #{w\ 2619}# #{mod\ 2621}#)))) #{tmp\ 2628}#) ((lambda (#{_\ 2672}#) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 315}# #{e\ 2617}# #{w\ 2619}# #{s\ 2620}# #{mod\ 2621}#))) #{tmp\ 2627}#))) ($sc-dispatch #{tmp\ 2627}# '(any #(each (any any)) any . each-any)))) #{e\ 2617}#))) (#{global-extend\ 240}# 'core 'quote (lambda (#{e\ 2673}# #{r\ 2674}# #{w\ 2675}# #{s\ 2676}# #{mod\ 2677}#) ((lambda (#{tmp\ 2683}#) ((lambda (#{tmp\ 2684}#) (if #{tmp\ 2684}# (apply (lambda (#{_\ 2687}# #{e\ 2688}#) (#{build-data\ 194}# #{s\ 2676}# (#{strip\ 355}# #{e\ 2688}# #{w\ 2675}#))) #{tmp\ 2684}#) ((lambda (#{_\ 2690}#) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 315}# #{e\ 2673}# #{w\ 2675}# #{s\ 2676}# #{mod\ 2677}#))) #{tmp\ 2683}#))) ($sc-dispatch #{tmp\ 2683}# (quote (any any))))) #{e\ 2673}#))) (#{global-extend\ 240}# 'core 'syntax (letrec ((#{regen\ 2706}# (lambda (#{x\ 2707}#) (let ((#{atom-key\ 2711}# (car #{x\ 2707}#))) (if (memv #{atom-key\ 2711}# (quote (ref))) (#{build-lexical-reference\ 172}# 'value #f (cadr #{x\ 2707}#) (cadr #{x\ 2707}#)) (if (memv #{atom-key\ 2711}# (quote (primitive))) (#{build-primref\ 192}# #f (cadr #{x\ 2707}#)) (if (memv #{atom-key\ 2711}# (quote (quote))) (#{build-data\ 194}# #f (cadr #{x\ 2707}#)) (if (memv #{atom-key\ 2711}# (quote (lambda))) (if (list? (cadr #{x\ 2707}#)) (#{build-simple-lambda\ 186}# #f (cadr #{x\ 2707}#) #f (cadr #{x\ 2707}#) #f (#{regen\ 2706}# (caddr #{x\ 2707}#))) (error "how did we get here" #{x\ 2707}#)) (#{build-application\ 166}# #f (#{build-primref\ 192}# #f (car #{x\ 2707}#)) (map #{regen\ 2706}# (cdr #{x\ 2707}#)))))))))) (#{gen-vector\ 2704}# (lambda (#{x\ 2723}#) (if (eq? (car #{x\ 2723}#) (quote list)) (cons (quote vector) (cdr #{x\ 2723}#)) (if (eq? (car #{x\ 2723}#) (quote quote)) (list 'quote (list->vector (cadr #{x\ 2723}#))) (list (quote list->vector) #{x\ 2723}#))))) (#{gen-append\ 2702}# (lambda (#{x\ 2733}# #{y\ 2734}#) (if (equal? #{y\ 2734}# (quote (quote ()))) #{x\ 2733}# (list (quote append) #{x\ 2733}# #{y\ 2734}#)))) (#{gen-cons\ 2700}# (lambda (#{x\ 2738}# #{y\ 2739}#) (let ((#{atom-key\ 2744}# (car #{y\ 2739}#))) (if (memv #{atom-key\ 2744}# (quote (quote))) (if (eq? (car #{x\ 2738}#) (quote quote)) (list 'quote (cons (cadr #{x\ 2738}#) (cadr #{y\ 2739}#))) (if (eq? (cadr #{y\ 2739}#) (quote ())) (list (quote list) #{x\ 2738}#) (list (quote cons) #{x\ 2738}# #{y\ 2739}#))) (if (memv #{atom-key\ 2744}# (quote (list))) (cons 'list (cons #{x\ 2738}# (cdr #{y\ 2739}#))) (list (quote cons) #{x\ 2738}# #{y\ 2739}#)))))) (#{gen-map\ 2698}# (lambda (#{e\ 2753}# #{map-env\ 2754}#) (let ((#{formals\ 2759}# (map cdr #{map-env\ 2754}#)) (#{actuals\ 2760}# (map (lambda (#{x\ 2761}#) (list (quote ref) (car #{x\ 2761}#))) #{map-env\ 2754}#))) (if (eq? (car #{e\ 2753}#) (quote ref)) (car #{actuals\ 2760}#) (if (and-map (lambda (#{x\ 2768}#) (if (eq? (car #{x\ 2768}#) (quote ref)) (memq (cadr #{x\ 2768}#) #{formals\ 2759}#) #f)) (cdr #{e\ 2753}#)) (cons 'map (cons (list 'primitive (car #{e\ 2753}#)) (map (let ((#{r\ 2774}# (map cons #{formals\ 2759}# #{actuals\ 2760}#))) (lambda (#{x\ 2775}#) (cdr (assq (cadr #{x\ 2775}#) #{r\ 2774}#)))) (cdr #{e\ 2753}#)))) (cons 'map (cons (list 'lambda #{formals\ 2759}# #{e\ 2753}#) #{actuals\ 2760}#))))))) (#{gen-mappend\ 2696}# (lambda (#{e\ 2779}# #{map-env\ 2780}#) (list 'apply '(primitive append) (#{gen-map\ 2698}# #{e\ 2779}# #{map-env\ 2780}#)))) (#{gen-ref\ 2694}# (lambda (#{src\ 2784}# #{var\ 2785}# #{level\ 2786}# #{maps\ 2787}#) (if (#{fx=\ 149}# #{level\ 2786}# 0) (values #{var\ 2785}# #{maps\ 2787}#) (if (null? #{maps\ 2787}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 2784}#) (call-with-values (lambda () (#{gen-ref\ 2694}# #{src\ 2784}# #{var\ 2785}# (#{fx-\ 147}# #{level\ 2786}# 1) (cdr #{maps\ 2787}#))) (lambda (#{outer-var\ 2792}# #{outer-maps\ 2793}#) (let ((#{b\ 2797}# (assq #{outer-var\ 2792}# (car #{maps\ 2787}#)))) (if #{b\ 2797}# (values (cdr #{b\ 2797}#) #{maps\ 2787}#) (let ((#{inner-var\ 2799}# (#{gen-var\ 357}# (quote tmp)))) (values #{inner-var\ 2799}# (cons (cons (cons #{outer-var\ 2792}# #{inner-var\ 2799}#) (car #{maps\ 2787}#)) #{outer-maps\ 2793}#))))))))))) (#{gen-syntax\ 2692}# (lambda (#{src\ 2800}# #{e\ 2801}# #{r\ 2802}# #{maps\ 2803}# #{ellipsis?\ 2804}# #{mod\ 2805}#) (if (#{id?\ 244}# #{e\ 2801}#) (let ((#{label\ 2813}# (#{id-var-name\ 301}# #{e\ 2801}# '(())))) (let ((#{b\ 2816}# (#{lookup\ 238}# #{label\ 2813}# #{r\ 2802}# #{mod\ 2805}#))) (if (eq? (#{binding-type\ 227}# #{b\ 2816}#) 'syntax) (call-with-values (lambda () (let ((#{var.lev\ 2818}# (#{binding-value\ 229}# #{b\ 2816}#))) (#{gen-ref\ 2694}# #{src\ 2800}# (car #{var.lev\ 2818}#) (cdr #{var.lev\ 2818}#) #{maps\ 2803}#))) (lambda (#{var\ 2819}# #{maps\ 2820}#) (values (list (quote ref) #{var\ 2819}#) #{maps\ 2820}#))) (if (#{ellipsis?\ 2804}# #{e\ 2801}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 2800}#) (values (list (quote quote) #{e\ 2801}#) #{maps\ 2803}#))))) ((lambda (#{tmp\ 2825}#) ((lambda (#{tmp\ 2826}#) (if (if #{tmp\ 2826}# (apply (lambda (#{dots\ 2829}# #{e\ 2830}#) (#{ellipsis?\ 2804}# #{dots\ 2829}#)) #{tmp\ 2826}#) #f) (apply (lambda (#{dots\ 2833}# #{e\ 2834}#) (#{gen-syntax\ 2692}# #{src\ 2800}# #{e\ 2834}# #{r\ 2802}# #{maps\ 2803}# (lambda (#{x\ 2835}#) #f) #{mod\ 2805}#)) #{tmp\ 2826}#) ((lambda (#{tmp\ 2837}#) (if (if #{tmp\ 2837}# (apply (lambda (#{x\ 2841}# #{dots\ 2842}# #{y\ 2843}#) (#{ellipsis?\ 2804}# #{dots\ 2842}#)) #{tmp\ 2837}#) #f) (apply (lambda (#{x\ 2847}# #{dots\ 2848}# #{y\ 2849}#) (letrec ((#{f\ 2853}# (lambda (#{y\ 2854}# #{k\ 2855}#) ((lambda (#{tmp\ 2862}#) ((lambda (#{tmp\ 2863}#) (if (if #{tmp\ 2863}# (apply (lambda (#{dots\ 2866}# #{y\ 2867}#) (#{ellipsis?\ 2804}# #{dots\ 2866}#)) #{tmp\ 2863}#) #f) (apply (lambda (#{dots\ 2870}# #{y\ 2871}#) (#{f\ 2853}# #{y\ 2871}# (lambda (#{maps\ 2872}#) (call-with-values (lambda () (#{k\ 2855}# (cons '() #{maps\ 2872}#))) (lambda (#{x\ 2874}# #{maps\ 2875}#) (if (null? (car #{maps\ 2875}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2800}#) (values (#{gen-mappend\ 2696}# #{x\ 2874}# (car #{maps\ 2875}#)) (cdr #{maps\ 2875}#)))))))) #{tmp\ 2863}#) ((lambda (#{_\ 2879}#) (call-with-values (lambda () (#{gen-syntax\ 2692}# #{src\ 2800}# #{y\ 2854}# #{r\ 2802}# #{maps\ 2803}# #{ellipsis?\ 2804}# #{mod\ 2805}#)) (lambda (#{y\ 2880}# #{maps\ 2881}#) (call-with-values (lambda () (#{k\ 2855}# #{maps\ 2881}#)) (lambda (#{x\ 2884}# #{maps\ 2885}#) (values (#{gen-append\ 2702}# #{x\ 2884}# #{y\ 2880}#) #{maps\ 2885}#)))))) #{tmp\ 2862}#))) ($sc-dispatch #{tmp\ 2862}# '(any . any)))) #{y\ 2854}#)))) (#{f\ 2853}# #{y\ 2849}# (lambda (#{maps\ 2856}#) (call-with-values (lambda () (#{gen-syntax\ 2692}# #{src\ 2800}# #{x\ 2847}# #{r\ 2802}# (cons '() #{maps\ 2856}#) #{ellipsis?\ 2804}# #{mod\ 2805}#)) (lambda (#{x\ 2858}# #{maps\ 2859}#) (if (null? (car #{maps\ 2859}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2800}#) (values (#{gen-map\ 2698}# #{x\ 2858}# (car #{maps\ 2859}#)) (cdr #{maps\ 2859}#))))))))) #{tmp\ 2837}#) ((lambda (#{tmp\ 2888}#) (if #{tmp\ 2888}# (apply (lambda (#{x\ 2891}# #{y\ 2892}#) (call-with-values (lambda () (#{gen-syntax\ 2692}# #{src\ 2800}# #{x\ 2891}# #{r\ 2802}# #{maps\ 2803}# #{ellipsis?\ 2804}# #{mod\ 2805}#)) (lambda (#{x\ 2893}# #{maps\ 2894}#) (call-with-values (lambda () (#{gen-syntax\ 2692}# #{src\ 2800}# #{y\ 2892}# #{r\ 2802}# #{maps\ 2894}# #{ellipsis?\ 2804}# #{mod\ 2805}#)) (lambda (#{y\ 2897}# #{maps\ 2898}#) (values (#{gen-cons\ 2700}# #{x\ 2893}# #{y\ 2897}#) #{maps\ 2898}#)))))) #{tmp\ 2888}#) ((lambda (#{tmp\ 2901}#) (if #{tmp\ 2901}# (apply (lambda (#{e1\ 2904}# #{e2\ 2905}#) (call-with-values (lambda () (#{gen-syntax\ 2692}# #{src\ 2800}# (cons #{e1\ 2904}# #{e2\ 2905}#) #{r\ 2802}# #{maps\ 2803}# #{ellipsis?\ 2804}# #{mod\ 2805}#)) (lambda (#{e\ 2907}# #{maps\ 2908}#) (values (#{gen-vector\ 2704}# #{e\ 2907}#) #{maps\ 2908}#)))) #{tmp\ 2901}#) ((lambda (#{_\ 2912}#) (values (list 'quote #{e\ 2801}#) #{maps\ 2803}#)) #{tmp\ 2825}#))) ($sc-dispatch #{tmp\ 2825}# '#(vector (any . each-any)))))) ($sc-dispatch #{tmp\ 2825}# '(any . any))))) ($sc-dispatch #{tmp\ 2825}# '(any any . any))))) ($sc-dispatch #{tmp\ 2825}# (quote (any any))))) #{e\ 2801}#))))) (lambda (#{e\ 2914}# #{r\ 2915}# #{w\ 2916}# #{s\ 2917}# #{mod\ 2918}#) (let ((#{e\ 2925}# (#{source-wrap\ 315}# #{e\ 2914}# #{w\ 2916}# #{s\ 2917}# #{mod\ 2918}#))) ((lambda (#{tmp\ 2926}#) ((lambda (#{tmp\ 2927}#) (if #{tmp\ 2927}# (apply (lambda (#{_\ 2930}# #{x\ 2931}#) (call-with-values (lambda () (#{gen-syntax\ 2692}# #{e\ 2925}# #{x\ 2931}# #{r\ 2915}# '() #{ellipsis?\ 345}# #{mod\ 2918}#)) (lambda (#{e\ 2932}# #{maps\ 2933}#) (#{regen\ 2706}# #{e\ 2932}#)))) #{tmp\ 2927}#) ((lambda (#{_\ 2937}#) (syntax-violation 'syntax "bad `syntax' form" #{e\ 2925}#)) #{tmp\ 2926}#))) ($sc-dispatch #{tmp\ 2926}# (quote (any any))))) #{e\ 2925}#))))) (#{global-extend\ 240}# 'core 'lambda (lambda (#{e\ 2938}# #{r\ 2939}# #{w\ 2940}# #{s\ 2941}# #{mod\ 2942}#) ((lambda (#{tmp\ 2948}#) ((lambda (#{tmp\ 2949}#) (if (if #{tmp\ 2949}# (apply (lambda (#{_\ 2955}# #{args\ 2956}# #{docstring\ 2957}# #{e1\ 2958}# #{e2\ 2959}#) (string? (syntax->datum #{docstring\ 2957}#))) #{tmp\ 2949}#) #f) (apply (lambda (#{_\ 2965}# #{args\ 2966}# #{docstring\ 2967}# #{e1\ 2968}# #{e2\ 2969}#) (call-with-values (lambda () (#{lambda-formals\ 347}# #{args\ 2966}#)) (lambda (#{req\ 2970}# #{opt\ 2971}# #{rest\ 2972}# #{kw\ 2973}#) (#{chi-simple-lambda\ 349}# #{e\ 2938}# #{r\ 2939}# #{w\ 2940}# #{s\ 2941}# #{mod\ 2942}# #{req\ 2970}# #{rest\ 2972}# (syntax->datum #{docstring\ 2967}#) (cons #{e1\ 2968}# #{e2\ 2969}#))))) #{tmp\ 2949}#) ((lambda (#{tmp\ 2979}#) (if #{tmp\ 2979}# (apply (lambda (#{_\ 2984}# #{args\ 2985}# #{e1\ 2986}# #{e2\ 2987}#) (call-with-values (lambda () (#{lambda-formals\ 347}# #{args\ 2985}#)) (lambda (#{req\ 2988}# #{opt\ 2989}# #{rest\ 2990}# #{kw\ 2991}#) (#{chi-simple-lambda\ 349}# #{e\ 2938}# #{r\ 2939}# #{w\ 2940}# #{s\ 2941}# #{mod\ 2942}# #{req\ 2988}# #{rest\ 2990}# #f (cons #{e1\ 2986}# #{e2\ 2987}#))))) #{tmp\ 2979}#) ((lambda (#{_\ 2998}#) (syntax-violation 'lambda "bad lambda" #{e\ 2938}#)) #{tmp\ 2948}#))) ($sc-dispatch #{tmp\ 2948}# '(any any any . each-any))))) ($sc-dispatch #{tmp\ 2948}# '(any any any any . each-any)))) #{e\ 2938}#))) (#{global-extend\ 240}# 'core 'lambda* (lambda (#{e\ 2999}# #{r\ 3000}# #{w\ 3001}# #{s\ 3002}# #{mod\ 3003}#) ((lambda (#{tmp\ 3009}#) ((lambda (#{tmp\ 3010}#) (if #{tmp\ 3010}# (apply (lambda (#{_\ 3015}# #{args\ 3016}# #{e1\ 3017}# #{e2\ 3018}#) (call-with-values (lambda () (#{chi-lambda-case\ 353}# #{e\ 2999}# #{r\ 3000}# #{w\ 3001}# #{s\ 3002}# #{mod\ 3003}# #{lambda*-formals\ 351}# (list (cons #{args\ 3016}# (cons #{e1\ 3017}# #{e2\ 3018}#))))) (lambda (#{docstring\ 3020}# #{lcase\ 3021}#) (#{build-case-lambda\ 188}# #{s\ 3002}# #{docstring\ 3020}# #{lcase\ 3021}#)))) #{tmp\ 3010}#) ((lambda (#{_\ 3025}#) (syntax-violation 'lambda "bad lambda*" #{e\ 2999}#)) #{tmp\ 3009}#))) ($sc-dispatch #{tmp\ 3009}# '(any any any . each-any)))) #{e\ 2999}#))) (#{global-extend\ 240}# 'core 'case-lambda (lambda (#{e\ 3026}# #{r\ 3027}# #{w\ 3028}# #{s\ 3029}# #{mod\ 3030}#) ((lambda (#{tmp\ 3036}#) ((lambda (#{tmp\ 3037}#) (if #{tmp\ 3037}# (apply (lambda (#{_\ 3045}# #{args\ 3046}# #{e1\ 3047}# #{e2\ 3048}# #{args*\ 3049}# #{e1*\ 3050}# #{e2*\ 3051}#) (call-with-values (lambda () (#{chi-lambda-case\ 353}# #{e\ 3026}# #{r\ 3027}# #{w\ 3028}# #{s\ 3029}# #{mod\ 3030}# #{lambda-formals\ 347}# (cons (cons #{args\ 3046}# (cons #{e1\ 3047}# #{e2\ 3048}#)) (map (lambda (#{tmp\ 3055}# #{tmp\ 3054}# #{tmp\ 3053}#) (cons #{tmp\ 3053}# (cons #{tmp\ 3054}# #{tmp\ 3055}#))) #{e2*\ 3051}# #{e1*\ 3050}# #{args*\ 3049}#)))) (lambda (#{docstring\ 3057}# #{lcase\ 3058}#) (#{build-case-lambda\ 188}# #{s\ 3029}# #{docstring\ 3057}# #{lcase\ 3058}#)))) #{tmp\ 3037}#) ((lambda (#{_\ 3062}#) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 3026}#)) #{tmp\ 3036}#))) ($sc-dispatch #{tmp\ 3036}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 3026}#))) (#{global-extend\ 240}# 'core 'case-lambda* (lambda (#{e\ 3063}# #{r\ 3064}# #{w\ 3065}# #{s\ 3066}# #{mod\ 3067}#) ((lambda (#{tmp\ 3073}#) ((lambda (#{tmp\ 3074}#) (if #{tmp\ 3074}# (apply (lambda (#{_\ 3082}# #{args\ 3083}# #{e1\ 3084}# #{e2\ 3085}# #{args*\ 3086}# #{e1*\ 3087}# #{e2*\ 3088}#) (call-with-values (lambda () (#{chi-lambda-case\ 353}# #{e\ 3063}# #{r\ 3064}# #{w\ 3065}# #{s\ 3066}# #{mod\ 3067}# #{lambda*-formals\ 351}# (cons (cons #{args\ 3083}# (cons #{e1\ 3084}# #{e2\ 3085}#)) (map (lambda (#{tmp\ 3092}# #{tmp\ 3091}# #{tmp\ 3090}#) (cons #{tmp\ 3090}# (cons #{tmp\ 3091}# #{tmp\ 3092}#))) #{e2*\ 3088}# #{e1*\ 3087}# #{args*\ 3086}#)))) (lambda (#{docstring\ 3094}# #{lcase\ 3095}#) (#{build-case-lambda\ 188}# #{s\ 3066}# #{docstring\ 3094}# #{lcase\ 3095}#)))) #{tmp\ 3074}#) ((lambda (#{_\ 3099}#) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 3063}#)) #{tmp\ 3073}#))) ($sc-dispatch #{tmp\ 3073}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 3063}#))) (#{global-extend\ 240}# 'core 'let (letrec ((#{chi-let\ 3101}# (lambda (#{e\ 3102}# #{r\ 3103}# #{w\ 3104}# #{s\ 3105}# #{mod\ 3106}# #{constructor\ 3107}# #{ids\ 3108}# #{vals\ 3109}# #{exps\ 3110}#) (if (not (#{valid-bound-ids?\ 307}# #{ids\ 3108}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 3102}#) (let ((#{labels\ 3122}# (#{gen-labels\ 262}# #{ids\ 3108}#)) (#{new-vars\ 3123}# (map #{gen-var\ 357}# #{ids\ 3108}#))) (let ((#{nw\ 3126}# (#{make-binding-wrap\ 291}# #{ids\ 3108}# #{labels\ 3122}# #{w\ 3104}#)) (#{nr\ 3127}# (#{extend-var-env\ 234}# #{labels\ 3122}# #{new-vars\ 3123}# #{r\ 3103}#))) (#{constructor\ 3107}# #{s\ 3105}# (map syntax->datum #{ids\ 3108}#) #{new-vars\ 3123}# (map (lambda (#{x\ 3128}#) (#{chi\ 329}# #{x\ 3128}# #{r\ 3103}# #{w\ 3104}# #{mod\ 3106}#)) #{vals\ 3109}#) (#{chi-body\ 337}# #{exps\ 3110}# (#{source-wrap\ 315}# #{e\ 3102}# #{nw\ 3126}# #{s\ 3105}# #{mod\ 3106}#) #{nr\ 3127}# #{nw\ 3126}# #{mod\ 3106}#)))))))) (lambda (#{e\ 3130}# #{r\ 3131}# #{w\ 3132}# #{s\ 3133}# #{mod\ 3134}#) ((lambda (#{tmp\ 3140}#) ((lambda (#{tmp\ 3141}#) (if (if #{tmp\ 3141}# (apply (lambda (#{_\ 3147}# #{id\ 3148}# #{val\ 3149}# #{e1\ 3150}# #{e2\ 3151}#) (and-map #{id?\ 244}# #{id\ 3148}#)) #{tmp\ 3141}#) #f) (apply (lambda (#{_\ 3158}# #{id\ 3159}# #{val\ 3160}# #{e1\ 3161}# #{e2\ 3162}#) (#{chi-let\ 3101}# #{e\ 3130}# #{r\ 3131}# #{w\ 3132}# #{s\ 3133}# #{mod\ 3134}# #{build-let\ 198}# #{id\ 3159}# #{val\ 3160}# (cons #{e1\ 3161}# #{e2\ 3162}#))) #{tmp\ 3141}#) ((lambda (#{tmp\ 3166}#) (if (if #{tmp\ 3166}# (apply (lambda (#{_\ 3173}# #{f\ 3174}# #{id\ 3175}# #{val\ 3176}# #{e1\ 3177}# #{e2\ 3178}#) (if (#{id?\ 244}# #{f\ 3174}#) (and-map #{id?\ 244}# #{id\ 3175}#) #f)) #{tmp\ 3166}#) #f) (apply (lambda (#{_\ 3188}# #{f\ 3189}# #{id\ 3190}# #{val\ 3191}# #{e1\ 3192}# #{e2\ 3193}#) (#{chi-let\ 3101}# #{e\ 3130}# #{r\ 3131}# #{w\ 3132}# #{s\ 3133}# #{mod\ 3134}# #{build-named-let\ 200}# (cons #{f\ 3189}# #{id\ 3190}#) #{val\ 3191}# (cons #{e1\ 3192}# #{e2\ 3193}#))) #{tmp\ 3166}#) ((lambda (#{_\ 3198}#) (syntax-violation 'let "bad let" (#{source-wrap\ 315}# #{e\ 3130}# #{w\ 3132}# #{s\ 3133}# #{mod\ 3134}#))) #{tmp\ 3140}#))) ($sc-dispatch #{tmp\ 3140}# '(any any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 3140}# '(any #(each (any any)) any . each-any)))) #{e\ 3130}#)))) (#{global-extend\ 240}# 'core 'letrec (lambda (#{e\ 3199}# #{r\ 3200}# #{w\ 3201}# #{s\ 3202}# #{mod\ 3203}#) ((lambda (#{tmp\ 3209}#) ((lambda (#{tmp\ 3210}#) (if (if #{tmp\ 3210}# (apply (lambda (#{_\ 3216}# #{id\ 3217}# #{val\ 3218}# #{e1\ 3219}# #{e2\ 3220}#) (and-map #{id?\ 244}# #{id\ 3217}#)) #{tmp\ 3210}#) #f) (apply (lambda (#{_\ 3227}# #{id\ 3228}# #{val\ 3229}# #{e1\ 3230}# #{e2\ 3231}#) (let ((#{ids\ 3233}# #{id\ 3228}#)) (if (not (#{valid-bound-ids?\ 307}# #{ids\ 3233}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 3199}#) (let ((#{labels\ 3237}# (#{gen-labels\ 262}# #{ids\ 3233}#)) (#{new-vars\ 3238}# (map #{gen-var\ 357}# #{ids\ 3233}#))) (let ((#{w\ 3241}# (#{make-binding-wrap\ 291}# #{ids\ 3233}# #{labels\ 3237}# #{w\ 3201}#)) (#{r\ 3242}# (#{extend-var-env\ 234}# #{labels\ 3237}# #{new-vars\ 3238}# #{r\ 3200}#))) (#{build-letrec\ 202}# #{s\ 3202}# (map syntax->datum #{ids\ 3233}#) #{new-vars\ 3238}# (map (lambda (#{x\ 3243}#) (#{chi\ 329}# #{x\ 3243}# #{r\ 3242}# #{w\ 3241}# #{mod\ 3203}#)) #{val\ 3229}#) (#{chi-body\ 337}# (cons #{e1\ 3230}# #{e2\ 3231}#) (#{source-wrap\ 315}# #{e\ 3199}# #{w\ 3241}# #{s\ 3202}# #{mod\ 3203}#) #{r\ 3242}# #{w\ 3241}# #{mod\ 3203}#))))))) #{tmp\ 3210}#) ((lambda (#{_\ 3248}#) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 315}# #{e\ 3199}# #{w\ 3201}# #{s\ 3202}# #{mod\ 3203}#))) #{tmp\ 3209}#))) ($sc-dispatch #{tmp\ 3209}# '(any #(each (any any)) any . each-any)))) #{e\ 3199}#))) (#{global-extend\ 240}# 'core 'set! (lambda (#{e\ 3249}# #{r\ 3250}# #{w\ 3251}# #{s\ 3252}# #{mod\ 3253}#) ((lambda (#{tmp\ 3259}#) ((lambda (#{tmp\ 3260}#) (if (if #{tmp\ 3260}# (apply (lambda (#{_\ 3264}# #{id\ 3265}# #{val\ 3266}#) (#{id?\ 244}# #{id\ 3265}#)) #{tmp\ 3260}#) #f) (apply (lambda (#{_\ 3270}# #{id\ 3271}# #{val\ 3272}#) (let ((#{val\ 3275}# (#{chi\ 329}# #{val\ 3272}# #{r\ 3250}# #{w\ 3251}# #{mod\ 3253}#)) (#{n\ 3276}# (#{id-var-name\ 301}# #{id\ 3271}# #{w\ 3251}#))) (let ((#{b\ 3278}# (#{lookup\ 238}# #{n\ 3276}# #{r\ 3250}# #{mod\ 3253}#))) (let ((#{atom-key\ 3281}# (#{binding-type\ 227}# #{b\ 3278}#))) (if (memv #{atom-key\ 3281}# '(lexical)) (#{build-lexical-assignment\ 174}# #{s\ 3252}# (syntax->datum #{id\ 3271}#) (#{binding-value\ 229}# #{b\ 3278}#) #{val\ 3275}#) (if (memv #{atom-key\ 3281}# '(global)) (#{build-global-assignment\ 180}# #{s\ 3252}# #{n\ 3276}# #{val\ 3275}# #{mod\ 3253}#) (if (memv #{atom-key\ 3281}# '(displaced-lexical)) (syntax-violation 'set! "identifier out of context" (#{wrap\ 313}# #{id\ 3271}# #{w\ 3251}# #{mod\ 3253}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 315}# #{e\ 3249}# #{w\ 3251}# #{s\ 3252}# #{mod\ 3253}#))))))))) #{tmp\ 3260}#) ((lambda (#{tmp\ 3286}#) (if #{tmp\ 3286}# (apply (lambda (#{_\ 3291}# #{head\ 3292}# #{tail\ 3293}# #{val\ 3294}#) (call-with-values (lambda () (#{syntax-type\ 325}# #{head\ 3292}# #{r\ 3250}# '(()) #f #f #{mod\ 3253}# #t)) (lambda (#{type\ 3297}# #{value\ 3298}# #{ee\ 3299}# #{ww\ 3300}# #{ss\ 3301}# #{modmod\ 3302}#) (if (memv #{type\ 3297}# '(module-ref)) (let ((#{val\ 3311}# (#{chi\ 329}# #{val\ 3294}# #{r\ 3250}# #{w\ 3251}# #{mod\ 3253}#))) (call-with-values (lambda () (#{value\ 3298}# (cons #{head\ 3292}# #{tail\ 3293}#))) (lambda (#{id\ 3313}# #{mod\ 3314}#) (#{build-global-assignment\ 180}# #{s\ 3252}# #{id\ 3313}# #{val\ 3311}# #{mod\ 3314}#)))) (#{build-application\ 166}# #{s\ 3252}# (#{chi\ 329}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3303" "i3304" "i3305" "i3306" "i3307" "i3308")) #(ribcage #(_ head tail val) #((top) (top) (top) (top)) #("i3287" "i3288" "i3289" "i3290")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3254" "i3255" "i3256" "i3257" "i3258")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)) #{head\ 3292}#) #{r\ 3250}# #{w\ 3251}# #{mod\ 3253}#) (map (lambda (#{e\ 3318}#) (#{chi\ 329}# #{e\ 3318}# #{r\ 3250}# #{w\ 3251}# #{mod\ 3253}#)) (append #{tail\ 3293}# (list #{val\ 3294}#)))))))) #{tmp\ 3286}#) ((lambda (#{_\ 3322}#) (syntax-violation 'set! "bad set!" (#{source-wrap\ 315}# #{e\ 3249}# #{w\ 3251}# #{s\ 3252}# #{mod\ 3253}#))) #{tmp\ 3259}#))) ($sc-dispatch #{tmp\ 3259}# '(any (any . each-any) any))))) ($sc-dispatch #{tmp\ 3259}# '(any any any)))) #{e\ 3249}#))) (#{global-extend\ 240}# 'module-ref '@ (lambda (#{e\ 3323}#) ((lambda (#{tmp\ 3325}#) ((lambda (#{tmp\ 3326}#) (if (if #{tmp\ 3326}# (apply (lambda (#{_\ 3330}# #{mod\ 3331}# #{id\ 3332}#) (if (and-map #{id?\ 244}# #{mod\ 3331}#) (#{id?\ 244}# #{id\ 3332}#) #f)) #{tmp\ 3326}#) #f) (apply (lambda (#{_\ 3339}# #{mod\ 3340}# #{id\ 3341}#) (values (syntax->datum #{id\ 3341}#) (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(_ mod id) #((top) (top) (top)) #("i3336" "i3337" "i3338")) #(ribcage () () ()) #(ribcage #(e) #((top)) #("i3324")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)) #{mod\ 3340}#)))) #{tmp\ 3326}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3325}#))) ($sc-dispatch #{tmp\ 3325}# '(any each-any any)))) #{e\ 3323}#))) (#{global-extend\ 240}# 'module-ref '@@ (lambda (#{e\ 3343}#) ((lambda (#{tmp\ 3345}#) ((lambda (#{tmp\ 3346}#) (if (if #{tmp\ 3346}# (apply (lambda (#{_\ 3350}# #{mod\ 3351}# #{id\ 3352}#) (if (and-map #{id?\ 244}# #{mod\ 3351}#) (#{id?\ 244}# #{id\ 3352}#) #f)) #{tmp\ 3346}#) #f) (apply (lambda (#{_\ 3359}# #{mod\ 3360}# #{id\ 3361}#) (values (syntax->datum #{id\ 3361}#) (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(_ mod id) #((top) (top) (top)) #("i3356" "i3357" "i3358")) #(ribcage () () ()) #(ribcage #(e) #((top)) #("i3344")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)) #{mod\ 3360}#)))) #{tmp\ 3346}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3345}#))) ($sc-dispatch #{tmp\ 3345}# '(any each-any any)))) #{e\ 3343}#))) (#{global-extend\ 240}# 'core 'if (lambda (#{e\ 3363}# #{r\ 3364}# #{w\ 3365}# #{s\ 3366}# #{mod\ 3367}#) ((lambda (#{tmp\ 3373}#) ((lambda (#{tmp\ 3374}#) (if #{tmp\ 3374}# (apply (lambda (#{_\ 3378}# #{test\ 3379}# #{then\ 3380}#) (#{build-conditional\ 168}# #{s\ 3366}# (#{chi\ 329}# #{test\ 3379}# #{r\ 3364}# #{w\ 3365}# #{mod\ 3367}#) (#{chi\ 329}# #{then\ 3380}# #{r\ 3364}# #{w\ 3365}# #{mod\ 3367}#) (#{build-void\ 164}# #f))) #{tmp\ 3374}#) ((lambda (#{tmp\ 3382}#) (if #{tmp\ 3382}# (apply (lambda (#{_\ 3387}# #{test\ 3388}# #{then\ 3389}# #{else\ 3390}#) (#{build-conditional\ 168}# #{s\ 3366}# (#{chi\ 329}# #{test\ 3388}# #{r\ 3364}# #{w\ 3365}# #{mod\ 3367}#) (#{chi\ 329}# #{then\ 3389}# #{r\ 3364}# #{w\ 3365}# #{mod\ 3367}#) (#{chi\ 329}# #{else\ 3390}# #{r\ 3364}# #{w\ 3365}# #{mod\ 3367}#))) #{tmp\ 3382}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3373}#))) ($sc-dispatch #{tmp\ 3373}# '(any any any any))))) ($sc-dispatch #{tmp\ 3373}# '(any any any)))) #{e\ 3363}#))) (#{global-extend\ 240}# 'core 'with-fluids (lambda (#{e\ 3391}# #{r\ 3392}# #{w\ 3393}# #{s\ 3394}# #{mod\ 3395}#) ((lambda (#{tmp\ 3401}#) ((lambda (#{tmp\ 3402}#) (if #{tmp\ 3402}# (apply (lambda (#{_\ 3408}# #{fluid\ 3409}# #{val\ 3410}# #{b\ 3411}# #{b*\ 3412}#) (#{build-dynlet\ 170}# #{s\ 3394}# (map (lambda (#{x\ 3413}#) (#{chi\ 329}# #{x\ 3413}# #{r\ 3392}# #{w\ 3393}# #{mod\ 3395}#)) #{fluid\ 3409}#) (map (lambda (#{x\ 3416}#) (#{chi\ 329}# #{x\ 3416}# #{r\ 3392}# #{w\ 3393}# #{mod\ 3395}#)) #{val\ 3410}#) (#{chi-body\ 337}# (cons #{b\ 3411}# #{b*\ 3412}#) (#{source-wrap\ 315}# #{e\ 3391}# #{w\ 3393}# #{s\ 3394}# #{mod\ 3395}#) #{r\ 3392}# #{w\ 3393}# #{mod\ 3395}#))) #{tmp\ 3402}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3401}#))) ($sc-dispatch #{tmp\ 3401}# '(any #(each (any any)) any . each-any)))) #{e\ 3391}#))) (#{global-extend\ 240}# 'begin 'begin '()) (#{global-extend\ 240}# 'define 'define '()) (#{global-extend\ 240}# 'define-syntax 'define-syntax '()) (#{global-extend\ 240}# 'eval-when 'eval-when '()) (#{global-extend\ 240}# 'core 'syntax-case (letrec ((#{gen-syntax-case\ 3427}# (lambda (#{x\ 3428}# #{keys\ 3429}# #{clauses\ 3430}# #{r\ 3431}# #{mod\ 3432}#) (if (null? #{clauses\ 3430}#) (#{build-application\ 166}# #f (#{build-primref\ 192}# #f 'syntax-violation) (list (#{build-data\ 194}# #f #f) (#{build-data\ 194}# #f "source expression failed to match any pattern") #{x\ 3428}#)) ((lambda (#{tmp\ 3442}#) ((lambda (#{tmp\ 3443}#) (if #{tmp\ 3443}# (apply (lambda (#{pat\ 3446}# #{exp\ 3447}#) (if (if (#{id?\ 244}# #{pat\ 3446}#) (and-map (lambda (#{x\ 3450}#) (not (#{free-id=?\ 303}# #{pat\ 3446}# #{x\ 3450}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3444" "i3445")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3433" "i3434" "i3435" "i3436" "i3437")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3426" "i3424" "i3422" "i3420")) #(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)) ("i358" "i356" "i354" "i352" "i350" "i348" "i346" "i344" "i342" "i340" "i338" "i336" "i334" "i332" "i330" "i328" "i326" "i324" "i322" "i320" "i318" "i316" "i314" "i312" "i310" "i308" "i306" "i304" "i302" "i300" "i298" "i296" "i294" "i292" "i290" "i288" "i287" "i286" "i284" "i283" "i282" "i281" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i264" "i261" "i259" "i258" "i257" "i256" "i255" "i254" "i252" "i250" "i248" "i246" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i230" "i228" "i226" "i225" "i224" "i222" "i221" "i219" "i217" "i215" "i213" "i211" "i209" "i207" "i205" "i203" "i201" "i199" "i197" "i195" "i193" "i191" "i189" "i187" "i185" "i183" "i181" "i179" "i177" "i175" "i173" "i171" "i169" "i167" "i165" "i163" "i161" "i159" "i157" "i156" "i154" "i152" "i150" "i148" "i146" "i144" "i142" "i140")) #(ribcage (define-structure and-map*) ((top) (top)) ("i43" "i41"))) (hygiene guile)) #{keys\ 3429}#)) #f) (let ((#{labels\ 3454}# (list (#{gen-label\ 260}#))) (#{var\ 3455}# (#{gen-var\ 357}# #{pat\ 3446}#))) (#{build-application\ 166}# #f (#{build-simple-lambda\ 186}# #f (list (syntax->datum #{pat\ 3446}#)) #f (list #{var\ 3455}#) #f (#{chi\ 329}# #{exp\ 3447}# (#{extend-env\ 232}# #{labels\ 3454}# (list (cons 'syntax (cons #{var\ 3455}# 0))) #{r\ 3431}#) (#{make-binding-wrap\ 291}# (list #{pat\ 3446}#) #{labels\ 3454}# '(())) #{mod\ 3432}#)) (list #{x\ 3428}#))) (#{gen-clause\ 3425}# #{x\ 3428}# #{keys\ 3429}# (cdr #{clauses\ 3430}#) #{r\ 3431}# #{pat\ 3446}# #t #{exp\ 3447}# #{mod\ 3432}#))) #{tmp\ 3443}#) ((lambda (#{tmp\ 3461}#) (if #{tmp\ 3461}# (apply (lambda (#{pat\ 3465}# #{fender\ 3466}# #{exp\ 3467}#) (#{gen-clause\ 3425}# #{x\ 3428}# #{keys\ 3429}# (cdr #{clauses\ 3430}#) #{r\ 3431}# #{pat\ 3465}# #{fender\ 3466}# #{exp\ 3467}# #{mod\ 3432}#)) #{tmp\ 3461}#) ((lambda (#{_\ 3469}#) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 3430}#))) #{tmp\ 3442}#))) ($sc-dispatch #{tmp\ 3442}# '(any any any))))) ($sc-dispatch #{tmp\ 3442}# (quote (any any))))) (car #{clauses\ 3430}#))))) (#{gen-clause\ 3425}# (lambda (#{x\ 3470}# #{keys\ 3471}# #{clauses\ 3472}# #{r\ 3473}# #{pat\ 3474}# #{fender\ 3475}# #{exp\ 3476}# #{mod\ 3477}#) (call-with-values (lambda () (#{convert-pattern\ 3421}# #{pat\ 3474}# #{keys\ 3471}#)) (lambda (#{p\ 3486}# #{pvars\ 3487}#) (if (not (#{distinct-bound-ids?\ 309}# (map car #{pvars\ 3487}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 3474}#) (if (not (and-map (lambda (#{x\ 3494}#) (not (#{ellipsis?\ 345}# (car #{x\ 3494}#)))) #{pvars\ 3487}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 3474}#) (let ((#{y\ 3498}# (#{gen-var\ 357}# (quote tmp)))) (#{build-application\ 166}# #f (#{build-simple-lambda\ 186}# #f (list (quote tmp)) #f (list #{y\ 3498}#) #f (let ((#{y\ 3502}# (#{build-lexical-reference\ 172}# 'value #f 'tmp #{y\ 3498}#))) (#{build-conditional\ 168}# #f ((lambda (#{tmp\ 3505}#) ((lambda (#{tmp\ 3506}#) (if #{tmp\ 3506}# (apply (lambda () #{y\ 3502}#) #{tmp\ 3506}#) ((lambda (#{_\ 3508}#) (#{build-conditional\ 168}# #f #{y\ 3502}# (#{build-dispatch-call\ 3423}# #{pvars\ 3487}# #{fender\ 3475}# #{y\ 3502}# #{r\ 3473}# #{mod\ 3477}#) (#{build-data\ 194}# #f #f))) #{tmp\ 3505}#))) ($sc-dispatch #{tmp\ 3505}# '#(atom #t)))) #{fender\ 3475}#) (#{build-dispatch-call\ 3423}# #{pvars\ 3487}# #{exp\ 3476}# #{y\ 3502}# #{r\ 3473}# #{mod\ 3477}#) (#{gen-syntax-case\ 3427}# #{x\ 3470}# #{keys\ 3471}# #{clauses\ 3472}# #{r\ 3473}# #{mod\ 3477}#)))) (list (if (eq? #{p\ 3486}# (quote any)) (#{build-application\ 166}# #f (#{build-primref\ 192}# #f 'list) (list #{x\ 3470}#)) (#{build-application\ 166}# #f (#{build-primref\ 192}# #f '$sc-dispatch) (list #{x\ 3470}# (#{build-data\ 194}# #f #{p\ 3486}#))))))))))))) (#{build-dispatch-call\ 3423}# (lambda (#{pvars\ 3516}# #{exp\ 3517}# #{y\ 3518}# #{r\ 3519}# #{mod\ 3520}#) (let ((#{ids\ 3528}# (map car #{pvars\ 3516}#)) (#{levels\ 3529}# (map cdr #{pvars\ 3516}#))) (let ((#{labels\ 3532}# (#{gen-labels\ 262}# #{ids\ 3528}#)) (#{new-vars\ 3533}# (map #{gen-var\ 357}# #{ids\ 3528}#))) (#{build-application\ 166}# #f (#{build-primref\ 192}# #f (quote apply)) (list (#{build-simple-lambda\ 186}# #f (map syntax->datum #{ids\ 3528}#) #f #{new-vars\ 3533}# #f (#{chi\ 329}# #{exp\ 3517}# (#{extend-env\ 232}# #{labels\ 3532}# (map (lambda (#{var\ 3537}# #{level\ 3538}#) (cons 'syntax (cons #{var\ 3537}# #{level\ 3538}#))) #{new-vars\ 3533}# (map cdr #{pvars\ 3516}#)) #{r\ 3519}#) (#{make-binding-wrap\ 291}# #{ids\ 3528}# #{labels\ 3532}# '(())) #{mod\ 3520}#)) #{y\ 3518}#)))))) (#{convert-pattern\ 3421}# (lambda (#{pattern\ 3544}# #{keys\ 3545}#) (letrec ((#{cvt\ 3551}# (lambda (#{p\ 3552}# #{n\ 3553}# #{ids\ 3554}#) (if (#{id?\ 244}# #{p\ 3552}#) (if (#{bound-id-member?\ 311}# #{p\ 3552}# #{keys\ 3545}#) (values (vector (quote free-id) #{p\ 3552}#) #{ids\ 3554}#) (values 'any (cons (cons #{p\ 3552}# #{n\ 3553}#) #{ids\ 3554}#))) ((lambda (#{tmp\ 3558}#) ((lambda (#{tmp\ 3559}#) (if (if #{tmp\ 3559}# (apply (lambda (#{x\ 3562}# #{dots\ 3563}#) (#{ellipsis?\ 345}# #{dots\ 3563}#)) #{tmp\ 3559}#) #f) (apply (lambda (#{x\ 3566}# #{dots\ 3567}#) (call-with-values (lambda () (#{cvt\ 3551}# #{x\ 3566}# (#{fx+\ 145}# #{n\ 3553}# 1) #{ids\ 3554}#)) (lambda (#{p\ 3568}# #{ids\ 3569}#) (values (if (eq? #{p\ 3568}# 'any) 'each-any (vector 'each #{p\ 3568}#)) #{ids\ 3569}#)))) #{tmp\ 3559}#) ((lambda (#{tmp\ 3572}#) (if (if #{tmp\ 3572}# (apply (lambda (#{x\ 3576}# #{dots\ 3577}# #{ys\ 3578}#) (#{ellipsis?\ 345}# #{dots\ 3577}#)) #{tmp\ 3572}#) #f) (apply (lambda (#{x\ 3582}# #{dots\ 3583}# #{ys\ 3584}#) (call-with-values (lambda () (#{cvt*\ 3549}# #{ys\ 3584}# #{n\ 3553}# #{ids\ 3554}#)) (lambda (#{ys\ 3586}# #{ids\ 3587}#) (call-with-values (lambda () (#{cvt\ 3551}# #{x\ 3582}# (+ #{n\ 3553}# 1) #{ids\ 3587}#)) (lambda (#{x\ 3590}# #{ids\ 3591}#) (values (list->vector (cons 'each+ (cons #{x\ 3590}# (cons (reverse #{ys\ 3586}#) '(()))))) #{ids\ 3591}#)))))) #{tmp\ 3572}#) ((lambda (#{tmp\ 3595}#) (if #{tmp\ 3595}# (apply (lambda (#{x\ 3598}# #{y\ 3599}#) (call-with-values (lambda () (#{cvt\ 3551}# #{y\ 3599}# #{n\ 3553}# #{ids\ 3554}#)) (lambda (#{y\ 3600}# #{ids\ 3601}#) (call-with-values (lambda () (#{cvt\ 3551}# #{x\ 3598}# #{n\ 3553}# #{ids\ 3601}#)) (lambda (#{x\ 3604}# #{ids\ 3605}#) (values (cons #{x\ 3604}# #{y\ 3600}#) #{ids\ 3605}#)))))) #{tmp\ 3595}#) ((lambda (#{tmp\ 3608}#) (if #{tmp\ 3608}# (apply (lambda () (values '() #{ids\ 3554}#)) #{tmp\ 3608}#) ((lambda (#{tmp\ 3609}#) (if #{tmp\ 3609}# (apply (lambda (#{x\ 3611}#) (call-with-values (lambda () (#{cvt\ 3551}# #{x\ 3611}# #{n\ 3553}# #{ids\ 3554}#)) (lambda (#{p\ 3613}# #{ids\ 3614}#) (values (vector 'vector #{p\ 3613}#) #{ids\ 3614}#)))) #{tmp\ 3609}#) ((lambda (#{x\ 3618}#) (values (vector 'atom (#{strip\ 355}# #{p\ 3552}# '(()))) #{ids\ 3554}#)) #{tmp\ 3558}#))) ($sc-dispatch #{tmp\ 3558}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 3558}# '())))) ($sc-dispatch #{tmp\ 3558}# '(any . any))))) ($sc-dispatch #{tmp\ 3558}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 3558}# '(any any)))) #{p\ 3552}#)))) (#{cvt*\ 3549}# (lambda (#{p*\ 3620}# #{n\ 3621}# #{ids\ 3622}#) (if (null? #{p*\ 3620}#) (values (quote ()) #{ids\ 3622}#) (call-with-values (lambda () (#{cvt*\ 3549}# (cdr #{p*\ 3620}#) #{n\ 3621}# #{ids\ 3622}#)) (lambda (#{y\ 3626}# #{ids\ 3627}#) (call-with-values (lambda () (#{cvt\ 3551}# (car #{p*\ 3620}#) #{n\ 3621}# #{ids\ 3627}#)) (lambda (#{x\ 3630}# #{ids\ 3631}#) (values (cons #{x\ 3630}# #{y\ 3626}#) #{ids\ 3631}#))))))))) (#{cvt\ 3551}# #{pattern\ 3544}# 0 (quote ())))))) (lambda (#{e\ 3634}# #{r\ 3635}# #{w\ 3636}# #{s\ 3637}# #{mod\ 3638}#) (let ((#{e\ 3645}# (#{source-wrap\ 315}# #{e\ 3634}# #{w\ 3636}# #{s\ 3637}# #{mod\ 3638}#))) ((lambda (#{tmp\ 3646}#) ((lambda (#{tmp\ 3647}#) (if #{tmp\ 3647}# (apply (lambda (#{_\ 3652}# #{val\ 3653}# #{key\ 3654}# #{m\ 3655}#) (if (and-map (lambda (#{x\ 3656}#) (if (#{id?\ 244}# #{x\ 3656}#) (not (#{ellipsis?\ 345}# #{x\ 3656}#)) #f)) #{key\ 3654}#) (let ((#{x\ 3662}# (#{gen-var\ 357}# (quote tmp)))) (#{build-application\ 166}# #{s\ 3637}# (#{build-simple-lambda\ 186}# #f (list (quote tmp)) #f (list #{x\ 3662}#) #f (#{gen-syntax-case\ 3427}# (#{build-lexical-reference\ 172}# 'value #f 'tmp #{x\ 3662}#) #{key\ 3654}# #{m\ 3655}# #{r\ 3635}# #{mod\ 3638}#)) (list (#{chi\ 329}# #{val\ 3653}# #{r\ 3635}# '(()) #{mod\ 3638}#)))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 3645}#))) #{tmp\ 3647}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3646}#))) ($sc-dispatch #{tmp\ 3646}# '(any any each-any . each-any)))) #{e\ 3645}#))))) (set! sc-expand (lambda (#{x\ 3668}# . #{rest\ 3669}#) (if (if (pair? #{x\ 3668}#) (equal? (car #{x\ 3668}#) #{noexpand\ 141}#) #f) (cadr #{x\ 3668}#) (let ((#{m\ 3676}# (if (null? #{rest\ 3669}#) 'e (car #{rest\ 3669}#))) (#{esew\ 3677}# (if (let ((#{t\ 3680}# (null? #{rest\ 3669}#))) (if #{t\ 3680}# #{t\ 3680}# (null? (cdr #{rest\ 3669}#)))) '(eval) (cadr #{rest\ 3669}#)))) (with-fluids ((#{*mode*\ 143}# #{m\ 3676}#)) (#{chi-top\ 327}# #{x\ 3668}# '() '((top)) #{m\ 3676}# #{esew\ 3677}# (cons 'hygiene (module-name (current-module))))))))) (set! identifier? (lambda (#{x\ 3684}#) (#{nonsymbol-id?\ 242}# #{x\ 3684}#))) (set! datum->syntax (lambda (#{id\ 3686}# #{datum\ 3687}#) (#{make-syntax-object\ 206}# #{datum\ 3687}# (#{syntax-object-wrap\ 212}# #{id\ 3686}#) #f))) (set! syntax->datum (lambda (#{x\ 3690}#) (#{strip\ 355}# #{x\ 3690}# (quote (()))))) (set! generate-temporaries (lambda (#{ls\ 3693}#) (begin (let ((#{x\ 3697}# #{ls\ 3693}#)) (if (not (list? #{x\ 3697}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 3697}#))) (map (lambda (#{x\ 3698}#) (#{wrap\ 313}# (gensym) (quote ((top))) #f)) #{ls\ 3693}#)))) (set! free-identifier=? (lambda (#{x\ 3702}# #{y\ 3703}#) (begin (let ((#{x\ 3708}# #{x\ 3702}#)) (if (not (#{nonsymbol-id?\ 242}# #{x\ 3708}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3708}#))) (let ((#{x\ 3711}# #{y\ 3703}#)) (if (not (#{nonsymbol-id?\ 242}# #{x\ 3711}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3711}#))) (#{free-id=?\ 303}# #{x\ 3702}# #{y\ 3703}#)))) (set! bound-identifier=? (lambda (#{x\ 3712}# #{y\ 3713}#) (begin (let ((#{x\ 3718}# #{x\ 3712}#)) (if (not (#{nonsymbol-id?\ 242}# #{x\ 3718}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3718}#))) (let ((#{x\ 3721}# #{y\ 3713}#)) (if (not (#{nonsymbol-id?\ 242}# #{x\ 3721}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3721}#))) (#{bound-id=?\ 305}# #{x\ 3712}# #{y\ 3713}#)))) (set! syntax-violation (lambda (#{who\ 3722}# #{message\ 3723}# #{form\ 3724}# . #{subform\ 3725}#) (begin (let ((#{x\ 3732}# #{who\ 3722}#)) (if (not ((lambda (#{x\ 3733}#) (let ((#{t\ 3737}# (not #{x\ 3733}#))) (if #{t\ 3737}# #{t\ 3737}# (let ((#{t\ 3740}# (string? #{x\ 3733}#))) (if #{t\ 3740}# #{t\ 3740}# (symbol? #{x\ 3733}#)))))) #{x\ 3732}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3732}#))) (let ((#{x\ 3744}# #{message\ 3723}#)) (if (not (string? #{x\ 3744}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3744}#))) (scm-error 'syntax-error 'sc-expand (string-append (if #{who\ 3722}# "~a: " "") "~a " (if (null? #{subform\ 3725}#) "in ~a" "in subform `~s' of `~s'")) (let ((#{tail\ 3746}# (cons #{message\ 3723}# (map (lambda (#{x\ 3747}#) (#{strip\ 355}# #{x\ 3747}# (quote (())))) (append #{subform\ 3725}# (list #{form\ 3724}#)))))) (if #{who\ 3722}# (cons #{who\ 3722}# #{tail\ 3746}#) #{tail\ 3746}#)) #f)))) (letrec ((#{match\ 3763}# (lambda (#{e\ 3764}# #{p\ 3765}# #{w\ 3766}# #{r\ 3767}# #{mod\ 3768}#) (if (not #{r\ 3767}#) #f (if (eq? #{p\ 3765}# (quote any)) (cons (#{wrap\ 313}# #{e\ 3764}# #{w\ 3766}# #{mod\ 3768}#) #{r\ 3767}#) (if (#{syntax-object?\ 208}# #{e\ 3764}#) (#{match*\ 3761}# (#{syntax-object-expression\ 210}# #{e\ 3764}#) #{p\ 3765}# (#{join-wraps\ 295}# #{w\ 3766}# (#{syntax-object-wrap\ 212}# #{e\ 3764}#)) #{r\ 3767}# (#{syntax-object-module\ 214}# #{e\ 3764}#)) (#{match*\ 3761}# #{e\ 3764}# #{p\ 3765}# #{w\ 3766}# #{r\ 3767}# #{mod\ 3768}#)))))) (#{match*\ 3761}# (lambda (#{e\ 3781}# #{p\ 3782}# #{w\ 3783}# #{r\ 3784}# #{mod\ 3785}#) (if (null? #{p\ 3782}#) (if (null? #{e\ 3781}#) #{r\ 3784}# #f) (if (pair? #{p\ 3782}#) (if (pair? #{e\ 3781}#) (#{match\ 3763}# (car #{e\ 3781}#) (car #{p\ 3782}#) #{w\ 3783}# (#{match\ 3763}# (cdr #{e\ 3781}#) (cdr #{p\ 3782}#) #{w\ 3783}# #{r\ 3784}# #{mod\ 3785}#) #{mod\ 3785}#) #f) (if (eq? #{p\ 3782}# (quote each-any)) (let ((#{l\ 3802}# (#{match-each-any\ 3755}# #{e\ 3781}# #{w\ 3783}# #{mod\ 3785}#))) (if #{l\ 3802}# (cons #{l\ 3802}# #{r\ 3784}#) #f)) (let ((#{atom-key\ 3808}# (vector-ref #{p\ 3782}# 0))) (if (memv #{atom-key\ 3808}# (quote (each))) (if (null? #{e\ 3781}#) (#{match-empty\ 3757}# (vector-ref #{p\ 3782}# 1) #{r\ 3784}#) (let ((#{l\ 3811}# (#{match-each\ 3751}# #{e\ 3781}# (vector-ref #{p\ 3782}# 1) #{w\ 3783}# #{mod\ 3785}#))) (if #{l\ 3811}# (letrec ((#{collect\ 3816}# (lambda (#{l\ 3817}#) (if (null? (car #{l\ 3817}#)) #{r\ 3784}# (cons (map car #{l\ 3817}#) (#{collect\ 3816}# (map cdr #{l\ 3817}#))))))) (#{collect\ 3816}# #{l\ 3811}#)) #f))) (if (memv #{atom-key\ 3808}# (quote (each+))) (call-with-values (lambda () (#{match-each+\ 3753}# #{e\ 3781}# (vector-ref #{p\ 3782}# 1) (vector-ref #{p\ 3782}# 2) (vector-ref #{p\ 3782}# 3) #{w\ 3783}# #{r\ 3784}# #{mod\ 3785}#)) (lambda (#{xr*\ 3819}# #{y-pat\ 3820}# #{r\ 3821}#) (if #{r\ 3821}# (if (null? #{y-pat\ 3820}#) (if (null? #{xr*\ 3819}#) (#{match-empty\ 3757}# (vector-ref #{p\ 3782}# 1) #{r\ 3821}#) (#{combine\ 3759}# #{xr*\ 3819}# #{r\ 3821}#)) #f) #f))) (if (memv #{atom-key\ 3808}# (quote (free-id))) (if (#{id?\ 244}# #{e\ 3781}#) (if (#{free-id=?\ 303}# (#{wrap\ 313}# #{e\ 3781}# #{w\ 3783}# #{mod\ 3785}#) (vector-ref #{p\ 3782}# 1)) #{r\ 3784}# #f) #f) (if (memv #{atom-key\ 3808}# (quote (atom))) (if (equal? (vector-ref #{p\ 3782}# 1) (#{strip\ 355}# #{e\ 3781}# #{w\ 3783}#)) #{r\ 3784}# #f) (if (memv #{atom-key\ 3808}# '(vector)) (if (vector? #{e\ 3781}#) (#{match\ 3763}# (vector->list #{e\ 3781}#) (vector-ref #{p\ 3782}# 1) #{w\ 3783}# #{r\ 3784}# #{mod\ 3785}#) #f)))))))))))) (#{combine\ 3759}# (lambda (#{r*\ 3838}# #{r\ 3839}#) (if (null? (car #{r*\ 3838}#)) #{r\ 3839}# (cons (map car #{r*\ 3838}#) (#{combine\ 3759}# (map cdr #{r*\ 3838}#) #{r\ 3839}#))))) (#{match-empty\ 3757}# (lambda (#{p\ 3842}# #{r\ 3843}#) (if (null? #{p\ 3842}#) #{r\ 3843}# (if (eq? #{p\ 3842}# (quote any)) (cons (quote ()) #{r\ 3843}#) (if (pair? #{p\ 3842}#) (#{match-empty\ 3757}# (car #{p\ 3842}#) (#{match-empty\ 3757}# (cdr #{p\ 3842}#) #{r\ 3843}#)) (if (eq? #{p\ 3842}# (quote each-any)) (cons (quote ()) #{r\ 3843}#) (let ((#{atom-key\ 3857}# (vector-ref #{p\ 3842}# 0))) (if (memv #{atom-key\ 3857}# (quote (each))) (#{match-empty\ 3757}# (vector-ref #{p\ 3842}# 1) #{r\ 3843}#) (if (memv #{atom-key\ 3857}# (quote (each+))) (#{match-empty\ 3757}# (vector-ref #{p\ 3842}# 1) (#{match-empty\ 3757}# (reverse (vector-ref #{p\ 3842}# 2)) (#{match-empty\ 3757}# (vector-ref #{p\ 3842}# 3) #{r\ 3843}#))) (if (memv #{atom-key\ 3857}# '(free-id atom)) #{r\ 3843}# (if (memv #{atom-key\ 3857}# '(vector)) (#{match-empty\ 3757}# (vector-ref #{p\ 3842}# 1) #{r\ 3843}#)))))))))))) (#{match-each-any\ 3755}# (lambda (#{e\ 3862}# #{w\ 3863}# #{mod\ 3864}#) (if (pair? #{e\ 3862}#) (let ((#{l\ 3871}# (#{match-each-any\ 3755}# (cdr #{e\ 3862}#) #{w\ 3863}# #{mod\ 3864}#))) (if #{l\ 3871}# (cons (#{wrap\ 313}# (car #{e\ 3862}#) #{w\ 3863}# #{mod\ 3864}#) #{l\ 3871}#) #f)) (if (null? #{e\ 3862}#) '() (if (#{syntax-object?\ 208}# #{e\ 3862}#) (#{match-each-any\ 3755}# (#{syntax-object-expression\ 210}# #{e\ 3862}#) (#{join-wraps\ 295}# #{w\ 3863}# (#{syntax-object-wrap\ 212}# #{e\ 3862}#)) #{mod\ 3864}#) #f))))) (#{match-each+\ 3753}# (lambda (#{e\ 3879}# #{x-pat\ 3880}# #{y-pat\ 3881}# #{z-pat\ 3882}# #{w\ 3883}# #{r\ 3884}# #{mod\ 3885}#) (letrec ((#{f\ 3896}# (lambda (#{e\ 3897}# #{w\ 3898}#) (if (pair? #{e\ 3897}#) (call-with-values (lambda () (#{f\ 3896}# (cdr #{e\ 3897}#) #{w\ 3898}#)) (lambda (#{xr*\ 3901}# #{y-pat\ 3902}# #{r\ 3903}#) (if #{r\ 3903}# (if (null? #{y-pat\ 3902}#) (let ((#{xr\ 3908}# (#{match\ 3763}# (car #{e\ 3897}#) #{x-pat\ 3880}# #{w\ 3898}# '() #{mod\ 3885}#))) (if #{xr\ 3908}# (values (cons #{xr\ 3908}# #{xr*\ 3901}#) #{y-pat\ 3902}# #{r\ 3903}#) (values #f #f #f))) (values '() (cdr #{y-pat\ 3902}#) (#{match\ 3763}# (car #{e\ 3897}#) (car #{y-pat\ 3902}#) #{w\ 3898}# #{r\ 3903}# #{mod\ 3885}#))) (values #f #f #f)))) (if (#{syntax-object?\ 208}# #{e\ 3897}#) (#{f\ 3896}# (#{syntax-object-expression\ 210}# #{e\ 3897}#) (#{join-wraps\ 295}# #{w\ 3898}# #{e\ 3897}#)) (values '() #{y-pat\ 3881}# (#{match\ 3763}# #{e\ 3897}# #{z-pat\ 3882}# #{w\ 3898}# #{r\ 3884}# #{mod\ 3885}#))))))) (#{f\ 3896}# #{e\ 3879}# #{w\ 3883}#)))) (#{match-each\ 3751}# (lambda (#{e\ 3912}# #{p\ 3913}# #{w\ 3914}# #{mod\ 3915}#) (if (pair? #{e\ 3912}#) (let ((#{first\ 3923}# (#{match\ 3763}# (car #{e\ 3912}#) #{p\ 3913}# #{w\ 3914}# '() #{mod\ 3915}#))) (if #{first\ 3923}# (let ((#{rest\ 3927}# (#{match-each\ 3751}# (cdr #{e\ 3912}#) #{p\ 3913}# #{w\ 3914}# #{mod\ 3915}#))) (if #{rest\ 3927}# (cons #{first\ 3923}# #{rest\ 3927}#) #f)) #f)) (if (null? #{e\ 3912}#) '() (if (#{syntax-object?\ 208}# #{e\ 3912}#) (#{match-each\ 3751}# (#{syntax-object-expression\ 210}# #{e\ 3912}#) #{p\ 3913}# (#{join-wraps\ 295}# #{w\ 3914}# (#{syntax-object-wrap\ 212}# #{e\ 3912}#)) (#{syntax-object-module\ 214}# #{e\ 3912}#)) #f)))))) (set! $sc-dispatch (lambda (#{e\ 3935}# #{p\ 3936}#) (if (eq? #{p\ 3936}# (quote any)) (list #{e\ 3935}#) (if (#{syntax-object?\ 208}# #{e\ 3935}#) (#{match*\ 3761}# (#{syntax-object-expression\ 210}# #{e\ 3935}#) #{p\ 3936}# (#{syntax-object-wrap\ 212}# #{e\ 3935}#) '() (#{syntax-object-module\ 214}# #{e\ 3935}#)) (#{match*\ 3761}# #{e\ 3935}# #{p\ 3936}# '(()) '() #f))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (cons (lambda (#{x\ 3945}#) ((lambda (#{tmp\ 3947}#) ((lambda (#{tmp\ 3948}#) (if #{tmp\ 3948}# (apply (lambda (#{_\ 3952}# #{e1\ 3953}# #{e2\ 3954}#) (cons '#(syntax-object begin ((top) #(ribcage #(_ e1 e2) #((top) (top) (top)) #("i3949" "i3950" "i3951")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3946"))) (hygiene guile)) (cons #{e1\ 3953}# #{e2\ 3954}#))) #{tmp\ 3948}#) ((lambda (#{tmp\ 3956}#) (if #{tmp\ 3956}# (apply (lambda (#{_\ 3962}# #{out\ 3963}# #{in\ 3964}# #{e1\ 3965}# #{e2\ 3966}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i3957" "i3958" "i3959" "i3960" "i3961")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3946"))) (hygiene guile)) #{in\ 3964}# '() (list #{out\ 3963}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i3957" "i3958" "i3959" "i3960" "i3961")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3946"))) (hygiene guile)) (cons #{e1\ 3965}# #{e2\ 3966}#))))) #{tmp\ 3956}#) ((lambda (#{tmp\ 3968}#) (if #{tmp\ 3968}# (apply (lambda (#{_\ 3974}# #{out\ 3975}# #{in\ 3976}# #{e1\ 3977}# #{e2\ 3978}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i3969" "i3970" "i3971" "i3972" "i3973")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3946"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i3969" "i3970" "i3971" "i3972" "i3973")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3946"))) (hygiene guile)) #{in\ 3976}#) '() (list #{out\ 3975}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i3969" "i3970" "i3971" "i3972" "i3973")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3946"))) (hygiene guile)) (cons #{e1\ 3977}# #{e2\ 3978}#))))) #{tmp\ 3968}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3947}#))) ($sc-dispatch #{tmp\ 3947}# '(any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 3947}# '(any ((any any)) any . each-any))))) ($sc-dispatch #{tmp\ 3947}# '(any () any . each-any)))) #{x\ 3945}#)) (module-name (current-module))))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (cons (lambda (#{x\ 3982}#) ((lambda (#{tmp\ 3984}#) ((lambda (#{tmp\ 3985}#) (if #{tmp\ 3985}# (apply (lambda (#{_\ 3991}# #{k\ 3992}# #{keyword\ 3993}# #{pattern\ 3994}# #{template\ 3995}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i3986" "i3987" "i3988" "i3989" "i3990")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3983"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i3986" "i3987" "i3988" "i3989" "i3990")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3983"))) (hygiene guile))) (cons '#(syntax-object syntax-case ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i3986" "i3987" "i3988" "i3989" "i3990")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3983"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i3986" "i3987" "i3988" "i3989" "i3990")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3983"))) (hygiene guile)) (cons #{k\ 3992}# (map (lambda (#{tmp\ 3998}# #{tmp\ 3997}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i3986" "i3987" "i3988" "i3989" "i3990")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3983"))) (hygiene guile)) #{tmp\ 3997}#) (list '#(syntax-object syntax ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i3986" "i3987" "i3988" "i3989" "i3990")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i3983"))) (hygiene guile)) #{tmp\ 3998}#))) #{template\ 3995}# #{pattern\ 3994}#)))))) #{tmp\ 3985}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3984}#))) ($sc-dispatch #{tmp\ 3984}# '(any each-any . #(each ((any . any) any)))))) #{x\ 3982}#)) (module-name (current-module))))) (define let* (make-syntax-transformer 'let* 'macro (cons (lambda (#{x\ 3999}#) ((lambda (#{tmp\ 4001}#) ((lambda (#{tmp\ 4002}#) (if (if #{tmp\ 4002}# (apply (lambda (#{let*\ 4008}# #{x\ 4009}# #{v\ 4010}# #{e1\ 4011}# #{e2\ 4012}#) (and-map identifier? #{x\ 4009}#)) #{tmp\ 4002}#) #f) (apply (lambda (#{let*\ 4019}# #{x\ 4020}# #{v\ 4021}# #{e1\ 4022}# #{e2\ 4023}#) (letrec ((#{f\ 4026}# (lambda (#{bindings\ 4027}#) (if (null? #{bindings\ 4027}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4024" "i4025")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4014" "i4015" "i4016" "i4017" "i4018")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4000"))) (hygiene guile)) (cons '() (cons #{e1\ 4022}# #{e2\ 4023}#))) ((lambda (#{tmp\ 4032}#) ((lambda (#{tmp\ 4033}#) (if #{tmp\ 4033}# (apply (lambda (#{body\ 4036}# #{binding\ 4037}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i4034" "i4035")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4024" "i4025")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4014" "i4015" "i4016" "i4017" "i4018")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4000"))) (hygiene guile)) (list #{binding\ 4037}#) #{body\ 4036}#)) #{tmp\ 4033}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4032}#))) ($sc-dispatch #{tmp\ 4032}# '(any any)))) (list (#{f\ 4026}# (cdr #{bindings\ 4027}#)) (car #{bindings\ 4027}#))))))) (#{f\ 4026}# (map list #{x\ 4020}# #{v\ 4021}#)))) #{tmp\ 4002}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4001}#))) ($sc-dispatch #{tmp\ 4001}# '(any #(each (any any)) any . each-any)))) #{x\ 3999}#)) (module-name (current-module))))) (define do (make-syntax-transformer 'do 'macro (cons (lambda (#{orig-x\ 4038}#) ((lambda (#{tmp\ 4040}#) ((lambda (#{tmp\ 4041}#) (if #{tmp\ 4041}# (apply (lambda (#{_\ 4049}# #{var\ 4050}# #{init\ 4051}# #{step\ 4052}# #{e0\ 4053}# #{e1\ 4054}# #{c\ 4055}#) ((lambda (#{tmp\ 4057}#) ((lambda (#{tmp\ 4058}#) (if #{tmp\ 4058}# (apply (lambda (#{step\ 4060}#) ((lambda (#{tmp\ 4061}#) ((lambda (#{tmp\ 4062}#) (if #{tmp\ 4062}# (apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) (map list #{var\ 4050}# #{init\ 4051}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) #{e0\ 4053}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) (append #{c\ 4055}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) #{step\ 4060}#))))))) #{tmp\ 4062}#) ((lambda (#{tmp\ 4067}#) (if #{tmp\ 4067}# (apply (lambda (#{e1\ 4070}# #{e2\ 4071}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4068" "i4069")) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4068" "i4069")) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) (map list #{var\ 4050}# #{init\ 4051}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4068" "i4069")) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) #{e0\ 4053}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4068" "i4069")) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) (cons #{e1\ 4070}# #{e2\ 4071}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4068" "i4069")) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) (append #{c\ 4055}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4068" "i4069")) #(ribcage #(step) #((top)) #("i4059")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4042" "i4043" "i4044" "i4045" "i4046" "i4047" "i4048")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4039"))) (hygiene guile)) #{step\ 4060}#))))))) #{tmp\ 4067}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4061}#))) ($sc-dispatch #{tmp\ 4061}# '(any . each-any))))) ($sc-dispatch #{tmp\ 4061}# '()))) #{e1\ 4054}#)) #{tmp\ 4058}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4057}#))) ($sc-dispatch #{tmp\ 4057}# 'each-any))) (map (lambda (#{v\ 4078}# #{s\ 4079}#) ((lambda (#{tmp\ 4082}#) ((lambda (#{tmp\ 4083}#) (if #{tmp\ 4083}# (apply (lambda () #{v\ 4078}#) #{tmp\ 4083}#) ((lambda (#{tmp\ 4084}#) (if #{tmp\ 4084}# (apply (lambda (#{e\ 4086}#) #{e\ 4086}#) #{tmp\ 4084}#) ((lambda (#{_\ 4088}#) (syntax-violation 'do "bad step expression" #{orig-x\ 4038}# #{s\ 4079}#)) #{tmp\ 4082}#))) ($sc-dispatch #{tmp\ 4082}# '(any))))) ($sc-dispatch #{tmp\ 4082}# '()))) #{s\ 4079}#)) #{var\ 4050}# #{step\ 4052}#))) #{tmp\ 4041}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4040}#))) ($sc-dispatch #{tmp\ 4040}# '(any #(each (any any . any)) (any . each-any) . each-any)))) #{orig-x\ 4038}#)) (module-name (current-module))))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (cons (letrec ((#{quasicons\ 4095}# (lambda (#{x\ 4099}# #{y\ 4100}#) ((lambda (#{tmp\ 4104}#) ((lambda (#{tmp\ 4105}#) (if #{tmp\ 4105}# (apply (lambda (#{x\ 4108}# #{y\ 4109}#) ((lambda (#{tmp\ 4110}#) ((lambda (#{tmp\ 4111}#) (if #{tmp\ 4111}# (apply (lambda (#{dy\ 4113}#) ((lambda (#{tmp\ 4114}#) ((lambda (#{tmp\ 4115}#) (if #{tmp\ 4115}# (apply (lambda (#{dx\ 4117}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) #("i4116")) #(ribcage #(dy) #((top)) #("i4112")) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) (cons #{dx\ 4117}# #{dy\ 4113}#))) #{tmp\ 4115}#) ((lambda (#{_\ 4119}#) (if (null? #{dy\ 4113}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) #("i4118")) #(ribcage #(dy) #((top)) #("i4112")) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{x\ 4108}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) #("i4118")) #(ribcage #(dy) #((top)) #("i4112")) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{x\ 4108}# #{y\ 4109}#))) #{tmp\ 4114}#))) ($sc-dispatch #{tmp\ 4114}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(dy) #((top)) #("i4112")) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) any)))) #{x\ 4108}#)) #{tmp\ 4111}#) ((lambda (#{tmp\ 4120}#) (if #{tmp\ 4120}# (apply (lambda (#{stuff\ 4122}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) #("i4121")) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) (cons #{x\ 4108}# #{stuff\ 4122}#))) #{tmp\ 4120}#) ((lambda (#{else\ 4124}#) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) #("i4123")) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{x\ 4108}# #{y\ 4109}#)) #{tmp\ 4110}#))) ($sc-dispatch #{tmp\ 4110}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 4110}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4106" "i4107")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4101" "i4102")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) any)))) #{y\ 4109}#)) #{tmp\ 4105}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4104}#))) ($sc-dispatch #{tmp\ 4104}# (quote (any any))))) (list #{x\ 4099}# #{y\ 4100}#)))) (#{quasiappend\ 4096}# (lambda (#{x\ 4125}# #{y\ 4126}#) ((lambda (#{tmp\ 4130}#) ((lambda (#{tmp\ 4131}#) (if #{tmp\ 4131}# (apply (lambda (#{x\ 4134}# #{y\ 4135}#) ((lambda (#{tmp\ 4136}#) ((lambda (#{tmp\ 4137}#) (if #{tmp\ 4137}# (apply (lambda () #{x\ 4134}#) #{tmp\ 4137}#) ((lambda (#{_\ 4139}#) (list '#(syntax-object append ((top) #(ribcage #(_) #((top)) #("i4138")) #(ribcage #(x y) #((top) (top)) #("i4132" "i4133")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4127" "i4128")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{x\ 4134}# #{y\ 4135}#)) #{tmp\ 4136}#))) ($sc-dispatch #{tmp\ 4136}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4132" "i4133")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4127" "i4128")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) ())))) #{y\ 4135}#)) #{tmp\ 4131}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4130}#))) ($sc-dispatch #{tmp\ 4130}# (quote (any any))))) (list #{x\ 4125}# #{y\ 4126}#)))) (#{quasivector\ 4097}# (lambda (#{x\ 4140}#) ((lambda (#{tmp\ 4143}#) ((lambda (#{x\ 4145}#) ((lambda (#{tmp\ 4146}#) ((lambda (#{tmp\ 4147}#) (if #{tmp\ 4147}# (apply (lambda (#{x\ 4149}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4148")) #(ribcage #(x) #((top)) #("i4144")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4141")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) (list->vector #{x\ 4149}#))) #{tmp\ 4147}#) ((lambda (#{tmp\ 4151}#) (if #{tmp\ 4151}# (apply (lambda (#{x\ 4153}#) (cons '#(syntax-object vector ((top) #(ribcage #(x) #((top)) #("i4152")) #(ribcage #(x) #((top)) #("i4144")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4141")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{x\ 4153}#)) #{tmp\ 4151}#) ((lambda (#{_\ 4156}#) (list '#(syntax-object list->vector ((top) #(ribcage #(_) #((top)) #("i4155")) #(ribcage #(x) #((top)) #("i4144")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4141")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{x\ 4145}#)) #{tmp\ 4146}#))) ($sc-dispatch #{tmp\ 4146}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x) #((top)) #("i4144")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4141")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) . each-any))))) ($sc-dispatch #{tmp\ 4146}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4144")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4141")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) each-any)))) #{x\ 4145}#)) #{tmp\ 4143}#)) #{x\ 4140}#))) (#{quasi\ 4098}# (lambda (#{p\ 4157}# #{lev\ 4158}#) ((lambda (#{tmp\ 4161}#) ((lambda (#{tmp\ 4162}#) (if #{tmp\ 4162}# (apply (lambda (#{p\ 4164}#) (if (= #{lev\ 4158}# 0) #{p\ 4164}# (#{quasicons\ 4095}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4163")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4163")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) (#{quasi\ 4098}# (list #{p\ 4164}#) (- #{lev\ 4158}# 1))))) #{tmp\ 4162}#) ((lambda (#{tmp\ 4165}#) (if (if #{tmp\ 4165}# (apply (lambda (#{args\ 4167}#) (= #{lev\ 4158}# 0)) #{tmp\ 4165}#) #f) (apply (lambda (#{args\ 4169}#) (syntax-violation 'unquote "unquote takes exactly one argument" #{p\ 4157}# (cons '#(syntax-object unquote ((top) #(ribcage #(args) #((top)) #("i4168")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{args\ 4169}#))) #{tmp\ 4165}#) ((lambda (#{tmp\ 4170}#) (if #{tmp\ 4170}# (apply (lambda (#{p\ 4173}# #{q\ 4174}#) (if (= #{lev\ 4158}# 0) (#{quasiappend\ 4096}# #{p\ 4173}# (#{quasi\ 4098}# #{q\ 4174}# #{lev\ 4158}#)) (#{quasicons\ 4095}# (#{quasicons\ 4095}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) #("i4171" "i4172")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4171" "i4172")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) (#{quasi\ 4098}# (list #{p\ 4173}#) (- #{lev\ 4158}# 1))) (#{quasi\ 4098}# #{q\ 4174}# #{lev\ 4158}#)))) #{tmp\ 4170}#) ((lambda (#{tmp\ 4175}#) (if (if #{tmp\ 4175}# (apply (lambda (#{args\ 4178}# #{q\ 4179}#) (= #{lev\ 4158}# 0)) #{tmp\ 4175}#) #f) (apply (lambda (#{args\ 4182}# #{q\ 4183}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" #{p\ 4157}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) #("i4180" "i4181")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{args\ 4182}#))) #{tmp\ 4175}#) ((lambda (#{tmp\ 4184}#) (if #{tmp\ 4184}# (apply (lambda (#{p\ 4186}#) (#{quasicons\ 4095}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4185")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4185")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) (#{quasi\ 4098}# (list #{p\ 4186}#) (+ #{lev\ 4158}# 1)))) #{tmp\ 4184}#) ((lambda (#{tmp\ 4187}#) (if #{tmp\ 4187}# (apply (lambda (#{p\ 4190}# #{q\ 4191}#) (#{quasicons\ 4095}# (#{quasi\ 4098}# #{p\ 4190}# #{lev\ 4158}#) (#{quasi\ 4098}# #{q\ 4191}# #{lev\ 4158}#))) #{tmp\ 4187}#) ((lambda (#{tmp\ 4192}#) (if #{tmp\ 4192}# (apply (lambda (#{x\ 4194}#) (#{quasivector\ 4097}# (#{quasi\ 4098}# #{x\ 4194}# #{lev\ 4158}#))) #{tmp\ 4192}#) ((lambda (#{p\ 4197}#) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4196")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile)) #{p\ 4197}#)) #{tmp\ 4161}#))) ($sc-dispatch #{tmp\ 4161}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 4161}# '(any . any))))) ($sc-dispatch #{tmp\ 4161}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) any))))) ($sc-dispatch #{tmp\ 4161}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) . any) . any))))) ($sc-dispatch #{tmp\ 4161}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) any) . any))))) ($sc-dispatch #{tmp\ 4161}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 4161}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4159" "i4160")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4091" "i4092" "i4093" "i4094"))) (hygiene guile))) any)))) #{p\ 4157}#)))) (lambda (#{x\ 4198}#) ((lambda (#{tmp\ 4200}#) ((lambda (#{tmp\ 4201}#) (if #{tmp\ 4201}# (apply (lambda (#{_\ 4204}# #{e\ 4205}#) (#{quasi\ 4098}# #{e\ 4205}# 0)) #{tmp\ 4201}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4200}#))) ($sc-dispatch #{tmp\ 4200}# (quote (any any))))) #{x\ 4198}#))) (module-name (current-module))))) (define include (make-syntax-transformer 'include 'macro (cons (lambda (#{x\ 4206}#) (letrec ((#{read-file\ 4209}# (lambda (#{fn\ 4210}# #{k\ 4211}#) (let ((#{p\ 4215}# (open-input-file #{fn\ 4210}#))) (letrec ((#{f\ 4218}# (lambda (#{x\ 4219}#) (if (eof-object? #{x\ 4219}#) (begin (close-input-port #{p\ 4215}#) '()) (cons (datum->syntax #{k\ 4211}# #{x\ 4219}#) (#{f\ 4218}# (read #{p\ 4215}#))))))) (#{f\ 4218}# (read #{p\ 4215}#))))))) ((lambda (#{tmp\ 4220}#) ((lambda (#{tmp\ 4221}#) (if #{tmp\ 4221}# (apply (lambda (#{k\ 4224}# #{filename\ 4225}#) (let ((#{fn\ 4227}# (syntax->datum #{filename\ 4225}#))) ((lambda (#{tmp\ 4229}#) ((lambda (#{tmp\ 4230}#) (if #{tmp\ 4230}# (apply (lambda (#{exp\ 4232}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i4231")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4226")) #(ribcage #(k filename) #((top) (top)) #("i4222" "i4223")) #(ribcage (read-file) ((top)) ("i4208")) #(ribcage #(x) #((top)) #("i4207"))) (hygiene guile)) #{exp\ 4232}#)) #{tmp\ 4230}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4229}#))) ($sc-dispatch #{tmp\ 4229}# 'each-any))) (#{read-file\ 4209}# #{fn\ 4227}# #{k\ 4224}#)))) #{tmp\ 4221}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4220}#))) ($sc-dispatch #{tmp\ 4220}# (quote (any any))))) #{x\ 4206}#))) (module-name (current-module))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (cons (lambda (#{x\ 4234}#) ((lambda (#{tmp\ 4236}#) ((lambda (#{tmp\ 4237}#) (if #{tmp\ 4237}# (apply (lambda (#{k\ 4240}# #{filename\ 4241}#) (let ((#{fn\ 4243}# (syntax->datum #{filename\ 4241}#))) ((lambda (#{tmp\ 4245}#) ((lambda (#{fn\ 4247}#) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i4246")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4242")) #(ribcage #(k filename) #((top) (top)) #("i4238" "i4239")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4235"))) (hygiene guile)) #{fn\ 4247}#)) #{tmp\ 4245}#)) (let ((#{t\ 4250}# (%search-load-path #{fn\ 4243}#))) (if #{t\ 4250}# #{t\ 4250}# (syntax-violation 'include-from-path "file not found in path" #{x\ 4234}# #{filename\ 4241}#)))))) #{tmp\ 4237}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4236}#))) ($sc-dispatch #{tmp\ 4236}# (quote (any any))))) #{x\ 4234}#)) (module-name (current-module))))) (define unquote (make-syntax-transformer 'unquote 'macro (cons (lambda (#{x\ 4252}#) ((lambda (#{tmp\ 4254}#) ((lambda (#{tmp\ 4255}#) (if #{tmp\ 4255}# (apply (lambda (#{_\ 4258}# #{e\ 4259}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 4252}#)) #{tmp\ 4255}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4254}#))) ($sc-dispatch #{tmp\ 4254}# (quote (any any))))) #{x\ 4252}#)) (module-name (current-module))))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (cons (lambda (#{x\ 4260}#) ((lambda (#{tmp\ 4262}#) ((lambda (#{tmp\ 4263}#) (if #{tmp\ 4263}# (apply (lambda (#{_\ 4266}# #{e\ 4267}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 4260}#)) #{tmp\ 4263}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4262}#))) ($sc-dispatch #{tmp\ 4262}# (quote (any any))))) #{x\ 4260}#)) (module-name (current-module))))) (define case (make-syntax-transformer 'case 'macro (cons (lambda (#{x\ 4268}#) ((lambda (#{tmp\ 4270}#) ((lambda (#{tmp\ 4271}#) (if #{tmp\ 4271}# (apply (lambda (#{_\ 4276}# #{e\ 4277}# #{m1\ 4278}# #{m2\ 4279}#) ((lambda (#{tmp\ 4281}#) ((lambda (#{body\ 4283}#) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i4282")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i4282")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) #{e\ 4277}#)) #{body\ 4283}#)) #{tmp\ 4281}#)) (letrec ((#{f\ 4287}# (lambda (#{clause\ 4288}# #{clauses\ 4289}#) (if (null? #{clauses\ 4289}#) ((lambda (#{tmp\ 4291}#) ((lambda (#{tmp\ 4292}#) (if #{tmp\ 4292}# (apply (lambda (#{e1\ 4295}# #{e2\ 4296}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4293" "i4294")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (cons #{e1\ 4295}# #{e2\ 4296}#))) #{tmp\ 4292}#) ((lambda (#{tmp\ 4298}#) (if #{tmp\ 4298}# (apply (lambda (#{k\ 4302}# #{e1\ 4303}# #{e2\ 4304}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4299" "i4300" "i4301")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4299" "i4300" "i4301")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4299" "i4300" "i4301")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4299" "i4300" "i4301")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) #{k\ 4302}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4299" "i4300" "i4301")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (cons #{e1\ 4303}# #{e2\ 4304}#)))) #{tmp\ 4298}#) ((lambda (#{_\ 4308}#) (syntax-violation 'case "bad clause" #{x\ 4268}# #{clause\ 4288}#)) #{tmp\ 4291}#))) ($sc-dispatch #{tmp\ 4291}# '(each-any any . each-any))))) ($sc-dispatch #{tmp\ 4291}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile))) any . each-any)))) #{clause\ 4288}#) ((lambda (#{tmp\ 4310}#) ((lambda (#{rest\ 4312}#) ((lambda (#{tmp\ 4313}#) ((lambda (#{tmp\ 4314}#) (if #{tmp\ 4314}# (apply (lambda (#{k\ 4318}# #{e1\ 4319}# #{e2\ 4320}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4315" "i4316" "i4317")) #(ribcage #(rest) #((top)) #("i4311")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4315" "i4316" "i4317")) #(ribcage #(rest) #((top)) #("i4311")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4315" "i4316" "i4317")) #(ribcage #(rest) #((top)) #("i4311")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4315" "i4316" "i4317")) #(ribcage #(rest) #((top)) #("i4311")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) #{k\ 4318}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4315" "i4316" "i4317")) #(ribcage #(rest) #((top)) #("i4311")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4284" "i4285" "i4286")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4272" "i4273" "i4274" "i4275")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4269"))) (hygiene guile)) (cons #{e1\ 4319}# #{e2\ 4320}#)) #{rest\ 4312}#)) #{tmp\ 4314}#) ((lambda (#{_\ 4324}#) (syntax-violation 'case "bad clause" #{x\ 4268}# #{clause\ 4288}#)) #{tmp\ 4313}#))) ($sc-dispatch #{tmp\ 4313}# '(each-any any . each-any)))) #{clause\ 4288}#)) #{tmp\ 4310}#)) (#{f\ 4287}# (car #{clauses\ 4289}#) (cdr #{clauses\ 4289}#))))))) (#{f\ 4287}# #{m1\ 4278}# #{m2\ 4279}#)))) #{tmp\ 4271}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4270}#))) ($sc-dispatch #{tmp\ 4270}# '(any any any . each-any)))) #{x\ 4268}#)) (module-name (current-module))))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (cons (lambda (#{x\ 4325}#) ((lambda (#{tmp\ 4327}#) ((lambda (#{tmp\ 4328}#) (if #{tmp\ 4328}# (apply (lambda (#{_\ 4331}# #{e\ 4332}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile))) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) #{e\ 4332}#)) (list (cons #{_\ 4331}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) (cons #{e\ 4332}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i4329" "i4330")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4326"))) (hygiene guile))))))))) #{tmp\ 4328}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4327}#))) ($sc-dispatch #{tmp\ 4327}# (quote (any any))))) #{x\ 4325}#)) (module-name (current-module))))) (define define* (make-syntax-transformer 'define* 'macro (cons (lambda (#{x\ 4333}#) ((lambda (#{tmp\ 4335}#) ((lambda (#{tmp\ 4336}#) (if #{tmp\ 4336}# (apply (lambda (#{_\ 4342}# #{id\ 4343}# #{args\ 4344}# #{b0\ 4345}# #{b1\ 4346}#) (list '#(syntax-object define ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i4337" "i4338" "i4339" "i4340" "i4341")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4334"))) (hygiene guile)) #{id\ 4343}# (cons '#(syntax-object lambda* ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i4337" "i4338" "i4339" "i4340" "i4341")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4334"))) (hygiene guile)) (cons #{args\ 4344}# (cons #{b0\ 4345}# #{b1\ 4346}#))))) #{tmp\ 4336}#) ((lambda (#{tmp\ 4348}#) (if (if #{tmp\ 4348}# (apply (lambda (#{_\ 4352}# #{id\ 4353}# #{val\ 4354}#) (identifier? '#(syntax-object x ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i4349" "i4350" "i4351")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4334"))) (hygiene guile)))) #{tmp\ 4348}#) #f) (apply (lambda (#{_\ 4358}# #{id\ 4359}# #{val\ 4360}#) (list '#(syntax-object define ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i4355" "i4356" "i4357")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4334"))) (hygiene guile)) #{id\ 4359}# #{val\ 4360}#)) #{tmp\ 4348}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4335}#))) ($sc-dispatch #{tmp\ 4335}# '(any any any))))) ($sc-dispatch #{tmp\ 4335}# '(any (any . any) any . each-any)))) #{x\ 4333}#)) (module-name (current-module)))))