From b9cfbe827627c536b83f8715a24b0d8938ab1597 Mon Sep 17 00:00:00 2001 From: Yuichi Nishiwaki Date: Tue, 4 Apr 2017 00:02:00 +0900 Subject: [PATCH] precompile library system --- Makefile | 2 +- bin/picrin-bootstrap | Bin 526592 -> 392760 bytes lib/ext/boot.c | 878 ++++++++++++++++++++++------------------- piclib/boot.scm | 906 +++++++++++++++++++++---------------------- piclib/boot2.scm | 489 ----------------------- piclib/library.scm | 502 ++++++++++++------------ src/tiny-main.c | 3 + tools/mkboot.scm | 25 +- 8 files changed, 1175 insertions(+), 1630 deletions(-) delete mode 100644 piclib/boot2.scm diff --git a/Makefile b/Makefile index 125d5dd3..e72145aa 100644 --- a/Makefile +++ b/Makefile @@ -78,7 +78,7 @@ src/init_contrib.c: # $(CC) -shared $(CFLAGS) -o $@ $(LIBPICRIN_OBJS) $(LDFLAGS) lib/ext/boot.c: piclib/boot.scm piclib/library.scm - bin/picrin-bootstrap tools/mkboot.scm > lib/ext/boot.c + cat piclib/boot.scm piclib/library.scm | bin/picrin-bootstrap tools/mkboot.scm > lib/ext/boot.c $(LIBPICRIN_OBJS) $(PICRIN_OBJS) $(CONTRIB_OBJS): lib/include/picrin.h lib/include/picrin/*.h lib/khash.h lib/object.h lib/state.h lib/vm.h diff --git a/bin/picrin-bootstrap b/bin/picrin-bootstrap index 6859c6af72296b96a7b7b330abf6f89bac60836e..0b46e5ca3eadf5e6b5d27d0d9b290d2886c639fa 100755 GIT binary patch literal 392760 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%0Dtj|;pIG(}wyJCt=OB=SFG<*; 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 z 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
lZe>UH6#-5FFCB4>u5+8cqRontCmLie>E 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%0AM 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%0A!p82DlEPBN9G_BqT)JqNr4c(t-rys1%7 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 (.walk.179 .f.", -"185 (vector->list .form.186))) .form.186))))) ((core#lambda (.form.187) (.walk.1", -"79 .unwrap.178 (apply .f.172 (.walk.179 .wrap.177 .form.187)))) (cdr .form.173))", -")))) #f #f #f)) (make-ephemeron-table) (make-ephemeron-table))))) ((core#lambda ", -"() (core#begin (core#define .define-transformer.188 (core#lambda (.name.208 .tra", -"nsformer.209) (add-macro! .name.208 .transformer.209))) (core#begin (core#define", -" .the.189 (core#lambda (.var.210) (make-identifier .var.210 default-environment)", -")) (core#begin (core#define .the-core-define.190 (.the.189 (core#quote core#defi", -"ne))) (core#begin (core#define .the-core-lambda.191 (.the.189 (core#quote core#l", -"ambda))) (core#begin (core#define .the-core-begin.192 (.the.189 (core#quote core", -"#begin))) (core#begin (core#define .the-core-quote.193 (.the.189 (core#quote cor", -"e#quote))) (core#begin (core#define .the-core-set!.194 (.the.189 (core#quote cor", -"e#set!))) (core#begin (core#define .the-core-if.195 (.the.189 (core#quote core#i", -"f))) (core#begin (core#define .the-core-define-macro.196 (.the.189 (core#quote c", -"ore#define-macro))) (core#begin (core#define .the-define.197 (.the.189 (core#quo", -"te define))) (core#begin (core#define .the-lambda.198 (.the.189 (core#quote lamb", -"da))) (core#begin (core#define .the-begin.199 (.the.189 (core#quote begin))) (co", -"re#begin (core#define .the-quote.200 (.the.189 (core#quote quote))) (core#begin ", -"(core#define .the-set!.201 (.the.189 (core#quote set!))) (core#begin (core#defin", -"e .the-if.202 (.the.189 (core#quote if))) (core#begin (core#define .the-define-m", -"acro.203 (.the.189 (core#quote define-macro))) (core#begin (.define-transformer.", -"188 (core#quote quote) (core#lambda (.form.211 .env.212) (core#if (= (length .fo", -"rm.211) 2) (cons .the-core-quote.193 (cons (cadr .form.211) (core#quote ()))) (e", -"rror \"malformed quote\" .form.211)))) (core#begin (.define-transformer.188 (core#", -"quote if) (core#lambda (.form.213 .env.214) ((core#lambda (.len.215) (core#if (=", -" .len.215 3) (append .form.213 (cons (core#quote #undefined) (core#quote ()))) (", -"core#if (= .len.215 4) (cons .the-core-if.195 (cdr .form.213)) (error \"malformed", -" if\" .form.213)))) (length .form.213)))) (core#begin (.define-transformer.188 (c", -"ore#quote begin) (core#lambda (.form.216 .env.217) ((core#lambda (.len.218) (cor", -"e#if (= .len.218 1) #undefined (core#if (= .len.218 2) (cadr .form.216) (core#if", -" (= .len.218 3) (cons .the-core-begin.192 (cdr .form.216)) (cons .the-core-begin", -".192 (cons (cadr .form.216) (cons (cons .the-begin.199 (cddr .form.216)) (core#q", -"uote ())))))))) (length .form.216)))) (core#begin (.define-transformer.188 (core", -"#quote set!) (core#lambda (.form.219 .env.220) (core#if (core#if (= (length .for", -"m.219) 3) (identifier? (cadr .form.219)) #f) (cons .the-core-set!.194 (cdr .form", -".219)) (error \"malformed set!\" .form.219)))) (core#begin (core#define .check-for", -"mal.204 (core#lambda (.formal.221) ((core#lambda (.it.222) (core#if .it.222 .it.", -"222 ((core#lambda (.it.223) (core#if .it.223 .it.223 ((core#lambda (.it.224) (co", -"re#if .it.224 .it.224 #f)) (core#if (pair? .formal.221) (core#if (identifier? (c", -"ar .formal.221)) (.check-formal.204 (cdr .formal.221)) #f) #f)))) (identifier? .", -"formal.221)))) (null? .formal.221)))) (core#begin (.define-transformer.188 (core", -"#quote lambda) (core#lambda (.form.225 .env.226) (core#if (= (length .form.225) ", -"1) (error \"malformed lambda\" .form.225) (core#if (.check-formal.204 (cadr .form.", -"225)) (cons .the-core-lambda.191 (cons (cadr .form.225) (cons (cons .the-begin.1", -"99 (cddr .form.225)) (core#quote ())))) (error \"malformed lambda\" .form.225)))))", -" (core#begin (.define-transformer.188 (core#quote define) (core#lambda (.form.22", -"7 .env.228) ((core#lambda (.len.229) (core#if (= .len.229 1) (error \"malformed d", -"efine\" .form.227) ((core#lambda (.formal.230) (core#if (identifier? .formal.230)", -" (core#if (= .len.229 3) (cons .the-core-define.190 (cdr .form.227)) (error \"mal", -"formed define\" .form.227)) (core#if (pair? .formal.230) (cons .the-define.197 (c", -"ons (car .formal.230) (cons (cons .the-lambda.198 (cons (cdr .formal.230) (cddr ", -".form.227))) (core#quote ())))) (error \"define: binding to non-varaible object\" ", -".form.227)))) (cadr .form.227)))) (length .form.227)))) (core#begin (.define-tra", -"nsformer.188 (core#quote define-macro) (core#lambda (.form.231 .env.232) (core#i", -"f (= (length .form.231) 3) (core#if (identifier? (cadr .form.231)) (cons .the-co", -"re-define-macro.196 (cdr .form.231)) (error \"define-macro: binding to non-variab", -"le object\" .form.231)) (error \"malformed define-macro\" .form.231)))) (core#begin", -" (.define-transformer.188 (core#quote syntax-error) (core#lambda (.form.233 ._.2", -"34) (apply error (cdr .form.233)))) (core#begin #undefined (core#begin (.define-", -"transformer.188 (core#quote else) (core#lambda ._.235 (error \"invalid use of aux", -"iliary syntax\" (core#quote else)))) (core#begin (.define-transformer.188 (core#q", -"uote =>) (core#lambda ._.236 (error \"invalid use of auxiliary syntax\" (core#quot", -"e =>)))) (core#begin (.define-transformer.188 (core#quote unquote) (core#lambda ", -"._.237 (error \"invalid use of auxiliary syntax\" (core#quote unquote)))) (core#be", -"gin (.define-transformer.188 (core#quote unquote-splicing) (core#lambda ._.238 (", -"error \"invalid use of auxiliary syntax\" (core#quote unquote-splicing)))) (core#b", -"egin (.define-transformer.188 (core#quote syntax-unquote) (core#lambda ._.239 (e", -"rror \"invalid use of auxiliary syntax\" (core#quote syntax-unquote)))) (core#begi", -"n (.define-transformer.188 (core#quote syntax-unquote-splicing) (core#lambda ._.", -"240 (error \"invalid use of auxiliary syntax\" (core#quote syntax-unquote-splicing", -")))) (core#begin (.define-transformer.188 (core#quote let) (core#lambda (.form.2", -"41 .env.242) (core#if (identifier? (cadr .form.241)) ((core#lambda (.name.243 .f", -"ormal.244 .body.245) (cons (cons .the-lambda.198 (cons (core#quote ()) (cons (co", -"ns .the-define.197 (cons (cons .name.243 (map car .formal.244)) .body.245)) (con", -"s (cons .name.243 (map cadr .formal.244)) (core#quote ()))))) (core#quote ()))) ", -"(car (cdr .form.241)) (car (cdr (cdr .form.241))) (cdr (cdr (cdr .form.241)))) (", -"(core#lambda (.formal.246 .body.247) (cons (cons .the-lambda.198 (cons (map car ", -".formal.246) .body.247)) (map cadr .formal.246))) (car (cdr .form.241)) (cdr (cd", -"r .form.241)))))) (core#begin (.define-transformer.188 (core#quote and) (core#la", -"mbda (.form.248 .env.249) (core#if (null? (cdr .form.248)) #t (core#if (null? (c", -"ddr .form.248)) (cadr .form.248) (cons .the-if.202 (cons (cadr .form.248) (cons ", -"(cons (.the.189 (core#quote and)) (cddr .form.248)) (cons (core#quote #f) (core#", -"quote ()))))))))) (core#begin (.define-transformer.188 (core#quote or) (core#lam", -"bda (.form.250 .env.251) (core#if (null? (cdr .form.250)) #f ((core#lambda (.tmp", -".252) (cons (.the.189 (core#quote let)) (cons (cons (cons .tmp.252 (cons (cadr .", -"form.250) (core#quote ()))) (core#quote ())) (cons (cons .the-if.202 (cons .tmp.", -"252 (cons .tmp.252 (cons (cons (.the.189 (core#quote or)) (cddr .form.250)) (cor", -"e#quote ()))))) (core#quote ()))))) (make-identifier (core#quote it) .env.251)))", -")) (core#begin (.define-transformer.188 (core#quote cond) (core#lambda (.form.25", -"3 .env.254) ((core#lambda (.clauses.255) (core#if (null? .clauses.255) #undefine", -"d ((core#lambda (.clause.256) (core#if (core#if (identifier? (car .clause.256)) ", -"(identifier=? (.the.189 (core#quote else)) (make-identifier (car .clause.256) .e", -"nv.254)) #f) (cons .the-begin.199 (cdr .clause.256)) (core#if (null? (cdr .claus", -"e.256)) (cons (.the.189 (core#quote or)) (cons (car .clause.256) (cons (cons (.t", -"he.189 (core#quote cond)) (cdr .clauses.255)) (core#quote ())))) (core#if (core#", -"if (identifier? (cadr .clause.256)) (identifier=? (.the.189 (core#quote =>)) (ma", -"ke-identifier (cadr .clause.256) .env.254)) #f) ((core#lambda (.tmp.257) (cons (", -".the.189 (core#quote let)) (cons (cons (cons .tmp.257 (cons (car .clause.256) (c", -"ore#quote ()))) (core#quote ())) (cons (cons .the-if.202 (cons .tmp.257 (cons (c", -"ons (cadr (cdr .clause.256)) (cons .tmp.257 (core#quote ()))) (cons (cons (.the.", -"189 (core#quote cond)) (cddr .form.253)) (core#quote ()))))) (core#quote ())))))", -" (make-identifier (core#quote tmp) .env.254)) (cons .the-if.202 (cons (car .clau", -"se.256) (cons (cons .the-begin.199 (cdr .clause.256)) (cons (cons (.the.189 (cor", -"e#quote cond)) (cdr .clauses.255)) (core#quote ()))))))))) (car .clauses.255))))", -" (cdr .form.253)))) (core#begin (.define-transformer.188 (core#quote quasiquote)", -" (core#lambda (.form.258 .env.259) (core#begin (core#define .quasiquote?.260 (co", -"re#lambda (.form.264) (core#if (pair? .form.264) (core#if (identifier? (car .for", -"m.264)) (identifier=? (.the.189 (core#quote quasiquote)) (make-identifier (car .", -"form.264) .env.259)) #f) #f))) (core#begin (core#define .unquote?.261 (core#lamb", -"da (.form.265) (core#if (pair? .form.265) (core#if (identifier? (car .form.265))", -" (identifier=? (.the.189 (core#quote unquote)) (make-identifier (car .form.265) ", -".env.259)) #f) #f))) (core#begin (core#define .unquote-splicing?.262 (core#lambd", -"a (.form.266) (core#if (pair? .form.266) (core#if (pair? (car .form.266)) (core#", -"if (identifier? (caar .form.266)) (identifier=? (.the.189 (core#quote unquote-sp", -"licing)) (make-identifier (caar .form.266) .env.259)) #f) #f) #f))) (core#begin ", -"(core#define .qq.263 (core#lambda (.depth.267 .expr.268) (core#if (.unquote?.261", -" .expr.268) (core#if (= .depth.267 1) (cadr .expr.268) (list (.the.189 (core#quo", -"te list)) (list (.the.189 (core#quote quote)) (.the.189 (core#quote unquote))) (", -".qq.263 (- .depth.267 1) (car (cdr .expr.268))))) (core#if (.unquote-splicing?.2", -"62 .expr.268) (core#if (= .depth.267 1) (list (.the.189 (core#quote append)) (ca", -"r (cdr (car .expr.268))) (.qq.263 .depth.267 (cdr .expr.268))) (list (.the.189 (", -"core#quote cons)) (list (.the.189 (core#quote list)) (list (.the.189 (core#quote", -" quote)) (.the.189 (core#quote unquote-splicing))) (.qq.263 (- .depth.267 1) (ca", -"r (cdr (car .expr.268))))) (.qq.263 .depth.267 (cdr .expr.268)))) (core#if (.qua", -"siquote?.260 .expr.268) (list (.the.189 (core#quote list)) (list (.the.189 (core", -"#quote quote)) (.the.189 (core#quote quasiquote))) (.qq.263 (+ .depth.267 1) (ca", -"r (cdr .expr.268)))) (core#if (pair? .expr.268) (list (.the.189 (core#quote cons", -")) (.qq.263 .depth.267 (car .expr.268)) (.qq.263 .depth.267 (cdr .expr.268))) (c", -"ore#if (vector? .expr.268) (list (.the.189 (core#quote list->vector)) (.qq.263 .", -"depth.267 (vector->list .expr.268))) (list (.the.189 (core#quote quote)) .expr.2", -"68)))))))) ((core#lambda (.x.269) (.qq.263 1 .x.269)) (cadr .form.258)))))))) (c", -"ore#begin (.define-transformer.188 (core#quote let*) (core#lambda (.form.270 .en", -"v.271) ((core#lambda (.bindings.272 .body.273) (core#if (null? .bindings.272) (c", -"ons (.the.189 (core#quote let)) (cons (core#quote ()) .body.273)) (cons (.the.18", -"9 (core#quote let)) (cons (cons (cons (car (car .bindings.272)) (cdr (car .bindi", -"ngs.272))) (core#quote ())) (cons (cons (.the.189 (core#quote let*)) (cons (cdr ", -".bindings.272) .body.273)) (core#quote ())))))) (car (cdr .form.270)) (cdr (cdr ", -".form.270))))) (core#begin (.define-transformer.188 (core#quote letrec) (core#la", -"mbda (.form.274 .env.275) (cons (.the.189 (core#quote letrec*)) (cdr .form.274))", -")) (core#begin (.define-transformer.188 (core#quote letrec*) (core#lambda (.form", -".276 .env.277) ((core#lambda (.bindings.278 .body.279) ((core#lambda (.variables", -".280 .initials.281) (cons (.the.189 (core#quote let)) (cons .variables.280 (appe", -"nd .initials.281 (append .body.279 (core#quote ())))))) (map (core#lambda (.v.28", -"2) (cons .v.282 (cons (core#quote #undefined) (core#quote ())))) (map car .bindi", -"ngs.278)) (map (core#lambda (.v.283) (cons (.the.189 (core#quote set!)) (append ", -".v.283 (core#quote ())))) .bindings.278))) (car (cdr .form.276)) (cdr (cdr .form", -".276))))) (core#begin (.define-transformer.188 (core#quote let-values) (core#lam", -"bda (.form.284 .env.285) (cons (.the.189 (core#quote let*-values)) (append (cdr ", -".form.284) (core#quote ()))))) (core#begin (.define-transformer.188 (core#quote ", -"let*-values) (core#lambda (.form.286 .env.287) ((core#lambda (.formal.288 .body.", -"289) (core#if (null? .formal.288) (cons (.the.189 (core#quote let)) (cons (core#", -"quote ()) (append .body.289 (core#quote ())))) (cons (.the.189 (core#quote call-", -"with-values)) (cons (cons .the-lambda.198 (cons (core#quote ()) (append (cdr (ca", -"r .formal.288)) (core#quote ())))) (cons (cons (.the.189 (core#quote lambda)) (c", -"ons (append (car (car .formal.288)) (core#quote ())) (cons (cons (.the.189 (core", -"#quote let*-values)) (cons (append (cdr .formal.288) (core#quote ())) (append .b", -"ody.289 (core#quote ())))) (core#quote ())))) (core#quote ())))))) (car (cdr .fo", -"rm.286)) (cdr (cdr .form.286))))) (core#begin (.define-transformer.188 (core#quo", -"te define-values) (core#lambda (.form.290 .env.291) ((core#lambda (.formal.292 .", -"body.293) ((core#lambda (.arguments.294) (cons .the-begin.199 (append ((core#lam", -"bda () (core#begin (core#define .loop.295 (core#lambda (.formal.296) (core#if (p", -"air? .formal.296) (cons (cons .the-define.197 (cons (car .formal.296) (cons (cor", -"e#quote #undefined) (core#quote ())))) (append (.loop.295 (cdr .formal.296)) (co", -"re#quote ()))) (core#if (identifier? .formal.296) (cons (cons .the-define.197 (c", -"ons .formal.296 (cons (core#quote #undefined) (core#quote ())))) (core#quote ())", -") (core#quote ()))))) (.loop.295 .formal.292)))) (cons (cons (.the.189 (core#quo", -"te call-with-values)) (cons (cons .the-lambda.198 (cons (core#quote ()) (append ", -".body.293 (core#quote ())))) (cons (cons .the-lambda.198 (cons .arguments.294 (a", -"ppend ((core#lambda () (core#begin (core#define .loop.297 (core#lambda (.formal.", -"298 .args.299) (core#if (pair? .formal.298) (cons (cons .the-set!.201 (cons (car", -" .formal.298) (cons (cons (.the.189 (core#quote car)) (cons .args.299 (core#quot", -"e ()))) (core#quote ())))) (append (.loop.297 (cdr .formal.298) (cons (.the.189 ", -"(core#quote cdr)) (cons .args.299 (core#quote ())))) (core#quote ()))) (core#if ", -"(identifier? .formal.298) (cons (cons .the-set!.201 (cons .formal.298 (cons .arg", -"s.299 (core#quote ())))) (core#quote ())) (core#quote ()))))) (.loop.297 .formal", -".292 .arguments.294)))) (core#quote ())))) (core#quote ())))) (core#quote ()))))", -") (make-identifier (core#quote arguments) .env.291))) (car (cdr .form.290)) (cdr", -" (cdr .form.290))))) (core#begin (.define-transformer.188 (core#quote do) (core#", -"lambda (.form.300 .env.301) ((core#lambda (.bindings.302 .test.303 .cleanup.304 ", -".body.305) ((core#lambda (.loop.306) (cons (.the.189 (core#quote let)) (cons .lo", -"op.306 (cons (map (core#lambda (.x.307) (cons (car .x.307) (cons (cadr .x.307) (", -"core#quote ())))) .bindings.302) (cons (cons .the-if.202 (cons .test.303 (cons (", -"cons .the-begin.199 .cleanup.304) (cons (cons .the-begin.199 (append .body.305 (", -"cons (cons .loop.306 (map (core#lambda (.x.308) (core#if (null? (cdr (cdr .x.308", -"))) (car .x.308) (car (cdr (cdr .x.308))))) .bindings.302)) (core#quote ())))) (", -"core#quote ()))))) (core#quote ())))))) (make-identifier (core#quote loop) .env.", -"301))) (car (cdr .form.300)) (car (car (cdr (cdr .form.300)))) (cdr (car (cdr (c", -"dr .form.300)))) (cdr (cdr (cdr .form.300)))))) (core#begin (.define-transformer", -".188 (core#quote when) (core#lambda (.form.309 .env.310) ((core#lambda (.test.31", -"1 .body.312) (cons .the-if.202 (cons .test.311 (cons (cons .the-begin.199 (appen", -"d .body.312 (core#quote ()))) (cons (core#quote #undefined) (core#quote ()))))))", -" (car (cdr .form.309)) (cdr (cdr .form.309))))) (core#begin (.define-transformer", -".188 (core#quote unless) (core#lambda (.form.313 .env.314) ((core#lambda (.test.", -"315 .body.316) (cons .the-if.202 (cons .test.315 (cons (core#quote #undefined) (", -"cons (cons .the-begin.199 (append .body.316 (core#quote ()))) (core#quote ()))))", -")) (car (cdr .form.313)) (cdr (cdr .form.313))))) (core#begin (.define-transform", -"er.188 (core#quote case) (core#lambda (.form.317 .env.318) ((core#lambda (.key.3", -"19 .clauses.320) ((core#lambda (.the-key.321) (cons (.the.189 (core#quote let)) ", -"(cons (cons (cons .the-key.321 (cons .key.319 (core#quote ()))) (core#quote ()))", -" (cons ((core#lambda () (core#begin (core#define .loop.322 (core#lambda (.clause", -"s.323) (core#if (null? .clauses.323) #undefined ((core#lambda (.clause.324) (con", -"s .the-if.202 (cons (core#if (core#if (identifier? (car .clause.324)) (identifie", -"r=? (.the.189 (core#quote else)) (make-identifier (car .clause.324) .env.318)) #", -"f) #t (cons (.the.189 (core#quote or)) (append (map (core#lambda (.x.325) (cons ", -"(.the.189 (core#quote eqv?)) (cons .the-key.321 (cons (cons .the-quote.200 (cons", -" .x.325 (core#quote ()))) (core#quote ()))))) (car .clause.324)) (core#quote ())", -"))) (cons (core#if (core#if (identifier? (cadr .clause.324)) (identifier=? (.the", -".189 (core#quote =>)) (make-identifier (cadr .clause.324) .env.318)) #f) (cons (", -"car (cdr (cdr .clause.324))) (cons .the-key.321 (core#quote ()))) (cons .the-beg", -"in.199 (append (cdr .clause.324) (core#quote ())))) (cons (.loop.322 (cdr .claus", -"es.323)) (core#quote ())))))) (car .clauses.323))))) (.loop.322 .clauses.320))))", -" (core#quote ()))))) (make-identifier (core#quote key) .env.318))) (car (cdr .fo", -"rm.317)) (cdr (cdr .form.317))))) (core#begin (.define-transformer.188 (core#quo", -"te parameterize) (core#lambda (.form.326 .env.327) ((core#lambda (.formal.328 .b", -"ody.329) (cons (.the.189 (core#quote with-dynamic-environment)) (cons (cons (.th", -"e.189 (core#quote list)) (append (map (core#lambda (.x.330) (cons (.the.189 (cor", -"e#quote cons)) (cons (car .x.330) (cons (cadr .x.330) (core#quote ()))))) .forma", -"l.328) (core#quote ()))) (cons (cons .the-lambda.198 (cons (core#quote ()) (appe", -"nd .body.329 (core#quote ())))) (core#quote ()))))) (car (cdr .form.326)) (cdr (", -"cdr .form.326))))) (core#begin (.define-transformer.188 (core#quote syntax-quote", -") (core#lambda (.form.331 .env.332) ((core#lambda (.renames.333) ((core#lambda (", -".rename.334 .walk.335) (core#begin (core#set! .rename.334 (core#lambda (.var.336", -") ((core#lambda (.x.337) (core#if .x.337 (cadr .x.337) (core#begin (core#set! .r", -"enames.333 (cons (cons .var.336 (cons (make-identifier .var.336 .env.332) (cons ", -"(cons (.the.189 (core#quote make-identifier)) (cons (cons (core#quote quote) (co", -"ns .var.336 (core#quote ()))) (cons (cons (core#quote quote) (cons .env.332 (cor", -"e#quote ()))) (core#quote ())))) (core#quote ())))) .renames.333)) (.rename.334 ", -".var.336)))) (assq .var.336 .renames.333)))) (core#begin (core#set! .walk.335 (c", -"ore#lambda (.f.338 .form.339) (core#if (identifier? .form.339) (.f.338 .form.339", -") (core#if (pair? .form.339) (cons (.the.189 (core#quote cons)) (cons (cons (cor", -"e#quote walk) (cons (core#quote f) (cons (cons (core#quote car) (cons (core#quot", -"e form) (core#quote ()))) (core#quote ())))) (cons (cons (core#quote walk) (cons", -" (core#quote f) (cons (cons (core#quote cdr) (cons (core#quote form) (core#quote", -" ()))) (core#quote ())))) (core#quote ())))) (core#if (vector? .form.339) (cons ", -"(.the.189 (core#quote list->vector)) (cons (cons (core#quote walk) (cons (core#q", -"uote f) (cons (cons (core#quote vector->list) (cons (core#quote form) (core#quot", -"e ()))) (core#quote ())))) (core#quote ()))) (cons (.the.189 (core#quote quote))", -" (cons .form.339 (core#quote ())))))))) ((core#lambda (.form.340) (cons (.the.18", -"9 (core#quote let)) (cons (map cdr .renames.333) (cons .form.340 (core#quote ())", -")))) (.walk.335 .rename.334 (cadr .form.331)))))) #f #f)) (core#quote ())))) (co", -"re#begin (.define-transformer.188 (core#quote syntax-quasiquote) (core#lambda (.", -"form.341 .env.342) ((core#lambda (.renames.343) ((core#lambda (.rename.344) (cor", -"e#begin (core#set! .rename.344 (core#lambda (.var.349) ((core#lambda (.x.350) (c", -"ore#if .x.350 (cadr .x.350) (core#begin (core#set! .renames.343 (cons (cons .var", -".349 (cons (make-identifier .var.349 .env.342) (cons (cons (.the.189 (core#quote", -" make-identifier)) (cons (cons (core#quote quote) (cons .var.349 (core#quote ())", -")) (cons (cons (core#quote quote) (cons .env.342 (core#quote ()))) (core#quote (", -"))))) (core#quote ())))) .renames.343)) (.rename.344 .var.349)))) (assq .var.349", -" .renames.343)))) (core#begin (core#define .syntax-quasiquote?.345 (core#lambda ", -"(.form.351) (core#if (pair? .form.351) (core#if (identifier? (car .form.351)) (i", -"dentifier=? (.the.189 (core#quote syntax-quasiquote)) (make-identifier (car .for", -"m.351) .env.342)) #f) #f))) (core#begin (core#define .syntax-unquote?.346 (core#", -"lambda (.form.352) (core#if (pair? .form.352) (core#if (identifier? (car .form.3", -"52)) (identifier=? (.the.189 (core#quote syntax-unquote)) (make-identifier (car ", -".form.352) .env.342)) #f) #f))) (core#begin (core#define .syntax-unquote-splicin", -"g?.347 (core#lambda (.form.353) (core#if (pair? .form.353) (core#if (pair? (car ", -".form.353)) (core#if (identifier? (caar .form.353)) (identifier=? (.the.189 (cor", -"e#quote syntax-unquote-splicing)) (make-identifier (caar .form.353) .env.342)) #", -"f) #f) #f))) (core#begin (core#define .qq.348 (core#lambda (.depth.354 .expr.355", -") (core#if (.syntax-unquote?.346 .expr.355) (core#if (= .depth.354 1) (car (cdr ", -".expr.355)) (list (.the.189 (core#quote list)) (list (.the.189 (core#quote quote", -")) (.the.189 (core#quote syntax-unquote))) (.qq.348 (- .depth.354 1) (car (cdr .", -"expr.355))))) (core#if (.syntax-unquote-splicing?.347 .expr.355) (core#if (= .de", -"pth.354 1) (list (.the.189 (core#quote append)) (car (cdr (car .expr.355))) (.qq", -".348 .depth.354 (cdr .expr.355))) (list (.the.189 (core#quote cons)) (list (.the", -".189 (core#quote list)) (list (.the.189 (core#quote quote)) (.the.189 (core#quot", -"e syntax-unquote-splicing))) (.qq.348 (- .depth.354 1) (car (cdr (car .expr.355)", -")))) (.qq.348 .depth.354 (cdr .expr.355)))) (core#if (.syntax-quasiquote?.345 .e", -"xpr.355) (list (.the.189 (core#quote list)) (list (.the.189 (core#quote quote)) ", -"(.the.189 (core#quote quasiquote))) (.qq.348 (+ .depth.354 1) (car (cdr .expr.35", -"5)))) (core#if (pair? .expr.355) (list (.the.189 (core#quote cons)) (.qq.348 .de", -"pth.354 (car .expr.355)) (.qq.348 .depth.354 (cdr .expr.355))) (core#if (vector?", -" .expr.355) (list (.the.189 (core#quote list->vector)) (.qq.348 .depth.354 (vect", -"or->list .expr.355))) (core#if (identifier? .expr.355) (.rename.344 .expr.355) (", -"list (.the.189 (core#quote quote)) .expr.355))))))))) ((core#lambda (.body.356) ", -"(cons (.the.189 (core#quote let)) (cons (map cdr .renames.343) (cons .body.356 (", -"core#quote ()))))) (.qq.348 1 (cadr .form.341))))))))) #f)) (core#quote ())))) (", -"core#begin (.define-transformer.188 (core#quote define-syntax) (core#lambda (.fo", -"rm.357 .env.358) ((core#lambda (.formal.359 .body.360) (core#if (pair? .formal.3", -"59) (cons (.the.189 (core#quote define-syntax)) (cons (car .formal.359) (cons (c", -"ons .the-lambda.198 (cons (cdr .formal.359) (append .body.360 (core#quote ()))))", -" (core#quote ())))) (cons .the-define-macro.203 (cons .formal.359 (cons (cons (.", -"the.189 (core#quote transformer)) (cons (cons .the-begin.199 (append .body.360 (", -"core#quote ()))) (core#quote ()))) (core#quote ())))))) (car (cdr .form.357)) (c", -"dr (cdr .form.357))))) (core#begin (.define-transformer.188 (core#quote letrec-s", -"yntax) (core#lambda (.form.361 .env.362) ((core#lambda (.formal.363 .body.364) (", -"cons (core#quote let) (cons (core#quote ()) (append (map (core#lambda (.x.365) (", -"cons (.the.189 (core#quote define-syntax)) (cons (car .x.365) (cons (cadr .x.365", -") (core#quote ()))))) .formal.363) (append .body.364 (core#quote ())))))) (car (", -"cdr .form.361)) (cdr (cdr .form.361))))) (.define-transformer.188 (core#quote le", -"t-syntax) (core#lambda (.form.366 .env.367) (cons (.the.189 (core#quote letrec-s", -"yntax)) (append (cdr .form.366) (core#quote ()))))))))))))))))))))))))))))))))))", -")))))))))))))))))))))))))) ", +"(core#begin (core#define transformer (core#lambda (.f.2252) (core#lambda (.form.", +"2253 .env.2254) ((core#lambda (.ephemeron1.2255 .ephemeron2.2256) ((core#lambda ", +"(.wrap.2257 .unwrap.2258 .walk.2259) (core#begin (core#set! .wrap.2257 (core#lam", +"bda (.var1.2260) ((core#lambda (.var2.2261) (core#if .var2.2261 (cdr .var2.2261)", +" ((core#lambda (.var2.2262) (core#begin (.ephemeron1.2255 .var1.2260 .var2.2262)", +" (core#begin (.ephemeron2.2256 .var2.2262 .var1.2260) .var2.2262))) (make-identi", +"fier .var1.2260 .env.2254)))) (.ephemeron1.2255 .var1.2260)))) (core#begin (core", +"#set! .unwrap.2258 (core#lambda (.var2.2263) ((core#lambda (.var1.2264) (core#if", +" .var1.2264 (cdr .var1.2264) .var2.2263)) (.ephemeron2.2256 .var2.2263)))) (core", +"#begin (core#set! .walk.2259 (core#lambda (.f.2265 .form.2266) (core#if (identif", +"ier? .form.2266) (.f.2265 .form.2266) (core#if (pair? .form.2266) (cons (.walk.2", +"259 .f.2265 (car .form.2266)) (.walk.2259 .f.2265 (cdr .form.2266))) (core#if (v", +"ector? .form.2266) (list->vector (.walk.2259 .f.2265 (vector->list .form.2266)))", +" .form.2266))))) ((core#lambda (.form.2267) (.walk.2259 .unwrap.2258 (apply .f.2", +"252 (.walk.2259 .wrap.2257 .form.2267)))) (cdr .form.2253)))))) #undefined #unde", +"fined #undefined)) (make-ephemeron-table) (make-ephemeron-table))))) ((core#lamb", +"da () (core#begin (core#define .define-transformer.2268 (core#lambda (.name.2288", +" .transformer.2289) (add-macro! .name.2288 .transformer.2289))) (core#begin (cor", +"e#define .the.2269 (core#lambda (.var.2290) (make-identifier .var.2290 default-e", +"nvironment))) (core#begin (core#define .the-core-define.2270 (.the.2269 (core#qu", +"ote core#define))) (core#begin (core#define .the-core-lambda.2271 (.the.2269 (co", +"re#quote core#lambda))) (core#begin (core#define .the-core-begin.2272 (.the.2269", +" (core#quote core#begin))) (core#begin (core#define .the-core-quote.2273 (.the.2", +"269 (core#quote core#quote))) (core#begin (core#define .the-core-set!.2274 (.the", +".2269 (core#quote core#set!))) (core#begin (core#define .the-core-if.2275 (.the.", +"2269 (core#quote core#if))) (core#begin (core#define .the-core-define-macro.2276", +" (.the.2269 (core#quote core#define-macro))) (core#begin (core#define .the-defin", +"e.2277 (.the.2269 (core#quote define))) (core#begin (core#define .the-lambda.227", +"8 (.the.2269 (core#quote lambda))) (core#begin (core#define .the-begin.2279 (.th", +"e.2269 (core#quote begin))) (core#begin (core#define .the-quote.2280 (.the.2269 ", +"(core#quote quote))) (core#begin (core#define .the-set!.2281 (.the.2269 (core#qu", +"ote set!))) (core#begin (core#define .the-if.2282 (.the.2269 (core#quote if))) (", +"core#begin (core#define .the-define-macro.2283 (.the.2269 (core#quote define-mac", +"ro))) (core#begin (.define-transformer.2268 (core#quote quote) (core#lambda (.fo", +"rm.2291 .env.2292) (core#if (= (length .form.2291) 2) (cons .the-core-quote.2273", +" (cons (cadr .form.2291) (core#quote ()))) (error \"malformed quote\" .form.2291))", +")) (core#begin (.define-transformer.2268 (core#quote if) (core#lambda (.form.229", +"3 .env.2294) ((core#lambda (.len.2295) (core#if (= .len.2295 3) (append .form.22", +"93 (cons (core#quote #undefined) (core#quote ()))) (core#if (= .len.2295 4) (con", +"s .the-core-if.2275 (cdr .form.2293)) (error \"malformed if\" .form.2293)))) (leng", +"th .form.2293)))) (core#begin (.define-transformer.2268 (core#quote begin) (core", +"#lambda (.form.2296 .env.2297) ((core#lambda (.len.2298) (core#if (= .len.2298 1", +") #undefined (core#if (= .len.2298 2) (cadr .form.2296) (core#if (= .len.2298 3)", +" (cons .the-core-begin.2272 (cdr .form.2296)) (cons .the-core-begin.2272 (cons (", +"cadr .form.2296) (cons (cons .the-begin.2279 (cddr .form.2296)) (core#quote ()))", +")))))) (length .form.2296)))) (core#begin (.define-transformer.2268 (core#quote ", +"set!) (core#lambda (.form.2299 .env.2300) (core#if (core#if (= (length .form.229", +"9) 3) (identifier? (cadr .form.2299)) #f) (cons .the-core-set!.2274 (cdr .form.2", +"299)) (error \"malformed set!\" .form.2299)))) (core#begin (core#define .check-for", +"mal.2284 (core#lambda (.formal.2301) ((core#lambda (.it.2302) (core#if .it.2302 ", +".it.2302 ((core#lambda (.it.2303) (core#if .it.2303 .it.2303 ((core#lambda (.it.", +"2304) (core#if .it.2304 .it.2304 #f)) (core#if (pair? .formal.2301) (core#if (id", +"entifier? (car .formal.2301)) (.check-formal.2284 (cdr .formal.2301)) #f) #f))))", +" (identifier? .formal.2301)))) (null? .formal.2301)))) (core#begin (.define-tran", +"sformer.2268 (core#quote lambda) (core#lambda (.form.2305 .env.2306) (core#if (=", +" (length .form.2305) 1) (error \"malformed lambda\" .form.2305) (core#if (.check-f", +"ormal.2284 (cadr .form.2305)) (cons .the-core-lambda.2271 (cons (cadr .form.2305", +") (cons (cons .the-begin.2279 (cddr .form.2305)) (core#quote ())))) (error \"malf", +"ormed lambda\" .form.2305))))) (core#begin (.define-transformer.2268 (core#quote ", +"define) (core#lambda (.form.2307 .env.2308) ((core#lambda (.len.2309) (core#if (", +"= .len.2309 1) (error \"malformed define\" .form.2307) ((core#lambda (.formal.2310", +") (core#if (identifier? .formal.2310) (core#if (= .len.2309 3) (cons .the-core-d", +"efine.2270 (cdr .form.2307)) (error \"malformed define\" .form.2307)) (core#if (pa", +"ir? .formal.2310) (cons .the-define.2277 (cons (car .formal.2310) (cons (cons .t", +"he-lambda.2278 (cons (cdr .formal.2310) (cddr .form.2307))) (core#quote ())))) (", +"error \"define: binding to non-varaible object\" .form.2307)))) (cadr .form.2307))", +")) (length .form.2307)))) (core#begin (.define-transformer.2268 (core#quote defi", +"ne-macro) (core#lambda (.form.2311 .env.2312) (core#if (= (length .form.2311) 3)", +" (core#if (identifier? (cadr .form.2311)) (cons .the-core-define-macro.2276 (cdr", +" .form.2311)) (error \"define-macro: binding to non-variable object\" .form.2311))", +" (error \"malformed define-macro\" .form.2311)))) (core#begin (.define-transformer", +".2268 (core#quote syntax-error) (core#lambda (.form.2313 ._.2314) (apply error (", +"cdr .form.2313)))) (core#begin #undefined (core#begin (.define-transformer.2268 ", +"(core#quote else) (core#lambda ._.2315 (error \"invalid use of auxiliary syntax\" ", +"(core#quote else)))) (core#begin (.define-transformer.2268 (core#quote =>) (core", +"#lambda ._.2316 (error \"invalid use of auxiliary syntax\" (core#quote =>)))) (cor", +"e#begin (.define-transformer.2268 (core#quote unquote) (core#lambda ._.2317 (err", +"or \"invalid use of auxiliary syntax\" (core#quote unquote)))) (core#begin (.defin", +"e-transformer.2268 (core#quote unquote-splicing) (core#lambda ._.2318 (error \"in", +"valid use of auxiliary syntax\" (core#quote unquote-splicing)))) (core#begin (.de", +"fine-transformer.2268 (core#quote syntax-unquote) (core#lambda ._.2319 (error \"i", +"nvalid use of auxiliary syntax\" (core#quote syntax-unquote)))) (core#begin (.def", +"ine-transformer.2268 (core#quote syntax-unquote-splicing) (core#lambda ._.2320 (", +"error \"invalid use of auxiliary syntax\" (core#quote syntax-unquote-splicing)))) ", +"(core#begin (.define-transformer.2268 (core#quote let) (core#lambda (.form.2321 ", +".env.2322) (core#if (identifier? (cadr .form.2321)) ((core#lambda (.name.2323 .f", +"ormal.2324 .body.2325) (cons (cons .the-lambda.2278 (cons (core#quote ()) (cons ", +"(cons .the-define.2277 (cons (cons .name.2323 (map car .formal.2324)) .body.2325", +")) (cons (cons .name.2323 (map cadr .formal.2324)) (core#quote ()))))) (core#quo", +"te ()))) (car (cdr .form.2321)) (car (cdr (cdr .form.2321))) (cdr (cdr (cdr .for", +"m.2321)))) ((core#lambda (.formal.2326 .body.2327) (cons (cons .the-lambda.2278 ", +"(cons (map car .formal.2326) .body.2327)) (map cadr .formal.2326))) (car (cdr .f", +"orm.2321)) (cdr (cdr .form.2321)))))) (core#begin (.define-transformer.2268 (cor", +"e#quote and) (core#lambda (.form.2328 .env.2329) (core#if (null? (cdr .form.2328", +")) #t (core#if (null? (cddr .form.2328)) (cadr .form.2328) (cons .the-if.2282 (c", +"ons (cadr .form.2328) (cons (cons (.the.2269 (core#quote and)) (cddr .form.2328)", +") (cons (core#quote #f) (core#quote ()))))))))) (core#begin (.define-transformer", +".2268 (core#quote or) (core#lambda (.form.2330 .env.2331) (core#if (null? (cdr .", +"form.2330)) #f ((core#lambda (.tmp.2332) (cons (.the.2269 (core#quote let)) (con", +"s (cons (cons .tmp.2332 (cons (cadr .form.2330) (core#quote ()))) (core#quote ()", +")) (cons (cons .the-if.2282 (cons .tmp.2332 (cons .tmp.2332 (cons (cons (.the.22", +"69 (core#quote or)) (cddr .form.2330)) (core#quote ()))))) (core#quote ()))))) (", +"make-identifier (core#quote it) .env.2331))))) (core#begin (.define-transformer.", +"2268 (core#quote cond) (core#lambda (.form.2333 .env.2334) ((core#lambda (.claus", +"es.2335) (core#if (null? .clauses.2335) #undefined ((core#lambda (.clause.2336) ", +"(core#if (core#if (identifier? (car .clause.2336)) (identifier=? (.the.2269 (cor", +"e#quote else)) (make-identifier (car .clause.2336) .env.2334)) #f) (cons .the-be", +"gin.2279 (cdr .clause.2336)) (core#if (null? (cdr .clause.2336)) (cons (.the.226", +"9 (core#quote or)) (cons (car .clause.2336) (cons (cons (.the.2269 (core#quote c", +"ond)) (cdr .clauses.2335)) (core#quote ())))) (core#if (core#if (identifier? (ca", +"dr .clause.2336)) (identifier=? (.the.2269 (core#quote =>)) (make-identifier (ca", +"dr .clause.2336) .env.2334)) #f) ((core#lambda (.tmp.2337) (cons (.the.2269 (cor", +"e#quote let)) (cons (cons (cons .tmp.2337 (cons (car .clause.2336) (core#quote (", +")))) (core#quote ())) (cons (cons .the-if.2282 (cons .tmp.2337 (cons (cons (cadr", +" (cdr .clause.2336)) (cons .tmp.2337 (core#quote ()))) (cons (cons (.the.2269 (c", +"ore#quote cond)) (cddr .form.2333)) (core#quote ()))))) (core#quote ()))))) (mak", +"e-identifier (core#quote tmp) .env.2334)) (cons .the-if.2282 (cons (car .clause.", +"2336) (cons (cons .the-begin.2279 (cdr .clause.2336)) (cons (cons (.the.2269 (co", +"re#quote cond)) (cdr .clauses.2335)) (core#quote ()))))))))) (car .clauses.2335)", +"))) (cdr .form.2333)))) (core#begin (.define-transformer.2268 (core#quote quasiq", +"uote) (core#lambda (.form.2338 .env.2339) (core#begin (core#define .quasiquote?.", +"2340 (core#lambda (.form.2344) (core#if (pair? .form.2344) (core#if (identifier?", +" (car .form.2344)) (identifier=? (.the.2269 (core#quote quasiquote)) (make-ident", +"ifier (car .form.2344) .env.2339)) #f) #f))) (core#begin (core#define .unquote?.", +"2341 (core#lambda (.form.2345) (core#if (pair? .form.2345) (core#if (identifier?", +" (car .form.2345)) (identifier=? (.the.2269 (core#quote unquote)) (make-identifi", +"er (car .form.2345) .env.2339)) #f) #f))) (core#begin (core#define .unquote-spli", +"cing?.2342 (core#lambda (.form.2346) (core#if (pair? .form.2346) (core#if (pair?", +" (car .form.2346)) (core#if (identifier? (caar .form.2346)) (identifier=? (.the.", +"2269 (core#quote unquote-splicing)) (make-identifier (caar .form.2346) .env.2339", +")) #f) #f) #f))) (core#begin (core#define .qq.2343 (core#lambda (.depth.2347 .ex", +"pr.2348) (core#if (.unquote?.2341 .expr.2348) (core#if (= .depth.2347 1) (cadr .", +"expr.2348) (list (.the.2269 (core#quote list)) (list (.the.2269 (core#quote quot", +"e)) (.the.2269 (core#quote unquote))) (.qq.2343 (- .depth.2347 1) (car (cdr .exp", +"r.2348))))) (core#if (.unquote-splicing?.2342 .expr.2348) (core#if (= .depth.234", +"7 1) (list (.the.2269 (core#quote append)) (car (cdr (car .expr.2348))) (.qq.234", +"3 .depth.2347 (cdr .expr.2348))) (list (.the.2269 (core#quote cons)) (list (.the", +".2269 (core#quote list)) (list (.the.2269 (core#quote quote)) (.the.2269 (core#q", +"uote unquote-splicing))) (.qq.2343 (- .depth.2347 1) (car (cdr (car .expr.2348))", +"))) (.qq.2343 .depth.2347 (cdr .expr.2348)))) (core#if (.quasiquote?.2340 .expr.", +"2348) (list (.the.2269 (core#quote list)) (list (.the.2269 (core#quote quote)) (", +".the.2269 (core#quote quasiquote))) (.qq.2343 (+ .depth.2347 1) (car (cdr .expr.", +"2348)))) (core#if (pair? .expr.2348) (list (.the.2269 (core#quote cons)) (.qq.23", +"43 .depth.2347 (car .expr.2348)) (.qq.2343 .depth.2347 (cdr .expr.2348))) (core#", +"if (vector? .expr.2348) (list (.the.2269 (core#quote list->vector)) (.qq.2343 .d", +"epth.2347 (vector->list .expr.2348))) (list (.the.2269 (core#quote quote)) .expr", +".2348)))))))) ((core#lambda (.x.2349) (.qq.2343 1 .x.2349)) (cadr .form.2338))))", +")))) (core#begin (.define-transformer.2268 (core#quote let*) (core#lambda (.form", +".2350 .env.2351) ((core#lambda (.bindings.2352 .body.2353) (core#if (null? .bind", +"ings.2352) (cons (.the.2269 (core#quote let)) (cons (core#quote ()) .body.2353))", +" (cons (.the.2269 (core#quote let)) (cons (cons (cons (car (car .bindings.2352))", +" (cdr (car .bindings.2352))) (core#quote ())) (cons (cons (.the.2269 (core#quote", +" let*)) (cons (cdr .bindings.2352) .body.2353)) (core#quote ())))))) (car (cdr .", +"form.2350)) (cdr (cdr .form.2350))))) (core#begin (.define-transformer.2268 (cor", +"e#quote letrec) (core#lambda (.form.2354 .env.2355) (cons (.the.2269 (core#quote", +" letrec*)) (cdr .form.2354)))) (core#begin (.define-transformer.2268 (core#quote", +" letrec*) (core#lambda (.form.2356 .env.2357) ((core#lambda (.bindings.2358 .bod", +"y.2359) ((core#lambda (.variables.2360 .initials.2361) (cons (.the.2269 (core#qu", +"ote let)) (cons .variables.2360 (append .initials.2361 (append .body.2359 (core#", +"quote ())))))) (map (core#lambda (.v.2362) (cons .v.2362 (cons (core#quote #unde", +"fined) (core#quote ())))) (map car .bindings.2358)) (map (core#lambda (.v.2363) ", +"(cons (.the.2269 (core#quote set!)) (append .v.2363 (core#quote ())))) .bindings", +".2358))) (car (cdr .form.2356)) (cdr (cdr .form.2356))))) (core#begin (.define-t", +"ransformer.2268 (core#quote let-values) (core#lambda (.form.2364 .env.2365) (con", +"s (.the.2269 (core#quote let*-values)) (append (cdr .form.2364) (core#quote ()))", +"))) (core#begin (.define-transformer.2268 (core#quote let*-values) (core#lambda ", +"(.form.2366 .env.2367) ((core#lambda (.formal.2368 .body.2369) (core#if (null? .", +"formal.2368) (cons (.the.2269 (core#quote let)) (cons (core#quote ()) (append .b", +"ody.2369 (core#quote ())))) (cons (.the.2269 (core#quote call-with-values)) (con", +"s (cons .the-lambda.2278 (cons (core#quote ()) (append (cdr (car .formal.2368)) ", +"(core#quote ())))) (cons (cons (.the.2269 (core#quote lambda)) (cons (append (ca", +"r (car .formal.2368)) (core#quote ())) (cons (cons (.the.2269 (core#quote let*-v", +"alues)) (cons (append (cdr .formal.2368) (core#quote ())) (append .body.2369 (co", +"re#quote ())))) (core#quote ())))) (core#quote ())))))) (car (cdr .form.2366)) (", +"cdr (cdr .form.2366))))) (core#begin (.define-transformer.2268 (core#quote defin", +"e-values) (core#lambda (.form.2370 .env.2371) ((core#lambda (.formal.2372 .body.", +"2373) ((core#lambda (.arguments.2374) (cons .the-begin.2279 (append ((core#lambd", +"a () (core#begin (core#define .loop.2375 (core#lambda (.formal.2376) (core#if (p", +"air? .formal.2376) (cons (cons .the-define.2277 (cons (car .formal.2376) (cons (", +"core#quote #undefined) (core#quote ())))) (append (.loop.2375 (cdr .formal.2376)", +") (core#quote ()))) (core#if (identifier? .formal.2376) (cons (cons .the-define.", +"2277 (cons .formal.2376 (cons (core#quote #undefined) (core#quote ())))) (core#q", +"uote ())) (core#quote ()))))) (.loop.2375 .formal.2372)))) (cons (cons (.the.226", +"9 (core#quote call-with-values)) (cons (cons .the-lambda.2278 (cons (core#quote ", +"()) (append .body.2373 (core#quote ())))) (cons (cons .the-lambda.2278 (cons .ar", +"guments.2374 (append ((core#lambda () (core#begin (core#define .loop.2377 (core#", +"lambda (.formal.2378 .args.2379) (core#if (pair? .formal.2378) (cons (cons .the-", +"set!.2281 (cons (car .formal.2378) (cons (cons (.the.2269 (core#quote car)) (con", +"s .args.2379 (core#quote ()))) (core#quote ())))) (append (.loop.2377 (cdr .form", +"al.2378) (cons (.the.2269 (core#quote cdr)) (cons .args.2379 (core#quote ())))) ", +"(core#quote ()))) (core#if (identifier? .formal.2378) (cons (cons .the-set!.2281", +" (cons .formal.2378 (cons .args.2379 (core#quote ())))) (core#quote ())) (core#q", +"uote ()))))) (.loop.2377 .formal.2372 .arguments.2374)))) (core#quote ())))) (co", +"re#quote ())))) (core#quote ()))))) (make-identifier (core#quote arguments) .env", +".2371))) (car (cdr .form.2370)) (cdr (cdr .form.2370))))) (core#begin (.define-t", +"ransformer.2268 (core#quote do) (core#lambda (.form.2380 .env.2381) ((core#lambd", +"a (.bindings.2382 .test.2383 .cleanup.2384 .body.2385) ((core#lambda (.loop.2386", +") (cons (.the.2269 (core#quote let)) (cons .loop.2386 (cons (map (core#lambda (.", +"x.2387) (cons (car .x.2387) (cons (cadr .x.2387) (core#quote ())))) .bindings.23", +"82) (cons (cons .the-if.2282 (cons .test.2383 (cons (cons .the-begin.2279 .clean", +"up.2384) (cons (cons .the-begin.2279 (append .body.2385 (cons (cons .loop.2386 (", +"map (core#lambda (.x.2388) (core#if (null? (cdr (cdr .x.2388))) (car .x.2388) (c", +"ar (cdr (cdr .x.2388))))) .bindings.2382)) (core#quote ())))) (core#quote ()))))", +") (core#quote ())))))) (make-identifier (core#quote loop) .env.2381))) (car (cdr", +" .form.2380)) (car (car (cdr (cdr .form.2380)))) (cdr (car (cdr (cdr .form.2380)", +"))) (cdr (cdr (cdr .form.2380)))))) (core#begin (.define-transformer.2268 (core#", +"quote when) (core#lambda (.form.2389 .env.2390) ((core#lambda (.test.2391 .body.", +"2392) (cons .the-if.2282 (cons .test.2391 (cons (cons .the-begin.2279 (append .b", +"ody.2392 (core#quote ()))) (cons (core#quote #undefined) (core#quote ())))))) (c", +"ar (cdr .form.2389)) (cdr (cdr .form.2389))))) (core#begin (.define-transformer.", +"2268 (core#quote unless) (core#lambda (.form.2393 .env.2394) ((core#lambda (.tes", +"t.2395 .body.2396) (cons .the-if.2282 (cons .test.2395 (cons (core#quote #undefi", +"ned) (cons (cons .the-begin.2279 (append .body.2396 (core#quote ()))) (core#quot", +"e ())))))) (car (cdr .form.2393)) (cdr (cdr .form.2393))))) (core#begin (.define", +"-transformer.2268 (core#quote case) (core#lambda (.form.2397 .env.2398) ((core#l", +"ambda (.key.2399 .clauses.2400) ((core#lambda (.the-key.2401) (cons (.the.2269 (", +"core#quote let)) (cons (cons (cons .the-key.2401 (cons .key.2399 (core#quote ())", +")) (core#quote ())) (cons ((core#lambda () (core#begin (core#define .loop.2402 (", +"core#lambda (.clauses.2403) (core#if (null? .clauses.2403) #undefined ((core#lam", +"bda (.clause.2404) (cons .the-if.2282 (cons (core#if (core#if (identifier? (car ", +".clause.2404)) (identifier=? (.the.2269 (core#quote else)) (make-identifier (car", +" .clause.2404) .env.2398)) #f) #t (cons (.the.2269 (core#quote or)) (append (map", +" (core#lambda (.x.2405) (cons (.the.2269 (core#quote eqv?)) (cons .the-key.2401 ", +"(cons (cons .the-quote.2280 (cons .x.2405 (core#quote ()))) (core#quote ()))))) ", +"(car .clause.2404)) (core#quote ())))) (cons (core#if (core#if (identifier? (cad", +"r .clause.2404)) (identifier=? (.the.2269 (core#quote =>)) (make-identifier (cad", +"r .clause.2404) .env.2398)) #f) (cons (car (cdr (cdr .clause.2404))) (cons .the-", +"key.2401 (core#quote ()))) (cons .the-begin.2279 (append (cdr .clause.2404) (cor", +"e#quote ())))) (cons (.loop.2402 (cdr .clauses.2403)) (core#quote ())))))) (car ", +".clauses.2403))))) (.loop.2402 .clauses.2400)))) (core#quote ()))))) (make-ident", +"ifier (core#quote key) .env.2398))) (car (cdr .form.2397)) (cdr (cdr .form.2397)", +")))) (core#begin (.define-transformer.2268 (core#quote parameterize) (core#lambd", +"a (.form.2406 .env.2407) ((core#lambda (.formal.2408 .body.2409) (cons (.the.226", +"9 (core#quote with-dynamic-environment)) (cons (cons (.the.2269 (core#quote list", +")) (append (map (core#lambda (.x.2410) (cons (.the.2269 (core#quote cons)) (cons", +" (car .x.2410) (cons (cadr .x.2410) (core#quote ()))))) .formal.2408) (core#quot", +"e ()))) (cons (cons .the-lambda.2278 (cons (core#quote ()) (append .body.2409 (c", +"ore#quote ())))) (core#quote ()))))) (car (cdr .form.2406)) (cdr (cdr .form.2406", +"))))) (core#begin (.define-transformer.2268 (core#quote syntax-quote) (core#lamb", +"da (.form.2411 .env.2412) ((core#lambda (.renames.2413) ((core#lambda (.rename.2", +"414 .walk.2415) (core#begin (core#set! .rename.2414 (core#lambda (.var.2416) ((c", +"ore#lambda (.x.2417) (core#if .x.2417 (cadr .x.2417) (core#begin (core#set! .ren", +"ames.2413 (cons (cons .var.2416 (cons (make-identifier .var.2416 .env.2412) (con", +"s (cons (.the.2269 (core#quote make-identifier)) (cons (cons (core#quote quote) ", +"(cons .var.2416 (core#quote ()))) (cons (cons (core#quote quote) (cons .env.2412", +" (core#quote ()))) (core#quote ())))) (core#quote ())))) .renames.2413)) (.renam", +"e.2414 .var.2416)))) (assq .var.2416 .renames.2413)))) (core#begin (core#set! .w", +"alk.2415 (core#lambda (.f.2418 .form.2419) (core#if (identifier? .form.2419) (.f", +".2418 .form.2419) (core#if (pair? .form.2419) (cons (.the.2269 (core#quote cons)", +") (cons (cons (core#quote walk) (cons (core#quote f) (cons (cons (core#quote car", +") (cons (core#quote form) (core#quote ()))) (core#quote ())))) (cons (cons (core", +"#quote walk) (cons (core#quote f) (cons (cons (core#quote cdr) (cons (core#quote", +" form) (core#quote ()))) (core#quote ())))) (core#quote ())))) (core#if (vector?", +" .form.2419) (cons (.the.2269 (core#quote list->vector)) (cons (cons (core#quote", +" walk) (cons (core#quote f) (cons (cons (core#quote vector->list) (cons (core#qu", +"ote form) (core#quote ()))) (core#quote ())))) (core#quote ()))) (cons (.the.226", +"9 (core#quote quote)) (cons .form.2419 (core#quote ())))))))) ((core#lambda (.fo", +"rm.2420) (cons (.the.2269 (core#quote let)) (cons (map cdr .renames.2413) (cons ", +".form.2420 (core#quote ()))))) (.walk.2415 .rename.2414 (cadr .form.2411)))))) #", +"undefined #undefined)) (core#quote ())))) (core#begin (.define-transformer.2268 ", +"(core#quote syntax-quasiquote) (core#lambda (.form.2421 .env.2422) ((core#lambda", +" (.renames.2423) ((core#lambda (.rename.2424) (core#begin (core#set! .rename.242", +"4 (core#lambda (.var.2429) ((core#lambda (.x.2430) (core#if .x.2430 (cadr .x.243", +"0) (core#begin (core#set! .renames.2423 (cons (cons .var.2429 (cons (make-identi", +"fier .var.2429 .env.2422) (cons (cons (.the.2269 (core#quote make-identifier)) (", +"cons (cons (core#quote quote) (cons .var.2429 (core#quote ()))) (cons (cons (cor", +"e#quote quote) (cons .env.2422 (core#quote ()))) (core#quote ())))) (core#quote ", +"())))) .renames.2423)) (.rename.2424 .var.2429)))) (assq .var.2429 .renames.2423", +")))) (core#begin (core#define .syntax-quasiquote?.2425 (core#lambda (.form.2431)", +" (core#if (pair? .form.2431) (core#if (identifier? (car .form.2431)) (identifier", +"=? (.the.2269 (core#quote syntax-quasiquote)) (make-identifier (car .form.2431) ", +".env.2422)) #f) #f))) (core#begin (core#define .syntax-unquote?.2426 (core#lambd", +"a (.form.2432) (core#if (pair? .form.2432) (core#if (identifier? (car .form.2432", +")) (identifier=? (.the.2269 (core#quote syntax-unquote)) (make-identifier (car .", +"form.2432) .env.2422)) #f) #f))) (core#begin (core#define .syntax-unquote-splici", +"ng?.2427 (core#lambda (.form.2433) (core#if (pair? .form.2433) (core#if (pair? (", +"car .form.2433)) (core#if (identifier? (caar .form.2433)) (identifier=? (.the.22", +"69 (core#quote syntax-unquote-splicing)) (make-identifier (caar .form.2433) .env", +".2422)) #f) #f) #f))) (core#begin (core#define .qq.2428 (core#lambda (.depth.243", +"4 .expr.2435) (core#if (.syntax-unquote?.2426 .expr.2435) (core#if (= .depth.243", +"4 1) (car (cdr .expr.2435)) (list (.the.2269 (core#quote list)) (list (.the.2269", +" (core#quote quote)) (.the.2269 (core#quote syntax-unquote))) (.qq.2428 (- .dept", +"h.2434 1) (car (cdr .expr.2435))))) (core#if (.syntax-unquote-splicing?.2427 .ex", +"pr.2435) (core#if (= .depth.2434 1) (list (.the.2269 (core#quote append)) (car (", +"cdr (car .expr.2435))) (.qq.2428 .depth.2434 (cdr .expr.2435))) (list (.the.2269", +" (core#quote cons)) (list (.the.2269 (core#quote list)) (list (.the.2269 (core#q", +"uote quote)) (.the.2269 (core#quote syntax-unquote-splicing))) (.qq.2428 (- .dep", +"th.2434 1) (car (cdr (car .expr.2435))))) (.qq.2428 .depth.2434 (cdr .expr.2435)", +"))) (core#if (.syntax-quasiquote?.2425 .expr.2435) (list (.the.2269 (core#quote ", +"list)) (list (.the.2269 (core#quote quote)) (.the.2269 (core#quote quasiquote)))", +" (.qq.2428 (+ .depth.2434 1) (car (cdr .expr.2435)))) (core#if (pair? .expr.2435", +") (list (.the.2269 (core#quote cons)) (.qq.2428 .depth.2434 (car .expr.2435)) (.", +"qq.2428 .depth.2434 (cdr .expr.2435))) (core#if (vector? .expr.2435) (list (.the", +".2269 (core#quote list->vector)) (.qq.2428 .depth.2434 (vector->list .expr.2435)", +")) (core#if (identifier? .expr.2435) (.rename.2424 .expr.2435) (list (.the.2269 ", +"(core#quote quote)) .expr.2435))))))))) ((core#lambda (.body.2436) (cons (.the.2", +"269 (core#quote let)) (cons (map cdr .renames.2423) (cons .body.2436 (core#quote", +" ()))))) (.qq.2428 1 (cadr .form.2421))))))))) #undefined)) (core#quote ())))) (", +"core#begin (.define-transformer.2268 (core#quote define-syntax) (core#lambda (.f", +"orm.2437 .env.2438) ((core#lambda (.formal.2439 .body.2440) (core#if (pair? .for", +"mal.2439) (cons (.the.2269 (core#quote define-syntax)) (cons (car .formal.2439) ", +"(cons (cons .the-lambda.2278 (cons (cdr .formal.2439) (append .body.2440 (core#q", +"uote ())))) (core#quote ())))) (cons .the-define-macro.2283 (cons .formal.2439 (", +"cons (cons (.the.2269 (core#quote transformer)) (cons (cons .the-begin.2279 (app", +"end .body.2440 (core#quote ()))) (core#quote ()))) (core#quote ())))))) (car (cd", +"r .form.2437)) (cdr (cdr .form.2437))))) (core#begin (.define-transformer.2268 (", +"core#quote letrec-syntax) (core#lambda (.form.2441 .env.2442) ((core#lambda (.fo", +"rmal.2443 .body.2444) (cons (core#quote let) (cons (core#quote ()) (append (map ", +"(core#lambda (.x.2445) (cons (.the.2269 (core#quote define-syntax)) (cons (car .", +"x.2445) (cons (cadr .x.2445) (core#quote ()))))) .formal.2443) (append .body.244", +"4 (core#quote ())))))) (car (cdr .form.2441)) (cdr (cdr .form.2441))))) (.define", +"-transformer.2268 (core#quote let-syntax) (core#lambda (.form.2446 .env.2447) (c", +"ons (.the.2269 (core#quote letrec-syntax)) (append (cdr .form.2446) (core#quote ", +"()))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))", }; #if PIC_USE_LIBRARY static const char boot_library_rom[][80] = { -"(define (mangle name) (when (null? name) (error \"library name should be a list o", -"f at least one symbols\" name)) (define (->string n) (cond ((symbol? n) (let ((st", -"r (symbol->string n))) (string-for-each (lambda (c) (when (or (char=? c #\\.) (ch", -"ar=? c #\\:)) (error \"elements of library name may not contain '.' or ':'\" n))) s", -"tr) str)) ((and (number? n) (exact? n) (<= 0 n)) (number->string n)) (else (erro", -"r \"symbol or non-negative integer is required\" n)))) (define (join strs delim) (", -"let loop ((res (car strs)) (strs (cdr strs))) (if (null? strs) res (loop (string", -"-append res delim (car strs)) (cdr strs))))) (if (symbol? name) name (string->sy", -"mbol (join (map ->string name) \".\")))) (define current-library (make-parameter '", -"(picrin base) mangle)) (define *libraries* (make-dictionary)) (define (find-libr", -"ary name) (dictionary-has? *libraries* (mangle name))) (define (make-library nam", -"e) (let ((name (mangle name))) (let ((env (make-environment (string->symbol (str", -"ing-append (symbol->string name) \":\")))) (exports (make-dictionary))) (set-ident", -"ifier! 'define-library 'define-library env) (set-identifier! 'import 'import env", -") (set-identifier! 'export 'export env) (set-identifier! 'cond-expand 'cond-expa", -"nd env) (dictionary-set! *libraries* name `(,env unquote exports))))) (define (l", -"ibrary-environment name) (car (dictionary-ref *libraries* (mangle name)))) (defi", -"ne (library-exports name) (cdr (dictionary-ref *libraries* (mangle name)))) (def", -"ine (library-import name sym alias) (let ((uid (dictionary-ref (library-exports ", -"name) sym))) (let ((env (library-environment (current-library)))) (set-identifie", -"r! alias uid env)))) (define (library-export sym alias) (let ((env (library-envi", -"ronment (current-library))) (exports (library-exports (current-library)))) (dict", -"ionary-set! exports alias (find-identifier sym env)))) (define-macro define-libr", -"ary (lambda (form _) (let ((name (cadr form)) (body (cddr form))) (or (find-libr", -"ary name) (make-library name)) (parameterize ((current-library name)) (for-each ", -"(lambda (expr) (eval expr name)) body))))) (define-macro cond-expand (lambda (fo", -"rm _) (letrec ((test (lambda (form) (or (eq? form 'else) (and (symbol? form) (me", -"mq form (features))) (and (pair? form) (case (car form) ((library) (find-library", -" (cadr form))) ((not) (not (test (cadr form)))) ((and) (let loop ((form (cdr for", -"m))) (or (null? form) (and (test (car form)) (loop (cdr form)))))) ((or) (let lo", -"op ((form (cdr form))) (and (pair? form) (or (test (car form)) (loop (cdr form))", -")))) (else #f))))))) (let loop ((clauses (cdr form))) (if (null? clauses) #undef", -"ined (if (test (caar clauses)) `(,(make-identifier 'begin default-environment) ,", -"@(cdar clauses)) (loop (cdr clauses)))))))) (define-macro import (lambda (form _", -") (let ((caddr (lambda (x) (car (cdr (cdr x))))) (prefix (lambda (prefix symbol)", -" (string->symbol (string-append (symbol->string prefix) (symbol->string symbol))", -"))) (getlib (lambda (name) (if (find-library name) name (error \"library not foun", -"d\" name))))) (letrec ((extract (lambda (spec) (case (car spec) ((only rename pre", -"fix except) (extract (cadr spec))) (else (getlib spec))))) (collect (lambda (spe", -"c) (case (car spec) ((only) (let ((alist (collect (cadr spec)))) (map (lambda (v", -"ar) (assq var alist)) (cddr spec)))) ((rename) (let ((alist (collect (cadr spec)", -")) (renames (map (lambda (x) `(,(car x) unquote (cadr x))) (cddr spec)))) (map (", -"lambda (s) (or (assq (car s) renames) s)) alist))) ((prefix) (let ((alist (colle", -"ct (cadr spec)))) (map (lambda (s) (cons (prefix (caddr spec) (car s)) (cdr s)))", -" alist))) ((except) (let ((alist (collect (cadr spec)))) (let loop ((alist alist", -")) (if (null? alist) '() (if (memq (caar alist) (cddr spec)) (loop (cdr alist)) ", -"(cons (car alist) (loop (cdr alist)))))))) (else (dictionary-map (lambda (x) (co", -"ns x x)) (library-exports (getlib spec)))))))) (letrec ((import (lambda (spec) (", -"let ((lib (extract spec)) (alist (collect spec))) (for-each (lambda (slot) (libr", -"ary-import lib (cdr slot) (car slot))) alist))))) (for-each import (cdr form))))", -"))) (define-macro export (lambda (form _) (letrec ((collect (lambda (spec) (cond", -" ((symbol? spec) `(,spec unquote spec)) ((and (list? spec) (= (length spec) 3) (", -"eq? (car spec) 'rename)) `(,(list-ref spec 1) unquote (list-ref spec 2))) (else ", -"(error \"malformed export\"))))) (export (lambda (spec) (let ((slot (collect spec)", -")) (library-export (car slot) (cdr slot)))))) (for-each export (cdr form))))) (l", -"et () (make-library '(picrin base)) (set-car! (dictionary-ref *libraries* (mangl", -"e '(picrin base))) default-environment) (let ((export-keywords (lambda (keywords", -") (let ((env (library-environment '(picrin base))) (exports (library-exports '(p", -"icrin base)))) (for-each (lambda (keyword) (dictionary-set! exports keyword keyw", -"ord)) keywords))))) (export-keywords '(define lambda quote set! if begin define-", -"macro let let* letrec letrec* let-values let*-values define-values quasiquote un", -"quote unquote-splicing and or cond case else => do when unless parameterize defi", -"ne-syntax syntax-quote syntax-unquote syntax-quasiquote syntax-unquote-splicing ", -"let-syntax letrec-syntax syntax-error)) (export-keywords '(features eq? eqv? equ", -"al? not boolean? boolean=? pair? cons car cdr null? set-car! set-cdr! caar cadr ", -"cdar cddr list? make-list list length append reverse list-tail list-ref list-set", -"! list-copy map for-each memq memv member assq assv assoc current-input-port cur", -"rent-output-port current-error-port port? input-port? output-port? port-open? cl", -"ose-port eof-object? eof-object read-u8 peek-u8 read-bytevector! write-u8 write-", -"bytevector flush-output-port open-input-bytevector open-output-bytevector get-ou", -"tput-bytevector number? exact? inexact? inexact exact = < > <= >= + - * / number", -"->string string->number procedure? apply symbol? symbol=? symbol->string string-", -">symbol make-identifier identifier? identifier=? identifier-base identifier-envi", -"ronment vector? vector make-vector vector-length vector-ref vector-set! vector-c", -"opy! vector-copy vector-append vector-fill! vector-map vector-for-each list->vec", -"tor vector->list string->vector vector->string bytevector? bytevector make-bytev", -"ector bytevector-length bytevector-u8-ref bytevector-u8-set! bytevector-copy! by", -"tevector-copy bytevector-append bytevector->list list->bytevector call-with-curr", -"ent-continuation call/cc values call-with-values char? char->integer integer->ch", -"ar char=? char? char<=? char>=? current-exception-handlers with-exceptio", -"n-handler raise raise-continuable error error-object? error-object-message error", -"-object-irritants error-object-type string? string make-string string-length str", -"ing-ref string-set! string-copy string-copy! string-fill! string-append string-m", -"ap string-for-each list->string string->list string=? string? string<=", -"? string>=? make-parameter with-dynamic-environment read make-dictionary diction", -"ary? dictionary dictionary-has? dictionary-ref dictionary-set! dictionary-delete", -"! dictionary-size dictionary-map dictionary-for-each dictionary->alist alist->di", -"ctionary dictionary->plist plist->dictionary make-record record? record-type rec", -"ord-datum default-environment make-environment find-identifier set-identifier! e", -"val compile add-macro! make-ephemeron-table write write-simple write-shared disp", -"lay)) (export-keywords '(find-library make-library current-library))) (set! eval", -" (let ((e eval)) (lambda (expr . lib) (let ((lib (if (null? lib) (current-librar", -"y) (car lib)))) (e expr (library-environment lib)))))) (make-library '(picrin us", -"er)) (current-library '(picrin user))) ", +"(core#begin (core#define mangle (core#lambda (.name.2448) (core#begin (core#if (", +"null? .name.2448) (error \"library name should be a list of at least one symbols\"", +" .name.2448) #undefined) (core#begin (core#define .->string.2449 (core#lambda (.", +"n.2451) (core#if (symbol? .n.2451) ((core#lambda (.str.2452) (core#begin (string", +"-for-each (core#lambda (.c.2453) (core#if ((core#lambda (.it.2454) (core#if .it.", +"2454 .it.2454 ((core#lambda (.it.2455) (core#if .it.2455 .it.2455 #f)) (char=? .", +"c.2453 #\\:)))) (char=? .c.2453 #\\.)) (error \"elements of library name may not co", +"ntain '.' or ':'\" .n.2451) #undefined)) .str.2452) .str.2452)) (symbol->string .", +"n.2451)) (core#if (core#if (number? .n.2451) (core#if (exact? .n.2451) (<= 0 .n.", +"2451) #f) #f) (number->string .n.2451) (error \"symbol or non-negative integer is", +" required\" .n.2451))))) (core#begin (core#define .join.2450 (core#lambda (.strs.", +"2456 .delim.2457) ((core#lambda () (core#begin (core#define .loop.2458 (core#lam", +"bda (.res.2459 .strs.2460) (core#if (null? .strs.2460) .res.2459 (.loop.2458 (st", +"ring-append .res.2459 .delim.2457 (car .strs.2460)) (cdr .strs.2460))))) (.loop.", +"2458 (car .strs.2456) (cdr .strs.2456))))))) (core#if (symbol? .name.2448) .name", +".2448 (string->symbol (.join.2450 (map .->string.2449 .name.2448) \".\")))))))) (c", +"ore#begin (core#define current-library (make-parameter (core#quote (picrin base)", +") mangle)) (core#begin (core#define *libraries* (make-dictionary)) (core#begin (", +"core#define find-library (core#lambda (.name.2461) (dictionary-has? *libraries* ", +"(mangle .name.2461)))) (core#begin (core#define make-library (core#lambda (.name", +".2462) ((core#lambda (.name.2463) ((core#lambda (.env.2464 .exports.2465) (core#", +"begin (set-identifier! (core#quote define-library) (core#quote define-library) .", +"env.2464) (core#begin (set-identifier! (core#quote import) (core#quote import) .", +"env.2464) (core#begin (set-identifier! (core#quote export) (core#quote export) .", +"env.2464) (core#begin (set-identifier! (core#quote cond-expand) (core#quote cond", +"-expand) .env.2464) (dictionary-set! *libraries* .name.2463 (cons .env.2464 .exp", +"orts.2465))))))) (make-environment (string->symbol (string-append (symbol->strin", +"g .name.2463) \":\"))) (make-dictionary))) (mangle .name.2462)))) (core#begin (cor", +"e#define library-environment (core#lambda (.name.2466) (car (dictionary-ref *lib", +"raries* (mangle .name.2466))))) (core#begin (core#define library-exports (core#l", +"ambda (.name.2467) (cdr (dictionary-ref *libraries* (mangle .name.2467))))) (cor", +"e#begin (core#define library-import (core#lambda (.name.2468 .sym.2469 .alias.24", +"70) ((core#lambda (.uid.2471) ((core#lambda (.env.2472) (set-identifier! .alias.", +"2470 .uid.2471 .env.2472)) (library-environment (current-library)))) (dictionary", +"-ref (library-exports .name.2468) .sym.2469)))) (core#begin (core#define library", +"-export (core#lambda (.sym.2473 .alias.2474) ((core#lambda (.env.2475 .exports.2", +"476) (dictionary-set! .exports.2476 .alias.2474 (find-identifier .sym.2473 .env.", +"2475))) (library-environment (current-library)) (library-exports (current-librar", +"y))))) (core#begin ((core#lambda (.define-transformer.2477) (core#begin (.define", +"-transformer.2477 (core#quote define-library) (core#lambda (.form.2478 ._.2479) ", +"((core#lambda (.name.2480 .body.2481) (core#begin ((core#lambda (.it.2482) (core", +"#if .it.2482 .it.2482 ((core#lambda (.it.2483) (core#if .it.2483 .it.2483 #f)) (", +"make-library .name.2480)))) (find-library .name.2480)) (with-dynamic-environment", +" (list (cons current-library .name.2480)) (core#lambda () (for-each (core#lambda", +" (.expr.2484) (eval .expr.2484 .name.2480)) .body.2481))))) (cadr .form.2478) (c", +"ddr .form.2478)))) (core#begin (.define-transformer.2477 (core#quote cond-expand", +") (core#lambda (.form.2485 ._.2486) ((core#lambda (.test.2487) (core#begin (core", +"#set! .test.2487 (core#lambda (.form.2488) ((core#lambda (.it.2489) (core#if .it", +".2489 .it.2489 ((core#lambda (.it.2490) (core#if .it.2490 .it.2490 ((core#lambda", +" (.it.2491) (core#if .it.2491 .it.2491 #f)) (core#if (pair? .form.2488) ((core#l", +"ambda (.key.2492) (core#if ((core#lambda (.it.2493) (core#if .it.2493 .it.2493 #", +"f)) (eqv? .key.2492 (core#quote library))) (find-library (cadr .form.2488)) (cor", +"e#if ((core#lambda (.it.2494) (core#if .it.2494 .it.2494 #f)) (eqv? .key.2492 (c", +"ore#quote not))) (not (.test.2487 (cadr .form.2488))) (core#if ((core#lambda (.i", +"t.2495) (core#if .it.2495 .it.2495 #f)) (eqv? .key.2492 (core#quote and))) ((cor", +"e#lambda () (core#begin (core#define .loop.2496 (core#lambda (.form.2497) ((core", +"#lambda (.it.2498) (core#if .it.2498 .it.2498 ((core#lambda (.it.2499) (core#if ", +".it.2499 .it.2499 #f)) (core#if (.test.2487 (car .form.2497)) (.loop.2496 (cdr .", +"form.2497)) #f)))) (null? .form.2497)))) (.loop.2496 (cdr .form.2488))))) (core#", +"if ((core#lambda (.it.2500) (core#if .it.2500 .it.2500 #f)) (eqv? .key.2492 (cor", +"e#quote or))) ((core#lambda () (core#begin (core#define .loop.2501 (core#lambda ", +"(.form.2502) (core#if (pair? .form.2502) ((core#lambda (.it.2503) (core#if .it.2", +"503 .it.2503 ((core#lambda (.it.2504) (core#if .it.2504 .it.2504 #f)) (.loop.250", +"1 (cdr .form.2502))))) (.test.2487 (car .form.2502))) #f))) (.loop.2501 (cdr .fo", +"rm.2488))))) (core#if #t #f #undefined)))))) (car .form.2488)) #f)))) (core#if (", +"symbol? .form.2488) (memq .form.2488 (features)) #f)))) (eq? .form.2488 (core#qu", +"ote else))))) ((core#lambda () (core#begin (core#define .loop.2505 (core#lambda ", +"(.clauses.2506) (core#if (null? .clauses.2506) #undefined (core#if (.test.2487 (", +"caar .clauses.2506)) (cons (make-identifier (core#quote begin) default-environme", +"nt) (append (cdar .clauses.2506) (core#quote ()))) (.loop.2505 (cdr .clauses.250", +"6)))))) (.loop.2505 (cdr .form.2485))))))) #undefined))) (core#begin (.define-tr", +"ansformer.2477 (core#quote import) (core#lambda (.form.2507 ._.2508) ((core#lamb", +"da (.caddr.2509 .prefix.2510 .getlib.2511) ((core#lambda (.extract.2512 .collect", +".2513) (core#begin (core#set! .extract.2512 (core#lambda (.spec.2514) ((core#lam", +"bda (.key.2515) (core#if ((core#lambda (.it.2516) (core#if .it.2516 .it.2516 ((c", +"ore#lambda (.it.2517) (core#if .it.2517 .it.2517 ((core#lambda (.it.2518) (core#", +"if .it.2518 .it.2518 ((core#lambda (.it.2519) (core#if .it.2519 .it.2519 #f)) (e", +"qv? .key.2515 (core#quote except))))) (eqv? .key.2515 (core#quote prefix))))) (e", +"qv? .key.2515 (core#quote rename))))) (eqv? .key.2515 (core#quote only))) (.extr", +"act.2512 (cadr .spec.2514)) (core#if #t (.getlib.2511 .spec.2514) #undefined))) ", +"(car .spec.2514)))) (core#begin (core#set! .collect.2513 (core#lambda (.spec.252", +"0) ((core#lambda (.key.2521) (core#if ((core#lambda (.it.2522) (core#if .it.2522", +" .it.2522 #f)) (eqv? .key.2521 (core#quote only))) ((core#lambda (.alist.2523) (", +"map (core#lambda (.var.2524) (assq .var.2524 .alist.2523)) (cddr .spec.2520))) (", +".collect.2513 (cadr .spec.2520))) (core#if ((core#lambda (.it.2525) (core#if .it", +".2525 .it.2525 #f)) (eqv? .key.2521 (core#quote rename))) ((core#lambda (.alist.", +"2526 .renames.2527) (map (core#lambda (.s.2528) ((core#lambda (.it.2529) (core#i", +"f .it.2529 .it.2529 ((core#lambda (.it.2530) (core#if .it.2530 .it.2530 #f)) .s.", +"2528))) (assq (car .s.2528) .renames.2527))) .alist.2526)) (.collect.2513 (cadr ", +".spec.2520)) (map (core#lambda (.x.2531) (cons (car .x.2531) (cadr .x.2531))) (c", +"ddr .spec.2520))) (core#if ((core#lambda (.it.2532) (core#if .it.2532 .it.2532 #", +"f)) (eqv? .key.2521 (core#quote prefix))) ((core#lambda (.alist.2533) (map (core", +"#lambda (.s.2534) (cons (.prefix.2510 (.caddr.2509 .spec.2520) (car .s.2534)) (c", +"dr .s.2534))) .alist.2533)) (.collect.2513 (cadr .spec.2520))) (core#if ((core#l", +"ambda (.it.2535) (core#if .it.2535 .it.2535 #f)) (eqv? .key.2521 (core#quote exc", +"ept))) ((core#lambda (.alist.2536) ((core#lambda () (core#begin (core#define .lo", +"op.2537 (core#lambda (.alist.2538) (core#if (null? .alist.2538) (core#quote ()) ", +"(core#if (memq (caar .alist.2538) (cddr .spec.2520)) (.loop.2537 (cdr .alist.253", +"8)) (cons (car .alist.2538) (.loop.2537 (cdr .alist.2538))))))) (.loop.2537 .ali", +"st.2536))))) (.collect.2513 (cadr .spec.2520))) (core#if #t (dictionary-map (cor", +"e#lambda (.x.2539) (cons .x.2539 .x.2539)) (library-exports (.getlib.2511 .spec.", +"2520))) #undefined)))))) (car .spec.2520)))) ((core#lambda (.import.2540) (core#", +"begin (core#set! .import.2540 (core#lambda (.spec.2541) ((core#lambda (.lib.2542", +" .alist.2543) (for-each (core#lambda (.slot.2544) (library-import .lib.2542 (cdr", +" .slot.2544) (car .slot.2544))) .alist.2543)) (.extract.2512 .spec.2541) (.colle", +"ct.2513 .spec.2541)))) (for-each .import.2540 (cdr .form.2507)))) #undefined))))", +" #undefined #undefined)) (core#lambda (.x.2545) (car (cdr (cdr .x.2545)))) (core", +"#lambda (.prefix.2546 .symbol.2547) (string->symbol (string-append (symbol->stri", +"ng .prefix.2546) (symbol->string .symbol.2547)))) (core#lambda (.name.2548) (cor", +"e#if (find-library .name.2548) .name.2548 (error \"library not found\" .name.2548)", +"))))) (.define-transformer.2477 (core#quote export) (core#lambda (.form.2549 ._.", +"2550) ((core#lambda (.collect.2551 .export.2552) (core#begin (core#set! .collect", +".2551 (core#lambda (.spec.2553) (core#if (symbol? .spec.2553) (cons .spec.2553 .", +"spec.2553) (core#if (core#if (list? .spec.2553) (core#if (= (length .spec.2553) ", +"3) (eq? (car .spec.2553) (core#quote rename)) #f) #f) (cons (list-ref .spec.2553", +" 1) (list-ref .spec.2553 2)) (error \"malformed export\"))))) (core#begin (core#se", +"t! .export.2552 (core#lambda (.spec.2554) ((core#lambda (.slot.2555) (library-ex", +"port (car .slot.2555) (cdr .slot.2555))) (.collect.2551 .spec.2554)))) (for-each", +" .export.2552 (cdr .form.2549))))) #undefined #undefined))))))) (core#lambda (.n", +"ame.2556 .macro.2557) (add-macro! .name.2556 .macro.2557))) ((core#lambda () (co", +"re#begin (make-library (core#quote (picrin base))) (core#begin (set-car! (dictio", +"nary-ref *libraries* (mangle (core#quote (picrin base)))) default-environment) (", +"core#begin ((core#lambda (.export-keywords.2558) (core#begin (.export-keywords.2", +"558 (core#quote (define lambda quote set! if begin define-macro let let* letrec ", +"letrec* let-values let*-values define-values quasiquote unquote unquote-splicing", +" and or cond case else => do when unless parameterize define-syntax syntax-quote", +" syntax-unquote syntax-quasiquote syntax-unquote-splicing let-syntax letrec-synt", +"ax syntax-error))) (core#begin (.export-keywords.2558 (core#quote (features eq? ", +"eqv? equal? not boolean? boolean=? pair? cons car cdr null? set-car! set-cdr! ca", +"ar cadr cdar cddr list? make-list list length append reverse list-tail list-ref ", +"list-set! list-copy map for-each memq memv member assq assv assoc current-input-", +"port current-output-port current-error-port port? input-port? output-port? port-", +"open? close-port eof-object? eof-object read-u8 peek-u8 read-bytevector! write-u", +"8 write-bytevector flush-output-port open-input-bytevector open-output-bytevecto", +"r get-output-bytevector number? exact? inexact? inexact exact = < > <= >= + - * ", +"/ number->string string->number procedure? apply symbol? symbol=? symbol->string", +" string->symbol make-identifier identifier? identifier=? identifier-base identif", +"ier-environment vector? vector make-vector vector-length vector-ref vector-set! ", +"vector-copy! vector-copy vector-append vector-fill! vector-map vector-for-each l", +"ist->vector vector->list string->vector vector->string bytevector? bytevector ma", +"ke-bytevector bytevector-length bytevector-u8-ref bytevector-u8-set! bytevector-", +"copy! bytevector-copy bytevector-append bytevector->list list->bytevector call-w", +"ith-current-continuation call/cc values call-with-values char? char->integer int", +"eger->char char=? char? char<=? char>=? current-exception-handlers with-", +"exception-handler raise raise-continuable error error-object? error-object-messa", +"ge error-object-irritants error-object-type string? string make-string string-le", +"ngth string-ref string-set! string-copy string-copy! string-fill! string-append ", +"string-map string-for-each list->string string->list string=? string? ", +"string<=? string>=? make-parameter with-dynamic-environment read make-dictionary", +" dictionary? dictionary dictionary-has? dictionary-ref dictionary-set! dictionar", +"y-delete! dictionary-size dictionary-map dictionary-for-each dictionary->alist a", +"list->dictionary dictionary->plist plist->dictionary make-record record? record-", +"type record-datum default-environment make-environment find-identifier set-ident", +"ifier! eval compile add-macro! make-ephemeron-table write write-simple write-sha", +"red display))) (.export-keywords.2558 (core#quote (find-library make-library cur", +"rent-library)))))) (core#lambda (.keywords.2559) ((core#lambda (.env.2560 .expor", +"ts.2561) (for-each (core#lambda (.keyword.2562) (dictionary-set! .exports.2561 .", +"keyword.2562 .keyword.2562)) .keywords.2559)) (library-environment (core#quote (", +"picrin base))) (library-exports (core#quote (picrin base)))))) (core#begin (core", +"#set! eval ((core#lambda (.e.2563) (core#lambda (.expr.2564 . .lib.2565) ((core#", +"lambda (.lib.2566) (.e.2563 .expr.2564 (library-environment .lib.2566))) (core#i", +"f (null? .lib.2565) (current-library) (car .lib.2565))))) eval)) (core#begin (ma", +"ke-library (core#quote (picrin user))) (current-library (core#quote (picrin user", +"))))))))))))))))))))", }; #endif @@ -414,6 +494,6 @@ pic_boot(pic_state *pic) { pic_call(pic, pic_compile(pic, pic_read_cstr(pic, &boot_rom[0][0])), 0); #if PIC_USE_LIBRARY - pic_load_cstr(pic, &boot_library_rom[0][0]); + pic_call(pic, pic_compile(pic, pic_read_cstr(pic, &boot_library_rom[0][0])), 0); #endif } diff --git a/piclib/boot.scm b/piclib/boot.scm index 1980979d..d4e91a40 100644 --- a/piclib/boot.scm +++ b/piclib/boot.scm @@ -1,457 +1,232 @@ -(core#define-macro call-with-current-environment - (core#lambda (form env) - (list (cadr form) env))) +(begin + ;; FIXME + (define (transformer f) + (lambda (form env) + (let ((ephemeron1 (make-ephemeron-table)) + (ephemeron2 (make-ephemeron-table))) + (letrec + ((wrap (lambda (var1) + (let ((var2 (ephemeron1 var1))) + (if var2 + (cdr var2) + (let ((var2 (make-identifier var1 env))) + (ephemeron1 var1 var2) + (ephemeron2 var2 var1) + var2))))) + (unwrap (lambda (var2) + (let ((var1 (ephemeron2 var2))) + (if var1 + (cdr var1) + var2)))) + (walk (lambda (f form) + (cond + ((identifier? form) + (f form)) + ((pair? form) + (cons (walk f (car form)) (walk f (cdr form)))) + ((vector? form) + (list->vector (walk f (vector->list form)))) + (else + form))))) + (let ((form (cdr form))) + (walk unwrap (apply f (walk wrap form)))))))) + (let () + (define (define-transformer name transformer) + (add-macro! name transformer)) -(core#define here - (call-with-current-environment - (core#lambda (env) - env))) + (define (the var) ; synonym for #'var + (make-identifier var default-environment)) -(core#define the ; synonym for #'var - (core#lambda (var) - (make-identifier var here))) + (define the-core-define (the 'core#define)) + (define the-core-lambda (the 'core#lambda)) + (define the-core-begin (the 'core#begin)) + (define the-core-quote (the 'core#quote)) + (define the-core-set! (the 'core#set!)) + (define the-core-if (the 'core#if)) + (define the-core-define-macro (the 'core#define-macro)) + + (define the-define (the 'define)) + (define the-lambda (the 'lambda)) + (define the-begin (the 'begin)) + (define the-quote (the 'quote)) + (define the-set! (the 'set!)) + (define the-if (the 'if)) + (define the-define-macro (the 'define-macro)) + + (define-transformer 'quote + (lambda (form env) + (if (= (length form) 2) + `(,the-core-quote ,(cadr form)) + (error "malformed quote" form)))) + + (define-transformer 'if + (lambda (form env) + (let ((len (length form))) + (cond + ((= len 3) `(,@form #undefined)) + ((= len 4) `(,the-core-if . ,(cdr form))) + (else (error "malformed if" form)))))) + + (define-transformer 'begin + (lambda (form env) + (let ((len (length form))) + (cond + ((= len 1) #undefined) + ((= len 2) (cadr form)) + ((= len 3) `(,the-core-begin . ,(cdr form))) + (else `(,the-core-begin ,(cadr form) (,the-begin . ,(cddr form)))))))) + + (define-transformer 'set! + (lambda (form env) + (if (and (= (length form) 3) (identifier? (cadr form))) + `(,the-core-set! . ,(cdr form)) + (error "malformed set!" form)))) + + (define (check-formal formal) + (or (null? formal) + (identifier? formal) + (and (pair? formal) + (identifier? (car formal)) + (check-formal (cdr formal))))) + + (define-transformer 'lambda + (lambda (form env) + (if (= (length form) 1) + (error "malformed lambda" form) + (if (check-formal (cadr form)) + `(,the-core-lambda ,(cadr form) (,the-begin . ,(cddr form))) + (error "malformed lambda" form))))) + + (define-transformer 'define + (lambda (form env) + (let ((len (length form))) + (if (= len 1) + (error "malformed define" form) + (let ((formal (cadr form))) + (if (identifier? formal) + (if (= len 3) + `(,the-core-define . ,(cdr form)) + (error "malformed define" form)) + (if (pair? formal) + `(,the-define ,(car formal) (,the-lambda ,(cdr formal) . ,(cddr form))) + (error "define: binding to non-varaible object" form)))))))) + + (define-transformer 'define-macro + (lambda (form env) + (if (= (length form) 3) + (if (identifier? (cadr form)) + `(,the-core-define-macro . ,(cdr form)) + (error "define-macro: binding to non-variable object" form)) + (error "malformed define-macro" form)))) -(core#define the-builtin-define (the (core#quote core#define))) -(core#define the-builtin-lambda (the (core#quote core#lambda))) -(core#define the-builtin-begin (the (core#quote core#begin))) -(core#define the-builtin-quote (the (core#quote core#quote))) -(core#define the-builtin-set! (the (core#quote core#set!))) -(core#define the-builtin-if (the (core#quote core#if))) -(core#define the-builtin-define-macro (the (core#quote core#define-macro))) + (define-transformer 'syntax-error + (lambda (form _) + (apply error (cdr form)))) -(core#define the-define (the (core#quote define))) -(core#define the-lambda (the (core#quote lambda))) -(core#define the-begin (the (core#quote begin))) -(core#define the-quote (the (core#quote quote))) -(core#define the-set! (the (core#quote set!))) -(core#define the-if (the (core#quote if))) -(core#define the-define-macro (the (core#quote define-macro))) + (define-macro define-auxiliary-syntax + (lambda (form _) + `(define-transformer ',(cadr form) + (lambda _ + (error "invalid use of auxiliary syntax" ',(cadr form)))))) -(core#define-macro quote - (core#lambda (form env) - (core#if (= (length form) 2) - (list the-builtin-quote (cadr form)) - (error "illegal quote form" form)))) + (define-auxiliary-syntax else) + (define-auxiliary-syntax =>) + (define-auxiliary-syntax unquote) + (define-auxiliary-syntax unquote-splicing) + (define-auxiliary-syntax syntax-unquote) + (define-auxiliary-syntax syntax-unquote-splicing) -(core#define-macro if - (core#lambda (form env) - ((core#lambda (len) - (core#if (= len 4) - (cons the-builtin-if (cdr form)) - (core#if (= len 3) - (list the-builtin-if (list-ref form 1) (list-ref form 2) #undefined) - (error "illegal if form" form)))) - (length form)))) - -(core#define-macro begin - (core#lambda (form env) - ((core#lambda (len) - (if (= len 1) - #undefined - (if (= len 2) - (cadr form) - (if (= len 3) - (cons the-builtin-begin (cdr form)) - (list the-builtin-begin - (cadr form) - (cons the-begin (cddr form))))))) - (length form)))) - -(core#define-macro set! - (core#lambda (form env) - (if (= (length form) 3) + (define-transformer 'let + (lambda (form env) (if (identifier? (cadr form)) - (cons the-builtin-set! (cdr form)) - (error "illegal set! form" form)) - (error "illegal set! form" form)))) + (let ((name (car (cdr form))) + (formal (car (cdr (cdr form)))) + (body (cdr (cdr (cdr form))))) + `((,the-lambda () + (,the-define (,name . ,(map car formal)) . ,body) + (,name . ,(map cadr formal))))) + (let ((formal (car (cdr form))) + (body (cdr (cdr form)))) + `((,the-lambda ,(map car formal) . ,body) . ,(map cadr formal)))))) -(core#define check-formal - (core#lambda (formal) - (if (null? formal) - #t - (if (identifier? formal) + (define-transformer 'and + (lambda (form env) + (if (null? (cdr form)) #t - (if (pair? formal) - (if (identifier? (car formal)) - (check-formal (cdr formal)) - #f) - #f))))) + (if (null? (cddr form)) + (cadr form) + `(,the-if ,(cadr form) (,(the 'and) . ,(cddr form)) #f))))) -(core#define-macro lambda - (core#lambda (form env) - (if (= (length form) 1) - (error "illegal lambda form" form) - (if (check-formal (cadr form)) - (list the-builtin-lambda (cadr form) (cons the-begin (cddr form))) - (error "illegal lambda form" form))))) + (define-transformer 'or + (lambda (form env) + (if (null? (cdr form)) + #f + (let ((tmp (make-identifier 'it env))) ; should we use #f as the env for tmp? + `(,(the 'let) ((,tmp ,(cadr form))) + (,the-if ,tmp ,tmp (,(the 'or) . ,(cddr form)))))))) -(core#define-macro define - (lambda (form env) - ((lambda (len) - (if (= len 1) - (error "illegal define form" form) - (if (identifier? (cadr form)) - (if (= len 3) - (cons the-builtin-define (cdr form)) - (error "illegal define form" form)) - (if (pair? (cadr form)) - (list the-define - (car (cadr form)) - (cons the-lambda (cons (cdr (cadr form)) (cddr form)))) - (error "define: binding to non-varaible object" form))))) - (length form)))) + (define-transformer 'cond + (lambda (form env) + (let ((clauses (cdr form))) + (if (null? clauses) + #undefined + (let ((clause (car clauses))) + (if (and (identifier? (car clause)) + (identifier=? (the 'else) (make-identifier (car clause) env))) + `(,the-begin . ,(cdr clause)) + (if (null? (cdr clause)) + `(,(the 'or) ,(car clause) (,(the 'cond) . ,(cdr clauses))) + (if (and (identifier? (cadr clause)) + (identifier=? (the '=>) (make-identifier (cadr clause) env))) + (let ((tmp (make-identifier 'tmp env))) + `(,(the 'let) ((,tmp ,(car clause))) + (,the-if ,tmp (,(cadr (cdr clause)) ,tmp) (,(the 'cond) . ,(cddr form))))) + `(,the-if ,(car clause) + (,the-begin . ,(cdr clause)) + (,(the 'cond) . ,(cdr clauses))))))))))) -(core#define-macro define-macro - (lambda (form env) - (if (= (length form) 3) - (if (identifier? (cadr form)) - (cons the-builtin-define-macro (cdr form)) - (error "define-macro: binding to non-variable object" form)) - (error "illegal define-macro form" form)))) + (define-transformer 'quasiquote + (lambda (form env) - -(define-macro syntax-error - (lambda (form _) - (apply error (cdr form)))) - -(define-macro define-auxiliary-syntax - (lambda (form _) - (define message - (string-append - "invalid use of auxiliary syntax: '" (symbol->string (cadr form)) "'")) - (list - the-define-macro - (cadr form) - (list the-lambda '_ - (list (the 'error) message))))) - -(define-auxiliary-syntax else) -(define-auxiliary-syntax =>) -(define-auxiliary-syntax unquote) -(define-auxiliary-syntax unquote-splicing) -(define-auxiliary-syntax syntax-unquote) -(define-auxiliary-syntax syntax-unquote-splicing) - -(define-macro let - (lambda (form env) - (if (identifier? (cadr form)) - (list - (list the-lambda '() - (list the-define (cadr form) - (cons the-lambda - (cons (map car (car (cddr form))) - (cdr (cddr form))))) - (cons (cadr form) (map cadr (car (cddr form)))))) - (cons - (cons - the-lambda - (cons (map car (cadr form)) - (cddr form))) - (map cadr (cadr form)))))) - -(define-macro and - (lambda (form env) - (if (null? (cdr form)) - #t - (if (null? (cddr form)) - (cadr form) - (list the-if - (cadr form) - (cons (the 'and) (cddr form)) - #f))))) - -(define-macro or - (lambda (form env) - (if (null? (cdr form)) - #f - (let ((tmp (make-identifier 'it env))) - (list (the 'let) - (list (list tmp (cadr form))) - (list the-if - tmp - tmp - (cons (the 'or) (cddr form)))))))) - -(define-macro cond - (lambda (form env) - (let ((clauses (cdr form))) - (if (null? clauses) - #undefined - (let ((clause (car clauses))) - (if (and (identifier? (car clause)) - (identifier=? (the 'else) (make-identifier (car clause) env))) - (cons the-begin (cdr clause)) - (if (null? (cdr clause)) - (let ((tmp (make-identifier 'tmp here))) - (list (the 'let) (list (list tmp (car clause))) - (list the-if tmp tmp (cons (the 'cond) (cdr clauses))))) - (if (and (identifier? (cadr clause)) - (identifier=? (the '=>) (make-identifier (cadr clause) env))) - (let ((tmp (make-identifier 'tmp here))) - (list (the 'let) (list (list tmp (car clause))) - (list the-if tmp - (list (car (cddr clause)) tmp) - (cons (the 'cond) (cdr clauses))))) - (list the-if (car clause) - (cons the-begin (cdr clause)) - (cons (the 'cond) (cdr clauses))))))))))) - -(define-macro quasiquote - (lambda (form env) - - (define (quasiquote? form) - (and (pair? form) - (identifier? (car form)) - (identifier=? (the 'quasiquote) (make-identifier (car form) env)))) - - (define (unquote? form) - (and (pair? form) - (identifier? (car form)) - (identifier=? (the 'unquote) (make-identifier (car form) env)))) - - (define (unquote-splicing? form) - (and (pair? form) - (pair? (car form)) - (identifier? (caar form)) - (identifier=? (the 'unquote-splicing) (make-identifier (caar form) env)))) - - (define (qq depth expr) - (cond - ;; unquote - ((unquote? expr) - (if (= depth 1) - (car (cdr expr)) - (list (the 'list) - (list (the 'quote) (the 'unquote)) - (qq (- depth 1) (car (cdr expr)))))) - ;; unquote-splicing - ((unquote-splicing? expr) - (if (= depth 1) - (list (the 'append) - (car (cdr (car expr))) - (qq depth (cdr expr))) - (list (the 'cons) - (list (the 'list) - (list (the 'quote) (the 'unquote-splicing)) - (qq (- depth 1) (car (cdr (car expr))))) - (qq depth (cdr expr))))) - ;; quasiquote - ((quasiquote? expr) - (list (the 'list) - (list (the 'quote) (the 'quasiquote)) - (qq (+ depth 1) (car (cdr expr))))) - ;; list - ((pair? expr) - (list (the 'cons) - (qq depth (car expr)) - (qq depth (cdr expr)))) - ;; vector - ((vector? expr) - (list (the 'list->vector) (qq depth (vector->list expr)))) - ;; simple datum - (else - (list (the 'quote) expr)))) - - (let ((x (cadr form))) - (qq 1 x)))) - -(define-macro let* - (lambda (form env) - (let ((bindings (car (cdr form))) - (body (cdr (cdr form)))) - (if (null? bindings) - `(,(the 'let) () ,@body) - `(,(the 'let) ((,(car (car bindings)) ,@(cdr (car bindings)))) - (,(the 'let*) (,@(cdr bindings)) - ,@body)))))) - -(define-macro letrec - (lambda (form env) - `(,(the 'letrec*) ,@(cdr form)))) - -(define-macro letrec* - (lambda (form env) - (let ((bindings (car (cdr form))) - (body (cdr (cdr form)))) - (let ((variables (map (lambda (v) `(,v #f)) (map car bindings))) - (initials (map (lambda (v) `(,(the 'set!) ,@v)) bindings))) - `(,(the 'let) (,@variables) - ,@initials - ,@body))))) - -(define-macro let-values - (lambda (form env) - `(,(the 'let*-values) ,@(cdr form)))) - -(define-macro let*-values - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - (if (null? formal) - `(,(the 'let) () ,@body) - `(,(the 'call-with-values) (,the-lambda () ,@(cdr (car formal))) - (,(the 'lambda) (,@(car (car formal))) - (,(the 'let*-values) (,@(cdr formal)) - ,@body))))))) - -(define-macro define-values - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - (let ((arguments (make-identifier 'arguments here))) - `(,the-begin - ,@(let loop ((formal formal)) - (if (pair? formal) - `((,the-define ,(car formal) #undefined) ,@(loop (cdr formal))) - (if (identifier? formal) - `((,the-define ,formal #undefined)) - '()))) - (,(the 'call-with-values) (,the-lambda () ,@body) - (,the-lambda - ,arguments - ,@(let loop ((formal formal) (args arguments)) - (if (pair? formal) - `((,the-set! ,(car formal) (,(the 'car) ,args)) ,@(loop (cdr formal) `(,(the 'cdr) ,args))) - (if (identifier? formal) - `((,the-set! ,formal ,args)) - '())))))))))) - -(define-macro do - (lambda (form env) - (let ((bindings (car (cdr form))) - (test (car (car (cdr (cdr form))))) - (cleanup (cdr (car (cdr (cdr form))))) - (body (cdr (cdr (cdr form))))) - (let ((loop (make-identifier 'loop here))) - `(,(the 'let) ,loop ,(map (lambda (x) `(,(car x) ,(cadr x))) bindings) - (,the-if ,test - (,the-begin - ,@cleanup) - (,the-begin - ,@body - (,loop ,@(map (lambda (x) (if (null? (cdr (cdr x))) (car x) (car (cdr (cdr x))))) bindings))))))))) - -(define-macro when - (lambda (form env) - (let ((test (car (cdr form))) - (body (cdr (cdr form)))) - `(,the-if ,test - (,the-begin ,@body) - #undefined)))) - -(define-macro unless - (lambda (form env) - (let ((test (car (cdr form))) - (body (cdr (cdr form)))) - `(,the-if ,test - #undefined - (,the-begin ,@body))))) - -(define-macro case - (lambda (form env) - (let ((key (car (cdr form))) - (clauses (cdr (cdr form)))) - (let ((the-key (make-identifier 'key here))) - `(,(the 'let) ((,the-key ,key)) - ,(let loop ((clauses clauses)) - (if (null? clauses) - #undefined - (let ((clause (car clauses))) - `(,the-if ,(if (and (identifier? (car clause)) - (identifier=? (the 'else) (make-identifier (car clause) env))) - #t - `(,(the 'or) ,@(map (lambda (x) `(,(the 'eqv?) ,the-key (,the-quote ,x))) (car clause)))) - ,(if (and (identifier? (cadr clause)) - (identifier=? (the '=>) (make-identifier (cadr clause) env))) - `(,(car (cdr (cdr clause))) ,the-key) - `(,the-begin ,@(cdr clause))) - ,(loop (cdr clauses))))))))))) - -(define-macro parameterize - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - `(,(the 'with-dynamic-environment) - (,(the 'list) ,@(map (lambda (x) `(,(the 'cons) ,(car x) ,(cadr x))) formal)) - (,the-lambda () ,@body))))) - -(define-macro syntax-quote - (lambda (form env) - (let ((renames '())) - (letrec - ((rename (lambda (var) - (let ((x (assq var renames))) - (if x - (cadr x) - (begin - (set! renames `((,var ,(make-identifier var env) (,(the 'make-identifier) ',var ',env)) . ,renames)) - (rename var)))))) - (walk (lambda (f form) - (cond - ((identifier? form) - (f form)) - ((pair? form) - `(,(the 'cons) (walk f (car form)) (walk f (cdr form)))) - ((vector? form) - `(,(the 'list->vector) (walk f (vector->list form)))) - (else - `(,(the 'quote) ,form)))))) - (let ((form (walk rename (cadr form)))) - `(,(the 'let) - ,(map cdr renames) - ,form)))))) - -(define-macro syntax-quasiquote - (lambda (form env) - (let ((renames '())) - (letrec - ((rename (lambda (var) - (let ((x (assq var renames))) - (if x - (cadr x) - (begin - (set! renames `((,var ,(make-identifier var env) (,(the 'make-identifier) ',var ',env)) . ,renames)) - (rename var))))))) - - (define (syntax-quasiquote? form) + (define (quasiquote? form) (and (pair? form) (identifier? (car form)) - (identifier=? (the 'syntax-quasiquote) (make-identifier (car form) env)))) + (identifier=? (the 'quasiquote) (make-identifier (car form) env)))) - (define (syntax-unquote? form) + (define (unquote? form) (and (pair? form) (identifier? (car form)) - (identifier=? (the 'syntax-unquote) (make-identifier (car form) env)))) + (identifier=? (the 'unquote) (make-identifier (car form) env)))) - (define (syntax-unquote-splicing? form) + (define (unquote-splicing? form) (and (pair? form) (pair? (car form)) (identifier? (caar form)) - (identifier=? (the 'syntax-unquote-splicing) (make-identifier (caar form) env)))) + (identifier=? (the 'unquote-splicing) (make-identifier (caar form) env)))) (define (qq depth expr) (cond - ;; syntax-unquote - ((syntax-unquote? expr) + ;; unquote + ((unquote? expr) (if (= depth 1) - (car (cdr expr)) + (cadr expr) (list (the 'list) - (list (the 'quote) (the 'syntax-unquote)) + (list (the 'quote) (the 'unquote)) (qq (- depth 1) (car (cdr expr)))))) - ;; syntax-unquote-splicing - ((syntax-unquote-splicing? expr) + ;; unquote-splicing + ((unquote-splicing? expr) (if (= depth 1) (list (the 'append) (car (cdr (car expr))) (qq depth (cdr expr))) (list (the 'cons) (list (the 'list) - (list (the 'quote) (the 'syntax-unquote-splicing)) + (list (the 'quote) (the 'unquote-splicing)) (qq (- depth 1) (car (cdr (car expr))))) (qq depth (cdr expr))))) - ;; syntax-quasiquote - ((syntax-quasiquote? expr) + ;; quasiquote + ((quasiquote? expr) (list (the 'list) (list (the 'quote) (the 'quasiquote)) (qq (+ depth 1) (car (cdr expr))))) @@ -463,67 +238,252 @@ ;; vector ((vector? expr) (list (the 'list->vector) (qq depth (vector->list expr)))) - ;; identifier - ((identifier? expr) - (rename expr)) ;; simple datum (else (list (the 'quote) expr)))) - (let ((body (qq 1 (cadr form)))) - `(,(the 'let) - ,(map cdr renames) - ,body)))))) + (let ((x (cadr form))) + (qq 1 x)))) -(define (transformer f) - (lambda (form env) - (let ((ephemeron1 (make-ephemeron-table)) - (ephemeron2 (make-ephemeron-table))) - (letrec - ((wrap (lambda (var1) - (let ((var2 (ephemeron1 var1))) - (if var2 - (cdr var2) - (let ((var2 (make-identifier var1 env))) - (ephemeron1 var1 var2) - (ephemeron2 var2 var1) - var2))))) - (unwrap (lambda (var2) - (let ((var1 (ephemeron2 var2))) - (if var1 - (cdr var1) - var2)))) - (walk (lambda (f form) - (cond - ((identifier? form) - (f form)) - ((pair? form) - (cons (walk f (car form)) (walk f (cdr form)))) - ((vector? form) - (list->vector (walk f (vector->list form)))) - (else - form))))) - (let ((form (cdr form))) - (walk unwrap (apply f (walk wrap form)))))))) + (define-transformer 'let* + (lambda (form env) + (let ((bindings (car (cdr form))) + (body (cdr (cdr form)))) + (if (null? bindings) + `(,(the 'let) () . ,body) + `(,(the 'let) ((,(car (car bindings)) . ,(cdr (car bindings)))) + (,(the 'let*) ,(cdr bindings) . ,body)))))) -(define-macro define-syntax - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - (if (pair? formal) - `(,(the 'define-syntax) ,(car formal) (,the-lambda ,(cdr formal) ,@body)) - `(,the-define-macro ,formal (,(the 'transformer) (,the-begin ,@body))))))) + (define-transformer 'letrec + (lambda (form env) + `(,(the 'letrec*) . ,(cdr form)))) -(define-macro letrec-syntax - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - `(let () - ,@(map (lambda (x) - `(,(the 'define-syntax) ,(car x) ,(cadr x))) - formal) - ,@body)))) + (define-transformer 'letrec* + (lambda (form env) + (let ((bindings (car (cdr form))) + (body (cdr (cdr form)))) + (let ((variables (map (lambda (v) `(,v #undefined)) (map car bindings))) + (initials (map (lambda (v) `(,(the 'set!) ,@v)) bindings))) + `(,(the 'let) ,variables + ,@initials + ,@body))))) -(define-macro let-syntax - (lambda (form env) - `(,(the 'letrec-syntax) ,@(cdr form)))) + (define-transformer 'let-values + (lambda (form env) + `(,(the 'let*-values) ,@(cdr form)))) + + (define-transformer 'let*-values + (lambda (form env) + (let ((formal (car (cdr form))) + (body (cdr (cdr form)))) + (if (null? formal) + `(,(the 'let) () ,@body) + `(,(the 'call-with-values) (,the-lambda () ,@(cdr (car formal))) + (,(the 'lambda) (,@(car (car formal))) + (,(the 'let*-values) (,@(cdr formal)) + ,@body))))))) + + (define-transformer 'define-values + (lambda (form env) + (let ((formal (car (cdr form))) + (body (cdr (cdr form)))) + (let ((arguments (make-identifier 'arguments env))) + `(,the-begin + ,@(let loop ((formal formal)) + (if (pair? formal) + `((,the-define ,(car formal) #undefined) ,@(loop (cdr formal))) + (if (identifier? formal) + `((,the-define ,formal #undefined)) + '()))) + (,(the 'call-with-values) (,the-lambda () ,@body) + (,the-lambda + ,arguments + ,@(let loop ((formal formal) (args arguments)) + (if (pair? formal) + `((,the-set! ,(car formal) (,(the 'car) ,args)) ,@(loop (cdr formal) `(,(the 'cdr) ,args))) + (if (identifier? formal) + `((,the-set! ,formal ,args)) + '())))))))))) + + (define-transformer 'do + (lambda (form env) + (let ((bindings (car (cdr form))) + (test (car (car (cdr (cdr form))))) + (cleanup (cdr (car (cdr (cdr form))))) + (body (cdr (cdr (cdr form))))) + (let ((loop (make-identifier 'loop env))) + `(,(the 'let) ,loop ,(map (lambda (x) `(,(car x) ,(cadr x))) bindings) + (,the-if ,test + (,the-begin . ,cleanup) + (,the-begin + ,@body + (,loop . ,(map (lambda (x) + (if (null? (cdr (cdr x))) + (car x) + (car (cdr (cdr x))))) + bindings))))))))) + + (define-transformer 'when + (lambda (form env) + (let ((test (car (cdr form))) + (body (cdr (cdr form)))) + `(,the-if ,test + (,the-begin ,@body) + #undefined)))) + + (define-transformer 'unless + (lambda (form env) + (let ((test (car (cdr form))) + (body (cdr (cdr form)))) + `(,the-if ,test + #undefined + (,the-begin ,@body))))) + + (define-transformer 'case + (lambda (form env) + (let ((key (car (cdr form))) + (clauses (cdr (cdr form)))) + (let ((the-key (make-identifier 'key env))) + `(,(the 'let) ((,the-key ,key)) + ,(let loop ((clauses clauses)) + (if (null? clauses) + #undefined + (let ((clause (car clauses))) + `(,the-if ,(if (and (identifier? (car clause)) + (identifier=? (the 'else) (make-identifier (car clause) env))) + #t + `(,(the 'or) ,@(map (lambda (x) `(,(the 'eqv?) ,the-key (,the-quote ,x))) (car clause)))) + ,(if (and (identifier? (cadr clause)) + (identifier=? (the '=>) (make-identifier (cadr clause) env))) + `(,(car (cdr (cdr clause))) ,the-key) + `(,the-begin ,@(cdr clause))) + ,(loop (cdr clauses))))))))))) + + (define-transformer 'parameterize + (lambda (form env) + (let ((formal (car (cdr form))) + (body (cdr (cdr form)))) + `(,(the 'with-dynamic-environment) + (,(the 'list) ,@(map (lambda (x) `(,(the 'cons) ,(car x) ,(cadr x))) formal)) + (,the-lambda () ,@body))))) + + (define-transformer 'syntax-quote + (lambda (form env) + (let ((renames '())) + (letrec + ((rename (lambda (var) + (let ((x (assq var renames))) + (if x + (cadr x) + (begin + (set! renames `((,var ,(make-identifier var env) (,(the 'make-identifier) ',var ',env)) . ,renames)) + (rename var)))))) + (walk (lambda (f form) + (cond + ((identifier? form) + (f form)) + ((pair? form) + `(,(the 'cons) (walk f (car form)) (walk f (cdr form)))) + ((vector? form) + `(,(the 'list->vector) (walk f (vector->list form)))) + (else + `(,(the 'quote) ,form)))))) + (let ((form (walk rename (cadr form)))) + `(,(the 'let) + ,(map cdr renames) + ,form)))))) + + (define-transformer 'syntax-quasiquote + (lambda (form env) + (let ((renames '())) + (letrec + ((rename (lambda (var) + (let ((x (assq var renames))) + (if x + (cadr x) + (begin + (set! renames `((,var ,(make-identifier var env) (,(the 'make-identifier) ',var ',env)) . ,renames)) + (rename var))))))) + + (define (syntax-quasiquote? form) + (and (pair? form) + (identifier? (car form)) + (identifier=? (the 'syntax-quasiquote) (make-identifier (car form) env)))) + + (define (syntax-unquote? form) + (and (pair? form) + (identifier? (car form)) + (identifier=? (the 'syntax-unquote) (make-identifier (car form) env)))) + + (define (syntax-unquote-splicing? form) + (and (pair? form) + (pair? (car form)) + (identifier? (caar form)) + (identifier=? (the 'syntax-unquote-splicing) (make-identifier (caar form) env)))) + + (define (qq depth expr) + (cond + ;; syntax-unquote + ((syntax-unquote? expr) + (if (= depth 1) + (car (cdr expr)) + (list (the 'list) + (list (the 'quote) (the 'syntax-unquote)) + (qq (- depth 1) (car (cdr expr)))))) + ;; syntax-unquote-splicing + ((syntax-unquote-splicing? expr) + (if (= depth 1) + (list (the 'append) + (car (cdr (car expr))) + (qq depth (cdr expr))) + (list (the 'cons) + (list (the 'list) + (list (the 'quote) (the 'syntax-unquote-splicing)) + (qq (- depth 1) (car (cdr (car expr))))) + (qq depth (cdr expr))))) + ;; syntax-quasiquote + ((syntax-quasiquote? expr) + (list (the 'list) + (list (the 'quote) (the 'quasiquote)) + (qq (+ depth 1) (car (cdr expr))))) + ;; list + ((pair? expr) + (list (the 'cons) + (qq depth (car expr)) + (qq depth (cdr expr)))) + ;; vector + ((vector? expr) + (list (the 'list->vector) (qq depth (vector->list expr)))) + ;; identifier + ((identifier? expr) + (rename expr)) + ;; simple datum + (else + (list (the 'quote) expr)))) + + (let ((body (qq 1 (cadr form)))) + `(,(the 'let) + ,(map cdr renames) + ,body)))))) + + (define-transformer 'define-syntax + (lambda (form env) + (let ((formal (car (cdr form))) + (body (cdr (cdr form)))) + (if (pair? formal) + `(,(the 'define-syntax) ,(car formal) (,the-lambda ,(cdr formal) ,@body)) + `(,the-define-macro ,formal (,(the 'transformer) (,the-begin ,@body))))))) + + (define-transformer 'letrec-syntax + (lambda (form env) + (let ((formal (car (cdr form))) + (body (cdr (cdr form)))) + `(let () + ,@(map (lambda (x) + `(,(the 'define-syntax) ,(car x) ,(cadr x))) + formal) + ,@body)))) + + (define-transformer 'let-syntax + (lambda (form env) + `(,(the 'letrec-syntax) ,@(cdr form)))))) diff --git a/piclib/boot2.scm b/piclib/boot2.scm deleted file mode 100644 index d4e91a40..00000000 --- a/piclib/boot2.scm +++ /dev/null @@ -1,489 +0,0 @@ -(begin - ;; FIXME - (define (transformer f) - (lambda (form env) - (let ((ephemeron1 (make-ephemeron-table)) - (ephemeron2 (make-ephemeron-table))) - (letrec - ((wrap (lambda (var1) - (let ((var2 (ephemeron1 var1))) - (if var2 - (cdr var2) - (let ((var2 (make-identifier var1 env))) - (ephemeron1 var1 var2) - (ephemeron2 var2 var1) - var2))))) - (unwrap (lambda (var2) - (let ((var1 (ephemeron2 var2))) - (if var1 - (cdr var1) - var2)))) - (walk (lambda (f form) - (cond - ((identifier? form) - (f form)) - ((pair? form) - (cons (walk f (car form)) (walk f (cdr form)))) - ((vector? form) - (list->vector (walk f (vector->list form)))) - (else - form))))) - (let ((form (cdr form))) - (walk unwrap (apply f (walk wrap form)))))))) - (let () - (define (define-transformer name transformer) - (add-macro! name transformer)) - - (define (the var) ; synonym for #'var - (make-identifier var default-environment)) - - (define the-core-define (the 'core#define)) - (define the-core-lambda (the 'core#lambda)) - (define the-core-begin (the 'core#begin)) - (define the-core-quote (the 'core#quote)) - (define the-core-set! (the 'core#set!)) - (define the-core-if (the 'core#if)) - (define the-core-define-macro (the 'core#define-macro)) - - (define the-define (the 'define)) - (define the-lambda (the 'lambda)) - (define the-begin (the 'begin)) - (define the-quote (the 'quote)) - (define the-set! (the 'set!)) - (define the-if (the 'if)) - (define the-define-macro (the 'define-macro)) - - (define-transformer 'quote - (lambda (form env) - (if (= (length form) 2) - `(,the-core-quote ,(cadr form)) - (error "malformed quote" form)))) - - (define-transformer 'if - (lambda (form env) - (let ((len (length form))) - (cond - ((= len 3) `(,@form #undefined)) - ((= len 4) `(,the-core-if . ,(cdr form))) - (else (error "malformed if" form)))))) - - (define-transformer 'begin - (lambda (form env) - (let ((len (length form))) - (cond - ((= len 1) #undefined) - ((= len 2) (cadr form)) - ((= len 3) `(,the-core-begin . ,(cdr form))) - (else `(,the-core-begin ,(cadr form) (,the-begin . ,(cddr form)))))))) - - (define-transformer 'set! - (lambda (form env) - (if (and (= (length form) 3) (identifier? (cadr form))) - `(,the-core-set! . ,(cdr form)) - (error "malformed set!" form)))) - - (define (check-formal formal) - (or (null? formal) - (identifier? formal) - (and (pair? formal) - (identifier? (car formal)) - (check-formal (cdr formal))))) - - (define-transformer 'lambda - (lambda (form env) - (if (= (length form) 1) - (error "malformed lambda" form) - (if (check-formal (cadr form)) - `(,the-core-lambda ,(cadr form) (,the-begin . ,(cddr form))) - (error "malformed lambda" form))))) - - (define-transformer 'define - (lambda (form env) - (let ((len (length form))) - (if (= len 1) - (error "malformed define" form) - (let ((formal (cadr form))) - (if (identifier? formal) - (if (= len 3) - `(,the-core-define . ,(cdr form)) - (error "malformed define" form)) - (if (pair? formal) - `(,the-define ,(car formal) (,the-lambda ,(cdr formal) . ,(cddr form))) - (error "define: binding to non-varaible object" form)))))))) - - (define-transformer 'define-macro - (lambda (form env) - (if (= (length form) 3) - (if (identifier? (cadr form)) - `(,the-core-define-macro . ,(cdr form)) - (error "define-macro: binding to non-variable object" form)) - (error "malformed define-macro" form)))) - - - (define-transformer 'syntax-error - (lambda (form _) - (apply error (cdr form)))) - - (define-macro define-auxiliary-syntax - (lambda (form _) - `(define-transformer ',(cadr form) - (lambda _ - (error "invalid use of auxiliary syntax" ',(cadr form)))))) - - (define-auxiliary-syntax else) - (define-auxiliary-syntax =>) - (define-auxiliary-syntax unquote) - (define-auxiliary-syntax unquote-splicing) - (define-auxiliary-syntax syntax-unquote) - (define-auxiliary-syntax syntax-unquote-splicing) - - (define-transformer 'let - (lambda (form env) - (if (identifier? (cadr form)) - (let ((name (car (cdr form))) - (formal (car (cdr (cdr form)))) - (body (cdr (cdr (cdr form))))) - `((,the-lambda () - (,the-define (,name . ,(map car formal)) . ,body) - (,name . ,(map cadr formal))))) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - `((,the-lambda ,(map car formal) . ,body) . ,(map cadr formal)))))) - - (define-transformer 'and - (lambda (form env) - (if (null? (cdr form)) - #t - (if (null? (cddr form)) - (cadr form) - `(,the-if ,(cadr form) (,(the 'and) . ,(cddr form)) #f))))) - - (define-transformer 'or - (lambda (form env) - (if (null? (cdr form)) - #f - (let ((tmp (make-identifier 'it env))) ; should we use #f as the env for tmp? - `(,(the 'let) ((,tmp ,(cadr form))) - (,the-if ,tmp ,tmp (,(the 'or) . ,(cddr form)))))))) - - (define-transformer 'cond - (lambda (form env) - (let ((clauses (cdr form))) - (if (null? clauses) - #undefined - (let ((clause (car clauses))) - (if (and (identifier? (car clause)) - (identifier=? (the 'else) (make-identifier (car clause) env))) - `(,the-begin . ,(cdr clause)) - (if (null? (cdr clause)) - `(,(the 'or) ,(car clause) (,(the 'cond) . ,(cdr clauses))) - (if (and (identifier? (cadr clause)) - (identifier=? (the '=>) (make-identifier (cadr clause) env))) - (let ((tmp (make-identifier 'tmp env))) - `(,(the 'let) ((,tmp ,(car clause))) - (,the-if ,tmp (,(cadr (cdr clause)) ,tmp) (,(the 'cond) . ,(cddr form))))) - `(,the-if ,(car clause) - (,the-begin . ,(cdr clause)) - (,(the 'cond) . ,(cdr clauses))))))))))) - - (define-transformer 'quasiquote - (lambda (form env) - - (define (quasiquote? form) - (and (pair? form) - (identifier? (car form)) - (identifier=? (the 'quasiquote) (make-identifier (car form) env)))) - - (define (unquote? form) - (and (pair? form) - (identifier? (car form)) - (identifier=? (the 'unquote) (make-identifier (car form) env)))) - - (define (unquote-splicing? form) - (and (pair? form) - (pair? (car form)) - (identifier? (caar form)) - (identifier=? (the 'unquote-splicing) (make-identifier (caar form) env)))) - - (define (qq depth expr) - (cond - ;; unquote - ((unquote? expr) - (if (= depth 1) - (cadr expr) - (list (the 'list) - (list (the 'quote) (the 'unquote)) - (qq (- depth 1) (car (cdr expr)))))) - ;; unquote-splicing - ((unquote-splicing? expr) - (if (= depth 1) - (list (the 'append) - (car (cdr (car expr))) - (qq depth (cdr expr))) - (list (the 'cons) - (list (the 'list) - (list (the 'quote) (the 'unquote-splicing)) - (qq (- depth 1) (car (cdr (car expr))))) - (qq depth (cdr expr))))) - ;; quasiquote - ((quasiquote? expr) - (list (the 'list) - (list (the 'quote) (the 'quasiquote)) - (qq (+ depth 1) (car (cdr expr))))) - ;; list - ((pair? expr) - (list (the 'cons) - (qq depth (car expr)) - (qq depth (cdr expr)))) - ;; vector - ((vector? expr) - (list (the 'list->vector) (qq depth (vector->list expr)))) - ;; simple datum - (else - (list (the 'quote) expr)))) - - (let ((x (cadr form))) - (qq 1 x)))) - - (define-transformer 'let* - (lambda (form env) - (let ((bindings (car (cdr form))) - (body (cdr (cdr form)))) - (if (null? bindings) - `(,(the 'let) () . ,body) - `(,(the 'let) ((,(car (car bindings)) . ,(cdr (car bindings)))) - (,(the 'let*) ,(cdr bindings) . ,body)))))) - - (define-transformer 'letrec - (lambda (form env) - `(,(the 'letrec*) . ,(cdr form)))) - - (define-transformer 'letrec* - (lambda (form env) - (let ((bindings (car (cdr form))) - (body (cdr (cdr form)))) - (let ((variables (map (lambda (v) `(,v #undefined)) (map car bindings))) - (initials (map (lambda (v) `(,(the 'set!) ,@v)) bindings))) - `(,(the 'let) ,variables - ,@initials - ,@body))))) - - (define-transformer 'let-values - (lambda (form env) - `(,(the 'let*-values) ,@(cdr form)))) - - (define-transformer 'let*-values - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - (if (null? formal) - `(,(the 'let) () ,@body) - `(,(the 'call-with-values) (,the-lambda () ,@(cdr (car formal))) - (,(the 'lambda) (,@(car (car formal))) - (,(the 'let*-values) (,@(cdr formal)) - ,@body))))))) - - (define-transformer 'define-values - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - (let ((arguments (make-identifier 'arguments env))) - `(,the-begin - ,@(let loop ((formal formal)) - (if (pair? formal) - `((,the-define ,(car formal) #undefined) ,@(loop (cdr formal))) - (if (identifier? formal) - `((,the-define ,formal #undefined)) - '()))) - (,(the 'call-with-values) (,the-lambda () ,@body) - (,the-lambda - ,arguments - ,@(let loop ((formal formal) (args arguments)) - (if (pair? formal) - `((,the-set! ,(car formal) (,(the 'car) ,args)) ,@(loop (cdr formal) `(,(the 'cdr) ,args))) - (if (identifier? formal) - `((,the-set! ,formal ,args)) - '())))))))))) - - (define-transformer 'do - (lambda (form env) - (let ((bindings (car (cdr form))) - (test (car (car (cdr (cdr form))))) - (cleanup (cdr (car (cdr (cdr form))))) - (body (cdr (cdr (cdr form))))) - (let ((loop (make-identifier 'loop env))) - `(,(the 'let) ,loop ,(map (lambda (x) `(,(car x) ,(cadr x))) bindings) - (,the-if ,test - (,the-begin . ,cleanup) - (,the-begin - ,@body - (,loop . ,(map (lambda (x) - (if (null? (cdr (cdr x))) - (car x) - (car (cdr (cdr x))))) - bindings))))))))) - - (define-transformer 'when - (lambda (form env) - (let ((test (car (cdr form))) - (body (cdr (cdr form)))) - `(,the-if ,test - (,the-begin ,@body) - #undefined)))) - - (define-transformer 'unless - (lambda (form env) - (let ((test (car (cdr form))) - (body (cdr (cdr form)))) - `(,the-if ,test - #undefined - (,the-begin ,@body))))) - - (define-transformer 'case - (lambda (form env) - (let ((key (car (cdr form))) - (clauses (cdr (cdr form)))) - (let ((the-key (make-identifier 'key env))) - `(,(the 'let) ((,the-key ,key)) - ,(let loop ((clauses clauses)) - (if (null? clauses) - #undefined - (let ((clause (car clauses))) - `(,the-if ,(if (and (identifier? (car clause)) - (identifier=? (the 'else) (make-identifier (car clause) env))) - #t - `(,(the 'or) ,@(map (lambda (x) `(,(the 'eqv?) ,the-key (,the-quote ,x))) (car clause)))) - ,(if (and (identifier? (cadr clause)) - (identifier=? (the '=>) (make-identifier (cadr clause) env))) - `(,(car (cdr (cdr clause))) ,the-key) - `(,the-begin ,@(cdr clause))) - ,(loop (cdr clauses))))))))))) - - (define-transformer 'parameterize - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - `(,(the 'with-dynamic-environment) - (,(the 'list) ,@(map (lambda (x) `(,(the 'cons) ,(car x) ,(cadr x))) formal)) - (,the-lambda () ,@body))))) - - (define-transformer 'syntax-quote - (lambda (form env) - (let ((renames '())) - (letrec - ((rename (lambda (var) - (let ((x (assq var renames))) - (if x - (cadr x) - (begin - (set! renames `((,var ,(make-identifier var env) (,(the 'make-identifier) ',var ',env)) . ,renames)) - (rename var)))))) - (walk (lambda (f form) - (cond - ((identifier? form) - (f form)) - ((pair? form) - `(,(the 'cons) (walk f (car form)) (walk f (cdr form)))) - ((vector? form) - `(,(the 'list->vector) (walk f (vector->list form)))) - (else - `(,(the 'quote) ,form)))))) - (let ((form (walk rename (cadr form)))) - `(,(the 'let) - ,(map cdr renames) - ,form)))))) - - (define-transformer 'syntax-quasiquote - (lambda (form env) - (let ((renames '())) - (letrec - ((rename (lambda (var) - (let ((x (assq var renames))) - (if x - (cadr x) - (begin - (set! renames `((,var ,(make-identifier var env) (,(the 'make-identifier) ',var ',env)) . ,renames)) - (rename var))))))) - - (define (syntax-quasiquote? form) - (and (pair? form) - (identifier? (car form)) - (identifier=? (the 'syntax-quasiquote) (make-identifier (car form) env)))) - - (define (syntax-unquote? form) - (and (pair? form) - (identifier? (car form)) - (identifier=? (the 'syntax-unquote) (make-identifier (car form) env)))) - - (define (syntax-unquote-splicing? form) - (and (pair? form) - (pair? (car form)) - (identifier? (caar form)) - (identifier=? (the 'syntax-unquote-splicing) (make-identifier (caar form) env)))) - - (define (qq depth expr) - (cond - ;; syntax-unquote - ((syntax-unquote? expr) - (if (= depth 1) - (car (cdr expr)) - (list (the 'list) - (list (the 'quote) (the 'syntax-unquote)) - (qq (- depth 1) (car (cdr expr)))))) - ;; syntax-unquote-splicing - ((syntax-unquote-splicing? expr) - (if (= depth 1) - (list (the 'append) - (car (cdr (car expr))) - (qq depth (cdr expr))) - (list (the 'cons) - (list (the 'list) - (list (the 'quote) (the 'syntax-unquote-splicing)) - (qq (- depth 1) (car (cdr (car expr))))) - (qq depth (cdr expr))))) - ;; syntax-quasiquote - ((syntax-quasiquote? expr) - (list (the 'list) - (list (the 'quote) (the 'quasiquote)) - (qq (+ depth 1) (car (cdr expr))))) - ;; list - ((pair? expr) - (list (the 'cons) - (qq depth (car expr)) - (qq depth (cdr expr)))) - ;; vector - ((vector? expr) - (list (the 'list->vector) (qq depth (vector->list expr)))) - ;; identifier - ((identifier? expr) - (rename expr)) - ;; simple datum - (else - (list (the 'quote) expr)))) - - (let ((body (qq 1 (cadr form)))) - `(,(the 'let) - ,(map cdr renames) - ,body)))))) - - (define-transformer 'define-syntax - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - (if (pair? formal) - `(,(the 'define-syntax) ,(car formal) (,the-lambda ,(cdr formal) ,@body)) - `(,the-define-macro ,formal (,(the 'transformer) (,the-begin ,@body))))))) - - (define-transformer 'letrec-syntax - (lambda (form env) - (let ((formal (car (cdr form))) - (body (cdr (cdr form)))) - `(let () - ,@(map (lambda (x) - `(,(the 'define-syntax) ,(car x) ,(cadr x))) - formal) - ,@body)))) - - (define-transformer 'let-syntax - (lambda (form env) - `(,(the 'letrec-syntax) ,@(cdr form)))))) diff --git a/piclib/library.scm b/piclib/library.scm index 96a58f33..c84202f0 100644 --- a/piclib/library.scm +++ b/piclib/library.scm @@ -1,271 +1,275 @@ -;;; There are two ways to name a library: (foo bar) or foo.bar -;;; The former is normalized to the latter. +(begin + ;; There are two ways to name a library: (foo bar) or foo.bar + ;; The former is normalized to the latter. -(define (mangle name) - (when (null? name) - (error "library name should be a list of at least one symbols" name)) + (define (mangle name) + (when (null? name) + (error "library name should be a list of at least one symbols" name)) - (define (->string n) - (cond - ((symbol? n) - (let ((str (symbol->string n))) - (string-for-each - (lambda (c) - (when (or (char=? c #\.) (char=? c #\:)) - (error "elements of library name may not contain '.' or ':'" n))) - str) - str)) - ((and (number? n) (exact? n) (<= 0 n)) - (number->string n)) - (else - (error "symbol or non-negative integer is required" n)))) + (define (->string n) + (cond + ((symbol? n) + (let ((str (symbol->string n))) + (string-for-each + (lambda (c) + (when (or (char=? c #\.) (char=? c #\:)) + (error "elements of library name may not contain '.' or ':'" n))) + str) + str)) + ((and (number? n) (exact? n) (<= 0 n)) + (number->string n)) + (else + (error "symbol or non-negative integer is required" n)))) - (define (join strs delim) - (let loop ((res (car strs)) (strs (cdr strs))) - (if (null? strs) - res - (loop (string-append res delim (car strs)) (cdr strs))))) + (define (join strs delim) + (let loop ((res (car strs)) (strs (cdr strs))) + (if (null? strs) + res + (loop (string-append res delim (car strs)) (cdr strs))))) - (if (symbol? name) - name ; TODO: check symbol names - (string->symbol (join (map ->string name) ".")))) + (if (symbol? name) + name ; TODO: check symbol names + (string->symbol (join (map ->string name) ".")))) -(define current-library - (make-parameter '(picrin base) mangle)) + (define current-library + (make-parameter '(picrin base) mangle)) -(define *libraries* - (make-dictionary)) + (define *libraries* + (make-dictionary)) -(define (find-library name) - (dictionary-has? *libraries* (mangle name))) + (define (find-library name) + (dictionary-has? *libraries* (mangle name))) -(define (make-library name) - (let ((name (mangle name))) - (let ((env (make-environment - (string->symbol (string-append (symbol->string name) ":")))) - (exports (make-dictionary))) - ;; set up initial environment - (set-identifier! 'define-library 'define-library env) - (set-identifier! 'import 'import env) - (set-identifier! 'export 'export env) - (set-identifier! 'cond-expand 'cond-expand env) - (dictionary-set! *libraries* name `(,env . ,exports))))) + (define (make-library name) + (let ((name (mangle name))) + (let ((env (make-environment + (string->symbol (string-append (symbol->string name) ":")))) + (exports (make-dictionary))) + ;; set up initial environment + (set-identifier! 'define-library 'define-library env) + (set-identifier! 'import 'import env) + (set-identifier! 'export 'export env) + (set-identifier! 'cond-expand 'cond-expand env) + (dictionary-set! *libraries* name `(,env . ,exports))))) -(define (library-environment name) - (car (dictionary-ref *libraries* (mangle name)))) + (define (library-environment name) + (car (dictionary-ref *libraries* (mangle name)))) -(define (library-exports name) - (cdr (dictionary-ref *libraries* (mangle name)))) + (define (library-exports name) + (cdr (dictionary-ref *libraries* (mangle name)))) -(define (library-import name sym alias) - (let ((uid (dictionary-ref (library-exports name) sym))) - (let ((env (library-environment (current-library)))) - (set-identifier! alias uid env)))) + (define (library-import name sym alias) + (let ((uid (dictionary-ref (library-exports name) sym))) + (let ((env (library-environment (current-library)))) + (set-identifier! alias uid env)))) -(define (library-export sym alias) - (let ((env (library-environment (current-library))) - (exports (library-exports (current-library)))) - (dictionary-set! exports alias (find-identifier sym env)))) + (define (library-export sym alias) + (let ((env (library-environment (current-library))) + (exports (library-exports (current-library)))) + (dictionary-set! exports alias (find-identifier sym env)))) -;;; R7RS library syntax + ;; R7RS library syntax -(define-macro define-library - (lambda (form _) - (let ((name (cadr form)) - (body (cddr form))) - (or (find-library name) (make-library name)) - (parameterize ((current-library name)) - (for-each - (lambda (expr) - (eval expr name)) ; TODO parse library declarations - body))))) + (let ((define-transformer + (lambda (name macro) + (add-macro! name macro)))) -(define-macro cond-expand - (lambda (form _) - (letrec - ((test (lambda (form) - (or - (eq? form 'else) - (and (symbol? form) - (memq form (features))) - (and (pair? form) - (case (car form) - ((library) (find-library (cadr form))) - ((not) (not (test (cadr form)))) - ((and) (let loop ((form (cdr form))) - (or (null? form) - (and (test (car form)) (loop (cdr form)))))) - ((or) (let loop ((form (cdr form))) - (and (pair? form) - (or (test (car form)) (loop (cdr form)))))) - (else #f))))))) - (let loop ((clauses (cdr form))) - (if (null? clauses) - #undefined - (if (test (caar clauses)) - `(,(make-identifier 'begin default-environment) ,@(cdar clauses)) - (loop (cdr clauses)))))))) + (define-transformer 'define-library + (lambda (form _) + (let ((name (cadr form)) + (body (cddr form))) + (or (find-library name) (make-library name)) + (parameterize ((current-library name)) + (for-each + (lambda (expr) + (eval expr name)) ; TODO parse library declarations + body))))) -(define-macro import - (lambda (form _) - (let ((caddr - (lambda (x) (car (cdr (cdr x))))) - (prefix - (lambda (prefix symbol) - (string->symbol - (string-append - (symbol->string prefix) - (symbol->string symbol))))) - (getlib - (lambda (name) - (if (find-library name) - name - (error "library not found" name))))) - (letrec - ((extract - (lambda (spec) - (case (car spec) - ((only rename prefix except) - (extract (cadr spec))) - (else - (getlib spec))))) - (collect - (lambda (spec) - (case (car spec) - ((only) - (let ((alist (collect (cadr spec)))) - (map (lambda (var) (assq var alist)) (cddr spec)))) - ((rename) - (let ((alist (collect (cadr spec))) - (renames (map (lambda (x) `(,(car x) . ,(cadr x))) (cddr spec)))) - (map (lambda (s) (or (assq (car s) renames) s)) alist))) - ((prefix) - (let ((alist (collect (cadr spec)))) - (map (lambda (s) (cons (prefix (caddr spec) (car s)) (cdr s))) alist))) - ((except) - (let ((alist (collect (cadr spec)))) - (let loop ((alist alist)) - (if (null? alist) - '() - (if (memq (caar alist) (cddr spec)) - (loop (cdr alist)) - (cons (car alist) (loop (cdr alist)))))))) - (else - (dictionary-map (lambda (x) (cons x x)) - (library-exports (getlib spec)))))))) + (define-transformer 'cond-expand + (lambda (form _) (letrec - ((import + ((test (lambda (form) + (or + (eq? form 'else) + (and (symbol? form) + (memq form (features))) + (and (pair? form) + (case (car form) + ((library) (find-library (cadr form))) + ((not) (not (test (cadr form)))) + ((and) (let loop ((form (cdr form))) + (or (null? form) + (and (test (car form)) (loop (cdr form)))))) + ((or) (let loop ((form (cdr form))) + (and (pair? form) + (or (test (car form)) (loop (cdr form)))))) + (else #f))))))) + (let loop ((clauses (cdr form))) + (if (null? clauses) + #undefined + (if (test (caar clauses)) + `(,(make-identifier 'begin default-environment) ,@(cdar clauses)) + (loop (cdr clauses)))))))) + + (define-transformer 'import + (lambda (form _) + (let ((caddr + (lambda (x) (car (cdr (cdr x))))) + (prefix + (lambda (prefix symbol) + (string->symbol + (string-append + (symbol->string prefix) + (symbol->string symbol))))) + (getlib + (lambda (name) + (if (find-library name) + name + (error "library not found" name))))) + (letrec + ((extract + (lambda (spec) + (case (car spec) + ((only rename prefix except) + (extract (cadr spec))) + (else + (getlib spec))))) + (collect + (lambda (spec) + (case (car spec) + ((only) + (let ((alist (collect (cadr spec)))) + (map (lambda (var) (assq var alist)) (cddr spec)))) + ((rename) + (let ((alist (collect (cadr spec))) + (renames (map (lambda (x) `(,(car x) . ,(cadr x))) (cddr spec)))) + (map (lambda (s) (or (assq (car s) renames) s)) alist))) + ((prefix) + (let ((alist (collect (cadr spec)))) + (map (lambda (s) (cons (prefix (caddr spec) (car s)) (cdr s))) alist))) + ((except) + (let ((alist (collect (cadr spec)))) + (let loop ((alist alist)) + (if (null? alist) + '() + (if (memq (caar alist) (cddr spec)) + (loop (cdr alist)) + (cons (car alist) (loop (cdr alist)))))))) + (else + (dictionary-map (lambda (x) (cons x x)) + (library-exports (getlib spec)))))))) + (letrec + ((import + (lambda (spec) + (let ((lib (extract spec)) + (alist (collect spec))) + (for-each + (lambda (slot) + (library-import lib (cdr slot) (car slot))) + alist))))) + (for-each import (cdr form))))))) + + (define-transformer 'export + (lambda (form _) + (letrec + ((collect + (lambda (spec) + (cond + ((symbol? spec) + `(,spec . ,spec)) + ((and (list? spec) (= (length spec) 3) (eq? (car spec) 'rename)) + `(,(list-ref spec 1) . ,(list-ref spec 2))) + (else + (error "malformed export"))))) + (export (lambda (spec) - (let ((lib (extract spec)) - (alist (collect spec))) - (for-each - (lambda (slot) - (library-import lib (cdr slot) (car slot))) - alist))))) - (for-each import (cdr form))))))) - -(define-macro export - (lambda (form _) - (letrec - ((collect - (lambda (spec) - (cond - ((symbol? spec) - `(,spec . ,spec)) - ((and (list? spec) (= (length spec) 3) (eq? (car spec) 'rename)) - `(,(list-ref spec 1) . ,(list-ref spec 2))) - (else - (error "malformed export"))))) - (export - (lambda (spec) - (let ((slot (collect spec))) - (library-export (car slot) (cdr slot)))))) - (for-each export (cdr form))))) + (let ((slot (collect spec))) + (library-export (car slot) (cdr slot)))))) + (for-each export (cdr form)))))) -;;; bootstrap... -(let () - (make-library '(picrin base)) - (set-car! (dictionary-ref *libraries* (mangle '(picrin base))) default-environment) - (let ((export-keywords - (lambda (keywords) - (let ((env (library-environment '(picrin base))) - (exports (library-exports '(picrin base)))) - (for-each - (lambda (keyword) - (dictionary-set! exports keyword keyword)) - keywords))))) - (export-keywords - '(define lambda quote set! if begin define-macro - let let* letrec letrec* - let-values let*-values define-values - quasiquote unquote unquote-splicing - and or - cond case else => - do when unless - parameterize - define-syntax - syntax-quote syntax-unquote - syntax-quasiquote syntax-unquote-splicing - let-syntax letrec-syntax - syntax-error)) - (export-keywords - '(features - eq? eqv? equal? not boolean? boolean=? - pair? cons car cdr null? set-car! set-cdr! - caar cadr cdar cddr - list? make-list list length append reverse - list-tail list-ref list-set! list-copy - map for-each memq memv member assq assv assoc - current-input-port current-output-port current-error-port - port? input-port? output-port? port-open? close-port - eof-object? eof-object - read-u8 peek-u8 read-bytevector! - write-u8 write-bytevector flush-output-port - open-input-bytevector open-output-bytevector get-output-bytevector - number? exact? inexact? inexact exact - = < > <= >= + - * / - number->string string->number - procedure? apply - symbol? symbol=? symbol->string string->symbol - make-identifier identifier? identifier=? identifier-base identifier-environment - vector? vector make-vector vector-length vector-ref vector-set! - vector-copy! vector-copy vector-append vector-fill! vector-map vector-for-each - list->vector vector->list string->vector vector->string - bytevector? bytevector make-bytevector - bytevector-length bytevector-u8-ref bytevector-u8-set! - bytevector-copy! bytevector-copy bytevector-append - bytevector->list list->bytevector - call-with-current-continuation call/cc values call-with-values - char? char->integer integer->char char=? char? char<=? char>=? - current-exception-handlers with-exception-handler - raise raise-continuable error - error-object? error-object-message error-object-irritants - error-object-type - string? string make-string string-length string-ref string-set! - string-copy string-copy! string-fill! string-append - string-map string-for-each list->string string->list - string=? string? string<=? string>=? - make-parameter with-dynamic-environment - read - make-dictionary dictionary? dictionary dictionary-has? - dictionary-ref dictionary-set! dictionary-delete! dictionary-size - dictionary-map dictionary-for-each - dictionary->alist alist->dictionary dictionary->plist plist->dictionary - make-record record? record-type record-datum - default-environment make-environment find-identifier set-identifier! - eval compile add-macro! - make-ephemeron-table - write write-simple write-shared display)) - (export-keywords - '(find-library make-library current-library))) - (set! eval - (let ((e eval)) - (lambda (expr . lib) - (let ((lib (if (null? lib) (current-library) (car lib)))) - (e expr (library-environment lib)))))) - (make-library '(picrin user)) - (current-library '(picrin user))) - + ;; bootstrap... + (let () + (make-library '(picrin base)) + (set-car! (dictionary-ref *libraries* (mangle '(picrin base))) default-environment) + (let ((export-keywords + (lambda (keywords) + (let ((env (library-environment '(picrin base))) + (exports (library-exports '(picrin base)))) + (for-each + (lambda (keyword) + (dictionary-set! exports keyword keyword)) + keywords))))) + (export-keywords + '(define lambda quote set! if begin define-macro + let let* letrec letrec* + let-values let*-values define-values + quasiquote unquote unquote-splicing + and or + cond case else => + do when unless + parameterize + define-syntax + syntax-quote syntax-unquote + syntax-quasiquote syntax-unquote-splicing + let-syntax letrec-syntax + syntax-error)) + (export-keywords + '(features + eq? eqv? equal? not boolean? boolean=? + pair? cons car cdr null? set-car! set-cdr! + caar cadr cdar cddr + list? make-list list length append reverse + list-tail list-ref list-set! list-copy + map for-each memq memv member assq assv assoc + current-input-port current-output-port current-error-port + port? input-port? output-port? port-open? close-port + eof-object? eof-object + read-u8 peek-u8 read-bytevector! + write-u8 write-bytevector flush-output-port + open-input-bytevector open-output-bytevector get-output-bytevector + number? exact? inexact? inexact exact + = < > <= >= + - * / + number->string string->number + procedure? apply + symbol? symbol=? symbol->string string->symbol + make-identifier identifier? identifier=? identifier-base identifier-environment + vector? vector make-vector vector-length vector-ref vector-set! + vector-copy! vector-copy vector-append vector-fill! vector-map vector-for-each + list->vector vector->list string->vector vector->string + bytevector? bytevector make-bytevector + bytevector-length bytevector-u8-ref bytevector-u8-set! + bytevector-copy! bytevector-copy bytevector-append + bytevector->list list->bytevector + call-with-current-continuation call/cc values call-with-values + char? char->integer integer->char char=? char? char<=? char>=? + current-exception-handlers with-exception-handler + raise raise-continuable error + error-object? error-object-message error-object-irritants + error-object-type + string? string make-string string-length string-ref string-set! + string-copy string-copy! string-fill! string-append + string-map string-for-each list->string string->list + string=? string? string<=? string>=? + make-parameter with-dynamic-environment + read + make-dictionary dictionary? dictionary dictionary-has? + dictionary-ref dictionary-set! dictionary-delete! dictionary-size + dictionary-map dictionary-for-each + dictionary->alist alist->dictionary dictionary->plist plist->dictionary + make-record record? record-type record-datum + default-environment make-environment find-identifier set-identifier! + eval compile add-macro! + make-ephemeron-table + write write-simple write-shared display)) + (export-keywords + '(find-library make-library current-library))) + (set! eval + (let ((e eval)) + (lambda (expr . lib) + (let ((lib (if (null? lib) (current-library) (car lib)))) + (e expr (library-environment lib)))))) + (make-library '(picrin user)) + (current-library '(picrin user)))) diff --git a/src/tiny-main.c b/src/tiny-main.c index 253af54e..a2997566 100644 --- a/src/tiny-main.c +++ b/src/tiny-main.c @@ -14,6 +14,9 @@ main() pic = pic_open(pic_default_allocf, NULL); + pic_printf(pic, "~s\n", pic_funcall(pic, "compile", 1, pic_read(pic, pic_stdin(pic)))); + return 0; + pic_try { while (1) { size_t ai = pic_enter(pic); diff --git a/tools/mkboot.scm b/tools/mkboot.scm index dcac2e2a..fbca5cec 100644 --- a/tools/mkboot.scm +++ b/tools/mkboot.scm @@ -1,9 +1,9 @@ (import (scheme base) (scheme read) (scheme write) - (scheme file)) + (only (picrin base) compile)) -(define (generate-rom filename) +(define (generate-rom) (define (with-output-to-string thunk) (let ((port (open-output-string))) @@ -13,23 +13,10 @@ (close-port port) s)))) - (define exprs - (with-input-from-file filename - (lambda () - (let loop ((acc '())) - (let ((e (read))) - (if (eof-object? e) - (reverse acc) - (loop (cons e acc)))))))) - (define text (with-output-to-string (lambda () - (for-each - (lambda (e) - (write e) - (write-string " ")) - exprs)))) + (write (compile (read)))))) (define (escape-string s) (with-output-to-string @@ -65,12 +52,12 @@ "#include \"picrin/extra.h\"" "" "static const char boot_rom[][80] = {" - ,(generate-rom "piclib/boot3.scm") + ,(generate-rom) "};" "" "#if PIC_USE_LIBRARY" "static const char boot_library_rom[][80] = {" - ,(generate-rom "piclib/library.scm") + ,(generate-rom) "};" "#endif" "" @@ -79,7 +66,7 @@ "{" " pic_call(pic, pic_compile(pic, pic_read_cstr(pic, &boot_rom[0][0])), 0);" "#if PIC_USE_LIBRARY" - " pic_load_cstr(pic, &boot_library_rom[0][0]);" + " pic_call(pic, pic_compile(pic, pic_read_cstr(pic, &boot_library_rom[0][0])), 0);" "#endif" "}"))