;;; psyntax.pp ;;; automatically generated from psyntax.ss ;;; Thu Sep 2 11:24:17 EST 2004 ;;; see copyright notice in psyntax.ss ((lambda () (letrec ((noexpand62 '"noexpand") (make-syntax-object63 (lambda (expression2423 wrap2422) (vector 'syntax-object expression2423 wrap2422))) (syntax-object?64 (lambda (x2421) (if (vector? x2421) (if (= (vector-length x2421) '3) (eq? (vector-ref x2421 '0) 'syntax-object) '#f) '#f))) (syntax-object-expression65 (lambda (x2420) (vector-ref x2420 '1))) (syntax-object-wrap66 (lambda (x2419) (vector-ref x2419 '2))) (set-syntax-object-expression!67 (lambda (x2418 update2417) (vector-set! x2418 '1 update2417))) (set-syntax-object-wrap!68 (lambda (x2416 update2415) (vector-set! x2416 '2 update2415))) (annotation?132 (lambda (x2414) '#f)) (top-level-eval-hook133 (lambda (x2413) (eval (list noexpand62 x2413)))) (local-eval-hook134 (lambda (x2412) (eval (list noexpand62 x2412)))) (define-top-level-value-hook135 (lambda (sym2411 val2410) (top-level-eval-hook133 (list 'define sym2411 (list 'quote val2410))))) (error-hook136 (lambda (who2409 why2408 what2407) (error who2409 '"~a ~s" why2408 what2407))) (put-cte-hook141 (lambda (symbol2406 val2405) ($sc-put-cte symbol2406 val2405 '*top*))) (get-global-definition-hook142 (lambda (symbol2404) (getprop symbol2404 '*sc-expander*))) (put-global-definition-hook143 (lambda (symbol2403 x2402) (if (not x2402) (remprop symbol2403 '*sc-expander*) (putprop symbol2403 '*sc-expander* x2402)))) (read-only-binding?144 (lambda (symbol2401) '#f)) (get-import-binding145 (lambda (symbol2400 token2399) (getprop symbol2400 token2399))) (put-import-binding146 (lambda (symbol2398 token2397 x2396) (if (not x2396) (remprop symbol2398 token2397) (putprop symbol2398 token2397 x2396)))) (generate-id147 ((lambda (digits2382) ((lambda (base2384 session-key2383) (letrec ((make-digit2385 (lambda (x2395) (string-ref digits2382 x2395))) (fmt2386 (lambda (n2389) ((letrec ((fmt2390 (lambda (n2392 a2391) (if (< n2392 base2384) (list->string (cons (make-digit2385 n2392) a2391)) ((lambda (r2394 rest2393) (fmt2390 rest2393 (cons (make-digit2385 r2394) a2391))) (modulo n2392 base2384) (quotient n2392 base2384)))))) fmt2390) n2389 '())))) ((lambda (n2387) (lambda (name2388) (begin (set! n2387 (+ n2387 '1)) (string->symbol (string-append session-key2383 (fmt2386 n2387)))))) '-1))) (string-length digits2382) '"_")) '"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!$%&*/:<=>?~_^.+-")) (built-lambda?221 (lambda (x2381) (if (pair? x2381) (eq? (car x2381) 'lambda) '#f))) (build-sequence239 (lambda (ae2378 exps2377) ((letrec ((loop2379 (lambda (exps2380) (if (null? (cdr exps2380)) (car exps2380) (if (equal? (car exps2380) '(void)) (loop2379 (cdr exps2380)) (cons 'begin exps2380)))))) loop2379) exps2377))) (build-letrec240 (lambda (ae2376 vars2375 val-exps2374 body-exp2373) (if (null? vars2375) body-exp2373 (list 'letrec (map list vars2375 val-exps2374) body-exp2373)))) (build-body241 (lambda (ae2372 vars2371 val-exps2370 body-exp2369) (build-letrec240 ae2372 vars2371 val-exps2370 body-exp2369))) (build-top-module242 (lambda (ae2357 types2356 vars2355 val-exps2354 body-exp2353) (call-with-values (lambda () ((letrec ((f2361 (lambda (types2363 vars2362) (if (null? types2363) (values '() '() '()) ((lambda (var2364) (call-with-values (lambda () (f2361 (cdr types2363) (cdr vars2362))) (lambda (vars2367 defns2366 sets2365) (if (eq? (car types2363) 'global) ((lambda (x2368) (values (cons x2368 vars2367) (cons (list 'define var2364 (chi-void503)) defns2366) (cons (list 'set! var2364 x2368) sets2365))) (gensym)) (values (cons var2364 vars2367) defns2366 sets2365))))) (car vars2362)))))) f2361) types2356 vars2355)) (lambda (vars2360 defns2359 sets2358) (if (null? defns2359) (build-letrec240 ae2357 vars2360 val-exps2354 body-exp2353) (build-sequence239 '#f (append defns2359 (list (build-letrec240 ae2357 vars2360 val-exps2354 (build-sequence239 '#f (append sets2358 (list body-exp2353)))))))))))) (sanitize-binding275 (lambda (b2349) (if (procedure? b2349) (cons 'macro b2349) (if (binding?289 b2349) (if ((lambda (t2350) (if (memv t2350 '(core macro macro! deferred)) (procedure? (binding-value286 b2349)) (if (memv t2350 '($module)) (interface?440 (binding-value286 b2349)) (if (memv t2350 '(lexical)) '#f (if (memv t2350 '(global meta-variable)) (symbol? (binding-value286 b2349)) (if (memv t2350 '(syntax)) ((lambda (x2351) (if (pair? x2351) (if '#f ((lambda (n2352) (if (integer? n2352) (if (exact? n2352) (>= n2352 '0) '#f) '#f)) (cdr x2351)) '#f) '#f)) (binding-value286 b2349)) (if (memv t2350 '(begin define define-syntax set! $module-key $import eval-when meta)) (null? (binding-value286 b2349)) (if (memv t2350 '(local-syntax)) (boolean? (binding-value286 b2349)) (if (memv t2350 '(displaced-lexical)) (eq? (binding-value286 b2349) '#f) '#t))))))))) (binding-type285 b2349)) b2349 '#f) '#f)))) (binding-type285 car) (binding-value286 cdr) (set-binding-type!287 set-car!) (set-binding-value!288 set-cdr!) (binding?289 (lambda (x2348) (if (pair? x2348) (symbol? (car x2348)) '#f))) (extend-env299 (lambda (label2347 binding2346 r2345) (cons (cons label2347 binding2346) r2345))) (extend-env*300 (lambda (labels2344 bindings2343 r2342) (if (null? labels2344) r2342 (extend-env*300 (cdr labels2344) (cdr bindings2343) (extend-env299 (car labels2344) (car bindings2343) r2342))))) (extend-var-env*301 (lambda (labels2341 vars2340 r2339) (if (null? labels2341) r2339 (extend-var-env*301 (cdr labels2341) (cdr vars2340) (extend-env299 (car labels2341) (cons 'lexical (car vars2340)) r2339))))) (displaced-lexical?302 (lambda (id2336 r2335) ((lambda (n2337) (if n2337 ((lambda (b2338) (eq? (binding-type285 b2338) 'displaced-lexical)) (lookup305 n2337 r2335)) '#f)) (id-var-name423 id2336 '(()))))) (displaced-lexical-error303 (lambda (id2334) (syntax-error id2334 (if (id-var-name423 id2334 '(())) '"identifier out of context" '"identifier not visible")))) (lookup*304 (lambda (x2331 r2330) ((lambda (t2332) (if t2332 (cdr t2332) (if (symbol? x2331) ((lambda (t2333) (if t2333 t2333 (cons 'global x2331))) (get-global-definition-hook142 x2331)) '(displaced-lexical . #f)))) (assq x2331 r2330)))) (lookup305 (lambda (x2325 r2324) (letrec ((whack-binding!2326 (lambda (b2329 *b2328) (begin (set-binding-type!287 b2329 (binding-type285 *b2328)) (set-binding-value!288 b2329 (binding-value286 *b2328)))))) ((lambda (b2327) (begin (if (eq? (binding-type285 b2327) 'deferred) (whack-binding!2326 b2327 (make-transformer-binding306 ((binding-value286 b2327)))) (void)) b2327)) (lookup*304 x2325 r2324))))) (make-transformer-binding306 (lambda (b2322) ((lambda (t2323) (if t2323 t2323 (syntax-error b2322 '"invalid transformer"))) (sanitize-binding275 b2322)))) (defer-or-eval-transformer307 (lambda (eval2321 x2320) (if (built-lambda?221 x2320) (cons 'deferred (lambda () (eval2321 x2320))) (make-transformer-binding306 (eval2321 x2320))))) (global-extend308 (lambda (type2319 sym2318 val2317) (put-cte-hook141 sym2318 (cons type2319 val2317)))) (nonsymbol-id?309 (lambda (x2315) (if (syntax-object?64 x2315) (symbol? ((lambda (e2316) (if (annotation?132 e2316) (annotation-expression e2316) e2316)) (syntax-object-expression65 x2315))) '#f))) (id?310 (lambda (x2313) (if (symbol? x2313) '#t (if (syntax-object?64 x2313) (symbol? ((lambda (e2314) (if (annotation?132 e2314) (annotation-expression e2314) e2314)) (syntax-object-expression65 x2313))) (if (annotation?132 x2313) (symbol? (annotation-expression x2313)) '#f))))) (id-sym-name&marks316 (lambda (x2310 w2309) (if (syntax-object?64 x2310) (values ((lambda (e2311) (if (annotation?132 e2311) (annotation-expression e2311) e2311)) (syntax-object-expression65 x2310)) (join-marks413 (wrap-marks318 w2309) (wrap-marks318 (syntax-object-wrap66 x2310)))) (values ((lambda (e2312) (if (annotation?132 e2312) (annotation-expression e2312) e2312)) x2310) (wrap-marks318 w2309))))) (make-wrap317 cons) (wrap-marks318 car) (wrap-subst319 cdr) (make-indirect-label348 (lambda (label2308) (vector 'indirect-label label2308))) (indirect-label?349 (lambda (x2307) (if (vector? x2307) (if (= (vector-length x2307) '2) (eq? (vector-ref x2307 '0) 'indirect-label) '#f) '#f))) (indirect-label-label350 (lambda (x2306) (vector-ref x2306 '1))) (set-indirect-label-label!351 (lambda (x2305 update2304) (vector-set! x2305 '1 update2304))) (gen-indirect-label352 (lambda () (make-indirect-label348 (gen-label355)))) (get-indirect-label353 (lambda (x2303) (indirect-label-label350 x2303))) (set-indirect-label!354 (lambda (x2302 v2301) (set-indirect-label-label!351 x2302 v2301))) (gen-label355 (lambda () (string '#\i))) (label?356 (lambda (x2298) ((lambda (t2299) (if t2299 t2299 ((lambda (t2300) (if t2300 t2300 (indirect-label?349 x2298))) (symbol? x2298)))) (string? x2298)))) (gen-labels357 (lambda (ls2297) (if (null? ls2297) '() (cons (gen-label355) (gen-labels357 (cdr ls2297)))))) (make-ribcage358 (lambda (symnames2296 marks2295 labels2294) (vector 'ribcage symnames2296 marks2295 labels2294))) (ribcage?359 (lambda (x2293) (if (vector? x2293) (if (= (vector-length x2293) '4) (eq? (vector-ref x2293 '0) 'ribcage) '#f) '#f))) (ribcage-symnames360 (lambda (x2292) (vector-ref x2292 '1))) (ribcage-marks361 (lambda (x2291) (vector-ref x2291 '2))) (ribcage-labels362 (lambda (x2290) (vector-ref x2290 '3))) (set-ribcage-symnames!363 (lambda (x2289 update2288) (vector-set! x2289 '1 update2288))) (set-ribcage-marks!364 (lambda (x2287 update2286) (vector-set! x2287 '2 update2286))) (set-ribcage-labels!365 (lambda (x2285 update2284) (vector-set! x2285 '3 update2284))) (make-top-ribcage366 (lambda (key2283 mutable?2282) (vector 'top-ribcage key2283 mutable?2282))) (top-ribcage?367 (lambda (x2281) (if (vector? x2281) (if (= (vector-length x2281) '3) (eq? (vector-ref x2281 '0) 'top-ribcage) '#f) '#f))) (top-ribcage-key368 (lambda (x2280) (vector-ref x2280 '1))) (top-ribcage-mutable?369 (lambda (x2279) (vector-ref x2279 '2))) (set-top-ribcage-key!370 (lambda (x2278 update2277) (vector-set! x2278 '1 update2277))) (set-top-ribcage-mutable?!371 (lambda (x2276 update2275) (vector-set! x2276 '2 update2275))) (make-import-token372 (lambda (key2274) (vector 'import-token key2274))) (import-token?373 (lambda (x2273) (if (vector? x2273) (if (= (vector-length x2273) '2) (eq? (vector-ref x2273 '0) 'import-token) '#f) '#f))) (import-token-key374 (lambda (x2272) (vector-ref x2272 '1))) (set-import-token-key!375 (lambda (x2271 update2270) (vector-set! x2271 '1 update2270))) (make-env376 (lambda (top-ribcage2269 wrap2268) (vector 'env top-ribcage2269 wrap2268))) (env?377 (lambda (x2267) (if (vector? x2267) (if (= (vector-length x2267) '3) (eq? (vector-ref x2267 '0) 'env) '#f) '#f))) (env-top-ribcage378 (lambda (x2266) (vector-ref x2266 '1))) (env-wrap379 (lambda (x2265) (vector-ref x2265 '2))) (set-env-top-ribcage!380 (lambda (x2264 update2263) (vector-set! x2264 '1 update2263))) (set-env-wrap!381 (lambda (x2262 update2261) (vector-set! x2262 '2 update2261))) (anti-mark391 (lambda (w2260) (make-wrap317 (cons '#f (wrap-marks318 w2260)) (cons 'shift (wrap-subst319 w2260))))) (barrier-marker396 '#f) (extend-ribcage!401 (lambda (ribcage2258 id2257 label2256) (begin (set-ribcage-symnames!363 ribcage2258 (cons ((lambda (e2259) (if (annotation?132 e2259) (annotation-expression e2259) e2259)) (syntax-object-expression65 id2257)) (ribcage-symnames360 ribcage2258))) (set-ribcage-marks!364 ribcage2258 (cons (wrap-marks318 (syntax-object-wrap66 id2257)) (ribcage-marks361 ribcage2258))) (set-ribcage-labels!365 ribcage2258 (cons label2256 (ribcage-labels362 ribcage2258)))))) (extend-ribcage-barrier!402 (lambda (ribcage2255 killer-id2254) (extend-ribcage-barrier-help!403 ribcage2255 (syntax-object-wrap66 killer-id2254)))) (extend-ribcage-barrier-help!403 (lambda (ribcage2253 wrap2252) (begin (set-ribcage-symnames!363 ribcage2253 (cons barrier-marker396 (ribcage-symnames360 ribcage2253))) (set-ribcage-marks!364 ribcage2253 (cons (wrap-marks318 wrap2252) (ribcage-marks361 ribcage2253)))))) (extend-ribcage-subst!404 (lambda (ribcage2251 token2250) (set-ribcage-symnames!363 ribcage2251 (cons (make-import-token372 token2250) (ribcage-symnames360 ribcage2251))))) (lookup-import-binding-name405 (lambda (sym2245 token2244 marks2243) ((lambda (new2246) (if new2246 ((letrec ((f2247 (lambda (new2248) (if (pair? new2248) ((lambda (t2249) (if t2249 t2249 (f2247 (cdr new2248)))) (f2247 (car new2248))) (if (symbol? new2248) (if (same-marks?415 marks2243 (wrap-marks318 '((top)))) new2248 '#f) (if (same-marks?415 marks2243 (wrap-marks318 (syntax-object-wrap66 new2248))) new2248 '#f)))))) f2247) new2246) '#f)) (get-import-binding145 sym2245 token2244)))) (store-import-binding406 (lambda (id2229 token2228) (letrec ((id-marks2230 (lambda (id2242) (if (symbol? id2242) (wrap-marks318 '((top))) (wrap-marks318 (syntax-object-wrap66 id2242))))) (cons-id2231 (lambda (id2241 x2240) (if (not x2240) id2241 (cons id2241 x2240)))) (weed2232 (lambda (marks2239 x2238) (if (pair? x2238) (if (same-marks?415 (id-marks2230 (car x2238)) marks2239) (weed2232 marks2239 (cdr x2238)) (cons-id2231 (car x2238) (weed2232 marks2239 (cdr x2238)))) (if x2238 (if (not (same-marks?415 (id-marks2230 x2238) marks2239)) x2238 '#f) '#f))))) ((lambda (sym2233) (if (not (eq? id2229 sym2233)) ((lambda (marks2234) ((lambda (x2235) (put-import-binding146 sym2233 token2228 (cons-id2231 (if (same-marks?415 marks2234 (wrap-marks318 '((top)))) (resolved-id-var-name410 id2229) id2229) x2235))) (weed2232 marks2234 (get-import-binding145 sym2233 token2228)))) (id-marks2230 id2229)) (void))) ((lambda (x2236) ((lambda (e2237) (if (annotation?132 e2237) (annotation-expression e2237) e2237)) (if (syntax-object?64 x2236) (syntax-object-expression65 x2236) x2236))) id2229))))) (make-binding-wrap407 (lambda (ids2218 labels2217 w2216) (if (null? ids2218) w2216 (make-wrap317 (wrap-marks318 w2216) (cons ((lambda (labelvec2219) ((lambda (n2220) ((lambda (symnamevec2222 marksvec2221) (begin ((letrec ((f2223 (lambda (ids2225 i2224) (if (not (null? ids2225)) (call-with-values (lambda () (id-sym-name&marks316 (car ids2225) w2216)) (lambda (symname2227 marks2226) (begin (vector-set! symnamevec2222 i2224 symname2227) (vector-set! marksvec2221 i2224 marks2226) (f2223 (cdr ids2225) (+ i2224 '1))))) (void))))) f2223) ids2218 '0) (make-ribcage358 symnamevec2222 marksvec2221 labelvec2219))) (make-vector n2220) (make-vector n2220))) (vector-length labelvec2219))) (list->vector labels2217)) (wrap-subst319 w2216)))))) (make-resolved-id408 (lambda (fromsym2215 marks2214 tosym2213) (make-syntax-object63 fromsym2215 (make-wrap317 marks2214 (list (make-ribcage358 (vector fromsym2215) (vector marks2214) (vector tosym2213))))))) (id->resolved-id409 (lambda (id2208) (call-with-values (lambda () (id-var-name&marks421 id2208 '(()))) (lambda (tosym2210 marks2209) (begin (if (not tosym2210) (syntax-error id2208 '"identifier not visible for export") (void)) (make-resolved-id408 ((lambda (x2211) ((lambda (e2212) (if (annotation?132 e2212) (annotation-expression e2212) e2212)) (if (syntax-object?64 x2211) (syntax-object-expression65 x2211) x2211))) id2208) marks2209 tosym2210)))))) (resolved-id-var-name410 (lambda (id2207) (vector-ref (ribcage-labels362 (car (wrap-subst319 (syntax-object-wrap66 id2207)))) '0))) (smart-append411 (lambda (m12206 m22205) (if (null? m22205) m12206 (append m12206 m22205)))) (join-wraps412 (lambda (w12202 w22201) ((lambda (m12204 s12203) (if (null? m12204) (if (null? s12203) w22201 (make-wrap317 (wrap-marks318 w22201) (join-subst414 s12203 (wrap-subst319 w22201)))) (make-wrap317 (join-marks413 m12204 (wrap-marks318 w22201)) (join-subst414 s12203 (wrap-subst319 w22201))))) (wrap-marks318 w12202) (wrap-subst319 w12202)))) (join-marks413 (lambda (m12200 m22199) (smart-append411 m12200 m22199))) (join-subst414 (lambda (s12198 s22197) (smart-append411 s12198 s22197))) (same-marks?415 (lambda (x2195 y2194) ((lambda (t2196) (if t2196 t2196 (if (not (null? x2195)) (if (not (null? y2194)) (if (eq? (car x2195) (car y2194)) (same-marks?415 (cdr x2195) (cdr y2194)) '#f) '#f) '#f))) (eq? x2195 y2194)))) (leave-implicit?416 (lambda (token2193) (eq? token2193 '*top*))) (new-binding417 (lambda (sym2190 marks2189 token2188) ((lambda (loc2191) ((lambda (id2192) (begin (store-import-binding406 id2192 token2188) (values loc2191 id2192))) (make-resolved-id408 sym2190 marks2189 loc2191))) (if (if (leave-implicit?416 token2188) (same-marks?415 marks2189 (wrap-marks318 '((top)))) '#f) sym2190 (generate-id147 sym2190))))) (top-id-bound-var-name418 (lambda (sym2184 marks2183 top-ribcage2182) ((lambda (token2185) ((lambda (t2186) (if t2186 ((lambda (id2187) (if (symbol? id2187) (if (read-only-binding?144 id2187) (new-binding417 sym2184 marks2183 token2185) (values id2187 (make-resolved-id408 sym2184 marks2183 id2187))) (values (resolved-id-var-name410 id2187) id2187))) t2186) (new-binding417 sym2184 marks2183 token2185))) (lookup-import-binding-name405 sym2184 token2185 marks2183))) (top-ribcage-key368 top-ribcage2182)))) (top-id-free-var-name419 (lambda (sym2176 marks2175 top-ribcage2174) ((lambda (token2177) ((lambda (t2178) (if t2178 ((lambda (id2179) (if (symbol? id2179) id2179 (resolved-id-var-name410 id2179))) t2178) (if (if (top-ribcage-mutable?369 top-ribcage2174) (same-marks?415 marks2175 (wrap-marks318 '((top)))) '#f) (call-with-values (lambda () (new-binding417 sym2176 (wrap-marks318 '((top))) token2177)) (lambda (sym2181 id2180) sym2181)) '#f))) (lookup-import-binding-name405 sym2176 token2177 marks2175))) (top-ribcage-key368 top-ribcage2174)))) (id-var-name-loc&marks420 (lambda (id2139 w2138) (letrec ((search2140 (lambda (sym2169 subst2168 marks2167) (if (null? subst2168) (values '#f marks2167) ((lambda (fst2170) (if (eq? fst2170 'shift) (search2140 sym2169 (cdr subst2168) (cdr marks2167)) (if (ribcage?359 fst2170) ((lambda (symnames2171) (if (vector? symnames2171) (search-vector-rib2142 sym2169 subst2168 marks2167 symnames2171 fst2170) (search-list-rib2141 sym2169 subst2168 marks2167 symnames2171 fst2170))) (ribcage-symnames360 fst2170)) (if (top-ribcage?367 fst2170) ((lambda (t2172) (if t2172 ((lambda (var-name2173) (values var-name2173 marks2167)) t2172) (search2140 sym2169 (cdr subst2168) marks2167))) (top-id-free-var-name419 sym2169 marks2167 fst2170)) (error 'sc-expand '"internal error in id-var-name-loc&marks: improper subst ~s" subst2168))))) (car subst2168))))) (search-list-rib2141 (lambda (sym2161 subst2160 marks2159 symnames2158 ribcage2157) ((letrec ((f2162 (lambda (symnames2164 i2163) (if (null? symnames2164) (search2140 sym2161 (cdr subst2160) marks2159) (if (if (eq? (car symnames2164) sym2161) (same-marks?415 marks2159 (list-ref (ribcage-marks361 ribcage2157) i2163)) '#f) (values (list-ref (ribcage-labels362 ribcage2157) i2163) marks2159) (if (import-token?373 (car symnames2164)) ((lambda (t2165) (if t2165 ((lambda (id2166) (values (if (symbol? id2166) id2166 (resolved-id-var-name410 id2166)) marks2159)) t2165) (f2162 (cdr symnames2164) i2163))) (lookup-import-binding-name405 sym2161 (import-token-key374 (car symnames2164)) marks2159)) (if (if (eq? (car symnames2164) barrier-marker396) (same-marks?415 marks2159 (list-ref (ribcage-marks361 ribcage2157) i2163)) '#f) (values '#f marks2159) (f2162 (cdr symnames2164) (+ i2163 '1))))))))) f2162) symnames2158 '0))) (search-vector-rib2142 (lambda (sym2153 subst2152 marks2151 symnames2150 ribcage2149) ((lambda (n2154) ((letrec ((f2155 (lambda (i2156) (if (= i2156 n2154) (search2140 sym2153 (cdr subst2152) marks2151) (if (if (eq? (vector-ref symnames2150 i2156) sym2153) (same-marks?415 marks2151 (vector-ref (ribcage-marks361 ribcage2149) i2156)) '#f) (values (vector-ref (ribcage-labels362 ribcage2149) i2156) marks2151) (f2155 (+ i2156 '1))))))) f2155) '0)) (vector-length symnames2150))))) (if (symbol? id2139) (search2140 id2139 (wrap-subst319 w2138) (wrap-marks318 w2138)) (if (syntax-object?64 id2139) ((lambda (sym2144 w12143) (call-with-values (lambda () (search2140 sym2144 (wrap-subst319 w2138) (join-marks413 (wrap-marks318 w2138) (wrap-marks318 w12143)))) (lambda (name2146 marks2145) (if name2146 (values name2146 marks2145) (search2140 sym2144 (wrap-subst319 w12143) marks2145))))) ((lambda (e2147) (if (annotation?132 e2147) (annotation-expression e2147) e2147)) (syntax-object-expression65 id2139)) (syntax-object-wrap66 id2139)) (if (annotation?132 id2139) (search2140 ((lambda (e2148) (if (annotation?132 e2148) (annotation-expression e2148) e2148)) id2139) (wrap-subst319 w2138) (wrap-marks318 w2138)) (error-hook136 'id-var-name '"invalid id" id2139))))))) (id-var-name&marks421 (lambda (id2135 w2134) (call-with-values (lambda () (id-var-name-loc&marks420 id2135 w2134)) (lambda (label2137 marks2136) (values (if (indirect-label?349 label2137) (get-indirect-label353 label2137) label2137) marks2136))))) (id-var-name-loc422 (lambda (id2131 w2130) (call-with-values (lambda () (id-var-name-loc&marks420 id2131 w2130)) (lambda (label2133 marks2132) label2133)))) (id-var-name423 (lambda (id2127 w2126) (call-with-values (lambda () (id-var-name-loc&marks420 id2127 w2126)) (lambda (label2129 marks2128) (if (indirect-label?349 label2129) (get-indirect-label353 label2129) label2129))))) (free-id=?424 (lambda (i2121 j2120) (if (eq? ((lambda (x2124) ((lambda (e2125) (if (annotation?132 e2125) (annotation-expression e2125) e2125)) (if (syntax-object?64 x2124) (syntax-object-expression65 x2124) x2124))) i2121) ((lambda (x2122) ((lambda (e2123) (if (annotation?132 e2123) (annotation-expression e2123) e2123)) (if (syntax-object?64 x2122) (syntax-object-expression65 x2122) x2122))) j2120)) (eq? (id-var-name423 i2121 '(())) (id-var-name423 j2120 '(()))) '#f))) (literal-id=?425 (lambda (id2110 literal2109) (if (eq? ((lambda (x2113) ((lambda (e2114) (if (annotation?132 e2114) (annotation-expression e2114) e2114)) (if (syntax-object?64 x2113) (syntax-object-expression65 x2113) x2113))) id2110) ((lambda (x2111) ((lambda (e2112) (if (annotation?132 e2112) (annotation-expression e2112) e2112)) (if (syntax-object?64 x2111) (syntax-object-expression65 x2111) x2111))) literal2109)) ((lambda (n-id2116 n-literal2115) ((lambda (t2117) (if t2117 t2117 (if ((lambda (t2118) (if t2118 t2118 (symbol? n-id2116))) (not n-id2116)) ((lambda (t2119) (if t2119 t2119 (symbol? n-literal2115))) (not n-literal2115)) '#f))) (eq? n-id2116 n-literal2115))) (id-var-name423 id2110 '(())) (id-var-name423 literal2109 '(()))) '#f))) (bound-id=?426 (lambda (i2104 j2103) (if (if (syntax-object?64 i2104) (syntax-object?64 j2103) '#f) (if (eq? ((lambda (e2106) (if (annotation?132 e2106) (annotation-expression e2106) e2106)) (syntax-object-expression65 i2104)) ((lambda (e2105) (if (annotation?132 e2105) (annotation-expression e2105) e2105)) (syntax-object-expression65 j2103))) (same-marks?415 (wrap-marks318 (syntax-object-wrap66 i2104)) (wrap-marks318 (syntax-object-wrap66 j2103))) '#f) (eq? ((lambda (e2108) (if (annotation?132 e2108) (annotation-expression e2108) e2108)) i2104) ((lambda (e2107) (if (annotation?132 e2107) (annotation-expression e2107) e2107)) j2103))))) (valid-bound-ids?427 (lambda (ids2099) (if ((letrec ((all-ids?2100 (lambda (ids2101) ((lambda (t2102) (if t2102 t2102 (if (id?310 (car ids2101)) (all-ids?2100 (cdr ids2101)) '#f))) (null? ids2101))))) all-ids?2100) ids2099) (distinct-bound-ids?428 ids2099) '#f))) (distinct-bound-ids?428 (lambda (ids2095) ((letrec ((distinct?2096 (lambda (ids2097) ((lambda (t2098) (if t2098 t2098 (if (not (bound-id-member?430 (car ids2097) (cdr ids2097))) (distinct?2096 (cdr ids2097)) '#f))) (null? ids2097))))) distinct?2096) ids2095))) (invalid-ids-error429 (lambda (ids2091 exp2090 class2089) ((letrec ((find2092 (lambda (ids2094 gooduns2093) (if (null? ids2094) (syntax-error exp2090) (if (id?310 (car ids2094)) (if (bound-id-member?430 (car ids2094) gooduns2093) (syntax-error (car ids2094) '"duplicate " class2089) (find2092 (cdr ids2094) (cons (car ids2094) gooduns2093))) (syntax-error (car ids2094) '"invalid " class2089)))))) find2092) ids2091 '()))) (bound-id-member?430 (lambda (x2087 list2086) (if (not (null? list2086)) ((lambda (t2088) (if t2088 t2088 (bound-id-member?430 x2087 (cdr list2086)))) (bound-id=?426 x2087 (car list2086))) '#f))) (wrap431 (lambda (x2085 w2084) (if (if (null? (wrap-marks318 w2084)) (null? (wrap-subst319 w2084)) '#f) x2085 (if (syntax-object?64 x2085) (make-syntax-object63 (syntax-object-expression65 x2085) (join-wraps412 w2084 (syntax-object-wrap66 x2085))) (if (null? x2085) x2085 (make-syntax-object63 x2085 w2084)))))) (source-wrap432 (lambda (x2083 w2082 ae2081) (wrap431 (if (annotation?132 ae2081) (begin (if (not (eq? (annotation-expression ae2081) x2083)) (error 'sc-expand '"internal error in source-wrap: ae/x mismatch") (void)) ae2081) x2083) w2082))) (chi-when-list433 (lambda (when-list2079 w2078) (map (lambda (x2080) (if (literal-id=?425 x2080 '#(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! 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-interface2 make-resolved-interface1 make-unresolved-interface set-interface-token! set-interface-exports! interface-token interface-exports 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=? 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 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! 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-token-key! import-token-key import-token? make-import-token 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-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) ("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) ("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)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "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=?425 x2080 '#(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! 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-interface2 make-resolved-interface1 make-unresolved-interface set-interface-token! set-interface-exports! interface-token interface-exports 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=? 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 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! 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-token-key! import-token-key import-token? make-import-token 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-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) ("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) ("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)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "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=?425 x2080 '#(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! 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-interface2 make-resolved-interface1 make-unresolved-interface set-interface-token! set-interface-exports! interface-token interface-exports 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=? 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 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! 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-token-key! import-token-key import-token? make-import-token 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-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) ("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) ("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)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "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=?425 x2080 '#(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! 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-interface2 make-resolved-interface1 make-unresolved-interface set-interface-token! set-interface-exports! interface-token interface-exports 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=? 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 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! 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-token-key! import-token-key import-token? make-import-token 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-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) ("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) ("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)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "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=?425 x2080 '#(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! 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-interface2 make-resolved-interface1 make-unresolved-interface set-interface-token! set-interface-exports! interface-token interface-exports 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=? 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 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! 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-token-key! import-token-key import-token? make-import-token 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-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) ("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) ("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)) ("i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "i" "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 (wrap431 x2080 w2078) '"invalid eval-when situation"))))))) when-list2079))) (syntax-type434 (lambda (e2063 r2062 w2061 ae2060 rib2059) (if (symbol? e2063) ((lambda (n2064) ((lambda (b2065) ((lambda (type2066) ((lambda () ((lambda (t2067) (if (memv t2067 '(macro macro!)) (syntax-type434 (chi-macro489 (binding-value286 b2065) e2063 r2062 w2061 ae2060 rib2059) r2062 '(()) '#f rib2059) (values type2066 (binding-value286 b2065) e2063 w2061 ae2060))) type2066)))) (binding-type285 b2065))) (lookup305 n2064 r2062))) (id-var-name423 e2063 w2061)) (if (pair? e2063) ((lambda (first2068) (if (id?310 first2068) ((lambda (n2069) ((lambda (b2070) ((lambda (type2071) ((lambda () ((lambda (t2072) (if (memv t2072 '(lexical)) (values 'lexical-call (binding-value286 b2070) e2063 w2061 ae2060) (if (memv t2072 '(macro macro!)) (syntax-type434 (chi-macro489 (binding-value286 b2070) e2063 r2062 w2061 ae2060 rib2059) r2062 '(()) '#f rib2059) (if (memv t2072 '(core)) (values type2071 (binding-value286 b2070) e2063 w2061 ae2060) (if (memv t2072 '(begin)) (values 'begin-form '#f e2063 w2061 ae2060) (if (memv t2072 '(alias)) (values 'alias-form '#f e2063 w2061 ae2060) (if (memv t2072 '(define)) (values 'define-form '#f e2063 w2061 ae2060) (if (memv t2072 '(define-syntax)) (values 'define-syntax-form '#f e2063 w2061 ae2060) (if (memv t2072 '(set!)) (chi-set!488 e2063 r2062 w2061 ae2060 rib2059) (if (memv t2072 '($module-key)) (values '$module-form '#f e2063 w2061 ae2060) (if (memv t2072 '($import)) (values '$import-form '#f e2063 w2061 ae2060) (if (memv t2072 '(eval-when)) (values 'eval-when-form '#f e2063 w2061 ae2060) (if (memv t2072 '(meta)) (values 'meta-form '#f e2063 w2061 ae2060) (if (memv t2072 '(local-syntax)) (values 'local-syntax-form (binding-value286 b2070) e2063 w2061 ae2060) (values 'call '#f e2063 w2061 ae2060))))))))))))))) type2071)))) (binding-type285 b2070))) (lookup305 n2069 r2062))) (id-var-name423 first2068 w2061)) (values 'call '#f e2063 w2061 ae2060))) (car e2063)) (if (syntax-object?64 e2063) (syntax-type434 (syntax-object-expression65 e2063) r2062 (join-wraps412 w2061 (syntax-object-wrap66 e2063)) '#f rib2059) (if (annotation?132 e2063) (syntax-type434 (annotation-expression e2063) r2062 w2061 e2063 rib2059) (if ((lambda (x2073) ((lambda (t2074) (if t2074 t2074 ((lambda (t2075) (if t2075 t2075 ((lambda (t2076) (if t2076 t2076 ((lambda (t2077) (if t2077 t2077 (null? x2073))) (char? x2073)))) (string? x2073)))) (number? x2073)))) (boolean? x2073))) e2063) (values 'constant '#f e2063 w2061 ae2060) (values 'other '#f e2063 w2061 ae2060)))))))) (chi-top*435 (lambda (e2054 r2053 w2052 ctem2051 rtem2050 meta?2049 top-ribcage2048) ((lambda (meta-residuals2055) (letrec ((meta-residualize!2056 (lambda (x2058) (set! meta-residuals2055 (cons x2058 meta-residuals2055))))) ((lambda (e2057) (build-sequence239 '#f (reverse (cons e2057 meta-residuals2055)))) (chi-top437 e2054 r2053 w2052 ctem2051 rtem2050 meta?2049 top-ribcage2048 meta-residualize!2056 '#f)))) '()))) (chi-top-sequence436 (lambda (body2044 r2043 w2042 ae2041 ctem2040 rtem2039 meta?2038 ribcage2037 meta-residualize!2036) (build-sequence239 ae2041 ((letrec ((dobody2045 (lambda (body2046) (if (null? body2046) '() ((lambda (first2047) (cons first2047 (dobody2045 (cdr body2046)))) (chi-top437 (car body2046) r2043 w2042 ctem2040 rtem2039 meta?2038 ribcage2037 meta-residualize!2036 '#f)))))) dobody2045) body2044)))) (chi-top437 (lambda (e1982 r1981 w1980 ctem1979 rtem1978 meta?1977 top-ribcage1976 meta-residualize!1975 meta-seen?1974) (call-with-values (lambda () (syntax-type434 e1982 r1981 w1980 '#f top-ribcage1976)) (lambda (type1987 value1986 e1985 w1984 ae1983) ((lambda (t1988) (if (memv t1988 '(begin-form)) ((lambda (forms1989) (if (null? forms1989) (chi-void503) (chi-top-sequence436 forms1989 r1981 w1984 ae1983 ctem1979 rtem1978 meta?1977 top-ribcage1976 meta-residualize!1975))) (parse-begin500 e1985 w1984 ae1983 '#t)) (if (memv t1988 '(local-syntax-form)) (call-with-values (lambda () (chi-local-syntax502 value1986 e1985 r1981 r1981 w1984 ae1983)) (lambda (forms1994 r1993 mr1992 w1991 ae1990) (chi-top-sequence436 forms1994 r1993 w1991 ae1990 ctem1979 rtem1978 meta?1977 top-ribcage1976 meta-residualize!1975))) (if (memv t1988 '(eval-when-form)) (call-with-values (lambda () (parse-eval-when498 e1985 w1984 ae1983)) (lambda (when-list1996 forms1995) ((lambda (ctem1998 rtem1997) (if (if (null? ctem1998) (null? rtem1997) '#f) (chi-void503) (chi-top-sequence436 forms1995 r1981 w1984 ae1983 ctem1998 rtem1997 meta?1977 top-ribcage1976 meta-residualize!1975))) (update-mode-set477 when-list1996 ctem1979) (update-mode-set477 when-list1996 rtem1978)))) (if (memv t1988 '(meta-form)) (chi-top437 (parse-meta497 e1985 w1984 ae1983) r1981 w1984 ctem1979 rtem1978 '#t top-ribcage1976 meta-residualize!1975 '#t) (if (memv t1988 '(define-syntax-form)) (call-with-values (lambda () (parse-define-syntax496 e1985 w1984 ae1983)) (lambda (id2001 rhs2000 w1999) ((lambda (id2002) (begin (if (displaced-lexical?302 id2002 r1981) (displaced-lexical-error303 id2002) (void)) (if (not (top-ribcage-mutable?369 top-ribcage1976)) (syntax-error (source-wrap432 e1985 w1999 ae1983) '"invalid definition in read-only environment") (void)) ((lambda (sym2003) (call-with-values (lambda () (top-id-bound-var-name418 sym2003 (wrap-marks318 (syntax-object-wrap66 id2002)) top-ribcage1976)) (lambda (valsym2005 bound-id2004) (begin (if (not (eq? (id-var-name423 id2002 '(())) valsym2005)) (syntax-error (source-wrap432 e1985 w1999 ae1983) '"definition not permitted") (void)) (if (read-only-binding?144 valsym2005) (syntax-error (source-wrap432 e1985 w1999 ae1983) '"invalid definition of read-only identifier") (void)) (ct-eval/residualize2480 ctem1979 (lambda () (list '$sc-put-cte (list 'quote bound-id2004) (chi485 rhs2000 r1981 r1981 w1999 '#t) (list 'quote (top-ribcage-key368 top-ribcage1976))))))))) ((lambda (x2006) ((lambda (e2007) (if (annotation?132 e2007) (annotation-expression e2007) e2007)) (if (syntax-object?64 x2006) (syntax-object-expression65 x2006) x2006))) id2002)))) (wrap431 id2001 w1999)))) (if (memv t1988 '(define-form)) (call-with-values (lambda () (parse-define495 e1985 w1984 ae1983)) (lambda (id2010 rhs2009 w2008) ((lambda (id2011) (begin (if (displaced-lexical?302 id2011 r1981) (displaced-lexical-error303 id2011) (void)) (if (not (top-ribcage-mutable?369 top-ribcage1976)) (syntax-error (source-wrap432 e1985 w2008 ae1983) '"invalid definition in read-only environment") (void)) ((lambda (sym2012) (call-with-values (lambda () (top-id-bound-var-name418 sym2012 (wrap-marks318 (syntax-object-wrap66 id2011)) top-ribcage1976)) (lambda (valsym2014 bound-id2013) (begin (if (not (eq? (id-var-name423 id2011 '(())) valsym2014)) (syntax-error (source-wrap432 e1985 w2008 ae1983) '"definition not permitted") (void)) (if (read-only-binding?144 valsym2014) (syntax-error (source-wrap432 e1985 w2008 ae1983) '"invalid definition of read-only identifier") (void)) (if meta?1977 (ct-eval/residualize2480 ctem1979 (lambda () (build-sequence239 '#f (list (list '$sc-put-cte (list 'quote bound-id2013) (list 'quote (cons 'meta-variable valsym2014)) (list 'quote (top-ribcage-key368 top-ribcage1976))) (list 'define valsym2014 (chi485 rhs2009 r1981 r1981 w2008 '#t)))))) (build-sequence239 '#f (list (ct-eval/residualize2480 ctem1979 (lambda () (list '$sc-put-cte (list 'quote bound-id2013) (list 'quote (cons 'global valsym2014)) (list 'quote (top-ribcage-key368 top-ribcage1976))))) (rt-eval/residualize479 rtem1978 (lambda () (list 'define valsym2014 (chi485 rhs2009 r1981 r1981 w2008 '#f))))))))))) ((lambda (x2015) ((lambda (e2016) (if (annotation?132 e2016)