;;; psyntax.pp ;;; automatically generated from psyntax.ss ;;; Tue Aug 1 21:30:16 EDT 2006 ;;; see copyright notice in psyntax.ss ((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 (- 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-t