1 (eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
4 (letrec ((#{and-map*\ 3695}#
5 (lambda (#{f\ 3733}# #{first\ 3734}# . #{rest\ 3735}#)
6 (let ((#{t\ 3736}# (null? #{first\ 3734}#)))
9 (if (null? #{rest\ 3735}#)
10 (letrec ((#{andmap\ 3737}#
11 (lambda (#{first\ 3738}#)
12 (let ((#{x\ 3739}# (car #{first\ 3738}#))
13 (#{first\ 3740}# (cdr #{first\ 3738}#)))
14 (if (null? #{first\ 3740}#)
15 (#{f\ 3733}# #{x\ 3739}#)
16 (if (#{f\ 3733}# #{x\ 3739}#)
17 (#{andmap\ 3737}# #{first\ 3740}#)
19 (#{andmap\ 3737}# #{first\ 3734}#))
20 (letrec ((#{andmap\ 3741}#
21 (lambda (#{first\ 3742}# #{rest\ 3743}#)
22 (let ((#{x\ 3744}# (car #{first\ 3742}#))
23 (#{xr\ 3745}# (map car #{rest\ 3743}#))
24 (#{first\ 3746}# (cdr #{first\ 3742}#))
26 (map cdr #{rest\ 3743}#)))
27 (if (null? #{first\ 3746}#)
29 (cons #{x\ 3744}# #{xr\ 3745}#))
30 (if (apply #{f\ 3733}#
31 (cons #{x\ 3744}# #{xr\ 3745}#))
36 (#{andmap\ 3741}# #{first\ 3734}# #{rest\ 3735}#))))))))
37 (letrec ((#{lambda-var-list\ 3846}#
38 (lambda (#{vars\ 3970}#)
39 (letrec ((#{lvl\ 3971}#
40 (lambda (#{vars\ 3972}# #{ls\ 3973}# #{w\ 3974}#)
41 (if (pair? #{vars\ 3972}#)
50 (if (#{id?\ 3795}# #{vars\ 3972}#)
56 (if (null? #{vars\ 3972}#)
58 (if (#{syntax-object?\ 3779}# #{vars\ 3972}#)
60 (#{syntax-object-expression\ 3780}#
65 (#{syntax-object-wrap\ 3781}#
67 (cons #{vars\ 3972}# #{ls\ 3973}#))))))))
73 (lambda (#{id\ 3975}#)
75 (if (#{syntax-object?\ 3779}# #{id\ 3975}#)
76 (#{syntax-object-expression\ 3780}# #{id\ 3975}#)
79 (string-append (symbol->string #{id\ 3976}#) " ")))))
81 (lambda (#{x\ 3977}# #{w\ 3978}#)
83 (#{wrap-marks\ 3798}# #{w\ 3978}#))
87 (if (#{syntax-object?\ 3779}# #{x\ 3980}#)
89 (#{syntax-object-expression\ 3780}#
91 (#{syntax-object-wrap\ 3781}# #{x\ 3980}#))
92 (if (pair? #{x\ 3980}#)
94 (#{f\ 3979}# (car #{x\ 3980}#)))
96 (#{f\ 3979}# (cdr #{x\ 3980}#))))
97 (if (if (eq? #{a\ 3981}# (car #{x\ 3980}#))
98 (eq? #{d\ 3982}# (cdr #{x\ 3980}#))
101 (cons #{a\ 3981}# #{d\ 3982}#)))
102 (if (vector? #{x\ 3980}#)
104 (vector->list #{x\ 3980}#)))
106 (map #{f\ 3979}# #{old\ 3983}#)))
107 (if (#{and-map*\ 3695}#
112 (list->vector #{new\ 3984}#))))
114 (#{f\ 3979}# #{x\ 3977}#)))))
115 (#{chi-lambda-case\ 3843}#
121 #{get-formals\ 3990}#
123 (letrec ((#{expand-body\ 3995}#
124 (lambda (#{req\ 3996}#
133 ((lambda (#{tmp\ 4005}#)
134 ((lambda (#{tmp\ 4006}#)
135 (if (if #{tmp\ 4006}#
136 (apply (lambda (#{docstring\ 4007}#
141 #{docstring\ 4007}#)))
144 (apply (lambda (#{docstring\ 4010}#
159 (#{source-wrap\ 3824}#
168 ((lambda (#{tmp\ 4014}#)
170 (apply (lambda (#{e1\ 4015}#
183 (#{source-wrap\ 3824}#
194 "source expression failed to match any pattern"
198 '(any . each-any)))))
201 '(any any . each-any))))
204 (lambda (#{req\ 4018}#
215 (if (pair? #{kw\ 4021}#)
216 ((lambda (#{tmp\ 4029}#)
217 ((lambda (#{tmp\ 4030}#)
219 (apply (lambda (#{k\ 4031}#
226 (#{gen-labels\ 3801}#
227 (list #{v\ 4034}#))))
229 (#{extend-var-env\ 3790}#
234 (#{make-binding-wrap\ 3812}#
249 (cons (list (syntax->datum
260 #{inits\ 4028}#)))))))
264 "source expression failed to match any pattern"
270 (#{expand-body\ 3995}#
274 (if (let ((#{t\ 4038}# #{aok\ 4026}#))
277 (pair? #{out\ 4027}#)))
278 (cons #{aok\ 4026}# (reverse #{out\ 4027}#))
281 (reverse #{vars\ 4023}#)
284 (reverse #{inits\ 4028}#)))))
285 (#{expand-opt\ 3993}#
286 (lambda (#{req\ 4039}#
296 (if (pair? #{opt\ 4040}#)
297 ((lambda (#{tmp\ 4049}#)
298 ((lambda (#{tmp\ 4050}#)
300 (apply (lambda (#{id\ 4051}# #{i\ 4052}#)
305 (#{gen-labels\ 3801}#
306 (list #{v\ 4053}#))))
308 (#{extend-var-env\ 3790}#
313 (#{make-binding-wrap\ 3812}#
317 (#{expand-opt\ 3993}#
335 #{inits\ 4048}#)))))))
339 "source expression failed to match any pattern"
347 (#{gen-var\ 3845}# #{rest\ 4041}#)))
349 (#{gen-labels\ 3801}#
350 (list #{v\ 4057}#))))
352 (#{extend-var-env\ 3790}#
357 (#{make-binding-wrap\ 3812}#
358 (list #{rest\ 4041}#)
363 (if (pair? #{out\ 4047}#)
364 (reverse #{out\ 4047}#)
366 (syntax->datum #{rest\ 4041}#)
367 (if (pair? #{kw\ 4042}#)
371 (cons #{v\ 4057}# #{vars\ 4044}#)
374 (if (pair? #{kw\ 4042}#)
381 (if (pair? #{out\ 4047}#)
382 (reverse #{out\ 4047}#)
385 (if (pair? #{kw\ 4042}#)
392 (if (pair? #{kw\ 4042}#)
397 (#{expand-req\ 3992}#
398 (lambda (#{req\ 4061}#
403 (let ((#{vars\ 4066}#
404 (map #{gen-var\ 3845}# #{req\ 4061}#))
406 (#{gen-labels\ 3801}# #{req\ 4061}#)))
408 (#{extend-var-env\ 3790}#
413 (#{make-binding-wrap\ 3812}#
417 (#{expand-opt\ 3993}#
418 (map syntax->datum #{req\ 4061}#)
423 (reverse #{vars\ 4066}#)
428 ((lambda (#{tmp\ 4070}#)
429 ((lambda (#{tmp\ 4071}#)
431 (apply (lambda () (values #f #f)) #{tmp\ 4071}#)
432 ((lambda (#{tmp\ 4072}#)
434 (apply (lambda (#{args\ 4073}#
442 (#{get-formals\ 3990}#
444 (lambda (#{req\ 4079}#
450 (#{expand-req\ 3992}#
457 (lambda (#{docstring\ 4084}#
467 (#{chi-lambda-case\ 3843}#
473 #{get-formals\ 3990}#
474 (map (lambda (#{tmp\ 4094}#
483 (lambda (#{docstring*\ 4096}#
487 #{docstring\ 4084}#))
490 #{docstring*\ 4096}#))
491 (#{build-lambda-case\ 3771}#
500 #{else*\ 4097}#)))))))))
504 "source expression failed to match any pattern"
508 '((any any . each-any)
510 #(each (any any . each-any)))))))
511 ($sc-dispatch #{tmp\ 4070}# (quote ()))))
512 #{clauses\ 3991}#))))
513 (#{lambda*-formals\ 3842}#
514 (lambda (#{orig-args\ 4099}#)
515 (letrec ((#{check\ 4104}#
516 (lambda (#{req\ 4105}#
520 (if (#{distinct-bound-ids?\ 3821}#
523 (map car #{opt\ 4106}#)
525 (list #{rest\ 4107}#)
527 (if (pair? #{kw\ 4108}#)
528 (map cadr (cdr #{kw\ 4108}#))
537 "duplicate identifier in argument list"
538 #{orig-args\ 4099}#))))
540 (lambda (#{args\ 4109}#
544 ((lambda (#{tmp\ 4113}#)
545 ((lambda (#{tmp\ 4114}#)
546 (if (if #{tmp\ 4114}#
547 (apply (lambda (#{r\ 4115}#)
548 (#{id?\ 3795}# #{r\ 4115}#))
551 (apply (lambda (#{r\ 4116}#)
558 ((lambda (#{else\ 4117}#)
561 "invalid rest argument"
565 (list #{tmp\ 4113}#)))
568 (lambda (#{args\ 4118}#
572 ((lambda (#{tmp\ 4122}#)
573 ((lambda (#{tmp\ 4123}#)
584 ((lambda (#{tmp\ 4124}#)
585 (if (if #{tmp\ 4124}#
586 (apply (lambda (#{a\ 4125}#
592 (apply (lambda (#{a\ 4127}#
594 ((lambda (#{tmp\ 4129}#)
595 ((lambda (#{k\ 4130}#)
600 (cons (cons #{k\ 4130}#
662 eval-local-transformer
698 set-ribcage-symnames!
730 set-syntax-object-module!
731 set-syntax-object-wrap!
732 set-syntax-object-expression!
735 syntax-object-expression
748 build-global-definition
750 build-global-assignment
751 build-global-reference
753 build-lexical-assignment
754 build-lexical-reference
759 get-global-definition-hook
760 put-global-definition-hook
1019 ((lambda (#{tmp\ 4131}#)
1020 (if (if #{tmp\ 4131}#
1021 (apply (lambda (#{a\ 4132}#
1028 (apply (lambda (#{a\ 4135}#
1031 ((lambda (#{tmp\ 4138}#)
1032 ((lambda (#{k\ 4139}#)
1037 (cons (list #{k\ 4139}#
1046 ((lambda (#{tmp\ 4140}#)
1047 (if (if #{tmp\ 4140}#
1048 (apply (lambda (#{a\ 4141}#
1060 (apply (lambda (#{a\ 4145}#
1068 (cons (list #{k\ 4147}#
1073 ((lambda (#{tmp\ 4149}#)
1074 (if (if #{tmp\ 4149}#
1075 (apply (lambda (#{aok\ 4150}#)
1078 #:allow-other-keys))
1081 (apply (lambda (#{aok\ 4151}#)
1090 ((lambda (#{tmp\ 4152}#)
1091 (if (if #{tmp\ 4152}#
1092 (apply (lambda (#{aok\ 4153}#
1095 (if (eq? (syntax->datum
1104 (apply (lambda (#{aok\ 4156}#
1115 ((lambda (#{tmp\ 4159}#)
1116 (if (if #{tmp\ 4159}#
1117 (apply (lambda (#{aok\ 4160}#
1119 (if (eq? (syntax->datum
1127 (apply (lambda (#{aok\ 4162}#
1137 ((lambda (#{tmp\ 4164}#)
1138 (if (if #{tmp\ 4164}#
1139 (apply (lambda (#{a\ 4165}#
1146 (apply (lambda (#{a\ 4167}#
1156 ((lambda (#{tmp\ 4169}#)
1157 (if (if #{tmp\ 4169}#
1158 (apply (lambda (#{r\ 4170}#)
1163 (apply (lambda (#{r\ 4171}#)
1172 ((lambda (#{else\ 4172}#)
1175 "invalid keyword argument list"
1179 (list #{tmp\ 4122}#))))
1195 '((any any any) . any)))))
1198 '((any any) . any)))))
1202 ($sc-dispatch #{tmp\ 4122}# (quote ()))))
1205 (lambda (#{args\ 4173}# #{req\ 4174}# #{ropt\ 4175}#)
1206 ((lambda (#{tmp\ 4176}#)
1207 ((lambda (#{tmp\ 4177}#)
1212 (reverse #{ropt\ 4175}#)
1216 ((lambda (#{tmp\ 4178}#)
1217 (if (if #{tmp\ 4178}#
1218 (apply (lambda (#{a\ 4179}#
1224 (apply (lambda (#{a\ 4181}#
1229 (cons (cons #{a\ 4181}#
1282 eval-local-transformer
1318 set-ribcage-symnames!
1350 set-syntax-object-module!
1351 set-syntax-object-wrap!
1352 set-syntax-object-expression!
1353 syntax-object-module
1355 syntax-object-expression
1368 build-global-definition
1370 build-global-assignment
1371 build-global-reference
1373 build-lexical-assignment
1374 build-lexical-reference
1379 get-global-definition-hook
1380 put-global-definition-hook
1635 ((lambda (#{tmp\ 4183}#)
1636 (if (if #{tmp\ 4183}#
1637 (apply (lambda (#{a\ 4184}#
1644 (apply (lambda (#{a\ 4187}#
1650 (cons (list #{a\ 4187}#
1654 ((lambda (#{tmp\ 4190}#)
1655 (if (if #{tmp\ 4190}#
1656 (apply (lambda (#{a\ 4191}#
1663 (apply (lambda (#{a\ 4193}#
1672 ((lambda (#{tmp\ 4195}#)
1673 (if (if #{tmp\ 4195}#
1674 (apply (lambda (#{a\ 4196}#
1681 (apply (lambda (#{a\ 4198}#
1690 ((lambda (#{tmp\ 4200}#)
1691 (if (if #{tmp\ 4200}#
1692 (apply (lambda (#{r\ 4201}#)
1697 (apply (lambda (#{r\ 4202}#)
1705 ((lambda (#{else\ 4203}#)
1708 "invalid optional argument list"
1712 (list #{tmp\ 4176}#))))
1721 '((any any) . any)))))
1725 ($sc-dispatch #{tmp\ 4176}# (quote ()))))
1728 (lambda (#{args\ 4204}# #{rreq\ 4205}#)
1729 ((lambda (#{tmp\ 4206}#)
1730 ((lambda (#{tmp\ 4207}#)
1734 (reverse #{rreq\ 4205}#)
1739 ((lambda (#{tmp\ 4208}#)
1740 (if (if #{tmp\ 4208}#
1741 (apply (lambda (#{a\ 4209}#
1747 (apply (lambda (#{a\ 4211}#
1754 ((lambda (#{tmp\ 4213}#)
1755 (if (if #{tmp\ 4213}#
1756 (apply (lambda (#{a\ 4214}#
1763 (apply (lambda (#{a\ 4216}#
1771 ((lambda (#{tmp\ 4218}#)
1772 (if (if #{tmp\ 4218}#
1773 (apply (lambda (#{a\ 4219}#
1780 (apply (lambda (#{a\ 4221}#
1789 ((lambda (#{tmp\ 4223}#)
1790 (if (if #{tmp\ 4223}#
1791 (apply (lambda (#{a\ 4224}#
1798 (apply (lambda (#{a\ 4226}#
1807 ((lambda (#{tmp\ 4228}#)
1808 (if (if #{tmp\ 4228}#
1809 (apply (lambda (#{r\ 4229}#)
1814 (apply (lambda (#{r\ 4230}#)
1822 ((lambda (#{else\ 4231}#)
1825 "invalid argument list"
1829 (list #{tmp\ 4206}#))))
1842 ($sc-dispatch #{tmp\ 4206}# (quote ()))))
1844 (#{req\ 4100}# #{orig-args\ 4099}# (quote ())))))
1845 (#{chi-simple-lambda\ 3841}#
1846 (lambda (#{e\ 4232}#
1855 (let ((#{ids\ 4241}#
1857 (append #{req\ 4237}# (list #{rest\ 4238}#))
1859 (let ((#{vars\ 4242}#
1860 (map #{gen-var\ 3845}# #{ids\ 4241}#)))
1861 (let ((#{labels\ 4243}#
1862 (#{gen-labels\ 3801}# #{ids\ 4241}#)))
1863 (#{build-simple-lambda\ 3769}#
1865 (map syntax->datum #{req\ 4237}#)
1867 (syntax->datum #{rest\ 4238}#)
1873 (#{source-wrap\ 3824}#
1878 (#{extend-var-env\ 3790}#
1882 (#{make-binding-wrap\ 3812}#
1886 #{mod\ 4236}#)))))))
1887 (#{lambda-formals\ 3840}#
1888 (lambda (#{orig-args\ 4244}#)
1889 (letrec ((#{check\ 4246}#
1890 (lambda (#{req\ 4247}# #{rest\ 4248}#)
1891 (if (#{distinct-bound-ids?\ 3821}#
1893 (cons #{rest\ 4248}# #{req\ 4247}#)
1895 (values #{req\ 4247}# #f #{rest\ 4248}# #f)
1898 "duplicate identifier in argument list"
1899 #{orig-args\ 4244}#))))
1901 (lambda (#{args\ 4249}# #{rreq\ 4250}#)
1902 ((lambda (#{tmp\ 4251}#)
1903 ((lambda (#{tmp\ 4252}#)
1907 (reverse #{rreq\ 4250}#)
1910 ((lambda (#{tmp\ 4253}#)
1911 (if (if #{tmp\ 4253}#
1912 (apply (lambda (#{a\ 4254}#
1918 (apply (lambda (#{a\ 4256}#
1925 ((lambda (#{tmp\ 4258}#)
1926 (if (if #{tmp\ 4258}#
1927 (apply (lambda (#{r\ 4259}#)
1932 (apply (lambda (#{r\ 4260}#)
1938 ((lambda (#{else\ 4261}#)
1941 "invalid argument list"
1945 (list #{tmp\ 4251}#))))
1949 ($sc-dispatch #{tmp\ 4251}# (quote ()))))
1951 (#{req\ 4245}# #{orig-args\ 4244}# (quote ())))))
1952 (#{ellipsis?\ 3839}#
1953 (lambda (#{x\ 4262}#)
1954 (if (#{nonsymbol-id?\ 3794}# #{x\ 4262}#)
1955 (#{free-id=?\ 3818}#
1962 #(ribcage #(x) #((top)) #("i"))
1973 eval-local-transformer
2009 set-ribcage-symnames!
2041 set-syntax-object-module!
2042 set-syntax-object-wrap!
2043 set-syntax-object-expression!
2044 syntax-object-module
2046 syntax-object-expression
2059 build-global-definition
2061 build-global-assignment
2062 build-global-reference
2064 build-lexical-assignment
2065 build-lexical-reference
2070 get-global-definition-hook
2071 put-global-definition-hook
2316 (define-structure and-map*)
2322 (lambda () (#{build-void\ 3759}# #f)))
2323 (#{eval-local-transformer\ 3837}#
2324 (lambda (#{expanded\ 4263}# #{mod\ 4264}#)
2326 (#{local-eval-hook\ 3755}#
2329 (if (procedure? #{p\ 4265}#)
2330 (cons #{p\ 4265}# (module-name (current-module)))
2333 "nonprocedure transformer"
2335 (#{chi-local-syntax\ 3836}#
2336 (lambda (#{rec?\ 4266}#
2343 ((lambda (#{tmp\ 4273}#)
2344 ((lambda (#{tmp\ 4274}#)
2346 (apply (lambda (#{_\ 4275}#
2351 (let ((#{ids\ 4280}# #{id\ 4276}#))
2352 (if (not (#{valid-bound-ids?\ 3820}#
2356 "duplicate bound keyword"
2358 (let ((#{labels\ 4282}#
2359 (#{gen-labels\ 3801}#
2361 (let ((#{new-w\ 4283}#
2362 (#{make-binding-wrap\ 3812}#
2367 (cons #{e1\ 4278}# #{e2\ 4279}#)
2368 (#{extend-env\ 3789}#
2375 (#{macros-only-env\ 3791}#
2377 (map (lambda (#{x\ 4287}#)
2379 (#{eval-local-transformer\ 3837}#
2392 ((lambda (#{_\ 4289}#)
2395 "bad local syntax definition"
2396 (#{source-wrap\ 3824}#
2404 '(any #(each (any any)) any . each-any))))
2407 (lambda (#{body\ 4290}#
2408 #{outer-form\ 4291}#
2413 (cons '("placeholder" placeholder)
2415 (let ((#{ribcage\ 4296}#
2416 (#{make-ribcage\ 3802}#
2421 (#{make-wrap\ 3797}#
2422 (#{wrap-marks\ 3798}# #{w\ 4293}#)
2423 (cons #{ribcage\ 4296}#
2424 (#{wrap-subst\ 3799}# #{w\ 4293}#)))))
2425 (letrec ((#{parse\ 4298}#
2426 (lambda (#{body\ 4299}#
2433 (if (null? #{body\ 4299}#)
2436 "no expressions in body"
2437 #{outer-form\ 4291}#)
2438 (let ((#{e\ 4307}# (cdar #{body\ 4299}#))
2439 (#{er\ 4308}# (caar #{body\ 4299}#)))
2442 (#{syntax-type\ 3829}#
2446 (#{source-annotation\ 3786}#
2451 (lambda (#{type\ 4309}#
2457 (if (memv #{type\ 4309}#
2465 (#{gen-label\ 3800}#)))
2466 (let ((#{var\ 4317}#
2470 (#{extend-ribcage!\ 3811}#
2475 (cdr #{body\ 4299}#)
2478 (cons #{label\ 4316}#
2484 (cons (cons #{er\ 4308}#
2490 (cons (cons 'lexical
2492 #{bindings\ 4305}#)))))
2493 (if (memv #{type\ 4309}#
2494 '(define-syntax-form))
2501 (#{gen-label\ 3800}#)))
2503 (#{extend-ribcage!\ 3811}#
2508 (cdr #{body\ 4299}#)
2511 (cons #{label\ 4319}#
2522 #{bindings\ 4305}#))))
2523 (if (memv #{type\ 4309}#
2525 ((lambda (#{tmp\ 4320}#)
2526 ((lambda (#{tmp\ 4321}#)
2528 (apply (lambda (#{_\ 4322}#
2531 (letrec ((#{f\ 4324}#
2532 (lambda (#{forms\ 4325}#)
2533 (if (null? #{forms\ 4325}#)
2534 (cdr #{body\ 4299}#)
2535 (cons (cons #{er\ 4308}#
2537 (car #{forms\ 4325}#)
2541 (cdr #{forms\ 4325}#)))))))
2549 #{bindings\ 4305}#))
2553 "source expression failed to match any pattern"
2557 '(any . each-any))))
2559 (if (memv #{type\ 4309}#
2560 '(local-syntax-form))
2561 (#{chi-local-syntax\ 3836}#
2568 (lambda (#{forms\ 4327}#
2574 (letrec ((#{f\ 4332}#
2575 (lambda (#{forms\ 4333}#)
2576 (if (null? #{forms\ 4333}#)
2577 (cdr #{body\ 4299}#)
2578 (cons (cons #{er\ 4328}#
2580 (car #{forms\ 4333}#)
2584 (cdr #{forms\ 4333}#)))))))
2592 #{bindings\ 4305}#)))
2593 (if (null? #{ids\ 4300}#)
2594 (#{build-sequence\ 3774}#
2596 (map (lambda (#{x\ 4334}#)
2602 (cons (cons #{er\ 4308}#
2603 (#{source-wrap\ 3824}#
2608 (cdr #{body\ 4299}#))))
2610 (if (not (#{valid-bound-ids?\ 3820}#
2614 "invalid or duplicate identifier in definition"
2615 #{outer-form\ 4291}#))
2616 (letrec ((#{loop\ 4335}#
2617 (lambda (#{bs\ 4336}#
2620 (if (not (null? #{bs\ 4336}#))
2622 (car #{bs\ 4336}#)))
2623 (if (eq? (car #{b\ 4339}#)
2626 (cadr #{b\ 4339}#)))
2627 (let ((#{r-cache\ 4341}#
2628 (if (eq? #{er\ 4340}#
2631 (#{macros-only-env\ 3791}#
2636 (#{eval-local-transformer\ 3837}#
2646 #{r-cache\ 4341}#))))
2650 #{r-cache\ 4338}#)))))))
2657 (#{extend-env\ 3789}#
2661 (#{build-letrec\ 3777}#
2666 (map (lambda (#{x\ 4342}#)
2673 (#{build-sequence\ 3774}#
2675 (map (lambda (#{x\ 4343}#)
2681 (cons (cons #{er\ 4308}#
2682 (#{source-wrap\ 3824}#
2687 (cdr #{body\ 4299}#))))))))))))))))))
2689 (map (lambda (#{x\ 4306}#)
2702 (#{chi-macro\ 3834}#
2703 (lambda (#{p\ 4344}#
2709 (letrec ((#{rebuild-macro-output\ 4350}#
2710 (lambda (#{x\ 4351}# #{m\ 4352}#)
2711 (if (pair? #{x\ 4351}#)
2712 (cons (#{rebuild-macro-output\ 4350}#
2715 (#{rebuild-macro-output\ 4350}#
2718 (if (#{syntax-object?\ 3779}# #{x\ 4351}#)
2720 (#{syntax-object-wrap\ 3781}#
2723 (#{wrap-marks\ 3798}# #{w\ 4353}#))
2725 (#{wrap-subst\ 3799}# #{w\ 4353}#)))
2726 (if (if (pair? #{ms\ 4354}#)
2727 (eq? (car #{ms\ 4354}#) #f)
2729 (#{make-syntax-object\ 3778}#
2730 (#{syntax-object-expression\ 3780}#
2732 (#{make-wrap\ 3797}#
2738 (#{syntax-object-module\ 3782}#
2740 (#{make-syntax-object\ 3778}#
2741 (#{syntax-object-expression\ 3780}#
2743 (#{make-wrap\ 3797}#
2744 (cons #{m\ 4352}# #{ms\ 4354}#)
2749 (cons (quote shift) #{s\ 4355}#)))
2751 (cdr #{p\ 4344}#))))))
2752 (if (vector? #{x\ 4351}#)
2754 (vector-length #{x\ 4351}#)))
2756 (make-vector #{n\ 4356}#)))
2757 (letrec ((#{loop\ 4358}#
2758 (lambda (#{i\ 4359}#)
2769 (#{rebuild-macro-output\ 4350}#
2778 (#{loop\ 4358}# 0))))
2779 (if (symbol? #{x\ 4351}#)
2782 "encountered raw symbol in macro output"
2783 (#{source-wrap\ 3824}#
2786 (#{wrap-subst\ 3799}# #{w\ 4347}#)
2790 (#{rebuild-macro-output\ 4350}#
2794 (#{anti-mark\ 3810}# #{w\ 4347}#)
2797 (#{chi-application\ 3833}#
2798 (lambda (#{x\ 4360}#
2804 ((lambda (#{tmp\ 4366}#)
2805 ((lambda (#{tmp\ 4367}#)
2807 (apply (lambda (#{e0\ 4368}# #{e1\ 4369}#)
2808 (#{build-application\ 3760}#
2811 (map (lambda (#{e\ 4370}#)
2821 "source expression failed to match any pattern"
2825 '(any . each-any))))
2828 (lambda (#{type\ 4372}#
2835 (if (memv #{type\ 4372}# (quote (lexical)))
2836 (#{build-lexical-reference\ 3762}#
2841 (if (memv #{type\ 4372}# (quote (core core-form)))
2848 (if (memv #{type\ 4372}# (quote (module-ref)))
2850 (lambda () (#{value\ 4373}# #{e\ 4374}#))
2851 (lambda (#{id\ 4379}# #{mod\ 4380}#)
2852 (#{build-global-reference\ 3765}#
2856 (if (memv #{type\ 4372}# (quote (lexical-call)))
2857 (#{chi-application\ 3833}#
2858 (#{build-lexical-reference\ 3762}#
2860 (#{source-annotation\ 3786}# (car #{e\ 4374}#))
2868 (if (memv #{type\ 4372}# (quote (global-call)))
2869 (#{chi-application\ 3833}#
2870 (#{build-global-reference\ 3765}#
2871 (#{source-annotation\ 3786}# (car #{e\ 4374}#))
2872 (if (#{syntax-object?\ 3779}# #{value\ 4373}#)
2873 (#{syntax-object-expression\ 3780}#
2876 (if (#{syntax-object?\ 3779}# #{value\ 4373}#)
2877 (#{syntax-object-module\ 3782}# #{value\ 4373}#)
2884 (if (memv #{type\ 4372}# (quote (constant)))
2885 (#{build-data\ 3773}#
2888 (#{source-wrap\ 3824}#
2894 (if (memv #{type\ 4372}# (quote (global)))
2895 (#{build-global-reference\ 3765}#
2899 (if (memv #{type\ 4372}# (quote (call)))
2900 (#{chi-application\ 3833}#
2911 (if (memv #{type\ 4372}# (quote (begin-form)))
2912 ((lambda (#{tmp\ 4381}#)
2913 ((lambda (#{tmp\ 4382}#)
2915 (apply (lambda (#{_\ 4383}#
2918 (#{chi-sequence\ 3825}#
2928 "source expression failed to match any pattern"
2932 '(any any . each-any))))
2934 (if (memv #{type\ 4372}#
2935 '(local-syntax-form))
2936 (#{chi-local-syntax\ 3836}#
2943 #{chi-sequence\ 3825}#)
2944 (if (memv #{type\ 4372}#
2946 ((lambda (#{tmp\ 4387}#)
2947 ((lambda (#{tmp\ 4388}#)
2949 (apply (lambda (#{_\ 4389}#
2953 (let ((#{when-list\ 4393}#
2954 (#{chi-when-list\ 3828}#
2959 #{when-list\ 4393}#)
2960 (#{chi-sequence\ 3825}#
2967 (#{chi-void\ 3838}#))))
2971 "source expression failed to match any pattern"
2975 '(any each-any any . each-any))))
2977 (if (memv #{type\ 4372}#
2979 define-syntax-form))
2982 "definition in expression context"
2988 (if (memv #{type\ 4372}#
2992 "reference to pattern variable outside syntax form"
2993 (#{source-wrap\ 3824}#
2998 (if (memv #{type\ 4372}#
2999 '(displaced-lexical))
3002 "reference to identifier outside its scope"
3003 (#{source-wrap\ 3824}#
3011 (#{source-wrap\ 3824}#
3015 #{mod\ 4378}#))))))))))))))))))
3017 (lambda (#{e\ 4396}#
3023 (#{syntax-type\ 3829}#
3027 (#{source-annotation\ 3786}# #{e\ 4396}#)
3031 (lambda (#{type\ 4400}#
3046 (lambda (#{e\ 4406}#
3054 (#{syntax-type\ 3829}#
3058 (#{source-annotation\ 3786}# #{e\ 4406}#)
3062 (lambda (#{type\ 4419}#
3068 (if (memv #{type\ 4419}# (quote (begin-form)))
3069 ((lambda (#{tmp\ 4425}#)
3070 ((lambda (#{tmp\ 4426}#)
3072 (apply (lambda (#{_\ 4427}#) (#{chi-void\ 3838}#))
3074 ((lambda (#{tmp\ 4428}#)
3076 (apply (lambda (#{_\ 4429}#
3079 (#{chi-top-sequence\ 3826}#
3080 (cons #{e1\ 4430}# #{e2\ 4431}#)
3090 "source expression failed to match any pattern"
3094 '(any any . each-any)))))
3095 ($sc-dispatch #{tmp\ 4425}# (quote (any)))))
3097 (if (memv #{type\ 4419}# (quote (local-syntax-form)))
3098 (#{chi-local-syntax\ 3836}#
3105 (lambda (#{body\ 4433}#
3110 (#{chi-top-sequence\ 3826}#
3118 (if (memv #{type\ 4419}# (quote (eval-when-form)))
3119 ((lambda (#{tmp\ 4438}#)
3120 ((lambda (#{tmp\ 4439}#)
3122 (apply (lambda (#{_\ 4440}#
3126 (let ((#{when-list\ 4444}#
3127 (#{chi-when-list\ 3828}#
3134 (if (eq? #{m\ 4409}# (quote e))
3136 #{when-list\ 4444}#)
3137 (#{chi-top-sequence\ 3826}#
3145 (#{chi-void\ 3838}#))
3147 #{when-list\ 4444}#)
3148 (if (let ((#{t\ 4448}#
3150 #{when-list\ 4444}#)))
3153 (if (eq? #{m\ 4409}#
3156 #{when-list\ 4444}#)
3158 (#{chi-top-sequence\ 3826}#
3166 (if (memq #{m\ 4409}#
3168 (#{chi-top-sequence\ 3826}#
3176 (#{chi-void\ 3838}#)))
3177 (if (let ((#{t\ 4449}#
3179 #{when-list\ 4444}#)))
3182 (if (eq? #{m\ 4409}#
3185 #{when-list\ 4444}#)
3188 (#{top-level-eval-hook\ 3754}#
3189 (#{chi-top-sequence\ 3826}#
3198 (#{chi-void\ 3838}#))
3199 (#{chi-void\ 3838}#))))))
3203 "source expression failed to match any pattern"
3207 '(any each-any any . each-any))))
3209 (if (memv #{type\ 4419}#
3210 '(define-syntax-form))
3212 (#{id-var-name\ 3817}#
3216 (#{macros-only-env\ 3791}# #{r\ 4407}#)))
3217 (if (memv #{m\ 4409}# (quote (c)))
3218 (if (memq (quote compile) #{esew\ 4410}#)
3220 (#{chi-install-global\ 3827}#
3228 (#{top-level-eval-hook\ 3754}#
3231 (if (memq (quote load) #{esew\ 4410}#)
3233 (#{chi-void\ 3838}#))))
3234 (if (memq (quote load) #{esew\ 4410}#)
3235 (#{chi-install-global\ 3827}#
3242 (#{chi-void\ 3838}#)))
3243 (if (memv #{m\ 4409}# (quote (c&e)))
3245 (#{chi-install-global\ 3827}#
3253 (#{top-level-eval-hook\ 3754}#
3258 (if (memq (quote eval) #{esew\ 4410}#)
3259 (#{top-level-eval-hook\ 3754}#
3260 (#{chi-install-global\ 3827}#
3268 (#{chi-void\ 3838}#)))))
3269 (if (memv #{type\ 4419}# (quote (define-form)))
3271 (#{id-var-name\ 3817}#
3274 (let ((#{type\ 4455}#
3275 (#{binding-type\ 3787}#
3280 (if (memv #{type\ 4455}#
3281 '(global core macro module-ref))
3283 (if (if (not (module-local-variable
3288 (let ((#{old\ 4456}#
3295 (if (variable? #{old\ 4456}#)
3296 (variable-ref #{old\ 4456}#)
3299 (#{build-global-definition\ 3768}#
3308 (if (eq? #{m\ 4409}# (quote c&e))
3309 (#{top-level-eval-hook\ 3754}#
3313 (if (memv #{type\ 4455}#
3314 '(displaced-lexical))
3317 "identifier out of context"
3325 "cannot define keyword at top level"
3341 (if (eq? #{m\ 4409}# (quote c&e))
3342 (#{top-level-eval-hook\ 3754}#
3345 #{x\ 4458}#)))))))))))
3346 (#{syntax-type\ 3829}#
3347 (lambda (#{e\ 4459}#
3354 (if (symbol? #{e\ 4459}#)
3356 (#{id-var-name\ 3817}# #{e\ 4459}# #{w\ 4461}#)))
3362 (let ((#{type\ 4468}#
3363 (#{binding-type\ 3787}# #{b\ 4467}#)))
3364 (if (memv #{type\ 4468}# (quote (lexical)))
3367 (#{binding-value\ 3788}# #{b\ 4467}#)
3372 (if (memv #{type\ 4468}# (quote (global)))
3380 (if (memv #{type\ 4468}# (quote (macro)))
3381 (if #{for-car?\ 4465}#
3384 (#{binding-value\ 3788}# #{b\ 4467}#)
3389 (#{syntax-type\ 3829}#
3390 (#{chi-macro\ 3834}#
3391 (#{binding-value\ 3788}# #{b\ 4467}#)
3405 (#{binding-value\ 3788}# #{b\ 4467}#)
3409 #{mod\ 4464}#)))))))
3410 (if (pair? #{e\ 4459}#)
3411 (let ((#{first\ 4469}# (car #{e\ 4459}#)))
3414 (#{syntax-type\ 3829}#
3422 (lambda (#{ftype\ 4470}#
3428 (if (memv #{ftype\ 4470}# (quote (lexical)))
3436 (if (memv #{ftype\ 4470}# (quote (global)))
3439 (#{make-syntax-object\ 3778}#
3447 (if (memv #{ftype\ 4470}# (quote (macro)))
3448 (#{syntax-type\ 3829}#
3449 (#{chi-macro\ 3834}#
3462 (if (memv #{ftype\ 4470}# (quote (module-ref)))
3464 (lambda () (#{fval\ 4471}# #{e\ 4459}#))
3465 (lambda (#{sym\ 4476}# #{mod\ 4477}#)
3466 (#{syntax-type\ 3829}#
3473 #{for-car?\ 4465}#)))
3474 (if (memv #{ftype\ 4470}# (quote (core)))
3482 (if (memv #{ftype\ 4470}#
3491 (if (memv #{ftype\ 4470}# (quote (begin)))
3499 (if (memv #{ftype\ 4470}#
3508 (if (memv #{ftype\ 4470}#
3510 ((lambda (#{tmp\ 4478}#)
3511 ((lambda (#{tmp\ 4479}#)
3512 (if (if #{tmp\ 4479}#
3513 (apply (lambda (#{_\ 4480}#
3520 (apply (lambda (#{_\ 4483}#
3531 ((lambda (#{tmp\ 4486}#)
3532 (if (if #{tmp\ 4486}#
3533 (apply (lambda (#{_\ 4487}#
3540 (#{valid-bound-ids?\ 3820}#
3541 (#{lambda-var-list\ 3846}#
3546 (apply (lambda (#{_\ 4492}#
3557 (#{decorate-source\ 3758}#
3558 (cons '#(syntax-object
3656 eval-local-transformer
3692 set-ribcage-symnames!
3724 set-syntax-object-module!
3725 set-syntax-object-wrap!
3726 set-syntax-object-expression!
3727 syntax-object-module
3729 syntax-object-expression
3742 build-global-definition
3744 build-global-assignment
3745 build-global-reference
3747 build-lexical-assignment
3748 build-lexical-reference
3753 get-global-definition-hook
3754 put-global-definition-hook
4008 (cons #{args\ 4494}#
4018 ((lambda (#{tmp\ 4498}#)
4019 (if (if #{tmp\ 4498}#
4020 (apply (lambda (#{_\ 4499}#
4026 (apply (lambda (#{_\ 4501}#
4123 eval-local-transformer
4159 set-ribcage-symnames!
4191 set-syntax-object-module!
4192 set-syntax-object-wrap!
4193 set-syntax-object-expression!
4194 syntax-object-module
4196 syntax-object-expression
4209 build-global-definition
4211 build-global-assignment
4212 build-global-reference
4214 build-lexical-assignment
4215 build-lexical-reference
4220 get-global-definition-hook
4221 put-global-definition-hook
4563 eval-local-transformer
4599 set-ribcage-symnames!
4631 set-syntax-object-module!
4632 set-syntax-object-wrap!
4633 set-syntax-object-expression!
4634 syntax-object-module
4636 syntax-object-expression
4649 build-global-definition
4651 build-global-assignment
4652 build-global-reference
4654 build-lexical-assignment
4655 build-lexical-reference
4660 get-global-definition-hook
4661 put-global-definition-hook
5003 eval-local-transformer
5039 set-ribcage-symnames!
5071 set-syntax-object-module!
5072 set-syntax-object-wrap!
5073 set-syntax-object-expression!
5074 syntax-object-module
5076 syntax-object-expression
5089 build-global-definition
5091 build-global-assignment
5092 build-global-reference
5094 build-lexical-assignment
5095 build-lexical-reference
5100 get-global-definition-hook
5101 put-global-definition-hook
5360 "source expression failed to match any pattern"
5375 (if (memv #{ftype\ 4470}#
5377 ((lambda (#{tmp\ 4503}#)
5378 ((lambda (#{tmp\ 4504}#)
5379 (if (if #{tmp\ 4504}#
5380 (apply (lambda (#{_\ 4505}#
5387 (apply (lambda (#{_\ 4508}#
5400 "source expression failed to match any pattern"
5412 #{mod\ 4464}#))))))))))))))
5413 (if (#{syntax-object?\ 3779}# #{e\ 4459}#)
5414 (#{syntax-type\ 3829}#
5415 (#{syntax-object-expression\ 3780}# #{e\ 4459}#)
5417 (#{join-wraps\ 3814}#
5419 (#{syntax-object-wrap\ 3781}# #{e\ 4459}#))
5423 (#{syntax-object-module\ 3782}# #{e\ 4459}#)))
5424 (if #{t\ 4511}# #{t\ 4511}# #{mod\ 4464}#))
5426 (if (self-evaluating? #{e\ 4459}#)
5440 #{mod\ 4464}#)))))))
5441 (#{chi-when-list\ 3828}#
5442 (lambda (#{e\ 4512}# #{when-list\ 4513}# #{w\ 4514}#)
5443 (letrec ((#{f\ 4515}#
5444 (lambda (#{when-list\ 4516}# #{situations\ 4517}#)
5445 (if (null? #{when-list\ 4516}#)
5446 #{situations\ 4517}#
5448 (cdr #{when-list\ 4516}#)
5449 (cons (let ((#{x\ 4518}#
5450 (car #{when-list\ 4516}#)))
5451 (if (#{free-id=?\ 3818}#
5465 #(f when-list situations)
5466 #((top) (top) (top))
5471 #((top) (top) (top))
5483 eval-local-transformer
5519 set-ribcage-symnames!
5551 set-syntax-object-module!
5552 set-syntax-object-wrap!
5553 set-syntax-object-expression!
5554 syntax-object-module
5556 syntax-object-expression
5569 build-global-definition
5571 build-global-assignment
5572 build-global-reference
5574 build-lexical-assignment
5575 build-lexical-reference
5580 get-global-definition-hook
5581 put-global-definition-hook
5826 (define-structure and-map*)
5831 (if (#{free-id=?\ 3818}#
5845 #(f when-list situations)
5846 #((top) (top) (top))
5851 #((top) (top) (top))
5863 eval-local-transformer
5899 set-ribcage-symnames!
5931 set-syntax-object-module!
5932 set-syntax-object-wrap!
5933 set-syntax-object-expression!
5934 syntax-object-module
5936 syntax-object-expression
5949 build-global-definition
5951 build-global-assignment
5952 build-global-reference
5954 build-lexical-assignment
5955 build-lexical-reference
5960 get-global-definition-hook
5961 put-global-definition-hook
6212 (if (#{free-id=?\ 3818}#
6229 #((top) (top) (top))
6234 #((top) (top) (top))
6246 eval-local-transformer
6282 set-ribcage-symnames!
6314 set-syntax-object-module!
6315 set-syntax-object-wrap!
6316 set-syntax-object-expression!
6317 syntax-object-module
6319 syntax-object-expression
6332 build-global-definition
6334 build-global-assignment
6335 build-global-reference
6337 build-lexical-assignment
6338 build-lexical-reference
6343 get-global-definition-hook
6344 put-global-definition-hook
6603 #{situations\ 4517}#))))))
6604 (#{f\ 4515}# #{when-list\ 4513}# (quote ())))))
6605 (#{chi-install-global\ 3827}#
6606 (lambda (#{name\ 4519}# #{e\ 4520}#)
6607 (#{build-global-definition\ 3768}#
6610 (if (let ((#{v\ 4521}#
6615 (if (variable-bound? #{v\ 4521}#)
6616 (if (macro? (variable-ref #{v\ 4521}#))
6617 (not (eq? (macro-type (variable-ref #{v\ 4521}#))
6622 (#{build-application\ 3760}#
6624 (#{build-primref\ 3772}#
6626 'make-extended-syncase-macro)
6627 (list (#{build-application\ 3760}#
6629 (#{build-primref\ 3772}# #f (quote module-ref))
6630 (list (#{build-application\ 3760}#
6632 (#{build-primref\ 3772}#
6636 (#{build-data\ 3773}# #f #{name\ 4519}#)))
6637 (#{build-data\ 3773}# #f (quote macro))
6638 (#{build-application\ 3760}#
6640 (#{build-primref\ 3772}# #f (quote cons))
6642 (#{build-application\ 3760}#
6644 (#{build-primref\ 3772}#
6647 (list (#{build-application\ 3760}#
6649 (#{build-primref\ 3772}#
6653 (#{build-application\ 3760}#
6655 (#{build-primref\ 3772}#
6657 'make-syncase-macro)
6658 (list (#{build-data\ 3773}# #f (quote macro))
6659 (#{build-application\ 3760}#
6661 (#{build-primref\ 3772}# #f (quote cons))
6663 (#{build-application\ 3760}#
6665 (#{build-primref\ 3772}#
6668 (list (#{build-application\ 3760}#
6670 (#{build-primref\ 3772}#
6674 (#{chi-top-sequence\ 3826}#
6675 (lambda (#{body\ 4522}#
6682 (#{build-sequence\ 3774}#
6684 (letrec ((#{dobody\ 4529}#
6685 (lambda (#{body\ 4530}#
6691 (if (null? #{body\ 4530}#)
6693 (let ((#{first\ 4536}#
6695 (car #{body\ 4530}#)
6701 (cons #{first\ 4536}#
6703 (cdr #{body\ 4530}#)
6708 #{mod\ 4535}#)))))))
6716 (#{chi-sequence\ 3825}#
6717 (lambda (#{body\ 4537}#
6722 (#{build-sequence\ 3774}#
6724 (letrec ((#{dobody\ 4542}#
6725 (lambda (#{body\ 4543}#
6729 (if (null? #{body\ 4543}#)
6731 (let ((#{first\ 4547}#
6733 (car #{body\ 4543}#)
6737 (cons #{first\ 4547}#
6739 (cdr #{body\ 4543}#)
6742 #{mod\ 4546}#)))))))
6748 (#{source-wrap\ 3824}#
6749 (lambda (#{x\ 4548}#
6754 (#{decorate-source\ 3758}#
6760 (lambda (#{x\ 4552}# #{w\ 4553}# #{defmod\ 4554}#)
6761 (if (if (null? (#{wrap-marks\ 3798}# #{w\ 4553}#))
6762 (null? (#{wrap-subst\ 3799}# #{w\ 4553}#))
6765 (if (#{syntax-object?\ 3779}# #{x\ 4552}#)
6766 (#{make-syntax-object\ 3778}#
6767 (#{syntax-object-expression\ 3780}# #{x\ 4552}#)
6768 (#{join-wraps\ 3814}#
6770 (#{syntax-object-wrap\ 3781}# #{x\ 4552}#))
6771 (#{syntax-object-module\ 3782}# #{x\ 4552}#))
6772 (if (null? #{x\ 4552}#)
6774 (#{make-syntax-object\ 3778}#
6777 #{defmod\ 4554}#))))))
6778 (#{bound-id-member?\ 3822}#
6779 (lambda (#{x\ 4555}# #{list\ 4556}#)
6780 (if (not (null? #{list\ 4556}#))
6782 (#{bound-id=?\ 3819}#
6784 (car #{list\ 4556}#))))
6787 (#{bound-id-member?\ 3822}#
6789 (cdr #{list\ 4556}#))))
6791 (#{distinct-bound-ids?\ 3821}#
6792 (lambda (#{ids\ 4558}#)
6793 (letrec ((#{distinct?\ 4559}#
6794 (lambda (#{ids\ 4560}#)
6795 (let ((#{t\ 4561}# (null? #{ids\ 4560}#)))
6798 (if (not (#{bound-id-member?\ 3822}#
6800 (cdr #{ids\ 4560}#)))
6801 (#{distinct?\ 4559}# (cdr #{ids\ 4560}#))
6803 (#{distinct?\ 4559}# #{ids\ 4558}#))))
6804 (#{valid-bound-ids?\ 3820}#
6805 (lambda (#{ids\ 4562}#)
6806 (if (letrec ((#{all-ids?\ 4563}#
6807 (lambda (#{ids\ 4564}#)
6808 (let ((#{t\ 4565}# (null? #{ids\ 4564}#)))
6811 (if (#{id?\ 3795}# (car #{ids\ 4564}#))
6812 (#{all-ids?\ 4563}# (cdr #{ids\ 4564}#))
6814 (#{all-ids?\ 4563}# #{ids\ 4562}#))
6815 (#{distinct-bound-ids?\ 3821}# #{ids\ 4562}#)
6817 (#{bound-id=?\ 3819}#
6818 (lambda (#{i\ 4566}# #{j\ 4567}#)
6819 (if (if (#{syntax-object?\ 3779}# #{i\ 4566}#)
6820 (#{syntax-object?\ 3779}# #{j\ 4567}#)
6822 (if (eq? (#{syntax-object-expression\ 3780}# #{i\ 4566}#)
6823 (#{syntax-object-expression\ 3780}# #{j\ 4567}#))
6824 (#{same-marks?\ 3816}#
6825 (#{wrap-marks\ 3798}#
6826 (#{syntax-object-wrap\ 3781}# #{i\ 4566}#))
6827 (#{wrap-marks\ 3798}#
6828 (#{syntax-object-wrap\ 3781}# #{j\ 4567}#)))
6830 (eq? #{i\ 4566}# #{j\ 4567}#))))
6831 (#{free-id=?\ 3818}#
6832 (lambda (#{i\ 4568}# #{j\ 4569}#)
6833 (if (eq? (let ((#{x\ 4570}# #{i\ 4568}#))
6834 (if (#{syntax-object?\ 3779}# #{x\ 4570}#)
6835 (#{syntax-object-expression\ 3780}# #{x\ 4570}#)
6837 (let ((#{x\ 4571}# #{j\ 4569}#))
6838 (if (#{syntax-object?\ 3779}# #{x\ 4571}#)
6839 (#{syntax-object-expression\ 3780}# #{x\ 4571}#)
6841 (eq? (#{id-var-name\ 3817}# #{i\ 4568}# (quote (())))
6842 (#{id-var-name\ 3817}# #{j\ 4569}# (quote (()))))
6844 (#{id-var-name\ 3817}#
6845 (lambda (#{id\ 4572}# #{w\ 4573}#)
6846 (letrec ((#{search-vector-rib\ 4576}#
6847 (lambda (#{sym\ 4582}#
6853 (vector-length #{symnames\ 4585}#)))
6854 (letrec ((#{f\ 4588}#
6855 (lambda (#{i\ 4589}#)
6861 (cdr #{subst\ 4583}#)
6863 (if (if (eq? (vector-ref
6867 (#{same-marks?\ 3816}#
6870 (#{ribcage-marks\ 3805}#
6876 (#{ribcage-labels\ 3806}#
6885 (#{search-list-rib\ 4575}#
6886 (lambda (#{sym\ 4590}#
6891 (letrec ((#{f\ 4595}#
6892 (lambda (#{symnames\ 4596}# #{i\ 4597}#)
6893 (if (null? #{symnames\ 4596}#)
6896 (cdr #{subst\ 4591}#)
6898 (if (if (eq? (car #{symnames\ 4596}#)
6900 (#{same-marks?\ 3816}#
6903 (#{ribcage-marks\ 3805}#
6909 (#{ribcage-labels\ 3806}#
6914 (cdr #{symnames\ 4596}#)
6918 (#{f\ 4595}# #{symnames\ 4593}# 0))))
6920 (lambda (#{sym\ 4598}#
6923 (if (null? #{subst\ 4599}#)
6924 (values #f #{marks\ 4600}#)
6925 (let ((#{fst\ 4601}# (car #{subst\ 4599}#)))
6926 (if (eq? #{fst\ 4601}# (quote shift))
6929 (cdr #{subst\ 4599}#)
6930 (cdr #{marks\ 4600}#))
6931 (let ((#{symnames\ 4602}#
6932 (#{ribcage-symnames\ 3804}#
6934 (if (vector? #{symnames\ 4602}#)
6935 (#{search-vector-rib\ 4576}#
6941 (#{search-list-rib\ 4575}#
6946 #{fst\ 4601}#)))))))))
6947 (if (symbol? #{id\ 4572}#)
6953 (#{wrap-subst\ 3799}# #{w\ 4573}#)
6954 (#{wrap-marks\ 3798}# #{w\ 4573}#)))
6955 (lambda (#{x\ 4604}# . #{ignore\ 4605}#)
6957 (if #{t\ 4603}# #{t\ 4603}# #{id\ 4572}#))
6958 (if (#{syntax-object?\ 3779}# #{id\ 4572}#)
6960 (#{syntax-object-expression\ 3780}# #{id\ 4572}#))
6962 (#{syntax-object-wrap\ 3781}# #{id\ 4572}#)))
6963 (let ((#{marks\ 4608}#
6964 (#{join-marks\ 3815}#
6965 (#{wrap-marks\ 3798}# #{w\ 4573}#)
6966 (#{wrap-marks\ 3798}# #{w1\ 4607}#))))
6971 (#{wrap-subst\ 3799}# #{w\ 4573}#)
6973 (lambda (#{new-id\ 4609}# #{marks\ 4610}#)
6974 (let ((#{t\ 4611}# #{new-id\ 4609}#))
6982 (#{wrap-subst\ 3799}#
6985 (lambda (#{x\ 4613}#
6991 #{id\ 4606}#))))))))
6996 (#{same-marks?\ 3816}#
6997 (lambda (#{x\ 4615}# #{y\ 4616}#)
6998 (let ((#{t\ 4617}# (eq? #{x\ 4615}# #{y\ 4616}#)))
7001 (if (not (null? #{x\ 4615}#))
7002 (if (not (null? #{y\ 4616}#))
7003 (if (eq? (car #{x\ 4615}#) (car #{y\ 4616}#))
7004 (#{same-marks?\ 3816}#
7010 (#{join-marks\ 3815}#
7011 (lambda (#{m1\ 4618}# #{m2\ 4619}#)
7012 (#{smart-append\ 3813}#
7015 (#{join-wraps\ 3814}#
7016 (lambda (#{w1\ 4620}# #{w2\ 4621}#)
7018 (#{wrap-marks\ 3798}# #{w1\ 4620}#))
7020 (#{wrap-subst\ 3799}# #{w1\ 4620}#)))
7021 (if (null? #{m1\ 4622}#)
7022 (if (null? #{s1\ 4623}#)
7024 (#{make-wrap\ 3797}#
7025 (#{wrap-marks\ 3798}# #{w2\ 4621}#)
7026 (#{smart-append\ 3813}#
7028 (#{wrap-subst\ 3799}# #{w2\ 4621}#))))
7029 (#{make-wrap\ 3797}#
7030 (#{smart-append\ 3813}#
7032 (#{wrap-marks\ 3798}# #{w2\ 4621}#))
7033 (#{smart-append\ 3813}#
7035 (#{wrap-subst\ 3799}# #{w2\ 4621}#)))))))
7036 (#{smart-append\ 3813}#
7037 (lambda (#{m1\ 4624}# #{m2\ 4625}#)
7038 (if (null? #{m2\ 4625}#)
7040 (append #{m1\ 4624}# #{m2\ 4625}#))))
7041 (#{make-binding-wrap\ 3812}#
7042 (lambda (#{ids\ 4626}# #{labels\ 4627}# #{w\ 4628}#)
7043 (if (null? #{ids\ 4626}#)
7045 (#{make-wrap\ 3797}#
7046 (#{wrap-marks\ 3798}# #{w\ 4628}#)
7047 (cons (let ((#{labelvec\ 4629}#
7048 (list->vector #{labels\ 4627}#)))
7050 (vector-length #{labelvec\ 4629}#)))
7051 (let ((#{symnamevec\ 4631}#
7052 (make-vector #{n\ 4630}#))
7054 (make-vector #{n\ 4630}#)))
7056 (letrec ((#{f\ 4633}#
7057 (lambda (#{ids\ 4634}# #{i\ 4635}#)
7058 (if (not (null? #{ids\ 4634}#))
7061 (#{id-sym-name&marks\ 3796}#
7064 (lambda (#{symname\ 4636}#
7068 #{symnamevec\ 4631}#
7080 (#{f\ 4633}# #{ids\ 4626}# 0))
7081 (#{make-ribcage\ 3802}#
7082 #{symnamevec\ 4631}#
7084 #{labelvec\ 4629}#)))))
7085 (#{wrap-subst\ 3799}# #{w\ 4628}#))))))
7086 (#{extend-ribcage!\ 3811}#
7087 (lambda (#{ribcage\ 4638}# #{id\ 4639}# #{label\ 4640}#)
7089 (#{set-ribcage-symnames!\ 3807}#
7091 (cons (#{syntax-object-expression\ 3780}# #{id\ 4639}#)
7092 (#{ribcage-symnames\ 3804}# #{ribcage\ 4638}#)))
7093 (#{set-ribcage-marks!\ 3808}#
7095 (cons (#{wrap-marks\ 3798}#
7096 (#{syntax-object-wrap\ 3781}# #{id\ 4639}#))
7097 (#{ribcage-marks\ 3805}# #{ribcage\ 4638}#)))
7098 (#{set-ribcage-labels!\ 3809}#
7100 (cons #{label\ 4640}#
7101 (#{ribcage-labels\ 3806}# #{ribcage\ 4638}#))))))
7102 (#{anti-mark\ 3810}#
7103 (lambda (#{w\ 4641}#)
7104 (#{make-wrap\ 3797}#
7105 (cons #f (#{wrap-marks\ 3798}# #{w\ 4641}#))
7107 (#{wrap-subst\ 3799}# #{w\ 4641}#)))))
7108 (#{set-ribcage-labels!\ 3809}#
7109 (lambda (#{x\ 4642}# #{update\ 4643}#)
7110 (vector-set! #{x\ 4642}# 3 #{update\ 4643}#)))
7111 (#{set-ribcage-marks!\ 3808}#
7112 (lambda (#{x\ 4644}# #{update\ 4645}#)
7113 (vector-set! #{x\ 4644}# 2 #{update\ 4645}#)))
7114 (#{set-ribcage-symnames!\ 3807}#
7115 (lambda (#{x\ 4646}# #{update\ 4647}#)
7116 (vector-set! #{x\ 4646}# 1 #{update\ 4647}#)))
7117 (#{ribcage-labels\ 3806}#
7118 (lambda (#{x\ 4648}#) (vector-ref #{x\ 4648}# 3)))
7119 (#{ribcage-marks\ 3805}#
7120 (lambda (#{x\ 4649}#) (vector-ref #{x\ 4649}# 2)))
7121 (#{ribcage-symnames\ 3804}#
7122 (lambda (#{x\ 4650}#) (vector-ref #{x\ 4650}# 1)))
7124 (lambda (#{x\ 4651}#)
7125 (if (vector? #{x\ 4651}#)
7126 (if (= (vector-length #{x\ 4651}#) 4)
7127 (eq? (vector-ref #{x\ 4651}# 0) (quote ribcage))
7130 (#{make-ribcage\ 3802}#
7131 (lambda (#{symnames\ 4652}#
7139 (#{gen-labels\ 3801}#
7140 (lambda (#{ls\ 4655}#)
7141 (if (null? #{ls\ 4655}#)
7143 (cons (#{gen-label\ 3800}#)
7144 (#{gen-labels\ 3801}# (cdr #{ls\ 4655}#))))))
7145 (#{gen-label\ 3800}# (lambda () (string #\i)))
7146 (#{wrap-subst\ 3799}# cdr)
7147 (#{wrap-marks\ 3798}# car)
7148 (#{make-wrap\ 3797}# cons)
7149 (#{id-sym-name&marks\ 3796}#
7150 (lambda (#{x\ 4656}# #{w\ 4657}#)
7151 (if (#{syntax-object?\ 3779}# #{x\ 4656}#)
7153 (#{syntax-object-expression\ 3780}# #{x\ 4656}#)
7154 (#{join-marks\ 3815}#
7155 (#{wrap-marks\ 3798}# #{w\ 4657}#)
7156 (#{wrap-marks\ 3798}#
7157 (#{syntax-object-wrap\ 3781}# #{x\ 4656}#))))
7160 (#{wrap-marks\ 3798}# #{w\ 4657}#)))))
7162 (lambda (#{x\ 4658}#)
7163 (if (symbol? #{x\ 4658}#)
7165 (if (#{syntax-object?\ 3779}# #{x\ 4658}#)
7167 (#{syntax-object-expression\ 3780}# #{x\ 4658}#))
7169 (#{nonsymbol-id?\ 3794}#
7170 (lambda (#{x\ 4659}#)
7171 (if (#{syntax-object?\ 3779}# #{x\ 4659}#)
7173 (#{syntax-object-expression\ 3780}# #{x\ 4659}#))
7175 (#{global-extend\ 3793}#
7176 (lambda (#{type\ 4660}# #{sym\ 4661}# #{val\ 4662}#)
7177 (#{put-global-definition-hook\ 3756}#
7182 (lambda (#{x\ 4663}# #{r\ 4664}# #{mod\ 4665}#)
7183 (let ((#{t\ 4666}# (assq #{x\ 4663}# #{r\ 4664}#)))
7186 (if (symbol? #{x\ 4663}#)
7188 (#{get-global-definition-hook\ 3757}#
7191 (if #{t\ 4667}# #{t\ 4667}# (quote (global))))
7192 '(displaced-lexical))))))
7193 (#{macros-only-env\ 3791}#
7194 (lambda (#{r\ 4668}#)
7195 (if (null? #{r\ 4668}#)
7197 (let ((#{a\ 4669}# (car #{r\ 4668}#)))
7198 (if (eq? (cadr #{a\ 4669}#) (quote macro))
7200 (#{macros-only-env\ 3791}# (cdr #{r\ 4668}#)))
7201 (#{macros-only-env\ 3791}# (cdr #{r\ 4668}#)))))))
7202 (#{extend-var-env\ 3790}#
7203 (lambda (#{labels\ 4670}# #{vars\ 4671}# #{r\ 4672}#)
7204 (if (null? #{labels\ 4670}#)
7206 (#{extend-var-env\ 3790}#
7207 (cdr #{labels\ 4670}#)
7208 (cdr #{vars\ 4671}#)
7209 (cons (cons (car #{labels\ 4670}#)
7210 (cons (quote lexical) (car #{vars\ 4671}#)))
7212 (#{extend-env\ 3789}#
7213 (lambda (#{labels\ 4673}# #{bindings\ 4674}# #{r\ 4675}#)
7214 (if (null? #{labels\ 4673}#)
7216 (#{extend-env\ 3789}#
7217 (cdr #{labels\ 4673}#)
7218 (cdr #{bindings\ 4674}#)
7219 (cons (cons (car #{labels\ 4673}#)
7220 (car #{bindings\ 4674}#))
7222 (#{binding-value\ 3788}# cdr)
7223 (#{binding-type\ 3787}# car)
7224 (#{source-annotation\ 3786}#
7225 (lambda (#{x\ 4676}#)
7226 (if (#{syntax-object?\ 3779}# #{x\ 4676}#)
7227 (#{source-annotation\ 3786}#
7228 (#{syntax-object-expression\ 3780}# #{x\ 4676}#))
7229 (if (pair? #{x\ 4676}#)
7230 (let ((#{props\ 4677}# (source-properties #{x\ 4676}#)))
7231 (if (pair? #{props\ 4677}#) #{props\ 4677}# #f))
7233 (#{set-syntax-object-module!\ 3785}#
7234 (lambda (#{x\ 4678}# #{update\ 4679}#)
7235 (vector-set! #{x\ 4678}# 3 #{update\ 4679}#)))
7236 (#{set-syntax-object-wrap!\ 3784}#
7237 (lambda (#{x\ 4680}# #{update\ 4681}#)
7238 (vector-set! #{x\ 4680}# 2 #{update\ 4681}#)))
7239 (#{set-syntax-object-expression!\ 3783}#
7240 (lambda (#{x\ 4682}# #{update\ 4683}#)
7241 (vector-set! #{x\ 4682}# 1 #{update\ 4683}#)))
7242 (#{syntax-object-module\ 3782}#
7243 (lambda (#{x\ 4684}#) (vector-ref #{x\ 4684}# 3)))
7244 (#{syntax-object-wrap\ 3781}#
7245 (lambda (#{x\ 4685}#) (vector-ref #{x\ 4685}# 2)))
7246 (#{syntax-object-expression\ 3780}#
7247 (lambda (#{x\ 4686}#) (vector-ref #{x\ 4686}# 1)))
7248 (#{syntax-object?\ 3779}#
7249 (lambda (#{x\ 4687}#)
7250 (if (vector? #{x\ 4687}#)
7251 (if (= (vector-length #{x\ 4687}#) 4)
7252 (eq? (vector-ref #{x\ 4687}# 0)
7256 (#{make-syntax-object\ 3778}#
7257 (lambda (#{expression\ 4688}#
7262 #{expression\ 4688}#
7265 (#{build-letrec\ 3777}#
7266 (lambda (#{src\ 4691}#
7271 (if (null? #{vars\ 4693}#)
7273 (let ((#{atom-key\ 4696}# (fluid-ref #{*mode*\ 3749}#)))
7274 (if (memv #{atom-key\ 4696}# (quote (c)))
7277 #{maybe-name-value!\ 3767}#
7280 ((@ (language tree-il) make-letrec)
7285 #{body-exp\ 4695}#))
7286 (#{decorate-source\ 3758}#
7288 (map list #{vars\ 4693}# #{val-exps\ 4694}#)
7291 (#{build-named-let\ 3776}#
7292 (lambda (#{src\ 4697}#
7297 (let ((#{f\ 4702}# (car #{vars\ 4699}#))
7298 (#{f-name\ 4703}# (car #{ids\ 4698}#))
7299 (#{vars\ 4704}# (cdr #{vars\ 4699}#))
7300 (#{ids\ 4705}# (cdr #{ids\ 4698}#)))
7301 (let ((#{atom-key\ 4706}# (fluid-ref #{*mode*\ 3749}#)))
7302 (if (memv #{atom-key\ 4706}# (quote (c)))
7303 (let ((#{proc\ 4707}#
7304 (#{build-simple-lambda\ 3769}#
7310 #{body-exp\ 4701}#)))
7312 (#{maybe-name-value!\ 3767}#
7316 #{maybe-name-value!\ 3767}#
7319 ((@ (language tree-il) make-letrec)
7321 (list #{f-name\ 4703}#)
7323 (list #{proc\ 4707}#)
7324 (#{build-application\ 3760}#
7326 (#{build-lexical-reference\ 3762}#
7331 #{val-exps\ 4700}#))))
7332 (#{decorate-source\ 3758}#
7334 (list (list #{f\ 4702}#
7337 #{body-exp\ 4701}#)))
7338 (cons #{f\ 4702}# #{val-exps\ 4700}#))
7340 (#{build-let\ 3775}#
7341 (lambda (#{src\ 4708}#
7346 (if (null? #{vars\ 4710}#)
7348 (let ((#{atom-key\ 4713}# (fluid-ref #{*mode*\ 3749}#)))
7349 (if (memv #{atom-key\ 4713}# (quote (c)))
7352 #{maybe-name-value!\ 3767}#
7355 ((@ (language tree-il) make-let)
7360 #{body-exp\ 4712}#))
7361 (#{decorate-source\ 3758}#
7363 (map list #{vars\ 4710}# #{val-exps\ 4711}#)
7366 (#{build-sequence\ 3774}#
7367 (lambda (#{src\ 4714}# #{exps\ 4715}#)
7368 (if (null? (cdr #{exps\ 4715}#))
7369 (car #{exps\ 4715}#)
7370 (let ((#{atom-key\ 4716}# (fluid-ref #{*mode*\ 3749}#)))
7371 (if (memv #{atom-key\ 4716}# (quote (c)))
7372 ((@ (language tree-il) make-sequence)
7375 (#{decorate-source\ 3758}#
7376 (cons (quote begin) #{exps\ 4715}#)
7378 (#{build-data\ 3773}#
7379 (lambda (#{src\ 4717}# #{exp\ 4718}#)
7380 (let ((#{atom-key\ 4719}# (fluid-ref #{*mode*\ 3749}#)))
7381 (if (memv #{atom-key\ 4719}# (quote (c)))
7382 ((@ (language tree-il) make-const)
7385 (#{decorate-source\ 3758}#
7386 (if (if (self-evaluating? #{exp\ 4718}#)
7387 (not (vector? #{exp\ 4718}#))
7390 (list (quote quote) #{exp\ 4718}#))
7392 (#{build-primref\ 3772}#
7393 (lambda (#{src\ 4720}# #{name\ 4721}#)
7395 (module-name (current-module))
7397 (let ((#{atom-key\ 4722}# (fluid-ref #{*mode*\ 3749}#)))
7398 (if (memv #{atom-key\ 4722}# (quote (c)))
7399 ((@ (language tree-il) make-toplevel-ref)
7402 (#{decorate-source\ 3758}#
7405 (let ((#{atom-key\ 4723}# (fluid-ref #{*mode*\ 3749}#)))
7406 (if (memv #{atom-key\ 4723}# (quote (c)))
7407 ((@ (language tree-il) make-module-ref)
7412 (#{decorate-source\ 3758}#
7413 (list (quote @@) (quote (guile)) #{name\ 4721}#)
7415 (#{build-lambda-case\ 3771}#
7416 (lambda (#{src\ 4724}#
7424 #{else-case\ 4732}#)
7425 (let ((#{atom-key\ 4733}# (fluid-ref #{*mode*\ 3749}#)))
7426 (if (memv #{atom-key\ 4733}# (quote (c)))
7427 ((@ (language tree-il) make-lambda-case)
7436 #{else-case\ 4732}#)
7437 (let ((#{nreq\ 4734}# (length #{req\ 4725}#)))
7438 (let ((#{nopt\ 4735}#
7439 (if #{opt\ 4726}# (length #{opt\ 4726}#) 0)))
7440 (let ((#{rest-idx\ 4736}#
7442 (+ #{nreq\ 4734}# #{nopt\ 4735}#)
7444 (let ((#{allow-other-keys?\ 4737}#
7445 (if #{kw\ 4728}# (car #{kw\ 4728}#) #f)))
7446 (let ((#{kw-indices\ 4738}#
7447 (map (lambda (#{x\ 4739}#)
7448 (cons (car #{x\ 4739}#)
7451 (caddr #{x\ 4739}#))))
7455 (let ((#{nargs\ 4740}#
7459 (if #{rest\ 4727}# 1 0))
7462 #{kw-indices\ 4738}#)))))
7466 (length #{vars\ 4730}#)
7468 (length #{inits\ 4729}#)
7469 (if #{rest\ 4727}# 1 0)))))
7472 (error "something went wrong"
7481 #{kw-indices\ 4738}#
7483 (#{decorate-source\ 3758}#
7484 (cons (list (cons '(@@ (ice-9 optargs)
7487 (list #{nreq\ 4734}#
7491 #{allow-other-keys?\ 4737}#
7492 #{kw-indices\ 4738}#))
7494 (map (lambda (#{i\ 4742}#)
7509 #{else-case\ 4732}#))
7513 (error "wrong number of arguments"
7515 #{src\ 4724}#))))))))))))
7516 (#{build-case-lambda\ 3770}#
7517 (lambda (#{src\ 4744}#
7520 (let ((#{atom-key\ 4747}# (fluid-ref #{*mode*\ 3749}#)))
7521 (if (memv #{atom-key\ 4747}# (quote (c)))
7522 ((@ (language tree-il) make-lambda)
7524 (if #{docstring\ 4745}#
7525 (list (cons (quote documentation) #{docstring\ 4745}#))
7528 (#{decorate-source\ 3758}#
7532 (if #{docstring\ 4745}#
7533 (list #{docstring\ 4745}#)
7535 (list (cons (quote cond) #{body\ 4746}#)))))
7537 (#{build-simple-lambda\ 3769}#
7538 (lambda (#{src\ 4748}#
7544 (let ((#{atom-key\ 4754}# (fluid-ref #{*mode*\ 3749}#)))
7545 (if (memv #{atom-key\ 4754}# (quote (c)))
7546 ((@ (language tree-il) make-lambda)
7548 (if #{docstring\ 4752}#
7549 (list (cons (quote documentation) #{docstring\ 4752}#))
7551 ((@ (language tree-il) make-lambda-case)
7561 (#{decorate-source\ 3758}#
7563 (cons (if #{rest\ 4750}#
7564 (apply cons* #{vars\ 4751}#)
7567 (if #{docstring\ 4752}#
7568 (list #{docstring\ 4752}#)
7570 (list #{exp\ 4753}#))))
7572 (#{build-global-definition\ 3768}#
7573 (lambda (#{source\ 4755}# #{var\ 4756}# #{exp\ 4757}#)
7574 (let ((#{atom-key\ 4758}# (fluid-ref #{*mode*\ 3749}#)))
7575 (if (memv #{atom-key\ 4758}# (quote (c)))
7577 (#{maybe-name-value!\ 3767}#
7580 ((@ (language tree-il) make-toplevel-define)
7584 (#{decorate-source\ 3758}#
7585 (list (quote define) #{var\ 4756}# #{exp\ 4757}#)
7586 #{source\ 4755}#)))))
7587 (#{maybe-name-value!\ 3767}#
7588 (lambda (#{name\ 4759}# #{val\ 4760}#)
7589 (if ((@ (language tree-il) lambda?) #{val\ 4760}#)
7590 (let ((#{meta\ 4761}#
7591 ((@ (language tree-il) lambda-meta)
7593 (if (not (assq (quote name) #{meta\ 4761}#))
7594 ((setter (@ (language tree-il) lambda-meta))
7598 #{meta\ 4761}#)))))))
7599 (#{build-global-assignment\ 3766}#
7600 (lambda (#{source\ 4762}#
7604 (#{analyze-variable\ 3764}#
7607 (lambda (#{mod\ 4766}# #{var\ 4767}# #{public?\ 4768}#)
7608 (let ((#{atom-key\ 4769}# (fluid-ref #{*mode*\ 3749}#)))
7609 (if (memv #{atom-key\ 4769}# (quote (c)))
7610 ((@ (language tree-il) make-module-set)
7616 (#{decorate-source\ 3758}#
7618 (list (if #{public?\ 4768}#
7624 #{source\ 4762}#))))
7625 (lambda (#{var\ 4770}#)
7626 (let ((#{atom-key\ 4771}# (fluid-ref #{*mode*\ 3749}#)))
7627 (if (memv #{atom-key\ 4771}# (quote (c)))
7628 ((@ (language tree-il) make-toplevel-set)
7632 (#{decorate-source\ 3758}#
7633 (list (quote set!) #{var\ 4770}# #{exp\ 4764}#)
7634 #{source\ 4762}#)))))))
7635 (#{build-global-reference\ 3765}#
7636 (lambda (#{source\ 4772}# #{var\ 4773}# #{mod\ 4774}#)
7637 (#{analyze-variable\ 3764}#
7640 (lambda (#{mod\ 4775}# #{var\ 4776}# #{public?\ 4777}#)
7641 (let ((#{atom-key\ 4778}# (fluid-ref #{*mode*\ 3749}#)))
7642 (if (memv #{atom-key\ 4778}# (quote (c)))
7643 ((@ (language tree-il) make-module-ref)
7648 (#{decorate-source\ 3758}#
7649 (list (if #{public?\ 4777}# (quote @) (quote @@))
7652 #{source\ 4772}#))))
7653 (lambda (#{var\ 4779}#)
7654 (let ((#{atom-key\ 4780}# (fluid-ref #{*mode*\ 3749}#)))
7655 (if (memv #{atom-key\ 4780}# (quote (c)))
7656 ((@ (language tree-il) make-toplevel-ref)
7659 (#{decorate-source\ 3758}#
7661 #{source\ 4772}#)))))))
7662 (#{analyze-variable\ 3764}#
7663 (lambda (#{mod\ 4781}#
7665 #{modref-cont\ 4783}#
7666 #{bare-cont\ 4784}#)
7667 (if (not #{mod\ 4781}#)
7668 (#{bare-cont\ 4784}# #{var\ 4782}#)
7669 (let ((#{kind\ 4785}# (car #{mod\ 4781}#))
7670 (#{mod\ 4786}# (cdr #{mod\ 4781}#)))
7671 (if (memv #{kind\ 4785}# (quote (public)))
7672 (#{modref-cont\ 4783}#
7676 (if (memv #{kind\ 4785}# (quote (private)))
7679 (module-name (current-module))))
7680 (#{modref-cont\ 4783}#
7684 (#{bare-cont\ 4784}# #{var\ 4782}#))
7685 (if (memv #{kind\ 4785}# (quote (bare)))
7686 (#{bare-cont\ 4784}# #{var\ 4782}#)
7687 (if (memv #{kind\ 4785}# (quote (hygiene)))
7688 (if (if (not (equal?
7690 (module-name (current-module))))
7692 (resolve-module #{mod\ 4786}#)
7695 (#{modref-cont\ 4783}#
7699 (#{bare-cont\ 4784}# #{var\ 4782}#))
7704 #{mod\ 4786}#)))))))))
7705 (#{build-lexical-assignment\ 3763}#
7706 (lambda (#{source\ 4787}#
7710 (let ((#{atom-key\ 4791}# (fluid-ref #{*mode*\ 3749}#)))
7711 (if (memv #{atom-key\ 4791}# (quote (c)))
7712 ((@ (language tree-il) make-lexical-set)
7717 (#{decorate-source\ 3758}#
7718 (list (quote set!) #{var\ 4789}# #{exp\ 4790}#)
7719 #{source\ 4787}#)))))
7720 (#{build-lexical-reference\ 3762}#
7721 (lambda (#{type\ 4792}#
7725 (let ((#{atom-key\ 4796}# (fluid-ref #{*mode*\ 3749}#)))
7726 (if (memv #{atom-key\ 4796}# (quote (c)))
7727 ((@ (language tree-il) make-lexical-ref)
7731 (#{decorate-source\ 3758}#
7733 #{source\ 4793}#)))))
7734 (#{build-conditional\ 3761}#
7735 (lambda (#{source\ 4797}#
7739 (let ((#{atom-key\ 4801}# (fluid-ref #{*mode*\ 3749}#)))
7740 (if (memv #{atom-key\ 4801}# (quote (c)))
7741 ((@ (language tree-il) make-conditional)
7746 (#{decorate-source\ 3758}#
7747 (if (equal? #{else-exp\ 4800}# (quote (if #f #f)))
7754 #{else-exp\ 4800}#))
7755 #{source\ 4797}#)))))
7756 (#{build-application\ 3760}#
7757 (lambda (#{source\ 4802}#
7760 (let ((#{atom-key\ 4805}# (fluid-ref #{*mode*\ 3749}#)))
7761 (if (memv #{atom-key\ 4805}# (quote (c)))
7762 ((@ (language tree-il) make-application)
7766 (#{decorate-source\ 3758}#
7767 (cons #{fun-exp\ 4803}# #{arg-exps\ 4804}#)
7768 #{source\ 4802}#)))))
7769 (#{build-void\ 3759}#
7770 (lambda (#{source\ 4806}#)
7771 (let ((#{atom-key\ 4807}# (fluid-ref #{*mode*\ 3749}#)))
7772 (if (memv #{atom-key\ 4807}# (quote (c)))
7773 ((@ (language tree-il) make-void)
7775 (#{decorate-source\ 3758}#
7777 #{source\ 4806}#)))))
7778 (#{decorate-source\ 3758}#
7779 (lambda (#{e\ 4808}# #{s\ 4809}#)
7781 (if (if (pair? #{e\ 4808}#) #{s\ 4809}# #f)
7782 (set-source-properties! #{e\ 4808}# #{s\ 4809}#))
7784 (#{get-global-definition-hook\ 3757}#
7785 (lambda (#{symbol\ 4810}# #{module\ 4811}#)
7787 (if (if (not #{module\ 4811}#) (current-module) #f)
7788 (warn "module system is booted, we should have a module"
7792 (if #{module\ 4811}#
7793 (resolve-module (cdr #{module\ 4811}#))
7797 (if (variable-bound? #{v\ 4812}#)
7798 (let ((#{val\ 4813}# (variable-ref #{v\ 4812}#)))
7799 (if (macro? #{val\ 4813}#)
7800 (if (syncase-macro-type #{val\ 4813}#)
7801 (cons (syncase-macro-type #{val\ 4813}#)
7802 (syncase-macro-binding #{val\ 4813}#))
7807 (#{put-global-definition-hook\ 3756}#
7808 (lambda (#{symbol\ 4814}# #{type\ 4815}# #{val\ 4816}#)
7809 (let ((#{existing\ 4817}#
7815 (if (variable-bound? #{v\ 4818}#)
7816 (let ((#{val\ 4819}# (variable-ref #{v\ 4818}#)))
7817 (if (macro? #{val\ 4819}#)
7818 (if (not (syncase-macro-type #{val\ 4819}#))
7827 (if #{existing\ 4817}#
7828 (make-extended-syncase-macro
7832 (make-syncase-macro #{type\ 4815}# #{val\ 4816}#))))))
7833 (#{local-eval-hook\ 3755}#
7834 (lambda (#{x\ 4820}# #{mod\ 4821}#)
7836 (list #{noexpand\ 3748}#
7837 (let ((#{atom-key\ 4822}# (fluid-ref #{*mode*\ 3749}#)))
7838 (if (memv #{atom-key\ 4822}# (quote (c)))
7839 ((@ (language tree-il) tree-il->scheme)
7842 (#{top-level-eval-hook\ 3754}#
7843 (lambda (#{x\ 4823}# #{mod\ 4824}#)
7845 (list #{noexpand\ 3748}#
7846 (let ((#{atom-key\ 4825}# (fluid-ref #{*mode*\ 3749}#)))
7847 (if (memv #{atom-key\ 4825}# (quote (c)))
7848 ((@ (language tree-il) tree-il->scheme)
7855 (#{*mode*\ 3749}# (make-fluid))
7856 (#{noexpand\ 3748}# "noexpand"))
7858 (#{global-extend\ 3793}#
7862 (#{global-extend\ 3793}#
7866 (#{global-extend\ 3793}#
7869 (lambda (#{e\ 4826}#
7874 ((lambda (#{tmp\ 4831}#)
7875 ((lambda (#{tmp\ 4832}#)
7876 (if (if #{tmp\ 4832}#
7877 (apply (lambda (#{_\ 4833}#
7882 (#{valid-bound-ids?\ 3820}# #{var\ 4834}#))
7885 (apply (lambda (#{_\ 4839}#
7890 (let ((#{names\ 4844}#
7891 (map (lambda (#{x\ 4845}#)
7892 (#{id-var-name\ 3817}#
7898 (lambda (#{id\ 4847}# #{n\ 4848}#)
7899 (let ((#{atom-key\ 4849}#
7900 (#{binding-type\ 3787}#
7905 (if (memv #{atom-key\ 4849}#
7906 '(displaced-lexical))
7909 "identifier out of context"
7911 (#{source-wrap\ 3824}#
7919 (cons #{e1\ 4842}# #{e2\ 4843}#)
7920 (#{source-wrap\ 3824}#
7925 (#{extend-env\ 3789}#
7927 (let ((#{trans-r\ 4852}#
7928 (#{macros-only-env\ 3791}#
7930 (map (lambda (#{x\ 4853}#)
7932 (#{eval-local-transformer\ 3837}#
7944 ((lambda (#{_\ 4855}#)
7948 (#{source-wrap\ 3824}#
7956 '(any #(each (any any)) any . each-any))))
7958 (#{global-extend\ 3793}#
7961 (lambda (#{e\ 4856}#
7966 ((lambda (#{tmp\ 4861}#)
7967 ((lambda (#{tmp\ 4862}#)
7969 (apply (lambda (#{_\ 4863}# #{e\ 4864}#)
7970 (#{build-data\ 3773}#
7972 (#{strip\ 3844}# #{e\ 4864}# #{w\ 4858}#)))
7974 ((lambda (#{_\ 4865}#)
7978 (#{source-wrap\ 3824}#
7984 ($sc-dispatch #{tmp\ 4861}# (quote (any any)))))
7986 (#{global-extend\ 3793}#
7989 (letrec ((#{regen\ 4873}#
7990 (lambda (#{x\ 4874}#)
7991 (let ((#{atom-key\ 4875}# (car #{x\ 4874}#)))
7992 (if (memv #{atom-key\ 4875}# (quote (ref)))
7993 (#{build-lexical-reference\ 3762}#
7998 (if (memv #{atom-key\ 4875}# (quote (primitive)))
7999 (#{build-primref\ 3772}# #f (cadr #{x\ 4874}#))
8000 (if (memv #{atom-key\ 4875}# (quote (quote)))
8001 (#{build-data\ 3773}# #f (cadr #{x\ 4874}#))
8002 (if (memv #{atom-key\ 4875}# (quote (lambda)))
8003 (if (list? (cadr #{x\ 4874}#))
8004 (#{build-simple-lambda\ 3769}#
8010 (#{regen\ 4873}# (caddr #{x\ 4874}#)))
8011 (error "how did we get here" #{x\ 4874}#))
8012 (#{build-application\ 3760}#
8014 (#{build-primref\ 3772}# #f (car #{x\ 4874}#))
8015 (map #{regen\ 4873}#
8016 (cdr #{x\ 4874}#))))))))))
8017 (#{gen-vector\ 4872}#
8018 (lambda (#{x\ 4876}#)
8019 (if (eq? (car #{x\ 4876}#) (quote list))
8020 (cons (quote vector) (cdr #{x\ 4876}#))
8021 (if (eq? (car #{x\ 4876}#) (quote quote))
8023 (list->vector (cadr #{x\ 4876}#)))
8024 (list (quote list->vector) #{x\ 4876}#)))))
8025 (#{gen-append\ 4871}#
8026 (lambda (#{x\ 4877}# #{y\ 4878}#)
8027 (if (equal? #{y\ 4878}# (quote (quote ())))
8029 (list (quote append) #{x\ 4877}# #{y\ 4878}#))))
8031 (lambda (#{x\ 4879}# #{y\ 4880}#)
8032 (let ((#{atom-key\ 4881}# (car #{y\ 4880}#)))
8033 (if (memv #{atom-key\ 4881}# (quote (quote)))
8034 (if (eq? (car #{x\ 4879}#) (quote quote))
8036 (cons (cadr #{x\ 4879}#) (cadr #{y\ 4880}#)))
8037 (if (eq? (cadr #{y\ 4880}#) (quote ()))
8038 (list (quote list) #{x\ 4879}#)
8039 (list (quote cons) #{x\ 4879}# #{y\ 4880}#)))
8040 (if (memv #{atom-key\ 4881}# (quote (list)))
8042 (cons #{x\ 4879}# (cdr #{y\ 4880}#)))
8043 (list (quote cons) #{x\ 4879}# #{y\ 4880}#))))))
8045 (lambda (#{e\ 4882}# #{map-env\ 4883}#)
8046 (let ((#{formals\ 4884}# (map cdr #{map-env\ 4883}#))
8048 (map (lambda (#{x\ 4886}#)
8049 (list (quote ref) (car #{x\ 4886}#)))
8050 #{map-env\ 4883}#)))
8051 (if (eq? (car #{e\ 4882}#) (quote ref))
8052 (car #{actuals\ 4885}#)
8054 (lambda (#{x\ 4887}#)
8055 (if (eq? (car #{x\ 4887}#) (quote ref))
8056 (memq (cadr #{x\ 4887}#) #{formals\ 4884}#)
8060 (cons (list 'primitive
8062 (map (let ((#{r\ 4888}#
8065 #{actuals\ 4885}#)))
8066 (lambda (#{x\ 4889}#)
8067 (cdr (assq (cadr #{x\ 4889}#)
8069 (cdr #{e\ 4882}#))))
8074 #{actuals\ 4885}#)))))))
8075 (#{gen-mappend\ 4868}#
8076 (lambda (#{e\ 4890}# #{map-env\ 4891}#)
8079 (#{gen-map\ 4869}# #{e\ 4890}# #{map-env\ 4891}#))))
8081 (lambda (#{src\ 4892}#
8085 (if (#{fx=\ 3752}# #{level\ 4894}# 0)
8086 (values #{var\ 4893}# #{maps\ 4895}#)
8087 (if (null? #{maps\ 4895}#)
8097 (#{fx-\ 3751}# #{level\ 4894}# 1)
8098 (cdr #{maps\ 4895}#)))
8099 (lambda (#{outer-var\ 4896}# #{outer-maps\ 4897}#)
8101 (assq #{outer-var\ 4896}#
8102 (car #{maps\ 4895}#))))
8104 (values (cdr #{b\ 4898}#) #{maps\ 4895}#)
8105 (let ((#{inner-var\ 4899}#
8106 (#{gen-var\ 3845}# (quote tmp))))
8109 (cons (cons (cons #{outer-var\ 4896}#
8110 #{inner-var\ 4899}#)
8111 (car #{maps\ 4895}#))
8112 #{outer-maps\ 4897}#)))))))))))
8113 (#{gen-syntax\ 4866}#
8114 (lambda (#{src\ 4900}#
8120 (if (#{id?\ 3795}# #{e\ 4901}#)
8121 (let ((#{label\ 4906}#
8122 (#{id-var-name\ 3817}#
8130 (if (eq? (#{binding-type\ 3787}# #{b\ 4907}#)
8134 (let ((#{var.lev\ 4908}#
8135 (#{binding-value\ 3788}#
8139 (car #{var.lev\ 4908}#)
8140 (cdr #{var.lev\ 4908}#)
8142 (lambda (#{var\ 4909}# #{maps\ 4910}#)
8144 (list (quote ref) #{var\ 4909}#)
8146 (if (#{ellipsis?\ 4904}# #{e\ 4901}#)
8149 "misplaced ellipsis"
8152 (list (quote quote) #{e\ 4901}#)
8154 ((lambda (#{tmp\ 4911}#)
8155 ((lambda (#{tmp\ 4912}#)
8156 (if (if #{tmp\ 4912}#
8157 (apply (lambda (#{dots\ 4913}# #{e\ 4914}#)
8158 (#{ellipsis?\ 4904}#
8162 (apply (lambda (#{dots\ 4915}# #{e\ 4916}#)
8163 (#{gen-syntax\ 4866}#
8168 (lambda (#{x\ 4917}#) #f)
8171 ((lambda (#{tmp\ 4918}#)
8172 (if (if #{tmp\ 4918}#
8173 (apply (lambda (#{x\ 4919}#
8176 (#{ellipsis?\ 4904}#
8180 (apply (lambda (#{x\ 4922}#
8183 (letrec ((#{f\ 4925}#
8184 (lambda (#{y\ 4926}#
8186 ((lambda (#{tmp\ 4931}#)
8187 ((lambda (#{tmp\ 4932}#)
8188 (if (if #{tmp\ 4932}#
8189 (apply (lambda (#{dots\ 4933}#
8191 (#{ellipsis?\ 4904}#
8195 (apply (lambda (#{dots\ 4935}#
8199 (lambda (#{maps\ 4937}#)
8205 (lambda (#{x\ 4938}#
8207 (if (null? (car #{maps\ 4939}#))
8213 (#{gen-mappend\ 4868}#
8215 (car #{maps\ 4939}#))
8216 (cdr #{maps\ 4939}#))))))))
8218 ((lambda (#{_\ 4940}#)
8221 (#{gen-syntax\ 4866}#
8228 (lambda (#{y\ 4941}#
8234 (lambda (#{x\ 4943}#
8237 (#{gen-append\ 4871}#
8240 #{maps\ 4944}#))))))
8248 (lambda (#{maps\ 4928}#)
8251 (#{gen-syntax\ 4866}#
8259 (lambda (#{x\ 4929}#
8261 (if (null? (car #{maps\ 4930}#))
8269 (car #{maps\ 4930}#))
8270 (cdr #{maps\ 4930}#)))))))))
8272 ((lambda (#{tmp\ 4945}#)
8274 (apply (lambda (#{x\ 4946}#
8278 (#{gen-syntax\ 4866}#
8285 (lambda (#{x\ 4948}#
8289 (#{gen-syntax\ 4866}#
8296 (lambda (#{y\ 4950}#
8302 #{maps\ 4951}#))))))
8304 ((lambda (#{tmp\ 4952}#)
8306 (apply (lambda (#{e1\ 4953}#
8310 (#{gen-syntax\ 4866}#
8318 (lambda (#{e\ 4956}#
8321 (#{gen-vector\ 4872}#
8325 ((lambda (#{_\ 4958}#)
8333 '#(vector (any . each-any))))))
8339 '(any any . any)))))
8340 ($sc-dispatch #{tmp\ 4911}# (quote (any any)))))
8342 (lambda (#{e\ 4959}#
8348 (#{source-wrap\ 3824}#
8353 ((lambda (#{tmp\ 4965}#)
8354 ((lambda (#{tmp\ 4966}#)
8356 (apply (lambda (#{_\ 4967}# #{x\ 4968}#)
8359 (#{gen-syntax\ 4866}#
8366 (lambda (#{e\ 4969}# #{maps\ 4970}#)
8367 (#{regen\ 4873}# #{e\ 4969}#))))
8369 ((lambda (#{_\ 4971}#)
8375 ($sc-dispatch #{tmp\ 4965}# (quote (any any)))))
8377 (#{global-extend\ 3793}#
8380 (lambda (#{e\ 4972}#
8385 ((lambda (#{tmp\ 4977}#)
8386 ((lambda (#{tmp\ 4978}#)
8387 (if (if #{tmp\ 4978}#
8388 (apply (lambda (#{_\ 4979}#
8393 (string? (syntax->datum #{docstring\ 4981}#)))
8396 (apply (lambda (#{_\ 4984}#
8403 (#{lambda-formals\ 3840}# #{args\ 4985}#))
8404 (lambda (#{req\ 4989}#
8408 (#{chi-simple-lambda\ 3841}#
8416 (syntax->datum #{docstring\ 4986}#)
8417 (cons #{e1\ 4987}# #{e2\ 4988}#)))))
8419 ((lambda (#{tmp\ 4994}#)
8421 (apply (lambda (#{_\ 4995}#
8427 (#{lambda-formals\ 3840}# #{args\ 4996}#))
8428 (lambda (#{req\ 4999}#
8432 (#{chi-simple-lambda\ 3841}#
8441 (cons #{e1\ 4997}# #{e2\ 4998}#)))))
8443 ((lambda (#{_\ 5004}#)
8451 '(any any any . each-any)))))
8454 '(any any any any . each-any))))
8456 (#{global-extend\ 3793}#
8459 (lambda (#{e\ 5005}#
8464 ((lambda (#{tmp\ 5010}#)
8465 ((lambda (#{tmp\ 5011}#)
8467 (apply (lambda (#{_\ 5012}#
8473 (#{chi-lambda-case\ 3843}#
8479 #{lambda*-formals\ 3842}#
8480 (list (cons #{args\ 5013}#
8483 (lambda (#{docstring\ 5017}# #{lcase\ 5018}#)
8484 (#{build-case-lambda\ 3770}#
8489 ((lambda (#{_\ 5019}#)
8497 '(any any any . each-any))))
8499 (#{global-extend\ 3793}#
8502 (lambda (#{e\ 5020}#
8507 ((lambda (#{tmp\ 5025}#)
8508 ((lambda (#{tmp\ 5026}#)
8510 (apply (lambda (#{_\ 5027}#
8519 (#{chi-lambda-case\ 3843}#
8525 #{lambda-formals\ 3840}#
8526 (cons (cons #{args\ 5028}#
8527 (cons #{e1\ 5029}# #{e2\ 5030}#))
8528 (map (lambda (#{tmp\ 5037}#
8537 (lambda (#{docstring\ 5039}# #{lcase\ 5040}#)
8538 (#{build-case-lambda\ 3770}#
8543 ((lambda (#{_\ 5041}#)
8551 '(any (any any . each-any)
8553 #(each (any any . each-any))))))
8555 (#{global-extend\ 3793}#
8558 (lambda (#{e\ 5042}#
8563 ((lambda (#{tmp\ 5047}#)
8564 ((lambda (#{tmp\ 5048}#)
8566 (apply (lambda (#{_\ 5049}#
8575 (#{chi-lambda-case\ 3843}#
8581 #{lambda*-formals\ 3842}#
8582 (cons (cons #{args\ 5050}#
8583 (cons #{e1\ 5051}# #{e2\ 5052}#))
8584 (map (lambda (#{tmp\ 5059}#
8593 (lambda (#{docstring\ 5061}# #{lcase\ 5062}#)
8594 (#{build-case-lambda\ 3770}#
8599 ((lambda (#{_\ 5063}#)
8607 '(any (any any . each-any)
8609 #(each (any any . each-any))))))
8611 (#{global-extend\ 3793}#
8614 (letrec ((#{chi-let\ 5064}#
8615 (lambda (#{e\ 5065}#
8620 #{constructor\ 5070}#
8624 (if (not (#{valid-bound-ids?\ 3820}# #{ids\ 5071}#))
8627 "duplicate bound variable"
8629 (let ((#{labels\ 5074}#
8630 (#{gen-labels\ 3801}# #{ids\ 5071}#))
8632 (map #{gen-var\ 3845}# #{ids\ 5071}#)))
8634 (#{make-binding-wrap\ 3812}#
8639 (#{extend-var-env\ 3790}#
8643 (#{constructor\ 5070}#
8645 (map syntax->datum #{ids\ 5071}#)
8647 (map (lambda (#{x\ 5078}#)
8656 (#{source-wrap\ 3824}#
8663 #{mod\ 5069}#))))))))
8664 (lambda (#{e\ 5079}#
8669 ((lambda (#{tmp\ 5084}#)
8670 ((lambda (#{tmp\ 5085}#)
8671 (if (if #{tmp\ 5085}#
8672 (apply (lambda (#{_\ 5086}#
8677 (and-map #{id?\ 3795}# #{id\ 5087}#))
8680 (apply (lambda (#{_\ 5092}#
8694 (cons #{e1\ 5095}# #{e2\ 5096}#)))
8696 ((lambda (#{tmp\ 5100}#)
8697 (if (if #{tmp\ 5100}#
8698 (apply (lambda (#{_\ 5101}#
8704 (if (#{id?\ 3795}# #{f\ 5102}#)
8705 (and-map #{id?\ 3795}# #{id\ 5103}#)
8709 (apply (lambda (#{_\ 5108}#
8721 #{build-named-let\ 3776}#
8722 (cons #{f\ 5109}# #{id\ 5110}#)
8724 (cons #{e1\ 5112}# #{e2\ 5113}#)))
8726 ((lambda (#{_\ 5117}#)
8730 (#{source-wrap\ 3824}#
8738 '(any any #(each (any any)) any . each-any)))))
8741 '(any #(each (any any)) any . each-any))))
8743 (#{global-extend\ 3793}#
8746 (lambda (#{e\ 5118}#
8751 ((lambda (#{tmp\ 5123}#)
8752 ((lambda (#{tmp\ 5124}#)
8753 (if (if #{tmp\ 5124}#
8754 (apply (lambda (#{_\ 5125}#
8759 (and-map #{id?\ 3795}# #{id\ 5126}#))
8762 (apply (lambda (#{_\ 5131}#
8767 (let ((#{ids\ 5136}# #{id\ 5132}#))
8768 (if (not (#{valid-bound-ids?\ 3820}#
8772 "duplicate bound variable"
8774 (let ((#{labels\ 5138}#
8775 (#{gen-labels\ 3801}# #{ids\ 5136}#))
8777 (map #{gen-var\ 3845}# #{ids\ 5136}#)))
8779 (#{make-binding-wrap\ 3812}#
8784 (#{extend-var-env\ 3790}#
8788 (#{build-letrec\ 3777}#
8790 (map syntax->datum #{ids\ 5136}#)
8792 (map (lambda (#{x\ 5142}#)
8800 (cons #{e1\ 5134}# #{e2\ 5135}#)
8801 (#{source-wrap\ 3824}#
8808 #{mod\ 5122}#)))))))
8810 ((lambda (#{_\ 5145}#)
8814 (#{source-wrap\ 3824}#
8822 '(any #(each (any any)) any . each-any))))
8824 (#{global-extend\ 3793}#
8827 (lambda (#{e\ 5146}#
8832 ((lambda (#{tmp\ 5151}#)
8833 ((lambda (#{tmp\ 5152}#)
8834 (if (if #{tmp\ 5152}#
8835 (apply (lambda (#{_\ 5153}# #{id\ 5154}# #{val\ 5155}#)
8836 (#{id?\ 3795}# #{id\ 5154}#))
8839 (apply (lambda (#{_\ 5156}# #{id\ 5157}# #{val\ 5158}#)
8840 (let ((#{val\ 5159}#
8847 (#{id-var-name\ 3817}#
8855 (let ((#{atom-key\ 5162}#
8856 (#{binding-type\ 3787}# #{b\ 5161}#)))
8857 (if (memv #{atom-key\ 5162}#
8859 (#{build-lexical-assignment\ 3763}#
8861 (syntax->datum #{id\ 5157}#)
8862 (#{binding-value\ 3788}# #{b\ 5161}#)
8864 (if (memv #{atom-key\ 5162}#
8866 (#{build-global-assignment\ 3766}#
8871 (if (memv #{atom-key\ 5162}#
8872 '(displaced-lexical))
8875 "identifier out of context"
8883 (#{source-wrap\ 3824}#
8887 #{mod\ 5150}#)))))))))
8889 ((lambda (#{tmp\ 5163}#)
8891 (apply (lambda (#{_\ 5164}#
8897 (#{syntax-type\ 3829}#
8905 (lambda (#{type\ 5168}#
8911 (if (memv #{type\ 5168}#
8913 (let ((#{val\ 5174}#
8922 (cons #{head\ 5165}#
8924 (lambda (#{id\ 5176}# #{mod\ 5177}#)
8925 (#{build-global-assignment\ 3766}#
8930 (#{build-application\ 3760}#
8933 (list '#(syntax-object
8972 #("i" "i" "i" "i" "i"))
8983 eval-local-transformer
9019 set-ribcage-symnames!
9051 set-syntax-object-module!
9052 set-syntax-object-wrap!
9053 set-syntax-object-expression!
9054 syntax-object-module
9056 syntax-object-expression
9069 build-global-definition
9071 build-global-assignment
9072 build-global-reference
9074 build-lexical-assignment
9075 build-lexical-reference
9080 get-global-definition-hook
9081 put-global-definition-hook
9335 (map (lambda (#{e\ 5178}#)
9343 (list #{val\ 5167}#))))))))
9345 ((lambda (#{_\ 5180}#)
9349 (#{source-wrap\ 3824}#
9357 '(any (any . each-any) any)))))
9362 (#{global-extend\ 3793}#
9365 (lambda (#{e\ 5181}#)
9366 ((lambda (#{tmp\ 5182}#)
9367 ((lambda (#{tmp\ 5183}#)
9368 (if (if #{tmp\ 5183}#
9369 (apply (lambda (#{_\ 5184}# #{mod\ 5185}# #{id\ 5186}#)
9370 (if (and-map #{id?\ 3795}# #{mod\ 5185}#)
9371 (#{id?\ 3795}# #{id\ 5186}#)
9375 (apply (lambda (#{_\ 5188}# #{mod\ 5189}# #{id\ 5190}#)
9377 (syntax->datum #{id\ 5190}#)
9379 (cons '#(syntax-object
9384 #((top) (top) (top))
9387 #(ribcage #(e) #((top)) #("i"))
9398 eval-local-transformer
9434 set-ribcage-symnames!
9466 set-syntax-object-module!
9467 set-syntax-object-wrap!
9468 set-syntax-object-expression!
9469 syntax-object-module
9471 syntax-object-expression
9484 build-global-definition
9486 build-global-assignment
9487 build-global-reference
9489 build-lexical-assignment
9490 build-lexical-reference
9495 get-global-definition-hook
9496 put-global-definition-hook
9741 (define-structure and-map*)
9749 "source expression failed to match any pattern"
9753 '(any each-any any))))
9755 (#{global-extend\ 3793}#
9758 (lambda (#{e\ 5192}#)
9759 ((lambda (#{tmp\ 5193}#)
9760 ((lambda (#{tmp\ 5194}#)
9761 (if (if #{tmp\ 5194}#
9762 (apply (lambda (#{_\ 5195}# #{mod\ 5196}# #{id\ 5197}#)
9763 (if (and-map #{id?\ 3795}# #{mod\ 5196}#)
9764 (#{id?\ 3795}# #{id\ 5197}#)
9768 (apply (lambda (#{_\ 5199}# #{mod\ 5200}# #{id\ 5201}#)
9770 (syntax->datum #{id\ 5201}#)
9772 (cons '#(syntax-object
9777 #((top) (top) (top))
9780 #(ribcage #(e) #((top)) #("i"))
9791 eval-local-transformer
9827 set-ribcage-symnames!
9859 set-syntax-object-module!
9860 set-syntax-object-wrap!
9861 set-syntax-object-expression!
9862 syntax-object-module
9864 syntax-object-expression
9877 build-global-definition
9879 build-global-assignment
9880 build-global-reference
9882 build-lexical-assignment
9883 build-lexical-reference
9888 get-global-definition-hook
9889 put-global-definition-hook
10134 (define-structure and-map*)
10142 "source expression failed to match any pattern"
10146 '(any each-any any))))
10148 (#{global-extend\ 3793}#
10151 (lambda (#{e\ 5203}#
10156 ((lambda (#{tmp\ 5208}#)
10157 ((lambda (#{tmp\ 5209}#)
10159 (apply (lambda (#{_\ 5210}# #{test\ 5211}# #{then\ 5212}#)
10160 (#{build-conditional\ 3761}#
10172 (#{build-void\ 3759}# #f)))
10174 ((lambda (#{tmp\ 5213}#)
10176 (apply (lambda (#{_\ 5214}#
10180 (#{build-conditional\ 3761}#
10200 "source expression failed to match any pattern"
10204 '(any any any any)))))
10209 (#{global-extend\ 3793}#
10213 (#{global-extend\ 3793}#
10217 (#{global-extend\ 3793}#
10221 (#{global-extend\ 3793}#
10225 (#{global-extend\ 3793}#
10228 (letrec ((#{gen-syntax-case\ 5221}#
10229 (lambda (#{x\ 5222}#
10234 (if (null? #{clauses\ 5224}#)
10235 (#{build-application\ 3760}#
10237 (#{build-primref\ 3772}#
10240 (list (#{build-data\ 3773}# #f #f)
10241 (#{build-data\ 3773}#
10243 "source expression failed to match any pattern")
10245 ((lambda (#{tmp\ 5227}#)
10246 ((lambda (#{tmp\ 5228}#)
10248 (apply (lambda (#{pat\ 5229}# #{exp\ 5230}#)
10249 (if (if (#{id?\ 3795}# #{pat\ 5229}#)
10251 (lambda (#{x\ 5231}#)
10252 (not (#{free-id=?\ 3818}#
10255 (cons '#(syntax-object
10262 #(ribcage () () ())
10282 build-dispatch-call
10299 eval-local-transformer
10315 distinct-bound-ids?
10333 set-ribcage-labels!
10335 set-ribcage-symnames!
10367 set-syntax-object-module!
10368 set-syntax-object-wrap!
10369 set-syntax-object-expression!
10370 syntax-object-module
10372 syntax-object-expression
10384 build-simple-lambda
10385 build-global-definition
10387 build-global-assignment
10388 build-global-reference
10390 build-lexical-assignment
10391 build-lexical-reference
10396 get-global-definition-hook
10397 put-global-definition-hook
10400 top-level-eval-hook
10649 (let ((#{labels\ 5232}#
10650 (list (#{gen-label\ 3800}#)))
10654 (#{build-application\ 3760}#
10656 (#{build-simple-lambda\ 3769}#
10658 (list (syntax->datum
10661 (list #{var\ 5233}#)
10665 (#{extend-env\ 3789}#
10667 (list (cons 'syntax
10668 (cons #{var\ 5233}#
10671 (#{make-binding-wrap\ 3812}#
10672 (list #{pat\ 5229}#)
10676 (list #{x\ 5222}#)))
10677 (#{gen-clause\ 5220}#
10680 (cdr #{clauses\ 5224}#)
10687 ((lambda (#{tmp\ 5234}#)
10689 (apply (lambda (#{pat\ 5235}#
10692 (#{gen-clause\ 5220}#
10695 (cdr #{clauses\ 5224}#)
10702 ((lambda (#{_\ 5238}#)
10706 (car #{clauses\ 5224}#)))
10711 ($sc-dispatch #{tmp\ 5227}# (quote (any any)))))
10712 (car #{clauses\ 5224}#)))))
10713 (#{gen-clause\ 5220}#
10714 (lambda (#{x\ 5239}#
10724 (#{convert-pattern\ 5218}#
10727 (lambda (#{p\ 5247}# #{pvars\ 5248}#)
10728 (if (not (#{distinct-bound-ids?\ 3821}#
10729 (map car #{pvars\ 5248}#)))
10732 "duplicate pattern variable"
10735 (lambda (#{x\ 5249}#)
10736 (not (#{ellipsis?\ 3839}#
10737 (car #{x\ 5249}#))))
10741 "misplaced ellipsis"
10744 (#{gen-var\ 3845}# (quote tmp))))
10745 (#{build-application\ 3760}#
10747 (#{build-simple-lambda\ 3769}#
10754 (#{build-lexical-reference\ 3762}#
10759 (#{build-conditional\ 3761}#
10761 ((lambda (#{tmp\ 5252}#)
10762 ((lambda (#{tmp\ 5253}#)
10764 (apply (lambda () #{y\ 5251}#)
10766 ((lambda (#{_\ 5254}#)
10767 (#{build-conditional\ 3761}#
10770 (#{build-dispatch-call\ 5219}#
10776 (#{build-data\ 3773}#
10784 (#{build-dispatch-call\ 5219}#
10790 (#{gen-syntax-case\ 5221}#
10796 (list (if (eq? #{p\ 5247}# (quote any))
10797 (#{build-application\ 3760}#
10799 (#{build-primref\ 3772}#
10802 (list #{x\ 5239}#))
10803 (#{build-application\ 3760}#
10805 (#{build-primref\ 3772}#
10809 (#{build-data\ 3773}#
10811 #{p\ 5247}#)))))))))))))
10812 (#{build-dispatch-call\ 5219}#
10813 (lambda (#{pvars\ 5255}#
10818 (let ((#{ids\ 5260}# (map car #{pvars\ 5255}#))
10819 (#{levels\ 5261}# (map cdr #{pvars\ 5255}#)))
10820 (let ((#{labels\ 5262}#
10821 (#{gen-labels\ 3801}# #{ids\ 5260}#))
10822 (#{new-vars\ 5263}#
10823 (map #{gen-var\ 3845}# #{ids\ 5260}#)))
10824 (#{build-application\ 3760}#
10826 (#{build-primref\ 3772}# #f (quote apply))
10827 (list (#{build-simple-lambda\ 3769}#
10829 (map syntax->datum #{ids\ 5260}#)
10835 (#{extend-env\ 3789}#
10837 (map (lambda (#{var\ 5264}#
10840 (cons #{var\ 5264}#
10843 (map cdr #{pvars\ 5255}#))
10845 (#{make-binding-wrap\ 3812}#
10851 (#{convert-pattern\ 5218}#
10852 (lambda (#{pattern\ 5266}# #{keys\ 5267}#)
10853 (letrec ((#{cvt\ 5268}#
10854 (lambda (#{p\ 5269}# #{n\ 5270}# #{ids\ 5271}#)
10855 (if (#{id?\ 3795}# #{p\ 5269}#)
10856 (if (#{bound-id-member?\ 3822}#
10860 (vector (quote free-id) #{p\ 5269}#)
10864 (cons (cons #{p\ 5269}# #{n\ 5270}#)
10866 ((lambda (#{tmp\ 5272}#)
10867 ((lambda (#{tmp\ 5273}#)
10868 (if (if #{tmp\ 5273}#
10869 (apply (lambda (#{x\ 5274}#
10871 (#{ellipsis?\ 3839}#
10875 (apply (lambda (#{x\ 5276}#
10885 (lambda (#{p\ 5278}#
10888 (if (eq? #{p\ 5278}#
10896 ((lambda (#{tmp\ 5280}#)
10898 (apply (lambda (#{x\ 5281}#
10906 (lambda (#{y\ 5283}#
10914 (lambda (#{x\ 5285}#
10919 #{ids\ 5286}#))))))
10921 ((lambda (#{tmp\ 5287}#)
10928 ((lambda (#{tmp\ 5288}#)
10930 (apply (lambda (#{x\ 5289}#)
10937 (lambda (#{p\ 5291}#
10945 ((lambda (#{x\ 5293}#)
10968 (#{cvt\ 5268}# #{pattern\ 5266}# 0 (quote ()))))))
10969 (lambda (#{e\ 5294}#
10975 (#{source-wrap\ 3824}#
10980 ((lambda (#{tmp\ 5300}#)
10981 ((lambda (#{tmp\ 5301}#)
10983 (apply (lambda (#{_\ 5302}#
10988 (lambda (#{x\ 5306}#)
10989 (if (#{id?\ 3795}# #{x\ 5306}#)
10990 (not (#{ellipsis?\ 3839}#
10995 (#{gen-var\ 3845}# (quote tmp))))
10996 (#{build-application\ 3760}#
10998 (#{build-simple-lambda\ 3769}#
11004 (#{gen-syntax-case\ 5221}#
11005 (#{build-lexical-reference\ 3762}#
11014 (list (#{chi\ 3831}#
11021 "invalid literals list"
11026 "source expression failed to match any pattern"
11030 '(any any each-any . each-any))))
11033 (lambda (#{x\ 5311}# . #{rest\ 5312}#)
11034 (if (if (pair? #{x\ 5311}#)
11035 (equal? (car #{x\ 5311}#) #{noexpand\ 3748}#)
11039 (if (null? #{rest\ 5312}#)
11041 (car #{rest\ 5312}#)))
11043 (if (let ((#{t\ 5315}# (null? #{rest\ 5312}#)))
11046 (null? (cdr #{rest\ 5312}#))))
11048 (cadr #{rest\ 5312}#))))
11060 (module-name (current-module))))))))))
11062 (lambda (#{x\ 5316}#)
11063 (#{nonsymbol-id?\ 3794}# #{x\ 5316}#)))
11064 (set! datum->syntax
11065 (lambda (#{id\ 5317}# #{datum\ 5318}#)
11066 (#{make-syntax-object\ 3778}#
11068 (#{syntax-object-wrap\ 3781}# #{id\ 5317}#)
11070 (set! syntax->datum
11071 (lambda (#{x\ 5319}#)
11072 (#{strip\ 3844}# #{x\ 5319}# (quote (())))))
11073 (set! generate-temporaries
11074 (lambda (#{ls\ 5320}#)
11076 (let ((#{x\ 5321}# #{ls\ 5320}#))
11077 (if (not (list? #{x\ 5321}#))
11079 'generate-temporaries
11082 (map (lambda (#{x\ 5322}#)
11083 (#{wrap\ 3823}# (gensym) (quote ((top))) #f))
11085 (set! free-identifier=?
11086 (lambda (#{x\ 5323}# #{y\ 5324}#)
11088 (let ((#{x\ 5325}# #{x\ 5323}#))
11089 (if (not (#{nonsymbol-id?\ 3794}# #{x\ 5325}#))
11094 (let ((#{x\ 5326}# #{y\ 5324}#))
11095 (if (not (#{nonsymbol-id?\ 3794}# #{x\ 5326}#))
11100 (#{free-id=?\ 3818}# #{x\ 5323}# #{y\ 5324}#))))
11101 (set! bound-identifier=?
11102 (lambda (#{x\ 5327}# #{y\ 5328}#)
11104 (let ((#{x\ 5329}# #{x\ 5327}#))
11105 (if (not (#{nonsymbol-id?\ 3794}# #{x\ 5329}#))
11107 'bound-identifier=?
11110 (let ((#{x\ 5330}# #{y\ 5328}#))
11111 (if (not (#{nonsymbol-id?\ 3794}# #{x\ 5330}#))
11113 'bound-identifier=?
11116 (#{bound-id=?\ 3819}# #{x\ 5327}# #{y\ 5328}#))))
11117 (set! syntax-violation
11118 (lambda (#{who\ 5331}#
11124 (let ((#{x\ 5335}# #{who\ 5331}#))
11125 (if (not ((lambda (#{x\ 5336}#)
11126 (let ((#{t\ 5337}# (not #{x\ 5336}#)))
11129 (let ((#{t\ 5338}# (string? #{x\ 5336}#)))
11132 (symbol? #{x\ 5336}#))))))
11138 (let ((#{x\ 5339}# #{message\ 5332}#))
11139 (if (not (string? #{x\ 5339}#))
11148 (if #{who\ 5331}# "~a: " "")
11150 (if (null? #{subform\ 5334}#)
11152 "in subform `~s' of `~s'"))
11153 (let ((#{tail\ 5340}#
11154 (cons #{message\ 5332}#
11155 (map (lambda (#{x\ 5341}#)
11156 (#{strip\ 3844}# #{x\ 5341}# (quote (()))))
11159 (list #{form\ 5333}#))))))
11161 (cons #{who\ 5331}# #{tail\ 5340}#)
11164 (letrec ((#{match\ 5346}#
11165 (lambda (#{e\ 5347}#
11170 (if (not #{r\ 5350}#)
11172 (if (eq? #{p\ 5348}# (quote any))
11173 (cons (#{wrap\ 3823}#
11178 (if (#{syntax-object?\ 3779}# #{e\ 5347}#)
11180 (#{syntax-object-expression\ 3780}# #{e\ 5347}#)
11182 (#{join-wraps\ 3814}#
11184 (#{syntax-object-wrap\ 3781}# #{e\ 5347}#))
11186 (#{syntax-object-module\ 3782}# #{e\ 5347}#))
11192 #{mod\ 5351}#))))))
11194 (lambda (#{e\ 5352}#
11199 (if (null? #{p\ 5353}#)
11200 (if (null? #{e\ 5352}#) #{r\ 5355}# #f)
11201 (if (pair? #{p\ 5353}#)
11202 (if (pair? #{e\ 5352}#)
11215 (if (eq? #{p\ 5353}# (quote each-any))
11217 (#{match-each-any\ 5343}#
11222 (cons #{l\ 5357}# #{r\ 5355}#)
11224 (let ((#{atom-key\ 5358}# (vector-ref #{p\ 5353}# 0)))
11225 (if (memv #{atom-key\ 5358}# (quote (each)))
11226 (if (null? #{e\ 5352}#)
11227 (#{match-empty\ 5344}#
11228 (vector-ref #{p\ 5353}# 1)
11231 (#{match-each\ 5342}#
11233 (vector-ref #{p\ 5353}# 1)
11237 (letrec ((#{collect\ 5360}#
11238 (lambda (#{l\ 5361}#)
11239 (if (null? (car #{l\ 5361}#))
11241 (cons (map car #{l\ 5361}#)
11245 (#{collect\ 5360}# #{l\ 5359}#))
11247 (if (memv #{atom-key\ 5358}# (quote (free-id)))
11248 (if (#{id?\ 3795}# #{e\ 5352}#)
11249 (if (#{free-id=?\ 3818}#
11254 (vector-ref #{p\ 5353}# 1))
11258 (if (memv #{atom-key\ 5358}# (quote (atom)))
11260 (vector-ref #{p\ 5353}# 1)
11266 (if (memv #{atom-key\ 5358}# (quote (vector)))
11267 (if (vector? #{e\ 5352}#)
11269 (vector->list #{e\ 5352}#)
11270 (vector-ref #{p\ 5353}# 1)
11275 (#{match-empty\ 5344}#
11276 (lambda (#{p\ 5362}# #{r\ 5363}#)
11277 (if (null? #{p\ 5362}#)
11279 (if (eq? #{p\ 5362}# (quote any))
11280 (cons (quote ()) #{r\ 5363}#)
11281 (if (pair? #{p\ 5362}#)
11282 (#{match-empty\ 5344}#
11284 (#{match-empty\ 5344}#
11287 (if (eq? #{p\ 5362}# (quote each-any))
11288 (cons (quote ()) #{r\ 5363}#)
11289 (let ((#{atom-key\ 5364}#
11290 (vector-ref #{p\ 5362}# 0)))
11291 (if (memv #{atom-key\ 5364}# (quote (each)))
11292 (#{match-empty\ 5344}#
11293 (vector-ref #{p\ 5362}# 1)
11295 (if (memv #{atom-key\ 5364}#
11298 (if (memv #{atom-key\ 5364}# (quote (vector)))
11299 (#{match-empty\ 5344}#
11300 (vector-ref #{p\ 5362}# 1)
11301 #{r\ 5363}#)))))))))))
11302 (#{match-each-any\ 5343}#
11303 (lambda (#{e\ 5365}# #{w\ 5366}# #{mod\ 5367}#)
11304 (if (pair? #{e\ 5365}#)
11306 (#{match-each-any\ 5343}#
11311 (cons (#{wrap\ 3823}#
11317 (if (null? #{e\ 5365}#)
11319 (if (#{syntax-object?\ 3779}# #{e\ 5365}#)
11320 (#{match-each-any\ 5343}#
11321 (#{syntax-object-expression\ 3780}# #{e\ 5365}#)
11322 (#{join-wraps\ 3814}#
11324 (#{syntax-object-wrap\ 3781}# #{e\ 5365}#))
11327 (#{match-each\ 5342}#
11328 (lambda (#{e\ 5369}#
11332 (if (pair? #{e\ 5369}#)
11333 (let ((#{first\ 5373}#
11340 (if #{first\ 5373}#
11341 (let ((#{rest\ 5374}#
11342 (#{match-each\ 5342}#
11348 (cons #{first\ 5373}# #{rest\ 5374}#)
11351 (if (null? #{e\ 5369}#)
11353 (if (#{syntax-object?\ 3779}# #{e\ 5369}#)
11354 (#{match-each\ 5342}#
11355 (#{syntax-object-expression\ 3780}# #{e\ 5369}#)
11357 (#{join-wraps\ 3814}#
11359 (#{syntax-object-wrap\ 3781}# #{e\ 5369}#))
11360 (#{syntax-object-module\ 3782}# #{e\ 5369}#))
11363 (lambda (#{e\ 5375}# #{p\ 5376}#)
11364 (if (eq? #{p\ 5376}# (quote any))
11366 (if (#{syntax-object?\ 3779}# #{e\ 5375}#)
11368 (#{syntax-object-expression\ 3780}# #{e\ 5375}#)
11370 (#{syntax-object-wrap\ 3781}# #{e\ 5375}#)
11372 (#{syntax-object-module\ 3782}# #{e\ 5375}#))
11380 (define with-syntax
11381 (make-syncase-macro
11383 (cons (lambda (#{x\ 5377}#)
11384 ((lambda (#{tmp\ 5378}#)
11385 ((lambda (#{tmp\ 5379}#)
11387 (apply (lambda (#{_\ 5380}# #{e1\ 5381}# #{e2\ 5382}#)
11388 (cons '#(syntax-object
11393 #((top) (top) (top))
11395 #(ribcage () () ())
11396 #(ribcage #(x) #((top)) #("i")))
11398 (cons #{e1\ 5381}# #{e2\ 5382}#)))
11400 ((lambda (#{tmp\ 5384}#)
11402 (apply (lambda (#{_\ 5385}#
11407 (list '#(syntax-object
11412 #((top) (top) (top) (top) (top))
11413 #("i" "i" "i" "i" "i"))
11414 #(ribcage () () ())
11415 #(ribcage #(x) #((top)) #("i")))
11419 (list #{out\ 5386}#
11420 (cons '#(syntax-object
11435 #(ribcage () () ())
11444 ((lambda (#{tmp\ 5391}#)
11446 (apply (lambda (#{_\ 5392}#
11451 (list '#(syntax-object
11461 #("i" "i" "i" "i" "i"))
11462 #(ribcage () () ())
11468 (cons '#(syntax-object
11483 #(ribcage () () ())
11491 (list #{out\ 5393}#
11492 (cons '#(syntax-object
11525 "source expression failed to match any pattern"
11529 '(any #(each (any any)) any . each-any)))))
11532 '(any ((any any)) any . each-any)))))
11535 '(any () any . each-any))))
11537 (module-name (current-module)))))
11539 (define syntax-rules
11540 (make-syncase-macro
11542 (cons (lambda (#{x\ 5400}#)
11543 ((lambda (#{tmp\ 5401}#)
11544 ((lambda (#{tmp\ 5402}#)
11546 (apply (lambda (#{_\ 5403}#
11550 #{template\ 5407}#)
11551 (list '#(syntax-object
11555 #(_ k keyword pattern template)
11556 #((top) (top) (top) (top) (top))
11557 #("i" "i" "i" "i" "i"))
11558 #(ribcage () () ())
11559 #(ribcage #(x) #((top)) #("i")))
11565 #(_ k keyword pattern template)
11566 #((top) (top) (top) (top) (top))
11567 #("i" "i" "i" "i" "i"))
11568 #(ribcage () () ())
11569 #(ribcage #(x) #((top)) #("i")))
11571 (cons '#(syntax-object
11575 #(_ k keyword pattern template)
11576 #((top) (top) (top) (top) (top))
11577 #("i" "i" "i" "i" "i"))
11578 #(ribcage () () ())
11579 #(ribcage #(x) #((top)) #("i")))
11581 (cons '#(syntax-object
11595 #("i" "i" "i" "i" "i"))
11596 #(ribcage () () ())
11603 (map (lambda (#{tmp\ 5410}#
11605 (list (cons '#(syntax-object
11635 (list '#(syntax-object
11666 #{pattern\ 5406}#))))))
11670 "source expression failed to match any pattern"
11674 '(any each-any . #(each ((any . any) any))))))
11676 (module-name (current-module)))))
11679 (make-extended-syncase-macro
11680 (module-ref (current-module) (quote let*))
11682 (cons (lambda (#{x\ 5411}#)
11683 ((lambda (#{tmp\ 5412}#)
11684 ((lambda (#{tmp\ 5413}#)
11685 (if (if #{tmp\ 5413}#
11686 (apply (lambda (#{let*\ 5414}#
11691 (and-map identifier? #{x\ 5415}#))
11694 (apply (lambda (#{let*\ 5420}#
11699 (letrec ((#{f\ 5425}#
11700 (lambda (#{bindings\ 5426}#)
11701 (if (null? #{bindings\ 5426}#)
11702 (cons '#(syntax-object
11705 #(ribcage () () ())
11717 #("i" "i" "i" "i" "i"))
11718 #(ribcage () () ())
11727 ((lambda (#{tmp\ 5430}#)
11728 ((lambda (#{tmp\ 5431}#)
11730 (apply (lambda (#{body\ 5432}#
11732 (list '#(syntax-object
11779 (list #{binding\ 5433}#)
11784 "source expression failed to match any pattern"
11790 (cdr #{bindings\ 5426}#))
11791 (car #{bindings\ 5426}#)))))))
11793 (map list #{x\ 5421}# #{v\ 5422}#))))
11797 "source expression failed to match any pattern"
11801 '(any #(each (any any)) any . each-any))))
11803 (module-name (current-module)))))
11806 (make-syncase-macro
11808 (cons (lambda (#{orig-x\ 5434}#)
11809 ((lambda (#{tmp\ 5435}#)
11810 ((lambda (#{tmp\ 5436}#)
11812 (apply (lambda (#{_\ 5437}#
11819 ((lambda (#{tmp\ 5444}#)
11820 ((lambda (#{tmp\ 5445}#)
11822 (apply (lambda (#{step\ 5446}#)
11823 ((lambda (#{tmp\ 5447}#)
11824 ((lambda (#{tmp\ 5448}#)
11827 (list '#(syntax-object
11908 (list '#(syntax-object
11947 (list '#(syntax-object
11987 (cons '#(syntax-object
12028 (list (cons '#(syntax-object
12067 #{step\ 5446}#)))))))
12069 ((lambda (#{tmp\ 5453}#)
12071 (apply (lambda (#{e1\ 5454}#
12073 (list '#(syntax-object
12168 (list '#(syntax-object
12215 (cons '#(syntax-object
12263 (cons '#(syntax-object
12311 (list (cons '#(syntax-object
12357 #{step\ 5446}#)))))))
12361 "source expression failed to match any pattern"
12365 '(any . each-any)))))
12373 "source expression failed to match any pattern"
12378 (map (lambda (#{v\ 5462}# #{s\ 5463}#)
12379 ((lambda (#{tmp\ 5464}#)
12380 ((lambda (#{tmp\ 5465}#)
12382 (apply (lambda () #{v\ 5462}#)
12384 ((lambda (#{tmp\ 5466}#)
12386 (apply (lambda (#{e\ 5467}#)
12389 ((lambda (#{_\ 5468}#)
12392 "bad step expression"
12408 "source expression failed to match any pattern"
12412 '(any #(each (any any . any))
12417 (module-name (current-module)))))
12420 (make-syncase-macro
12422 (cons (letrec ((#{quasicons\ 5471}#
12423 (lambda (#{x\ 5475}# #{y\ 5476}#)
12424 ((lambda (#{tmp\ 5477}#)
12425 ((lambda (#{tmp\ 5478}#)
12427 (apply (lambda (#{x\ 5479}# #{y\ 5480}#)
12428 ((lambda (#{tmp\ 5481}#)
12429 ((lambda (#{tmp\ 5482}#)
12431 (apply (lambda (#{dy\ 5483}#)
12432 ((lambda (#{tmp\ 5484}#)
12433 ((lambda (#{tmp\ 5485}#)
12435 (apply (lambda (#{dx\ 5486}#)
12436 (list '#(syntax-object
12487 ((lambda (#{_\ 5487}#)
12488 (if (null? #{dy\ 5483}#)
12489 (list '#(syntax-object
12538 (list '#(syntax-object
12637 ((lambda (#{tmp\ 5488}#)
12639 (apply (lambda (#{stuff\ 5489}#)
12640 (cons '#(syntax-object
12687 ((lambda (#{else\ 5490}#)
12688 (list '#(syntax-object
12741 #(ribcage () () ())
12742 #(ribcage () () ())
12773 #(ribcage () () ())
12774 #(ribcage () () ())
12788 #("i" "i" "i" "i")))
12795 "source expression failed to match any pattern"
12797 ($sc-dispatch #{tmp\ 5477}# (quote (any any)))))
12798 (list #{x\ 5475}# #{y\ 5476}#))))
12799 (#{quasiappend\ 5472}#
12800 (lambda (#{x\ 5491}# #{y\ 5492}#)
12801 ((lambda (#{tmp\ 5493}#)
12802 ((lambda (#{tmp\ 5494}#)
12804 (apply (lambda (#{x\ 5495}# #{y\ 5496}#)
12805 ((lambda (#{tmp\ 5497}#)
12806 ((lambda (#{tmp\ 5498}#)
12808 (apply (lambda () #{x\ 5495}#)
12810 ((lambda (#{_\ 5499}#)
12811 (list '#(syntax-object
12861 #(ribcage () () ())
12862 #(ribcage () () ())
12876 #("i" "i" "i" "i")))
12883 "source expression failed to match any pattern"
12885 ($sc-dispatch #{tmp\ 5493}# (quote (any any)))))
12886 (list #{x\ 5491}# #{y\ 5492}#))))
12887 (#{quasivector\ 5473}#
12888 (lambda (#{x\ 5500}#)
12889 ((lambda (#{tmp\ 5501}#)
12890 ((lambda (#{x\ 5502}#)
12891 ((lambda (#{tmp\ 5503}#)
12892 ((lambda (#{tmp\ 5504}#)
12894 (apply (lambda (#{x\ 5505}#)
12895 (list '#(syntax-object
12906 #(ribcage () () ())
12907 #(ribcage () () ())
12921 #("i" "i" "i" "i")))
12926 ((lambda (#{tmp\ 5507}#)
12928 (apply (lambda (#{x\ 5508}#)
12929 (cons '#(syntax-object
12968 ((lambda (#{_\ 5510}#)
12969 (list '#(syntax-object
12980 #(ribcage () () ())
12981 #(ribcage () () ())
12995 #("i" "i" "i" "i")))
13005 #(ribcage #(x) #((top)) #("i"))
13006 #(ribcage () () ())
13007 #(ribcage () () ())
13008 #(ribcage #(x) #((top)) #("i"))
13014 #((top) (top) (top) (top))
13015 #("i" "i" "i" "i")))
13025 #(ribcage #(x) #((top)) #("i"))
13026 #(ribcage () () ())
13027 #(ribcage () () ())
13028 #(ribcage #(x) #((top)) #("i"))
13034 #((top) (top) (top) (top))
13035 #("i" "i" "i" "i")))
13042 (lambda (#{p\ 5511}# #{lev\ 5512}#)
13043 ((lambda (#{tmp\ 5513}#)
13044 ((lambda (#{tmp\ 5514}#)
13046 (apply (lambda (#{p\ 5515}#)
13047 (if (= #{lev\ 5512}# 0)
13049 (#{quasicons\ 5471}#
13057 #(ribcage () () ())
13067 #((top) (top) (top) (top))
13068 #("i" "i" "i" "i")))
13077 #(ribcage () () ())
13087 #((top) (top) (top) (top))
13088 #("i" "i" "i" "i")))
13092 (- #{lev\ 5512}# 1)))))
13094 ((lambda (#{tmp\ 5516}#)
13095 (if (if #{tmp\ 5516}#
13096 (apply (lambda (#{args\ 5517}#)
13097 (= #{lev\ 5512}# 0))
13100 (apply (lambda (#{args\ 5518}#)
13103 "unquote takes exactly one argument"
13105 (cons '#(syntax-object
13112 #(ribcage () () ())
13126 #("i" "i" "i" "i")))
13130 ((lambda (#{tmp\ 5519}#)
13132 (apply (lambda (#{p\ 5520}#
13134 (if (= #{lev\ 5512}# 0)
13135 (#{quasiappend\ 5472}#
13140 (#{quasicons\ 5471}#
13141 (#{quasicons\ 5471}#
13202 (- #{lev\ 5512}# 1)))
13207 ((lambda (#{tmp\ 5522}#)
13208 (if (if #{tmp\ 5522}#
13209 (apply (lambda (#{args\ 5523}#
13211 (= #{lev\ 5512}# 0))
13214 (apply (lambda (#{args\ 5525}#
13218 "unquote-splicing takes exactly one argument"
13220 (cons '#(syntax-object
13256 ((lambda (#{tmp\ 5527}#)
13258 (apply (lambda (#{p\ 5528}#)
13259 (#{quasicons\ 5471}#
13329 ((lambda (#{tmp\ 5529}#)
13331 (apply (lambda (#{p\ 5530}#
13333 (#{quasicons\ 5471}#
13341 ((lambda (#{tmp\ 5532}#)
13343 (apply (lambda (#{x\ 5533}#)
13344 (#{quasivector\ 5473}#
13349 ((lambda (#{p\ 5535}#)
13350 (list '#(syntax-object
13398 #(ribcage () () ())
13412 #("i" "i" "i" "i")))
13421 #(ribcage () () ())
13435 #("i" "i" "i" "i")))
13447 #(ribcage () () ())
13457 #((top) (top) (top) (top))
13458 #("i" "i" "i" "i")))
13469 #(ribcage () () ())
13479 #((top) (top) (top) (top))
13480 #("i" "i" "i" "i")))
13490 #(ribcage () () ())
13500 #((top) (top) (top) (top))
13501 #("i" "i" "i" "i")))
13505 (lambda (#{x\ 5536}#)
13506 ((lambda (#{tmp\ 5537}#)
13507 ((lambda (#{tmp\ 5538}#)
13509 (apply (lambda (#{_\ 5539}# #{e\ 5540}#)
13510 (#{quasi\ 5474}# #{e\ 5540}# 0))
13514 "source expression failed to match any pattern"
13516 ($sc-dispatch #{tmp\ 5537}# (quote (any any)))))
13518 (module-name (current-module)))))
13521 (make-syncase-macro
13523 (cons (lambda (#{x\ 5541}#)
13524 (letrec ((#{read-file\ 5542}#
13525 (lambda (#{fn\ 5543}# #{k\ 5544}#)
13526 (let ((#{p\ 5545}# (open-input-file #{fn\ 5543}#)))
13527 (letrec ((#{f\ 5546}#
13528 (lambda (#{x\ 5547}#)
13529 (if (eof-object? #{x\ 5547}#)
13531 (close-input-port #{p\ 5545}#)
13533 (cons (datum->syntax
13537 (read #{p\ 5545}#)))))))
13538 (#{f\ 5546}# (read #{p\ 5545}#)))))))
13539 ((lambda (#{tmp\ 5548}#)
13540 ((lambda (#{tmp\ 5549}#)
13542 (apply (lambda (#{k\ 5550}# #{filename\ 5551}#)
13543 (let ((#{fn\ 5552}#
13544 (syntax->datum #{filename\ 5551}#)))
13545 ((lambda (#{tmp\ 5553}#)
13546 ((lambda (#{tmp\ 5554}#)
13548 (apply (lambda (#{exp\ 5555}#)
13549 (cons '#(syntax-object
13556 #(ribcage () () ())
13557 #(ribcage () () ())
13579 "source expression failed to match any pattern"
13584 (#{read-file\ 5542}#
13590 "source expression failed to match any pattern"
13592 ($sc-dispatch #{tmp\ 5548}# (quote (any any)))))
13594 (module-name (current-module)))))
13596 (define include-from-path
13597 (make-syncase-macro
13599 (cons (lambda (#{x\ 5557}#)
13600 ((lambda (#{tmp\ 5558}#)
13601 ((lambda (#{tmp\ 5559}#)
13603 (apply (lambda (#{k\ 5560}# #{filename\ 5561}#)
13604 (let ((#{fn\ 5562}#
13605 (syntax->datum #{filename\ 5561}#)))
13606 ((lambda (#{tmp\ 5563}#)
13607 ((lambda (#{fn\ 5564}#)
13608 (list '#(syntax-object
13611 #(ribcage #(fn) #((top)) #("i"))
13612 #(ribcage () () ())
13613 #(ribcage () () ())
13614 #(ribcage #(fn) #((top)) #("i"))
13619 #(ribcage () () ())
13620 #(ribcage #(x) #((top)) #("i")))
13625 (%search-load-path #{fn\ 5562}#)))
13630 "file not found in path"
13632 #{filename\ 5561}#))))))
13636 "source expression failed to match any pattern"
13638 ($sc-dispatch #{tmp\ 5558}# (quote (any any)))))
13640 (module-name (current-module)))))
13643 (make-syncase-macro
13645 (cons (lambda (#{x\ 5566}#)
13646 ((lambda (#{tmp\ 5567}#)
13647 ((lambda (#{tmp\ 5568}#)
13649 (apply (lambda (#{_\ 5569}# #{e\ 5570}#)
13652 "expression not valid outside of quasiquote"
13657 "source expression failed to match any pattern"
13659 ($sc-dispatch #{tmp\ 5567}# (quote (any any)))))
13661 (module-name (current-module)))))
13663 (define unquote-splicing
13664 (make-syncase-macro
13666 (cons (lambda (#{x\ 5571}#)
13667 ((lambda (#{tmp\ 5572}#)
13668 ((lambda (#{tmp\ 5573}#)
13670 (apply (lambda (#{_\ 5574}# #{e\ 5575}#)
13673 "expression not valid outside of quasiquote"
13678 "source expression failed to match any pattern"
13680 ($sc-dispatch #{tmp\ 5572}# (quote (any any)))))
13682 (module-name (current-module)))))
13685 (make-syncase-macro
13687 (cons (lambda (#{x\ 5576}#)
13688 ((lambda (#{tmp\ 5577}#)
13689 ((lambda (#{tmp\ 5578}#)
13691 (apply (lambda (#{_\ 5579}#
13695 ((lambda (#{tmp\ 5583}#)
13696 ((lambda (#{body\ 5584}#)
13697 (list '#(syntax-object
13700 #(ribcage #(body) #((top)) #("i"))
13703 #((top) (top) (top) (top))
13704 #("i" "i" "i" "i"))
13705 #(ribcage () () ())
13706 #(ribcage #(x) #((top)) #("i")))
13708 (list (list '#(syntax-object
13721 #("i" "i" "i" "i"))
13722 #(ribcage () () ())
13731 (letrec ((#{f\ 5585}#
13732 (lambda (#{clause\ 5586}#
13734 (if (null? #{clauses\ 5587}#)
13735 ((lambda (#{tmp\ 5589}#)
13736 ((lambda (#{tmp\ 5590}#)
13738 (apply (lambda (#{e1\ 5591}#
13740 (cons '#(syntax-object
13790 ((lambda (#{tmp\ 5594}#)
13792 (apply (lambda (#{k\ 5595}#
13795 (list '#(syntax-object
13845 (list '#(syntax-object
13945 (list '#(syntax-object
13996 (cons '#(syntax-object
14049 ((lambda (#{_\ 5600}#)
14068 #(ribcage () () ())
14070 #(f clause clauses)
14081 #("i" "i" "i" "i"))
14082 #(ribcage () () ())
14092 ((lambda (#{tmp\ 5601}#)
14093 ((lambda (#{rest\ 5602}#)
14094 ((lambda (#{tmp\ 5603}#)
14095 ((lambda (#{tmp\ 5604}#)
14097 (apply (lambda (#{k\ 5605}#
14100 (list '#(syntax-object
14154 (list '#(syntax-object
14262 (list '#(syntax-object
14317 (cons '#(syntax-object
14375 ((lambda (#{_\ 5610}#)
14391 (car #{clauses\ 5587}#)
14392 (cdr #{clauses\ 5587}#)))))))
14393 (#{f\ 5585}# #{m1\ 5581}# #{m2\ 5582}#))))
14397 "source expression failed to match any pattern"
14401 '(any any any . each-any))))
14403 (module-name (current-module)))))
14405 (define identifier-syntax
14406 (make-syncase-macro
14408 (cons (lambda (#{x\ 5611}#)
14409 ((lambda (#{tmp\ 5612}#)
14410 ((lambda (#{tmp\ 5613}#)
14412 (apply (lambda (#{_\ 5614}# #{e\ 5615}#)
14413 (list '#(syntax-object
14420 #(ribcage () () ())
14421 #(ribcage #(x) #((top)) #("i")))
14430 #(ribcage () () ())
14431 #(ribcage #(x) #((top)) #("i")))
14433 (list '#(syntax-object
14440 #(ribcage () () ())
14441 #(ribcage #(x) #((top)) #("i")))
14450 #(ribcage () () ())
14451 #(ribcage #(x) #((top)) #("i")))
14454 (list '#(syntax-object
14461 #(ribcage () () ())
14474 #(ribcage () () ())
14487 #(ribcage () () ())
14500 #(ribcage () () ())
14506 (list '#(syntax-object
14513 #(ribcage () () ())
14520 (list (cons #{_\ 5614}#
14528 #(ribcage () () ())
14541 #(ribcage () () ())
14547 (list '#(syntax-object
14554 #(ribcage () () ())
14599 "source expression failed to match any pattern"
14601 ($sc-dispatch #{tmp\ 5612}# (quote (any any)))))
14603 (module-name (current-module)))))
14606 (make-syncase-macro
14608 (cons (lambda (#{x\ 5616}#)
14609 ((lambda (#{tmp\ 5617}#)
14610 ((lambda (#{tmp\ 5618}#)
14612 (apply (lambda (#{dummy\ 5619}#
14617 (list '#(syntax-object
14621 #(dummy id args b0 b1)
14622 #(("m" top) (top) (top) (top) (top))
14623 #("i" "i" "i" "i" "i"))
14624 #(ribcage () () ())
14625 #(ribcage #(x) #(("m" top)) #("i")))
14628 (cons '#(syntax-object
14632 #(dummy id args b0 b1)
14638 #("i" "i" "i" "i" "i"))
14639 #(ribcage () () ())
14645 (cons #{args\ 5621}#
14651 "source expression failed to match any pattern"
14655 '(any (any . any) any . each-any))))
14657 (module-name (current-module)))))