(eval-when (compile) (set-current-module (resolve-module (quote (guile))))) (if #f #f) (letrec ((#{and-map*\ 20}# (lambda (#{f\ 192}# #{first\ 193}# . #{rest\ 194}#) (let ((#{t\ 200}# (null? #{first\ 193}#))) (if #{t\ 200}# #{t\ 200}# (if (null? #{rest\ 194}#) (letrec ((#{andmap\ 204}# (lambda (#{first\ 205}#) (let ((#{x\ 208}# (car #{first\ 205}#)) (#{first\ 209}# (cdr #{first\ 205}#))) (if (null? #{first\ 209}#) (#{f\ 192}# #{x\ 208}#) (if (#{f\ 192}# #{x\ 208}#) (#{andmap\ 204}# #{first\ 209}#) #f)))))) (#{andmap\ 204}# #{first\ 193}#)) (letrec ((#{andmap\ 215}# (lambda (#{first\ 216}# #{rest\ 217}#) (let ((#{x\ 222}# (car #{first\ 216}#)) (#{xr\ 223}# (map car #{rest\ 217}#)) (#{first\ 224}# (cdr #{first\ 216}#)) (#{rest\ 225}# (map cdr #{rest\ 217}#))) (if (null? #{first\ 224}#) (apply #{f\ 192}# (cons #{x\ 222}# #{xr\ 223}#)) (if (apply #{f\ 192}# (cons #{x\ 222}# #{xr\ 223}#)) (#{andmap\ 215}# #{first\ 224}# #{rest\ 225}#) #f)))))) (#{andmap\ 215}# #{first\ 193}# #{rest\ 194}#)))))))) (letrec ((#{lambda-var-list\ 487}# (lambda (#{vars\ 702}#) (letrec ((#{lvl\ 708}# (lambda (#{vars\ 709}# #{ls\ 710}# #{w\ 711}#) (if (pair? #{vars\ 709}#) (#{lvl\ 708}# (cdr #{vars\ 709}#) (cons (#{wrap\ 441}# (car #{vars\ 709}#) #{w\ 711}# #f) #{ls\ 710}#) #{w\ 711}#) (if (#{id?\ 372}# #{vars\ 709}#) (cons (#{wrap\ 441}# #{vars\ 709}# #{w\ 711}# #f) #{ls\ 710}#) (if (null? #{vars\ 709}#) #{ls\ 710}# (if (#{syntax-object?\ 336}# #{vars\ 709}#) (#{lvl\ 708}# (#{syntax-object-expression\ 338}# #{vars\ 709}#) #{ls\ 710}# (#{join-wraps\ 423}# #{w\ 711}# (#{syntax-object-wrap\ 340}# #{vars\ 709}#))) (cons #{vars\ 709}# #{ls\ 710}#)))))))) (#{lvl\ 708}# #{vars\ 702}# '() '(()))))) (#{gen-var\ 485}# (lambda (#{id\ 722}#) (let ((#{id\ 725}# (if (#{syntax-object?\ 336}# #{id\ 722}#) (#{syntax-object-expression\ 338}# #{id\ 722}#) #{id\ 722}#))) (gensym (string-append (symbol->string #{id\ 725}#) " "))))) (#{strip\ 483}# (lambda (#{x\ 727}# #{w\ 728}#) (if (memq 'top (#{wrap-marks\ 379}# #{w\ 728}#)) #{x\ 727}# (letrec ((#{f\ 734}# (lambda (#{x\ 735}#) (if (#{syntax-object?\ 336}# #{x\ 735}#) (#{strip\ 483}# (#{syntax-object-expression\ 338}# #{x\ 735}#) (#{syntax-object-wrap\ 340}# #{x\ 735}#)) (if (pair? #{x\ 735}#) (let ((#{a\ 742}# (#{f\ 734}# (car #{x\ 735}#))) (#{d\ 743}# (#{f\ 734}# (cdr #{x\ 735}#)))) (if (if (eq? #{a\ 742}# (car #{x\ 735}#)) (eq? #{d\ 743}# (cdr #{x\ 735}#)) #f) #{x\ 735}# (cons #{a\ 742}# #{d\ 743}#))) (if (vector? #{x\ 735}#) (let ((#{old\ 749}# (vector->list #{x\ 735}#))) (let ((#{new\ 751}# (map #{f\ 734}# #{old\ 749}#))) (if (#{and-map*\ 20}# eq? #{old\ 749}# #{new\ 751}#) #{x\ 735}# (list->vector #{new\ 751}#)))) #{x\ 735}#)))))) (#{f\ 734}# #{x\ 727}#))))) (#{chi-lambda-case\ 481}# (lambda (#{e\ 753}# #{r\ 754}# #{w\ 755}# #{s\ 756}# #{mod\ 757}# #{get-formals\ 758}# #{clauses\ 759}#) (letrec ((#{expand-body\ 774}# (lambda (#{req\ 775}# #{opt\ 776}# #{rest\ 777}# #{kw\ 778}# #{body\ 779}# #{vars\ 780}# #{r*\ 781}# #{w*\ 782}# #{inits\ 783}# #{meta\ 784}#) ((lambda (#{tmp\ 795}#) ((lambda (#{tmp\ 796}#) (if (if #{tmp\ 796}# (apply (lambda (#{docstring\ 800}# #{e1\ 801}# #{e2\ 802}#) (string? (syntax->datum #{docstring\ 800}#))) #{tmp\ 796}#) #f) (apply (lambda (#{docstring\ 806}# #{e1\ 807}# #{e2\ 808}#) (#{expand-body\ 774}# #{req\ 775}# #{opt\ 776}# #{rest\ 777}# #{kw\ 778}# (cons #{e1\ 807}# #{e2\ 808}#) #{vars\ 780}# #{r*\ 781}# #{w*\ 782}# #{inits\ 783}# (append #{meta\ 784}# (list (cons 'documentation (syntax->datum #{docstring\ 806}#)))))) #{tmp\ 796}#) ((lambda (#{tmp\ 811}#) (if #{tmp\ 811}# (apply (lambda (#{k\ 816}# #{v\ 817}# #{e1\ 818}# #{e2\ 819}#) (#{expand-body\ 774}# #{req\ 775}# #{opt\ 776}# #{rest\ 777}# #{kw\ 778}# (cons #{e1\ 818}# #{e2\ 819}#) #{vars\ 780}# #{r*\ 781}# #{w*\ 782}# #{inits\ 783}# (append #{meta\ 784}# (syntax->datum (map cons #{k\ 816}# #{v\ 817}#))))) #{tmp\ 811}#) ((lambda (#{tmp\ 823}#) (if #{tmp\ 823}# (apply (lambda (#{e1\ 826}# #{e2\ 827}#) (values #{meta\ 784}# #{req\ 775}# #{opt\ 776}# #{rest\ 777}# #{kw\ 778}# #{inits\ 783}# #{vars\ 780}# (#{chi-body\ 465}# (cons #{e1\ 826}# #{e2\ 827}#) (#{source-wrap\ 443}# #{e\ 753}# #{w\ 755}# #{s\ 756}# #{mod\ 757}#) #{r*\ 781}# #{w*\ 782}# #{mod\ 757}#))) #{tmp\ 823}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 795}#))) ($sc-dispatch #{tmp\ 795}# '(any . each-any))))) ($sc-dispatch #{tmp\ 795}# '(#(vector #(each (any . any))) any . each-any))))) ($sc-dispatch #{tmp\ 795}# '(any any . each-any)))) #{body\ 779}#))) (#{expand-kw\ 772}# (lambda (#{req\ 829}# #{opt\ 830}# #{rest\ 831}# #{kw\ 832}# #{body\ 833}# #{vars\ 834}# #{r*\ 835}# #{w*\ 836}# #{aok\ 837}# #{out\ 838}# #{inits\ 839}#) (if (pair? #{kw\ 832}#) ((lambda (#{tmp\ 853}#) ((lambda (#{tmp\ 854}#) (if #{tmp\ 854}# (apply (lambda (#{k\ 858}# #{id\ 859}# #{i\ 860}#) (let ((#{v\ 863}# (#{gen-var\ 485}# #{id\ 859}#))) (let ((#{l\ 865}# (#{gen-labels\ 390}# (list #{v\ 863}#)))) (let ((#{r**\ 867}# (#{extend-var-env\ 362}# #{l\ 865}# (list #{v\ 863}#) #{r*\ 835}#))) (let ((#{w**\ 869}# (#{make-binding-wrap\ 419}# (list #{id\ 859}#) #{l\ 865}# #{w*\ 836}#))) (#{expand-kw\ 772}# #{req\ 829}# #{opt\ 830}# #{rest\ 831}# (cdr #{kw\ 832}#) #{body\ 833}# (cons #{v\ 863}# #{vars\ 834}#) #{r**\ 867}# #{w**\ 869}# #{aok\ 837}# (cons (list (syntax->datum #{k\ 858}#) (syntax->datum #{id\ 859}#) #{v\ 863}#) #{out\ 838}#) (cons (#{chi\ 457}# #{i\ 860}# #{r*\ 835}# #{w*\ 836}# #{mod\ 757}#) #{inits\ 839}#))))))) #{tmp\ 854}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 853}#))) ($sc-dispatch #{tmp\ 853}# '(any any any)))) (car #{kw\ 832}#)) (#{expand-body\ 774}# #{req\ 829}# #{opt\ 830}# #{rest\ 831}# (if (let ((#{t\ 873}# #{aok\ 837}#)) (if #{t\ 873}# #{t\ 873}# (pair? #{out\ 838}#))) (cons #{aok\ 837}# (reverse #{out\ 838}#)) #f) #{body\ 833}# (reverse #{vars\ 834}#) #{r*\ 835}# #{w*\ 836}# (reverse #{inits\ 839}#) '())))) (#{expand-opt\ 770}# (lambda (#{req\ 875}# #{opt\ 876}# #{rest\ 877}# #{kw\ 878}# #{body\ 879}# #{vars\ 880}# #{r*\ 881}# #{w*\ 882}# #{out\ 883}# #{inits\ 884}#) (if (pair? #{opt\ 876}#) ((lambda (#{tmp\ 897}#) ((lambda (#{tmp\ 898}#) (if #{tmp\ 898}# (apply (lambda (#{id\ 901}# #{i\ 902}#) (let ((#{v\ 905}# (#{gen-var\ 485}# #{id\ 901}#))) (let ((#{l\ 907}# (#{gen-labels\ 390}# (list #{v\ 905}#)))) (let ((#{r**\ 909}# (#{extend-var-env\ 362}# #{l\ 907}# (list #{v\ 905}#) #{r*\ 881}#))) (let ((#{w**\ 911}# (#{make-binding-wrap\ 419}# (list #{id\ 901}#) #{l\ 907}# #{w*\ 882}#))) (#{expand-opt\ 770}# #{req\ 875}# (cdr #{opt\ 876}#) #{rest\ 877}# #{kw\ 878}# #{body\ 879}# (cons #{v\ 905}# #{vars\ 880}#) #{r**\ 909}# #{w**\ 911}# (cons (syntax->datum #{id\ 901}#) #{out\ 883}#) (cons (#{chi\ 457}# #{i\ 902}# #{r*\ 881}# #{w*\ 882}# #{mod\ 757}#) #{inits\ 884}#))))))) #{tmp\ 898}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 897}#))) ($sc-dispatch #{tmp\ 897}# '(any any)))) (car #{opt\ 876}#)) (if #{rest\ 877}# (let ((#{v\ 916}# (#{gen-var\ 485}# #{rest\ 877}#))) (let ((#{l\ 918}# (#{gen-labels\ 390}# (list #{v\ 916}#)))) (let ((#{r*\ 920}# (#{extend-var-env\ 362}# #{l\ 918}# (list #{v\ 916}#) #{r*\ 881}#))) (let ((#{w*\ 922}# (#{make-binding-wrap\ 419}# (list #{rest\ 877}#) #{l\ 918}# #{w*\ 882}#))) (#{expand-kw\ 772}# #{req\ 875}# (if (pair? #{out\ 883}#) (reverse #{out\ 883}#) #f) (syntax->datum #{rest\ 877}#) (if (pair? #{kw\ 878}#) (cdr #{kw\ 878}#) #{kw\ 878}#) #{body\ 879}# (cons #{v\ 916}# #{vars\ 880}#) #{r*\ 920}# #{w*\ 922}# (if (pair? #{kw\ 878}#) (car #{kw\ 878}#) #f) '() #{inits\ 884}#))))) (#{expand-kw\ 772}# #{req\ 875}# (if (pair? #{out\ 883}#) (reverse #{out\ 883}#) #f) #f (if (pair? #{kw\ 878}#) (cdr #{kw\ 878}#) #{kw\ 878}#) #{body\ 879}# #{vars\ 880}# #{r*\ 881}# #{w*\ 882}# (if (pair? #{kw\ 878}#) (car #{kw\ 878}#) #f) '() #{inits\ 884}#))))) (#{expand-req\ 768}# (lambda (#{req\ 924}# #{opt\ 925}# #{rest\ 926}# #{kw\ 927}# #{body\ 928}#) (let ((#{vars\ 936}# (map #{gen-var\ 485}# #{req\ 924}#)) (#{labels\ 937}# (#{gen-labels\ 390}# #{req\ 924}#))) (let ((#{r*\ 940}# (#{extend-var-env\ 362}# #{labels\ 937}# #{vars\ 936}# #{r\ 754}#)) (#{w*\ 941}# (#{make-binding-wrap\ 419}# #{req\ 924}# #{labels\ 937}# #{w\ 755}#))) (#{expand-opt\ 770}# (map syntax->datum #{req\ 924}#) #{opt\ 925}# #{rest\ 926}# #{kw\ 927}# #{body\ 928}# (reverse #{vars\ 936}#) #{r*\ 940}# #{w*\ 941}# '() '())))))) ((lambda (#{tmp\ 942}#) ((lambda (#{tmp\ 943}#) (if #{tmp\ 943}# (apply (lambda () (values (quote ()) #f)) #{tmp\ 943}#) ((lambda (#{tmp\ 944}#) (if #{tmp\ 944}# (apply (lambda (#{args\ 951}# #{e1\ 952}# #{e2\ 953}# #{args*\ 954}# #{e1*\ 955}# #{e2*\ 956}#) (call-with-values (lambda () (#{get-formals\ 758}# #{args\ 951}#)) (lambda (#{req\ 957}# #{opt\ 958}# #{rest\ 959}# #{kw\ 960}#) (call-with-values (lambda () (#{expand-req\ 768}# #{req\ 957}# #{opt\ 958}# #{rest\ 959}# #{kw\ 960}# (cons #{e1\ 952}# #{e2\ 953}#))) (lambda (#{meta\ 966}# #{req\ 967}# #{opt\ 968}# #{rest\ 969}# #{kw\ 970}# #{inits\ 971}# #{vars\ 972}# #{body\ 973}#) (call-with-values (lambda () (#{chi-lambda-case\ 481}# #{e\ 753}# #{r\ 754}# #{w\ 755}# #{s\ 756}# #{mod\ 757}# #{get-formals\ 758}# (map (lambda (#{tmp\ 984}# #{tmp\ 983}# #{tmp\ 982}#) (cons #{tmp\ 982}# (cons #{tmp\ 983}# #{tmp\ 984}#))) #{e2*\ 956}# #{e1*\ 955}# #{args*\ 954}#))) (lambda (#{meta*\ 986}# #{else*\ 987}#) (values (append #{meta\ 966}# #{meta*\ 986}#) (#{build-lambda-case\ 318}# #{s\ 756}# #{req\ 967}# #{opt\ 968}# #{rest\ 969}# #{kw\ 970}# #{inits\ 971}# #{vars\ 972}# #{body\ 973}# #{else*\ 987}#))))))))) #{tmp\ 944}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 942}#))) ($sc-dispatch #{tmp\ 942}# '((any any . each-any) . #(each (any any . each-any))))))) ($sc-dispatch #{tmp\ 942}# (quote ())))) #{clauses\ 759}#)))) (#{lambda*-formals\ 479}# (lambda (#{orig-args\ 990}#) (letrec ((#{check\ 1001}# (lambda (#{req\ 1002}# #{opt\ 1003}# #{rest\ 1004}# #{kw\ 1005}#) (if (#{distinct-bound-ids?\ 437}# (append #{req\ 1002}# (map car #{opt\ 1003}#) (if #{rest\ 1004}# (list #{rest\ 1004}#) '()) (if (pair? #{kw\ 1005}#) (map cadr (cdr #{kw\ 1005}#)) '()))) (values #{req\ 1002}# #{opt\ 1003}# #{rest\ 1004}# #{kw\ 1005}#) (syntax-violation 'lambda* "duplicate identifier in argument list" #{orig-args\ 990}#)))) (#{rest\ 999}# (lambda (#{args\ 1013}# #{req\ 1014}# #{opt\ 1015}# #{kw\ 1016}#) ((lambda (#{tmp\ 1021}#) ((lambda (#{tmp\ 1022}#) (if (if #{tmp\ 1022}# (apply (lambda (#{r\ 1024}#) (#{id?\ 372}# #{r\ 1024}#)) #{tmp\ 1022}#) #f) (apply (lambda (#{r\ 1026}#) (#{check\ 1001}# #{req\ 1014}# #{opt\ 1015}# #{r\ 1026}# #{kw\ 1016}#)) #{tmp\ 1022}#) ((lambda (#{else\ 1028}#) (syntax-violation 'lambda* "invalid rest argument" #{orig-args\ 990}# #{args\ 1013}#)) #{tmp\ 1021}#))) (list #{tmp\ 1021}#))) #{args\ 1013}#))) (#{key\ 997}# (lambda (#{args\ 1029}# #{req\ 1030}# #{opt\ 1031}# #{rkey\ 1032}#) ((lambda (#{tmp\ 1037}#) ((lambda (#{tmp\ 1038}#) (if #{tmp\ 1038}# (apply (lambda () (#{check\ 1001}# #{req\ 1030}# #{opt\ 1031}# #f (cons #f (reverse #{rkey\ 1032}#)))) #{tmp\ 1038}#) ((lambda (#{tmp\ 1039}#) (if (if #{tmp\ 1039}# (apply (lambda (#{a\ 1042}# #{b\ 1043}#) (#{id?\ 372}# #{a\ 1042}#)) #{tmp\ 1039}#) #f) (apply (lambda (#{a\ 1046}# #{b\ 1047}#) ((lambda (#{tmp\ 1049}#) ((lambda (#{k\ 1051}#) (#{key\ 997}# #{b\ 1047}# #{req\ 1030}# #{opt\ 1031}# (cons (cons #{k\ 1051}# (cons #{a\ 1046}# '(#(syntax-object #f ((top) #(ribcage #(k) #((top)) #("i1050")) #(ribcage #(a b) #((top) (top)) #("i1044" "i1045")) #(ribcage () () ()) #(ribcage #(args req opt rkey) #((top) (top) (top) (top)) #("i1033" "i1034" "i1035" "i1036")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i1000" "i998" "i996" "i994" "i992")) #(ribcage #(orig-args) #((top)) #("i991")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile))))) #{rkey\ 1032}#))) #{tmp\ 1049}#)) (symbol->keyword (syntax->datum #{a\ 1046}#)))) #{tmp\ 1039}#) ((lambda (#{tmp\ 1052}#) (if (if #{tmp\ 1052}# (apply (lambda (#{a\ 1056}# #{init\ 1057}# #{b\ 1058}#) (#{id?\ 372}# #{a\ 1056}#)) #{tmp\ 1052}#) #f) (apply (lambda (#{a\ 1062}# #{init\ 1063}# #{b\ 1064}#) ((lambda (#{tmp\ 1066}#) ((lambda (#{k\ 1068}#) (#{key\ 997}# #{b\ 1064}# #{req\ 1030}# #{opt\ 1031}# (cons (list #{k\ 1068}# #{a\ 1062}# #{init\ 1063}#) #{rkey\ 1032}#))) #{tmp\ 1066}#)) (symbol->keyword (syntax->datum #{a\ 1062}#)))) #{tmp\ 1052}#) ((lambda (#{tmp\ 1069}#) (if (if #{tmp\ 1069}# (apply (lambda (#{a\ 1074}# #{init\ 1075}# #{k\ 1076}# #{b\ 1077}#) (if (#{id?\ 372}# #{a\ 1074}#) (keyword? (syntax->datum #{k\ 1076}#)) #f)) #{tmp\ 1069}#) #f) (apply (lambda (#{a\ 1084}# #{init\ 1085}# #{k\ 1086}# #{b\ 1087}#) (#{key\ 997}# #{b\ 1087}# #{req\ 1030}# #{opt\ 1031}# (cons (list #{k\ 1086}# #{a\ 1084}# #{init\ 1085}#) #{rkey\ 1032}#))) #{tmp\ 1069}#) ((lambda (#{tmp\ 1088}#) (if (if #{tmp\ 1088}# (apply (lambda (#{aok\ 1090}#) (eq? (syntax->datum #{aok\ 1090}#) #:allow-other-keys)) #{tmp\ 1088}#) #f) (apply (lambda (#{aok\ 1092}#) (#{check\ 1001}# #{req\ 1030}# #{opt\ 1031}# #f (cons #t (reverse #{rkey\ 1032}#)))) #{tmp\ 1088}#) ((lambda (#{tmp\ 1093}#) (if (if #{tmp\ 1093}# (apply (lambda (#{aok\ 1097}# #{a\ 1098}# #{b\ 1099}#) (if (eq? (syntax->datum #{aok\ 1097}#) #:allow-other-keys) (eq? (syntax->datum #{a\ 1098}#) #:rest) #f)) #{tmp\ 1093}#) #f) (apply (lambda (#{aok\ 1105}# #{a\ 1106}# #{b\ 1107}#) (#{rest\ 999}# #{b\ 1107}# #{req\ 1030}# #{opt\ 1031}# (cons #t (reverse #{rkey\ 1032}#)))) #{tmp\ 1093}#) ((lambda (#{tmp\ 1108}#) (if (if #{tmp\ 1108}# (apply (lambda (#{aok\ 1111}# #{r\ 1112}#) (if (eq? (syntax->datum #{aok\ 1111}#) #:allow-other-keys) (#{id?\ 372}# #{r\ 1112}#) #f)) #{tmp\ 1108}#) #f) (apply (lambda (#{aok\ 1117}# #{r\ 1118}#) (#{rest\ 999}# #{r\ 1118}# #{req\ 1030}# #{opt\ 1031}# (cons #t (reverse #{rkey\ 1032}#)))) #{tmp\ 1108}#) ((lambda (#{tmp\ 1119}#) (if (if #{tmp\ 1119}# (apply (lambda (#{a\ 1122}# #{b\ 1123}#) (eq? (syntax->datum #{a\ 1122}#) #:rest)) #{tmp\ 1119}#) #f) (apply (lambda (#{a\ 1126}# #{b\ 1127}#) (#{rest\ 999}# #{b\ 1127}# #{req\ 1030}# #{opt\ 1031}# (cons #f (reverse #{rkey\ 1032}#)))) #{tmp\ 1119}#) ((lambda (#{tmp\ 1128}#) (if (if #{tmp\ 1128}# (apply (lambda (#{r\ 1130}#) (#{id?\ 372}# #{r\ 1130}#)) #{tmp\ 1128}#) #f) (apply (lambda (#{r\ 1132}#) (#{rest\ 999}# #{r\ 1132}# #{req\ 1030}# #{opt\ 1031}# (cons #f (reverse #{rkey\ 1032}#)))) #{tmp\ 1128}#) ((lambda (#{else\ 1134}#) (syntax-violation 'lambda* "invalid keyword argument list" #{orig-args\ 990}# #{args\ 1029}#)) #{tmp\ 1037}#))) (list #{tmp\ 1037}#)))) ($sc-dispatch #{tmp\ 1037}# '(any any))))) ($sc-dispatch #{tmp\ 1037}# '(any . any))))) ($sc-dispatch #{tmp\ 1037}# '(any any any))))) ($sc-dispatch #{tmp\ 1037}# '(any))))) ($sc-dispatch #{tmp\ 1037}# '((any any any) . any))))) ($sc-dispatch #{tmp\ 1037}# '((any any) . any))))) ($sc-dispatch #{tmp\ 1037}# '(any . any))))) ($sc-dispatch #{tmp\ 1037}# (quote ())))) #{args\ 1029}#))) (#{opt\ 995}# (lambda (#{args\ 1135}# #{req\ 1136}# #{ropt\ 1137}#) ((lambda (#{tmp\ 1141}#) ((lambda (#{tmp\ 1142}#) (if #{tmp\ 1142}# (apply (lambda () (#{check\ 1001}# #{req\ 1136}# (reverse #{ropt\ 1137}#) #f '())) #{tmp\ 1142}#) ((lambda (#{tmp\ 1143}#) (if (if #{tmp\ 1143}# (apply (lambda (#{a\ 1146}# #{b\ 1147}#) (#{id?\ 372}# #{a\ 1146}#)) #{tmp\ 1143}#) #f) (apply (lambda (#{a\ 1150}# #{b\ 1151}#) (#{opt\ 995}# #{b\ 1151}# #{req\ 1136}# (cons (cons #{a\ 1150}# '(#(syntax-object #f ((top) #(ribcage #(a b) #((top) (top)) #("i1148" "i1149")) #(ribcage () () ()) #(ribcage #(args req ropt) #((top) (top) (top)) #("i1138" "i1139" "i1140")) #(ribcage (check rest key opt req) ((top) (top) (top) (top) (top)) ("i1000" "i998" "i996" "i994" "i992")) #(ribcage #(orig-args) #((top)) #("i991")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)))) #{ropt\ 1137}#))) #{tmp\ 1143}#) ((lambda (#{tmp\ 1152}#) (if (if #{tmp\ 1152}# (apply (lambda (#{a\ 1156}# #{init\ 1157}# #{b\ 1158}#) (#{id?\ 372}# #{a\ 1156}#)) #{tmp\ 1152}#) #f) (apply (lambda (#{a\ 1162}# #{init\ 1163}# #{b\ 1164}#) (#{opt\ 995}# #{b\ 1164}# #{req\ 1136}# (cons (list #{a\ 1162}# #{init\ 1163}#) #{ropt\ 1137}#))) #{tmp\ 1152}#) ((lambda (#{tmp\ 1165}#) (if (if #{tmp\ 1165}# (apply (lambda (#{a\ 1168}# #{b\ 1169}#) (eq? (syntax->datum #{a\ 1168}#) #:key)) #{tmp\ 1165}#) #f) (apply (lambda (#{a\ 1172}# #{b\ 1173}#) (#{key\ 997}# #{b\ 1173}# #{req\ 1136}# (reverse #{ropt\ 1137}#) '())) #{tmp\ 1165}#) ((lambda (#{tmp\ 1174}#) (if (if #{tmp\ 1174}# (apply (lambda (#{a\ 1177}# #{b\ 1178}#) (eq? (syntax->datum #{a\ 1177}#) #:rest)) #{tmp\ 1174}#) #f) (apply (lambda (#{a\ 1181}# #{b\ 1182}#) (#{rest\ 999}# #{b\ 1182}# #{req\ 1136}# (reverse #{ropt\ 1137}#) '())) #{tmp\ 1174}#) ((lambda (#{tmp\ 1183}#) (if (if #{tmp\ 1183}# (apply (lambda (#{r\ 1185}#) (#{id?\ 372}# #{r\ 1185}#)) #{tmp\ 1183}#) #f) (apply (lambda (#{r\ 1187}#) (#{rest\ 999}# #{r\ 1187}# #{req\ 1136}# (reverse #{ropt\ 1137}#) '())) #{tmp\ 1183}#) ((lambda (#{else\ 1189}#) (syntax-violation 'lambda* "invalid optional argument list" #{orig-args\ 990}# #{args\ 1135}#)) #{tmp\ 1141}#))) (list #{tmp\ 1141}#)))) ($sc-dispatch #{tmp\ 1141}# '(any any))))) ($sc-dispatch #{tmp\ 1141}# '(any . any))))) ($sc-dispatch #{tmp\ 1141}# '((any any) . any))))) ($sc-dispatch #{tmp\ 1141}# '(any . any))))) ($sc-dispatch #{tmp\ 1141}# (quote ())))) #{args\ 1135}#))) (#{req\ 993}# (lambda (#{args\ 1190}# #{rreq\ 1191}#) ((lambda (#{tmp\ 1194}#) ((lambda (#{tmp\ 1195}#) (if #{tmp\ 1195}# (apply (lambda () (#{check\ 1001}# (reverse #{rreq\ 1191}#) '() #f '())) #{tmp\ 1195}#) ((lambda (#{tmp\ 1196}#) (if (if #{tmp\ 1196}# (apply (lambda (#{a\ 1199}# #{b\ 1200}#) (#{id?\ 372}# #{a\ 1199}#)) #{tmp\ 1196}#) #f) (apply (lambda (#{a\ 1203}# #{b\ 1204}#) (#{req\ 993}# #{b\ 1204}# (cons #{a\ 1203}# #{rreq\ 1191}#))) #{tmp\ 1196}#) ((lambda (#{tmp\ 1205}#) (if (if #{tmp\ 1205}# (apply (lambda (#{a\ 1208}# #{b\ 1209}#) (eq? (syntax->datum #{a\ 1208}#) #:optional)) #{tmp\ 1205}#) #f) (apply (lambda (#{a\ 1212}# #{b\ 1213}#) (#{opt\ 995}# #{b\ 1213}# (reverse #{rreq\ 1191}#) '())) #{tmp\ 1205}#) ((lambda (#{tmp\ 1214}#) (if (if #{tmp\ 1214}# (apply (lambda (#{a\ 1217}# #{b\ 1218}#) (eq? (syntax->datum #{a\ 1217}#) #:key)) #{tmp\ 1214}#) #f) (apply (lambda (#{a\ 1221}# #{b\ 1222}#) (#{key\ 997}# #{b\ 1222}# (reverse #{rreq\ 1191}#) '() '())) #{tmp\ 1214}#) ((lambda (#{tmp\ 1223}#) (if (if #{tmp\ 1223}# (apply (lambda (#{a\ 1226}# #{b\ 1227}#) (eq? (syntax->datum #{a\ 1226}#) #:rest)) #{tmp\ 1223}#) #f) (apply (lambda (#{a\ 1230}# #{b\ 1231}#) (#{rest\ 999}# #{b\ 1231}# (reverse #{rreq\ 1191}#) '() '())) #{tmp\ 1223}#) ((lambda (#{tmp\ 1232}#) (if (if #{tmp\ 1232}# (apply (lambda (#{r\ 1234}#) (#{id?\ 372}# #{r\ 1234}#)) #{tmp\ 1232}#) #f) (apply (lambda (#{r\ 1236}#) (#{rest\ 999}# #{r\ 1236}# (reverse #{rreq\ 1191}#) '() '())) #{tmp\ 1232}#) ((lambda (#{else\ 1238}#) (syntax-violation 'lambda* "invalid argument list" #{orig-args\ 990}# #{args\ 1190}#)) #{tmp\ 1194}#))) (list #{tmp\ 1194}#)))) ($sc-dispatch #{tmp\ 1194}# '(any any))))) ($sc-dispatch #{tmp\ 1194}# '(any . any))))) ($sc-dispatch #{tmp\ 1194}# '(any . any))))) ($sc-dispatch #{tmp\ 1194}# '(any . any))))) ($sc-dispatch #{tmp\ 1194}# (quote ())))) #{args\ 1190}#)))) (#{req\ 993}# #{orig-args\ 990}# (quote ()))))) (#{chi-simple-lambda\ 477}# (lambda (#{e\ 1239}# #{r\ 1240}# #{w\ 1241}# #{s\ 1242}# #{mod\ 1243}# #{req\ 1244}# #{rest\ 1245}# #{meta\ 1246}# #{body\ 1247}#) (let ((#{ids\ 1259}# (if #{rest\ 1245}# (append #{req\ 1244}# (list #{rest\ 1245}#)) #{req\ 1244}#))) (let ((#{vars\ 1261}# (map #{gen-var\ 485}# #{ids\ 1259}#))) (let ((#{labels\ 1263}# (#{gen-labels\ 390}# #{ids\ 1259}#))) (#{build-simple-lambda\ 314}# #{s\ 1242}# (map syntax->datum #{req\ 1244}#) (if #{rest\ 1245}# (syntax->datum #{rest\ 1245}#) #f) #{vars\ 1261}# #{meta\ 1246}# (#{chi-body\ 465}# #{body\ 1247}# (#{source-wrap\ 443}# #{e\ 1239}# #{w\ 1241}# #{s\ 1242}# #{mod\ 1243}#) (#{extend-var-env\ 362}# #{labels\ 1263}# #{vars\ 1261}# #{r\ 1240}#) (#{make-binding-wrap\ 419}# #{ids\ 1259}# #{labels\ 1263}# #{w\ 1241}#) #{mod\ 1243}#))))))) (#{lambda-formals\ 475}# (lambda (#{orig-args\ 1266}#) (letrec ((#{check\ 1271}# (lambda (#{req\ 1272}# #{rest\ 1273}#) (if (#{distinct-bound-ids?\ 437}# (if #{rest\ 1273}# (cons #{rest\ 1273}# #{req\ 1272}#) #{req\ 1272}#)) (values #{req\ 1272}# #f #{rest\ 1273}# #f) (syntax-violation 'lambda "duplicate identifier in argument list" #{orig-args\ 1266}#)))) (#{req\ 1269}# (lambda (#{args\ 1279}# #{rreq\ 1280}#) ((lambda (#{tmp\ 1283}#) ((lambda (#{tmp\ 1284}#) (if #{tmp\ 1284}# (apply (lambda () (#{check\ 1271}# (reverse #{rreq\ 1280}#) #f)) #{tmp\ 1284}#) ((lambda (#{tmp\ 1285}#) (if (if #{tmp\ 1285}# (apply (lambda (#{a\ 1288}# #{b\ 1289}#) (#{id?\ 372}# #{a\ 1288}#)) #{tmp\ 1285}#) #f) (apply (lambda (#{a\ 1292}# #{b\ 1293}#) (#{req\ 1269}# #{b\ 1293}# (cons #{a\ 1292}# #{rreq\ 1280}#))) #{tmp\ 1285}#) ((lambda (#{tmp\ 1294}#) (if (if #{tmp\ 1294}# (apply (lambda (#{r\ 1296}#) (#{id?\ 372}# #{r\ 1296}#)) #{tmp\ 1294}#) #f) (apply (lambda (#{r\ 1298}#) (#{check\ 1271}# (reverse #{rreq\ 1280}#) #{r\ 1298}#)) #{tmp\ 1294}#) ((lambda (#{else\ 1300}#) (syntax-violation 'lambda "invalid argument list" #{orig-args\ 1266}# #{args\ 1279}#)) #{tmp\ 1283}#))) (list #{tmp\ 1283}#)))) ($sc-dispatch #{tmp\ 1283}# '(any . any))))) ($sc-dispatch #{tmp\ 1283}# (quote ())))) #{args\ 1279}#)))) (#{req\ 1269}# #{orig-args\ 1266}# (quote ()))))) (#{ellipsis?\ 473}# (lambda (#{x\ 1301}#) (if (#{nonsymbol-id?\ 370}# #{x\ 1301}#) (#{free-id=?\ 431}# #{x\ 1301}# '#(syntax-object ... ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1302")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile))) #f))) (#{chi-void\ 471}# (lambda () (#{build-void\ 292}# #f))) (#{eval-local-transformer\ 469}# (lambda (#{expanded\ 1306}# #{mod\ 1307}#) (let ((#{p\ 1311}# (#{local-eval-hook\ 283}# #{expanded\ 1306}# #{mod\ 1307}#))) (if (procedure? #{p\ 1311}#) #{p\ 1311}# (syntax-violation #f "nonprocedure transformer" #{p\ 1311}#))))) (#{chi-local-syntax\ 467}# (lambda (#{rec?\ 1312}# #{e\ 1313}# #{r\ 1314}# #{w\ 1315}# #{s\ 1316}# #{mod\ 1317}# #{k\ 1318}#) ((lambda (#{tmp\ 1326}#) ((lambda (#{tmp\ 1327}#) (if #{tmp\ 1327}# (apply (lambda (#{_\ 1333}# #{id\ 1334}# #{val\ 1335}# #{e1\ 1336}# #{e2\ 1337}#) (let ((#{ids\ 1339}# #{id\ 1334}#)) (if (not (#{valid-bound-ids?\ 435}# #{ids\ 1339}#)) (syntax-violation #f "duplicate bound keyword" #{e\ 1313}#) (let ((#{labels\ 1342}# (#{gen-labels\ 390}# #{ids\ 1339}#))) (let ((#{new-w\ 1344}# (#{make-binding-wrap\ 419}# #{ids\ 1339}# #{labels\ 1342}# #{w\ 1315}#))) (#{k\ 1318}# (cons #{e1\ 1336}# #{e2\ 1337}#) (#{extend-env\ 360}# #{labels\ 1342}# (let ((#{w\ 1348}# (if #{rec?\ 1312}# #{new-w\ 1344}# #{w\ 1315}#)) (#{trans-r\ 1349}# (#{macros-only-env\ 364}# #{r\ 1314}#))) (map (lambda (#{x\ 1350}#) (cons 'macro (#{eval-local-transformer\ 469}# (#{chi\ 457}# #{x\ 1350}# #{trans-r\ 1349}# #{w\ 1348}# #{mod\ 1317}#) #{mod\ 1317}#))) #{val\ 1335}#)) #{r\ 1314}#) #{new-w\ 1344}# #{s\ 1316}# #{mod\ 1317}#)))))) #{tmp\ 1327}#) ((lambda (#{_\ 1355}#) (syntax-violation #f "bad local syntax definition" (#{source-wrap\ 443}# #{e\ 1313}# #{w\ 1315}# #{s\ 1316}# #{mod\ 1317}#))) #{tmp\ 1326}#))) ($sc-dispatch #{tmp\ 1326}# '(any #(each (any any)) any . each-any)))) #{e\ 1313}#))) (#{chi-body\ 465}# (lambda (#{body\ 1356}# #{outer-form\ 1357}# #{r\ 1358}# #{w\ 1359}# #{mod\ 1360}#) (let ((#{r\ 1368}# (cons '("placeholder" placeholder) #{r\ 1358}#))) (let ((#{ribcage\ 1370}# (#{make-ribcage\ 393}# '() '() '()))) (let ((#{w\ 1373}# (#{make-wrap\ 377}# (#{wrap-marks\ 379}# #{w\ 1359}#) (cons #{ribcage\ 1370}# (#{wrap-subst\ 381}# #{w\ 1359}#))))) (letrec ((#{parse\ 1382}# (lambda (#{body\ 1383}# #{ids\ 1384}# #{labels\ 1385}# #{var-ids\ 1386}# #{vars\ 1387}# #{vals\ 1388}# #{bindings\ 1389}#) (if (null? #{body\ 1383}#) (syntax-violation #f "no expressions in body" #{outer-form\ 1357}#) (let ((#{e\ 1394}# (cdar #{body\ 1383}#)) (#{er\ 1395}# (caar #{body\ 1383}#))) (call-with-values (lambda () (#{syntax-type\ 453}# #{e\ 1394}# #{er\ 1395}# '(()) (#{source-annotation\ 351}# #{er\ 1395}#) #{ribcage\ 1370}# #{mod\ 1360}# #f)) (lambda (#{type\ 1397}# #{value\ 1398}# #{e\ 1399}# #{w\ 1400}# #{s\ 1401}# #{mod\ 1402}#) (if (memv #{type\ 1397}# '(define-form)) (let ((#{id\ 1412}# (#{wrap\ 441}# #{value\ 1398}# #{w\ 1400}# #{mod\ 1402}#)) (#{label\ 1413}# (#{gen-label\ 388}#))) (let ((#{var\ 1415}# (#{gen-var\ 485}# #{id\ 1412}#))) (begin (#{extend-ribcage!\ 417}# #{ribcage\ 1370}# #{id\ 1412}# #{label\ 1413}#) (#{parse\ 1382}# (cdr #{body\ 1383}#) (cons #{id\ 1412}# #{ids\ 1384}#) (cons #{label\ 1413}# #{labels\ 1385}#) (cons #{id\ 1412}# #{var-ids\ 1386}#) (cons #{var\ 1415}# #{vars\ 1387}#) (cons (cons #{er\ 1395}# (#{wrap\ 441}# #{e\ 1399}# #{w\ 1400}# #{mod\ 1402}#)) #{vals\ 1388}#) (cons (cons 'lexical #{var\ 1415}#) #{bindings\ 1389}#))))) (if (memv #{type\ 1397}# '(define-syntax-form)) (let ((#{id\ 1420}# (#{wrap\ 441}# #{value\ 1398}# #{w\ 1400}# #{mod\ 1402}#)) (#{label\ 1421}# (#{gen-label\ 388}#))) (begin (#{extend-ribcage!\ 417}# #{ribcage\ 1370}# #{id\ 1420}# #{label\ 1421}#) (#{parse\ 1382}# (cdr #{body\ 1383}#) (cons #{id\ 1420}# #{ids\ 1384}#) (cons #{label\ 1421}# #{labels\ 1385}#) #{var-ids\ 1386}# #{vars\ 1387}# #{vals\ 1388}# (cons (cons 'macro (cons #{er\ 1395}# (#{wrap\ 441}# #{e\ 1399}# #{w\ 1400}# #{mod\ 1402}#))) #{bindings\ 1389}#)))) (if (memv #{type\ 1397}# '(begin-form)) ((lambda (#{tmp\ 1424}#) ((lambda (#{tmp\ 1425}#) (if #{tmp\ 1425}# (apply (lambda (#{_\ 1428}# #{e1\ 1429}#) (#{parse\ 1382}# (letrec ((#{f\ 1432}# (lambda (#{forms\ 1433}#) (if (null? #{forms\ 1433}#) (cdr #{body\ 1383}#) (cons (cons #{er\ 1395}# (#{wrap\ 441}# (car #{forms\ 1433}#) #{w\ 1400}# #{mod\ 1402}#)) (#{f\ 1432}# (cdr #{forms\ 1433}#))))))) (#{f\ 1432}# #{e1\ 1429}#)) #{ids\ 1384}# #{labels\ 1385}# #{var-ids\ 1386}# #{vars\ 1387}# #{vals\ 1388}# #{bindings\ 1389}#)) #{tmp\ 1425}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1424}#))) ($sc-dispatch #{tmp\ 1424}# '(any . each-any)))) #{e\ 1399}#) (if (memv #{type\ 1397}# '(local-syntax-form)) (#{chi-local-syntax\ 467}# #{value\ 1398}# #{e\ 1399}# #{er\ 1395}# #{w\ 1400}# #{s\ 1401}# #{mod\ 1402}# (lambda (#{forms\ 1436}# #{er\ 1437}# #{w\ 1438}# #{s\ 1439}# #{mod\ 1440}#) (#{parse\ 1382}# (letrec ((#{f\ 1448}# (lambda (#{forms\ 1449}#) (if (null? #{forms\ 1449}#) (cdr #{body\ 1383}#) (cons (cons #{er\ 1437}# (#{wrap\ 441}# (car #{forms\ 1449}#) #{w\ 1438}# #{mod\ 1440}#)) (#{f\ 1448}# (cdr #{forms\ 1449}#))))))) (#{f\ 1448}# #{forms\ 1436}#)) #{ids\ 1384}# #{labels\ 1385}# #{var-ids\ 1386}# #{vars\ 1387}# #{vals\ 1388}# #{bindings\ 1389}#))) (if (null? #{ids\ 1384}#) (#{build-sequence\ 324}# #f (map (lambda (#{x\ 1452}#) (#{chi\ 457}# (cdr #{x\ 1452}#) (car #{x\ 1452}#) '(()) #{mod\ 1402}#)) (cons (cons #{er\ 1395}# (#{source-wrap\ 443}# #{e\ 1399}# #{w\ 1400}# #{s\ 1401}# #{mod\ 1402}#)) (cdr #{body\ 1383}#)))) (begin (if (not (#{valid-bound-ids?\ 435}# #{ids\ 1384}#)) (syntax-violation #f "invalid or duplicate identifier in definition" #{outer-form\ 1357}#)) (letrec ((#{loop\ 1459}# (lambda (#{bs\ 1460}# #{er-cache\ 1461}# #{r-cache\ 1462}#) (if (not (null? #{bs\ 1460}#)) (let ((#{b\ 1465}# (car #{bs\ 1460}#))) (if (eq? (car #{b\ 1465}#) 'macro) (let ((#{er\ 1468}# (cadr #{b\ 1465}#))) (let ((#{r-cache\ 1470}# (if (eq? #{er\ 1468}# #{er-cache\ 1461}#) #{r-cache\ 1462}# (#{macros-only-env\ 364}# #{er\ 1468}#)))) (begin (set-cdr! #{b\ 1465}# (#{eval-local-transformer\ 469}# (#{chi\ 457}# (cddr #{b\ 1465}#) #{r-cache\ 1470}# '(()) #{mod\ 1402}#) #{mod\ 1402}#)) (#{loop\ 1459}# (cdr #{bs\ 1460}#) #{er\ 1468}# #{r-cache\ 1470}#)))) (#{loop\ 1459}# (cdr #{bs\ 1460}#) #{er-cache\ 1461}# #{r-cache\ 1462}#))))))) (#{loop\ 1459}# #{bindings\ 1389}# #f #f)) (set-cdr! #{r\ 1368}# (#{extend-env\ 360}# #{labels\ 1385}# #{bindings\ 1389}# (cdr #{r\ 1368}#))) (#{build-letrec\ 330}# #f (map syntax->datum #{var-ids\ 1386}#) #{vars\ 1387}# (map (lambda (#{x\ 1473}#) (#{chi\ 457}# (cdr #{x\ 1473}#) (car #{x\ 1473}#) '(()) #{mod\ 1402}#)) #{vals\ 1388}#) (#{build-sequence\ 324}# #f (map (lambda (#{x\ 1477}#) (#{chi\ 457}# (cdr #{x\ 1477}#) (car #{x\ 1477}#) '(()) #{mod\ 1402}#)) (cons (cons #{er\ 1395}# (#{source-wrap\ 443}# #{e\ 1399}# #{w\ 1400}# #{s\ 1401}# #{mod\ 1402}#)) (cdr #{body\ 1383}#)))))))))))))))))) (#{parse\ 1382}# (map (lambda (#{x\ 1390}#) (cons #{r\ 1368}# (#{wrap\ 441}# #{x\ 1390}# #{w\ 1373}# #{mod\ 1360}#))) #{body\ 1356}#) '() '() '() '() '() '()))))))) (#{chi-macro\ 463}# (lambda (#{p\ 1480}# #{e\ 1481}# #{r\ 1482}# #{w\ 1483}# #{s\ 1484}# #{rib\ 1485}# #{mod\ 1486}#) (letrec ((#{rebuild-macro-output\ 1495}# (lambda (#{x\ 1496}# #{m\ 1497}#) (if (pair? #{x\ 1496}#) (#{decorate-source\ 290}# (cons (#{rebuild-macro-output\ 1495}# (car #{x\ 1496}#) #{m\ 1497}#) (#{rebuild-macro-output\ 1495}# (cdr #{x\ 1496}#) #{m\ 1497}#)) #{s\ 1484}#) (if (#{syntax-object?\ 336}# #{x\ 1496}#) (let ((#{w\ 1505}# (#{syntax-object-wrap\ 340}# #{x\ 1496}#))) (let ((#{ms\ 1508}# (#{wrap-marks\ 379}# #{w\ 1505}#)) (#{s\ 1509}# (#{wrap-subst\ 381}# #{w\ 1505}#))) (if (if (pair? #{ms\ 1508}#) (eq? (car #{ms\ 1508}#) #f) #f) (#{make-syntax-object\ 334}# (#{syntax-object-expression\ 338}# #{x\ 1496}#) (#{make-wrap\ 377}# (cdr #{ms\ 1508}#) (if #{rib\ 1485}# (cons #{rib\ 1485}# (cdr #{s\ 1509}#)) (cdr #{s\ 1509}#))) (#{syntax-object-module\ 342}# #{x\ 1496}#)) (#{make-syntax-object\ 334}# (#{decorate-source\ 290}# (#{syntax-object-expression\ 338}# #{x\ 1496}#) #{s\ 1509}#) (#{make-wrap\ 377}# (cons #{m\ 1497}# #{ms\ 1508}#) (if #{rib\ 1485}# (cons #{rib\ 1485}# (cons 'shift #{s\ 1509}#)) (cons (quote shift) #{s\ 1509}#))) (#{syntax-object-module\ 342}# #{x\ 1496}#))))) (if (vector? #{x\ 1496}#) (let ((#{n\ 1517}# (vector-length #{x\ 1496}#))) (let ((#{v\ 1519}# (#{decorate-source\ 290}# (make-vector #{n\ 1517}#) #{x\ 1496}#))) (letrec ((#{loop\ 1522}# (lambda (#{i\ 1523}#) (if (#{fx=\ 277}# #{i\ 1523}# #{n\ 1517}#) (begin (if #f #f) #{v\ 1519}#) (begin (vector-set! #{v\ 1519}# #{i\ 1523}# (#{rebuild-macro-output\ 1495}# (vector-ref #{x\ 1496}# #{i\ 1523}#) #{m\ 1497}#)) (#{loop\ 1522}# (#{fx+\ 273}# #{i\ 1523}# 1))))))) (#{loop\ 1522}# 0)))) (if (symbol? #{x\ 1496}#) (syntax-violation #f "encountered raw symbol in macro output" (#{source-wrap\ 443}# #{e\ 1481}# #{w\ 1483}# (#{wrap-subst\ 381}# #{w\ 1483}#) #{mod\ 1486}#) #{x\ 1496}#) (#{decorate-source\ 290}# #{x\ 1496}# #{s\ 1484}#)))))))) (#{rebuild-macro-output\ 1495}# (#{p\ 1480}# (#{source-wrap\ 443}# #{e\ 1481}# (#{anti-mark\ 413}# #{w\ 1483}#) #{s\ 1484}# #{mod\ 1486}#)) (gensym "m"))))) (#{chi-application\ 461}# (lambda (#{x\ 1530}# #{e\ 1531}# #{r\ 1532}# #{w\ 1533}# #{s\ 1534}# #{mod\ 1535}#) ((lambda (#{tmp\ 1542}#) ((lambda (#{tmp\ 1543}#) (if #{tmp\ 1543}# (apply (lambda (#{e0\ 1546}# #{e1\ 1547}#) (#{build-application\ 294}# #{s\ 1534}# #{x\ 1530}# (map (lambda (#{e\ 1548}#) (#{chi\ 457}# #{e\ 1548}# #{r\ 1532}# #{w\ 1533}# #{mod\ 1535}#)) #{e1\ 1547}#))) #{tmp\ 1543}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1542}#))) ($sc-dispatch #{tmp\ 1542}# '(any . each-any)))) #{e\ 1531}#))) (#{chi-expr\ 459}# (lambda (#{type\ 1551}# #{value\ 1552}# #{e\ 1553}# #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#) (if (memv #{type\ 1551}# (quote (lexical))) (#{build-lexical-reference\ 300}# 'value #{s\ 1556}# #{e\ 1553}# #{value\ 1552}#) (if (memv #{type\ 1551}# (quote (core core-form))) (#{value\ 1552}# #{e\ 1553}# #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#) (if (memv #{type\ 1551}# (quote (module-ref))) (call-with-values (lambda () (#{value\ 1552}# #{e\ 1553}# #{r\ 1554}# #{w\ 1555}#)) (lambda (#{e\ 1568}# #{r\ 1569}# #{w\ 1570}# #{s\ 1571}# #{mod\ 1572}#) (#{chi\ 457}# #{e\ 1568}# #{r\ 1569}# #{w\ 1570}# #{mod\ 1572}#))) (if (memv #{type\ 1551}# (quote (lexical-call))) (#{chi-application\ 461}# (#{build-lexical-reference\ 300}# 'fun (#{source-annotation\ 351}# (car #{e\ 1553}#)) (car #{e\ 1553}#) #{value\ 1552}#) #{e\ 1553}# #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#) (if (memv #{type\ 1551}# (quote (global-call))) (#{chi-application\ 461}# (#{build-global-reference\ 306}# (#{source-annotation\ 351}# (car #{e\ 1553}#)) (if (#{syntax-object?\ 336}# #{value\ 1552}#) (#{syntax-object-expression\ 338}# #{value\ 1552}#) #{value\ 1552}#) (if (#{syntax-object?\ 336}# #{value\ 1552}#) (#{syntax-object-module\ 342}# #{value\ 1552}#) #{mod\ 1557}#)) #{e\ 1553}# #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#) (if (memv #{type\ 1551}# (quote (constant))) (#{build-data\ 322}# #{s\ 1556}# (#{strip\ 483}# (#{source-wrap\ 443}# #{e\ 1553}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#) '(()))) (if (memv #{type\ 1551}# (quote (global))) (#{build-global-reference\ 306}# #{s\ 1556}# #{value\ 1552}# #{mod\ 1557}#) (if (memv #{type\ 1551}# (quote (call))) (#{chi-application\ 461}# (#{chi\ 457}# (car #{e\ 1553}#) #{r\ 1554}# #{w\ 1555}# #{mod\ 1557}#) #{e\ 1553}# #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#) (if (memv #{type\ 1551}# (quote (begin-form))) ((lambda (#{tmp\ 1585}#) ((lambda (#{tmp\ 1586}#) (if #{tmp\ 1586}# (apply (lambda (#{_\ 1590}# #{e1\ 1591}# #{e2\ 1592}#) (#{chi-sequence\ 445}# (cons #{e1\ 1591}# #{e2\ 1592}#) #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#)) #{tmp\ 1586}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1585}#))) ($sc-dispatch #{tmp\ 1585}# '(any any . each-any)))) #{e\ 1553}#) (if (memv #{type\ 1551}# '(local-syntax-form)) (#{chi-local-syntax\ 467}# #{value\ 1552}# #{e\ 1553}# #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}# #{chi-sequence\ 445}#) (if (memv #{type\ 1551}# '(eval-when-form)) ((lambda (#{tmp\ 1596}#) ((lambda (#{tmp\ 1597}#) (if #{tmp\ 1597}# (apply (lambda (#{_\ 1602}# #{x\ 1603}# #{e1\ 1604}# #{e2\ 1605}#) (let ((#{when-list\ 1607}# (#{chi-when-list\ 451}# #{e\ 1553}# #{x\ 1603}# #{w\ 1555}#))) (if (memq 'eval #{when-list\ 1607}#) (#{chi-sequence\ 445}# (cons #{e1\ 1604}# #{e2\ 1605}#) #{r\ 1554}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#) (#{chi-void\ 471}#)))) #{tmp\ 1597}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1596}#))) ($sc-dispatch #{tmp\ 1596}# '(any each-any any . each-any)))) #{e\ 1553}#) (if (memv #{type\ 1551}# '(define-form define-syntax-form)) (syntax-violation #f "definition in expression context" #{e\ 1553}# (#{wrap\ 441}# #{value\ 1552}# #{w\ 1555}# #{mod\ 1557}#)) (if (memv #{type\ 1551}# '(syntax)) (syntax-violation #f "reference to pattern variable outside syntax form" (#{source-wrap\ 443}# #{e\ 1553}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#)) (if (memv #{type\ 1551}# '(displaced-lexical)) (syntax-violation #f "reference to identifier outside its scope" (#{source-wrap\ 443}# #{e\ 1553}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#)) (syntax-violation #f "unexpected syntax" (#{source-wrap\ 443}# #{e\ 1553}# #{w\ 1555}# #{s\ 1556}# #{mod\ 1557}#)))))))))))))))))) (#{chi\ 457}# (lambda (#{e\ 1614}# #{r\ 1615}# #{w\ 1616}# #{mod\ 1617}#) (call-with-values (lambda () (#{syntax-type\ 453}# #{e\ 1614}# #{r\ 1615}# #{w\ 1616}# (#{source-annotation\ 351}# #{e\ 1614}#) #f #{mod\ 1617}# #f)) (lambda (#{type\ 1622}# #{value\ 1623}# #{e\ 1624}# #{w\ 1625}# #{s\ 1626}# #{mod\ 1627}#) (#{chi-expr\ 459}# #{type\ 1622}# #{value\ 1623}# #{e\ 1624}# #{r\ 1615}# #{w\ 1625}# #{s\ 1626}# #{mod\ 1627}#))))) (#{chi-top\ 455}# (lambda (#{e\ 1634}# #{r\ 1635}# #{w\ 1636}# #{m\ 1637}# #{esew\ 1638}# #{mod\ 1639}#) (call-with-values (lambda () (#{syntax-type\ 453}# #{e\ 1634}# #{r\ 1635}# #{w\ 1636}# (#{source-annotation\ 351}# #{e\ 1634}#) #f #{mod\ 1639}# #f)) (lambda (#{type\ 1660}# #{value\ 1661}# #{e\ 1662}# #{w\ 1663}# #{s\ 1664}# #{mod\ 1665}#) (if (memv #{type\ 1660}# (quote (begin-form))) ((lambda (#{tmp\ 1673}#) ((lambda (#{tmp\ 1674}#) (if #{tmp\ 1674}# (apply (lambda (#{_\ 1676}#) (#{chi-void\ 471}#)) #{tmp\ 1674}#) ((lambda (#{tmp\ 1677}#) (if #{tmp\ 1677}# (apply (lambda (#{_\ 1681}# #{e1\ 1682}# #{e2\ 1683}#) (#{chi-top-sequence\ 447}# (cons #{e1\ 1682}# #{e2\ 1683}#) #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# #{m\ 1637}# #{esew\ 1638}# #{mod\ 1665}#)) #{tmp\ 1677}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1673}#))) ($sc-dispatch #{tmp\ 1673}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 1673}# (quote (any))))) #{e\ 1662}#) (if (memv #{type\ 1660}# (quote (local-syntax-form))) (#{chi-local-syntax\ 467}# #{value\ 1661}# #{e\ 1662}# #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# #{mod\ 1665}# (lambda (#{body\ 1686}# #{r\ 1687}# #{w\ 1688}# #{s\ 1689}# #{mod\ 1690}#) (#{chi-top-sequence\ 447}# #{body\ 1686}# #{r\ 1687}# #{w\ 1688}# #{s\ 1689}# #{m\ 1637}# #{esew\ 1638}# #{mod\ 1690}#))) (if (memv #{type\ 1660}# (quote (eval-when-form))) ((lambda (#{tmp\ 1697}#) ((lambda (#{tmp\ 1698}#) (if #{tmp\ 1698}# (apply (lambda (#{_\ 1703}# #{x\ 1704}# #{e1\ 1705}# #{e2\ 1706}#) (let ((#{when-list\ 1709}# (#{chi-when-list\ 451}# #{e\ 1662}# #{x\ 1704}# #{w\ 1663}#)) (#{body\ 1710}# (cons #{e1\ 1705}# #{e2\ 1706}#))) (if (eq? #{m\ 1637}# (quote e)) (if (memq 'eval #{when-list\ 1709}#) (#{chi-top-sequence\ 447}# #{body\ 1710}# #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# (if (memq 'expand #{when-list\ 1709}#) 'c&e 'e) '(eval) #{mod\ 1665}#) (begin (if (memq 'expand #{when-list\ 1709}#) (#{top-level-eval-hook\ 281}# (#{chi-top-sequence\ 447}# #{body\ 1710}# #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# 'e '(eval) #{mod\ 1665}#) #{mod\ 1665}#)) (#{chi-void\ 471}#))) (if (memq 'load #{when-list\ 1709}#) (if (let ((#{t\ 1719}# (memq 'compile #{when-list\ 1709}#))) (if #{t\ 1719}# #{t\ 1719}# (let ((#{t\ 1722}# (memq 'expand #{when-list\ 1709}#))) (if #{t\ 1722}# #{t\ 1722}# (if (eq? #{m\ 1637}# 'c&e) (memq 'eval #{when-list\ 1709}#) #f))))) (#{chi-top-sequence\ 447}# #{body\ 1710}# #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# 'c&e '(compile load) #{mod\ 1665}#) (if (memq #{m\ 1637}# '(c c&e)) (#{chi-top-sequence\ 447}# #{body\ 1710}# #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# 'c '(load) #{mod\ 1665}#) (#{chi-void\ 471}#))) (if (let ((#{t\ 1730}# (memq 'compile #{when-list\ 1709}#))) (if #{t\ 1730}# #{t\ 1730}# (let ((#{t\ 1733}# (memq 'expand #{when-list\ 1709}#))) (if #{t\ 1733}# #{t\ 1733}# (if (eq? #{m\ 1637}# 'c&e) (memq 'eval #{when-list\ 1709}#) #f))))) (begin (#{top-level-eval-hook\ 281}# (#{chi-top-sequence\ 447}# #{body\ 1710}# #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# 'e '(eval) #{mod\ 1665}#) #{mod\ 1665}#) (#{chi-void\ 471}#)) (#{chi-void\ 471}#)))))) #{tmp\ 1698}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1697}#))) ($sc-dispatch #{tmp\ 1697}# '(any each-any any . each-any)))) #{e\ 1662}#) (if (memv #{type\ 1660}# '(define-syntax-form)) (let ((#{n\ 1741}# (#{id-var-name\ 429}# #{value\ 1661}# #{w\ 1663}#)) (#{r\ 1742}# (#{macros-only-env\ 364}# #{r\ 1635}#))) (if (memv #{m\ 1637}# (quote (c))) (if (memq (quote compile) #{esew\ 1638}#) (let ((#{e\ 1745}# (#{chi-install-global\ 449}# #{n\ 1741}# (#{chi\ 457}# #{e\ 1662}# #{r\ 1742}# #{w\ 1663}# #{mod\ 1665}#)))) (begin (#{top-level-eval-hook\ 281}# #{e\ 1745}# #{mod\ 1665}#) (if (memq (quote load) #{esew\ 1638}#) #{e\ 1745}# (#{chi-void\ 471}#)))) (if (memq (quote load) #{esew\ 1638}#) (#{chi-install-global\ 449}# #{n\ 1741}# (#{chi\ 457}# #{e\ 1662}# #{r\ 1742}# #{w\ 1663}# #{mod\ 1665}#)) (#{chi-void\ 471}#))) (if (memv #{m\ 1637}# (quote (c&e))) (let ((#{e\ 1748}# (#{chi-install-global\ 449}# #{n\ 1741}# (#{chi\ 457}# #{e\ 1662}# #{r\ 1742}# #{w\ 1663}# #{mod\ 1665}#)))) (begin (#{top-level-eval-hook\ 281}# #{e\ 1748}# #{mod\ 1665}#) #{e\ 1748}#)) (begin (if (memq (quote eval) #{esew\ 1638}#) (#{top-level-eval-hook\ 281}# (#{chi-install-global\ 449}# #{n\ 1741}# (#{chi\ 457}# #{e\ 1662}# #{r\ 1742}# #{w\ 1663}# #{mod\ 1665}#)) #{mod\ 1665}#)) (#{chi-void\ 471}#))))) (if (memv #{type\ 1660}# (quote (define-form))) (let ((#{n\ 1753}# (#{id-var-name\ 429}# #{value\ 1661}# #{w\ 1663}#))) (let ((#{type\ 1755}# (#{binding-type\ 355}# (#{lookup\ 366}# #{n\ 1753}# #{r\ 1635}# #{mod\ 1665}#)))) (if (memv #{type\ 1755}# '(global core macro module-ref)) (begin (if (if (memq #{m\ 1637}# (quote (c c&e))) (if (not (module-local-variable (current-module) #{n\ 1753}#)) (current-module) #f) #f) (let ((#{old\ 1761}# (module-variable (current-module) #{n\ 1753}#))) (module-define! (current-module) #{n\ 1753}# (if (variable? #{old\ 1761}#) (variable-ref #{old\ 1761}#) #f)))) (let ((#{x\ 1764}# (#{build-global-definition\ 312}# #{s\ 1664}# #{n\ 1753}# (#{chi\ 457}# #{e\ 1662}# #{r\ 1635}# #{w\ 1663}# #{mod\ 1665}#)))) (begin (if (eq? #{m\ 1637}# (quote c&e)) (#{top-level-eval-hook\ 281}# #{x\ 1764}# #{mod\ 1665}#)) #{x\ 1764}#))) (if (memv #{type\ 1755}# '(displaced-lexical)) (syntax-violation #f "identifier out of context" #{e\ 1662}# (#{wrap\ 441}# #{value\ 1661}# #{w\ 1663}# #{mod\ 1665}#)) (syntax-violation #f "cannot define keyword at top level" #{e\ 1662}# (#{wrap\ 441}# #{value\ 1661}# #{w\ 1663}# #{mod\ 1665}#)))))) (let ((#{x\ 1770}# (#{chi-expr\ 459}# #{type\ 1660}# #{value\ 1661}# #{e\ 1662}# #{r\ 1635}# #{w\ 1663}# #{s\ 1664}# #{mod\ 1665}#))) (begin (if (eq? #{m\ 1637}# (quote c&e)) (#{top-level-eval-hook\ 281}# #{x\ 1770}# #{mod\ 1665}#)) #{x\ 1770}#))))))))))) (#{syntax-type\ 453}# (lambda (#{e\ 1771}# #{r\ 1772}# #{w\ 1773}# #{s\ 1774}# #{rib\ 1775}# #{mod\ 1776}# #{for-car?\ 1777}#) (if (symbol? #{e\ 1771}#) (let ((#{n\ 1789}# (#{id-var-name\ 429}# #{e\ 1771}# #{w\ 1773}#))) (let ((#{b\ 1791}# (#{lookup\ 366}# #{n\ 1789}# #{r\ 1772}# #{mod\ 1776}#))) (let ((#{type\ 1793}# (#{binding-type\ 355}# #{b\ 1791}#))) (if (memv #{type\ 1793}# (quote (lexical))) (values #{type\ 1793}# (#{binding-value\ 357}# #{b\ 1791}#) #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{type\ 1793}# (quote (global))) (values #{type\ 1793}# #{n\ 1789}# #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{type\ 1793}# (quote (macro))) (if #{for-car?\ 1777}# (values #{type\ 1793}# (#{binding-value\ 357}# #{b\ 1791}#) #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (#{syntax-type\ 453}# (#{chi-macro\ 463}# (#{binding-value\ 357}# #{b\ 1791}#) #{e\ 1771}# #{r\ 1772}# #{w\ 1773}# #{s\ 1774}# #{rib\ 1775}# #{mod\ 1776}#) #{r\ 1772}# '(()) #{s\ 1774}# #{rib\ 1775}# #{mod\ 1776}# #f)) (values #{type\ 1793}# (#{binding-value\ 357}# #{b\ 1791}#) #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#))))))) (if (pair? #{e\ 1771}#) (let ((#{first\ 1802}# (car #{e\ 1771}#))) (call-with-values (lambda () (#{syntax-type\ 453}# #{first\ 1802}# #{r\ 1772}# #{w\ 1773}# #{s\ 1774}# #{rib\ 1775}# #{mod\ 1776}# #t)) (lambda (#{ftype\ 1803}# #{fval\ 1804}# #{fe\ 1805}# #{fw\ 1806}# #{fs\ 1807}# #{fmod\ 1808}#) (if (memv #{ftype\ 1803}# (quote (lexical))) (values 'lexical-call #{fval\ 1804}# #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{ftype\ 1803}# (quote (global))) (values 'global-call (#{make-syntax-object\ 334}# #{fval\ 1804}# #{w\ 1773}# #{fmod\ 1808}#) #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{ftype\ 1803}# (quote (macro))) (#{syntax-type\ 453}# (#{chi-macro\ 463}# #{fval\ 1804}# #{e\ 1771}# #{r\ 1772}# #{w\ 1773}# #{s\ 1774}# #{rib\ 1775}# #{mod\ 1776}#) #{r\ 1772}# '(()) #{s\ 1774}# #{rib\ 1775}# #{mod\ 1776}# #{for-car?\ 1777}#) (if (memv #{ftype\ 1803}# (quote (module-ref))) (call-with-values (lambda () (#{fval\ 1804}# #{e\ 1771}# #{r\ 1772}# #{w\ 1773}#)) (lambda (#{e\ 1820}# #{r\ 1821}# #{w\ 1822}# #{s\ 1823}# #{mod\ 1824}#) (#{syntax-type\ 453}# #{e\ 1820}# #{r\ 1821}# #{w\ 1822}# #{s\ 1823}# #{rib\ 1775}# #{mod\ 1824}# #{for-car?\ 1777}#))) (if (memv #{ftype\ 1803}# (quote (core))) (values 'core-form #{fval\ 1804}# #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{ftype\ 1803}# '(local-syntax)) (values 'local-syntax-form #{fval\ 1804}# #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{ftype\ 1803}# (quote (begin))) (values 'begin-form #f #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{ftype\ 1803}# '(eval-when)) (values 'eval-when-form #f #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (if (memv #{ftype\ 1803}# '(define)) ((lambda (#{tmp\ 1835}#) ((lambda (#{tmp\ 1836}#) (if (if #{tmp\ 1836}# (apply (lambda (#{_\ 1840}# #{name\ 1841}# #{val\ 1842}#) (#{id?\ 372}# #{name\ 1841}#)) #{tmp\ 1836}#) #f) (apply (lambda (#{_\ 1846}# #{name\ 1847}# #{val\ 1848}#) (values 'define-form #{name\ 1847}# #{val\ 1848}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#)) #{tmp\ 1836}#) ((lambda (#{tmp\ 1849}#) (if (if #{tmp\ 1849}# (apply (lambda (#{_\ 1855}# #{name\ 1856}# #{args\ 1857}# #{e1\ 1858}# #{e2\ 1859}#) (if (#{id?\ 372}# #{name\ 1856}#) (#{valid-bound-ids?\ 435}# (#{lambda-var-list\ 487}# #{args\ 1857}#)) #f)) #{tmp\ 1849}#) #f) (apply (lambda (#{_\ 1867}# #{name\ 1868}# #{args\ 1869}# #{e1\ 1870}# #{e2\ 1871}#) (values 'define-form (#{wrap\ 441}# #{name\ 1868}# #{w\ 1773}# #{mod\ 1776}#) (#{decorate-source\ 290}# (cons '#(syntax-object lambda ((top) #(ribcage #(_ name args e1 e2) #((top) (top) (top) (top) (top)) #("i1862" "i1863" "i1864" "i1865" "i1866")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1809" "i1810" "i1811" "i1812" "i1813" "i1814")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1801")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1778" "i1779" "i1780" "i1781" "i1782" "i1783" "i1784")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)) (#{wrap\ 441}# (cons #{args\ 1869}# (cons #{e1\ 1870}# #{e2\ 1871}#)) #{w\ 1773}# #{mod\ 1776}#)) #{s\ 1774}#) '(()) #{s\ 1774}# #{mod\ 1776}#)) #{tmp\ 1849}#) ((lambda (#{tmp\ 1874}#) (if (if #{tmp\ 1874}# (apply (lambda (#{_\ 1877}# #{name\ 1878}#) (#{id?\ 372}# #{name\ 1878}#)) #{tmp\ 1874}#) #f) (apply (lambda (#{_\ 1881}# #{name\ 1882}#) (values 'define-form (#{wrap\ 441}# #{name\ 1882}# #{w\ 1773}# #{mod\ 1776}#) '(#(syntax-object if ((top) #(ribcage #(_ name) #((top) (top)) #("i1879" "i1880")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1809" "i1810" "i1811" "i1812" "i1813" "i1814")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1801")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1778" "i1779" "i1780" "i1781" "i1782" "i1783" "i1784")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i1879" "i1880")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1809" "i1810" "i1811" "i1812" "i1813" "i1814")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1801")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1778" "i1779" "i1780" "i1781" "i1782" "i1783" "i1784")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)) #(syntax-object #f ((top) #(ribcage #(_ name) #((top) (top)) #("i1879" "i1880")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(ftype fval fe fw fs fmod) #((top) (top) (top) (top) (top) (top)) #("i1809" "i1810" "i1811" "i1812" "i1813" "i1814")) #(ribcage () () ()) #(ribcage #(first) #((top)) #("i1801")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(e r w s rib mod for-car?) #((top) (top) (top) (top) (top) (top) (top)) #("i1778" "i1779" "i1780" "i1781" "i1782" "i1783" "i1784")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile))) '(()) #{s\ 1774}# #{mod\ 1776}#)) #{tmp\ 1874}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1835}#))) ($sc-dispatch #{tmp\ 1835}# '(any any))))) ($sc-dispatch #{tmp\ 1835}# '(any (any . any) any . each-any))))) ($sc-dispatch #{tmp\ 1835}# '(any any any)))) #{e\ 1771}#) (if (memv #{ftype\ 1803}# '(define-syntax)) ((lambda (#{tmp\ 1885}#) ((lambda (#{tmp\ 1886}#) (if (if #{tmp\ 1886}# (apply (lambda (#{_\ 1890}# #{name\ 1891}# #{val\ 1892}#) (#{id?\ 372}# #{name\ 1891}#)) #{tmp\ 1886}#) #f) (apply (lambda (#{_\ 1896}# #{name\ 1897}# #{val\ 1898}#) (values 'define-syntax-form #{name\ 1897}# #{val\ 1898}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#)) #{tmp\ 1886}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 1885}#))) ($sc-dispatch #{tmp\ 1885}# '(any any any)))) #{e\ 1771}#) (values 'call #f #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#)))))))))))))) (if (#{syntax-object?\ 336}# #{e\ 1771}#) (#{syntax-type\ 453}# (#{syntax-object-expression\ 338}# #{e\ 1771}#) #{r\ 1772}# (#{join-wraps\ 423}# #{w\ 1773}# (#{syntax-object-wrap\ 340}# #{e\ 1771}#)) (let ((#{t\ 1904}# (#{source-annotation\ 351}# #{e\ 1771}#))) (if #{t\ 1904}# #{t\ 1904}# #{s\ 1774}#)) #{rib\ 1775}# (let ((#{t\ 1908}# (#{syntax-object-module\ 342}# #{e\ 1771}#))) (if #{t\ 1908}# #{t\ 1908}# #{mod\ 1776}#)) #{for-car?\ 1777}#) (if (self-evaluating? #{e\ 1771}#) (values 'constant #f #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#) (values 'other #f #{e\ 1771}# #{w\ 1773}# #{s\ 1774}# #{mod\ 1776}#))))))) (#{chi-when-list\ 451}# (lambda (#{e\ 1913}# #{when-list\ 1914}# #{w\ 1915}#) (letrec ((#{f\ 1922}# (lambda (#{when-list\ 1923}# #{situations\ 1924}#) (if (null? #{when-list\ 1923}#) #{situations\ 1924}# (#{f\ 1922}# (cdr #{when-list\ 1923}#) (cons (let ((#{x\ 1926}# (car #{when-list\ 1923}#))) (if (#{free-id=?\ 431}# #{x\ 1926}# '#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1925")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1919" "i1920" "i1921")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1916" "i1917" "i1918")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile))) 'compile (if (#{free-id=?\ 431}# #{x\ 1926}# '#(syntax-object load ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1925")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1919" "i1920" "i1921")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1916" "i1917" "i1918")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile))) 'load (if (#{free-id=?\ 431}# #{x\ 1926}# '#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1925")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1919" "i1920" "i1921")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1916" "i1917" "i1918")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile))) 'eval (if (#{free-id=?\ 431}# #{x\ 1926}# '#(syntax-object expand ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i1925")) #(ribcage () () ()) #(ribcage #(f when-list situations) #((top) (top) (top)) #("i1919" "i1920" "i1921")) #(ribcage () () ()) #(ribcage #(e when-list w) #((top) (top) (top)) #("i1916" "i1917" "i1918")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile))) 'expand (syntax-violation 'eval-when "invalid situation" #{e\ 1913}# (#{wrap\ 441}# #{x\ 1926}# #{w\ 1915}# #f))))))) #{situations\ 1924}#)))))) (#{f\ 1922}# #{when-list\ 1914}# (quote ()))))) (#{chi-install-global\ 449}# (lambda (#{name\ 1936}# #{e\ 1937}#) (#{build-global-definition\ 312}# #f #{name\ 1936}# (#{build-application\ 294}# #f (#{build-primref\ 320}# #f 'make-syntax-transformer) (list (#{build-data\ 322}# #f #{name\ 1936}#) (#{build-data\ 322}# #f (quote macro)) #{e\ 1937}#))))) (#{chi-top-sequence\ 447}# (lambda (#{body\ 1945}# #{r\ 1946}# #{w\ 1947}# #{s\ 1948}# #{m\ 1949}# #{esew\ 1950}# #{mod\ 1951}#) (#{build-sequence\ 324}# #{s\ 1948}# (letrec ((#{dobody\ 1967}# (lambda (#{body\ 1968}# #{r\ 1969}# #{w\ 1970}# #{m\ 1971}# #{esew\ 1972}# #{mod\ 1973}# #{out\ 1974}#) (if (null? #{body\ 1968}#) (reverse #{out\ 1974}#) (#{dobody\ 1967}# (cdr #{body\ 1968}#) #{r\ 1969}# #{w\ 1970}# #{m\ 1971}# #{esew\ 1972}# #{mod\ 1973}# (cons (#{chi-top\ 455}# (car #{body\ 1968}#) #{r\ 1969}# #{w\ 1970}# #{m\ 1971}# #{esew\ 1972}# #{mod\ 1973}#) #{out\ 1974}#)))))) (#{dobody\ 1967}# #{body\ 1945}# #{r\ 1946}# #{w\ 1947}# #{m\ 1949}# #{esew\ 1950}# #{mod\ 1951}# '()))))) (#{chi-sequence\ 445}# (lambda (#{body\ 1975}# #{r\ 1976}# #{w\ 1977}# #{s\ 1978}# #{mod\ 1979}#) (#{build-sequence\ 324}# #{s\ 1978}# (letrec ((#{dobody\ 1990}# (lambda (#{body\ 1991}# #{r\ 1992}# #{w\ 1993}# #{mod\ 1994}#) (if (null? #{body\ 1991}#) '() (let ((#{first\ 1996}# (#{chi\ 457}# (car #{body\ 1991}#) #{r\ 1992}# #{w\ 1993}# #{mod\ 1994}#))) (cons #{first\ 1996}# (#{dobody\ 1990}# (cdr #{body\ 1991}#) #{r\ 1992}# #{w\ 1993}# #{mod\ 1994}#))))))) (#{dobody\ 1990}# #{body\ 1975}# #{r\ 1976}# #{w\ 1977}# #{mod\ 1979}#))))) (#{source-wrap\ 443}# (lambda (#{x\ 1997}# #{w\ 1998}# #{s\ 1999}# #{defmod\ 2000}#) (#{wrap\ 441}# (#{decorate-source\ 290}# #{x\ 1997}# #{s\ 1999}#) #{w\ 1998}# #{defmod\ 2000}#))) (#{wrap\ 441}# (lambda (#{x\ 2005}# #{w\ 2006}# #{defmod\ 2007}#) (if (if (null? (#{wrap-marks\ 379}# #{w\ 2006}#)) (null? (#{wrap-subst\ 381}# #{w\ 2006}#)) #f) #{x\ 2005}# (if (#{syntax-object?\ 336}# #{x\ 2005}#) (#{make-syntax-object\ 334}# (#{syntax-object-expression\ 338}# #{x\ 2005}#) (#{join-wraps\ 423}# #{w\ 2006}# (#{syntax-object-wrap\ 340}# #{x\ 2005}#)) (#{syntax-object-module\ 342}# #{x\ 2005}#)) (if (null? #{x\ 2005}#) #{x\ 2005}# (#{make-syntax-object\ 334}# #{x\ 2005}# #{w\ 2006}# #{defmod\ 2007}#)))))) (#{bound-id-member?\ 439}# (lambda (#{x\ 2020}# #{list\ 2021}#) (if (not (null? #{list\ 2021}#)) (let ((#{t\ 2028}# (#{bound-id=?\ 433}# #{x\ 2020}# (car #{list\ 2021}#)))) (if #{t\ 2028}# #{t\ 2028}# (#{bound-id-member?\ 439}# #{x\ 2020}# (cdr #{list\ 2021}#)))) #f))) (#{distinct-bound-ids?\ 437}# (lambda (#{ids\ 2030}#) (letrec ((#{distinct?\ 2034}# (lambda (#{ids\ 2035}#) (let ((#{t\ 2038}# (null? #{ids\ 2035}#))) (if #{t\ 2038}# #{t\ 2038}# (if (not (#{bound-id-member?\ 439}# (car #{ids\ 2035}#) (cdr #{ids\ 2035}#))) (#{distinct?\ 2034}# (cdr #{ids\ 2035}#)) #f)))))) (#{distinct?\ 2034}# #{ids\ 2030}#)))) (#{valid-bound-ids?\ 435}# (lambda (#{ids\ 2042}#) (if (letrec ((#{all-ids?\ 2047}# (lambda (#{ids\ 2048}#) (let ((#{t\ 2051}# (null? #{ids\ 2048}#))) (if #{t\ 2051}# #{t\ 2051}# (if (#{id?\ 372}# (car #{ids\ 2048}#)) (#{all-ids?\ 2047}# (cdr #{ids\ 2048}#)) #f)))))) (#{all-ids?\ 2047}# #{ids\ 2042}#)) (#{distinct-bound-ids?\ 437}# #{ids\ 2042}#) #f))) (#{bound-id=?\ 433}# (lambda (#{i\ 2056}# #{j\ 2057}#) (if (if (#{syntax-object?\ 336}# #{i\ 2056}#) (#{syntax-object?\ 336}# #{j\ 2057}#) #f) (if (eq? (#{syntax-object-expression\ 338}# #{i\ 2056}#) (#{syntax-object-expression\ 338}# #{j\ 2057}#)) (#{same-marks?\ 427}# (#{wrap-marks\ 379}# (#{syntax-object-wrap\ 340}# #{i\ 2056}#)) (#{wrap-marks\ 379}# (#{syntax-object-wrap\ 340}# #{j\ 2057}#))) #f) (eq? #{i\ 2056}# #{j\ 2057}#)))) (#{free-id=?\ 431}# (lambda (#{i\ 2064}# #{j\ 2065}#) (if (eq? (let ((#{x\ 2071}# #{i\ 2064}#)) (if (#{syntax-object?\ 336}# #{x\ 2071}#) (#{syntax-object-expression\ 338}# #{x\ 2071}#) #{x\ 2071}#)) (let ((#{x\ 2074}# #{j\ 2065}#)) (if (#{syntax-object?\ 336}# #{x\ 2074}#) (#{syntax-object-expression\ 338}# #{x\ 2074}#) #{x\ 2074}#))) (eq? (#{id-var-name\ 429}# #{i\ 2064}# (quote (()))) (#{id-var-name\ 429}# #{j\ 2065}# (quote (())))) #f))) (#{id-var-name\ 429}# (lambda (#{id\ 2078}# #{w\ 2079}#) (letrec ((#{search-vector-rib\ 2088}# (lambda (#{sym\ 2100}# #{subst\ 2101}# #{marks\ 2102}# #{symnames\ 2103}# #{ribcage\ 2104}#) (let ((#{n\ 2111}# (vector-length #{symnames\ 2103}#))) (letrec ((#{f\ 2114}# (lambda (#{i\ 2115}#) (if (#{fx=\ 277}# #{i\ 2115}# #{n\ 2111}#) (#{search\ 2084}# #{sym\ 2100}# (cdr #{subst\ 2101}#) #{marks\ 2102}#) (if (if (eq? (vector-ref #{symnames\ 2103}# #{i\ 2115}#) #{sym\ 2100}#) (#{same-marks?\ 427}# #{marks\ 2102}# (vector-ref (#{ribcage-marks\ 399}# #{ribcage\ 2104}#) #{i\ 2115}#)) #f) (values (vector-ref (#{ribcage-labels\ 401}# #{ribcage\ 2104}#) #{i\ 2115}#) #{marks\ 2102}#) (#{f\ 2114}# (#{fx+\ 273}# #{i\ 2115}# 1))))))) (#{f\ 2114}# 0))))) (#{search-list-rib\ 2086}# (lambda (#{sym\ 2123}# #{subst\ 2124}# #{marks\ 2125}# #{symnames\ 2126}# #{ribcage\ 2127}#) (letrec ((#{f\ 2136}# (lambda (#{symnames\ 2137}# #{i\ 2138}#) (if (null? #{symnames\ 2137}#) (#{search\ 2084}# #{sym\ 2123}# (cdr #{subst\ 2124}#) #{marks\ 2125}#) (if (if (eq? (car #{symnames\ 2137}#) #{sym\ 2123}#) (#{same-marks?\ 427}# #{marks\ 2125}# (list-ref (#{ribcage-marks\ 399}# #{ribcage\ 2127}#) #{i\ 2138}#)) #f) (values (list-ref (#{ribcage-labels\ 401}# #{ribcage\ 2127}#) #{i\ 2138}#) #{marks\ 2125}#) (#{f\ 2136}# (cdr #{symnames\ 2137}#) (#{fx+\ 273}# #{i\ 2138}# 1))))))) (#{f\ 2136}# #{symnames\ 2126}# 0)))) (#{search\ 2084}# (lambda (#{sym\ 2146}# #{subst\ 2147}# #{marks\ 2148}#) (if (null? #{subst\ 2147}#) (values #f #{marks\ 2148}#) (let ((#{fst\ 2153}# (car #{subst\ 2147}#))) (if (eq? #{fst\ 2153}# (quote shift)) (#{search\ 2084}# #{sym\ 2146}# (cdr #{subst\ 2147}#) (cdr #{marks\ 2148}#)) (let ((#{symnames\ 2155}# (#{ribcage-symnames\ 397}# #{fst\ 2153}#))) (if (vector? #{symnames\ 2155}#) (#{search-vector-rib\ 2088}# #{sym\ 2146}# #{subst\ 2147}# #{marks\ 2148}# #{symnames\ 2155}# #{fst\ 2153}#) (#{search-list-rib\ 2086}# #{sym\ 2146}# #{subst\ 2147}# #{marks\ 2148}# #{symnames\ 2155}# #{fst\ 2153}#))))))))) (if (symbol? #{id\ 2078}#) (let ((#{t\ 2158}# (call-with-values (lambda () (#{search\ 2084}# #{id\ 2078}# (#{wrap-subst\ 381}# #{w\ 2079}#) (#{wrap-marks\ 379}# #{w\ 2079}#))) (lambda (#{x\ 2160}# . #{ignore\ 2161}#) #{x\ 2160}#)))) (if #{t\ 2158}# #{t\ 2158}# #{id\ 2078}#)) (if (#{syntax-object?\ 336}# #{id\ 2078}#) (let ((#{id\ 2169}# (#{syntax-object-expression\ 338}# #{id\ 2078}#)) (#{w1\ 2170}# (#{syntax-object-wrap\ 340}# #{id\ 2078}#))) (let ((#{marks\ 2172}# (#{join-marks\ 425}# (#{wrap-marks\ 379}# #{w\ 2079}#) (#{wrap-marks\ 379}# #{w1\ 2170}#)))) (call-with-values (lambda () (#{search\ 2084}# #{id\ 2169}# (#{wrap-subst\ 381}# #{w\ 2079}#) #{marks\ 2172}#)) (lambda (#{new-id\ 2173}# #{marks\ 2174}#) (let ((#{t\ 2179}# #{new-id\ 2173}#)) (if #{t\ 2179}# #{t\ 2179}# (let ((#{t\ 2182}# (call-with-values (lambda () (#{search\ 2084}# #{id\ 2169}# (#{wrap-subst\ 381}# #{w1\ 2170}#) #{marks\ 2174}#)) (lambda (#{x\ 2184}# . #{ignore\ 2185}#) #{x\ 2184}#)))) (if #{t\ 2182}# #{t\ 2182}# #{id\ 2169}#)))))))) (syntax-violation 'id-var-name "invalid id" #{id\ 2078}#)))))) (#{same-marks?\ 427}# (lambda (#{x\ 2190}# #{y\ 2191}#) (let ((#{t\ 2196}# (eq? #{x\ 2190}# #{y\ 2191}#))) (if #{t\ 2196}# #{t\ 2196}# (if (not (null? #{x\ 2190}#)) (if (not (null? #{y\ 2191}#)) (if (eq? (car #{x\ 2190}#) (car #{y\ 2191}#)) (#{same-marks?\ 427}# (cdr #{x\ 2190}#) (cdr #{y\ 2191}#)) #f) #f) #f))))) (#{join-marks\ 425}# (lambda (#{m1\ 2202}# #{m2\ 2203}#) (#{smart-append\ 421}# #{m1\ 2202}# #{m2\ 2203}#))) (#{join-wraps\ 423}# (lambda (#{w1\ 2206}# #{w2\ 2207}#) (let ((#{m1\ 2212}# (#{wrap-marks\ 379}# #{w1\ 2206}#)) (#{s1\ 2213}# (#{wrap-subst\ 381}# #{w1\ 2206}#))) (if (null? #{m1\ 2212}#) (if (null? #{s1\ 2213}#) #{w2\ 2207}# (#{make-wrap\ 377}# (#{wrap-marks\ 379}# #{w2\ 2207}#) (#{smart-append\ 421}# #{s1\ 2213}# (#{wrap-subst\ 381}# #{w2\ 2207}#)))) (#{make-wrap\ 377}# (#{smart-append\ 421}# #{m1\ 2212}# (#{wrap-marks\ 379}# #{w2\ 2207}#)) (#{smart-append\ 421}# #{s1\ 2213}# (#{wrap-subst\ 381}# #{w2\ 2207}#))))))) (#{smart-append\ 421}# (lambda (#{m1\ 2214}# #{m2\ 2215}#) (if (null? #{m2\ 2215}#) #{m1\ 2214}# (append #{m1\ 2214}# #{m2\ 2215}#)))) (#{make-binding-wrap\ 419}# (lambda (#{ids\ 2218}# #{labels\ 2219}# #{w\ 2220}#) (if (null? #{ids\ 2218}#) #{w\ 2220}# (#{make-wrap\ 377}# (#{wrap-marks\ 379}# #{w\ 2220}#) (cons (let ((#{labelvec\ 2225}# (list->vector #{labels\ 2219}#))) (let ((#{n\ 2227}# (vector-length #{labelvec\ 2225}#))) (let ((#{symnamevec\ 2230}# (make-vector #{n\ 2227}#)) (#{marksvec\ 2231}# (make-vector #{n\ 2227}#))) (begin (letrec ((#{f\ 2235}# (lambda (#{ids\ 2236}# #{i\ 2237}#) (if (not (null? #{ids\ 2236}#)) (call-with-values (lambda () (#{id-sym-name&marks\ 375}# (car #{ids\ 2236}#) #{w\ 2220}#)) (lambda (#{symname\ 2238}# #{marks\ 2239}#) (begin (vector-set! #{symnamevec\ 2230}# #{i\ 2237}# #{symname\ 2238}#) (vector-set! #{marksvec\ 2231}# #{i\ 2237}# #{marks\ 2239}#) (#{f\ 2235}# (cdr #{ids\ 2236}#) (#{fx+\ 273}# #{i\ 2237}# 1))))))))) (#{f\ 2235}# #{ids\ 2218}# 0)) (#{make-ribcage\ 393}# #{symnamevec\ 2230}# #{marksvec\ 2231}# #{labelvec\ 2225}#))))) (#{wrap-subst\ 381}# #{w\ 2220}#)))))) (#{extend-ribcage!\ 417}# (lambda (#{ribcage\ 2242}# #{id\ 2243}# #{label\ 2244}#) (begin (#{set-ribcage-symnames!\ 403}# #{ribcage\ 2242}# (cons (#{syntax-object-expression\ 338}# #{id\ 2243}#) (#{ribcage-symnames\ 397}# #{ribcage\ 2242}#))) (#{set-ribcage-marks!\ 405}# #{ribcage\ 2242}# (cons (#{wrap-marks\ 379}# (#{syntax-object-wrap\ 340}# #{id\ 2243}#)) (#{ribcage-marks\ 399}# #{ribcage\ 2242}#))) (#{set-ribcage-labels!\ 407}# #{ribcage\ 2242}# (cons #{label\ 2244}# (#{ribcage-labels\ 401}# #{ribcage\ 2242}#)))))) (#{anti-mark\ 413}# (lambda (#{w\ 2248}#) (#{make-wrap\ 377}# (cons #f (#{wrap-marks\ 379}# #{w\ 2248}#)) (cons 'shift (#{wrap-subst\ 381}# #{w\ 2248}#))))) (#{set-ribcage-labels!\ 407}# (lambda (#{x\ 2251}# #{update\ 2252}#) (vector-set! #{x\ 2251}# 3 #{update\ 2252}#))) (#{set-ribcage-marks!\ 405}# (lambda (#{x\ 2255}# #{update\ 2256}#) (vector-set! #{x\ 2255}# 2 #{update\ 2256}#))) (#{set-ribcage-symnames!\ 403}# (lambda (#{x\ 2259}# #{update\ 2260}#) (vector-set! #{x\ 2259}# 1 #{update\ 2260}#))) (#{ribcage-labels\ 401}# (lambda (#{x\ 2263}#) (vector-ref #{x\ 2263}# 3))) (#{ribcage-marks\ 399}# (lambda (#{x\ 2265}#) (vector-ref #{x\ 2265}# 2))) (#{ribcage-symnames\ 397}# (lambda (#{x\ 2267}#) (vector-ref #{x\ 2267}# 1))) (#{ribcage?\ 395}# (lambda (#{x\ 2269}#) (if (vector? #{x\ 2269}#) (if (= (vector-length #{x\ 2269}#) 4) (eq? (vector-ref #{x\ 2269}# 0) (quote ribcage)) #f) #f))) (#{make-ribcage\ 393}# (lambda (#{symnames\ 2274}# #{marks\ 2275}# #{labels\ 2276}#) (vector 'ribcage #{symnames\ 2274}# #{marks\ 2275}# #{labels\ 2276}#))) (#{gen-labels\ 390}# (lambda (#{ls\ 2280}#) (if (null? #{ls\ 2280}#) '() (cons (#{gen-label\ 388}#) (#{gen-labels\ 390}# (cdr #{ls\ 2280}#)))))) (#{gen-label\ 388}# (lambda () (symbol->string (gensym "i")))) (#{wrap-subst\ 381}# cdr) (#{wrap-marks\ 379}# car) (#{make-wrap\ 377}# cons) (#{id-sym-name&marks\ 375}# (lambda (#{x\ 2282}# #{w\ 2283}#) (if (#{syntax-object?\ 336}# #{x\ 2282}#) (values (#{syntax-object-expression\ 338}# #{x\ 2282}#) (#{join-marks\ 425}# (#{wrap-marks\ 379}# #{w\ 2283}#) (#{wrap-marks\ 379}# (#{syntax-object-wrap\ 340}# #{x\ 2282}#)))) (values #{x\ 2282}# (#{wrap-marks\ 379}# #{w\ 2283}#))))) (#{id?\ 372}# (lambda (#{x\ 2286}#) (if (symbol? #{x\ 2286}#) #t (if (#{syntax-object?\ 336}# #{x\ 2286}#) (symbol? (#{syntax-object-expression\ 338}# #{x\ 2286}#)) #f)))) (#{nonsymbol-id?\ 370}# (lambda (#{x\ 2293}#) (if (#{syntax-object?\ 336}# #{x\ 2293}#) (symbol? (#{syntax-object-expression\ 338}# #{x\ 2293}#)) #f))) (#{global-extend\ 368}# (lambda (#{type\ 2297}# #{sym\ 2298}# #{val\ 2299}#) (#{put-global-definition-hook\ 286}# #{sym\ 2298}# #{type\ 2297}# #{val\ 2299}#))) (#{lookup\ 366}# (lambda (#{x\ 2303}# #{r\ 2304}# #{mod\ 2305}#) (let ((#{t\ 2311}# (assq #{x\ 2303}# #{r\ 2304}#))) (if #{t\ 2311}# (cdr #{t\ 2311}#) (if (symbol? #{x\ 2303}#) (let ((#{t\ 2317}# (#{get-global-definition-hook\ 288}# #{x\ 2303}# #{mod\ 2305}#))) (if #{t\ 2317}# #{t\ 2317}# (quote (global)))) '(displaced-lexical)))))) (#{macros-only-env\ 364}# (lambda (#{r\ 2322}#) (if (null? #{r\ 2322}#) '() (let ((#{a\ 2325}# (car #{r\ 2322}#))) (if (eq? (cadr #{a\ 2325}#) (quote macro)) (cons #{a\ 2325}# (#{macros-only-env\ 364}# (cdr #{r\ 2322}#))) (#{macros-only-env\ 364}# (cdr #{r\ 2322}#))))))) (#{extend-var-env\ 362}# (lambda (#{labels\ 2326}# #{vars\ 2327}# #{r\ 2328}#) (if (null? #{labels\ 2326}#) #{r\ 2328}# (#{extend-var-env\ 362}# (cdr #{labels\ 2326}#) (cdr #{vars\ 2327}#) (cons (cons (car #{labels\ 2326}#) (cons (quote lexical) (car #{vars\ 2327}#))) #{r\ 2328}#))))) (#{extend-env\ 360}# (lambda (#{labels\ 2333}# #{bindings\ 2334}# #{r\ 2335}#) (if (null? #{labels\ 2333}#) #{r\ 2335}# (#{extend-env\ 360}# (cdr #{labels\ 2333}#) (cdr #{bindings\ 2334}#) (cons (cons (car #{labels\ 2333}#) (car #{bindings\ 2334}#)) #{r\ 2335}#))))) (#{binding-value\ 357}# cdr) (#{binding-type\ 355}# car) (#{source-annotation\ 351}# (lambda (#{x\ 2339}#) (if (#{syntax-object?\ 336}# #{x\ 2339}#) (#{source-annotation\ 351}# (#{syntax-object-expression\ 338}# #{x\ 2339}#)) (if (pair? #{x\ 2339}#) (let ((#{props\ 2346}# (source-properties #{x\ 2339}#))) (if (pair? #{props\ 2346}#) #{props\ 2346}# #f)) #f)))) (#{set-syntax-object-module!\ 348}# (lambda (#{x\ 2348}# #{update\ 2349}#) (vector-set! #{x\ 2348}# 3 #{update\ 2349}#))) (#{set-syntax-object-wrap!\ 346}# (lambda (#{x\ 2352}# #{update\ 2353}#) (vector-set! #{x\ 2352}# 2 #{update\ 2353}#))) (#{set-syntax-object-expression!\ 344}# (lambda (#{x\ 2356}# #{update\ 2357}#) (vector-set! #{x\ 2356}# 1 #{update\ 2357}#))) (#{syntax-object-module\ 342}# (lambda (#{x\ 2360}#) (vector-ref #{x\ 2360}# 3))) (#{syntax-object-wrap\ 340}# (lambda (#{x\ 2362}#) (vector-ref #{x\ 2362}# 2))) (#{syntax-object-expression\ 338}# (lambda (#{x\ 2364}#) (vector-ref #{x\ 2364}# 1))) (#{syntax-object?\ 336}# (lambda (#{x\ 2366}#) (if (vector? #{x\ 2366}#) (if (= (vector-length #{x\ 2366}#) 4) (eq? (vector-ref #{x\ 2366}# 0) 'syntax-object) #f) #f))) (#{make-syntax-object\ 334}# (lambda (#{expression\ 2371}# #{wrap\ 2372}# #{module\ 2373}#) (vector 'syntax-object #{expression\ 2371}# #{wrap\ 2372}# #{module\ 2373}#))) (#{build-letrec\ 330}# (lambda (#{src\ 2377}# #{ids\ 2378}# #{vars\ 2379}# #{val-exps\ 2380}# #{body-exp\ 2381}#) (if (null? #{vars\ 2379}#) #{body-exp\ 2381}# (begin (for-each #{maybe-name-value!\ 310}# #{ids\ 2378}# #{val-exps\ 2380}#) (#{make-letrec\ 262}# #{src\ 2377}# #{ids\ 2378}# #{vars\ 2379}# #{val-exps\ 2380}# #{body-exp\ 2381}#))))) (#{build-named-let\ 328}# (lambda (#{src\ 2387}# #{ids\ 2388}# #{vars\ 2389}# #{val-exps\ 2390}# #{body-exp\ 2391}#) (let ((#{f\ 2401}# (car #{vars\ 2389}#)) (#{f-name\ 2402}# (car #{ids\ 2388}#)) (#{vars\ 2403}# (cdr #{vars\ 2389}#)) (#{ids\ 2404}# (cdr #{ids\ 2388}#))) (let ((#{proc\ 2406}# (#{build-simple-lambda\ 314}# #{src\ 2387}# #{ids\ 2404}# #f #{vars\ 2403}# '() #{body-exp\ 2391}#))) (begin (#{maybe-name-value!\ 310}# #{f-name\ 2402}# #{proc\ 2406}#) (for-each #{maybe-name-value!\ 310}# #{ids\ 2404}# #{val-exps\ 2390}#) (#{make-letrec\ 262}# #{src\ 2387}# (list #{f-name\ 2402}#) (list #{f\ 2401}#) (list #{proc\ 2406}#) (#{build-application\ 294}# #{src\ 2387}# (#{build-lexical-reference\ 300}# 'fun #{src\ 2387}# #{f-name\ 2402}# #{f\ 2401}#) #{val-exps\ 2390}#))))))) (#{build-let\ 326}# (lambda (#{src\ 2407}# #{ids\ 2408}# #{vars\ 2409}# #{val-exps\ 2410}# #{body-exp\ 2411}#) (begin (for-each #{maybe-name-value!\ 310}# #{ids\ 2408}# #{val-exps\ 2410}#) (if (null? #{vars\ 2409}#) #{body-exp\ 2411}# (#{make-let\ 260}# #{src\ 2407}# #{ids\ 2408}# #{vars\ 2409}# #{val-exps\ 2410}# #{body-exp\ 2411}#))))) (#{build-sequence\ 324}# (lambda (#{src\ 2417}# #{exps\ 2418}#) (if (null? (cdr #{exps\ 2418}#)) (car #{exps\ 2418}#) (#{make-sequence\ 254}# #{src\ 2417}# #{exps\ 2418}#)))) (#{build-data\ 322}# (lambda (#{src\ 2421}# #{exp\ 2422}#) (#{make-const\ 232}# #{src\ 2421}# #{exp\ 2422}#))) (#{build-primref\ 320}# (lambda (#{src\ 2425}# #{name\ 2426}#) (if (equal? (module-name (current-module)) '(guile)) (#{make-toplevel-ref\ 244}# #{src\ 2425}# #{name\ 2426}#) (#{make-module-ref\ 240}# #{src\ 2425}# '(guile) #{name\ 2426}# #f)))) (#{build-lambda-case\ 318}# (lambda (#{src\ 2429}# #{req\ 2430}# #{opt\ 2431}# #{rest\ 2432}# #{kw\ 2433}# #{inits\ 2434}# #{vars\ 2435}# #{body\ 2436}# #{else-case\ 2437}#) (#{make-lambda-case\ 258}# #{src\ 2429}# #{req\ 2430}# #{opt\ 2431}# #{rest\ 2432}# #{kw\ 2433}# #{inits\ 2434}# #{vars\ 2435}# #{body\ 2436}# #{else-case\ 2437}#))) (#{build-case-lambda\ 316}# (lambda (#{src\ 2447}# #{meta\ 2448}# #{body\ 2449}#) (#{make-lambda\ 256}# #{src\ 2447}# #{meta\ 2448}# #{body\ 2449}#))) (#{build-simple-lambda\ 314}# (lambda (#{src\ 2453}# #{req\ 2454}# #{rest\ 2455}# #{vars\ 2456}# #{meta\ 2457}# #{exp\ 2458}#) (#{make-lambda\ 256}# #{src\ 2453}# #{meta\ 2457}# (#{make-lambda-case\ 258}# #{src\ 2453}# #{req\ 2454}# #f #{rest\ 2455}# #f '() #{vars\ 2456}# #{exp\ 2458}# #f)))) (#{build-global-definition\ 312}# (lambda (#{source\ 2465}# #{var\ 2466}# #{exp\ 2467}#) (begin (#{maybe-name-value!\ 310}# #{var\ 2466}# #{exp\ 2467}#) (#{make-toplevel-define\ 248}# #{source\ 2465}# #{var\ 2466}# #{exp\ 2467}#)))) (#{maybe-name-value!\ 310}# (lambda (#{name\ 2471}# #{val\ 2472}#) (if (#{lambda?\ 267}# #{val\ 2472}#) (let ((#{meta\ 2476}# (#{lambda-meta\ 269}# #{val\ 2472}#))) (if (not (assq (quote name) #{meta\ 2476}#)) (#{set-lambda-meta!\ 271}# #{val\ 2472}# (acons 'name #{name\ 2471}# #{meta\ 2476}#))))))) (#{build-global-assignment\ 308}# (lambda (#{source\ 2477}# #{var\ 2478}# #{exp\ 2479}# #{mod\ 2480}#) (#{analyze-variable\ 304}# #{mod\ 2480}# #{var\ 2478}# (lambda (#{mod\ 2485}# #{var\ 2486}# #{public?\ 2487}#) (#{make-module-set\ 242}# #{source\ 2477}# #{mod\ 2485}# #{var\ 2486}# #{public?\ 2487}# #{exp\ 2479}#)) (lambda (#{var\ 2491}#) (#{make-toplevel-set\ 246}# #{source\ 2477}# #{var\ 2491}# #{exp\ 2479}#))))) (#{build-global-reference\ 306}# (lambda (#{source\ 2493}# #{var\ 2494}# #{mod\ 2495}#) (#{analyze-variable\ 304}# #{mod\ 2495}# #{var\ 2494}# (lambda (#{mod\ 2499}# #{var\ 2500}# #{public?\ 2501}#) (#{make-module-ref\ 240}# #{source\ 2493}# #{mod\ 2499}# #{var\ 2500}# #{public?\ 2501}#)) (lambda (#{var\ 2505}#) (#{make-toplevel-ref\ 244}# #{source\ 2493}# #{var\ 2505}#))))) (#{analyze-variable\ 304}# (lambda (#{mod\ 2507}# #{var\ 2508}# #{modref-cont\ 2509}# #{bare-cont\ 2510}#) (if (not #{mod\ 2507}#) (#{bare-cont\ 2510}# #{var\ 2508}#) (let ((#{kind\ 2517}# (car #{mod\ 2507}#)) (#{mod\ 2518}# (cdr #{mod\ 2507}#))) (if (memv #{kind\ 2517}# (quote (public))) (#{modref-cont\ 2509}# #{mod\ 2518}# #{var\ 2508}# #t) (if (memv #{kind\ 2517}# (quote (private))) (if (not (equal? #{mod\ 2518}# (module-name (current-module)))) (#{modref-cont\ 2509}# #{mod\ 2518}# #{var\ 2508}# #f) (#{bare-cont\ 2510}# #{var\ 2508}#)) (if (memv #{kind\ 2517}# (quote (bare))) (#{bare-cont\ 2510}# #{var\ 2508}#) (if (memv #{kind\ 2517}# (quote (hygiene))) (if (if (not (equal? #{mod\ 2518}# (module-name (current-module)))) (module-variable (resolve-module #{mod\ 2518}#) #{var\ 2508}#) #f) (#{modref-cont\ 2509}# #{mod\ 2518}# #{var\ 2508}# #f) (#{bare-cont\ 2510}# #{var\ 2508}#)) (syntax-violation #f "bad module kind" #{var\ 2508}# #{mod\ 2518}#))))))))) (#{build-lexical-assignment\ 302}# (lambda (#{source\ 2526}# #{name\ 2527}# #{var\ 2528}# #{exp\ 2529}#) (#{make-lexical-set\ 238}# #{source\ 2526}# #{name\ 2527}# #{var\ 2528}# #{exp\ 2529}#))) (#{build-lexical-reference\ 300}# (lambda (#{type\ 2534}# #{source\ 2535}# #{name\ 2536}# #{var\ 2537}#) (#{make-lexical-ref\ 236}# #{source\ 2535}# #{name\ 2536}# #{var\ 2537}#))) (#{build-dynlet\ 298}# (lambda (#{source\ 2542}# #{fluids\ 2543}# #{vals\ 2544}# #{body\ 2545}#) (#{make-dynlet\ 264}# #{source\ 2542}# #{fluids\ 2543}# #{vals\ 2544}# #{body\ 2545}#))) (#{build-conditional\ 296}# (lambda (#{source\ 2550}# #{test-exp\ 2551}# #{then-exp\ 2552}# #{else-exp\ 2553}#) (#{make-conditional\ 250}# #{source\ 2550}# #{test-exp\ 2551}# #{then-exp\ 2552}# #{else-exp\ 2553}#))) (#{build-application\ 294}# (lambda (#{source\ 2558}# #{fun-exp\ 2559}# #{arg-exps\ 2560}#) (#{make-application\ 252}# #{source\ 2558}# #{fun-exp\ 2559}# #{arg-exps\ 2560}#))) (#{build-void\ 292}# (lambda (#{source\ 2564}#) (#{make-void\ 230}# #{source\ 2564}#))) (#{decorate-source\ 290}# (lambda (#{e\ 2566}# #{s\ 2567}#) (begin (if (if (pair? #{e\ 2566}#) #{s\ 2567}# #f) (set-source-properties! #{e\ 2566}# #{s\ 2567}#)) #{e\ 2566}#))) (#{get-global-definition-hook\ 288}# (lambda (#{symbol\ 2572}# #{module\ 2573}#) (begin (if (if (not #{module\ 2573}#) (current-module) #f) (warn "module system is booted, we should have a module" #{symbol\ 2572}#)) (let ((#{v\ 2579}# (module-variable (if #{module\ 2573}# (resolve-module (cdr #{module\ 2573}#)) (current-module)) #{symbol\ 2572}#))) (if #{v\ 2579}# (if (variable-bound? #{v\ 2579}#) (let ((#{val\ 2584}# (variable-ref #{v\ 2579}#))) (if (macro? #{val\ 2584}#) (if (macro-type #{val\ 2584}#) (cons (macro-type #{val\ 2584}#) (macro-binding #{val\ 2584}#)) #f) #f)) #f) #f))))) (#{put-global-definition-hook\ 286}# (lambda (#{symbol\ 2588}# #{type\ 2589}# #{val\ 2590}#) (module-define! (current-module) #{symbol\ 2588}# (make-syntax-transformer #{symbol\ 2588}# #{type\ 2589}# #{val\ 2590}#)))) (#{local-eval-hook\ 283}# (lambda (#{x\ 2594}# #{mod\ 2595}#) (primitive-eval #{x\ 2594}#))) (#{top-level-eval-hook\ 281}# (lambda (#{x\ 2598}# #{mod\ 2599}#) (primitive-eval #{x\ 2598}#))) (#{fx<\ 279}# <) (#{fx=\ 277}# =) (#{fx-\ 275}# -) (#{fx+\ 273}# +) (#{set-lambda-meta!\ 271}# (lambda (#{x\ 2602}# #{v\ 2603}#) (struct-set! #{x\ 2602}# 1 #{v\ 2603}#))) (#{lambda-meta\ 269}# (lambda (#{x\ 2606}#) (struct-ref #{x\ 2606}# 1))) (#{lambda?\ 267}# (lambda (#{x\ 2608}#) (if (struct? #{x\ 2608}#) (eq? (struct-vtable #{x\ 2608}#) (vector-ref %expanded-vtables 13)) #f))) (#{make-dynlet\ 264}# (lambda (#{src\ 2612}# #{fluids\ 2613}# #{vals\ 2614}# #{body\ 2615}#) (make-struct (vector-ref %expanded-vtables 17) 0 #{src\ 2612}# #{fluids\ 2613}# #{vals\ 2614}# #{body\ 2615}#))) (#{make-letrec\ 262}# (lambda (#{src\ 2620}# #{names\ 2621}# #{gensyms\ 2622}# #{vals\ 2623}# #{body\ 2624}#) (make-struct (vector-ref %expanded-vtables 16) 0 #{src\ 2620}# #{names\ 2621}# #{gensyms\ 2622}# #{vals\ 2623}# #{body\ 2624}#))) (#{make-let\ 260}# (lambda (#{src\ 2630}# #{names\ 2631}# #{gensyms\ 2632}# #{vals\ 2633}# #{body\ 2634}#) (make-struct (vector-ref %expanded-vtables 15) 0 #{src\ 2630}# #{names\ 2631}# #{gensyms\ 2632}# #{vals\ 2633}# #{body\ 2634}#))) (#{make-lambda-case\ 258}# (lambda (#{src\ 2640}# #{req\ 2641}# #{opt\ 2642}# #{rest\ 2643}# #{kw\ 2644}# #{inits\ 2645}# #{gensyms\ 2646}# #{body\ 2647}# #{alternate\ 2648}#) (make-struct (vector-ref %expanded-vtables 14) 0 #{src\ 2640}# #{req\ 2641}# #{opt\ 2642}# #{rest\ 2643}# #{kw\ 2644}# #{inits\ 2645}# #{gensyms\ 2646}# #{body\ 2647}# #{alternate\ 2648}#))) (#{make-lambda\ 256}# (lambda (#{src\ 2658}# #{meta\ 2659}# #{body\ 2660}#) (make-struct (vector-ref %expanded-vtables 13) 0 #{src\ 2658}# #{meta\ 2659}# #{body\ 2660}#))) (#{make-sequence\ 254}# (lambda (#{src\ 2664}# #{exps\ 2665}#) (make-struct (vector-ref %expanded-vtables 12) 0 #{src\ 2664}# #{exps\ 2665}#))) (#{make-application\ 252}# (lambda (#{src\ 2668}# #{proc\ 2669}# #{args\ 2670}#) (make-struct (vector-ref %expanded-vtables 11) 0 #{src\ 2668}# #{proc\ 2669}# #{args\ 2670}#))) (#{make-conditional\ 250}# (lambda (#{src\ 2674}# #{test\ 2675}# #{consequent\ 2676}# #{alternate\ 2677}#) (make-struct (vector-ref %expanded-vtables 10) 0 #{src\ 2674}# #{test\ 2675}# #{consequent\ 2676}# #{alternate\ 2677}#))) (#{make-toplevel-define\ 248}# (lambda (#{src\ 2682}# #{name\ 2683}# #{exp\ 2684}#) (make-struct (vector-ref %expanded-vtables 9) 0 #{src\ 2682}# #{name\ 2683}# #{exp\ 2684}#))) (#{make-toplevel-set\ 246}# (lambda (#{src\ 2688}# #{name\ 2689}# #{exp\ 2690}#) (make-struct (vector-ref %expanded-vtables 8) 0 #{src\ 2688}# #{name\ 2689}# #{exp\ 2690}#))) (#{make-toplevel-ref\ 244}# (lambda (#{src\ 2694}# #{name\ 2695}#) (make-struct (vector-ref %expanded-vtables 7) 0 #{src\ 2694}# #{name\ 2695}#))) (#{make-module-set\ 242}# (lambda (#{src\ 2698}# #{mod\ 2699}# #{name\ 2700}# #{public?\ 2701}# #{exp\ 2702}#) (make-struct (vector-ref %expanded-vtables 6) 0 #{src\ 2698}# #{mod\ 2699}# #{name\ 2700}# #{public?\ 2701}# #{exp\ 2702}#))) (#{make-module-ref\ 240}# (lambda (#{src\ 2708}# #{mod\ 2709}# #{name\ 2710}# #{public?\ 2711}#) (make-struct (vector-ref %expanded-vtables 5) 0 #{src\ 2708}# #{mod\ 2709}# #{name\ 2710}# #{public?\ 2711}#))) (#{make-lexical-set\ 238}# (lambda (#{src\ 2716}# #{name\ 2717}# #{gensym\ 2718}# #{exp\ 2719}#) (make-struct (vector-ref %expanded-vtables 4) 0 #{src\ 2716}# #{name\ 2717}# #{gensym\ 2718}# #{exp\ 2719}#))) (#{make-lexical-ref\ 236}# (lambda (#{src\ 2724}# #{name\ 2725}# #{gensym\ 2726}#) (make-struct (vector-ref %expanded-vtables 3) 0 #{src\ 2724}# #{name\ 2725}# #{gensym\ 2726}#))) (#{make-primitive-ref\ 234}# (lambda (#{src\ 2730}# #{name\ 2731}#) (make-struct (vector-ref %expanded-vtables 2) 0 #{src\ 2730}# #{name\ 2731}#))) (#{make-const\ 232}# (lambda (#{src\ 2734}# #{exp\ 2735}#) (make-struct (vector-ref %expanded-vtables 1) 0 #{src\ 2734}# #{exp\ 2735}#))) (#{make-void\ 230}# (lambda (#{src\ 2738}#) (make-struct (vector-ref %expanded-vtables 0) 0 #{src\ 2738}#)))) (begin (#{global-extend\ 368}# 'local-syntax 'letrec-syntax #t) (#{global-extend\ 368}# 'local-syntax 'let-syntax #f) (#{global-extend\ 368}# 'core 'fluid-let-syntax (lambda (#{e\ 2740}# #{r\ 2741}# #{w\ 2742}# #{s\ 2743}# #{mod\ 2744}#) ((lambda (#{tmp\ 2750}#) ((lambda (#{tmp\ 2751}#) (if (if #{tmp\ 2751}# (apply (lambda (#{_\ 2757}# #{var\ 2758}# #{val\ 2759}# #{e1\ 2760}# #{e2\ 2761}#) (#{valid-bound-ids?\ 435}# #{var\ 2758}#)) #{tmp\ 2751}#) #f) (apply (lambda (#{_\ 2768}# #{var\ 2769}# #{val\ 2770}# #{e1\ 2771}# #{e2\ 2772}#) (let ((#{names\ 2774}# (map (lambda (#{x\ 2775}#) (#{id-var-name\ 429}# #{x\ 2775}# #{w\ 2742}#)) #{var\ 2769}#))) (begin (for-each (lambda (#{id\ 2778}# #{n\ 2779}#) (let ((#{atom-key\ 2784}# (#{binding-type\ 355}# (#{lookup\ 366}# #{n\ 2779}# #{r\ 2741}# #{mod\ 2744}#)))) (if (memv #{atom-key\ 2784}# '(displaced-lexical)) (syntax-violation 'fluid-let-syntax "identifier out of context" #{e\ 2740}# (#{source-wrap\ 443}# #{id\ 2778}# #{w\ 2742}# #{s\ 2743}# #{mod\ 2744}#))))) #{var\ 2769}# #{names\ 2774}#) (#{chi-body\ 465}# (cons #{e1\ 2771}# #{e2\ 2772}#) (#{source-wrap\ 443}# #{e\ 2740}# #{w\ 2742}# #{s\ 2743}# #{mod\ 2744}#) (#{extend-env\ 360}# #{names\ 2774}# (let ((#{trans-r\ 2789}# (#{macros-only-env\ 364}# #{r\ 2741}#))) (map (lambda (#{x\ 2790}#) (cons 'macro (#{eval-local-transformer\ 469}# (#{chi\ 457}# #{x\ 2790}# #{trans-r\ 2789}# #{w\ 2742}# #{mod\ 2744}#) #{mod\ 2744}#))) #{val\ 2770}#)) #{r\ 2741}#) #{w\ 2742}# #{mod\ 2744}#)))) #{tmp\ 2751}#) ((lambda (#{_\ 2795}#) (syntax-violation 'fluid-let-syntax "bad syntax" (#{source-wrap\ 443}# #{e\ 2740}# #{w\ 2742}# #{s\ 2743}# #{mod\ 2744}#))) #{tmp\ 2750}#))) ($sc-dispatch #{tmp\ 2750}# '(any #(each (any any)) any . each-any)))) #{e\ 2740}#))) (#{global-extend\ 368}# 'core 'quote (lambda (#{e\ 2796}# #{r\ 2797}# #{w\ 2798}# #{s\ 2799}# #{mod\ 2800}#) ((lambda (#{tmp\ 2806}#) ((lambda (#{tmp\ 2807}#) (if #{tmp\ 2807}# (apply (lambda (#{_\ 2810}# #{e\ 2811}#) (#{build-data\ 322}# #{s\ 2799}# (#{strip\ 483}# #{e\ 2811}# #{w\ 2798}#))) #{tmp\ 2807}#) ((lambda (#{_\ 2813}#) (syntax-violation 'quote "bad syntax" (#{source-wrap\ 443}# #{e\ 2796}# #{w\ 2798}# #{s\ 2799}# #{mod\ 2800}#))) #{tmp\ 2806}#))) ($sc-dispatch #{tmp\ 2806}# (quote (any any))))) #{e\ 2796}#))) (#{global-extend\ 368}# 'core 'syntax (letrec ((#{regen\ 2829}# (lambda (#{x\ 2830}#) (let ((#{atom-key\ 2834}# (car #{x\ 2830}#))) (if (memv #{atom-key\ 2834}# (quote (ref))) (#{build-lexical-reference\ 300}# 'value #f (cadr #{x\ 2830}#) (cadr #{x\ 2830}#)) (if (memv #{atom-key\ 2834}# (quote (primitive))) (#{build-primref\ 320}# #f (cadr #{x\ 2830}#)) (if (memv #{atom-key\ 2834}# (quote (quote))) (#{build-data\ 322}# #f (cadr #{x\ 2830}#)) (if (memv #{atom-key\ 2834}# (quote (lambda))) (if (list? (cadr #{x\ 2830}#)) (#{build-simple-lambda\ 314}# #f (cadr #{x\ 2830}#) #f (cadr #{x\ 2830}#) '() (#{regen\ 2829}# (caddr #{x\ 2830}#))) (error "how did we get here" #{x\ 2830}#)) (#{build-application\ 294}# #f (#{build-primref\ 320}# #f (car #{x\ 2830}#)) (map #{regen\ 2829}# (cdr #{x\ 2830}#)))))))))) (#{gen-vector\ 2827}# (lambda (#{x\ 2846}#) (if (eq? (car #{x\ 2846}#) (quote list)) (cons (quote vector) (cdr #{x\ 2846}#)) (if (eq? (car #{x\ 2846}#) (quote quote)) (list 'quote (list->vector (cadr #{x\ 2846}#))) (list (quote list->vector) #{x\ 2846}#))))) (#{gen-append\ 2825}# (lambda (#{x\ 2856}# #{y\ 2857}#) (if (equal? #{y\ 2857}# (quote (quote ()))) #{x\ 2856}# (list (quote append) #{x\ 2856}# #{y\ 2857}#)))) (#{gen-cons\ 2823}# (lambda (#{x\ 2861}# #{y\ 2862}#) (let ((#{atom-key\ 2867}# (car #{y\ 2862}#))) (if (memv #{atom-key\ 2867}# (quote (quote))) (if (eq? (car #{x\ 2861}#) (quote quote)) (list 'quote (cons (cadr #{x\ 2861}#) (cadr #{y\ 2862}#))) (if (eq? (cadr #{y\ 2862}#) (quote ())) (list (quote list) #{x\ 2861}#) (list (quote cons) #{x\ 2861}# #{y\ 2862}#))) (if (memv #{atom-key\ 2867}# (quote (list))) (cons 'list (cons #{x\ 2861}# (cdr #{y\ 2862}#))) (list (quote cons) #{x\ 2861}# #{y\ 2862}#)))))) (#{gen-map\ 2821}# (lambda (#{e\ 2876}# #{map-env\ 2877}#) (let ((#{formals\ 2882}# (map cdr #{map-env\ 2877}#)) (#{actuals\ 2883}# (map (lambda (#{x\ 2884}#) (list (quote ref) (car #{x\ 2884}#))) #{map-env\ 2877}#))) (if (eq? (car #{e\ 2876}#) (quote ref)) (car #{actuals\ 2883}#) (if (and-map (lambda (#{x\ 2891}#) (if (eq? (car #{x\ 2891}#) (quote ref)) (memq (cadr #{x\ 2891}#) #{formals\ 2882}#) #f)) (cdr #{e\ 2876}#)) (cons 'map (cons (list 'primitive (car #{e\ 2876}#)) (map (let ((#{r\ 2897}# (map cons #{formals\ 2882}# #{actuals\ 2883}#))) (lambda (#{x\ 2898}#) (cdr (assq (cadr #{x\ 2898}#) #{r\ 2897}#)))) (cdr #{e\ 2876}#)))) (cons 'map (cons (list 'lambda #{formals\ 2882}# #{e\ 2876}#) #{actuals\ 2883}#))))))) (#{gen-mappend\ 2819}# (lambda (#{e\ 2902}# #{map-env\ 2903}#) (list 'apply '(primitive append) (#{gen-map\ 2821}# #{e\ 2902}# #{map-env\ 2903}#)))) (#{gen-ref\ 2817}# (lambda (#{src\ 2907}# #{var\ 2908}# #{level\ 2909}# #{maps\ 2910}#) (if (#{fx=\ 277}# #{level\ 2909}# 0) (values #{var\ 2908}# #{maps\ 2910}#) (if (null? #{maps\ 2910}#) (syntax-violation 'syntax "missing ellipsis" #{src\ 2907}#) (call-with-values (lambda () (#{gen-ref\ 2817}# #{src\ 2907}# #{var\ 2908}# (#{fx-\ 275}# #{level\ 2909}# 1) (cdr #{maps\ 2910}#))) (lambda (#{outer-var\ 2915}# #{outer-maps\ 2916}#) (let ((#{b\ 2920}# (assq #{outer-var\ 2915}# (car #{maps\ 2910}#)))) (if #{b\ 2920}# (values (cdr #{b\ 2920}#) #{maps\ 2910}#) (let ((#{inner-var\ 2922}# (#{gen-var\ 485}# (quote tmp)))) (values #{inner-var\ 2922}# (cons (cons (cons #{outer-var\ 2915}# #{inner-var\ 2922}#) (car #{maps\ 2910}#)) #{outer-maps\ 2916}#))))))))))) (#{gen-syntax\ 2815}# (lambda (#{src\ 2923}# #{e\ 2924}# #{r\ 2925}# #{maps\ 2926}# #{ellipsis?\ 2927}# #{mod\ 2928}#) (if (#{id?\ 372}# #{e\ 2924}#) (let ((#{label\ 2936}# (#{id-var-name\ 429}# #{e\ 2924}# '(())))) (let ((#{b\ 2939}# (#{lookup\ 366}# #{label\ 2936}# #{r\ 2925}# #{mod\ 2928}#))) (if (eq? (#{binding-type\ 355}# #{b\ 2939}#) 'syntax) (call-with-values (lambda () (let ((#{var.lev\ 2941}# (#{binding-value\ 357}# #{b\ 2939}#))) (#{gen-ref\ 2817}# #{src\ 2923}# (car #{var.lev\ 2941}#) (cdr #{var.lev\ 2941}#) #{maps\ 2926}#))) (lambda (#{var\ 2942}# #{maps\ 2943}#) (values (list (quote ref) #{var\ 2942}#) #{maps\ 2943}#))) (if (#{ellipsis?\ 2927}# #{e\ 2924}#) (syntax-violation 'syntax "misplaced ellipsis" #{src\ 2923}#) (values (list (quote quote) #{e\ 2924}#) #{maps\ 2926}#))))) ((lambda (#{tmp\ 2948}#) ((lambda (#{tmp\ 2949}#) (if (if #{tmp\ 2949}# (apply (lambda (#{dots\ 2952}# #{e\ 2953}#) (#{ellipsis?\ 2927}# #{dots\ 2952}#)) #{tmp\ 2949}#) #f) (apply (lambda (#{dots\ 2956}# #{e\ 2957}#) (#{gen-syntax\ 2815}# #{src\ 2923}# #{e\ 2957}# #{r\ 2925}# #{maps\ 2926}# (lambda (#{x\ 2958}#) #f) #{mod\ 2928}#)) #{tmp\ 2949}#) ((lambda (#{tmp\ 2960}#) (if (if #{tmp\ 2960}# (apply (lambda (#{x\ 2964}# #{dots\ 2965}# #{y\ 2966}#) (#{ellipsis?\ 2927}# #{dots\ 2965}#)) #{tmp\ 2960}#) #f) (apply (lambda (#{x\ 2970}# #{dots\ 2971}# #{y\ 2972}#) (letrec ((#{f\ 2976}# (lambda (#{y\ 2977}# #{k\ 2978}#) ((lambda (#{tmp\ 2985}#) ((lambda (#{tmp\ 2986}#) (if (if #{tmp\ 2986}# (apply (lambda (#{dots\ 2989}# #{y\ 2990}#) (#{ellipsis?\ 2927}# #{dots\ 2989}#)) #{tmp\ 2986}#) #f) (apply (lambda (#{dots\ 2993}# #{y\ 2994}#) (#{f\ 2976}# #{y\ 2994}# (lambda (#{maps\ 2995}#) (call-with-values (lambda () (#{k\ 2978}# (cons '() #{maps\ 2995}#))) (lambda (#{x\ 2997}# #{maps\ 2998}#) (if (null? (car #{maps\ 2998}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2923}#) (values (#{gen-mappend\ 2819}# #{x\ 2997}# (car #{maps\ 2998}#)) (cdr #{maps\ 2998}#)))))))) #{tmp\ 2986}#) ((lambda (#{_\ 3002}#) (call-with-values (lambda () (#{gen-syntax\ 2815}# #{src\ 2923}# #{y\ 2977}# #{r\ 2925}# #{maps\ 2926}# #{ellipsis?\ 2927}# #{mod\ 2928}#)) (lambda (#{y\ 3003}# #{maps\ 3004}#) (call-with-values (lambda () (#{k\ 2978}# #{maps\ 3004}#)) (lambda (#{x\ 3007}# #{maps\ 3008}#) (values (#{gen-append\ 2825}# #{x\ 3007}# #{y\ 3003}#) #{maps\ 3008}#)))))) #{tmp\ 2985}#))) ($sc-dispatch #{tmp\ 2985}# '(any . any)))) #{y\ 2977}#)))) (#{f\ 2976}# #{y\ 2972}# (lambda (#{maps\ 2979}#) (call-with-values (lambda () (#{gen-syntax\ 2815}# #{src\ 2923}# #{x\ 2970}# #{r\ 2925}# (cons '() #{maps\ 2979}#) #{ellipsis?\ 2927}# #{mod\ 2928}#)) (lambda (#{x\ 2981}# #{maps\ 2982}#) (if (null? (car #{maps\ 2982}#)) (syntax-violation 'syntax "extra ellipsis" #{src\ 2923}#) (values (#{gen-map\ 2821}# #{x\ 2981}# (car #{maps\ 2982}#)) (cdr #{maps\ 2982}#))))))))) #{tmp\ 2960}#) ((lambda (#{tmp\ 3011}#) (if #{tmp\ 3011}# (apply (lambda (#{x\ 3014}# #{y\ 3015}#) (call-with-values (lambda () (#{gen-syntax\ 2815}# #{src\ 2923}# #{x\ 3014}# #{r\ 2925}# #{maps\ 2926}# #{ellipsis?\ 2927}# #{mod\ 2928}#)) (lambda (#{x\ 3016}# #{maps\ 3017}#) (call-with-values (lambda () (#{gen-syntax\ 2815}# #{src\ 2923}# #{y\ 3015}# #{r\ 2925}# #{maps\ 3017}# #{ellipsis?\ 2927}# #{mod\ 2928}#)) (lambda (#{y\ 3020}# #{maps\ 3021}#) (values (#{gen-cons\ 2823}# #{x\ 3016}# #{y\ 3020}#) #{maps\ 3021}#)))))) #{tmp\ 3011}#) ((lambda (#{tmp\ 3024}#) (if #{tmp\ 3024}# (apply (lambda (#{e1\ 3027}# #{e2\ 3028}#) (call-with-values (lambda () (#{gen-syntax\ 2815}# #{src\ 2923}# (cons #{e1\ 3027}# #{e2\ 3028}#) #{r\ 2925}# #{maps\ 2926}# #{ellipsis?\ 2927}# #{mod\ 2928}#)) (lambda (#{e\ 3030}# #{maps\ 3031}#) (values (#{gen-vector\ 2827}# #{e\ 3030}#) #{maps\ 3031}#)))) #{tmp\ 3024}#) ((lambda (#{_\ 3035}#) (values (list 'quote #{e\ 2924}#) #{maps\ 2926}#)) #{tmp\ 2948}#))) ($sc-dispatch #{tmp\ 2948}# '#(vector (any . each-any)))))) ($sc-dispatch #{tmp\ 2948}# '(any . any))))) ($sc-dispatch #{tmp\ 2948}# '(any any . any))))) ($sc-dispatch #{tmp\ 2948}# (quote (any any))))) #{e\ 2924}#))))) (lambda (#{e\ 3037}# #{r\ 3038}# #{w\ 3039}# #{s\ 3040}# #{mod\ 3041}#) (let ((#{e\ 3048}# (#{source-wrap\ 443}# #{e\ 3037}# #{w\ 3039}# #{s\ 3040}# #{mod\ 3041}#))) ((lambda (#{tmp\ 3049}#) ((lambda (#{tmp\ 3050}#) (if #{tmp\ 3050}# (apply (lambda (#{_\ 3053}# #{x\ 3054}#) (call-with-values (lambda () (#{gen-syntax\ 2815}# #{e\ 3048}# #{x\ 3054}# #{r\ 3038}# '() #{ellipsis?\ 473}# #{mod\ 3041}#)) (lambda (#{e\ 3055}# #{maps\ 3056}#) (#{regen\ 2829}# #{e\ 3055}#)))) #{tmp\ 3050}#) ((lambda (#{_\ 3060}#) (syntax-violation 'syntax "bad `syntax' form" #{e\ 3048}#)) #{tmp\ 3049}#))) ($sc-dispatch #{tmp\ 3049}# (quote (any any))))) #{e\ 3048}#))))) (#{global-extend\ 368}# 'core 'lambda (lambda (#{e\ 3061}# #{r\ 3062}# #{w\ 3063}# #{s\ 3064}# #{mod\ 3065}#) ((lambda (#{tmp\ 3071}#) ((lambda (#{tmp\ 3072}#) (if #{tmp\ 3072}# (apply (lambda (#{_\ 3077}# #{args\ 3078}# #{e1\ 3079}# #{e2\ 3080}#) (call-with-values (lambda () (#{lambda-formals\ 475}# #{args\ 3078}#)) (lambda (#{req\ 3081}# #{opt\ 3082}# #{rest\ 3083}# #{kw\ 3084}#) (letrec ((#{lp\ 3092}# (lambda (#{body\ 3093}# #{meta\ 3094}#) ((lambda (#{tmp\ 3096}#) ((lambda (#{tmp\ 3097}#) (if (if #{tmp\ 3097}# (apply (lambda (#{docstring\ 3101}# #{e1\ 3102}# #{e2\ 3103}#) (string? (syntax->datum #{docstring\ 3101}#))) #{tmp\ 3097}#) #f) (apply (lambda (#{docstring\ 3107}# #{e1\ 3108}# #{e2\ 3109}#) (#{lp\ 3092}# (cons #{e1\ 3108}# #{e2\ 3109}#) (append #{meta\ 3094}# (list (cons 'documentation (syntax->datum #{docstring\ 3107}#)))))) #{tmp\ 3097}#) ((lambda (#{tmp\ 3112}#) (if #{tmp\ 3112}# (apply (lambda (#{k\ 3117}# #{v\ 3118}# #{e1\ 3119}# #{e2\ 3120}#) (#{lp\ 3092}# (cons #{e1\ 3119}# #{e2\ 3120}#) (append #{meta\ 3094}# (syntax->datum (map cons #{k\ 3117}# #{v\ 3118}#))))) #{tmp\ 3112}#) ((lambda (#{_\ 3125}#) (#{chi-simple-lambda\ 477}# #{e\ 3061}# #{r\ 3062}# #{w\ 3063}# #{s\ 3064}# #{mod\ 3065}# #{req\ 3081}# #{rest\ 3083}# #{meta\ 3094}# #{body\ 3093}#)) #{tmp\ 3096}#))) ($sc-dispatch #{tmp\ 3096}# '(#(vector #(each (any . any))) any . each-any))))) ($sc-dispatch #{tmp\ 3096}# '(any any . each-any)))) #{body\ 3093}#)))) (#{lp\ 3092}# (cons #{e1\ 3079}# #{e2\ 3080}#) '()))))) #{tmp\ 3072}#) ((lambda (#{_\ 3127}#) (syntax-violation 'lambda "bad lambda" #{e\ 3061}#)) #{tmp\ 3071}#))) ($sc-dispatch #{tmp\ 3071}# '(any any any . each-any)))) #{e\ 3061}#))) (#{global-extend\ 368}# 'core 'lambda* (lambda (#{e\ 3128}# #{r\ 3129}# #{w\ 3130}# #{s\ 3131}# #{mod\ 3132}#) ((lambda (#{tmp\ 3138}#) ((lambda (#{tmp\ 3139}#) (if #{tmp\ 3139}# (apply (lambda (#{_\ 3144}# #{args\ 3145}# #{e1\ 3146}# #{e2\ 3147}#) (call-with-values (lambda () (#{chi-lambda-case\ 481}# #{e\ 3128}# #{r\ 3129}# #{w\ 3130}# #{s\ 3131}# #{mod\ 3132}# #{lambda*-formals\ 479}# (list (cons #{args\ 3145}# (cons #{e1\ 3146}# #{e2\ 3147}#))))) (lambda (#{meta\ 3149}# #{lcase\ 3150}#) (#{build-case-lambda\ 316}# #{s\ 3131}# #{meta\ 3149}# #{lcase\ 3150}#)))) #{tmp\ 3139}#) ((lambda (#{_\ 3154}#) (syntax-violation 'lambda "bad lambda*" #{e\ 3128}#)) #{tmp\ 3138}#))) ($sc-dispatch #{tmp\ 3138}# '(any any any . each-any)))) #{e\ 3128}#))) (#{global-extend\ 368}# 'core 'case-lambda (lambda (#{e\ 3155}# #{r\ 3156}# #{w\ 3157}# #{s\ 3158}# #{mod\ 3159}#) ((lambda (#{tmp\ 3165}#) ((lambda (#{tmp\ 3166}#) (if #{tmp\ 3166}# (apply (lambda (#{_\ 3174}# #{args\ 3175}# #{e1\ 3176}# #{e2\ 3177}# #{args*\ 3178}# #{e1*\ 3179}# #{e2*\ 3180}#) (call-with-values (lambda () (#{chi-lambda-case\ 481}# #{e\ 3155}# #{r\ 3156}# #{w\ 3157}# #{s\ 3158}# #{mod\ 3159}# #{lambda-formals\ 475}# (cons (cons #{args\ 3175}# (cons #{e1\ 3176}# #{e2\ 3177}#)) (map (lambda (#{tmp\ 3184}# #{tmp\ 3183}# #{tmp\ 3182}#) (cons #{tmp\ 3182}# (cons #{tmp\ 3183}# #{tmp\ 3184}#))) #{e2*\ 3180}# #{e1*\ 3179}# #{args*\ 3178}#)))) (lambda (#{meta\ 3186}# #{lcase\ 3187}#) (#{build-case-lambda\ 316}# #{s\ 3158}# #{meta\ 3186}# #{lcase\ 3187}#)))) #{tmp\ 3166}#) ((lambda (#{_\ 3191}#) (syntax-violation 'case-lambda "bad case-lambda" #{e\ 3155}#)) #{tmp\ 3165}#))) ($sc-dispatch #{tmp\ 3165}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 3155}#))) (#{global-extend\ 368}# 'core 'case-lambda* (lambda (#{e\ 3192}# #{r\ 3193}# #{w\ 3194}# #{s\ 3195}# #{mod\ 3196}#) ((lambda (#{tmp\ 3202}#) ((lambda (#{tmp\ 3203}#) (if #{tmp\ 3203}# (apply (lambda (#{_\ 3211}# #{args\ 3212}# #{e1\ 3213}# #{e2\ 3214}# #{args*\ 3215}# #{e1*\ 3216}# #{e2*\ 3217}#) (call-with-values (lambda () (#{chi-lambda-case\ 481}# #{e\ 3192}# #{r\ 3193}# #{w\ 3194}# #{s\ 3195}# #{mod\ 3196}# #{lambda*-formals\ 479}# (cons (cons #{args\ 3212}# (cons #{e1\ 3213}# #{e2\ 3214}#)) (map (lambda (#{tmp\ 3221}# #{tmp\ 3220}# #{tmp\ 3219}#) (cons #{tmp\ 3219}# (cons #{tmp\ 3220}# #{tmp\ 3221}#))) #{e2*\ 3217}# #{e1*\ 3216}# #{args*\ 3215}#)))) (lambda (#{meta\ 3223}# #{lcase\ 3224}#) (#{build-case-lambda\ 316}# #{s\ 3195}# #{meta\ 3223}# #{lcase\ 3224}#)))) #{tmp\ 3203}#) ((lambda (#{_\ 3228}#) (syntax-violation 'case-lambda "bad case-lambda*" #{e\ 3192}#)) #{tmp\ 3202}#))) ($sc-dispatch #{tmp\ 3202}# '(any (any any . each-any) . #(each (any any . each-any)))))) #{e\ 3192}#))) (#{global-extend\ 368}# 'core 'let (letrec ((#{chi-let\ 3230}# (lambda (#{e\ 3231}# #{r\ 3232}# #{w\ 3233}# #{s\ 3234}# #{mod\ 3235}# #{constructor\ 3236}# #{ids\ 3237}# #{vals\ 3238}# #{exps\ 3239}#) (if (not (#{valid-bound-ids?\ 435}# #{ids\ 3237}#)) (syntax-violation 'let "duplicate bound variable" #{e\ 3231}#) (let ((#{labels\ 3251}# (#{gen-labels\ 390}# #{ids\ 3237}#)) (#{new-vars\ 3252}# (map #{gen-var\ 485}# #{ids\ 3237}#))) (let ((#{nw\ 3255}# (#{make-binding-wrap\ 419}# #{ids\ 3237}# #{labels\ 3251}# #{w\ 3233}#)) (#{nr\ 3256}# (#{extend-var-env\ 362}# #{labels\ 3251}# #{new-vars\ 3252}# #{r\ 3232}#))) (#{constructor\ 3236}# #{s\ 3234}# (map syntax->datum #{ids\ 3237}#) #{new-vars\ 3252}# (map (lambda (#{x\ 3257}#) (#{chi\ 457}# #{x\ 3257}# #{r\ 3232}# #{w\ 3233}# #{mod\ 3235}#)) #{vals\ 3238}#) (#{chi-body\ 465}# #{exps\ 3239}# (#{source-wrap\ 443}# #{e\ 3231}# #{nw\ 3255}# #{s\ 3234}# #{mod\ 3235}#) #{nr\ 3256}# #{nw\ 3255}# #{mod\ 3235}#)))))))) (lambda (#{e\ 3259}# #{r\ 3260}# #{w\ 3261}# #{s\ 3262}# #{mod\ 3263}#) ((lambda (#{tmp\ 3269}#) ((lambda (#{tmp\ 3270}#) (if (if #{tmp\ 3270}# (apply (lambda (#{_\ 3276}# #{id\ 3277}# #{val\ 3278}# #{e1\ 3279}# #{e2\ 3280}#) (and-map #{id?\ 372}# #{id\ 3277}#)) #{tmp\ 3270}#) #f) (apply (lambda (#{_\ 3287}# #{id\ 3288}# #{val\ 3289}# #{e1\ 3290}# #{e2\ 3291}#) (#{chi-let\ 3230}# #{e\ 3259}# #{r\ 3260}# #{w\ 3261}# #{s\ 3262}# #{mod\ 3263}# #{build-let\ 326}# #{id\ 3288}# #{val\ 3289}# (cons #{e1\ 3290}# #{e2\ 3291}#))) #{tmp\ 3270}#) ((lambda (#{tmp\ 3295}#) (if (if #{tmp\ 3295}# (apply (lambda (#{_\ 3302}# #{f\ 3303}# #{id\ 3304}# #{val\ 3305}# #{e1\ 3306}# #{e2\ 3307}#) (if (#{id?\ 372}# #{f\ 3303}#) (and-map #{id?\ 372}# #{id\ 3304}#) #f)) #{tmp\ 3295}#) #f) (apply (lambda (#{_\ 3317}# #{f\ 3318}# #{id\ 3319}# #{val\ 3320}# #{e1\ 3321}# #{e2\ 3322}#) (#{chi-let\ 3230}# #{e\ 3259}# #{r\ 3260}# #{w\ 3261}# #{s\ 3262}# #{mod\ 3263}# #{build-named-let\ 328}# (cons #{f\ 3318}# #{id\ 3319}#) #{val\ 3320}# (cons #{e1\ 3321}# #{e2\ 3322}#))) #{tmp\ 3295}#) ((lambda (#{_\ 3327}#) (syntax-violation 'let "bad let" (#{source-wrap\ 443}# #{e\ 3259}# #{w\ 3261}# #{s\ 3262}# #{mod\ 3263}#))) #{tmp\ 3269}#))) ($sc-dispatch #{tmp\ 3269}# '(any any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 3269}# '(any #(each (any any)) any . each-any)))) #{e\ 3259}#)))) (#{global-extend\ 368}# 'core 'letrec (lambda (#{e\ 3328}# #{r\ 3329}# #{w\ 3330}# #{s\ 3331}# #{mod\ 3332}#) ((lambda (#{tmp\ 3338}#) ((lambda (#{tmp\ 3339}#) (if (if #{tmp\ 3339}# (apply (lambda (#{_\ 3345}# #{id\ 3346}# #{val\ 3347}# #{e1\ 3348}# #{e2\ 3349}#) (and-map #{id?\ 372}# #{id\ 3346}#)) #{tmp\ 3339}#) #f) (apply (lambda (#{_\ 3356}# #{id\ 3357}# #{val\ 3358}# #{e1\ 3359}# #{e2\ 3360}#) (let ((#{ids\ 3362}# #{id\ 3357}#)) (if (not (#{valid-bound-ids?\ 435}# #{ids\ 3362}#)) (syntax-violation 'letrec "duplicate bound variable" #{e\ 3328}#) (let ((#{labels\ 3366}# (#{gen-labels\ 390}# #{ids\ 3362}#)) (#{new-vars\ 3367}# (map #{gen-var\ 485}# #{ids\ 3362}#))) (let ((#{w\ 3370}# (#{make-binding-wrap\ 419}# #{ids\ 3362}# #{labels\ 3366}# #{w\ 3330}#)) (#{r\ 3371}# (#{extend-var-env\ 362}# #{labels\ 3366}# #{new-vars\ 3367}# #{r\ 3329}#))) (#{build-letrec\ 330}# #{s\ 3331}# (map syntax->datum #{ids\ 3362}#) #{new-vars\ 3367}# (map (lambda (#{x\ 3372}#) (#{chi\ 457}# #{x\ 3372}# #{r\ 3371}# #{w\ 3370}# #{mod\ 3332}#)) #{val\ 3358}#) (#{chi-body\ 465}# (cons #{e1\ 3359}# #{e2\ 3360}#) (#{source-wrap\ 443}# #{e\ 3328}# #{w\ 3370}# #{s\ 3331}# #{mod\ 3332}#) #{r\ 3371}# #{w\ 3370}# #{mod\ 3332}#))))))) #{tmp\ 3339}#) ((lambda (#{_\ 3377}#) (syntax-violation 'letrec "bad letrec" (#{source-wrap\ 443}# #{e\ 3328}# #{w\ 3330}# #{s\ 3331}# #{mod\ 3332}#))) #{tmp\ 3338}#))) ($sc-dispatch #{tmp\ 3338}# '(any #(each (any any)) any . each-any)))) #{e\ 3328}#))) (#{global-extend\ 368}# 'core 'set! (lambda (#{e\ 3378}# #{r\ 3379}# #{w\ 3380}# #{s\ 3381}# #{mod\ 3382}#) ((lambda (#{tmp\ 3388}#) ((lambda (#{tmp\ 3389}#) (if (if #{tmp\ 3389}# (apply (lambda (#{_\ 3393}# #{id\ 3394}# #{val\ 3395}#) (#{id?\ 372}# #{id\ 3394}#)) #{tmp\ 3389}#) #f) (apply (lambda (#{_\ 3399}# #{id\ 3400}# #{val\ 3401}#) (let ((#{val\ 3404}# (#{chi\ 457}# #{val\ 3401}# #{r\ 3379}# #{w\ 3380}# #{mod\ 3382}#)) (#{n\ 3405}# (#{id-var-name\ 429}# #{id\ 3400}# #{w\ 3380}#))) (let ((#{b\ 3407}# (#{lookup\ 366}# #{n\ 3405}# #{r\ 3379}# #{mod\ 3382}#))) (let ((#{atom-key\ 3410}# (#{binding-type\ 355}# #{b\ 3407}#))) (if (memv #{atom-key\ 3410}# '(lexical)) (#{build-lexical-assignment\ 302}# #{s\ 3381}# (syntax->datum #{id\ 3400}#) (#{binding-value\ 357}# #{b\ 3407}#) #{val\ 3404}#) (if (memv #{atom-key\ 3410}# '(global)) (#{build-global-assignment\ 308}# #{s\ 3381}# #{n\ 3405}# #{val\ 3404}# #{mod\ 3382}#) (if (memv #{atom-key\ 3410}# '(displaced-lexical)) (syntax-violation 'set! "identifier out of context" (#{wrap\ 441}# #{id\ 3400}# #{w\ 3380}# #{mod\ 3382}#)) (syntax-violation 'set! "bad set!" (#{source-wrap\ 443}# #{e\ 3378}# #{w\ 3380}# #{s\ 3381}# #{mod\ 3382}#))))))))) #{tmp\ 3389}#) ((lambda (#{tmp\ 3415}#) (if #{tmp\ 3415}# (apply (lambda (#{_\ 3420}# #{head\ 3421}# #{tail\ 3422}# #{val\ 3423}#) (call-with-values (lambda () (#{syntax-type\ 453}# #{head\ 3421}# #{r\ 3379}# '(()) #f #f #{mod\ 3382}# #t)) (lambda (#{type\ 3426}# #{value\ 3427}# #{ee\ 3428}# #{ww\ 3429}# #{ss\ 3430}# #{modmod\ 3431}#) (if (memv #{type\ 3426}# '(module-ref)) (let ((#{val\ 3440}# (#{chi\ 457}# #{val\ 3423}# #{r\ 3379}# #{w\ 3380}# #{mod\ 3382}#))) (call-with-values (lambda () (#{value\ 3427}# (cons #{head\ 3421}# #{tail\ 3422}#) #{r\ 3379}# #{w\ 3380}#)) (lambda (#{e\ 3442}# #{r\ 3443}# #{w\ 3444}# #{s*\ 3445}# #{mod\ 3446}#) ((lambda (#{tmp\ 3452}#) ((lambda (#{tmp\ 3453}#) (if (if #{tmp\ 3453}# (apply (lambda (#{e\ 3455}#) (#{id?\ 372}# #{e\ 3455}#)) #{tmp\ 3453}#) #f) (apply (lambda (#{e\ 3457}#) (#{build-global-assignment\ 308}# #{s\ 3381}# (syntax->datum #{e\ 3457}#) #{val\ 3440}# #{mod\ 3446}#)) #{tmp\ 3453}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3452}#))) (list #{tmp\ 3452}#))) #{e\ 3442}#)))) (#{build-application\ 294}# #{s\ 3381}# (#{chi\ 457}# (list '#(syntax-object setter ((top) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(type value ee ww ss modmod) #((top) (top) (top) (top) (top) (top)) #("i3432" "i3433" "i3434" "i3435" "i3436" "i3437")) #(ribcage #(_ head tail val) #((top) (top) (top) (top)) #("i3416" "i3417" "i3418" "i3419")) #(ribcage () () ()) #(ribcage #(e r w s mod) #((top) (top) (top) (top) (top)) #("i3383" "i3384" "i3385" "i3386" "i3387")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)) #{head\ 3421}#) #{r\ 3379}# #{w\ 3380}# #{mod\ 3382}#) (map (lambda (#{e\ 3459}#) (#{chi\ 457}# #{e\ 3459}# #{r\ 3379}# #{w\ 3380}# #{mod\ 3382}#)) (append #{tail\ 3422}# (list #{val\ 3423}#)))))))) #{tmp\ 3415}#) ((lambda (#{_\ 3463}#) (syntax-violation 'set! "bad set!" (#{source-wrap\ 443}# #{e\ 3378}# #{w\ 3380}# #{s\ 3381}# #{mod\ 3382}#))) #{tmp\ 3388}#))) ($sc-dispatch #{tmp\ 3388}# '(any (any . each-any) any))))) ($sc-dispatch #{tmp\ 3388}# '(any any any)))) #{e\ 3378}#))) (#{global-extend\ 368}# 'module-ref '@ (lambda (#{e\ 3464}# #{r\ 3465}# #{w\ 3466}#) ((lambda (#{tmp\ 3470}#) ((lambda (#{tmp\ 3471}#) (if (if #{tmp\ 3471}# (apply (lambda (#{_\ 3475}# #{mod\ 3476}# #{id\ 3477}#) (if (and-map #{id?\ 372}# #{mod\ 3476}#) (#{id?\ 372}# #{id\ 3477}#) #f)) #{tmp\ 3471}#) #f) (apply (lambda (#{_\ 3484}# #{mod\ 3485}# #{id\ 3486}#) (values (syntax->datum #{id\ 3486}#) #{r\ 3465}# #{w\ 3466}# #f (syntax->datum (cons '#(syntax-object public ((top) #(ribcage #(_ mod id) #((top) (top) (top)) #("i3481" "i3482" "i3483")) #(ribcage () () ()) #(ribcage #(e r w) #((top) (top) (top)) #("i3467" "i3468" "i3469")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)) #{mod\ 3485}#)))) #{tmp\ 3471}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3470}#))) ($sc-dispatch #{tmp\ 3470}# '(any each-any any)))) #{e\ 3464}#))) (#{global-extend\ 368}# 'module-ref '@@ (lambda (#{e\ 3488}# #{r\ 3489}# #{w\ 3490}#) (letrec ((#{remodulate\ 3495}# (lambda (#{x\ 3496}# #{mod\ 3497}#) (if (pair? #{x\ 3496}#) (cons (#{remodulate\ 3495}# (car #{x\ 3496}#) #{mod\ 3497}#) (#{remodulate\ 3495}# (cdr #{x\ 3496}#) #{mod\ 3497}#)) (if (#{syntax-object?\ 336}# #{x\ 3496}#) (#{make-syntax-object\ 334}# (#{remodulate\ 3495}# (#{syntax-object-expression\ 338}# #{x\ 3496}#) #{mod\ 3497}#) (#{syntax-object-wrap\ 340}# #{x\ 3496}#) #{mod\ 3497}#) (if (vector? #{x\ 3496}#) (let ((#{n\ 3508}# (vector-length #{x\ 3496}#))) (let ((#{v\ 3510}# (make-vector #{n\ 3508}#))) (letrec ((#{loop\ 3513}# (lambda (#{i\ 3514}#) (if (#{fx=\ 277}# #{i\ 3514}# #{n\ 3508}#) (begin (if #f #f) #{v\ 3510}#) (begin (vector-set! #{v\ 3510}# #{i\ 3514}# (#{remodulate\ 3495}# (vector-ref #{x\ 3496}# #{i\ 3514}#) #{mod\ 3497}#)) (#{loop\ 3513}# (#{fx+\ 273}# #{i\ 3514}# 1))))))) (#{loop\ 3513}# 0)))) #{x\ 3496}#)))))) ((lambda (#{tmp\ 3518}#) ((lambda (#{tmp\ 3519}#) (if (if #{tmp\ 3519}# (apply (lambda (#{_\ 3523}# #{mod\ 3524}# #{exp\ 3525}#) (and-map #{id?\ 372}# #{mod\ 3524}#)) #{tmp\ 3519}#) #f) (apply (lambda (#{_\ 3530}# #{mod\ 3531}# #{exp\ 3532}#) (let ((#{mod\ 3534}# (syntax->datum (cons '#(syntax-object private ((top) #(ribcage #(_ mod exp) #((top) (top) (top)) #("i3527" "i3528" "i3529")) #(ribcage (remodulate) ((top)) ("i3494")) #(ribcage #(e r w) #((top) (top) (top)) #("i3491" "i3492" "i3493")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)) #{mod\ 3531}#)))) (values (#{remodulate\ 3495}# #{exp\ 3532}# #{mod\ 3534}#) #{r\ 3489}# #{w\ 3490}# (#{source-annotation\ 351}# #{exp\ 3532}#) #{mod\ 3534}#))) #{tmp\ 3519}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3518}#))) ($sc-dispatch #{tmp\ 3518}# '(any each-any any)))) #{e\ 3488}#)))) (#{global-extend\ 368}# 'core 'if (lambda (#{e\ 3536}# #{r\ 3537}# #{w\ 3538}# #{s\ 3539}# #{mod\ 3540}#) ((lambda (#{tmp\ 3546}#) ((lambda (#{tmp\ 3547}#) (if #{tmp\ 3547}# (apply (lambda (#{_\ 3551}# #{test\ 3552}# #{then\ 3553}#) (#{build-conditional\ 296}# #{s\ 3539}# (#{chi\ 457}# #{test\ 3552}# #{r\ 3537}# #{w\ 3538}# #{mod\ 3540}#) (#{chi\ 457}# #{then\ 3553}# #{r\ 3537}# #{w\ 3538}# #{mod\ 3540}#) (#{build-void\ 292}# #f))) #{tmp\ 3547}#) ((lambda (#{tmp\ 3555}#) (if #{tmp\ 3555}# (apply (lambda (#{_\ 3560}# #{test\ 3561}# #{then\ 3562}# #{else\ 3563}#) (#{build-conditional\ 296}# #{s\ 3539}# (#{chi\ 457}# #{test\ 3561}# #{r\ 3537}# #{w\ 3538}# #{mod\ 3540}#) (#{chi\ 457}# #{then\ 3562}# #{r\ 3537}# #{w\ 3538}# #{mod\ 3540}#) (#{chi\ 457}# #{else\ 3563}# #{r\ 3537}# #{w\ 3538}# #{mod\ 3540}#))) #{tmp\ 3555}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3546}#))) ($sc-dispatch #{tmp\ 3546}# '(any any any any))))) ($sc-dispatch #{tmp\ 3546}# '(any any any)))) #{e\ 3536}#))) (#{global-extend\ 368}# 'core 'with-fluids (lambda (#{e\ 3564}# #{r\ 3565}# #{w\ 3566}# #{s\ 3567}# #{mod\ 3568}#) ((lambda (#{tmp\ 3574}#) ((lambda (#{tmp\ 3575}#) (if #{tmp\ 3575}# (apply (lambda (#{_\ 3581}# #{fluid\ 3582}# #{val\ 3583}# #{b\ 3584}# #{b*\ 3585}#) (#{build-dynlet\ 298}# #{s\ 3567}# (map (lambda (#{x\ 3586}#) (#{chi\ 457}# #{x\ 3586}# #{r\ 3565}# #{w\ 3566}# #{mod\ 3568}#)) #{fluid\ 3582}#) (map (lambda (#{x\ 3589}#) (#{chi\ 457}# #{x\ 3589}# #{r\ 3565}# #{w\ 3566}# #{mod\ 3568}#)) #{val\ 3583}#) (#{chi-body\ 465}# (cons #{b\ 3584}# #{b*\ 3585}#) (#{source-wrap\ 443}# #{e\ 3564}# #{w\ 3566}# #{s\ 3567}# #{mod\ 3568}#) #{r\ 3565}# #{w\ 3566}# #{mod\ 3568}#))) #{tmp\ 3575}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3574}#))) ($sc-dispatch #{tmp\ 3574}# '(any #(each (any any)) any . each-any)))) #{e\ 3564}#))) (#{global-extend\ 368}# 'begin 'begin '()) (#{global-extend\ 368}# 'define 'define '()) (#{global-extend\ 368}# 'define-syntax 'define-syntax '()) (#{global-extend\ 368}# 'eval-when 'eval-when '()) (#{global-extend\ 368}# 'core 'syntax-case (letrec ((#{gen-syntax-case\ 3600}# (lambda (#{x\ 3601}# #{keys\ 3602}# #{clauses\ 3603}# #{r\ 3604}# #{mod\ 3605}#) (if (null? #{clauses\ 3603}#) (#{build-application\ 294}# #f (#{build-primref\ 320}# #f 'syntax-violation) (list (#{build-data\ 322}# #f #f) (#{build-data\ 322}# #f "source expression failed to match any pattern") #{x\ 3601}#)) ((lambda (#{tmp\ 3615}#) ((lambda (#{tmp\ 3616}#) (if #{tmp\ 3616}# (apply (lambda (#{pat\ 3619}# #{exp\ 3620}#) (if (if (#{id?\ 372}# #{pat\ 3619}#) (and-map (lambda (#{x\ 3623}#) (not (#{free-id=?\ 431}# #{pat\ 3619}# #{x\ 3623}#))) (cons '#(syntax-object ... ((top) #(ribcage #(pat exp) #((top) (top)) #("i3617" "i3618")) #(ribcage () () ()) #(ribcage #(x keys clauses r mod) #((top) (top) (top) (top) (top)) #("i3606" "i3607" "i3608" "i3609" "i3610")) #(ribcage (gen-syntax-case gen-clause build-dispatch-call convert-pattern) ((top) (top) (top) (top)) ("i3599" "i3597" "i3595" "i3593")) #(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+ set-lambda-meta! lambda-meta lambda? make-dynlet make-letrec make-let make-lambda-case make-lambda make-sequence make-application make-conditional make-toplevel-define make-toplevel-set make-toplevel-ref make-module-set make-module-ref make-lexical-set make-lexical-ref make-primitive-ref make-const make-void) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i486" "i484" "i482" "i480" "i478" "i476" "i474" "i472" "i470" "i468" "i466" "i464" "i462" "i460" "i458" "i456" "i454" "i452" "i450" "i448" "i446" "i444" "i442" "i440" "i438" "i436" "i434" "i432" "i430" "i428" "i426" "i424" "i422" "i420" "i418" "i416" "i415" "i414" "i412" "i411" "i410" "i409" "i408" "i406" "i404" "i402" "i400" "i398" "i396" "i394" "i392" "i389" "i387" "i386" "i385" "i384" "i383" "i382" "i380" "i378" "i376" "i374" "i373" "i371" "i369" "i367" "i365" "i363" "i361" "i359" "i358" "i356" "i354" "i353" "i352" "i350" "i349" "i347" "i345" "i343" "i341" "i339" "i337" "i335" "i333" "i331" "i329" "i327" "i325" "i323" "i321" "i319" "i317" "i315" "i313" "i311" "i309" "i307" "i305" "i303" "i301" "i299" "i297" "i295" "i293" "i291" "i289" "i287" "i285" "i284" "i282" "i280" "i278" "i276" "i274" "i272" "i270" "i268" "i266" "i263" "i261" "i259" "i257" "i255" "i253" "i251" "i249" "i247" "i245" "i243" "i241" "i239" "i237" "i235" "i233" "i231" "i229")) #(ribcage (define-structure define-expansion-accessors define-expansion-constructors and-map*) ((top) (top) (top) (top)) ("i23" "i22" "i21" "i19"))) (hygiene guile)) #{keys\ 3602}#)) #f) (let ((#{labels\ 3627}# (list (#{gen-label\ 388}#))) (#{var\ 3628}# (#{gen-var\ 485}# #{pat\ 3619}#))) (#{build-application\ 294}# #f (#{build-simple-lambda\ 314}# #f (list (syntax->datum #{pat\ 3619}#)) #f (list #{var\ 3628}#) '() (#{chi\ 457}# #{exp\ 3620}# (#{extend-env\ 360}# #{labels\ 3627}# (list (cons 'syntax (cons #{var\ 3628}# 0))) #{r\ 3604}#) (#{make-binding-wrap\ 419}# (list #{pat\ 3619}#) #{labels\ 3627}# '(())) #{mod\ 3605}#)) (list #{x\ 3601}#))) (#{gen-clause\ 3598}# #{x\ 3601}# #{keys\ 3602}# (cdr #{clauses\ 3603}#) #{r\ 3604}# #{pat\ 3619}# #t #{exp\ 3620}# #{mod\ 3605}#))) #{tmp\ 3616}#) ((lambda (#{tmp\ 3634}#) (if #{tmp\ 3634}# (apply (lambda (#{pat\ 3638}# #{fender\ 3639}# #{exp\ 3640}#) (#{gen-clause\ 3598}# #{x\ 3601}# #{keys\ 3602}# (cdr #{clauses\ 3603}#) #{r\ 3604}# #{pat\ 3638}# #{fender\ 3639}# #{exp\ 3640}# #{mod\ 3605}#)) #{tmp\ 3634}#) ((lambda (#{_\ 3642}#) (syntax-violation 'syntax-case "invalid clause" (car #{clauses\ 3603}#))) #{tmp\ 3615}#))) ($sc-dispatch #{tmp\ 3615}# '(any any any))))) ($sc-dispatch #{tmp\ 3615}# (quote (any any))))) (car #{clauses\ 3603}#))))) (#{gen-clause\ 3598}# (lambda (#{x\ 3643}# #{keys\ 3644}# #{clauses\ 3645}# #{r\ 3646}# #{pat\ 3647}# #{fender\ 3648}# #{exp\ 3649}# #{mod\ 3650}#) (call-with-values (lambda () (#{convert-pattern\ 3594}# #{pat\ 3647}# #{keys\ 3644}#)) (lambda (#{p\ 3659}# #{pvars\ 3660}#) (if (not (#{distinct-bound-ids?\ 437}# (map car #{pvars\ 3660}#))) (syntax-violation 'syntax-case "duplicate pattern variable" #{pat\ 3647}#) (if (not (and-map (lambda (#{x\ 3667}#) (not (#{ellipsis?\ 473}# (car #{x\ 3667}#)))) #{pvars\ 3660}#)) (syntax-violation 'syntax-case "misplaced ellipsis" #{pat\ 3647}#) (let ((#{y\ 3671}# (#{gen-var\ 485}# (quote tmp)))) (#{build-application\ 294}# #f (#{build-simple-lambda\ 314}# #f (list (quote tmp)) #f (list #{y\ 3671}#) '() (let ((#{y\ 3675}# (#{build-lexical-reference\ 300}# 'value #f 'tmp #{y\ 3671}#))) (#{build-conditional\ 296}# #f ((lambda (#{tmp\ 3678}#) ((lambda (#{tmp\ 3679}#) (if #{tmp\ 3679}# (apply (lambda () #{y\ 3675}#) #{tmp\ 3679}#) ((lambda (#{_\ 3681}#) (#{build-conditional\ 296}# #f #{y\ 3675}# (#{build-dispatch-call\ 3596}# #{pvars\ 3660}# #{fender\ 3648}# #{y\ 3675}# #{r\ 3646}# #{mod\ 3650}#) (#{build-data\ 322}# #f #f))) #{tmp\ 3678}#))) ($sc-dispatch #{tmp\ 3678}# '#(atom #t)))) #{fender\ 3648}#) (#{build-dispatch-call\ 3596}# #{pvars\ 3660}# #{exp\ 3649}# #{y\ 3675}# #{r\ 3646}# #{mod\ 3650}#) (#{gen-syntax-case\ 3600}# #{x\ 3643}# #{keys\ 3644}# #{clauses\ 3645}# #{r\ 3646}# #{mod\ 3650}#)))) (list (if (eq? #{p\ 3659}# (quote any)) (#{build-application\ 294}# #f (#{build-primref\ 320}# #f 'list) (list #{x\ 3643}#)) (#{build-application\ 294}# #f (#{build-primref\ 320}# #f '$sc-dispatch) (list #{x\ 3643}# (#{build-data\ 322}# #f #{p\ 3659}#))))))))))))) (#{build-dispatch-call\ 3596}# (lambda (#{pvars\ 3689}# #{exp\ 3690}# #{y\ 3691}# #{r\ 3692}# #{mod\ 3693}#) (let ((#{ids\ 3701}# (map car #{pvars\ 3689}#)) (#{levels\ 3702}# (map cdr #{pvars\ 3689}#))) (let ((#{labels\ 3705}# (#{gen-labels\ 390}# #{ids\ 3701}#)) (#{new-vars\ 3706}# (map #{gen-var\ 485}# #{ids\ 3701}#))) (#{build-application\ 294}# #f (#{build-primref\ 320}# #f (quote apply)) (list (#{build-simple-lambda\ 314}# #f (map syntax->datum #{ids\ 3701}#) #f #{new-vars\ 3706}# '() (#{chi\ 457}# #{exp\ 3690}# (#{extend-env\ 360}# #{labels\ 3705}# (map (lambda (#{var\ 3710}# #{level\ 3711}#) (cons 'syntax (cons #{var\ 3710}# #{level\ 3711}#))) #{new-vars\ 3706}# (map cdr #{pvars\ 3689}#)) #{r\ 3692}#) (#{make-binding-wrap\ 419}# #{ids\ 3701}# #{labels\ 3705}# '(())) #{mod\ 3693}#)) #{y\ 3691}#)))))) (#{convert-pattern\ 3594}# (lambda (#{pattern\ 3717}# #{keys\ 3718}#) (letrec ((#{cvt\ 3724}# (lambda (#{p\ 3725}# #{n\ 3726}# #{ids\ 3727}#) (if (#{id?\ 372}# #{p\ 3725}#) (if (#{bound-id-member?\ 439}# #{p\ 3725}# #{keys\ 3718}#) (values (vector (quote free-id) #{p\ 3725}#) #{ids\ 3727}#) (values 'any (cons (cons #{p\ 3725}# #{n\ 3726}#) #{ids\ 3727}#))) ((lambda (#{tmp\ 3731}#) ((lambda (#{tmp\ 3732}#) (if (if #{tmp\ 3732}# (apply (lambda (#{x\ 3735}# #{dots\ 3736}#) (#{ellipsis?\ 473}# #{dots\ 3736}#)) #{tmp\ 3732}#) #f) (apply (lambda (#{x\ 3739}# #{dots\ 3740}#) (call-with-values (lambda () (#{cvt\ 3724}# #{x\ 3739}# (#{fx+\ 273}# #{n\ 3726}# 1) #{ids\ 3727}#)) (lambda (#{p\ 3741}# #{ids\ 3742}#) (values (if (eq? #{p\ 3741}# 'any) 'each-any (vector 'each #{p\ 3741}#)) #{ids\ 3742}#)))) #{tmp\ 3732}#) ((lambda (#{tmp\ 3745}#) (if (if #{tmp\ 3745}# (apply (lambda (#{x\ 3749}# #{dots\ 3750}# #{ys\ 3751}#) (#{ellipsis?\ 473}# #{dots\ 3750}#)) #{tmp\ 3745}#) #f) (apply (lambda (#{x\ 3755}# #{dots\ 3756}# #{ys\ 3757}#) (call-with-values (lambda () (#{cvt*\ 3722}# #{ys\ 3757}# #{n\ 3726}# #{ids\ 3727}#)) (lambda (#{ys\ 3759}# #{ids\ 3760}#) (call-with-values (lambda () (#{cvt\ 3724}# #{x\ 3755}# (+ #{n\ 3726}# 1) #{ids\ 3760}#)) (lambda (#{x\ 3763}# #{ids\ 3764}#) (values (list->vector (cons 'each+ (cons #{x\ 3763}# (cons (reverse #{ys\ 3759}#) '(()))))) #{ids\ 3764}#)))))) #{tmp\ 3745}#) ((lambda (#{tmp\ 3768}#) (if #{tmp\ 3768}# (apply (lambda (#{x\ 3771}# #{y\ 3772}#) (call-with-values (lambda () (#{cvt\ 3724}# #{y\ 3772}# #{n\ 3726}# #{ids\ 3727}#)) (lambda (#{y\ 3773}# #{ids\ 3774}#) (call-with-values (lambda () (#{cvt\ 3724}# #{x\ 3771}# #{n\ 3726}# #{ids\ 3774}#)) (lambda (#{x\ 3777}# #{ids\ 3778}#) (values (cons #{x\ 3777}# #{y\ 3773}#) #{ids\ 3778}#)))))) #{tmp\ 3768}#) ((lambda (#{tmp\ 3781}#) (if #{tmp\ 3781}# (apply (lambda () (values '() #{ids\ 3727}#)) #{tmp\ 3781}#) ((lambda (#{tmp\ 3782}#) (if #{tmp\ 3782}# (apply (lambda (#{x\ 3784}#) (call-with-values (lambda () (#{cvt\ 3724}# #{x\ 3784}# #{n\ 3726}# #{ids\ 3727}#)) (lambda (#{p\ 3786}# #{ids\ 3787}#) (values (vector 'vector #{p\ 3786}#) #{ids\ 3787}#)))) #{tmp\ 3782}#) ((lambda (#{x\ 3791}#) (values (vector 'atom (#{strip\ 483}# #{p\ 3725}# '(()))) #{ids\ 3727}#)) #{tmp\ 3731}#))) ($sc-dispatch #{tmp\ 3731}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 3731}# '())))) ($sc-dispatch #{tmp\ 3731}# '(any . any))))) ($sc-dispatch #{tmp\ 3731}# '(any any . each-any))))) ($sc-dispatch #{tmp\ 3731}# '(any any)))) #{p\ 3725}#)))) (#{cvt*\ 3722}# (lambda (#{p*\ 3793}# #{n\ 3794}# #{ids\ 3795}#) (if (null? #{p*\ 3793}#) (values (quote ()) #{ids\ 3795}#) (call-with-values (lambda () (#{cvt*\ 3722}# (cdr #{p*\ 3793}#) #{n\ 3794}# #{ids\ 3795}#)) (lambda (#{y\ 3799}# #{ids\ 3800}#) (call-with-values (lambda () (#{cvt\ 3724}# (car #{p*\ 3793}#) #{n\ 3794}# #{ids\ 3800}#)) (lambda (#{x\ 3803}# #{ids\ 3804}#) (values (cons #{x\ 3803}# #{y\ 3799}#) #{ids\ 3804}#))))))))) (#{cvt\ 3724}# #{pattern\ 3717}# 0 (quote ())))))) (lambda (#{e\ 3807}# #{r\ 3808}# #{w\ 3809}# #{s\ 3810}# #{mod\ 3811}#) (let ((#{e\ 3818}# (#{source-wrap\ 443}# #{e\ 3807}# #{w\ 3809}# #{s\ 3810}# #{mod\ 3811}#))) ((lambda (#{tmp\ 3819}#) ((lambda (#{tmp\ 3820}#) (if #{tmp\ 3820}# (apply (lambda (#{_\ 3825}# #{val\ 3826}# #{key\ 3827}# #{m\ 3828}#) (if (and-map (lambda (#{x\ 3829}#) (if (#{id?\ 372}# #{x\ 3829}#) (not (#{ellipsis?\ 473}# #{x\ 3829}#)) #f)) #{key\ 3827}#) (let ((#{x\ 3835}# (#{gen-var\ 485}# (quote tmp)))) (#{build-application\ 294}# #{s\ 3810}# (#{build-simple-lambda\ 314}# #f (list (quote tmp)) #f (list #{x\ 3835}#) '() (#{gen-syntax-case\ 3600}# (#{build-lexical-reference\ 300}# 'value #f 'tmp #{x\ 3835}#) #{key\ 3827}# #{m\ 3828}# #{r\ 3808}# #{mod\ 3811}#)) (list (#{chi\ 457}# #{val\ 3826}# #{r\ 3808}# '(()) #{mod\ 3811}#)))) (syntax-violation 'syntax-case "invalid literals list" #{e\ 3818}#))) #{tmp\ 3820}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 3819}#))) ($sc-dispatch #{tmp\ 3819}# '(any any each-any . each-any)))) #{e\ 3818}#))))) (set! macroexpand (lambda* (#{x\ 3841}# #:optional (#{m\ 3843}# (quote e)) (#{esew\ 3845}# (quote (eval)))) (#{chi-top\ 455}# #{x\ 3841}# '() '((top)) #{m\ 3843}# #{esew\ 3845}# (cons 'hygiene (module-name (current-module)))))) (set! identifier? (lambda (#{x\ 3849}#) (#{nonsymbol-id?\ 370}# #{x\ 3849}#))) (set! datum->syntax (lambda (#{id\ 3851}# #{datum\ 3852}#) (#{make-syntax-object\ 334}# #{datum\ 3852}# (#{syntax-object-wrap\ 340}# #{id\ 3851}#) (#{syntax-object-module\ 342}# #{id\ 3851}#)))) (set! syntax->datum (lambda (#{x\ 3855}#) (#{strip\ 483}# #{x\ 3855}# (quote (()))))) (set! syntax-source (lambda (#{x\ 3858}#) (#{source-annotation\ 351}# #{x\ 3858}#))) (set! generate-temporaries (lambda (#{ls\ 3860}#) (begin (let ((#{x\ 3864}# #{ls\ 3860}#)) (if (not (list? #{x\ 3864}#)) (syntax-violation 'generate-temporaries "invalid argument" #{x\ 3864}#))) (map (lambda (#{x\ 3865}#) (#{wrap\ 441}# (gensym) (quote ((top))) #f)) #{ls\ 3860}#)))) (set! free-identifier=? (lambda (#{x\ 3869}# #{y\ 3870}#) (begin (let ((#{x\ 3875}# #{x\ 3869}#)) (if (not (#{nonsymbol-id?\ 370}# #{x\ 3875}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3875}#))) (let ((#{x\ 3878}# #{y\ 3870}#)) (if (not (#{nonsymbol-id?\ 370}# #{x\ 3878}#)) (syntax-violation 'free-identifier=? "invalid argument" #{x\ 3878}#))) (#{free-id=?\ 431}# #{x\ 3869}# #{y\ 3870}#)))) (set! bound-identifier=? (lambda (#{x\ 3879}# #{y\ 3880}#) (begin (let ((#{x\ 3885}# #{x\ 3879}#)) (if (not (#{nonsymbol-id?\ 370}# #{x\ 3885}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3885}#))) (let ((#{x\ 3888}# #{y\ 3880}#)) (if (not (#{nonsymbol-id?\ 370}# #{x\ 3888}#)) (syntax-violation 'bound-identifier=? "invalid argument" #{x\ 3888}#))) (#{bound-id=?\ 433}# #{x\ 3879}# #{y\ 3880}#)))) (set! syntax-violation (lambda (#{who\ 3889}# #{message\ 3890}# #{form\ 3891}# . #{subform\ 3892}#) (begin (let ((#{x\ 3899}# #{who\ 3889}#)) (if (not ((lambda (#{x\ 3900}#) (let ((#{t\ 3904}# (not #{x\ 3900}#))) (if #{t\ 3904}# #{t\ 3904}# (let ((#{t\ 3907}# (string? #{x\ 3900}#))) (if #{t\ 3907}# #{t\ 3907}# (symbol? #{x\ 3900}#)))))) #{x\ 3899}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3899}#))) (let ((#{x\ 3911}# #{message\ 3890}#)) (if (not (string? #{x\ 3911}#)) (syntax-violation 'syntax-violation "invalid argument" #{x\ 3911}#))) (scm-error 'syntax-error 'macroexpand (string-append (if #{who\ 3889}# "~a: " "") "~a " (if (null? #{subform\ 3892}#) "in ~a" "in subform `~s' of `~s'")) (let ((#{tail\ 3913}# (cons #{message\ 3890}# (map (lambda (#{x\ 3914}#) (#{strip\ 483}# #{x\ 3914}# (quote (())))) (append #{subform\ 3892}# (list #{form\ 3891}#)))))) (if #{who\ 3889}# (cons #{who\ 3889}# #{tail\ 3913}#) #{tail\ 3913}#)) #f)))) (letrec ((#{match\ 3930}# (lambda (#{e\ 3931}# #{p\ 3932}# #{w\ 3933}# #{r\ 3934}# #{mod\ 3935}#) (if (not #{r\ 3934}#) #f (if (eq? #{p\ 3932}# (quote any)) (cons (#{wrap\ 441}# #{e\ 3931}# #{w\ 3933}# #{mod\ 3935}#) #{r\ 3934}#) (if (#{syntax-object?\ 336}# #{e\ 3931}#) (#{match*\ 3928}# (#{syntax-object-expression\ 338}# #{e\ 3931}#) #{p\ 3932}# (#{join-wraps\ 423}# #{w\ 3933}# (#{syntax-object-wrap\ 340}# #{e\ 3931}#)) #{r\ 3934}# (#{syntax-object-module\ 342}# #{e\ 3931}#)) (#{match*\ 3928}# #{e\ 3931}# #{p\ 3932}# #{w\ 3933}# #{r\ 3934}# #{mod\ 3935}#)))))) (#{match*\ 3928}# (lambda (#{e\ 3948}# #{p\ 3949}# #{w\ 3950}# #{r\ 3951}# #{mod\ 3952}#) (if (null? #{p\ 3949}#) (if (null? #{e\ 3948}#) #{r\ 3951}# #f) (if (pair? #{p\ 3949}#) (if (pair? #{e\ 3948}#) (#{match\ 3930}# (car #{e\ 3948}#) (car #{p\ 3949}#) #{w\ 3950}# (#{match\ 3930}# (cdr #{e\ 3948}#) (cdr #{p\ 3949}#) #{w\ 3950}# #{r\ 3951}# #{mod\ 3952}#) #{mod\ 3952}#) #f) (if (eq? #{p\ 3949}# (quote each-any)) (let ((#{l\ 3969}# (#{match-each-any\ 3922}# #{e\ 3948}# #{w\ 3950}# #{mod\ 3952}#))) (if #{l\ 3969}# (cons #{l\ 3969}# #{r\ 3951}#) #f)) (let ((#{atom-key\ 3975}# (vector-ref #{p\ 3949}# 0))) (if (memv #{atom-key\ 3975}# (quote (each))) (if (null? #{e\ 3948}#) (#{match-empty\ 3924}# (vector-ref #{p\ 3949}# 1) #{r\ 3951}#) (let ((#{l\ 3978}# (#{match-each\ 3918}# #{e\ 3948}# (vector-ref #{p\ 3949}# 1) #{w\ 3950}# #{mod\ 3952}#))) (if #{l\ 3978}# (letrec ((#{collect\ 3983}# (lambda (#{l\ 3984}#) (if (null? (car #{l\ 3984}#)) #{r\ 3951}# (cons (map car #{l\ 3984}#) (#{collect\ 3983}# (map cdr #{l\ 3984}#))))))) (#{collect\ 3983}# #{l\ 3978}#)) #f))) (if (memv #{atom-key\ 3975}# (quote (each+))) (call-with-values (lambda () (#{match-each+\ 3920}# #{e\ 3948}# (vector-ref #{p\ 3949}# 1) (vector-ref #{p\ 3949}# 2) (vector-ref #{p\ 3949}# 3) #{w\ 3950}# #{r\ 3951}# #{mod\ 3952}#)) (lambda (#{xr*\ 3986}# #{y-pat\ 3987}# #{r\ 3988}#) (if #{r\ 3988}# (if (null? #{y-pat\ 3987}#) (if (null? #{xr*\ 3986}#) (#{match-empty\ 3924}# (vector-ref #{p\ 3949}# 1) #{r\ 3988}#) (#{combine\ 3926}# #{xr*\ 3986}# #{r\ 3988}#)) #f) #f))) (if (memv #{atom-key\ 3975}# (quote (free-id))) (if (#{id?\ 372}# #{e\ 3948}#) (if (#{free-id=?\ 431}# (#{wrap\ 441}# #{e\ 3948}# #{w\ 3950}# #{mod\ 3952}#) (vector-ref #{p\ 3949}# 1)) #{r\ 3951}# #f) #f) (if (memv #{atom-key\ 3975}# (quote (atom))) (if (equal? (vector-ref #{p\ 3949}# 1) (#{strip\ 483}# #{e\ 3948}# #{w\ 3950}#)) #{r\ 3951}# #f) (if (memv #{atom-key\ 3975}# '(vector)) (if (vector? #{e\ 3948}#) (#{match\ 3930}# (vector->list #{e\ 3948}#) (vector-ref #{p\ 3949}# 1) #{w\ 3950}# #{r\ 3951}# #{mod\ 3952}#) #f)))))))))))) (#{combine\ 3926}# (lambda (#{r*\ 4005}# #{r\ 4006}#) (if (null? (car #{r*\ 4005}#)) #{r\ 4006}# (cons (map car #{r*\ 4005}#) (#{combine\ 3926}# (map cdr #{r*\ 4005}#) #{r\ 4006}#))))) (#{match-empty\ 3924}# (lambda (#{p\ 4009}# #{r\ 4010}#) (if (null? #{p\ 4009}#) #{r\ 4010}# (if (eq? #{p\ 4009}# (quote any)) (cons (quote ()) #{r\ 4010}#) (if (pair? #{p\ 4009}#) (#{match-empty\ 3924}# (car #{p\ 4009}#) (#{match-empty\ 3924}# (cdr #{p\ 4009}#) #{r\ 4010}#)) (if (eq? #{p\ 4009}# (quote each-any)) (cons (quote ()) #{r\ 4010}#) (let ((#{atom-key\ 4024}# (vector-ref #{p\ 4009}# 0))) (if (memv #{atom-key\ 4024}# (quote (each))) (#{match-empty\ 3924}# (vector-ref #{p\ 4009}# 1) #{r\ 4010}#) (if (memv #{atom-key\ 4024}# (quote (each+))) (#{match-empty\ 3924}# (vector-ref #{p\ 4009}# 1) (#{match-empty\ 3924}# (reverse (vector-ref #{p\ 4009}# 2)) (#{match-empty\ 3924}# (vector-ref #{p\ 4009}# 3) #{r\ 4010}#))) (if (memv #{atom-key\ 4024}# '(free-id atom)) #{r\ 4010}# (if (memv #{atom-key\ 4024}# '(vector)) (#{match-empty\ 3924}# (vector-ref #{p\ 4009}# 1) #{r\ 4010}#)))))))))))) (#{match-each-any\ 3922}# (lambda (#{e\ 4029}# #{w\ 4030}# #{mod\ 4031}#) (if (pair? #{e\ 4029}#) (let ((#{l\ 4038}# (#{match-each-any\ 3922}# (cdr #{e\ 4029}#) #{w\ 4030}# #{mod\ 4031}#))) (if #{l\ 4038}# (cons (#{wrap\ 441}# (car #{e\ 4029}#) #{w\ 4030}# #{mod\ 4031}#) #{l\ 4038}#) #f)) (if (null? #{e\ 4029}#) '() (if (#{syntax-object?\ 336}# #{e\ 4029}#) (#{match-each-any\ 3922}# (#{syntax-object-expression\ 338}# #{e\ 4029}#) (#{join-wraps\ 423}# #{w\ 4030}# (#{syntax-object-wrap\ 340}# #{e\ 4029}#)) #{mod\ 4031}#) #f))))) (#{match-each+\ 3920}# (lambda (#{e\ 4046}# #{x-pat\ 4047}# #{y-pat\ 4048}# #{z-pat\ 4049}# #{w\ 4050}# #{r\ 4051}# #{mod\ 4052}#) (letrec ((#{f\ 4063}# (lambda (#{e\ 4064}# #{w\ 4065}#) (if (pair? #{e\ 4064}#) (call-with-values (lambda () (#{f\ 4063}# (cdr #{e\ 4064}#) #{w\ 4065}#)) (lambda (#{xr*\ 4068}# #{y-pat\ 4069}# #{r\ 4070}#) (if #{r\ 4070}# (if (null? #{y-pat\ 4069}#) (let ((#{xr\ 4075}# (#{match\ 3930}# (car #{e\ 4064}#) #{x-pat\ 4047}# #{w\ 4065}# '() #{mod\ 4052}#))) (if #{xr\ 4075}# (values (cons #{xr\ 4075}# #{xr*\ 4068}#) #{y-pat\ 4069}# #{r\ 4070}#) (values #f #f #f))) (values '() (cdr #{y-pat\ 4069}#) (#{match\ 3930}# (car #{e\ 4064}#) (car #{y-pat\ 4069}#) #{w\ 4065}# #{r\ 4070}# #{mod\ 4052}#))) (values #f #f #f)))) (if (#{syntax-object?\ 336}# #{e\ 4064}#) (#{f\ 4063}# (#{syntax-object-expression\ 338}# #{e\ 4064}#) (#{join-wraps\ 423}# #{w\ 4065}# #{e\ 4064}#)) (values '() #{y-pat\ 4048}# (#{match\ 3930}# #{e\ 4064}# #{z-pat\ 4049}# #{w\ 4065}# #{r\ 4051}# #{mod\ 4052}#))))))) (#{f\ 4063}# #{e\ 4046}# #{w\ 4050}#)))) (#{match-each\ 3918}# (lambda (#{e\ 4079}# #{p\ 4080}# #{w\ 4081}# #{mod\ 4082}#) (if (pair? #{e\ 4079}#) (let ((#{first\ 4090}# (#{match\ 3930}# (car #{e\ 4079}#) #{p\ 4080}# #{w\ 4081}# '() #{mod\ 4082}#))) (if #{first\ 4090}# (let ((#{rest\ 4094}# (#{match-each\ 3918}# (cdr #{e\ 4079}#) #{p\ 4080}# #{w\ 4081}# #{mod\ 4082}#))) (if #{rest\ 4094}# (cons #{first\ 4090}# #{rest\ 4094}#) #f)) #f)) (if (null? #{e\ 4079}#) '() (if (#{syntax-object?\ 336}# #{e\ 4079}#) (#{match-each\ 3918}# (#{syntax-object-expression\ 338}# #{e\ 4079}#) #{p\ 4080}# (#{join-wraps\ 423}# #{w\ 4081}# (#{syntax-object-wrap\ 340}# #{e\ 4079}#)) (#{syntax-object-module\ 342}# #{e\ 4079}#)) #f)))))) (set! $sc-dispatch (lambda (#{e\ 4102}# #{p\ 4103}#) (if (eq? #{p\ 4103}# (quote any)) (list #{e\ 4102}#) (if (#{syntax-object?\ 336}# #{e\ 4102}#) (#{match*\ 3928}# (#{syntax-object-expression\ 338}# #{e\ 4102}#) #{p\ 4103}# (#{syntax-object-wrap\ 340}# #{e\ 4102}#) '() (#{syntax-object-module\ 342}# #{e\ 4102}#)) (#{match*\ 3928}# #{e\ 4102}# #{p\ 4103}# '(()) '() #f))))))))) (define with-syntax (make-syntax-transformer 'with-syntax 'macro (lambda (#{x\ 4112}#) ((lambda (#{tmp\ 4114}#) ((lambda (#{tmp\ 4115}#) (if #{tmp\ 4115}# (apply (lambda (#{_\ 4119}# #{e1\ 4120}# #{e2\ 4121}#) (cons '#(syntax-object begin ((top) #(ribcage #(_ e1 e2) #((top) (top) (top)) #("i4116" "i4117" "i4118")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4113"))) (hygiene guile)) (cons #{e1\ 4120}# #{e2\ 4121}#))) #{tmp\ 4115}#) ((lambda (#{tmp\ 4123}#) (if #{tmp\ 4123}# (apply (lambda (#{_\ 4129}# #{out\ 4130}# #{in\ 4131}# #{e1\ 4132}# #{e2\ 4133}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4124" "i4125" "i4126" "i4127" "i4128")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4113"))) (hygiene guile)) #{in\ 4131}# '() (list #{out\ 4130}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4124" "i4125" "i4126" "i4127" "i4128")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4113"))) (hygiene guile)) (cons #{e1\ 4132}# #{e2\ 4133}#))))) #{tmp\ 4123}#) ((lambda (#{tmp\ 4135}#) (if #{tmp\ 4135}# (apply (lambda (#{_\ 4141}# #{out\ 4142}# #{in\ 4143}# #{e1\ 4144}# #{e2\ 4145}#) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4136" "i4137" "i4138" "i4139" "i4140")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4113"))) (hygiene guile)) (cons '#(syntax-object list ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4136" "i4137" "i4138" "i4139" "i4140")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4113"))) (hygiene guile)) #{in\ 4143}#) '() (list #{out\ 4142}# (cons '#(syntax-object begin ((top) #(ribcage #(_ out in e1 e2) #((top) (top) (top) (top) (top)) #("i4136" "i4137" "i4138" "i4139" "i4140")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4113"))) (hygiene guile)) (cons #{e1\ 4144}# #{e2\ 4145}#))))) #{tmp\ 4135}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4114}#))) ($sc-dispatch #{tmp\ 4114}# '(any #(each (any any)) any . each-any))))) ($sc-dispatch #{tmp\ 4114}# '(any ((any any)) any . each-any))))) ($sc-dispatch #{tmp\ 4114}# '(any () any . each-any)))) #{x\ 4112}#)))) (define syntax-rules (make-syntax-transformer 'syntax-rules 'macro (lambda (#{x\ 4149}#) ((lambda (#{tmp\ 4151}#) ((lambda (#{tmp\ 4152}#) (if #{tmp\ 4152}# (apply (lambda (#{_\ 4158}# #{k\ 4159}# #{keyword\ 4160}# #{pattern\ 4161}# #{template\ 4162}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile))) (vector '(#(syntax-object macro-type ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile)) . #(syntax-object syntax-rules ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile))) (cons '#(syntax-object patterns ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile)) #{pattern\ 4161}#)) (cons '#(syntax-object syntax-case ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile)) (cons '#(syntax-object x ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile)) (cons #{k\ 4159}# (map (lambda (#{tmp\ 4166}# #{tmp\ 4165}#) (list (cons '#(syntax-object dummy ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile)) #{tmp\ 4165}#) (list '#(syntax-object syntax ((top) #(ribcage #(_ k keyword pattern template) #((top) (top) (top) (top) (top)) #("i4153" "i4154" "i4155" "i4156" "i4157")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4150"))) (hygiene guile)) #{tmp\ 4166}#))) #{template\ 4162}# #{pattern\ 4161}#)))))) #{tmp\ 4152}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4151}#))) ($sc-dispatch #{tmp\ 4151}# '(any each-any . #(each ((any . any) any)))))) #{x\ 4149}#)))) (define let* (make-syntax-transformer 'let* 'macro (lambda (#{x\ 4167}#) ((lambda (#{tmp\ 4169}#) ((lambda (#{tmp\ 4170}#) (if (if #{tmp\ 4170}# (apply (lambda (#{let*\ 4176}# #{x\ 4177}# #{v\ 4178}# #{e1\ 4179}# #{e2\ 4180}#) (and-map identifier? #{x\ 4177}#)) #{tmp\ 4170}#) #f) (apply (lambda (#{let*\ 4187}# #{x\ 4188}# #{v\ 4189}# #{e1\ 4190}# #{e2\ 4191}#) (letrec ((#{f\ 4194}# (lambda (#{bindings\ 4195}#) (if (null? #{bindings\ 4195}#) (cons '#(syntax-object let ((top) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4192" "i4193")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4182" "i4183" "i4184" "i4185" "i4186")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4168"))) (hygiene guile)) (cons '() (cons #{e1\ 4190}# #{e2\ 4191}#))) ((lambda (#{tmp\ 4200}#) ((lambda (#{tmp\ 4201}#) (if #{tmp\ 4201}# (apply (lambda (#{body\ 4204}# #{binding\ 4205}#) (list '#(syntax-object let ((top) #(ribcage #(body binding) #((top) (top)) #("i4202" "i4203")) #(ribcage () () ()) #(ribcage #(f bindings) #((top) (top)) #("i4192" "i4193")) #(ribcage #(let* x v e1 e2) #((top) (top) (top) (top) (top)) #("i4182" "i4183" "i4184" "i4185" "i4186")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4168"))) (hygiene guile)) (list #{binding\ 4205}#) #{body\ 4204}#)) #{tmp\ 4201}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4200}#))) ($sc-dispatch #{tmp\ 4200}# '(any any)))) (list (#{f\ 4194}# (cdr #{bindings\ 4195}#)) (car #{bindings\ 4195}#))))))) (#{f\ 4194}# (map list #{x\ 4188}# #{v\ 4189}#)))) #{tmp\ 4170}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4169}#))) ($sc-dispatch #{tmp\ 4169}# '(any #(each (any any)) any . each-any)))) #{x\ 4167}#)))) (define do (make-syntax-transformer 'do 'macro (lambda (#{orig-x\ 4206}#) ((lambda (#{tmp\ 4208}#) ((lambda (#{tmp\ 4209}#) (if #{tmp\ 4209}# (apply (lambda (#{_\ 4217}# #{var\ 4218}# #{init\ 4219}# #{step\ 4220}# #{e0\ 4221}# #{e1\ 4222}# #{c\ 4223}#) ((lambda (#{tmp\ 4225}#) ((lambda (#{tmp\ 4226}#) (if #{tmp\ 4226}# (apply (lambda (#{step\ 4228}#) ((lambda (#{tmp\ 4229}#) ((lambda (#{tmp\ 4230}#) (if #{tmp\ 4230}# (apply (lambda () (list '#(syntax-object let ((top) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) (map list #{var\ 4218}# #{init\ 4219}#) (list '#(syntax-object if ((top) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) (list '#(syntax-object not ((top) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) #{e0\ 4221}#) (cons '#(syntax-object begin ((top) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) (append #{c\ 4223}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) #{step\ 4228}#))))))) #{tmp\ 4230}#) ((lambda (#{tmp\ 4235}#) (if #{tmp\ 4235}# (apply (lambda (#{e1\ 4238}# #{e2\ 4239}#) (list '#(syntax-object let ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4236" "i4237")) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4236" "i4237")) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) (map list #{var\ 4218}# #{init\ 4219}#) (list '#(syntax-object if ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4236" "i4237")) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) #{e0\ 4221}# (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4236" "i4237")) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) (cons #{e1\ 4238}# #{e2\ 4239}#)) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4236" "i4237")) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) (append #{c\ 4223}# (list (cons '#(syntax-object doloop ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4236" "i4237")) #(ribcage #(step) #((top)) #("i4227")) #(ribcage #(_ var init step e0 e1 c) #((top) (top) (top) (top) (top) (top) (top)) #("i4210" "i4211" "i4212" "i4213" "i4214" "i4215" "i4216")) #(ribcage () () ()) #(ribcage #(orig-x) #((top)) #("i4207"))) (hygiene guile)) #{step\ 4228}#))))))) #{tmp\ 4235}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4229}#))) ($sc-dispatch #{tmp\ 4229}# '(any . each-any))))) ($sc-dispatch #{tmp\ 4229}# '()))) #{e1\ 4222}#)) #{tmp\ 4226}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4225}#))) ($sc-dispatch #{tmp\ 4225}# (quote each-any)))) (map (lambda (#{v\ 4246}# #{s\ 4247}#) ((lambda (#{tmp\ 4250}#) ((lambda (#{tmp\ 4251}#) (if #{tmp\ 4251}# (apply (lambda () #{v\ 4246}#) #{tmp\ 4251}#) ((lambda (#{tmp\ 4252}#) (if #{tmp\ 4252}# (apply (lambda (#{e\ 4254}#) #{e\ 4254}#) #{tmp\ 4252}#) ((lambda (#{_\ 4256}#) (syntax-violation 'do "bad step expression" #{orig-x\ 4206}# #{s\ 4247}#)) #{tmp\ 4250}#))) ($sc-dispatch #{tmp\ 4250}# '(any))))) ($sc-dispatch #{tmp\ 4250}# (quote ())))) #{s\ 4247}#)) #{var\ 4218}# #{step\ 4220}#))) #{tmp\ 4209}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4208}#))) ($sc-dispatch #{tmp\ 4208}# '(any #(each (any any . any)) (any . each-any) . each-any)))) #{orig-x\ 4206}#)))) (define quasiquote (make-syntax-transformer 'quasiquote 'macro (letrec ((#{quasicons\ 4263}# (lambda (#{x\ 4267}# #{y\ 4268}#) ((lambda (#{tmp\ 4272}#) ((lambda (#{tmp\ 4273}#) (if #{tmp\ 4273}# (apply (lambda (#{x\ 4276}# #{y\ 4277}#) ((lambda (#{tmp\ 4278}#) ((lambda (#{tmp\ 4279}#) (if #{tmp\ 4279}# (apply (lambda (#{dy\ 4281}#) ((lambda (#{tmp\ 4282}#) ((lambda (#{tmp\ 4283}#) (if #{tmp\ 4283}# (apply (lambda (#{dx\ 4285}#) (list '#(syntax-object quote ((top) #(ribcage #(dx) #((top)) #("i4284")) #(ribcage #(dy) #((top)) #("i4280")) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) (cons #{dx\ 4285}# #{dy\ 4281}#))) #{tmp\ 4283}#) ((lambda (#{_\ 4287}#) (if (null? #{dy\ 4281}#) (list '#(syntax-object list ((top) #(ribcage #(_) #((top)) #("i4286")) #(ribcage #(dy) #((top)) #("i4280")) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{x\ 4276}#) (list '#(syntax-object cons ((top) #(ribcage #(_) #((top)) #("i4286")) #(ribcage #(dy) #((top)) #("i4280")) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{x\ 4276}# #{y\ 4277}#))) #{tmp\ 4282}#))) ($sc-dispatch #{tmp\ 4282}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(dy) #((top)) #("i4280")) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) any)))) #{x\ 4276}#)) #{tmp\ 4279}#) ((lambda (#{tmp\ 4288}#) (if #{tmp\ 4288}# (apply (lambda (#{stuff\ 4290}#) (cons '#(syntax-object list ((top) #(ribcage #(stuff) #((top)) #("i4289")) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) (cons #{x\ 4276}# #{stuff\ 4290}#))) #{tmp\ 4288}#) ((lambda (#{else\ 4292}#) (list '#(syntax-object cons ((top) #(ribcage #(else) #((top)) #("i4291")) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{x\ 4276}# #{y\ 4277}#)) #{tmp\ 4278}#))) ($sc-dispatch #{tmp\ 4278}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 4278}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4274" "i4275")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4269" "i4270")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) any)))) #{y\ 4277}#)) #{tmp\ 4273}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4272}#))) ($sc-dispatch #{tmp\ 4272}# (quote (any any))))) (list #{x\ 4267}# #{y\ 4268}#)))) (#{quasiappend\ 4264}# (lambda (#{x\ 4293}# #{y\ 4294}#) ((lambda (#{tmp\ 4298}#) ((lambda (#{tmp\ 4299}#) (if #{tmp\ 4299}# (apply (lambda (#{x\ 4302}# #{y\ 4303}#) ((lambda (#{tmp\ 4304}#) ((lambda (#{tmp\ 4305}#) (if #{tmp\ 4305}# (apply (lambda () #{x\ 4302}#) #{tmp\ 4305}#) ((lambda (#{_\ 4307}#) (list '#(syntax-object append ((top) #(ribcage #(_) #((top)) #("i4306")) #(ribcage #(x y) #((top) (top)) #("i4300" "i4301")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4295" "i4296")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{x\ 4302}# #{y\ 4303}#)) #{tmp\ 4304}#))) ($sc-dispatch #{tmp\ 4304}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x y) #((top) (top)) #("i4300" "i4301")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x y) #((top) (top)) #("i4295" "i4296")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) ())))) #{y\ 4303}#)) #{tmp\ 4299}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4298}#))) ($sc-dispatch #{tmp\ 4298}# (quote (any any))))) (list #{x\ 4293}# #{y\ 4294}#)))) (#{quasivector\ 4265}# (lambda (#{x\ 4308}#) ((lambda (#{tmp\ 4311}#) ((lambda (#{x\ 4313}#) ((lambda (#{tmp\ 4314}#) ((lambda (#{tmp\ 4315}#) (if #{tmp\ 4315}# (apply (lambda (#{x\ 4317}#) (list '#(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4316")) #(ribcage #(x) #((top)) #("i4312")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4309")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) (list->vector #{x\ 4317}#))) #{tmp\ 4315}#) ((lambda (#{tmp\ 4319}#) (if #{tmp\ 4319}# (apply (lambda (#{x\ 4321}#) (cons '#(syntax-object vector ((top) #(ribcage #(x) #((top)) #("i4320")) #(ribcage #(x) #((top)) #("i4312")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4309")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{x\ 4321}#)) #{tmp\ 4319}#) ((lambda (#{_\ 4324}#) (list '#(syntax-object list->vector ((top) #(ribcage #(_) #((top)) #("i4323")) #(ribcage #(x) #((top)) #("i4312")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4309")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{x\ 4313}#)) #{tmp\ 4314}#))) ($sc-dispatch #{tmp\ 4314}# '(#(free-id #(syntax-object list ((top) #(ribcage #(x) #((top)) #("i4312")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4309")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) . each-any))))) ($sc-dispatch #{tmp\ 4314}# '(#(free-id #(syntax-object quote ((top) #(ribcage #(x) #((top)) #("i4312")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4309")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) each-any)))) #{x\ 4313}#)) #{tmp\ 4311}#)) #{x\ 4308}#))) (#{quasi\ 4266}# (lambda (#{p\ 4325}# #{lev\ 4326}#) ((lambda (#{tmp\ 4329}#) ((lambda (#{tmp\ 4330}#) (if #{tmp\ 4330}# (apply (lambda (#{p\ 4332}#) (if (= #{lev\ 4326}# 0) #{p\ 4332}# (#{quasicons\ 4263}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4331")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #(syntax-object unquote ((top) #(ribcage #(p) #((top)) #("i4331")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) (#{quasi\ 4266}# (list #{p\ 4332}#) (- #{lev\ 4326}# 1))))) #{tmp\ 4330}#) ((lambda (#{tmp\ 4333}#) (if (if #{tmp\ 4333}# (apply (lambda (#{args\ 4335}#) (= #{lev\ 4326}# 0)) #{tmp\ 4333}#) #f) (apply (lambda (#{args\ 4337}#) (syntax-violation 'unquote "unquote takes exactly one argument" #{p\ 4325}# (cons '#(syntax-object unquote ((top) #(ribcage #(args) #((top)) #("i4336")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{args\ 4337}#))) #{tmp\ 4333}#) ((lambda (#{tmp\ 4338}#) (if #{tmp\ 4338}# (apply (lambda (#{p\ 4341}# #{q\ 4342}#) (if (= #{lev\ 4326}# 0) (#{quasiappend\ 4264}# #{p\ 4341}# (#{quasi\ 4266}# #{q\ 4342}# #{lev\ 4326}#)) (#{quasicons\ 4263}# (#{quasicons\ 4263}# '(#(syntax-object quote ((top) #(ribcage #(p q) #((top) (top)) #("i4339" "i4340")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #(syntax-object unquote-splicing ((top) #(ribcage #(p q) #((top) (top)) #("i4339" "i4340")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) (#{quasi\ 4266}# (list #{p\ 4341}#) (- #{lev\ 4326}# 1))) (#{quasi\ 4266}# #{q\ 4342}# #{lev\ 4326}#)))) #{tmp\ 4338}#) ((lambda (#{tmp\ 4343}#) (if (if #{tmp\ 4343}# (apply (lambda (#{args\ 4346}# #{q\ 4347}#) (= #{lev\ 4326}# 0)) #{tmp\ 4343}#) #f) (apply (lambda (#{args\ 4350}# #{q\ 4351}#) (syntax-violation 'unquote-splicing "unquote-splicing takes exactly one argument" #{p\ 4325}# (cons '#(syntax-object unquote-splicing ((top) #(ribcage #(args q) #((top) (top)) #("i4348" "i4349")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{args\ 4350}#))) #{tmp\ 4343}#) ((lambda (#{tmp\ 4352}#) (if #{tmp\ 4352}# (apply (lambda (#{p\ 4354}#) (#{quasicons\ 4263}# '(#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4353")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #(syntax-object quasiquote ((top) #(ribcage #(p) #((top)) #("i4353")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) (#{quasi\ 4266}# (list #{p\ 4354}#) (+ #{lev\ 4326}# 1)))) #{tmp\ 4352}#) ((lambda (#{tmp\ 4355}#) (if #{tmp\ 4355}# (apply (lambda (#{p\ 4358}# #{q\ 4359}#) (#{quasicons\ 4263}# (#{quasi\ 4266}# #{p\ 4358}# #{lev\ 4326}#) (#{quasi\ 4266}# #{q\ 4359}# #{lev\ 4326}#))) #{tmp\ 4355}#) ((lambda (#{tmp\ 4360}#) (if #{tmp\ 4360}# (apply (lambda (#{x\ 4362}#) (#{quasivector\ 4265}# (#{quasi\ 4266}# #{x\ 4362}# #{lev\ 4326}#))) #{tmp\ 4360}#) ((lambda (#{p\ 4365}#) (list '#(syntax-object quote ((top) #(ribcage #(p) #((top)) #("i4364")) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile)) #{p\ 4365}#)) #{tmp\ 4329}#))) ($sc-dispatch #{tmp\ 4329}# '#(vector each-any))))) ($sc-dispatch #{tmp\ 4329}# '(any . any))))) ($sc-dispatch #{tmp\ 4329}# '(#(free-id #(syntax-object quasiquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) any))))) ($sc-dispatch #{tmp\ 4329}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) . any) . any))))) ($sc-dispatch #{tmp\ 4329}# '((#(free-id #(syntax-object unquote-splicing ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) any) . any))))) ($sc-dispatch #{tmp\ 4329}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) . any))))) ($sc-dispatch #{tmp\ 4329}# '(#(free-id #(syntax-object unquote ((top) #(ribcage () () ()) #(ribcage #(p lev) #((top) (top)) #("i4327" "i4328")) #(ribcage #(quasicons quasiappend quasivector quasi) #((top) (top) (top) (top)) #("i4259" "i4260" "i4261" "i4262"))) (hygiene guile))) any)))) #{p\ 4325}#)))) (lambda (#{x\ 4366}#) ((lambda (#{tmp\ 4368}#) ((lambda (#{tmp\ 4369}#) (if #{tmp\ 4369}# (apply (lambda (#{_\ 4372}# #{e\ 4373}#) (#{quasi\ 4266}# #{e\ 4373}# 0)) #{tmp\ 4369}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4368}#))) ($sc-dispatch #{tmp\ 4368}# (quote (any any))))) #{x\ 4366}#))))) (define include (make-syntax-transformer 'include 'macro (lambda (#{x\ 4374}#) (letrec ((#{read-file\ 4377}# (lambda (#{fn\ 4378}# #{k\ 4379}#) (let ((#{p\ 4383}# (open-input-file #{fn\ 4378}#))) (letrec ((#{f\ 4387}# (lambda (#{x\ 4388}# #{result\ 4389}#) (if (eof-object? #{x\ 4388}#) (begin (close-input-port #{p\ 4383}#) (reverse #{result\ 4389}#)) (#{f\ 4387}# (read #{p\ 4383}#) (cons (datum->syntax #{k\ 4379}# #{x\ 4388}#) #{result\ 4389}#)))))) (#{f\ 4387}# (read #{p\ 4383}#) (quote ()))))))) ((lambda (#{tmp\ 4390}#) ((lambda (#{tmp\ 4391}#) (if #{tmp\ 4391}# (apply (lambda (#{k\ 4394}# #{filename\ 4395}#) (let ((#{fn\ 4397}# (syntax->datum #{filename\ 4395}#))) ((lambda (#{tmp\ 4399}#) ((lambda (#{tmp\ 4400}#) (if #{tmp\ 4400}# (apply (lambda (#{exp\ 4402}#) (cons '#(syntax-object begin ((top) #(ribcage #(exp) #((top)) #("i4401")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4396")) #(ribcage #(k filename) #((top) (top)) #("i4392" "i4393")) #(ribcage (read-file) ((top)) ("i4376")) #(ribcage #(x) #((top)) #("i4375"))) (hygiene guile)) #{exp\ 4402}#)) #{tmp\ 4400}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4399}#))) ($sc-dispatch #{tmp\ 4399}# (quote each-any)))) (#{read-file\ 4377}# #{fn\ 4397}# #{filename\ 4395}#)))) #{tmp\ 4391}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4390}#))) ($sc-dispatch #{tmp\ 4390}# (quote (any any))))) #{x\ 4374}#))))) (define include-from-path (make-syntax-transformer 'include-from-path 'macro (lambda (#{x\ 4404}#) ((lambda (#{tmp\ 4406}#) ((lambda (#{tmp\ 4407}#) (if #{tmp\ 4407}# (apply (lambda (#{k\ 4410}# #{filename\ 4411}#) (let ((#{fn\ 4413}# (syntax->datum #{filename\ 4411}#))) ((lambda (#{tmp\ 4415}#) ((lambda (#{fn\ 4417}#) (list '#(syntax-object include ((top) #(ribcage #(fn) #((top)) #("i4416")) #(ribcage () () ()) #(ribcage () () ()) #(ribcage #(fn) #((top)) #("i4412")) #(ribcage #(k filename) #((top) (top)) #("i4408" "i4409")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4405"))) (hygiene guile)) #{fn\ 4417}#)) #{tmp\ 4415}#)) (datum->syntax #{filename\ 4411}# (let ((#{t\ 4420}# (%search-load-path #{fn\ 4413}#))) (if #{t\ 4420}# #{t\ 4420}# (syntax-violation 'include-from-path "file not found in path" #{x\ 4404}# #{filename\ 4411}#))))))) #{tmp\ 4407}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4406}#))) ($sc-dispatch #{tmp\ 4406}# (quote (any any))))) #{x\ 4404}#)))) (define unquote (make-syntax-transformer 'unquote 'macro (lambda (#{x\ 4422}#) ((lambda (#{tmp\ 4424}#) ((lambda (#{tmp\ 4425}#) (if #{tmp\ 4425}# (apply (lambda (#{_\ 4428}# #{e\ 4429}#) (syntax-violation 'unquote "expression not valid outside of quasiquote" #{x\ 4422}#)) #{tmp\ 4425}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4424}#))) ($sc-dispatch #{tmp\ 4424}# (quote (any any))))) #{x\ 4422}#)))) (define unquote-splicing (make-syntax-transformer 'unquote-splicing 'macro (lambda (#{x\ 4430}#) ((lambda (#{tmp\ 4432}#) ((lambda (#{tmp\ 4433}#) (if #{tmp\ 4433}# (apply (lambda (#{_\ 4436}# #{e\ 4437}#) (syntax-violation 'unquote-splicing "expression not valid outside of quasiquote" #{x\ 4430}#)) #{tmp\ 4433}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4432}#))) ($sc-dispatch #{tmp\ 4432}# (quote (any any))))) #{x\ 4430}#)))) (define case (make-syntax-transformer 'case 'macro (lambda (#{x\ 4438}#) ((lambda (#{tmp\ 4440}#) ((lambda (#{tmp\ 4441}#) (if #{tmp\ 4441}# (apply (lambda (#{_\ 4446}# #{e\ 4447}# #{m1\ 4448}# #{m2\ 4449}#) ((lambda (#{tmp\ 4451}#) ((lambda (#{body\ 4453}#) (list '#(syntax-object let ((top) #(ribcage #(body) #((top)) #("i4452")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (list (list '#(syntax-object t ((top) #(ribcage #(body) #((top)) #("i4452")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) #{e\ 4447}#)) #{body\ 4453}#)) #{tmp\ 4451}#)) (letrec ((#{f\ 4457}# (lambda (#{clause\ 4458}# #{clauses\ 4459}#) (if (null? #{clauses\ 4459}#) ((lambda (#{tmp\ 4461}#) ((lambda (#{tmp\ 4462}#) (if #{tmp\ 4462}# (apply (lambda (#{e1\ 4465}# #{e2\ 4466}#) (cons '#(syntax-object begin ((top) #(ribcage #(e1 e2) #((top) (top)) #("i4463" "i4464")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (cons #{e1\ 4465}# #{e2\ 4466}#))) #{tmp\ 4462}#) ((lambda (#{tmp\ 4468}#) (if #{tmp\ 4468}# (apply (lambda (#{k\ 4472}# #{e1\ 4473}# #{e2\ 4474}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4469" "i4470" "i4471")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4469" "i4470" "i4471")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4469" "i4470" "i4471")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4469" "i4470" "i4471")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) #{k\ 4472}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4469" "i4470" "i4471")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (cons #{e1\ 4473}# #{e2\ 4474}#)))) #{tmp\ 4468}#) ((lambda (#{_\ 4478}#) (syntax-violation 'case "bad clause" #{x\ 4438}# #{clause\ 4458}#)) #{tmp\ 4461}#))) ($sc-dispatch #{tmp\ 4461}# '(each-any any . each-any))))) ($sc-dispatch #{tmp\ 4461}# '(#(free-id #(syntax-object else ((top) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile))) any . each-any)))) #{clause\ 4458}#) ((lambda (#{tmp\ 4480}#) ((lambda (#{rest\ 4482}#) ((lambda (#{tmp\ 4483}#) ((lambda (#{tmp\ 4484}#) (if #{tmp\ 4484}# (apply (lambda (#{k\ 4488}# #{e1\ 4489}# #{e2\ 4490}#) (list '#(syntax-object if ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4485" "i4486" "i4487")) #(ribcage #(rest) #((top)) #("i4481")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (list '#(syntax-object memv ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4485" "i4486" "i4487")) #(ribcage #(rest) #((top)) #("i4481")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) '#(syntax-object t ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4485" "i4486" "i4487")) #(ribcage #(rest) #((top)) #("i4481")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (list '#(syntax-object quote ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4485" "i4486" "i4487")) #(ribcage #(rest) #((top)) #("i4481")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) #{k\ 4488}#)) (cons '#(syntax-object begin ((top) #(ribcage #(k e1 e2) #((top) (top) (top)) #("i4485" "i4486" "i4487")) #(ribcage #(rest) #((top)) #("i4481")) #(ribcage () () ()) #(ribcage #(f clause clauses) #((top) (top) (top)) #("i4454" "i4455" "i4456")) #(ribcage #(_ e m1 m2) #((top) (top) (top) (top)) #("i4442" "i4443" "i4444" "i4445")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4439"))) (hygiene guile)) (cons #{e1\ 4489}# #{e2\ 4490}#)) #{rest\ 4482}#)) #{tmp\ 4484}#) ((lambda (#{_\ 4494}#) (syntax-violation 'case "bad clause" #{x\ 4438}# #{clause\ 4458}#)) #{tmp\ 4483}#))) ($sc-dispatch #{tmp\ 4483}# '(each-any any . each-any)))) #{clause\ 4458}#)) #{tmp\ 4480}#)) (#{f\ 4457}# (car #{clauses\ 4459}#) (cdr #{clauses\ 4459}#))))))) (#{f\ 4457}# #{m1\ 4448}# #{m2\ 4449}#)))) #{tmp\ 4441}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4440}#))) ($sc-dispatch #{tmp\ 4440}# '(any any any . each-any)))) #{x\ 4438}#)))) (define identifier-syntax (make-syntax-transformer 'identifier-syntax 'macro (lambda (#{x\ 4495}#) ((lambda (#{tmp\ 4497}#) ((lambda (#{tmp\ 4498}#) (if #{tmp\ 4498}# (apply (lambda (#{_\ 4501}# #{e\ 4502}#) (list '#(syntax-object lambda ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile))) '#((#(syntax-object macro-type ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) . #(syntax-object identifier-syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)))) (list '#(syntax-object syntax-case ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) '#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) '() (list '#(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) '(#(syntax-object identifier? ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) (#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) #(syntax-object id ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) #{e\ 4502}#)) (list (cons #{_\ 4501}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)))) (list '#(syntax-object syntax ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) (cons #{e\ 4502}# '(#(syntax-object x ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile)) #(syntax-object ... ((top) #(ribcage #(_ e) #((top) (top)) #("i4499" "i4500")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4496"))) (hygiene guile))))))))) #{tmp\ 4498}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4497}#))) ($sc-dispatch #{tmp\ 4497}# (quote (any any))))) #{x\ 4495}#)))) (define define* (make-syntax-transformer 'define* 'macro (lambda (#{x\ 4503}#) ((lambda (#{tmp\ 4505}#) ((lambda (#{tmp\ 4506}#) (if #{tmp\ 4506}# (apply (lambda (#{_\ 4512}# #{id\ 4513}# #{args\ 4514}# #{b0\ 4515}# #{b1\ 4516}#) (list '#(syntax-object define ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i4507" "i4508" "i4509" "i4510" "i4511")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4504"))) (hygiene guile)) #{id\ 4513}# (cons '#(syntax-object lambda* ((top) #(ribcage #(_ id args b0 b1) #((top) (top) (top) (top) (top)) #("i4507" "i4508" "i4509" "i4510" "i4511")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4504"))) (hygiene guile)) (cons #{args\ 4514}# (cons #{b0\ 4515}# #{b1\ 4516}#))))) #{tmp\ 4506}#) ((lambda (#{tmp\ 4518}#) (if (if #{tmp\ 4518}# (apply (lambda (#{_\ 4522}# #{id\ 4523}# #{val\ 4524}#) (identifier? '#(syntax-object x ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i4519" "i4520" "i4521")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4504"))) (hygiene guile)))) #{tmp\ 4518}#) #f) (apply (lambda (#{_\ 4528}# #{id\ 4529}# #{val\ 4530}#) (list '#(syntax-object define ((top) #(ribcage #(_ id val) #((top) (top) (top)) #("i4525" "i4526" "i4527")) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i4504"))) (hygiene guile)) #{id\ 4529}# #{val\ 4530}#)) #{tmp\ 4518}#) (syntax-violation #f "source expression failed to match any pattern" #{tmp\ 4505}#))) ($sc-dispatch #{tmp\ 4505}# '(any any any))))) ($sc-dispatch #{tmp\ 4505}# '(any (any . any) any . each-any)))) #{x\ 4503}#))))