ikarus/src/psyntax-7.1.pp

10705 lines
1.3 MiB

<
;;; psyntax.pp
;;; automatically generated from psyntax.ss
;;; Tue Aug 1 21:30:16 EDT 2006
;;; see copyright notice in psyntax.ss
(let ()
(define + fx+)
;(define - fx-)
(define * fx*)
(define quotient fxquotient)
(define modulo fxmodulo)
(define number? fixnum?)
(define = fx=)
(define > fx>)
(define >= fx>=)
(define < fx<)
(define <= fx<=)
((lambda ()
(letrec ((noexpand62 '"noexpand")
(make-syntax-object63 (lambda (expression2523 wrap2522)
(vector
'syntax-object
expression2523
wrap2522)))
(syntax-object?64 (lambda (x2521)
(if (vector? x2521)
(if (= (vector-length x2521) '3)
(eq? (vector-ref x2521 '0)
'syntax-object)
'#f)
'#f)))
(syntax-object-expression65 (lambda (x2520)
(vector-ref x2520 '1)))
(syntax-object-wrap66 (lambda (x2519)
(vector-ref x2519 '2)))
(set-syntax-object-expression!67 (lambda (x2518 update2517)
(vector-set!
x2518
'1
update2517)))
(set-syntax-object-wrap!68 (lambda (x2516 update2515)
(vector-set!
x2516
'2
update2515)))
(annotation?132 (lambda (x2514) '#f))
(top-level-eval-hook133 (lambda (x2513)
(eval (list noexpand62 x2513))))
(local-eval-hook134 (lambda (x2512)
(eval (list noexpand62 x2512))))
(define-top-level-value-hook135 (lambda (sym2511 val2510)
(top-level-eval-hook133
(list
'define
sym2511
(list 'quote val2510)))))
(error-hook136 (lambda (who2509 why2508 what2507)
(error who2509 '"~a ~s" why2508 what2507)))
(put-cte-hook141 (lambda (symbol2506 val2505)
($sc-put-cte symbol2506 val2505 '*top*)))
(get-global-definition-hook142 (lambda (symbol2504)
(getprop
symbol2504
'*sc-expander*)))
(put-global-definition-hook143 (lambda (symbol2503 x2502)
(if (not x2502)
(remprop
symbol2503
'*sc-expander*)
(putprop
symbol2503
'*sc-expander*
x2502))))
(read-only-binding?144 (lambda (symbol2501) '#f))
(get-import-binding145 (lambda (symbol2500 token2499)
(getprop symbol2500 token2499)))
(put-import-binding146 (lambda (symbol2498 token2497 x2496)
(if (not x2496)
(remprop symbol2498 token2497)
(putprop
symbol2498
token2497
x2496))))
(generate-id147 ((lambda (digits2482)
((lambda (base2484 session-key2483)
(letrec ((make-digit2485 (lambda (x2495)
(string-ref
digits2482
x2495)))
(fmt2486 (lambda (n2489)
((letrec ((fmt2490 (lambda (n2492
a2491)
(if (< n2492
base2484)
(list->string
(cons
(make-digit2485
n2492)
a2491))
((lambda (r2494
rest2493)
(fmt2490
rest2493
(cons
(make-digit2485
r2494)
a2491)))
(modulo
n2492
base2484)
(quotient
n2492
base2484))))))
fmt2490)
n2489
'()))))
((lambda (n2487)
(lambda (name2488)
(begin
(set! n2487 (+ n2487 '1))
(string->symbol
(string-append
session-key2483
(fmt2486 n2487))))))
'-1)))
(string-length digits2482)
'"_"))
'"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!$%&*/:<=>?~_^.+-"))
(built-lambda?221 (lambda (x2481)
(if (pair? x2481)
(eq? (car x2481) 'lambda)
'#f)))
(build-sequence239 (lambda (ae2478 exps2477)
((letrec ((loop2479 (lambda (exps2480)
(if (null?
(cdr exps2480))
(car exps2480)
(if (equal?
(car exps2480)
'(void))
(loop2479
(cdr exps2480))
(cons
'begin
exps2480))))))
loop2479)
exps2477)))
(build-letrec240 (lambda (ae2476 vars2475 val-exps2474
body-exp2473)
(if (null? vars2475)
body-exp2473
(list
'letrec
(map list vars2475 val-exps2474)
body-exp2473))))
(build-body241 (lambda (ae2472 vars2471 val-exps2470
body-exp2469)
(build-letrec240
ae2472
vars2471
val-exps2470
body-exp2469)))
(build-top-module242 (lambda (ae2457 types2456 vars2455
val-exps2454 body-exp2453)
(call-with-values
(lambda ()
((letrec ((f2461 (lambda (types2463
vars2462)
(if (null?
types2463)
(values
'()
'()
'())
((lambda (var2464)
(call-with-values
(lambda ()
(f2461
(cdr types2463)
(cdr vars2462)))
(lambda (vars2467
defns2466
sets2465)
(if (eq? (car types2463)
'global)
((lambda (x2468)
(values
(cons
x2468
vars2467)
(cons
(list
'define
var2464
(chi-void513))
defns2466)
(cons
(list
'set!
var2464
x2468)
sets2465)))
(gensym))
(values
(cons
var2464
vars2467)
defns2466
sets2465)))))
(car vars2462))))))
f2461)
types2456
vars2455))
(lambda (vars2460 defns2459 sets2458)
(if (null? defns2459)
(build-letrec240
ae2457
vars2460
val-exps2454
body-exp2453)
(build-sequence239
'#f
(append
defns2459
(list
(build-letrec240
ae2457
vars2460
val-exps2454
(build-sequence239
'#f
(append
sets2458
(list
body-exp2453))))))))))))
(sanitize-binding275 (lambda (b2449)
(if (procedure? b2449)
(cons 'macro b2449)
(if (binding?289 b2449)
(if ((lambda (t2450)
(if (memv
t2450
'(core
macro
macro!
deferred))
(procedure?
(binding-value286
b2449))
(if (memv
t2450
'($module))
(interface?447
(binding-value286
b2449))
(if (memv
t2450
'(lexical))
'#f
(if (memv
t2450
'(global
meta-variable))
(symbol?
(binding-value286
b2449))
(if (memv
t2450
'(syntax))
((lambda (x2451)
(if (pair?
x2451)
(if '#f
((lambda (n2452)
(if (integer?
n2452)
(if (exact?
n2452)
(>= n2452
'0)
'#f)
'#f))
(cdr x2451))
'#f)
'#f))
(binding-value286
b2449))
(if (memv
t2450
'(begin
define
define-syntax
set!
$module-key
$import
eval-when
meta))
(null?
(binding-value286
b2449))
(if (memv
t2450
'(local-syntax))
(boolean?
(binding-value286
b2449))
(if (memv
t2450
'(displaced-lexical))
(eq? (binding-value286
b2449)
'#f)
'#t)))))))))
(binding-type285 b2449))
b2449
'#f)
'#f))))
(binding-type285 car)
(binding-value286 cdr)
(set-binding-type!287 set-car!)
(set-binding-value!288 set-cdr!)
(binding?289 (lambda (x2448)
(if (pair? x2448) (symbol? (car x2448)) '#f)))
(extend-env299 (lambda (label2447 binding2446 r2445)
(cons (cons label2447 binding2446) r2445)))
(extend-env*300 (lambda (labels2444 bindings2443 r2442)
(if (null? labels2444)
r2442
(extend-env*300
(cdr labels2444)
(cdr bindings2443)
(extend-env299
(car labels2444)
(car bindings2443)
r2442)))))
(extend-var-env*301 (lambda (labels2441 vars2440 r2439)
(if (null? labels2441)
r2439
(extend-var-env*301
(cdr labels2441)
(cdr vars2440)
(extend-env299
(car labels2441)
(cons 'lexical (car vars2440))
r2439)))))
(displaced-lexical?302 (lambda (id2436 r2435)
((lambda (n2437)
(if n2437
((lambda (b2438)
(eq? (binding-type285 b2438)
'displaced-lexical))
(lookup305 n2437 r2435))
'#f))
(id-var-name429 id2436 '(())))))
(displaced-lexical-error303 (lambda (id2434)
(syntax-error
id2434
(if (id-var-name429
id2434
'(()))
'"identifier out of context"
'"identifier not visible"))))
(lookup*304 (lambda (x2431 r2430)
((lambda (t2432)
(if t2432
(cdr t2432)
(if (symbol? x2431)
((lambda (t2433)
(if t2433
t2433
(cons 'global x2431)))
(get-global-definition-hook142
x2431))
'(displaced-lexical . #f))))
(assq x2431 r2430))))
(lookup305 (lambda (x2425 r2424)
(letrec ((whack-binding!2426 (lambda (b2429
*b2428)
(begin
(set-binding-type!287
b2429
(binding-type285
*b2428))
(set-binding-value!288
b2429
(binding-value286
*b2428))))))
((lambda (b2427)
(begin
(if (eq? (binding-type285 b2427) 'deferred)
(whack-binding!2426
b2427
(make-transformer-binding306
((binding-value286 b2427))))
(void))
b2427))
(lookup*304 x2425 r2424)))))
(make-transformer-binding306 (lambda (b2422)
((lambda (t2423)
(if t2423
t2423
(syntax-error
b2422
'"invalid transformer")))
(sanitize-binding275 b2422))))
(defer-or-eval-transformer307 (lambda (eval2421 x2420)
(if (built-lambda?221 x2420)
(cons
'deferred
(lambda ()
(eval2421 x2420)))
(make-transformer-binding306
(eval2421 x2420)))))
(global-extend308 (lambda (type2419 sym2418 val2417)
(put-cte-hook141
sym2418
(cons type2419 val2417))))
(nonsymbol-id?309 (lambda (x2415)
(if (syntax-object?64 x2415)
(symbol?
((lambda (e2416)
(if (annotation?132 e2416)
(annotation-expression e2416)
e2416))
(syntax-object-expression65
x2415)))
'#f)))
(id?310 (lambda (x2413)
(if (symbol? x2413)
'#t
(if (syntax-object?64 x2413)
(symbol?
((lambda (e2414)
(if (annotation?132 e2414)
(annotation-expression e2414)
e2414))
(syntax-object-expression65 x2413)))
(if (annotation?132 x2413)
(symbol? (annotation-expression x2413))
'#f)))))
(id-marks316 (lambda (id2412)
(if (syntax-object?64 id2412)
(wrap-marks320
(syntax-object-wrap66 id2412))
(wrap-marks320 '((top))))))
(id-subst317 (lambda (id2411)
(if (syntax-object?64 id2411)
(wrap-subst321
(syntax-object-wrap66 id2411))
(wrap-marks320 '((top))))))
(id-sym-name&marks318 (lambda (x2408 w2407)
(if (syntax-object?64 x2408)
(values
((lambda (e2409)
(if (annotation?132 e2409)
(annotation-expression
e2409)
e2409))
(syntax-object-expression65
x2408))
(join-marks418
(wrap-marks320 w2407)
(wrap-marks320
(syntax-object-wrap66
x2408))))
(values
((lambda (e2410)
(if (annotation?132 e2410)
(annotation-expression
e2410)
e2410))
x2408)
(wrap-marks320 w2407)))))
(make-wrap319 cons)
(wrap-marks320 car)
(wrap-subst321 cdr)
(make-indirect-label350 (lambda (label2406)
(vector 'indirect-label label2406)))
(indirect-label?351 (lambda (x2405)
(if (vector? x2405)
(if (= (vector-length x2405) '2)
(eq? (vector-ref x2405 '0)
'indirect-label)
'#f)
'#f)))
(indirect-label-label352 (lambda (x2404)
(vector-ref x2404 '1)))
(set-indirect-label-label!353 (lambda (x2403 update2402)
(vector-set!
x2403
'1
update2402)))
(gen-indirect-label354 (lambda ()
(make-indirect-label350
(gen-label357))))
(get-indirect-label355 (lambda (x2401)
(indirect-label-label352 x2401)))
(set-indirect-label!356 (lambda (x2400 v2399)
(set-indirect-label-label!353
x2400
v2399)))
(gen-label357 (lambda () (string '#\i)))
(label?358 (lambda (x2396)
((lambda (t2397)
(if t2397
t2397
((lambda (t2398)
(if t2398
t2398
(indirect-label?351 x2396)))
(symbol? x2396))))
(string? x2396))))
(gen-labels359 (lambda (ls2395)
(if (null? ls2395)
'()
(cons
(gen-label357)
(gen-labels359 (cdr ls2395))))))
(make-ribcage360 (lambda (symnames2394 marks2393 labels2392)
(vector
'ribcage
symnames2394
marks2393
labels2392)))
(ribcage?361 (lambda (x2391)
(if (vector? x2391)
(if (= (vector-length x2391) '4)
(eq? (vector-ref x2391 '0) 'ribcage)
'#f)
'#f)))
(ribcage-symnames362 (lambda (x2390) (vector-ref x2390 '1)))
(ribcage-marks363 (lambda (x2389) (vector-ref x2389 '2)))
(ribcage-labels364 (lambda (x2388) (vector-ref x2388 '3)))
(set-ribcage-symnames!365 (lambda (x2387 update2386)
(vector-set! x2387 '1 update2386)))
(set-ribcage-marks!366 (lambda (x2385 update2384)
(vector-set! x2385 '2 update2384)))
(set-ribcage-labels!367 (lambda (x2383 update2382)
(vector-set! x2383 '3 update2382)))
(make-top-ribcage368 (lambda (key2381 mutable?2380)
(vector
'top-ribcage
key2381
mutable?2380)))
(top-ribcage?369 (lambda (x2379)
(if (vector? x2379)
(if (= (vector-length x2379) '3)
(eq? (vector-ref x2379 '0)
'top-ribcage)
'#f)
'#f)))
(top-ribcage-key370 (lambda (x2378) (vector-ref x2378 '1)))
(top-ribcage-mutable?371 (lambda (x2377)
(vector-ref x2377 '2)))
(set-top-ribcage-key!372 (lambda (x2376 update2375)
(vector-set! x2376 '1 update2375)))
(set-top-ribcage-mutable?!373 (lambda (x2374 update2373)
(vector-set!
x2374
'2
update2373)))
(make-import-interface374 (lambda (interface2372
new-marks2371)
(vector
'import-interface
interface2372
new-marks2371)))
(import-interface?375 (lambda (x2370)
(if (vector? x2370)
(if (= (vector-length x2370) '3)
(eq? (vector-ref x2370 '0)
'import-interface)
'#f)
'#f)))
(import-interface-interface376 (lambda (x2369)
(vector-ref x2369 '1)))
(import-interface-new-marks377 (lambda (x2368)
(vector-ref x2368 '2)))
(set-import-interface-interface!378 (lambda (x2367
update2366)
(vector-set!
x2367
'1
update2366)))
(set-import-interface-new-marks!379 (lambda (x2365
update2364)
(vector-set!
x2365
'2
update2364)))
(make-env380 (lambda (top-ribcage2363 wrap2362)
(vector 'env top-ribcage2363 wrap2362)))
(env?381 (lambda (x2361)
(if (vector? x2361)
(if (= (vector-length x2361) '3)
(eq? (vector-ref x2361 '0) 'env)
'#f)
'#f)))
(env-top-ribcage382 (lambda (x2360) (vector-ref x2360 '1)))
(env-wrap383 (lambda (x2359) (vector-ref x2359 '2)))
(set-env-top-ribcage!384 (lambda (x2358 update2357)
(vector-set! x2358 '1 update2357)))
(set-env-wrap!385 (lambda (x2356 update2355)
(vector-set! x2356 '2 update2355)))
(anti-mark395 (lambda (w2354)
(make-wrap319
(cons '#f (wrap-marks320 w2354))
(cons 'shift (wrap-subst321 w2354)))))
(barrier-marker400 '#f)
(extend-ribcage!405 (lambda (ribcage2352 id2351 label2350)
(begin
(set-ribcage-symnames!365
ribcage2352
(cons
((lambda (e2353)
(if (annotation?132 e2353)
(annotation-expression
e2353)
e2353))
(syntax-object-expression65
id2351))
(ribcage-symnames362 ribcage2352)))
(set-ribcage-marks!366
ribcage2352
(cons
(wrap-marks320
(syntax-object-wrap66 id2351))
(ribcage-marks363 ribcage2352)))
(set-ribcage-labels!367
ribcage2352
(cons
label2350
(ribcage-labels364
ribcage2352))))))
(import-extend-ribcage!406 (lambda (ribcage2348
new-marks2347 id2346
label2345)
(begin
(set-ribcage-symnames!365
ribcage2348
(cons
((lambda (e2349)
(if (annotation?132
e2349)
(annotation-expression
e2349)
e2349))
(syntax-object-expression65
id2346))
(ribcage-symnames362
ribcage2348)))
(set-ribcage-marks!366
ribcage2348
(cons
(join-marks418
new-marks2347
(wrap-marks320
(syntax-object-wrap66
id2346)))
(ribcage-marks363
ribcage2348)))
(set-ribcage-labels!367
ribcage2348
(cons
label2345
(ribcage-labels364
ribcage2348))))))
(extend-ribcage-barrier!407 (lambda (ribcage2344
killer-id2343)
(extend-ribcage-barrier-help!408
ribcage2344
(syntax-object-wrap66
killer-id2343))))
(extend-ribcage-barrier-help!408 (lambda (ribcage2342
wrap2341)
(begin
(set-ribcage-symnames!365
ribcage2342
(cons
barrier-marker400
(ribcage-symnames362
ribcage2342)))
(set-ribcage-marks!366
ribcage2342
(cons
(wrap-marks320
wrap2341)
(ribcage-marks363
ribcage2342))))))
(extend-ribcage-subst!409 (lambda (ribcage2340
import-iface2339)
(set-ribcage-symnames!365
ribcage2340
(cons
import-iface2339
(ribcage-symnames362
ribcage2340)))))
(lookup-import-binding-name410 (lambda (sym2334 marks2333
token2332
new-marks2331)
((lambda (new2335)
(if new2335
((letrec ((f2336 (lambda (new2337)
(if (pair?
new2337)
((lambda (t2338)
(if t2338
t2338
(f2336
(cdr new2337))))
(f2336
(car new2337)))
(if (symbol?
new2337)
(if (same-marks?420
marks2333
(join-marks418
new-marks2331
(wrap-marks320
'((top)))))
new2337
'#f)
(if (same-marks?420
marks2333
(join-marks418
new-marks2331
(wrap-marks320
(syntax-object-wrap66
new2337))))
new2337
'#f))))))
f2336)
new2335)
'#f))
(get-import-binding145
sym2334
token2332))))
(store-import-binding411 (lambda (id2316 token2315
new-marks2314)
(letrec ((cons-id2317 (lambda (id2330
x2329)
(if (not x2329)
id2330
(cons
id2330
x2329))))
(weed2318 (lambda (marks2328
x2327)
(if (pair?
x2327)
(if (same-marks?420
(id-marks316
(car x2327))
marks2328)
(weed2318
marks2328
(cdr x2327))
(cons-id2317
(car x2327)
(weed2318
marks2328
(cdr x2327))))
(if x2327
(if (not (same-marks?420
(id-marks316
x2327)
marks2328))
x2327
'#f)
'#f)))))
((lambda (id2319)
((lambda (sym2320)
(if (not (eq? id2319
sym2320))
((lambda (marks2321)
((lambda (x2322)
(put-import-binding146
sym2320
token2315
(cons-id2317
(if (same-marks?420
marks2321
(wrap-marks320
'((top))))
(resolved-id-var-name415
id2319)
id2319)
x2322)))
(weed2318
marks2321
(get-import-binding145
sym2320
token2315))))
(id-marks316 id2319))
(void)))
((lambda (x2323)
((lambda (e2324)
(if (annotation?132
e2324)
(annotation-expression
e2324)
e2324))
(if (syntax-object?64
x2323)
(syntax-object-expression65
x2323)
x2323)))
id2319)))
(if (null? new-marks2314)
id2316
(make-syntax-object63
((lambda (x2325)
((lambda (e2326)
(if (annotation?132
e2326)
(annotation-expression
e2326)
e2326))
(if (syntax-object?64
x2325)
(syntax-object-expression65
x2325)
x2325)))
id2316)
(make-wrap319
(join-marks418
new-marks2314
(id-marks316 id2316))
(id-subst317
id2316))))))))
(make-binding-wrap412 (lambda (ids2304 labels2303 w2302)
(if (null? ids2304)
w2302
(make-wrap319
(wrap-marks320 w2302)
(cons
((lambda (labelvec2305)
((lambda (n2306)
((lambda (symnamevec2308
marksvec2307)
(begin
((letrec ((f2309 (lambda (ids2311
i2310)
(if (not (null?
ids2311))
(call-with-values
(lambda ()
(id-sym-name&marks318
(car ids2311)
w2302))
(lambda (symname2313
marks2312)
(begin
(vector-set!
symnamevec2308
i2310
symname2313)
(vector-set!
marksvec2307
i2310
marks2312)
(f2309
(cdr ids2311)
(+ i2310
'1)))))
(void)))))
f2309)
ids2304
'0)
(make-ribcage360
symnamevec2308
marksvec2307
labelvec2305)))
(make-vector n2306)
(make-vector n2306)))
(vector-length
labelvec2305)))
(list->vector labels2303))
(wrap-subst321 w2302))))))
(make-resolved-id413 (lambda (fromsym2301 marks2300
tosym2299)
(make-syntax-object63
fromsym2301
(make-wrap319
marks2300
(list
(make-ribcage360
(vector fromsym2301)
(vector marks2300)
(vector tosym2299)))))))
(id->resolved-id414 (lambda (id2294)
(call-with-values
(lambda ()
(id-var-name&marks427 id2294 '(())))
(lambda (tosym2296 marks2295)
(begin
(if (not tosym2296)
(syntax-error
id2294
'"identifier not visible for export")
(void))
(make-resolved-id413
((lambda (x2297)
((lambda (e2298)
(if (annotation?132 e2298)
(annotation-expression
e2298)
e2298))
(if (syntax-object?64 x2297)
(syntax-object-expression65
x2297)
x2297)))
id2294)
marks2295
tosym2296))))))
(resolved-id-var-name415 (lambda (id2293)
(vector-ref
(ribcage-labels364
(car (wrap-subst321
(syntax-object-wrap66
id2293))))
'0)))
(smart-append416 (lambda (m12292 m22291)
(if (null? m22291)
m12292
(append m12292 m22291))))
(join-wraps417 (lambda (w12288 w22287)
((lambda (m12290 s12289)
(if (null? m12290)
(if (null? s12289)
w22287
(make-wrap319
(wrap-marks320 w22287)
(join-subst419
s12289
(wrap-subst321 w22287))))
(make-wrap319
(join-marks418
m12290
(wrap-marks320 w22287))
(join-subst419
s12289
(wrap-subst321 w22287)))))
(wrap-marks320 w12288)
(wrap-subst321 w12288))))
(join-marks418 (lambda (m12286 m22285)
(smart-append416 m12286 m22285)))
(join-subst419 (lambda (s12284 s22283)
(smart-append416 s12284 s22283)))
(same-marks?420 (lambda (x2281 y2280)
((lambda (t2282)
(if t2282
t2282
(if (not (null? x2281))
(if (not (null? y2280))
(if (eq? (car x2281)
(car y2280))
(same-marks?420
(cdr x2281)
(cdr y2280))
'#f)
'#f)
'#f)))
(eq? x2281 y2280))))
(diff-marks421 (lambda (m12274 m22273)
((lambda (n12276 n22275)
((letrec ((f2277 (lambda (n12279 m12278)
(if (> n12279 n22275)
(cons
(car m12278)
(f2277
(fx- n12279 '1)
(cdr m12278)))
(if (equal?
m12278
m22273)
'()
(error 'sc-expand
'"internal error in diff-marks: ~s is not a tail of ~s"
m12278
m22273))))))
f2277)
n12276
m12274))
(length m12274)
(length m22273))))
(leave-implicit?422 (lambda (token2272)
(eq? token2272 '*top*)))
(new-binding423 (lambda (sym2269 marks2268 token2267)
((lambda (loc2270)
((lambda (id2271)
(begin
(store-import-binding411
id2271
token2267
'())
(values loc2270 id2271)))
(make-resolved-id413
sym2269
marks2268
loc2270)))
(if (if (leave-implicit?422 token2267)
(same-marks?420
marks2268
(wrap-marks320 '((top))))
'#f)
sym2269
(generate-id147 sym2269)))))
(top-id-bound-var-name424 (lambda (sym2263 marks2262
top-ribcage2261)
((lambda (token2264)
((lambda (t2265)
(if t2265
((lambda (id2266)
(if (symbol? id2266)
(if (read-only-binding?144
id2266)
(new-binding423
sym2263
marks2262
token2264)
(values
id2266
(make-resolved-id413
sym2263
marks2262
id2266)))
(values
(resolved-id-var-name415
id2266)
id2266)))
t2265)
(new-binding423
sym2263
marks2262
token2264)))
(lookup-import-binding-name410
sym2263
marks2262
token2264
'())))
(top-ribcage-key370
top-ribcage2261))))
(top-id-free-var-name425 (lambda (sym2255 marks2254
top-ribcage2253)
((lambda (token2256)
((lambda (t2257)
(if t2257
((lambda (id2258)
(if (symbol? id2258)
id2258
(resolved-id-var-name415
id2258)))
t2257)
(if (if (top-ribcage-mutable?371
top-ribcage2253)
(same-marks?420
marks2254
(wrap-marks320
'((top))))
'#f)
(call-with-values
(lambda ()
(new-binding423
sym2255
(wrap-marks320
'((top)))
token2256))
(lambda (sym2260
id2259)
sym2260))
'#f)))
(lookup-import-binding-name410
sym2255
marks2254
token2256
'())))
(top-ribcage-key370
top-ribcage2253))))
(id-var-name-loc&marks426 (lambda (id2204 w2203)
(letrec ((search2205 (lambda (sym2248
subst2247
marks2246)
(if (null?
subst2247)
(values
'#f
marks2246)
((lambda (fst2249)
(if (eq? fst2249
'shift)
(search2205
sym2248
(cdr subst2247)
(cdr marks2246))
(if (ribcage?361
fst2249)
((lambda (symnames2250)
(if (vector?
symnames2250)
(search-vector-rib2207
sym2248
subst2247
marks2246
symnames2250
fst2249)
(search-list-rib2206
sym2248
subst2247
marks2246
symnames2250
fst2249)))
(ribcage-symnames362
fst2249))
(if (top-ribcage?369
fst2249)
((lambda (t2251)
(if t2251
((lambda (var-name2252)
(values
var-name2252
marks2246))
t2251)
(search2205
sym2248
(cdr subst2247)
marks2246)))
(top-id-free-var-name425
sym2248
marks2246
fst2249))
(error 'sc-expand
'"internal error in id-var-name-loc&marks: improper subst ~s"
subst2247)))))
(car subst2247)))))
(search-list-rib2206 (lambda (sym2226
subst2225
marks2224
symnames2223
ribcage2222)
((letrec ((f2227 (lambda (symnames2229
i2228)
(if (null?
symnames2229)
(search2205
sym2226
(cdr subst2225)
marks2224)
((lambda (x2230)
(if (if (eq? x2230
sym2226)
(same-marks?420
marks2224
(list-ref
(ribcage-marks363
ribcage2222)
i2228))
'#f)
(values
(list-ref
(ribcage-labels364
ribcage2222)
i2228)
marks2224)
(if (import-interface?375
x2230)
((lambda (iface2232
new-marks2231)
((lambda (t2233)
(if t2233
((lambda (token2234)
((lambda (t2235)
(if t2235
((lambda (id2236)
(values
(if (symbol?
id2236)
id2236
(resolved-id-var-name415
id2236))
marks2224))
t2235)
(f2227
(cdr symnames2229)
i2228)))
(lookup-import-binding-name410
sym2226
marks2224
token2234
new-marks2231)))
t2233)
((lambda (ie2237)
((lambda (n2238)
((lambda ()
((letrec ((g2239 (lambda (j2240)
(if (= j2240
n2238)
(f2227
(cdr symnames2229)
i2228)
((lambda (id2241)
((lambda (id.sym2243
id.marks2242)
(if (help-bound-id=?432
id.sym2243
id.marks2242
sym2226
marks2224)
(values
(lookup-import-label501
id2241)
marks2224)
(g2239
(+ j2240
'1))))
((lambda (x2244)
((lambda (e2245)
(if (annotation?132
e2245)
(annotation-expression
e2245)
e2245))
(if (syntax-object?64
x2244)
(syntax-object-expression65
x2244)
x2244)))
id2241)
(join-marks418
new-marks2231
(id-marks316
id2241))))
(vector-ref
ie2237
j2240))))))
g2239)
'0))))
(vector-length
ie2237)))
(interface-exports449
iface2232))))
(interface-token450
iface2232)))
(import-interface-interface376
x2230)
(import-interface-new-marks377
x2230))
(if (if (eq? x2230
barrier-marker400)
(same-marks?420
marks2224
(list-ref
(ribcage-marks363
ribcage2222)
i2228))
'#f)
(values
'#f
marks2224)
(f2227
(cdr symnames2229)
(+ i2228
'1))))))
(car symnames2229))))))
f2227)
symnames2223
'0)))
(search-vector-rib2207 (lambda (sym2218
subst2217
marks2216
symnames2215
ribcage2214)
((lambda (n2219)
((letrec ((f2220 (lambda (i2221)
(if (= i2221
n2219)
(search2205
sym2218
(cdr subst2217)
marks2216)
(if (if (eq? (vector-ref
symnames2215
i2221)
sym2218)
(same-marks?420
marks2216
(vector-ref
(ribcage-marks363
ribcage2214)
i2221))
'#f)
(values
(vector-ref
(ribcage-labels364
ribcage2214)
i2221)
marks2216)
(f2220
(+ i2221
'1)))))))
f2220)
'0))
(vector-length
symnames2215)))))
(if (symbol? id2204)
(search2205
id2204
(wrap-subst321 w2203)
(wrap-marks320 w2203))
(if (syntax-object?64 id2204)
((lambda (sym2209 w12208)
(call-with-values
(lambda ()
(search2205
sym2209
(wrap-subst321
w2203)
(join-marks418
(wrap-marks320
w2203)
(wrap-marks320
w12208))))
(lambda (name2211
marks2210)
(if name2211
(values
name2211
marks2210)
(search2205
sym2209
(wrap-subst321
w12208)
marks2210)))))
((lambda (e2212)
(if (annotation?132
e2212)
(annotation-expression
e2212)
e2212))
(syntax-object-expression65
id2204))
(syntax-object-wrap66
id2204))
(if (annotation?132
id2204)
(search2205
((lambda (e2213)
(if (annotation?132
e2213)
(annotation-expression
e2213)
e2213))
id2204)
(wrap-subst321
w2203)
(wrap-marks320
w2203))
(error-hook136
'id-var-name
'"invalid id"
id2204)))))))
(id-var-name&marks427 (lambda (id2200 w2199)
(call-with-values
(lambda ()
(id-var-name-loc&marks426
id2200
w2199))
(lambda (label2202 marks2201)
(values
(if (indirect-label?351
label2202)
(get-indirect-label355
label2202)
label2202)
marks2201)))))
(id-var-name-loc428 (lambda (id2196 w2195)
(call-with-values
(lambda ()
(id-var-name-loc&marks426
id2196
w2195))
(lambda (label2198 marks2197)
label2198))))
(id-var-name429 (lambda (id2192 w2191)
(call-with-values
(lambda ()
(id-var-name-loc&marks426 id2192 w2191))
(lambda (label2194 marks2193)
(if (indirect-label?351 label2194)
(get-indirect-label355 label2194)
label2194)))))
(free-id=?430 (lambda (i2186 j2185)
(if (eq? ((lambda (x2189)
((lambda (e2190)
(if (annotation?132 e2190)
(annotation-expression
e2190)
e2190))
(if (syntax-object?64 x2189)
(syntax-object-expression65
x2189)
x2189)))
i2186)
((lambda (x2187)
((lambda (e2188)
(if (annotation?132 e2188)
(annotation-expression
e2188)
e2188))
(if (syntax-object?64 x2187)
(syntax-object-expression65
x2187)
x2187)))
j2185))
(eq? (id-var-name429 i2186 '(()))
(id-var-name429 j2185 '(())))
'#f)))
(literal-id=?431 (lambda (id2175 literal2174)
(if (eq? ((lambda (x2178)
((lambda (e2179)
(if (annotation?132 e2179)
(annotation-expression
e2179)
e2179))
(if (syntax-object?64 x2178)
(syntax-object-expression65
x2178)
x2178)))
id2175)
((lambda (x2176)
((lambda (e2177)
(if (annotation?132 e2177)
(annotation-expression
e2177)
e2177))
(if (syntax-object?64 x2176)
(syntax-object-expression65
x2176)
x2176)))
literal2174))
((lambda (n-id2181 n-literal2180)
((lambda (t2182)
(if t2182
t2182
(if ((lambda (t2183)
(if t2183
t2183
(symbol?
n-id2181)))
(not n-id2181))
((lambda (t2184)
(if t2184
t2184
(symbol?
n-literal2180)))
(not n-literal2180))
'#f)))
(eq? n-id2181 n-literal2180)))
(id-var-name429 id2175 '(()))
(id-var-name429 literal2174 '(())))
'#f)))
(help-bound-id=?432 (lambda (i.sym2173 i.marks2172 j.sym2171
j.marks2170)
(if (eq? i.sym2173 j.sym2171)
(same-marks?420
i.marks2172
j.marks2170)
'#f)))
(bound-id=?433 (lambda (i2165 j2164)
(help-bound-id=?432
((lambda (x2168)
((lambda (e2169)
(if (annotation?132 e2169)
(annotation-expression e2169)
e2169))
(if (syntax-object?64 x2168)
(syntax-object-expression65 x2168)
x2168)))
i2165)
(id-marks316 i2165)
((lambda (x2166)
((lambda (e2167)
(if (annotation?132 e2167)
(annotation-expression e2167)
e2167))
(if (syntax-object?64 x2166)
(syntax-object-expression65 x2166)
x2166)))
j2164)
(id-marks316 j2164))))
(valid-bound-ids?434 (lambda (ids2160)
(if ((letrec ((all-ids?2161 (lambda (ids2162)
((lambda (t2163)
(if t2163
t2163
(if (id?310
(car ids2162))
(all-ids?2161
(cdr ids2162))
'#f)))
(null?
ids2162)))))
all-ids?2161)
ids2160)
(distinct-bound-ids?435 ids2160)
'#f)))
(distinct-bound-ids?435 (lambda (ids2156)
((letrec ((distinct?2157 (lambda (ids2158)
((lambda (t2159)
(if t2159
t2159
(if (not (bound-id-member?437
(car ids2158)
(cdr ids2158)))
(distinct?2157
(cdr ids2158))
'#f)))
(null?
ids2158)))))
distinct?2157)
ids2156)))
(invalid-ids-error436 (lambda (ids2152 exp2151 class2150)
((letrec ((find2153 (lambda (ids2155
gooduns2154)
(if (null?
ids2155)
(syntax-error
exp2151)
(if (id?310
(car ids2155))
(if (bound-id-member?437
(car ids2155)
gooduns2154)
(syntax-error
(car ids2155)
'"duplicate "
class2150)
(find2153
(cdr ids2155)
(cons
(car ids2155)
gooduns2154)))
(syntax-error
(car ids2155)
'"invalid "
class2150))))))
find2153)
ids2152
'())))
(bound-id-member?437 (lambda (x2148 list2147)
(if (not (null? list2147))
((lambda (t2149)
(if t2149
t2149
(bound-id-member?437
x2148
(cdr list2147))))
(bound-id=?433
x2148
(car list2147)))
'#f)))
(wrap438 (lambda (x2146 w2145)
(if (if (null? (wrap-marks320 w2145))
(null? (wrap-subst321 w2145))
'#f)
x2146
(if (syntax-object?64 x2146)
(make-syntax-object63
(syntax-object-expression65 x2146)
(join-wraps417
w2145
(syntax-object-wrap66 x2146)))
(if (null? x2146)
x2146
(make-syntax-object63 x2146 w2145))))))
(source-wrap439 (lambda (x2144 w2143 ae2142)
(wrap438
(if (annotation?132 ae2142)
(begin
(if (not (eq? (annotation-expression
ae2142)
x2144))
(error 'sc-expand
'"internal error in source-wrap: ae/x mismatch")
(void))
ae2142)
x2144)
w2143)))
(chi-when-list440 (lambda (when-list2140 w2139)
(map (lambda (x2141)
(if (literal-id=?431
x2141
'#(syntax-object compile ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i")) #(ribcage () () ()) #(ribcage #(when-list w) #((top) (top)) #("i" "i")) #(ribcage (lambda-var-list gen-var strip strip* strip-annotation ellipsis? chi-void chi-local-syntax chi-lambda-clause parse-begin parse-alias parse-eval-when parse-meta parse-define-syntax parse-define parse-import parse-module do-import! lookup-import-label import-mark-delta chi-internal chi-body chi-macro chi-set! chi-application chi-expr chi chi-sequence chi-meta-frob chi-frobs ct-eval/residualize3 ct-eval/residualize2 rt-eval/residualize initial-mode-set update-mode-set do-top-import vfor-each vmap chi-external check-defined-ids check-module-exports id-set-diff chi-top-module set-frob-meta?! set-frob-e! frob-meta? frob-e frob? make-frob create-module-binding set-module-binding-exported! set-module-binding-val! set-module-binding-imps! set-module-binding-label! set-module-binding-id! set-module-binding-type! module-binding-exported module-binding-val module-binding-imps module-binding-label module-binding-id module-binding-type module-binding? make-module-binding make-resolved-interface make-unresolved-interface set-interface-token! set-interface-exports! set-interface-marks! interface-token interface-exports interface-marks interface? make-interface flatten-exports chi-top chi-top-sequence chi-top* syntax-type chi-when-list source-wrap wrap bound-id-member? invalid-ids-error distinct-bound-ids? valid-bound-ids? bound-id=? help-bound-id=? literal-id=? free-id=? id-var-name id-var-name-loc id-var-name&marks id-var-name-loc&marks top-id-free-var-name top-id-bound-var-name anon diff-marks same-marks? join-subst join-marks join-wraps smart-append resolved-id-var-name id->resolved-id make-resolved-id make-binding-wrap store-import-binding lookup-import-binding-name extend-ribcage-subst! extend-ribcage-barrier-help! extend-ribcage-barrier! import-extend-ribcage! extend-ribcage! make-empty-ribcage barrier-marker new-mark anti-mark the-anti-mark set-env-wrap! set-env-top-ribcage! env-wrap env-top-ribcage env? make-env set-import-interface-new-marks! set-import-interface-interface! import-interface-new-marks import-interface-interface import-interface? make-import-interface set-top-ribcage-mutable?! set-top-ribcage-key! top-ribcage-mutable? top-ribcage-key top-ribcage? make-top-ribcage set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels label? gen-label set-indirect-label! get-indirect-label indirect-label? gen-indirect-label anon only-top-marked? top-marked? top-wrap empty-wrap wrap-subst wrap-marks make-wrap id-sym-name&marks id-subst id-marks id-sym-name id? nonsymbol-id? global-extend defer-or-eval-transformer make-transformer-binding lookup lookup* displaced-lexical-error displaced-lexical? extend-var-env* extend-env* extend-env null-env binding? set-binding-value! set-binding-type! binding-value binding-type make-binding sanitize-binding arg-check no-source unannotate self-evaluating? lexical-var? build-lexical-var build-top-module build-body build-letrec build-sequence build-data build-primref built-lambda? build-lambda build-revisit-only build-visit-only build-cte-install build-global-definition build-global-assignment build-global-reference build-lexical-assignment build-lexical-reference build-conditional build-application generate-id put-import-binding get-import-binding read-only-binding? put-global-definition-hook get-global-definition-hook put-cte-hook gensym-hook error-hook define-top-level-value-hook local-eval-hook top-level-eval-hook annotation? fx>= fx<= fx> fx< fx= fx- fx+ set-syntax-object-wrap! set-syntax-object-expression! syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object noexpand let-values define-structure unless when) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i")) #(top-ribcage *top* #t))))
'compile
(if (literal-id=?431
x2141
'#(syntax-object load ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i")) #(ribcage () () ()) #(ribcage #(when-list w) #((top) (top)) #("i" "i")) #(ribcage (lambda-var-list gen-var strip strip* strip-annotation ellipsis? chi-void chi-local-syntax chi-lambda-clause parse-begin parse-alias parse-eval-when parse-meta parse-define-syntax parse-define parse-import parse-module do-import! lookup-import-label import-mark-delta chi-internal chi-body chi-macro chi-set! chi-application chi-expr chi chi-sequence chi-meta-frob chi-frobs ct-eval/residualize3 ct-eval/residualize2 rt-eval/residualize initial-mode-set update-mode-set do-top-import vfor-each vmap chi-external check-defined-ids check-module-exports id-set-diff chi-top-module set-frob-meta?! set-frob-e! frob-meta? frob-e frob? make-frob create-module-binding set-module-binding-exported! set-module-binding-val! set-module-binding-imps! set-module-binding-label! set-module-binding-id! set-module-binding-type! module-binding-exported module-binding-val module-binding-imps module-binding-label module-binding-id module-binding-type module-binding? make-module-binding make-resolved-interface make-unresolved-interface set-interface-token! set-interface-exports! set-interface-marks! interface-token interface-exports interface-marks interface? make-interface flatten-exports chi-top chi-top-sequence chi-top* syntax-type chi-when-list source-wrap wrap bound-id-member? invalid-ids-error distinct-bound-ids? valid-bound-ids? bound-id=? help-bound-id=? literal-id=? free-id=? id-var-name id-var-name-loc id-var-name&marks id-var-name-loc&marks top-id-free-var-name top-id-bound-var-name anon diff-marks same-marks? join-subst join-marks join-wraps smart-append resolved-id-var-name id->resolved-id make-resolved-id make-binding-wrap store-import-binding lookup-import-binding-name extend-ribcage-subst! extend-ribcage-barrier-help! extend-ribcage-barrier! import-extend-ribcage! extend-ribcage! make-empty-ribcage barrier-marker new-mark anti-mark the-anti-mark set-env-wrap! set-env-top-ribcage! env-wrap env-top-ribcage env? make-env set-import-interface-new-marks! set-import-interface-interface! import-interface-new-marks import-interface-interface import-interface? make-import-interface set-top-ribcage-mutable?! set-top-ribcage-key! top-ribcage-mutable? top-ribcage-key top-ribcage? make-top-ribcage set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels label? gen-label set-indirect-label! get-indirect-label indirect-label? gen-indirect-label anon only-top-marked? top-marked? top-wrap empty-wrap wrap-subst wrap-marks make-wrap id-sym-name&marks id-subst id-marks id-sym-name id? nonsymbol-id? global-extend defer-or-eval-transformer make-transformer-binding lookup lookup* displaced-lexical-error displaced-lexical? extend-var-env* extend-env* extend-env null-env binding? set-binding-value! set-binding-type! binding-value binding-type make-binding sanitize-binding arg-check no-source unannotate self-evaluating? lexical-var? build-lexical-var build-top-module build-body build-letrec build-sequence build-data build-primref built-lambda? build-lambda build-revisit-only build-visit-only build-cte-install build-global-definition build-global-assignment build-global-reference build-lexical-assignment build-lexical-reference build-conditional build-application generate-id put-import-binding get-import-binding read-only-binding? put-global-definition-hook get-global-definition-hook put-cte-hook gensym-hook error-hook define-top-level-value-hook local-eval-hook top-level-eval-hook annotation? fx>= fx<= fx> fx< fx= fx- fx+ set-syntax-object-wrap! set-syntax-object-expression! syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object noexpand let-values define-structure unless when) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i")) #(top-ribcage *top* #t))))
'load
(if (literal-id=?431
x2141
'#(syntax-object visit ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i")) #(ribcage () () ()) #(ribcage #(when-list w) #((top) (top)) #("i" "i")) #(ribcage (lambda-var-list gen-var strip strip* strip-annotation ellipsis? chi-void chi-local-syntax chi-lambda-clause parse-begin parse-alias parse-eval-when parse-meta parse-define-syntax parse-define parse-import parse-module do-import! lookup-import-label import-mark-delta chi-internal chi-body chi-macro chi-set! chi-application chi-expr chi chi-sequence chi-meta-frob chi-frobs ct-eval/residualize3 ct-eval/residualize2 rt-eval/residualize initial-mode-set update-mode-set do-top-import vfor-each vmap chi-external check-defined-ids check-module-exports id-set-diff chi-top-module set-frob-meta?! set-frob-e! frob-meta? frob-e frob? make-frob create-module-binding set-module-binding-exported! set-module-binding-val! set-module-binding-imps! set-module-binding-label! set-module-binding-id! set-module-binding-type! module-binding-exported module-binding-val module-binding-imps module-binding-label module-binding-id module-binding-type module-binding? make-module-binding make-resolved-interface make-unresolved-interface set-interface-token! set-interface-exports! set-interface-marks! interface-token interface-exports interface-marks interface? make-interface flatten-exports chi-top chi-top-sequence chi-top* syntax-type chi-when-list source-wrap wrap bound-id-member? invalid-ids-error distinct-bound-ids? valid-bound-ids? bound-id=? help-bound-id=? literal-id=? free-id=? id-var-name id-var-name-loc id-var-name&marks id-var-name-loc&marks top-id-free-var-name top-id-bound-var-name anon diff-marks same-marks? join-subst join-marks join-wraps smart-append resolved-id-var-name id->resolved-id make-resolved-id make-binding-wrap store-import-binding lookup-import-binding-name extend-ribcage-subst! extend-ribcage-barrier-help! extend-ribcage-barrier! import-extend-ribcage! extend-ribcage! make-empty-ribcage barrier-marker new-mark anti-mark the-anti-mark set-env-wrap! set-env-top-ribcage! env-wrap env-top-ribcage env? make-env set-import-interface-new-marks! set-import-interface-interface! import-interface-new-marks import-interface-interface import-interface? make-import-interface set-top-ribcage-mutable?! set-top-ribcage-key! top-ribcage-mutable? top-ribcage-key top-ribcage? make-top-ribcage set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels label? gen-label set-indirect-label! get-indirect-label indirect-label? gen-indirect-label anon only-top-marked? top-marked? top-wrap empty-wrap wrap-subst wrap-marks make-wrap id-sym-name&marks id-subst id-marks id-sym-name id? nonsymbol-id? global-extend defer-or-eval-transformer make-transformer-binding lookup lookup* displaced-lexical-error displaced-lexical? extend-var-env* extend-env* extend-env null-env binding? set-binding-value! set-binding-type! binding-value binding-type make-binding sanitize-binding arg-check no-source unannotate self-evaluating? lexical-var? build-lexical-var build-top-module build-body build-letrec build-sequence build-data build-primref built-lambda? build-lambda build-revisit-only build-visit-only build-cte-install build-global-definition build-global-assignment build-global-reference build-lexical-assignment build-lexical-reference build-conditional build-application generate-id put-import-binding get-import-binding read-only-binding? put-global-definition-hook get-global-definition-hook put-cte-hook gensym-hook error-hook define-top-level-value-hook local-eval-hook top-level-eval-hook annotation? fx>= fx<= fx> fx< fx= fx- fx+ set-syntax-object-wrap! set-syntax-object-expression! syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object noexpand let-values define-structure unless when) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i")) #(top-ribcage *top* #t))))
'visit
(if (literal-id=?431
x2141
'#(syntax-object revisit ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i")) #(ribcage () () ()) #(ribcage #(when-list w) #((top) (top)) #("i" "i")) #(ribcage (lambda-var-list gen-var strip strip* strip-annotation ellipsis? chi-void chi-local-syntax chi-lambda-clause parse-begin parse-alias parse-eval-when parse-meta parse-define-syntax parse-define parse-import parse-module do-import! lookup-import-label import-mark-delta chi-internal chi-body chi-macro chi-set! chi-application chi-expr chi chi-sequence chi-meta-frob chi-frobs ct-eval/residualize3 ct-eval/residualize2 rt-eval/residualize initial-mode-set update-mode-set do-top-import vfor-each vmap chi-external check-defined-ids check-module-exports id-set-diff chi-top-module set-frob-meta?! set-frob-e! frob-meta? frob-e frob? make-frob create-module-binding set-module-binding-exported! set-module-binding-val! set-module-binding-imps! set-module-binding-label! set-module-binding-id! set-module-binding-type! module-binding-exported module-binding-val module-binding-imps module-binding-label module-binding-id module-binding-type module-binding? make-module-binding make-resolved-interface make-unresolved-interface set-interface-token! set-interface-exports! set-interface-marks! interface-token interface-exports interface-marks interface? make-interface flatten-exports chi-top chi-top-sequence chi-top* syntax-type chi-when-list source-wrap wrap bound-id-member? invalid-ids-error distinct-bound-ids? valid-bound-ids? bound-id=? help-bound-id=? literal-id=? free-id=? id-var-name id-var-name-loc id-var-name&marks id-var-name-loc&marks top-id-free-var-name top-id-bound-var-name anon diff-marks same-marks? join-subst join-marks join-wraps smart-append resolved-id-var-name id->resolved-id make-resolved-id make-binding-wrap store-import-binding lookup-import-binding-name extend-ribcage-subst! extend-ribcage-barrier-help! extend-ribcage-barrier! import-extend-ribcage! extend-ribcage! make-empty-ribcage barrier-marker new-mark anti-mark the-anti-mark set-env-wrap! set-env-top-ribcage! env-wrap env-top-ribcage env? make-env set-import-interface-new-marks! set-import-interface-interface! import-interface-new-marks import-interface-interface import-interface? make-import-interface set-top-ribcage-mutable?! set-top-ribcage-key! top-ribcage-mutable? top-ribcage-key top-ribcage? make-top-ribcage set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels label? gen-label set-indirect-label! get-indirect-label indirect-label? gen-indirect-label anon only-top-marked? top-marked? top-wrap empty-wrap wrap-subst wrap-marks make-wrap id-sym-name&marks id-subst id-marks id-sym-name id? nonsymbol-id? global-extend defer-or-eval-transformer make-transformer-binding lookup lookup* displaced-lexical-error displaced-lexical? extend-var-env* extend-env* extend-env null-env binding? set-binding-value! set-binding-type! binding-value binding-type make-binding sanitize-binding arg-check no-source unannotate self-evaluating? lexical-var? build-lexical-var build-top-module build-body build-letrec build-sequence build-data build-primref built-lambda? build-lambda build-revisit-only build-visit-only build-cte-install build-global-definition build-global-assignment build-global-reference build-lexical-assignment build-lexical-reference build-conditional build-application generate-id put-import-binding get-import-binding read-only-binding? put-global-definition-hook get-global-definition-hook put-cte-hook gensym-hook error-hook define-top-level-value-hook local-eval-hook top-level-eval-hook annotation? fx>= fx<= fx> fx< fx= fx- fx+ set-syntax-object-wrap! set-syntax-object-expression! syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object noexpand let-values define-structure unless when) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i")) #(top-ribcage *top* #t))))
'revisit
(if (literal-id=?431
x2141
'#(syntax-object eval ((top) #(ribcage () () ()) #(ribcage #(x) #((top)) #("i")) #(ribcage () () ()) #(ribcage #(when-list w) #((top) (top)) #("i" "i")) #(ribcage (lambda-var-list gen-var strip strip* strip-annotation ellipsis? chi-void chi-local-syntax chi-lambda-clause parse-begin parse-alias parse-eval-when parse-meta parse-define-syntax parse-define parse-import parse-module do-import! lookup-import-label import-mark-delta chi-internal chi-body chi-macro chi-set! chi-application chi-expr chi chi-sequence chi-meta-frob chi-frobs ct-eval/residualize3 ct-eval/residualize2 rt-eval/residualize initial-mode-set update-mode-set do-top-import vfor-each vmap chi-external check-defined-ids check-module-exports id-set-diff chi-top-module set-frob-meta?! set-frob-e! frob-meta? frob-e frob? make-frob create-module-binding set-module-binding-exported! set-module-binding-val! set-module-binding-imps! set-module-binding-label! set-module-binding-id! set-module-binding-type! module-binding-exported module-binding-val module-binding-imps module-binding-label module-binding-id module-binding-type module-binding? make-module-binding make-resolved-interface make-unresolved-interface set-interface-token! set-interface-exports! set-interface-marks! interface-token interface-exports interface-marks interface? make-interface flatten-exports chi-top chi-top-sequence chi-top* syntax-type chi-when-list source-wrap wrap bound-id-member? invalid-ids-error distinct-bound-ids? valid-bound-ids? bound-id=? help-bound-id=? literal-id=? free-id=? id-var-name id-var-name-loc id-var-name&marks id-var-name-loc&marks top-id-free-var-name top-id-bound-var-name anon diff-marks same-marks? join-subst join-marks join-wraps smart-append resolved-id-var-name id->resolved-id make-resolved-id make-binding-wrap store-import-binding lookup-import-binding-name extend-ribcage-subst! extend-ribcage-barrier-help! extend-ribcage-barrier! import-extend-ribcage! extend-ribcage! make-empty-ribcage barrier-marker new-mark anti-mark the-anti-mark set-env-wrap! set-env-top-ribcage! env-wrap env-top-ribcage env? make-env set-import-interface-new-marks! set-import-interface-interface! import-interface-new-marks import-interface-interface import-interface? make-import-interface set-top-ribcage-mutable?! set-top-ribcage-key! top-ribcage-mutable? top-ribcage-key top-ribcage? make-top-ribcage set-ribcage-labels! set-ribcage-marks! set-ribcage-symnames! ribcage-labels ribcage-marks ribcage-symnames ribcage? make-ribcage gen-labels label? gen-label set-indirect-label! get-indirect-label indirect-label? gen-indirect-label anon only-top-marked? top-marked? top-wrap empty-wrap wrap-subst wrap-marks make-wrap id-sym-name&marks id-subst id-marks id-sym-name id? nonsymbol-id? global-extend defer-or-eval-transformer make-transformer-binding lookup lookup* displaced-lexical-error displaced-lexical? extend-var-env* extend-env* extend-env null-env binding? set-binding-value! set-binding-type! binding-value binding-type make-binding sanitize-binding arg-check no-source unannotate self-evaluating? lexical-var? build-lexical-var build-top-module build-body build-letrec build-sequence build-data build-primref built-lambda? build-lambda build-revisit-only build-visit-only build-cte-install build-global-definition build-global-assignment build-global-reference build-lexical-assignment build-lexical-reference build-conditional build-application generate-id put-import-binding get-import-binding read-only-binding? put-global-definition-hook get-global-definition-hook put-cte-hook gensym-hook error-hook define-top-level-value-hook local-eval-hook top-level-eval-hook annotation? fx>= fx<= fx> fx< fx= fx- fx+ set-syntax-object-wrap! set-syntax-object-expression! syntax-object-wrap syntax-object-expression syntax-object? make-syntax-object noexpand let-values define-structure unless when) ((top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) ("m" top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top) (top)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i")) #(top-ribcage *top* #t))))
'eval
(syntax-error
(wrap438
x2141
w2139)
'"invalid eval-when situation")))))))
when-list2140)))
(syntax-type441 (lambda (e2124 r2123 w2122 ae2121 rib2120)
(if (symbol? e2124)
((lambda (n2125)
((lambda (b2126)
((lambda (type2127)
((lambda ()
((lambda (t2128)
(if (memv
t2128
'(macro macro!))
(syntax-type441
(chi-macro497
(binding-value286
b2126)
e2124 r2123 w2122
ae2121 rib2120)
r2123 '(()) '#f
rib2120)
(values type2127
(binding-value286
b2126)
e2124 w2122
ae2121)))
type2127))))
(binding-type285 b2126)))
(lookup305 n2125 r2123)))
(id-var-name429 e2124 w2122))
(if (pair? e2124)
((lambda (first2129)
(if (id?310 first2129)
((lambda (n2130)
((lambda (b2131)
((lambda (type2132)
((lambda ()
((lambda (t2133)
(if (memv
t2133
'(lexical))
(values
'lexical-call
(binding-value286
b2131)
e2124
w2122
ae2121)
(if (memv
t2133
'(macro
macro!))
(syntax-type441
(chi-macro497
(binding-value286
b2131)
e2124
r2123
w2122
ae2121
rib2120)
r2123
'(())
'#f
rib2120)
(if (memv
t2133
'(core))
(values
type2132
(binding-value286
b2131)
e2124
w2122
ae2121)
(if (memv
t2133
'(begin))
(values
'begin-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'(alias))
(values
'alias-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'(define))
(values
'define-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'(define-syntax))
(values
'define-syntax-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'(set!))
(chi-set!496
e2124
r2123
w2122
ae2121
rib2120)
(if (memv
t2133
'($module-key))
(values
'$module-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'($import))
(values
'$import-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'(eval-when))
(values
'eval-when-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'(meta))
(values
'meta-form
'#f
e2124
w2122
ae2121)
(if (memv
t2133
'(local-syntax))
(values
'local-syntax-form
(binding-value286
b2131)
e2124
w2122
ae2121)
(values
'call
'#f
e2124
w2122
ae2121)))))))))))))))
type2132))))
(binding-type285
b2131)))
(lookup305 n2130 r2123)))
(id-var-name429
first2129
w2122))
(values 'call '#f e2124 w2122
ae2121)))
(car e2124))
(if (syntax-object?64 e2124)
(syntax-type441
(syntax-object-expression65
e2124)
r2123
(join-wraps417
w2122
(syntax-object-wrap66 e2124))
'#f rib2120)
(if (annotation?132 e2124)
(syntax-type441
(annotation-expression
e2124)
r2123 w2122 e2124 rib2120)
(if ((lambda (x2134)
((lambda (t2135)
(if t2135
t2135
((lambda (t2136)
(if t2136
t2136
((lambda (t2137)
(if t2137
t2137
((lambda (t2138)
(if t2138
t2138
(null?
x2134)))
(char?
x2134))))
(string?
x2134))))
(number?
x2134))))
(boolean? x2134)))
e2124)
(values 'constant '#f
e2124 w2122 ae2121)
(values 'other '#f e2124
w2122 ae2121))))))))
(chi-top*442 (lambda (e2115 r2114 w2113 ctem2112 rtem2111
meta?2110 top-ribcage2109)
((lambda (meta-residuals2116)
(letrec ((meta-residualize!2117 (lambda (x2119)
(set! meta-residuals2116
(cons
x2119
meta-residuals2116)))))
((lambda (e2118)
(build-sequence239
'#f
(reverse
(cons e2118 meta-residuals2116))))
(chi-top444 e2115 r2114 w2113 ctem2112
rtem2111 meta?2110 top-ribcage2109
meta-residualize!2117 '#f))))
'())))
(chi-top-sequence443 (lambda (body2105 r2104 w2103 ae2102
ctem2101 rtem2100 meta?2099
ribcage2098
meta-residualize!2097)
(build-sequence239
ae2102
((letrec ((dobody2106 (lambda (body2107)
(if (null?
body2107)
'()
((lambda (first2108)
(cons
first2108
(dobody2106
(cdr body2107))))
(chi-top444
(car body2107)
r2104
w2103
ctem2101
rtem2100
meta?2099
ribcage2098
meta-residualize!2097
'#f))))))
dobody2106)
body2105))))
(chi-top444 (lambda (e2042 r2041 w2040 ctem2039 rtem2038
meta?2037 top-ribcage2036
meta-residualize!2035 meta-seen?2034)
(call-with-values
(lambda ()
(syntax-type441 e2042 r2041 w2040 '#f
top-ribcage2036))
(lambda (type2047 value2046 e2045 w2044 ae2043)
((lambda (t2048)
(if (memv t2048 '(begin-form))
((lambda (forms2049)
(if (null? forms2049)
(chi-void513)
(chi-top-sequence443 forms2049
r2041 w2044 ae2043 ctem2039
rtem2038 meta?2037
top-ribcage2036
meta-residualize!2035)))
(parse-begin510
e2045
w2044
ae2043
'#t))
(if (memv t2048 '(local-syntax-form))
(call-with-values
(lambda ()
(chi-local-syntax512 value2046
e2045 r2041 r2041 w2044
ae2043))
(lambda (forms2054 r2053 mr2052
w2051 ae2050)
(chi-top-sequence443 forms2054
r2053 w2051 ae2050 ctem2039
rtem2038 meta?2037
top-ribcage2036
meta-residualize!2035)))
(if (memv t2048 '(eval-when-form))
(call-with-values
(lambda ()
(parse-eval-when508
e2045
w2044
ae2043))
(lambda (when-list2056
forms2055)
((lambda (ctem2058
rtem2057)
(if (if (null?
ctem2058)
(null?
rtem2057)
'#f)
(chi-void513)
(chi-top-sequence443
forms2055 r2041
w2044 ae2043
ctem2058 rtem2057
meta?2037
top-ribcage2036
meta-residualize!2035)))
(update-mode-set485
when-list2056
ctem2039)
(update-mode-set485
when-list2056
rtem2038))))
(if (memv t2048 '(meta-form))
(chi-top444
(parse-meta507
e2045
w2044
ae2043)
r2041 w2044 ctem2039
rtem2038 '#t
top-ribcage2036
meta-residualize!2035
'#t)
(if (memv
t2048
'(define-syntax-form))
(call-with-values
(lambda ()
(parse-define-syntax506
e2045
w2044
ae2043))
(lambda (id2061
rhs2060
w2059)
((lambda (id2062)
(begin
(if (displaced-lexical?302
id2062
r2041)
(displaced-lexical-error303
id2062)
(void))
(if (not (top-ribcage-mutable?371
top-ribcage2036))
(syntax-error
(source-wrap439
e2045
w2059
ae2043)
'"invalid definition in read-only environment")
(void))
((lambda (sym2063)
(call-with-values
(lambda ()
(top-id-bound-var-name424
sym2063
(wrap-marks320
(syntax-object-wrap66
id2062))
top-ribcage2036))
(lambda (valsym2065
bound-id2064)
(begin
(if (not (eq? (id-var-name429
id2062
'(()))
valsym2065))
(syntax-error
(source-wrap439
e2045
w2059
ae2043)
'"definition not permitted")
(void))
(if (read-only-binding?144
valsym2065)
(syntax-error
(source-wrap439
e2045
w2059
ae2043)
'"invalid definition of read-only identifier")
(void))
(ct-eval/residualize2488
ctem2039
(lambda ()
(list
'$sc-put-cte
(list
'quote
bound-id2064)
(chi493
rhs2060
r2041
r2041
w2059
'#t)
(list
'quote
(top-ribcage-key370
top-ribcage2036)))))))))
((lambda (x2066)
((lambda (e2067)
(if (annotation?132
e2067)
(annotation-expression
e2067)
e2067))
(if (syntax-object?64
x2066)
(syntax-object-expression65
x2066)
x2066)))
id2062))))
(wrap438
id2061
w2059))))
(if (memv
t2048
'(define-form))
(call-with-values
(lambda ()
(parse-define505
e2045
w2044
ae2043))
(lambda (id2070
rhs2069
w2068)
((lambda (id2071)
(begin
(if (displaced-lexical?302
id2071
r2041)
(displaced-lexical-error303
id2071)
(void))
(if (not (top-ribcage-mutable?371
top-ribcage2036))
(syntax-error
(source-wrap439
e2045
w2068
ae2043)
'"invalid definition in read-only environment")
(void))
((lambda (sym2072)
(call-with-values
(lambda ()
(top-id-bound-var-name424
sym2072
(wrap-marks320
(syntax-object-wrap66
id2071))
top-ribcage2036))
(lambda (valsym2074
bound-id2073)
(begin
(if (not (eq? (id-var-name429
id2071
'(()))
valsym2074))
(syntax-error
(source-wrap439
e2045
w2068
ae2043)
'"definition not permitted")
(void))
(if (read-only-binding?144
valsym2074)
(syntax-error
(source-wrap439
e2045
w2068
ae2043)
'"invalid definition of read-only identifier")
(void))
(if meta?2037
(ct-eval/residualize2488
ctem2039
(lambda ()
(build-sequence239
'#f
(list
(list
'$sc-put-cte
(list
'quote
bound-id2073)
(list
'quote
(cons
'meta-variable
valsym2074))
(list
'quote
(top-ribcage-key370
top-ribcage2036)))
(list
'define
valsym2074
(chi493
rhs2069
r2041
r2041
w2068
'#t))))))
((lambda (x2075)
(build-sequence239
'#f
(list
x2075
(rt-eval/residualize487
rtem2038
(lambda ()
(list
'define
valsym2074
(chi493
rhs2069
r2041
r2041
w2068
'#f)))))))
(ct-eval/residualize2488
ctem2039
(lambda ()
(list
'$sc-put-cte
(list
'quote
bound-id2073)
(list
'quote
(cons
'global
valsym2074))
(list
'quote
(top-ribcage-key370
top-ribcage2036)))))))))))
((lambda (x2076)
((lambda (e2077)
(if (annotation?132
e2077)
(annotation-expression
e2077)
e2077))
(if (syntax-object?64
x2076)
(syntax-object-expression65
x2076)
x2076)))
id2071))))
(wrap438
id2070
w2068))))
(if (memv
t2048
'($module-form))
((lambda (ribcage2078)
(call-with-values
(lambda ()
(parse-module503
e2045
w2044
ae2043
(make-wrap319
(wrap-marks320
w2044)
(cons
ribcage2078
(wrap-subst321
w2044)))))
(lambda (orig2082
id2081
exports2080
forms2079)
(begin
(if (displaced-lexical?302
id2081
r2041)
(displaced-lexical-error303
(wrap438
id2081
w2044))
(void))
(if (not (top-ribcage-mutable?371
top-ribcage2036))
(syntax-error
orig2082
'"invalid definition in read-only environment")
(void))
(chi-top-module477
orig2082
r2041
r2041
top-ribcage2036
ribcage2078
ctem2039
rtem2038
meta?2037
id2081
exports2080
forms2079
meta-residualize!2035)))))
(make-ribcage360
'()
'()
'()))
(if (memv
t2048
'($import-form))
(call-with-values
(lambda ()
(parse-import504
e2045
w2044
ae2043))
(lambda (orig2085
only?2084
mid2083)
(begin
(if (not (top-ribcage-mutable?371
top-ribcage2036))
(syntax-error
orig2085
'"invalid definition in read-only environment")
(void))
(ct-eval/residualize2488
ctem2039
(lambda ()
((lambda (binding2086)
((lambda (t2087)
(if (memv
t2087
'($module))
(do-top-import484
only?2084
top-ribcage2036
mid2083
(interface-token450
(binding-value286
binding2086)))
(if (memv
t2087
'(displaced-lexical))
(displaced-lexical-error303
mid2083)
(syntax-error
mid2083
'"unknown module"))))
(binding-type285
binding2086)))
(lookup305
(id-var-name429
mid2083
'(()))
'())))))))
(if (memv
t2048
'(alias-form))
(call-with-values
(lambda ()
(parse-alias509
e2045
w2044
ae2043))
(lambda (new-id2089
old-id2088)
((lambda (new-id2090)
(begin
(if (displaced-lexical?302
new-id2090
r2041)
(displaced-lexical-error303
new-id2090)
(void))
(if (not (top-ribcage-mutable?371
top-ribcage2036))
(syntax-error
(source-wrap439
e2045
w2044
ae2043)
'"invalid definition in read-only environment")
(void))
((lambda (sym2091)
(call-with-values
(lambda ()
(top-id-bound-var-name424
sym2091
(wrap-marks320
(syntax-object-wrap66
new-id2090))
top-ribcage2036))
(lambda (valsym2093
bound-id2092)
(begin
(if (not (eq? (id-var-name429
new-id2090
'(()))
valsym2093))
(syntax-error
(source-wrap439
e2045
w2044
ae2043)
'"definition not permitted")
(void))
(if (read-only-binding?144
valsym2093)
(syntax-error
(source-wrap439
e2045
w2044
ae2043)
'"invalid definition of read-only identifier")
(void))
(ct-eval/residualize2488
ctem2039
(lambda ()
(list
'$sc-put-cte
(list
'quote
(make-resolved-id413
sym2091
(wrap-marks320
(syntax-object-wrap66
new-id2090))
(id-var-name429
old-id2088
w2044)))
(list
'quote
'(do-alias
.
#f))
(list
'quote
(top-ribcage-key370
top-ribcage2036)))))))))
((lambda (x2094)
((lambda (e2095)
(if (annotation?132
e2095)
(annotation-expression
e2095)
e2095))
(if (syntax-object?64
x2094)
(syntax-object-expression65
x2094)
x2094)))
new-id2090))))
(wrap438
new-id2089
w2044))))
(begin
(if meta-seen?2034
(syntax-error
(source-wrap439
e2045
w2044
ae2043)
'"invalid meta definition")
(void))
(if meta?2037
((lambda (x2096)
(begin
(top-level-eval-hook133
x2096)
(ct-eval/residualize3489
ctem2039
void
(lambda ()
x2096))))
(chi-expr494
type2047
value2046
e2045
r2041
r2041
w2044
ae2043
'#t))
(rt-eval/residualize487
rtem2038
(lambda ()
(chi-expr494
type2047
value2046
e2045
r2041
r2041
w2044
ae2043
'#f)))))))))))))))
type2047)))))
(flatten-exports445 (lambda (exports2030)
((letrec ((loop2031 (lambda (exports2033
ls2032)
(if (null?
exports2033)
ls2032
(loop2031
(cdr exports2033)
(if (pair?
(car exports2033))
(loop2031
(car exports2033)
ls2032)
(cons
(car exports2033)
ls2032)))))))
loop2031)
exports2030
'())))
(make-interface446 (lambda (marks2029 exports2028 token2027)
(vector
'interface
marks2029
exports2028
token2027)))
(interface?447 (lambda (x2026)
(if (vector? x2026)
(if (= (vector-length x2026) '4)
(eq? (vector-ref x2026 '0) 'interface)
'#f)
'#f)))
(interface-marks448 (lambda (x2025) (vector-ref x2025 '1)))
(interface-exports449 (lambda (x2024)
(vector-ref x2024 '2)))
(interface-token450 (lambda (x2023) (vector-ref x2023 '3)))
(set-interface-marks!451 (lambda (x2022 update2021)
(vector-set! x2022 '1 update2021)))
(set-interface-exports!452 (lambda (x2020 update2019)
(vector-set!
x2020
'2
update2019)))
(set-interface-token!453 (lambda (x2018 update2017)
(vector-set! x2018 '3 update2017)))
(make-unresolved-interface454 (lambda (mid2015 exports2014)
(make-interface446
(wrap-marks320
(syntax-object-wrap66
mid2015))
(list->vector
(map (lambda (x2016)
(if (pair? x2016)
(car x2016)
x2016))
exports2014))
'#f)))
(make-resolved-interface455 (lambda (mid2012 exports2011
token2010)
(make-interface446
(wrap-marks320
(syntax-object-wrap66
mid2012))
(list->vector
(map (lambda (x2013)
(id->resolved-id414
(if (pair? x2013)
(car x2013)
x2013)))
exports2011))
token2010)))
(make-module-binding456 (lambda (type2009 id2008 label2007
imps2006 val2005 exported2004)
(vector 'module-binding type2009
id2008 label2007 imps2006 val2005
exported2004)))
(module-binding?457 (lambda (x2003)
(if (vector? x2003)
(if (= (vector-length x2003) '7)
(eq? (vector-ref x2003 '0)
'module-binding)
'#f)
'#f)))
(module-binding-type458 (lambda (x2002)
(vector-ref x2002 '1)))
(module-binding-id459 (lambda (x2001)
(vector-ref x2001 '2)))
(module-binding-label460 (lambda (x2000)
(vector-ref x2000 '3)))
(module-binding-imps461 (lambda (x1999)
(vector-ref x1999 '4)))
(module-binding-val462 (lambda (x1998)
(vector-ref x1998 '5)))
(module-binding-exported463 (lambda (x1997)
(vector-ref x1997 '6)))
(set-module-binding-type!464 (lambda (x1996 update1995)
(vector-set!
x1996
'1
update1995)))
(set-module-binding-id!465 (lambda (x1994 update1993)
(vector-set!
x1994
'2
update1993)))
(set-module-binding-label!466 (lambda (x1992 update1991)
(vector-set!
x1992
'3
update1991)))
(set-module-binding-imps!467 (lambda (x1990 update1989)
(vector-set!
x1990
'4
update1989)))
(set-module-binding-val!468 (lambda (x1988 update1987)
(vector-set!
x1988
'5
update1987)))
(set-module-binding-exported!469 (lambda (x1986 update1985)
(vector-set!
x1986
'6
update1985)))
(create-module-binding470 (lambda (type1984 id1983 label1982
imps1981 val1980)
(make-module-binding456 type1984
id1983 label1982 imps1981 val1980
'#f)))
(make-frob471 (lambda (e1979 meta?1978)
(vector 'frob e1979 meta?1978)))
(frob?472 (lambda (x1977)
(if (vector? x1977)
(if (= (vector-length x1977) '3)
(eq? (vector-ref x1977 '0) 'frob)
'#f)
'#f)))
(frob-e473 (lambda (x1976) (vector-ref x1976 '1)))
(frob-meta?474 (lambda (x1975) (vector-ref x1975 '2)))
(set-frob-e!475 (lambda (x1974 update1973)
(vector-set! x1974 '1 update1973)))
(set-frob-meta?!476 (lambda (x1972 update1971)
(vector-set! x1972 '2 update1971)))
(chi-top-module477 (lambda (orig1912 r1911 mr1910
top-ribcage1909 ribcage1908
ctem1907 rtem1906 meta?1905 id1904
exports1903 forms1902
meta-residualize!1901)
((lambda (fexports1913)
(call-with-values
(lambda ()
(chi-external481 ribcage1908
orig1912
(map (lambda (d1970)
(make-frob471
d1970
meta?1905))
forms1902)
r1911 mr1910 ctem1907 exports1903
fexports1913
meta-residualize!1901))
(lambda (r1917 mr1916 bindings1915
inits1914)
((letrec ((process-exports1918 (lambda (fexports1920
ctdefs1919)
(if (null?
fexports1920)
((letrec ((process-locals1921 (lambda (bs1926
r1925
dts1924
dvs1923
des1922)
(if (null?
bs1926)
((lambda (des1928
inits1927)
(build-sequence239
'#f
(append
(ctdefs1919)
(list
(ct-eval/residualize2488
ctem1907
(lambda ()
((lambda (sym1929)
((lambda (token1930)
((lambda (b1931)
((lambda ()
(call-with-values
(lambda ()
(top-id-bound-var-name424
sym1929
(wrap-marks320
(syntax-object-wrap66
id1904))
top-ribcage1909))
(lambda (valsym1933
bound-id1932)
(begin
(if (not (eq? (id-var-name429
id1904
'(()))
valsym1933))
(syntax-error
orig1912
'"definition not permitted")
(void))
(if (read-only-binding?144
valsym1933)
(syntax-error
orig1912
'"invalid definition of read-only identifier")
(void))
(list
'$sc-put-cte
(list
'quote
bound-id1932)
b1931
(list
'quote
(top-ribcage-key370
top-ribcage1909)))))))))
(list
'quote
(cons
'$module
(make-resolved-interface455
id1904
exports1903
token1930)))))
(generate-id147
sym1929)))
((lambda (x1934)
((lambda (e1935)
(if (annotation?132
e1935)
(annotation-expression
e1935)
e1935))
(if (syntax-object?64
x1934)
(syntax-object-expression65
x1934)
x1934)))
id1904))))
(rt-eval/residualize487
rtem1906
(lambda ()
(build-top-module242
'#f
dts1924
dvs1923
des1928
(if (null?
inits1927)
(chi-void513)
(build-sequence239
'#f
(append
inits1927
(list
(chi-void513))))))))))))
(chi-frobs490
des1922
r1925
mr1916
'#f)
(chi-frobs490
inits1914
r1925
mr1916
'#f))
((lambda (b1937
bs1936)
((lambda (t1938)
((lambda (t1939)
(if (memv
t1939
'(define-form))
((lambda (label1940)
(if (module-binding-exported463
b1937)
((lambda (var1941)
(process-locals1921
bs1936
r1925
(cons
'global
dts1924)
(cons
label1940
dvs1923)
(cons
(module-binding-val462
b1937)
des1922)))
(module-binding-id459
b1937))
((lambda (var1942)
(process-locals1921
bs1936
(extend-env299
label1940
(cons
'lexical
var1942)
r1925)
(cons
'local
dts1924)
(cons
var1942
dvs1923)
(cons
(module-binding-val462
b1937)
des1922)))
(gen-var518
(module-binding-id459
b1937)))))
(get-indirect-label355
(module-binding-label460
b1937)))
(if (memv
t1939
'(ctdefine-form
define-syntax-form
$module-form
alias-form))
(process-locals1921
bs1936
r1925
dts1924
dvs1923
des1922)
(error 'sc-expand-internal
'"unexpected module binding type ~s"
t1938))))
(module-binding-type458
b1937)))
(module-binding-type458
b1937)))
(car bs1926)
(cdr bs1926))))))
process-locals1921)
bindings1915
r1917
'()
'()
'())
((lambda (id1944
fexports1943)
((letrec ((loop1945 (lambda (bs1946)
(if (null?
bs1946)
(process-exports1918
fexports1943
ctdefs1919)
((lambda (b1948
bs1947)
(if (free-id=?430
(module-binding-id459
b1948)
id1944)
(if (module-binding-exported463
b1948)
(process-exports1918
fexports1943
ctdefs1919)
((lambda (t1949)
((lambda (label1950)
((lambda (imps1951)
((lambda (fexports1952)
((lambda ()
(begin
(set-module-binding-exported!469
b1948
'#t)
((lambda (t1953)
(if (memv
t1953
'(define-form))
((lambda (sym1954)
(begin
(set-indirect-label!356
label1950
sym1954)
(process-exports1918
fexports1952
ctdefs1919)))
(generate-id147
((lambda (x1955)
((lambda (e1956)
(if (annotation?132
e1956)
(annotation-expression
e1956)
e1956))
(if (syntax-object?64
x1955)
(syntax-object-expression65
x1955)
x1955)))
id1944)))
(if (memv
t1953
'(ctdefine-form))
((lambda (b1957)
(process-exports1918
fexports1952
(lambda ()
((lambda (sym1958)
(begin
(set-indirect-label!356
label1950
sym1958)
(cons
(ct-eval/residualize3489
ctem1907
(lambda ()
(put-cte-hook141
sym1958
b1957))
(lambda ()
(list
'$sc-put-cte
(list
'quote
sym1958)
(list
'quote
b1957)
(list
'quote
'#f))))
(ctdefs1919))))
(binding-value286
b1957)))))
(module-binding-val462
b1948))
(if (memv
t1953
'(define-syntax-form))
((lambda (sym1959)
(process-exports1918
fexports1952
(lambda ()
((lambda (local-label1960)
(begin
(set-indirect-label!356
label1950
sym1959)
(cons
(ct-eval/residualize3489
ctem1907
(lambda ()
(put-cte-hook141
sym1959
(car (module-binding-val462
b1948))))
(lambda ()
(list
'$sc-put-cte
(list
'quote
sym1959)
(cdr (module-binding-val462
b1948))
(list
'quote
'#f))))
(ctdefs1919))))
(get-indirect-label355
label1950)))))
(generate-id147
((lambda (x1961)
((lambda (e1962)
(if (annotation?132
e1962)
(annotation-expression
e1962)
e1962))
(if (syntax-object?64
x1961)
(syntax-object-expression65
x1961)
x1961)))
id1944)))
(if (memv
t1953
'($module-form))
((lambda (sym1964
exports1963)
(process-exports1918
(append
(flatten-exports445
exports1963)
fexports1952)
(lambda ()
(begin
(set-indirect-label!356
label1950
sym1964)
((lambda (rest1965)
((lambda (x1966)
(cons
(ct-eval/residualize3489
ctem1907
(lambda ()
(put-cte-hook141
sym1964
x1966))
(lambda ()
(list
'$sc-put-cte
(list
'quote
sym1964)
(list
'quote
x1966)
(list
'quote
'#f))))
rest1965))
(cons
'$module
(make-resolved-interface455
id1944
exports1963
sym1964))))
(ctdefs1919))))))
(generate-id147
((lambda (x1967)
((lambda (e1968)
(if (annotation?132
e1968)
(annotation-expression
e1968)
e1968))
(if (syntax-object?64
x1967)
(syntax-object-expression65
x1967)
x1967)))
id1944))
(module-binding-val462
b1948))
(if (memv
t1953
'(alias-form))
(process-exports1918
fexports1952
(lambda ()
((lambda (rest1969)
(begin
(if (indirect-label?351
label1950)
(if (not (symbol?
(get-indirect-label355
label1950)))
(syntax-error
(module-binding-id459
b1948)
'"unexported target of alias")
(void))
(void))
rest1969))
(ctdefs1919))))
(error 'sc-expand-internal
'"unexpected module binding type ~s"
t1949)))))))
t1949)))))
(append
imps1951
fexports1943)))
(module-binding-imps461
b1948)))
(module-binding-label460
b1948)))
(module-binding-type458
b1948)))
(loop1945
bs1947)))
(car bs1946)
(cdr bs1946))))))
loop1945)
bindings1915))
(car fexports1920)
(cdr fexports1920))))))
process-exports1918)
fexports1913
(lambda () '())))))
(flatten-exports445 exports1903))))
(id-set-diff478 (lambda (exports1900 defs1899)
(if (null? exports1900)
'()
(if (bound-id-member?437
(car exports1900)
defs1899)
(id-set-diff478
(cdr exports1900)
defs1899)
(cons
(car exports1900)
(id-set-diff478
(cdr exports1900)
defs1899))))))
(check-module-exports479 (lambda (source-exp1874
fexports1873 ids1872)
(letrec ((defined?1875 (lambda (e1882
ids1881)
(ormap
(lambda (x1883)
(if (import-interface?375
x1883)
((lambda (x.iface1885
x.new-marks1884)
((lambda (t1886)
(if t1886
((lambda (token1887)
(lookup-import-binding-name410
((lambda (x1888)
((lambda (e1889)
(if (annotation?132
e1889)
(annotation-expression
e1889)
e1889))
(if (syntax-object?64
x1888)
(syntax-object-expression65
x1888)
x1888)))
e1882)
(id-marks316
e1882)
token1887
x.new-marks1884))
t1886)
((lambda (v1890)
((letrec ((lp1891 (lambda (i1892)
(if (>= i1892
'0)
((lambda (t1893)
(if t1893
t1893
(lp1891
(fx- i1892
'1))))
((lambda (id1894)
(help-bound-id=?432
((lambda (x1897)
((lambda (e1898)
(if (annotation?132
e1898)
(annotation-expression
e1898)
e1898))
(if (syntax-object?64
x1897)
(syntax-object-expression65
x1897)
x1897)))
id1894)
(join-marks418
x.new-marks1884
(id-marks316
id1894))
((lambda (x1895)
((lambda (e1896)
(if (annotation?132
e1896)
(annotation-expression
e1896)
e1896))
(if (syntax-object?64
x1895)
(syntax-object-expression65
x1895)
x1895)))
e1882)
(id-marks316
e1882)))
(vector-ref
v1890
i1892)))
'#f))))
lp1891)
(fx- (vector-length
v1890)
'1)))
(interface-exports449
x.iface1885))))
(interface-token450
x.iface1885)))
(import-interface-interface376
x1883)
(import-interface-new-marks377
x1883))
(bound-id=?433
e1882