[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] GNU Guile branch, master, updated. release_1-9-11-84-g41
From: |
Andy Wingo |
Subject: |
[Guile-commits] GNU Guile branch, master, updated. release_1-9-11-84-g417ee09 |
Date: |
Thu, 17 Jun 2010 12:04:46 +0000 |
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".
http://git.savannah.gnu.org/cgit/guile.git/commit/?id=417ee09802eccb7c6d8729ecc5f311433cec755c
The branch, master has been updated
via 417ee09802eccb7c6d8729ecc5f311433cec755c (commit)
via 57086a19d0ec1cfddc204fafc8b7843c7e3f22c8 (commit)
via 9b3cc6596542da2c0a34de6381b1a22df0e8fa21 (commit)
via 0f2b9f6252ac27ce4d48e5319992d9c44525ebc2 (commit)
via 60d4b224483632662b6e1739713f83f55e216caa (commit)
via 4ee781a688231044b3e0e3f56407c71e554036c3 (commit)
via 826373a25d71173f0f5045c61dc5854910cf1a80 (commit)
via fb6e61ca21b397308474a6a553f7d502d0113251 (commit)
via f238862e9ec7c69d69eb3941f14844501c0f5937 (commit)
from 89cdf5a3793379432c7a9399aa242b2923e1451a (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 417ee09802eccb7c6d8729ecc5f311433cec755c
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 13:36:18 2010 +0200
compile-psyntax "optimizes" psyntax-pp
* module/ice-9/compile-psyntax.scm (source): "Optimize" psyntax-pp
before writing it out.
* module/ice-9/psyntax-pp.scm: Regenerated.
commit 57086a19d0ec1cfddc204fafc8b7843c7e3f22c8
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 13:34:48 2010 +0200
tree-il->scheme renders fix as letrec*
* module/language/tree-il.scm (tree-il->scheme): Expand out to letrec*,
as it doesn't matter, and this avoids a let when running through the
evaluator.
commit 9b3cc6596542da2c0a34de6381b1a22df0e8fa21
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 13:31:03 2010 +0200
resolve-primitives tweaks
* module/ice-9/boot-9.scm (make-struct/no-tail): Define a version of
this function. Because during optimization we resolve make-struct to
make-struct/no-tail, we need an implemented make-struct/no-tail if we
are to be able to run scheme made from tree-il->scheme.
* module/language/tree-il/compile-glil.scm (*primcall-ops*): Remove
variable-set case, as there is no "variable-set!" primitive.
(flatten): Add a special hack for variable-set!. Ugly, I know.
* module/language/tree-il/primitives.scm (*effect-free-primitives*): Add
make-struct/no-tail.
(*effect+exception-free-primitives*): Remove make-struct, as it could
raise an exception.
(variable-set!): Remove expansion to variable-set.
commit 0f2b9f6252ac27ce4d48e5319992d9c44525ebc2
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 13:03:01 2010 +0200
internal definitions expand out to letrec* instead of letrec
* module/ice-9/psyntax.scm (chi-body): Internal definitions are now
letrec* instead of letrec, following the R6RS.
* module/ice-9/psyntax-pp.scm: Regenerated.
commit 60d4b224483632662b6e1739713f83f55e216caa
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 12:47:46 2010 +0200
compiler support for letrec*
* test-suite/tests/tree-il.test ("letrec"): Add some tests.
* module/language/tree-il/compile-glil.scm (flatten): Add support for
compiling letrec* in its unoptimized form.
* module/language/tree-il/fix-letrec.scm (simple-expression?):
Parameterize, so that letrec* will not treat `(car x)' as primitive
(because it could raise an exception).
(partition-vars): Lump unreferenced vars in with complex vars, when
compiling letrec*.
(fix-letrec!): No need to evaluate inits within a let for letrec*.
commit 4ee781a688231044b3e0e3f56407c71e554036c3
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 11:58:31 2010 +0200
add effect+exception-free-primitive? predicate
* module/language/tree-il/primitives.scm
(effect+exception-free-primitive?): New predicate, like
effect-free-primitive?, but excludes accessors that could raise
exceptions.
commit 826373a25d71173f0f5045c61dc5854910cf1a80
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 11:12:58 2010 +0200
psyntax, primitive expander, and memoizer support for letrec*
* libguile/expand.c (expand_letrec_helper): Factor out common code.
(expand_letrec): Use expand_letrec_helper.
(expand_letrec_star): New primitive syntax: letrec*.
* libguile/memoize.c (memoize): Add memoizer support for in-order letrec
(letrec*).
* module/ice-9/psyntax.scm (build-letrec): Another arg, `in-order?'.
(chi-body): Adapt to build-letrec change. We don't yet use letrec* for
internal definitions.
(letrec): Adapt to build-letrec change.
(letrec*): New expander.
* module/ice-9/psyntax-pp.scm: Regenerated.
commit fb6e61ca21b397308474a6a553f7d502d0113251
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 10:49:00 2010 +0200
beginnings of letrec* support in the expander
* libguile/expand.h (SCM_EXPANDED_LETREC_IN_ORDER_P)
(SCM_MAKE_EXPANDED_LETREC): Add a new field to letrec, in-order?. Will
be used to support letrec*.
* libguile/expand.c (LETREC, expand_named_let, expand_letrec): Adapt
code.
* module/language/elisp/compile-tree-il.scm (compile-pair):
* module/ice-9/psyntax.scm (build-named-let, build-letrec): Pass #f for
in-order? to `make-letrec'.
* module/ice-9/psyntax-pp.scm: Regenerate.
* module/language/tree-il.scm: Add letrec-in-order? accessor.
(parse-tree-il, unparse-tree-il): Parse and unparse an in-order?
letrec as `letrec*'.
(tree-il->scheme): Serialize letrec*.
commit f238862e9ec7c69d69eb3941f14844501c0f5937
Author: Andy Wingo <address@hidden>
Date: Thu Jun 17 10:45:34 2010 +0200
fix bug in memoize
* libguile/memoize.c (memoize): Fix a bug where LETREC was being
accessed as LET, and it just happened to coincide.
-----------------------------------------------------------------------
Summary of changes:
libguile/expand.c | 23 +-
libguile/expand.h | 7 +-
libguile/memoize.c | 53 +-
module/ice-9/boot-9.scm | 8 +
module/ice-9/compile-psyntax.scm | 6 +-
module/ice-9/psyntax-pp.scm |30390 ++++++++++++++---------------
module/ice-9/psyntax.scm | 31 +-
module/language/elisp/compile-tree-il.scm | 2 +-
module/language/tree-il.scm | 25 +-
module/language/tree-il/compile-glil.scm | 43 +-
module/language/tree-il/fix-letrec.scm | 100 +-
module/language/tree-il/primitives.scm | 28 +-
test-suite/tests/tree-il.test | 46 +
13 files changed, 15349 insertions(+), 15413 deletions(-)
diff --git a/libguile/expand.c b/libguile/expand.c
index 2dd93ec..bdecd80 100644
--- a/libguile/expand.c
+++ b/libguile/expand.c
@@ -81,8 +81,8 @@ static const char** exp_field_names[SCM_NUM_EXPANDED_TYPES];
SCM_MAKE_EXPANDED_LAMBDA_CASE(src, req, opt, rest, kw, inits, gensyms, body,
alternate)
#define LET(src, names, gensyms, vals, body) \
SCM_MAKE_EXPANDED_LET(src, names, gensyms, vals, body)
-#define LETREC(src, names, gensyms, vals, body) \
- SCM_MAKE_EXPANDED_LETREC(src, names, gensyms, vals, body)
+#define LETREC(src, in_order_p, names, gensyms, vals, body) \
+ SCM_MAKE_EXPANDED_LETREC(src, in_order_p, names, gensyms, vals, body)
#define DYNLET(src, fluids, vals, body) \
SCM_MAKE_EXPANDED_DYNLET(src, fluids, vals, body)
@@ -163,6 +163,7 @@ SCM_SYNTAX ("set!", expand_set_x);
SCM_SYNTAX ("and", expand_and);
SCM_SYNTAX ("cond", expand_cond);
SCM_SYNTAX ("letrec", expand_letrec);
+SCM_SYNTAX ("letrec*", expand_letrec_star);
SCM_SYNTAX ("let*", expand_letstar);
SCM_SYNTAX ("or", expand_or);
SCM_SYNTAX ("lambda*", expand_lambda_star);
@@ -984,7 +985,7 @@ expand_named_let (const SCM expr, SCM env)
inner_env = expand_env_extend (inner_env, var_names, var_syms);
return LETREC
- (scm_source_properties (expr),
+ (scm_source_properties (expr), SCM_BOOL_F,
scm_list_1 (name), scm_list_1 (name_sym),
scm_list_1 (LAMBDA (SCM_BOOL_F,
SCM_EOL,
@@ -1030,7 +1031,7 @@ expand_let (SCM expr, SCM env)
}
static SCM
-expand_letrec (SCM expr, SCM env)
+expand_letrec_helper (SCM expr, SCM env, SCM in_order_p)
{
SCM bindings;
@@ -1048,13 +1049,25 @@ expand_letrec (SCM expr, SCM env)
SCM var_names, var_syms, inits;
transform_bindings (bindings, expr, &var_names, &var_syms, &inits);
env = expand_env_extend (env, var_names, var_syms);
- return LETREC (SCM_BOOL_F,
+ return LETREC (SCM_BOOL_F, in_order_p,
var_names, var_syms, expand_exprs (inits, env),
expand_sequence (CDDR (expr), env));
}
}
static SCM
+expand_letrec (SCM expr, SCM env)
+{
+ return expand_letrec_helper (expr, env, SCM_BOOL_F);
+}
+
+static SCM
+expand_letrec_star (SCM expr, SCM env)
+{
+ return expand_letrec_helper (expr, env, SCM_BOOL_T);
+}
+
+static SCM
expand_letstar_clause (SCM bindings, SCM body, SCM env SCM_UNUSED)
{
if (scm_is_null (bindings))
diff --git a/libguile/expand.h b/libguile/expand.h
index d137020..b5d90ed 100644
--- a/libguile/expand.h
+++ b/libguile/expand.h
@@ -301,18 +301,19 @@ enum
#define SCM_EXPANDED_LETREC_TYPE_NAME "letrec"
#define SCM_EXPANDED_LETREC_FIELD_NAMES \
- { "src", "names", "gensyms", "vals", "body", }
+ { "src", "in-order?", "names", "gensyms", "vals", "body", }
enum
{
SCM_EXPANDED_LETREC_SRC,
+ SCM_EXPANDED_LETREC_IN_ORDER_P,
SCM_EXPANDED_LETREC_NAMES,
SCM_EXPANDED_LETREC_GENSYMS,
SCM_EXPANDED_LETREC_VALS,
SCM_EXPANDED_LETREC_BODY,
SCM_NUM_EXPANDED_LETREC_FIELDS,
};
-#define SCM_MAKE_EXPANDED_LETREC(src, names, gensyms, vals, body) \
- scm_c_make_struct (exp_vtables[SCM_EXPANDED_LETREC], 0,
SCM_NUM_EXPANDED_LETREC_FIELDS, SCM_UNPACK (src), SCM_UNPACK (names),
SCM_UNPACK (gensyms), SCM_UNPACK (vals), SCM_UNPACK (body))
+#define SCM_MAKE_EXPANDED_LETREC(src, in_order_p, names, gensyms, vals, body) \
+ scm_c_make_struct (exp_vtables[SCM_EXPANDED_LETREC], 0,
SCM_NUM_EXPANDED_LETREC_FIELDS, SCM_UNPACK (src), SCM_UNPACK (in_order_p),
SCM_UNPACK (names), SCM_UNPACK (gensyms), SCM_UNPACK (vals), SCM_UNPACK (body))
#define SCM_EXPANDED_DYNLET_TYPE_NAME "dynlet"
#define SCM_EXPANDED_DYNLET_FIELD_NAMES \
diff --git a/libguile/memoize.c b/libguile/memoize.c
index 393598e..44c0101 100644
--- a/libguile/memoize.c
+++ b/libguile/memoize.c
@@ -374,33 +374,50 @@ memoize (SCM exp, SCM env)
case SCM_EXPANDED_LETREC:
{
- SCM vars, exps, body, undefs, inits, sets, new_env;
- int i, nvars;
+ SCM vars, exps, body, undefs, new_env;
+ int i, nvars, in_order_p;
- vars = REF (exp, LET, GENSYMS);
- exps = REF (exp, LET, VALS);
- body = REF (exp, LET, BODY);
+ vars = REF (exp, LETREC, GENSYMS);
+ exps = REF (exp, LETREC, VALS);
+ body = REF (exp, LETREC, BODY);
+ in_order_p = scm_is_true (REF (exp, LETREC, IN_ORDER_P));
nvars = i = scm_ilength (vars);
- inits = undefs = sets = SCM_EOL;
+ undefs = SCM_EOL;
new_env = env;
- for (; scm_is_pair (vars); vars = CDR (vars), i--)
+ for (; scm_is_pair (vars); vars = CDR (vars))
{
new_env = scm_cons (CAR (vars), new_env);
undefs = scm_cons (MAKMEMO_QUOTE (SCM_UNDEFINED), undefs);
- sets = scm_cons (MAKMEMO_LEX_SET ((i-1) + nvars,
- MAKMEMO_LEX_REF (i-1)),
- sets);
}
- for (; scm_is_pair (exps); exps = CDR (exps))
- inits = scm_cons (memoize (CAR (exps), new_env), inits);
- inits = scm_reverse_x (inits, SCM_UNDEFINED);
-
- return MAKMEMO_LET
- (undefs,
- MAKMEMO_BEGIN (scm_list_2 (MAKMEMO_LET (inits, MAKMEMO_BEGIN
(sets)),
- memoize (body, new_env))));
+ if (in_order_p)
+ {
+ SCM body_exps = SCM_EOL;
+ for (; scm_is_pair (exps); exps = CDR (exps), i--)
+ body_exps = scm_cons (MAKMEMO_LEX_SET (i-1,
+ memoize (CAR (exps),
new_env)),
+ body_exps);
+ body_exps = scm_cons (memoize (body, new_env), body_exps);
+ body_exps = scm_reverse_x (body_exps, SCM_UNDEFINED);
+ return MAKMEMO_LET (undefs, MAKMEMO_BEGIN (body_exps));
+ }
+ else
+ {
+ SCM sets = SCM_EOL, inits = SCM_EOL;
+ for (; scm_is_pair (exps); exps = CDR (exps), i--)
+ {
+ sets = scm_cons (MAKMEMO_LEX_SET ((i-1) + nvars,
+ MAKMEMO_LEX_REF (i-1)),
+ sets);
+ inits = scm_cons (memoize (CAR (exps), new_env), inits);
+ }
+ inits = scm_reverse_x (inits, SCM_UNDEFINED);
+ return MAKMEMO_LET
+ (undefs,
+ MAKMEMO_BEGIN (scm_list_2 (MAKMEMO_LET (inits, MAKMEMO_BEGIN
(sets)),
+ memoize (body, new_env))));
+ }
}
case SCM_EXPANDED_DYNLET:
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index 3d09dfb..a2afffa 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -254,6 +254,14 @@ If there is no handler at all, Guile prints an error and
then exits."
+;;; {Structs}
+;;;
+
+(define (make-struct/no-tail vtable . args)
+ (apply make-struct vtable 0 args))
+
+
+
;;; {and-map and or-map}
;;;
;;; (and-map fn lst) is like (and (fn (car lst)) (fn (cadr lst)) (fn...) ...)
diff --git a/module/ice-9/compile-psyntax.scm b/module/ice-9/compile-psyntax.scm
index e83a5be..86b94ac 100644
--- a/module/ice-9/compile-psyntax.scm
+++ b/module/ice-9/compile-psyntax.scm
@@ -17,6 +17,7 @@
;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
USA
(use-modules (language tree-il)
+ (language tree-il optimize)
(ice-9 pretty-print))
(let ((source (list-ref (command-line) 1))
@@ -33,7 +34,10 @@
(close-port in))
(begin
(pretty-print (tree-il->scheme
- (macroexpand x 'c '(compile load eval)))
+ (optimize!
+ (macroexpand x 'c '(compile load eval))
+ (current-module)
+ '()))
out)
(newline out)
(loop (read in))))))
diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm
index 7c19d64..2b70c0c 100644
--- a/module/ice-9/psyntax-pp.scm
+++ b/module/ice-9/psyntax-pp.scm
@@ -1,6000 +1,7394 @@
(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
(if #f #f)
-(letrec ((#{and-map*\ 20}#
- (lambda (#{f\ 192}# #{first\ 193}# . #{rest\ 194}#)
- (let ((#{t\ 200}# (null? #{first\ 193}#)))
- (if #{t\ 200}#
- #{t\ 200}#
- (if (null? #{rest\ 194}#)
- (letrec ((#{andmap\ 204}#
- (lambda (#{first\ 205}#)
- (let ((#{x\ 208}# (car #{first\ 205}#))
- (#{first\ 209}# (cdr #{first\ 205}#)))
- (if (null? #{first\ 209}#)
- (#{f\ 192}# #{x\ 208}#)
- (if (#{f\ 192}# #{x\ 208}#)
- (#{andmap\ 204}# #{first\ 209}#)
- #f))))))
- (#{andmap\ 204}# #{first\ 193}#))
- (letrec ((#{andmap\ 215}#
- (lambda (#{first\ 216}# #{rest\ 217}#)
- (let ((#{x\ 222}# (car #{first\ 216}#))
- (#{xr\ 223}# (map car #{rest\ 217}#))
- (#{first\ 224}# (cdr #{first\ 216}#))
- (#{rest\ 225}# (map cdr #{rest\ 217}#)))
- (if (null? #{first\ 224}#)
- (apply #{f\ 192}#
- (cons #{x\ 222}# #{xr\ 223}#))
- (if (apply #{f\ 192}#
- (cons #{x\ 222}# #{xr\ 223}#))
- (#{andmap\ 215}#
- #{first\ 224}#
- #{rest\ 225}#)
- #f))))))
- (#{andmap\ 215}# #{first\ 193}# #{rest\ 194}#))))))))
- (letrec ((#{lambda-var-list\ 487}#
- (lambda (#{vars\ 702}#)
- (letrec ((#{lvl\ 708}#
- (lambda (#{vars\ 709}# #{ls\ 710}# #{w\ 711}#)
- (if (pair? #{vars\ 709}#)
- (#{lvl\ 708}#
- (cdr #{vars\ 709}#)
- (cons (#{wrap\ 441}#
- (car #{vars\ 709}#)
- #{w\ 711}#
- #f)
- #{ls\ 710}#)
- #{w\ 711}#)
- (if (#{id?\ 372}# #{vars\ 709}#)
- (cons (#{wrap\ 441}#
- #{vars\ 709}#
- #{w\ 711}#
- #f)
- #{ls\ 710}#)
- (if (null? #{vars\ 709}#)
- #{ls\ 710}#
- (if (#{syntax-object?\ 336}# #{vars\ 709}#)
- (#{lvl\ 708}#
- (#{syntax-object-expression\ 338}#
- #{vars\ 709}#)
- #{ls\ 710}#
- (#{join-wraps\ 423}#
- #{w\ 711}#
- (#{syntax-object-wrap\ 340}#
- #{vars\ 709}#)))
- (cons #{vars\ 709}# #{ls\ 710}#))))))))
- (#{lvl\ 708}#
- #{vars\ 702}#
+(letrec*
+ ((#{and-map*\ 35}#
+ (lambda (#{f\ 207}# #{first\ 208}# . #{rest\ 209}#)
+ (begin
+ (let ((#{t\ 215}# (null? #{first\ 208}#)))
+ (if #{t\ 215}#
+ #{t\ 215}#
+ (if (null? #{rest\ 209}#)
+ (letrec*
+ ((#{andmap\ 219}#
+ (lambda (#{first\ 220}#)
+ (begin
+ (let ((#{x\ 223}# (car #{first\ 220}#))
+ (#{first\ 224}# (cdr #{first\ 220}#)))
+ (if (null? #{first\ 224}#)
+ (#{f\ 207}# #{x\ 223}#)
+ (if (#{f\ 207}# #{x\ 223}#)
+ (#{andmap\ 219}# #{first\ 224}#)
+ #f)))))))
+ (begin (#{andmap\ 219}# #{first\ 208}#)))
+ (letrec*
+ ((#{andmap\ 230}#
+ (lambda (#{first\ 231}# #{rest\ 232}#)
+ (begin
+ (let ((#{x\ 237}# (car #{first\ 231}#))
+ (#{xr\ 238}# (map car #{rest\ 232}#))
+ (#{first\ 239}# (cdr #{first\ 231}#))
+ (#{rest\ 240}# (map cdr #{rest\ 232}#)))
+ (if (null? #{first\ 239}#)
+ (@apply #{f\ 207}# (cons #{x\ 237}# #{xr\ 238}#))
+ (if (@apply
+ #{f\ 207}#
+ (cons #{x\ 237}# #{xr\ 238}#))
+ (#{andmap\ 230}# #{first\ 239}# #{rest\ 240}#)
+ #f)))))))
+ (begin
+ (#{andmap\ 230}# #{first\ 208}# #{rest\ 209}#))))))))))
+ (begin
+ (let ((#{ribcage?\ 410}# (if #f #f))
+ (#{wrap-subst\ 396}# (if #f #f))
+ (#{wrap-marks\ 394}# (if #f #f))
+ (#{make-wrap\ 392}# (if #f #f))
+ (#{binding-value\ 372}# (if #f #f))
+ (#{binding-type\ 370}# (if #f #f))
+ (#{set-syntax-object-module!\ 363}# (if #f #f))
+ (#{set-syntax-object-wrap!\ 361}# (if #f #f))
+ (#{set-syntax-object-expression!\ 359}#
+ (if #f #f))
+ (#{fx<\ 294}# (if #f #f))
+ (#{fx=\ 292}# (if #f #f))
+ (#{fx-\ 290}# (if #f #f))
+ (#{fx+\ 288}# (if #f #f))
+ (#{make-primitive-ref\ 249}# (if #f #f)))
+ (letrec*
+ ((#{lambda-var-list\ 502}#
+ (lambda (#{vars\ 717}#)
+ (letrec*
+ ((#{lvl\ 723}#
+ (lambda (#{vars\ 724}# #{ls\ 725}# #{w\ 726}#)
+ (if (pair? #{vars\ 724}#)
+ (#{lvl\ 723}#
+ (cdr #{vars\ 724}#)
+ (cons (#{wrap\ 456}# (car #{vars\ 724}#) #{w\ 726}# #f)
+ #{ls\ 725}#)
+ #{w\ 726}#)
+ (if (#{id?\ 387}# #{vars\ 724}#)
+ (cons (#{wrap\ 456}# #{vars\ 724}# #{w\ 726}# #f)
+ #{ls\ 725}#)
+ (if (null? #{vars\ 724}#)
+ #{ls\ 725}#
+ (if (#{syntax-object?\ 351}# #{vars\ 724}#)
+ (#{lvl\ 723}#
+ (#{syntax-object-expression\ 353}# #{vars\ 724}#)
+ #{ls\ 725}#
+ (#{join-wraps\ 438}#
+ #{w\ 726}#
+ (#{syntax-object-wrap\ 355}# #{vars\ 724}#)))
+ (cons #{vars\ 724}# #{ls\ 725}#))))))))
+ (begin
+ (#{lvl\ 723}#
+ #{vars\ 717}#
'()
- '(())))))
- (#{gen-var\ 485}#
- (lambda (#{id\ 722}#)
- (let ((#{id\ 725}#
- (if (#{syntax-object?\ 336}# #{id\ 722}#)
- (#{syntax-object-expression\ 338}# #{id\ 722}#)
- #{id\ 722}#)))
+ '(()))))))
+ (#{gen-var\ 500}#
+ (lambda (#{id\ 737}#)
+ (begin
+ (let ((#{id\ 740}#
+ (if (#{syntax-object?\ 351}# #{id\ 737}#)
+ (#{syntax-object-expression\ 353}# #{id\ 737}#)
+ #{id\ 737}#)))
(gensym
- (string-append (symbol->string #{id\ 725}#) " ")))))
- (#{strip\ 483}#
- (lambda (#{x\ 727}# #{w\ 728}#)
- (if (memq 'top
- (#{wrap-marks\ 379}# #{w\ 728}#))
- #{x\ 727}#
- (letrec ((#{f\ 734}# (lambda (#{x\ 735}#)
- (if (#{syntax-object?\ 336}#
- #{x\ 735}#)
- (#{strip\ 483}#
- (#{syntax-object-expression\ 338}#
- #{x\ 735}#)
- (#{syntax-object-wrap\ 340}#
- #{x\ 735}#))
- (if (pair? #{x\ 735}#)
- (let ((#{a\ 742}# (#{f\ 734}# (car
#{x\ 735}#)))
- (#{d\ 743}# (#{f\ 734}# (cdr
#{x\ 735}#))))
- (if (if (eq? #{a\ 742}#
- (car #{x\ 735}#))
- (eq? #{d\ 743}#
- (cdr #{x\ 735}#))
- #f)
- #{x\ 735}#
- (cons #{a\ 742}# #{d\ 743}#)))
- (if (vector? #{x\ 735}#)
- (let ((#{old\ 749}#
- (vector->list
- #{x\ 735}#)))
- (let ((#{new\ 751}#
- (map #{f\ 734}#
- #{old\ 749}#)))
- (if (#{and-map*\ 20}#
- eq?
- #{old\ 749}#
- #{new\ 751}#)
- #{x\ 735}#
- (list->vector
- #{new\ 751}#))))
- #{x\ 735}#))))))
- (#{f\ 734}# #{x\ 727}#)))))
- (#{chi-lambda-case\ 481}#
- (lambda (#{e\ 753}#
- #{r\ 754}#
- #{w\ 755}#
- #{s\ 756}#
- #{mod\ 757}#
- #{get-formals\ 758}#
- #{clauses\ 759}#)
- (letrec ((#{expand-body\ 774}#
- (lambda (#{req\ 775}#
- #{opt\ 776}#
- #{rest\ 777}#
- #{kw\ 778}#
- #{body\ 779}#
- #{vars\ 780}#
- #{r*\ 781}#
- #{w*\ 782}#
- #{inits\ 783}#
- #{meta\ 784}#)
- ((lambda (#{tmp\ 795}#)
- ((lambda (#{tmp\ 796}#)
- (if (if #{tmp\ 796}#
- (apply (lambda (#{docstring\ 800}#
- #{e1\ 801}#
- #{e2\ 802}#)
- (string?
- (syntax->datum
- #{docstring\ 800}#)))
- #{tmp\ 796}#)
- #f)
- (apply (lambda (#{docstring\ 806}#
- #{e1\ 807}#
- #{e2\ 808}#)
- (#{expand-body\ 774}#
- #{req\ 775}#
- #{opt\ 776}#
- #{rest\ 777}#
- #{kw\ 778}#
- (cons #{e1\ 807}# #{e2\ 808}#)
- #{vars\ 780}#
- #{r*\ 781}#
- #{w*\ 782}#
- #{inits\ 783}#
- (append
- #{meta\ 784}#
- (list (cons 'documentation
- (syntax->datum
- #{docstring\
806}#))))))
- #{tmp\ 796}#)
- ((lambda (#{tmp\ 811}#)
- (if #{tmp\ 811}#
- (apply (lambda (#{k\ 816}#
- #{v\ 817}#
- #{e1\ 818}#
- #{e2\ 819}#)
- (#{expand-body\ 774}#
- #{req\ 775}#
- #{opt\ 776}#
- #{rest\ 777}#
- #{kw\ 778}#
- (cons #{e1\ 818}#
- #{e2\ 819}#)
- #{vars\ 780}#
- #{r*\ 781}#
- #{w*\ 782}#
- #{inits\ 783}#
- (append
- #{meta\ 784}#
- (syntax->datum
- (map cons
- #{k\ 816}#
- #{v\ 817}#)))))
- #{tmp\ 811}#)
- ((lambda (#{tmp\ 823}#)
- (if #{tmp\ 823}#
- (apply (lambda (#{e1\ 826}#
- #{e2\ 827}#)
- (values
- #{meta\ 784}#
- #{req\ 775}#
- #{opt\ 776}#
- #{rest\ 777}#
- #{kw\ 778}#
- #{inits\ 783}#
- #{vars\ 780}#
- (#{chi-body\ 465}#
- (cons #{e1\ 826}#
- #{e2\ 827}#)
- (#{source-wrap\
443}#
- #{e\ 753}#
- #{w\ 755}#
- #{s\ 756}#
- #{mod\ 757}#)
- #{r*\ 781}#
- #{w*\ 782}#
- #{mod\ 757}#)))
- #{tmp\ 823}#)
- (syntax-violation
- #f
- "source expression failed to
match any pattern"
- #{tmp\ 795}#)))
- ($sc-dispatch
- #{tmp\ 795}#
- '(any . each-any)))))
- ($sc-dispatch
- #{tmp\ 795}#
- '(#(vector #(each (any . any)))
- any
- .
- each-any)))))
- ($sc-dispatch
- #{tmp\ 795}#
- '(any any . each-any))))
- #{body\ 779}#)))
- (#{expand-kw\ 772}#
- (lambda (#{req\ 829}#
- #{opt\ 830}#
- #{rest\ 831}#
- #{kw\ 832}#
- #{body\ 833}#
- #{vars\ 834}#
- #{r*\ 835}#
- #{w*\ 836}#
- #{aok\ 837}#
- #{out\ 838}#
- #{inits\ 839}#)
- (if (pair? #{kw\ 832}#)
- ((lambda (#{tmp\ 853}#)
- ((lambda (#{tmp\ 854}#)
- (if #{tmp\ 854}#
- (apply (lambda (#{k\ 858}#
- #{id\ 859}#
- #{i\ 860}#)
- (let ((#{v\ 863}# (#{gen-var\
485}#
- #{id\
859}#)))
- (let ((#{l\ 865}#
(#{gen-labels\ 390}#
- (list
#{v\ 863}#))))
- (let ((#{r**\ 867}#
- (#{extend-var-env\
362}#
- #{l\ 865}#
- (list #{v\ 863}#)
- #{r*\ 835}#)))
- (let ((#{w**\ 869}#
-
(#{make-binding-wrap\ 419}#
- (list #{id\
859}#)
- #{l\ 865}#
- #{w*\ 836}#)))
- (#{expand-kw\ 772}#
- #{req\ 829}#
- #{opt\ 830}#
- #{rest\ 831}#
- (cdr #{kw\ 832}#)
- #{body\ 833}#
- (cons #{v\ 863}#
- #{vars\ 834}#)
- #{r**\ 867}#
- #{w**\ 869}#
- #{aok\ 837}#
- (cons (list
(syntax->datum
- #{k\
858}#)
-
(syntax->datum
- #{id\
859}#)
- #{v\
863}#)
- #{out\ 838}#)
- (cons (#{chi\ 457}#
- #{i\ 860}#
- #{r*\ 835}#
- #{w*\ 836}#
- #{mod\ 757}#)
- #{inits\
839}#)))))))
- #{tmp\ 854}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp\ 853}#)))
- ($sc-dispatch
- #{tmp\ 853}#
- '(any any any))))
- (car #{kw\ 832}#))
- (#{expand-body\ 774}#
- #{req\ 829}#
- #{opt\ 830}#
- #{rest\ 831}#
- (if (let ((#{t\ 873}# #{aok\ 837}#))
- (if #{t\ 873}#
- #{t\ 873}#
- (pair? #{out\ 838}#)))
- (cons #{aok\ 837}# (reverse #{out\ 838}#))
- #f)
- #{body\ 833}#
- (reverse #{vars\ 834}#)
- #{r*\ 835}#
- #{w*\ 836}#
- (reverse #{inits\ 839}#)
- '()))))
- (#{expand-opt\ 770}#
- (lambda (#{req\ 875}#
- #{opt\ 876}#
- #{rest\ 877}#
- #{kw\ 878}#
- #{body\ 879}#
- #{vars\ 880}#
- #{r*\ 881}#
- #{w*\ 882}#
- #{out\ 883}#
- #{inits\ 884}#)
- (if (pair? #{opt\ 876}#)
- ((lambda (#{tmp\ 897}#)
- ((lambda (#{tmp\ 898}#)
- (if #{tmp\ 898}#
- (apply (lambda (#{id\ 901}# #{i\ 902}#)
- (let ((#{v\ 905}# (#{gen-var\
485}#
- #{id\
901}#)))
- (let ((#{l\ 907}#
(#{gen-labels\ 390}#
- (list
#{v\ 905}#))))
- (let ((#{r**\ 909}#
- (#{extend-var-env\
362}#
- #{l\ 907}#
- (list #{v\ 905}#)
- #{r*\ 881}#)))
- (let ((#{w**\ 911}#
-
(#{make-binding-wrap\ 419}#
- (list #{id\
901}#)
- #{l\ 907}#
- #{w*\ 882}#)))
- (#{expand-opt\ 770}#
- #{req\ 875}#
- (cdr #{opt\ 876}#)
- #{rest\ 877}#
- #{kw\ 878}#
- #{body\ 879}#
- (cons #{v\ 905}#
- #{vars\ 880}#)
- #{r**\ 909}#
- #{w**\ 911}#
- (cons (syntax->datum
- #{id\ 901}#)
- #{out\ 883}#)
- (cons (#{chi\ 457}#
- #{i\ 902}#
- #{r*\ 881}#
- #{w*\ 882}#
- #{mod\ 757}#)
- #{inits\
884}#)))))))
- #{tmp\ 898}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp\ 897}#)))
+ (string-append (symbol->string #{id\ 740}#) " "))))))
+ (#{strip\ 498}#
+ (lambda (#{x\ 742}# #{w\ 743}#)
+ (if (memq 'top
+ (#{wrap-marks\ 394}# #{w\ 743}#))
+ #{x\ 742}#
+ (letrec*
+ ((#{f\ 749}# (lambda (#{x\ 750}#)
+ (if (#{syntax-object?\ 351}# #{x\ 750}#)
+ (#{strip\ 498}#
+ (#{syntax-object-expression\ 353}#
+ #{x\ 750}#)
+ (#{syntax-object-wrap\ 355}# #{x\ 750}#))
+ (if (pair? #{x\ 750}#)
+ (begin
+ (let ((#{a\ 757}# (#{f\ 749}# (car #{x\
750}#)))
+ (#{d\ 758}# (#{f\ 749}# (cdr #{x\
750}#))))
+ (if (if (eq? #{a\ 757}#
+ (car #{x\ 750}#))
+ (eq? #{d\ 758}# (cdr #{x\ 750}#))
+ #f)
+ #{x\ 750}#
+ (cons #{a\ 757}# #{d\ 758}#))))
+ (if (vector? #{x\ 750}#)
+ (begin
+ (let ((#{old\ 764}#
+ (vector->list #{x\ 750}#)))
+ (begin
+ (let ((#{new\ 766}#
+ (map #{f\ 749}#
+ #{old\ 764}#)))
+ (if (#{and-map*\ 35}#
+ eq?
+ #{old\ 764}#
+ #{new\ 766}#)
+ #{x\ 750}#
+ (list->vector
+ #{new\ 766}#))))))
+ #{x\ 750}#))))))
+ (begin (#{f\ 749}# #{x\ 742}#))))))
+ (#{chi-lambda-case\ 496}#
+ (lambda (#{e\ 768}#
+ #{r\ 769}#
+ #{w\ 770}#
+ #{s\ 771}#
+ #{mod\ 772}#
+ #{get-formals\ 773}#
+ #{clauses\ 774}#)
+ (letrec*
+ ((#{expand-body\ 789}#
+ (lambda (#{req\ 790}#
+ #{opt\ 791}#
+ #{rest\ 792}#
+ #{kw\ 793}#
+ #{body\ 794}#
+ #{vars\ 795}#
+ #{r*\ 796}#
+ #{w*\ 797}#
+ #{inits\ 798}#
+ #{meta\ 799}#)
+ (let ((#{tmp\ 810}# #{body\ 794}#))
+ (let ((#{tmp\ 811}#
+ ($sc-dispatch
+ #{tmp\ 810}#
+ '(any any . each-any))))
+ (if (if #{tmp\ 811}#
+ (@apply
+ (lambda (#{docstring\ 815}#
+ #{e1\ 816}#
+ #{e2\ 817}#)
+ (string? (syntax->datum #{docstring\ 815}#)))
+ #{tmp\ 811}#)
+ #f)
+ (@apply
+ (lambda (#{docstring\ 821}#
+ #{e1\ 822}#
+ #{e2\ 823}#)
+ (#{expand-body\ 789}#
+ #{req\ 790}#
+ #{opt\ 791}#
+ #{rest\ 792}#
+ #{kw\ 793}#
+ (cons #{e1\ 822}# #{e2\ 823}#)
+ #{vars\ 795}#
+ #{r*\ 796}#
+ #{w*\ 797}#
+ #{inits\ 798}#
+ (append
+ #{meta\ 799}#
+ (list (cons 'documentation
+ (syntax->datum
+ #{docstring\ 821}#))))))
+ #{tmp\ 811}#)
+ (let ((#{tmp\ 826}#
($sc-dispatch
- #{tmp\ 897}#
- '(any any))))
- (car #{opt\ 876}#))
- (if #{rest\ 877}#
- (let ((#{v\ 916}# (#{gen-var\ 485}#
- #{rest\ 877}#)))
- (let ((#{l\ 918}# (#{gen-labels\ 390}#
- (list #{v\ 916}#))))
- (let ((#{r*\ 920}#
- (#{extend-var-env\ 362}#
- #{l\ 918}#
- (list #{v\ 916}#)
- #{r*\ 881}#)))
- (let ((#{w*\ 922}#
- (#{make-binding-wrap\ 419}#
- (list #{rest\ 877}#)
- #{l\ 918}#
- #{w*\ 882}#)))
- (#{expand-kw\ 772}#
- #{req\ 875}#
- (if (pair? #{out\ 883}#)
- (reverse #{out\ 883}#)
+ #{tmp\ 810}#
+ '(#(vector #(each (any . any)))
+ any
+ .
+ each-any))))
+ (if #{tmp\ 826}#
+ (@apply
+ (lambda (#{k\ 831}#
+ #{v\ 832}#
+ #{e1\ 833}#
+ #{e2\ 834}#)
+ (#{expand-body\ 789}#
+ #{req\ 790}#
+ #{opt\ 791}#
+ #{rest\ 792}#
+ #{kw\ 793}#
+ (cons #{e1\ 833}# #{e2\ 834}#)
+ #{vars\ 795}#
+ #{r*\ 796}#
+ #{w*\ 797}#
+ #{inits\ 798}#
+ (append
+ #{meta\ 799}#
+ (syntax->datum
+ (map cons #{k\ 831}# #{v\ 832}#)))))
+ #{tmp\ 826}#)
+ (let ((#{tmp\ 838}#
+ ($sc-dispatch
+ #{tmp\ 810}#
+ '(any . each-any))))
+ (if #{tmp\ 838}#
+ (@apply
+ (lambda (#{e1\ 841}# #{e2\ 842}#)
+ (values
+ #{meta\ 799}#
+ #{req\ 790}#
+ #{opt\ 791}#
+ #{rest\ 792}#
+ #{kw\ 793}#
+ #{inits\ 798}#
+ #{vars\ 795}#
+ (#{chi-body\ 480}#
+ (cons #{e1\ 841}# #{e2\ 842}#)
+ (#{source-wrap\ 458}#
+ #{e\ 768}#
+ #{w\ 770}#
+ #{s\ 771}#
+ #{mod\ 772}#)
+ #{r*\ 796}#
+ #{w*\ 797}#
+ #{mod\ 772}#)))
+ #{tmp\ 838}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp\ 810}#))))))))))
+ (#{expand-kw\ 787}#
+ (lambda (#{req\ 844}#
+ #{opt\ 845}#
+ #{rest\ 846}#
+ #{kw\ 847}#
+ #{body\ 848}#
+ #{vars\ 849}#
+ #{r*\ 850}#
+ #{w*\ 851}#
+ #{aok\ 852}#
+ #{out\ 853}#
+ #{inits\ 854}#)
+ (if (pair? #{kw\ 847}#)
+ (let ((#{tmp\ 868}# (car #{kw\ 847}#)))
+ (let ((#{tmp\ 869}#
+ ($sc-dispatch
+ #{tmp\ 868}#
+ '(any any any))))
+ (if #{tmp\ 869}#
+ (@apply
+ (lambda (#{k\ 873}# #{id\ 874}# #{i\ 875}#)
+ (begin
+ (let ((#{v\ 878}# (#{gen-var\ 500}#
+ #{id\ 874}#)))
+ (begin
+ (let ((#{l\ 880}# (#{gen-labels\ 405}#
+ (list #{v\ 878}#))))
+ (begin
+ (let ((#{r**\ 882}#
+ (#{extend-var-env\ 377}#
+ #{l\ 880}#
+ (list #{v\ 878}#)
+ #{r*\ 850}#)))
+ (begin
+ (let ((#{w**\ 884}#
+ (#{make-binding-wrap\
434}#
+ (list #{id\ 874}#)
+ #{l\ 880}#
+ #{w*\ 851}#)))
+ (#{expand-kw\ 787}#
+ #{req\ 844}#
+ #{opt\ 845}#
+ #{rest\ 846}#
+ (cdr #{kw\ 847}#)
+ #{body\ 848}#
+ (cons #{v\ 878}#
+ #{vars\ 849}#)
+ #{r**\ 882}#
+ #{w**\ 884}#
+ #{aok\ 852}#
+ (cons (list (syntax->datum
+ #{k\ 873}#)
+ (syntax->datum
+ #{id\ 874}#)
+ #{v\ 878}#)
+ #{out\ 853}#)
+ (cons (#{chi\ 472}#
+ #{i\ 875}#
+ #{r*\ 850}#
+ #{w*\ 851}#
+ #{mod\ 772}#)
+ #{inits\
854}#)))))))))))
+ #{tmp\ 869}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 868}#))))
+ (#{expand-body\ 789}#
+ #{req\ 844}#
+ #{opt\ 845}#
+ #{rest\ 846}#
+ (if (begin
+ (let ((#{t\ 888}# #{aok\ 852}#))
+ (if #{t\ 888}#
+ #{t\ 888}#
+ (pair? #{out\ 853}#))))
+ (cons #{aok\ 852}# (reverse #{out\ 853}#))
+ #f)
+ #{body\ 848}#
+ (reverse #{vars\ 849}#)
+ #{r*\ 850}#
+ #{w*\ 851}#
+ (reverse #{inits\ 854}#)
+ '()))))
+ (#{expand-opt\ 785}#
+ (lambda (#{req\ 890}#
+ #{opt\ 891}#
+ #{rest\ 892}#
+ #{kw\ 893}#
+ #{body\ 894}#
+ #{vars\ 895}#
+ #{r*\ 896}#
+ #{w*\ 897}#
+ #{out\ 898}#
+ #{inits\ 899}#)
+ (if (pair? #{opt\ 891}#)
+ (let ((#{tmp\ 912}# (car #{opt\ 891}#)))
+ (let ((#{tmp\ 913}#
+ ($sc-dispatch #{tmp\ 912}# (quote (any any)))))
+ (if #{tmp\ 913}#
+ (@apply
+ (lambda (#{id\ 916}# #{i\ 917}#)
+ (begin
+ (let ((#{v\ 920}# (#{gen-var\ 500}#
+ #{id\ 916}#)))
+ (begin
+ (let ((#{l\ 922}# (#{gen-labels\ 405}#
+ (list #{v\ 920}#))))
+ (begin
+ (let ((#{r**\ 924}#
+ (#{extend-var-env\ 377}#
+ #{l\ 922}#
+ (list #{v\ 920}#)
+ #{r*\ 896}#)))
+ (begin
+ (let ((#{w**\ 926}#
+ (#{make-binding-wrap\
434}#
+ (list #{id\ 916}#)
+ #{l\ 922}#
+ #{w*\ 897}#)))
+ (#{expand-opt\ 785}#
+ #{req\ 890}#
+ (cdr #{opt\ 891}#)
+ #{rest\ 892}#
+ #{kw\ 893}#
+ #{body\ 894}#
+ (cons #{v\ 920}#
+ #{vars\ 895}#)
+ #{r**\ 924}#
+ #{w**\ 926}#
+ (cons (syntax->datum
+ #{id\ 916}#)
+ #{out\ 898}#)
+ (cons (#{chi\ 472}#
+ #{i\ 917}#
+ #{r*\ 896}#
+ #{w*\ 897}#
+ #{mod\ 772}#)
+ #{inits\
899}#)))))))))))
+ #{tmp\ 913}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 912}#))))
+ (if #{rest\ 892}#
+ (begin
+ (let ((#{v\ 931}# (#{gen-var\ 500}# #{rest\ 892}#)))
+ (begin
+ (let ((#{l\ 933}# (#{gen-labels\ 405}#
+ (list #{v\ 931}#))))
+ (begin
+ (let ((#{r*\ 935}#
+ (#{extend-var-env\ 377}#
+ #{l\ 933}#
+ (list #{v\ 931}#)
+ #{r*\ 896}#)))
+ (begin
+ (let ((#{w*\ 937}#
+ (#{make-binding-wrap\ 434}#
+ (list #{rest\ 892}#)
+ #{l\ 933}#
+ #{w*\ 897}#)))
+ (#{expand-kw\ 787}#
+ #{req\ 890}#
+ (if (pair? #{out\ 898}#)
+ (reverse #{out\ 898}#)
#f)
- (syntax->datum #{rest\ 877}#)
- (if (pair? #{kw\ 878}#)
- (cdr #{kw\ 878}#)
- #{kw\ 878}#)
- #{body\ 879}#
- (cons #{v\ 916}# #{vars\ 880}#)
- #{r*\ 920}#
- #{w*\ 922}#
- (if (pair? #{kw\ 878}#)
- (car #{kw\ 878}#)
+ (syntax->datum #{rest\ 892}#)
+ (if (pair? #{kw\ 893}#)
+ (cdr #{kw\ 893}#)
+ #{kw\ 893}#)
+ #{body\ 894}#
+ (cons #{v\ 931}# #{vars\ 895}#)
+ #{r*\ 935}#
+ #{w*\ 937}#
+ (if (pair? #{kw\ 893}#)
+ (car #{kw\ 893}#)
#f)
'()
- #{inits\ 884}#)))))
- (#{expand-kw\ 772}#
- #{req\ 875}#
- (if (pair? #{out\ 883}#)
- (reverse #{out\ 883}#)
- #f)
- #f
- (if (pair? #{kw\ 878}#)
- (cdr #{kw\ 878}#)
- #{kw\ 878}#)
- #{body\ 879}#
- #{vars\ 880}#
- #{r*\ 881}#
- #{w*\ 882}#
- (if (pair? #{kw\ 878}#) (car #{kw\ 878}#) #f)
- '()
- #{inits\ 884}#)))))
- (#{expand-req\ 768}#
- (lambda (#{req\ 924}#
- #{opt\ 925}#
- #{rest\ 926}#
- #{kw\ 927}#
- #{body\ 928}#)
- (let ((#{vars\ 936}#
- (map #{gen-var\ 485}# #{req\ 924}#))
- (#{labels\ 937}#
- (#{gen-labels\ 390}# #{req\ 924}#)))
- (let ((#{r*\ 940}#
- (#{extend-var-env\ 362}#
- #{labels\ 937}#
- #{vars\ 936}#
- #{r\ 754}#))
- (#{w*\ 941}#
- (#{make-binding-wrap\ 419}#
- #{req\ 924}#
- #{labels\ 937}#
- #{w\ 755}#)))
- (#{expand-opt\ 770}#
- (map syntax->datum #{req\ 924}#)
- #{opt\ 925}#
- #{rest\ 926}#
- #{kw\ 927}#
- #{body\ 928}#
- (reverse #{vars\ 936}#)
- #{r*\ 940}#
- #{w*\ 941}#
- '()
- '()))))))
- ((lambda (#{tmp\ 942}#)
- ((lambda (#{tmp\ 943}#)
- (if #{tmp\ 943}#
- (apply (lambda () (values (quote ()) #f))
- #{tmp\ 943}#)
- ((lambda (#{tmp\ 944}#)
- (if #{tmp\ 944}#
- (apply (lambda (#{args\ 951}#
- #{e1\ 952}#
- #{e2\ 953}#
- #{args*\ 954}#
- #{e1*\ 955}#
- #{e2*\ 956}#)
+ #{inits\ 899}#)))))))))
+ (#{expand-kw\ 787}#
+ #{req\ 890}#
+ (if (pair? #{out\ 898}#)
+ (reverse #{out\ 898}#)
+ #f)
+ #f
+ (if (pair? #{kw\ 893}#)
+ (cdr #{kw\ 893}#)
+ #{kw\ 893}#)
+ #{body\ 894}#
+ #{vars\ 895}#
+ #{r*\ 896}#
+ #{w*\ 897}#
+ (if (pair? #{kw\ 893}#) (car #{kw\ 893}#) #f)
+ '()
+ #{inits\ 899}#)))))
+ (#{expand-req\ 783}#
+ (lambda (#{req\ 939}#
+ #{opt\ 940}#
+ #{rest\ 941}#
+ #{kw\ 942}#
+ #{body\ 943}#)
+ (begin
+ (let ((#{vars\ 951}#
+ (map #{gen-var\ 500}# #{req\ 939}#))
+ (#{labels\ 952}#
+ (#{gen-labels\ 405}# #{req\ 939}#)))
+ (begin
+ (let ((#{r*\ 955}#
+ (#{extend-var-env\ 377}#
+ #{labels\ 952}#
+ #{vars\ 951}#
+ #{r\ 769}#))
+ (#{w*\ 956}#
+ (#{make-binding-wrap\ 434}#
+ #{req\ 939}#
+ #{labels\ 952}#
+ #{w\ 770}#)))
+ (#{expand-opt\ 785}#
+ (map syntax->datum #{req\ 939}#)
+ #{opt\ 940}#
+ #{rest\ 941}#
+ #{kw\ 942}#
+ #{body\ 943}#
+ (reverse #{vars\ 951}#)
+ #{r*\ 955}#
+ #{w*\ 956}#
+ '()
+ '()))))))))
+ (begin
+ (let ((#{tmp\ 957}# #{clauses\ 774}#))
+ (let ((#{tmp\ 958}#
+ ($sc-dispatch #{tmp\ 957}# (quote ()))))
+ (if #{tmp\ 958}#
+ (@apply
+ (lambda () (values (quote ()) #f))
+ #{tmp\ 958}#)
+ (let ((#{tmp\ 959}#
+ ($sc-dispatch
+ #{tmp\ 957}#
+ '((any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if #{tmp\ 959}#
+ (@apply
+ (lambda (#{args\ 966}#
+ #{e1\ 967}#
+ #{e2\ 968}#
+ #{args*\ 969}#
+ #{e1*\ 970}#
+ #{e2*\ 971}#)
+ (call-with-values
+ (lambda ()
+ (#{get-formals\ 773}# #{args\ 966}#))
+ (lambda (#{req\ 972}#
+ #{opt\ 973}#
+ #{rest\ 974}#
+ #{kw\ 975}#)
+ (call-with-values
+ (lambda ()
+ (#{expand-req\ 783}#
+ #{req\ 972}#
+ #{opt\ 973}#
+ #{rest\ 974}#
+ #{kw\ 975}#
+ (cons #{e1\ 967}# #{e2\ 968}#)))
+ (lambda (#{meta\ 981}#
+ #{req\ 982}#
+ #{opt\ 983}#
+ #{rest\ 984}#
+ #{kw\ 985}#
+ #{inits\ 986}#
+ #{vars\ 987}#
+ #{body\ 988}#)
(call-with-values
(lambda ()
- (#{get-formals\ 758}#
- #{args\ 951}#))
- (lambda (#{req\ 957}#
- #{opt\ 958}#
- #{rest\ 959}#
- #{kw\ 960}#)
- (call-with-values
- (lambda ()
- (#{expand-req\ 768}#
- #{req\ 957}#
- #{opt\ 958}#
- #{rest\ 959}#
- #{kw\ 960}#
- (cons #{e1\ 952}#
- #{e2\ 953}#)))
- (lambda (#{meta\ 966}#
- #{req\ 967}#
- #{opt\ 968}#
- #{rest\ 969}#
- #{kw\ 970}#
- #{inits\ 971}#
- #{vars\ 972}#
- #{body\ 973}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case\ 481}#
- #{e\ 753}#
- #{r\ 754}#
- #{w\ 755}#
- #{s\ 756}#
- #{mod\ 757}#
- #{get-formals\ 758}#
- (map (lambda (#{tmp\ 984}#
- #{tmp\ 983}#
- #{tmp\
982}#)
- (cons #{tmp\ 982}#
- (cons #{tmp\
983}#
- #{tmp\
984}#)))
- #{e2*\ 956}#
- #{e1*\ 955}#
- #{args*\ 954}#)))
- (lambda (#{meta*\ 986}#
- #{else*\ 987}#)
- (values
- (append
- #{meta\ 966}#
- #{meta*\ 986}#)
- (#{build-lambda-case\
318}#
- #{s\ 756}#
- #{req\ 967}#
- #{opt\ 968}#
- #{rest\ 969}#
- #{kw\ 970}#
- #{inits\ 971}#
- #{vars\ 972}#
- #{body\ 973}#
- #{else*\ 987}#)))))))))
- #{tmp\ 944}#)
- (syntax-violation
+ (#{chi-lambda-case\ 496}#
+ #{e\ 768}#
+ #{r\ 769}#
+ #{w\ 770}#
+ #{s\ 771}#
+ #{mod\ 772}#
+ #{get-formals\ 773}#
+ (map (lambda (#{tmp\ 999}#
+ #{tmp\ 998}#
+ #{tmp\ 997}#)
+ (cons #{tmp\ 997}#
+ (cons #{tmp\ 998}#
+ #{tmp\ 999}#)))
+ #{e2*\ 971}#
+ #{e1*\ 970}#
+ #{args*\ 969}#)))
+ (lambda (#{meta*\ 1001}#
+ #{else*\ 1002}#)
+ (values
+ (append
+ #{meta\ 981}#
+ #{meta*\ 1001}#)
+ (#{build-lambda-case\ 333}#
+ #{s\ 771}#
+ #{req\ 982}#
+ #{opt\ 983}#
+ #{rest\ 984}#
+ #{kw\ 985}#
+ #{inits\ 986}#
+ #{vars\ 987}#
+ #{body\ 988}#
+ #{else*\ 1002}#)))))))))
+ #{tmp\ 959}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 957}#))))))))))
+ (#{lambda*-formals\ 494}#
+ (lambda (#{orig-args\ 1005}#)
+ (letrec*
+ ((#{check\ 1016}#
+ (lambda (#{req\ 1017}#
+ #{opt\ 1018}#
+ #{rest\ 1019}#
+ #{kw\ 1020}#)
+ (if (#{distinct-bound-ids?\ 452}#
+ (append
+ #{req\ 1017}#
+ (map car #{opt\ 1018}#)
+ (if #{rest\ 1019}#
+ (list #{rest\ 1019}#)
+ '())
+ (if (pair? #{kw\ 1020}#)
+ (map cadr (cdr #{kw\ 1020}#))
+ '())))
+ (values
+ #{req\ 1017}#
+ #{opt\ 1018}#
+ #{rest\ 1019}#
+ #{kw\ 1020}#)
+ (syntax-violation
+ 'lambda*
+ "duplicate identifier in argument list"
+ #{orig-args\ 1005}#))))
+ (#{rest\ 1014}#
+ (lambda (#{args\ 1028}#
+ #{req\ 1029}#
+ #{opt\ 1030}#
+ #{kw\ 1031}#)
+ (let ((#{tmp\ 1036}# #{args\ 1028}#))
+ (let ((#{tmp\ 1037}# (list #{tmp\ 1036}#)))
+ (if (if #{tmp\ 1037}#
+ (@apply
+ (lambda (#{r\ 1039}#)
+ (#{id?\ 387}# #{r\ 1039}#))
+ #{tmp\ 1037}#)
+ #f)
+ (@apply
+ (lambda (#{r\ 1041}#)
+ (#{check\ 1016}#
+ #{req\ 1029}#
+ #{opt\ 1030}#
+ #{r\ 1041}#
+ #{kw\ 1031}#))
+ #{tmp\ 1037}#)
+ (let ((#{else\ 1043}# #{tmp\ 1036}#))
+ (syntax-violation
+ 'lambda*
+ "invalid rest argument"
+ #{orig-args\ 1005}#
+ #{args\ 1028}#)))))))
+ (#{key\ 1012}#
+ (lambda (#{args\ 1044}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ #{rkey\ 1047}#)
+ (let ((#{tmp\ 1052}# #{args\ 1044}#))
+ (let ((#{tmp\ 1053}#
+ ($sc-dispatch #{tmp\ 1052}# (quote ()))))
+ (if #{tmp\ 1053}#
+ (@apply
+ (lambda ()
+ (#{check\ 1016}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
#f
- "source expression failed to match any pattern"
- #{tmp\ 942}#)))
- ($sc-dispatch
- #{tmp\ 942}#
- '((any any . each-any)
- .
- #(each (any any . each-any)))))))
- ($sc-dispatch #{tmp\ 942}# (quote ()))))
- #{clauses\ 759}#))))
- (#{lambda*-formals\ 479}#
- (lambda (#{orig-args\ 990}#)
- (letrec ((#{check\ 1001}#
- (lambda (#{req\ 1002}#
- #{opt\ 1003}#
- #{rest\ 1004}#
- #{kw\ 1005}#)
- (if (#{distinct-bound-ids?\ 437}#
- (append
- #{req\ 1002}#
- (map car #{opt\ 1003}#)
- (if #{rest\ 1004}#
- (list #{rest\ 1004}#)
- '())
- (if (pair? #{kw\ 1005}#)
- (map cadr (cdr #{kw\ 1005}#))
- '())))
- (values
- #{req\ 1002}#
- #{opt\ 1003}#
- #{rest\ 1004}#
- #{kw\ 1005}#)
- (syntax-violation
- 'lambda*
- "duplicate identifier in argument list"
- #{orig-args\ 990}#))))
- (#{rest\ 999}#
- (lambda (#{args\ 1013}#
- #{req\ 1014}#
- #{opt\ 1015}#
- #{kw\ 1016}#)
- ((lambda (#{tmp\ 1021}#)
- ((lambda (#{tmp\ 1022}#)
- (if (if #{tmp\ 1022}#
- (apply (lambda (#{r\ 1024}#)
- (#{id?\ 372}# #{r\ 1024}#))
- #{tmp\ 1022}#)
- #f)
- (apply (lambda (#{r\ 1026}#)
- (#{check\ 1001}#
- #{req\ 1014}#
- #{opt\ 1015}#
- #{r\ 1026}#
- #{kw\ 1016}#))
- #{tmp\ 1022}#)
- ((lambda (#{else\ 1028}#)
- (syntax-violation
- 'lambda*
- "invalid rest argument"
- #{orig-args\ 990}#
- #{args\ 1013}#))
- #{tmp\ 1021}#)))
- (list #{tmp\ 1021}#)))
- #{args\ 1013}#)))
- (#{key\ 997}#
- (lambda (#{args\ 1029}#
- #{req\ 1030}#
- #{opt\ 1031}#
- #{rkey\ 1032}#)
- ((lambda (#{tmp\ 1037}#)
- ((lambda (#{tmp\ 1038}#)
- (if #{tmp\ 1038}#
- (apply (lambda ()
- (#{check\ 1001}#
- #{req\ 1030}#
- #{opt\ 1031}#
- #f
- (cons #f
- (reverse
- #{rkey\ 1032}#))))
- #{tmp\ 1038}#)
- ((lambda (#{tmp\ 1039}#)
- (if (if #{tmp\ 1039}#
- (apply (lambda (#{a\ 1042}#
- #{b\ 1043}#)
- (#{id?\ 372}#
- #{a\ 1042}#))
- #{tmp\ 1039}#)
- #f)
- (apply (lambda (#{a\ 1046}#
- #{b\ 1047}#)
- ((lambda (#{tmp\ 1049}#)
- ((lambda (#{k\ 1051}#)
- (#{key\ 997}#
- #{b\ 1047}#
- #{req\ 1030}#
- #{opt\ 1031}#
- (cons (cons #{k\
1051}#
- (cons
#{a\ 1046}#
-
'(#(syntax-object
-
#f
-
((top)
-
#(ribcage
-
#(k)
-
#((top))
-
#("i1050"))
-
#(ribcage
-
#(a
-
b)
-
#((top)
-
(top))
-
#("i1044"
-
"i1045"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(args
-
req
-
opt
-
rkey)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i1033"
-
"i1034"
-
"i1035"
-
"i1036"))
-
#(ribcage
-
(check rest
-
key
-
opt
-
req)
-
((top)
-
(top)
-
(top)
-
(top)
-
(top))
-
("i1000"
-
"i998"
-
"i996"
-
"i994"
-
"i992"))
-
#(ribcage
-
#(orig-args)
-
#((top))
-
#("i991"))
-
#(ribcage
-
(lambda-var-list
-
gen-var
-
strip
-
chi-lambda-case
-
lambda*-formals
-
chi-simple-lambda
-
lambda-formals
-
ellipsis?
-
chi-void
-
eval-local-transformer
-
chi-local-syntax
-
chi-body
-
chi-macro
-
chi-application
-
chi-expr
-
chi
-
chi-top
-
syntax-type
-
chi-when-list
-
chi-install-global
-
chi-top-sequence
-
chi-sequence
-
source-wrap
-
wrap
-
bound-id-member?
-
distinct-bound-ids?
-
valid-bound-ids?
-
bound-id=?
-
free-id=?
-
id-var-name
-
same-marks?
-
join-marks
-
join-wraps
-
smart-append
-
make-binding-wrap
-
extend-ribcage!
-
make-empty-ribcage
-
new-mark
-
anti-mark
-
the-anti-mark
-
top-marked?
-
top-wrap
-
empty-wrap
-
set-ribcage-labels!
-
set-ribcage-marks!
-
set-ribcage-symnames!
-
ribcage-labels
-
ribcage-marks
-
ribcage-symnames
-
ribcage?
-
make-ribcage
-
gen-labels
-
gen-label
-
make-rename
-
rename-marks
-
rename-new
-
rename-old
-
subst-rename?
-
wrap-subst
-
wrap-marks
-
make-wrap
-
id-sym-name&marks
-
id-sym-name
-
id?
-
nonsymbol-id?
-
global-extend
-
lookup
-
macros-only-env
-
extend-var-env
-
extend-env
-
null-env
-
binding-value
-
binding-type
-
make-binding
-
arg-check
-
source-annotation
-
no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
-
syntax-object-wrap
-
syntax-object-expression
-
syntax-object?
-
make-syntax-object
-
build-lexical-var
-
build-letrec
-
build-named-let
-
build-let
-
build-sequence
-
build-data
-
build-primref
-
build-lambda-case
-
build-case-lambda
-
build-simple-lambda
-
build-global-definition
-
maybe-name-value!
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
-
gensym-hook
-
local-eval-hook
-
top-level-eval-hook
-
fx<
-
fx=
-
fx-
-
fx+
-
set-lambda-meta!
-
lambda-meta
-
lambda?
-
make-dynlet
-
make-letrec
-
make-let
-
make-lambda-case
-
make-lambda
-
make-sequence
-
make-application
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
-
make-const
-
make-void)
-
((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
("i486"
-
"i484"
-
"i482"
-
"i480"
-
"i478"
-
"i476"
-
"i474"
-
"i472"
-
"i470"
-
"i468"
-
"i466"
-
"i464"
-
"i462"
-
"i460"
-
"i458"
-
"i456"
-
"i454"
-
"i452"
-
"i450"
-
"i448"
-
"i446"
-
"i444"
-
"i442"
-
"i440"
-
"i438"
-
"i436"
-
"i434"
-
"i432"
-
"i430"
-
"i428"
-
"i426"
-
"i424"
-
"i422"
-
"i420"
-
"i418"
-
"i416"
-
"i415"
-
"i414"
-
"i412"
-
"i411"
-
"i410"
-
"i409"
-
"i408"
-
"i406"
-
"i404"
-
"i402"
-
"i400"
-
"i398"
-
"i396"
-
"i394"
-
"i392"
-
"i389"
-
"i387"
-
"i386"
-
"i385"
-
"i384"
-
"i383"
-
"i382"
-
"i380"
-
"i378"
-
"i376"
-
"i374"
-
"i373"
-
"i371"
-
"i369"
-
"i367"
-
"i365"
-
"i363"
-
"i361"
-
"i359"
-
"i358"
-
"i356"
-
"i354"
-
"i353"
-
"i352"
-
"i350"
-
"i349"
-
"i347"
-
"i345"
-
"i343"
-
"i341"
-
"i339"
-
"i337"
-
"i335"
-
"i333"
-
"i331"
-
"i329"
-
"i327"
-
"i325"
-
"i323"
-
"i321"
-
"i319"
-
"i317"
-
"i315"
-
"i313"
-
"i311"
-
"i309"
-
"i307"
-
"i305"
-
"i303"
-
"i301"
-
"i299"
-
"i297"
-
"i295"
-
"i293"
-
"i291"
-
"i289"
-
"i287"
-
"i285"
-
"i284"
-
"i282"
-
"i280"
-
"i278"
-
"i276"
-
"i274"
-
"i272"
-
"i270"
-
"i268"
-
"i266"
-
"i263"
-
"i261"
-
"i259"
-
"i257"
-
"i255"
-
"i253"
-
"i251"
-
"i249"
-
"i247"
-
"i245"
-
"i243"
-
"i241"
-
"i239"
-
"i237"
-
"i235"
-
"i233"
-
"i231"
-
"i229"))
-
#(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
-
and-map*)
-
((top)
-
(top)
-
(top)
-
(top))
-
("i23"
-
"i22"
-
"i21"
-
"i19")))
-
(hygiene
-
guile)))))
- #{rkey\
1032}#)))
- #{tmp\ 1049}#))
- (symbol->keyword
- (syntax->datum
- #{a\ 1046}#))))
- #{tmp\ 1039}#)
- ((lambda (#{tmp\ 1052}#)
- (if (if #{tmp\ 1052}#
- (apply (lambda (#{a\ 1056}#
- #{init\
1057}#
- #{b\ 1058}#)
- (#{id?\ 372}#
- #{a\ 1056}#))
- #{tmp\ 1052}#)
- #f)
- (apply (lambda (#{a\ 1062}#
- #{init\ 1063}#
- #{b\ 1064}#)
- ((lambda (#{tmp\ 1066}#)
- ((lambda (#{k\
1068}#)
- (#{key\ 997}#
- #{b\ 1064}#
- #{req\ 1030}#
- #{opt\ 1031}#
- (cons (list
#{k\ 1068}#
-
#{a\ 1062}#
-
#{init\ 1063}#)
- #{rkey\
1032}#)))
- #{tmp\ 1066}#))
- (symbol->keyword
- (syntax->datum
- #{a\ 1062}#))))
- #{tmp\ 1052}#)
- ((lambda (#{tmp\ 1069}#)
- (if (if #{tmp\ 1069}#
- (apply (lambda (#{a\
1074}#
- #{init\
1075}#
- #{k\
1076}#
- #{b\
1077}#)
- (if (#{id?\
372}#
- #{a\
1074}#)
- (keyword?
-
(syntax->datum
- #{k\
1076}#))
- #f))
- #{tmp\ 1069}#)
- #f)
- (apply (lambda (#{a\ 1084}#
- #{init\
1085}#
- #{k\ 1086}#
- #{b\ 1087}#)
- (#{key\ 997}#
- #{b\ 1087}#
- #{req\ 1030}#
- #{opt\ 1031}#
- (cons (list #{k\
1086}#
- #{a\
1084}#
-
#{init\ 1085}#)
- #{rkey\
1032}#)))
- #{tmp\ 1069}#)
- ((lambda (#{tmp\ 1088}#)
- (if (if #{tmp\ 1088}#
- (apply (lambda
(#{aok\ 1090}#)
- (eq?
(syntax->datum
-
#{aok\ 1090}#)
-
#:allow-other-keys))
- #{tmp\
1088}#)
- #f)
- (apply (lambda (#{aok\
1092}#)
- (#{check\
1001}#
- #{req\
1030}#
- #{opt\
1031}#
- #f
- (cons #t
-
(reverse
-
#{rkey\ 1032}#))))
- #{tmp\ 1088}#)
- ((lambda (#{tmp\
1093}#)
- (if (if #{tmp\
1093}#
- (apply
(lambda (#{aok\ 1097}#
-
#{a\ 1098}#
-
#{b\ 1099}#)
- (if
(eq? (syntax->datum
-
#{aok\ 1097}#)
-
#:allow-other-keys)
-
(eq? (syntax->datum
-
#{a\ 1098}#)
-
#:rest)
-
#f))
- #{tmp\
1093}#)
- #f)
- (apply (lambda
(#{aok\ 1105}#
-
#{a\ 1106}#
-
#{b\ 1107}#)
- (#{rest\
999}#
- #{b\
1107}#
- #{req\
1030}#
- #{opt\
1031}#
- (cons
#t
-
(reverse
-
#{rkey\ 1032}#))))
- #{tmp\
1093}#)
- ((lambda (#{tmp\
1108}#)
- (if (if #{tmp\
1108}#
- (apply
(lambda (#{aok\ 1111}#
-
#{r\ 1112}#)
-
(if (eq? (syntax->datum
-
#{aok\ 1111}#)
-
#:allow-other-keys)
-
(#{id?\ 372}#
-
#{r\ 1112}#)
-
#f))
-
#{tmp\ 1108}#)
- #f)
- (apply
(lambda (#{aok\ 1117}#
-
#{r\ 1118}#)
-
(#{rest\ 999}#
-
#{r\ 1118}#
-
#{req\ 1030}#
-
#{opt\ 1031}#
-
(cons #t
-
(reverse
-
#{rkey\ 1032}#))))
-
#{tmp\ 1108}#)
- ((lambda
(#{tmp\ 1119}#)
- (if (if
#{tmp\ 1119}#
-
(apply (lambda (#{a\ 1122}#
-
#{b\ 1123}#)
-
(eq? (syntax->datum
-
#{a\ 1122}#)
-
#:rest))
-
#{tmp\ 1119}#)
- #f)
- (apply
(lambda (#{a\ 1126}#
-
#{b\ 1127}#)
-
(#{rest\ 999}#
-
#{b\ 1127}#
-
#{req\ 1030}#
-
#{opt\ 1031}#
-
(cons #f
-
(reverse
-
#{rkey\ 1032}#))))
-
#{tmp\ 1119}#)
-
((lambda (#{tmp\ 1128}#)
- (if
(if #{tmp\ 1128}#
-
(apply (lambda (#{r\ 1130}#)
-
(#{id?\ 372}#
-
#{r\ 1130}#))
-
#{tmp\ 1128}#)
-
#f)
-
(apply (lambda (#{r\ 1132}#)
-
(#{rest\ 999}#
-
#{r\ 1132}#
-
#{req\ 1030}#
-
#{opt\ 1031}#
-
(cons #f
-
(reverse
-
#{rkey\ 1032}#))))
-
#{tmp\ 1128}#)
-
((lambda (#{else\ 1134}#)
-
(syntax-violation
-
'lambda*
-
"invalid keyword argument list"
-
#{orig-args\ 990}#
-
#{args\ 1029}#))
-
#{tmp\ 1037}#)))
- (list
#{tmp\ 1037}#))))
-
($sc-dispatch
- #{tmp\
1037}#
- '(any
any)))))
- ($sc-dispatch
- #{tmp\ 1037}#
- '(any .
- any)))))
- ($sc-dispatch
- #{tmp\ 1037}#
- '(any any any)))))
- ($sc-dispatch
- #{tmp\ 1037}#
- '(any)))))
- ($sc-dispatch
- #{tmp\ 1037}#
- '((any any any) . any)))))
+ (cons #f (reverse #{rkey\ 1047}#))))
+ #{tmp\ 1053}#)
+ (let ((#{tmp\ 1054}#
+ ($sc-dispatch
+ #{tmp\ 1052}#
+ '(any . any))))
+ (if (if #{tmp\ 1054}#
+ (@apply
+ (lambda (#{a\ 1057}# #{b\ 1058}#)
+ (#{id?\ 387}# #{a\ 1057}#))
+ #{tmp\ 1054}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1061}# #{b\ 1062}#)
+ (let ((#{tmp\ 1064}#
+ (symbol->keyword
+ (syntax->datum #{a\ 1061}#))))
+ (let ((#{k\ 1066}# #{tmp\ 1064}#))
+ (#{key\ 1012}#
+ #{b\ 1062}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ (cons (cons #{k\ 1066}#
+ (cons #{a\ 1061}#
+ '(#(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(k)
+ #((top))
+ #("i1065"))
+ #(ribcage
+ #(a b)
+ #((top) (top))
+ #("i1059"
+ "i1060"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(args
+ req
+ opt
+ rkey)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i1048"
+ "i1049"
+ "i1050"
+ "i1051"))
+ #(ribcage
+ (check rest
+ key
+ opt
+ req)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i1015"
+ "i1013"
+ "i1011"
+ "i1009"
+ "i1007"))
+ #(ribcage
+ #(orig-args)
+ #((top))
+ #("i1006"))
+ #(ribcage
+
(lambda-var-list
+ gen-var
+ strip
+
chi-lambda-case
+
lambda*-formals
+
chi-simple-lambda
+
lambda-formals
+ ellipsis?
+ chi-void
+
eval-local-transformer
+
chi-local-syntax
+ chi-body
+ chi-macro
+
chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+
chi-when-list
+
chi-install-global
+
chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+
bound-id-member?
+
distinct-bound-ids?
+
valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+
make-binding-wrap
+
extend-ribcage!
+
make-empty-ribcage
+ new-mark
+ anti-mark
+
the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+
set-ribcage-labels!
+
set-ribcage-marks!
+
set-ribcage-symnames!
+
ribcage-labels
+
ribcage-marks
+
ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+
subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+
id-sym-name&marks
+ id-sym-name
+ id?
+
nonsymbol-id?
+
global-extend
+ lookup
+
macros-only-env
+
extend-var-env
+ extend-env
+ null-env
+
binding-value
+ binding-type
+ make-binding
+ arg-check
+
source-annotation
+ no-source
+
set-syntax-object-module!
+
set-syntax-object-wrap!
+
set-syntax-object-expression!
+
syntax-object-module
+
syntax-object-wrap
+
syntax-object-expression
+
syntax-object?
+
make-syntax-object
+
build-lexical-var
+ build-letrec
+
build-named-let
+ build-let
+
build-sequence
+ build-data
+
build-primref
+
build-lambda-case
+
build-case-lambda
+
build-simple-lambda
+
build-global-definition
+
maybe-name-value!
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+ build-dynlet
+
build-conditional
+
build-application
+ build-void
+
decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+ gensym-hook
+
local-eval-hook
+
top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+
set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+
make-lambda-case
+ make-lambda
+
make-sequence
+
make-application
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+
make-module-set
+
make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+ and-map*)
+ ((top)
+ (top)
+ (top)
+ (top))
+ ("i38"
+ "i37"
+ "i36"
+ "i34")))
+ (hygiene
+ guile)))))
+ #{rkey\ 1047}#)))))
+ #{tmp\ 1054}#)
+ (let ((#{tmp\ 1067}#
+ ($sc-dispatch
+ #{tmp\ 1052}#
+ '((any any) . any))))
+ (if (if #{tmp\ 1067}#
+ (@apply
+ (lambda (#{a\ 1071}#
+ #{init\ 1072}#
+ #{b\ 1073}#)
+ (#{id?\ 387}# #{a\ 1071}#))
+ #{tmp\ 1067}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1077}#
+ #{init\ 1078}#
+ #{b\ 1079}#)
+ (let ((#{tmp\ 1081}#
+ (symbol->keyword
+ (syntax->datum #{a\ 1077}#))))
+ (let ((#{k\ 1083}# #{tmp\ 1081}#))
+ (#{key\ 1012}#
+ #{b\ 1079}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ (cons (list #{k\ 1083}#
+ #{a\ 1077}#
+ #{init\ 1078}#)
+ #{rkey\ 1047}#)))))
+ #{tmp\ 1067}#)
+ (let ((#{tmp\ 1084}#
($sc-dispatch
- #{tmp\ 1037}#
- '((any any) . any)))))
- ($sc-dispatch
- #{tmp\ 1037}#
- '(any . any)))))
- ($sc-dispatch #{tmp\ 1037}# (quote ()))))
- #{args\ 1029}#)))
- (#{opt\ 995}#
- (lambda (#{args\ 1135}# #{req\ 1136}# #{ropt\ 1137}#)
- ((lambda (#{tmp\ 1141}#)
- ((lambda (#{tmp\ 1142}#)
- (if #{tmp\ 1142}#
- (apply (lambda ()
- (#{check\ 1001}#
- #{req\ 1136}#
- (reverse #{ropt\ 1137}#)
- #f
- '()))
- #{tmp\ 1142}#)
- ((lambda (#{tmp\ 1143}#)
- (if (if #{tmp\ 1143}#
- (apply (lambda (#{a\ 1146}#
- #{b\ 1147}#)
- (#{id?\ 372}#
- #{a\ 1146}#))
- #{tmp\ 1143}#)
- #f)
- (apply (lambda (#{a\ 1150}#
- #{b\ 1151}#)
- (#{opt\ 995}#
- #{b\ 1151}#
- #{req\ 1136}#
- (cons (cons #{a\ 1150}#
-
'(#(syntax-object
- #f
- ((top)
- #(ribcage
- #(a b)
- #((top)
- (top))
-
#("i1148"
-
"i1149"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(args
- req
- ropt)
- #((top)
- (top)
- (top))
-
#("i1138"
-
"i1139"
-
"i1140"))
- #(ribcage
- (check
rest
-
key
-
opt
-
req)
- ((top)
- (top)
- (top)
- (top)
- (top))
- ("i1000"
- "i998"
- "i996"
- "i994"
-
"i992"))
- #(ribcage
-
#(orig-args)
- #((top))
-
#("i991"))
- #(ribcage
-
(lambda-var-list
-
gen-var
- strip
-
chi-lambda-case
-
lambda*-formals
-
chi-simple-lambda
-
lambda-formals
-
ellipsis?
-
chi-void
-
eval-local-transformer
-
chi-local-syntax
-
chi-body
-
chi-macro
-
chi-application
-
chi-expr
- chi
-
chi-top
-
syntax-type
-
chi-when-list
-
chi-install-global
-
chi-top-sequence
-
chi-sequence
-
source-wrap
- wrap
-
bound-id-member?
-
distinct-bound-ids?
-
valid-bound-ids?
-
bound-id=?
-
free-id=?
-
id-var-name
-
same-marks?
-
join-marks
-
join-wraps
-
smart-append
-
make-binding-wrap
-
extend-ribcage!
-
make-empty-ribcage
-
new-mark
-
anti-mark
-
the-anti-mark
-
top-marked?
-
top-wrap
-
empty-wrap
-
set-ribcage-labels!
-
set-ribcage-marks!
-
set-ribcage-symnames!
-
ribcage-labels
-
ribcage-marks
-
ribcage-symnames
-
ribcage?
-
make-ribcage
-
gen-labels
-
gen-label
-
make-rename
-
rename-marks
-
rename-new
-
rename-old
-
subst-rename?
-
wrap-subst
-
wrap-marks
-
make-wrap
-
id-sym-name&marks
-
id-sym-name
- id?
-
nonsymbol-id?
-
global-extend
- lookup
-
macros-only-env
-
extend-var-env
-
extend-env
-
null-env
-
binding-value
-
binding-type
-
make-binding
-
arg-check
-
source-annotation
-
no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
-
syntax-object-wrap
-
syntax-object-expression
-
syntax-object?
-
make-syntax-object
-
build-lexical-var
-
build-letrec
-
build-named-let
-
build-let
-
build-sequence
-
build-data
-
build-primref
-
build-lambda-case
-
build-case-lambda
-
build-simple-lambda
-
build-global-definition
-
maybe-name-value!
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
-
gensym-hook
-
local-eval-hook
-
top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
-
set-lambda-meta!
-
lambda-meta
-
lambda?
-
make-dynlet
-
make-letrec
-
make-let
-
make-lambda-case
-
make-lambda
-
make-sequence
-
make-application
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
-
make-const
-
make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
-
"i229"))
- #(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
-
and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i23"
- "i22"
- "i21"
-
"i19")))
- (hygiene
- guile))))
- #{ropt\ 1137}#)))
- #{tmp\ 1143}#)
- ((lambda (#{tmp\ 1152}#)
- (if (if #{tmp\ 1152}#
- (apply (lambda (#{a\ 1156}#
- #{init\
1157}#
- #{b\ 1158}#)
- (#{id?\ 372}#
- #{a\ 1156}#))
- #{tmp\ 1152}#)
+ #{tmp\ 1052}#
+ '((any any any) . any))))
+ (if (if #{tmp\ 1084}#
+ (@apply
+ (lambda (#{a\ 1089}#
+ #{init\ 1090}#
+ #{k\ 1091}#
+ #{b\ 1092}#)
+ (if (#{id?\ 387}# #{a\ 1089}#)
+ (keyword?
+ (syntax->datum #{k\ 1091}#))
+ #f))
+ #{tmp\ 1084}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1099}#
+ #{init\ 1100}#
+ #{k\ 1101}#
+ #{b\ 1102}#)
+ (#{key\ 1012}#
+ #{b\ 1102}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ (cons (list #{k\ 1101}#
+ #{a\ 1099}#
+ #{init\ 1100}#)
+ #{rkey\ 1047}#)))
+ #{tmp\ 1084}#)
+ (let ((#{tmp\ 1103}#
+ ($sc-dispatch
+ #{tmp\ 1052}#
+ '(any))))
+ (if (if #{tmp\ 1103}#
+ (@apply
+ (lambda (#{aok\ 1105}#)
+ (eq? (syntax->datum
+ #{aok\ 1105}#)
+ #:allow-other-keys))
+ #{tmp\ 1103}#)
+ #f)
+ (@apply
+ (lambda (#{aok\ 1107}#)
+ (#{check\ 1016}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ #f
+ (cons #t
+ (reverse
+ #{rkey\ 1047}#))))
+ #{tmp\ 1103}#)
+ (let ((#{tmp\ 1108}#
+ ($sc-dispatch
+ #{tmp\ 1052}#
+ '(any any any))))
+ (if (if #{tmp\ 1108}#
+ (@apply
+ (lambda (#{aok\ 1112}#
+ #{a\ 1113}#
+ #{b\ 1114}#)
+ (if (eq? (syntax->datum
+ #{aok\ 1112}#)
+
#:allow-other-keys)
+ (eq? (syntax->datum
+ #{a\ 1113}#)
+ #:rest)
+ #f))
+ #{tmp\ 1108}#)
#f)
- (apply (lambda (#{a\ 1162}#
- #{init\ 1163}#
- #{b\ 1164}#)
- (#{opt\ 995}#
- #{b\ 1164}#
- #{req\ 1136}#
- (cons (list #{a\
1162}#
- #{init\
1163}#)
- #{ropt\
1137}#)))
- #{tmp\ 1152}#)
- ((lambda (#{tmp\ 1165}#)
- (if (if #{tmp\ 1165}#
- (apply (lambda (#{a\
1168}#
- #{b\
1169}#)
- (eq?
(syntax->datum
- #{a\
1168}#)
- #:key))
- #{tmp\ 1165}#)
- #f)
- (apply (lambda (#{a\ 1172}#
- #{b\ 1173}#)
- (#{key\ 997}#
- #{b\ 1173}#
- #{req\ 1136}#
+ (@apply
+ (lambda (#{aok\ 1120}#
+ #{a\ 1121}#
+ #{b\ 1122}#)
+ (#{rest\ 1014}#
+ #{b\ 1122}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ (cons #t
+ (reverse
+ #{rkey\ 1047}#))))
+ #{tmp\ 1108}#)
+ (let ((#{tmp\ 1123}#
+ ($sc-dispatch
+ #{tmp\ 1052}#
+ '(any . any))))
+ (if (if #{tmp\ 1123}#
+ (@apply
+ (lambda (#{aok\ 1126}#
+ #{r\ 1127}#)
+ (if (eq?
(syntax->datum
+ #{aok\
1126}#)
+
#:allow-other-keys)
+ (#{id?\ 387}#
+ #{r\ 1127}#)
+ #f))
+ #{tmp\ 1123}#)
+ #f)
+ (@apply
+ (lambda (#{aok\ 1132}#
+ #{r\ 1133}#)
+ (#{rest\ 1014}#
+ #{r\ 1133}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ (cons #t
(reverse
- #{ropt\ 1137}#)
- '()))
- #{tmp\ 1165}#)
- ((lambda (#{tmp\ 1174}#)
- (if (if #{tmp\ 1174}#
- (apply (lambda
(#{a\ 1177}#
-
#{b\ 1178}#)
- (eq?
(syntax->datum
-
#{a\ 1177}#)
-
#:rest))
- #{tmp\
1174}#)
- #f)
- (apply (lambda (#{a\
1181}#
- #{b\
1182}#)
- (#{rest\ 999}#
- #{b\ 1182}#
- #{req\
1136}#
- (reverse
- #{ropt\
1137}#)
- '()))
- #{tmp\ 1174}#)
- ((lambda (#{tmp\
1183}#)
- (if (if #{tmp\
1183}#
- (apply
(lambda (#{r\ 1185}#)
-
(#{id?\ 372}#
-
#{r\ 1185}#))
- #{tmp\
1183}#)
- #f)
- (apply (lambda
(#{r\ 1187}#)
- (#{rest\
999}#
- #{r\
1187}#
- #{req\
1136}#
-
(reverse
-
#{ropt\ 1137}#)
- '()))
- #{tmp\
1183}#)
- ((lambda (#{else\
1189}#)
-
(syntax-violation
- 'lambda*
- "invalid
optional argument list"
- #{orig-args\
990}#
- #{args\
1135}#))
- #{tmp\ 1141}#)))
- (list #{tmp\
1141}#))))
- ($sc-dispatch
- #{tmp\ 1141}#
- '(any any)))))
- ($sc-dispatch
- #{tmp\ 1141}#
- '(any . any)))))
+ #{rkey\
1047}#))))
+ #{tmp\ 1123}#)
+ (let ((#{tmp\ 1134}#
+ ($sc-dispatch
+ #{tmp\ 1052}#
+ '(any any))))
+ (if (if #{tmp\ 1134}#
+ (@apply
+ (lambda (#{a\
1137}#
+ #{b\
1138}#)
+ (eq?
(syntax->datum
+ #{a\
1137}#)
+ #:rest))
+ #{tmp\ 1134}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1141}#
+ #{b\ 1142}#)
+ (#{rest\ 1014}#
+ #{b\ 1142}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ (cons #f
+ (reverse
+ #{rkey\
1047}#))))
+ #{tmp\ 1134}#)
+ (let ((#{tmp\ 1143}#
+ (list #{tmp\
1052}#)))
+ (if (if #{tmp\ 1143}#
+ (@apply
+ (lambda (#{r\
1145}#)
+ (#{id?\ 387}#
+ #{r\
1145}#))
+ #{tmp\ 1143}#)
+ #f)
+ (@apply
+ (lambda (#{r\
1147}#)
+ (#{rest\ 1014}#
+ #{r\ 1147}#
+ #{req\ 1045}#
+ #{opt\ 1046}#
+ (cons #f
+ (reverse
+
#{rkey\ 1047}#))))
+ #{tmp\ 1143}#)
+ (let ((#{else\ 1149}#
+ #{tmp\
1052}#))
+ (syntax-violation
+ 'lambda*
+ "invalid keyword
argument list"
+ #{orig-args\
1005}#
+ #{args\
1044}#)))))))))))))))))))))))
+ (#{opt\ 1010}#
+ (lambda (#{args\ 1150}# #{req\ 1151}# #{ropt\ 1152}#)
+ (let ((#{tmp\ 1156}# #{args\ 1150}#))
+ (let ((#{tmp\ 1157}#
+ ($sc-dispatch #{tmp\ 1156}# (quote ()))))
+ (if #{tmp\ 1157}#
+ (@apply
+ (lambda ()
+ (#{check\ 1016}#
+ #{req\ 1151}#
+ (reverse #{ropt\ 1152}#)
+ #f
+ '()))
+ #{tmp\ 1157}#)
+ (let ((#{tmp\ 1158}#
+ ($sc-dispatch
+ #{tmp\ 1156}#
+ '(any . any))))
+ (if (if #{tmp\ 1158}#
+ (@apply
+ (lambda (#{a\ 1161}# #{b\ 1162}#)
+ (#{id?\ 387}# #{a\ 1161}#))
+ #{tmp\ 1158}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1165}# #{b\ 1166}#)
+ (#{opt\ 1010}#
+ #{b\ 1166}#
+ #{req\ 1151}#
+ (cons (cons #{a\ 1165}#
+ '(#(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(a b)
+ #((top) (top))
+ #("i1163" "i1164"))
+ #(ribcage () () ())
+ #(ribcage
+ #(args req ropt)
+ #((top) (top) (top))
+ #("i1153"
+ "i1154"
+ "i1155"))
+ #(ribcage
+ (check rest key opt req)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i1015"
+ "i1013"
+ "i1011"
+ "i1009"
+ "i1007"))
+ #(ribcage
+ #(orig-args)
+ #((top))
+ #("i1006"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+
set-syntax-object-module!
+
set-syntax-object-wrap!
+
set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+
syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+
build-global-definition
+ maybe-name-value!
+
build-global-assignment
+ build-global-reference
+ analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+ and-map*)
+ ((top)
+ (top)
+ (top)
+ (top))
+ ("i38"
+ "i37"
+ "i36"
+ "i34")))
+ (hygiene guile))))
+ #{ropt\ 1152}#)))
+ #{tmp\ 1158}#)
+ (let ((#{tmp\ 1167}#
+ ($sc-dispatch
+ #{tmp\ 1156}#
+ '((any any) . any))))
+ (if (if #{tmp\ 1167}#
+ (@apply
+ (lambda (#{a\ 1171}#
+ #{init\ 1172}#
+ #{b\ 1173}#)
+ (#{id?\ 387}# #{a\ 1171}#))
+ #{tmp\ 1167}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1177}#
+ #{init\ 1178}#
+ #{b\ 1179}#)
+ (#{opt\ 1010}#
+ #{b\ 1179}#
+ #{req\ 1151}#
+ (cons (list #{a\ 1177}# #{init\ 1178}#)
+ #{ropt\ 1152}#)))
+ #{tmp\ 1167}#)
+ (let ((#{tmp\ 1180}#
($sc-dispatch
- #{tmp\ 1141}#
- '((any any) . any)))))
- ($sc-dispatch
- #{tmp\ 1141}#
- '(any . any)))))
- ($sc-dispatch #{tmp\ 1141}# (quote ()))))
- #{args\ 1135}#)))
- (#{req\ 993}#
- (lambda (#{args\ 1190}# #{rreq\ 1191}#)
- ((lambda (#{tmp\ 1194}#)
- ((lambda (#{tmp\ 1195}#)
- (if #{tmp\ 1195}#
- (apply (lambda ()
- (#{check\ 1001}#
- (reverse #{rreq\ 1191}#)
- '()
- #f
- '()))
- #{tmp\ 1195}#)
- ((lambda (#{tmp\ 1196}#)
- (if (if #{tmp\ 1196}#
- (apply (lambda (#{a\ 1199}#
- #{b\ 1200}#)
- (#{id?\ 372}#
- #{a\ 1199}#))
- #{tmp\ 1196}#)
- #f)
- (apply (lambda (#{a\ 1203}#
- #{b\ 1204}#)
- (#{req\ 993}#
- #{b\ 1204}#
- (cons #{a\ 1203}#
- #{rreq\ 1191}#)))
- #{tmp\ 1196}#)
- ((lambda (#{tmp\ 1205}#)
- (if (if #{tmp\ 1205}#
- (apply (lambda (#{a\ 1208}#
- #{b\ 1209}#)
- (eq? (syntax->datum
- #{a\ 1208}#)
- #:optional))
- #{tmp\ 1205}#)
+ #{tmp\ 1156}#
+ '(any . any))))
+ (if (if #{tmp\ 1180}#
+ (@apply
+ (lambda (#{a\ 1183}# #{b\ 1184}#)
+ (eq? (syntax->datum #{a\ 1183}#)
+ #:key))
+ #{tmp\ 1180}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1187}# #{b\ 1188}#)
+ (#{key\ 1012}#
+ #{b\ 1188}#
+ #{req\ 1151}#
+ (reverse #{ropt\ 1152}#)
+ '()))
+ #{tmp\ 1180}#)
+ (let ((#{tmp\ 1189}#
+ ($sc-dispatch
+ #{tmp\ 1156}#
+ '(any any))))
+ (if (if #{tmp\ 1189}#
+ (@apply
+ (lambda (#{a\ 1192}#
+ #{b\ 1193}#)
+ (eq? (syntax->datum
+ #{a\ 1192}#)
+ #:rest))
+ #{tmp\ 1189}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1196}# #{b\ 1197}#)
+ (#{rest\ 1014}#
+ #{b\ 1197}#
+ #{req\ 1151}#
+ (reverse #{ropt\ 1152}#)
+ '()))
+ #{tmp\ 1189}#)
+ (let ((#{tmp\ 1198}#
+ (list #{tmp\ 1156}#)))
+ (if (if #{tmp\ 1198}#
+ (@apply
+ (lambda (#{r\ 1200}#)
+ (#{id?\ 387}#
+ #{r\ 1200}#))
+ #{tmp\ 1198}#)
#f)
- (apply (lambda (#{a\ 1212}#
- #{b\ 1213}#)
- (#{opt\ 995}#
- #{b\ 1213}#
- (reverse
- #{rreq\ 1191}#)
- '()))
- #{tmp\ 1205}#)
- ((lambda (#{tmp\ 1214}#)
- (if (if #{tmp\ 1214}#
- (apply (lambda (#{a\
1217}#
- #{b\
1218}#)
- (eq?
(syntax->datum
- #{a\
1217}#)
- #:key))
- #{tmp\ 1214}#)
- #f)
- (apply (lambda (#{a\ 1221}#
- #{b\ 1222}#)
- (#{key\ 997}#
- #{b\ 1222}#
- (reverse
- #{rreq\ 1191}#)
- '()
- '()))
- #{tmp\ 1214}#)
- ((lambda (#{tmp\ 1223}#)
- (if (if #{tmp\ 1223}#
- (apply (lambda
(#{a\ 1226}#
-
#{b\ 1227}#)
- (eq?
(syntax->datum
-
#{a\ 1226}#)
-
#:rest))
- #{tmp\
1223}#)
- #f)
- (apply (lambda (#{a\
1230}#
- #{b\
1231}#)
- (#{rest\ 999}#
- #{b\ 1231}#
- (reverse
- #{rreq\
1191}#)
- '()
- '()))
- #{tmp\ 1223}#)
- ((lambda (#{tmp\
1232}#)
- (if (if #{tmp\
1232}#
- (apply
(lambda (#{r\ 1234}#)
-
(#{id?\ 372}#
-
#{r\ 1234}#))
- #{tmp\
1232}#)
- #f)
- (apply (lambda
(#{r\ 1236}#)
- (#{rest\
999}#
- #{r\
1236}#
-
(reverse
-
#{rreq\ 1191}#)
- '()
- '()))
- #{tmp\
1232}#)
- ((lambda (#{else\
1238}#)
-
(syntax-violation
- 'lambda*
- "invalid
argument list"
- #{orig-args\
990}#
- #{args\
1190}#))
- #{tmp\ 1194}#)))
- (list #{tmp\
1194}#))))
- ($sc-dispatch
- #{tmp\ 1194}#
- '(any any)))))
- ($sc-dispatch
- #{tmp\ 1194}#
- '(any . any)))))
+ (@apply
+ (lambda (#{r\ 1202}#)
+ (#{rest\ 1014}#
+ #{r\ 1202}#
+ #{req\ 1151}#
+ (reverse #{ropt\ 1152}#)
+ '()))
+ #{tmp\ 1198}#)
+ (let ((#{else\ 1204}#
+ #{tmp\ 1156}#))
+ (syntax-violation
+ 'lambda*
+ "invalid optional argument
list"
+ #{orig-args\ 1005}#
+ #{args\
1150}#)))))))))))))))))
+ (#{req\ 1008}#
+ (lambda (#{args\ 1205}# #{rreq\ 1206}#)
+ (let ((#{tmp\ 1209}# #{args\ 1205}#))
+ (let ((#{tmp\ 1210}#
+ ($sc-dispatch #{tmp\ 1209}# (quote ()))))
+ (if #{tmp\ 1210}#
+ (@apply
+ (lambda ()
+ (#{check\ 1016}#
+ (reverse #{rreq\ 1206}#)
+ '()
+ #f
+ '()))
+ #{tmp\ 1210}#)
+ (let ((#{tmp\ 1211}#
+ ($sc-dispatch
+ #{tmp\ 1209}#
+ '(any . any))))
+ (if (if #{tmp\ 1211}#
+ (@apply
+ (lambda (#{a\ 1214}# #{b\ 1215}#)
+ (#{id?\ 387}# #{a\ 1214}#))
+ #{tmp\ 1211}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1218}# #{b\ 1219}#)
+ (#{req\ 1008}#
+ #{b\ 1219}#
+ (cons #{a\ 1218}# #{rreq\ 1206}#)))
+ #{tmp\ 1211}#)
+ (let ((#{tmp\ 1220}#
+ ($sc-dispatch
+ #{tmp\ 1209}#
+ '(any . any))))
+ (if (if #{tmp\ 1220}#
+ (@apply
+ (lambda (#{a\ 1223}# #{b\ 1224}#)
+ (eq? (syntax->datum #{a\ 1223}#)
+ #:optional))
+ #{tmp\ 1220}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1227}# #{b\ 1228}#)
+ (#{opt\ 1010}#
+ #{b\ 1228}#
+ (reverse #{rreq\ 1206}#)
+ '()))
+ #{tmp\ 1220}#)
+ (let ((#{tmp\ 1229}#
($sc-dispatch
- #{tmp\ 1194}#
- '(any . any)))))
- ($sc-dispatch
- #{tmp\ 1194}#
- '(any . any)))))
- ($sc-dispatch #{tmp\ 1194}# (quote ()))))
- #{args\ 1190}#))))
- (#{req\ 993}# #{orig-args\ 990}# (quote ())))))
- (#{chi-simple-lambda\ 477}#
- (lambda (#{e\ 1239}#
- #{r\ 1240}#
- #{w\ 1241}#
- #{s\ 1242}#
- #{mod\ 1243}#
- #{req\ 1244}#
- #{rest\ 1245}#
- #{meta\ 1246}#
- #{body\ 1247}#)
- (let ((#{ids\ 1259}#
- (if #{rest\ 1245}#
- (append #{req\ 1244}# (list #{rest\ 1245}#))
- #{req\ 1244}#)))
- (let ((#{vars\ 1261}#
- (map #{gen-var\ 485}# #{ids\ 1259}#)))
- (let ((#{labels\ 1263}#
- (#{gen-labels\ 390}# #{ids\ 1259}#)))
- (#{build-simple-lambda\ 314}#
- #{s\ 1242}#
- (map syntax->datum #{req\ 1244}#)
- (if #{rest\ 1245}#
- (syntax->datum #{rest\ 1245}#)
- #f)
- #{vars\ 1261}#
- #{meta\ 1246}#
- (#{chi-body\ 465}#
- #{body\ 1247}#
- (#{source-wrap\ 443}#
- #{e\ 1239}#
- #{w\ 1241}#
- #{s\ 1242}#
- #{mod\ 1243}#)
- (#{extend-var-env\ 362}#
- #{labels\ 1263}#
- #{vars\ 1261}#
- #{r\ 1240}#)
- (#{make-binding-wrap\ 419}#
- #{ids\ 1259}#
- #{labels\ 1263}#
- #{w\ 1241}#)
- #{mod\ 1243}#)))))))
- (#{lambda-formals\ 475}#
- (lambda (#{orig-args\ 1266}#)
- (letrec ((#{check\ 1271}#
- (lambda (#{req\ 1272}# #{rest\ 1273}#)
- (if (#{distinct-bound-ids?\ 437}#
- (if #{rest\ 1273}#
- (cons #{rest\ 1273}# #{req\ 1272}#)
- #{req\ 1272}#))
- (values #{req\ 1272}# #f #{rest\ 1273}# #f)
- (syntax-violation
- 'lambda
- "duplicate identifier in argument list"
- #{orig-args\ 1266}#))))
- (#{req\ 1269}#
- (lambda (#{args\ 1279}# #{rreq\ 1280}#)
- ((lambda (#{tmp\ 1283}#)
- ((lambda (#{tmp\ 1284}#)
- (if #{tmp\ 1284}#
- (apply (lambda ()
- (#{check\ 1271}#
- (reverse #{rreq\ 1280}#)
- #f))
- #{tmp\ 1284}#)
- ((lambda (#{tmp\ 1285}#)
- (if (if #{tmp\ 1285}#
- (apply (lambda (#{a\ 1288}#
- #{b\ 1289}#)
- (#{id?\ 372}#
- #{a\ 1288}#))
- #{tmp\ 1285}#)
- #f)
- (apply (lambda (#{a\ 1292}#
- #{b\ 1293}#)
- (#{req\ 1269}#
- #{b\ 1293}#
- (cons #{a\ 1292}#
- #{rreq\ 1280}#)))
- #{tmp\ 1285}#)
- ((lambda (#{tmp\ 1294}#)
- (if (if #{tmp\ 1294}#
- (apply (lambda (#{r\ 1296}#)
- (#{id?\ 372}#
- #{r\ 1296}#))
- #{tmp\ 1294}#)
+ #{tmp\ 1209}#
+ '(any . any))))
+ (if (if #{tmp\ 1229}#
+ (@apply
+ (lambda (#{a\ 1232}# #{b\ 1233}#)
+ (eq? (syntax->datum #{a\ 1232}#)
+ #:key))
+ #{tmp\ 1229}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1236}# #{b\ 1237}#)
+ (#{key\ 1012}#
+ #{b\ 1237}#
+ (reverse #{rreq\ 1206}#)
+ '()
+ '()))
+ #{tmp\ 1229}#)
+ (let ((#{tmp\ 1238}#
+ ($sc-dispatch
+ #{tmp\ 1209}#
+ '(any any))))
+ (if (if #{tmp\ 1238}#
+ (@apply
+ (lambda (#{a\ 1241}#
+ #{b\ 1242}#)
+ (eq? (syntax->datum
+ #{a\ 1241}#)
+ #:rest))
+ #{tmp\ 1238}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1245}# #{b\ 1246}#)
+ (#{rest\ 1014}#
+ #{b\ 1246}#
+ (reverse #{rreq\ 1206}#)
+ '()
+ '()))
+ #{tmp\ 1238}#)
+ (let ((#{tmp\ 1247}#
+ (list #{tmp\ 1209}#)))
+ (if (if #{tmp\ 1247}#
+ (@apply
+ (lambda (#{r\ 1249}#)
+ (#{id?\ 387}#
+ #{r\ 1249}#))
+ #{tmp\ 1247}#)
#f)
- (apply (lambda (#{r\ 1298}#)
- (#{check\ 1271}#
- (reverse
- #{rreq\ 1280}#)
- #{r\ 1298}#))
- #{tmp\ 1294}#)
- ((lambda (#{else\ 1300}#)
- (syntax-violation
- 'lambda
- "invalid argument list"
- #{orig-args\ 1266}#
- #{args\ 1279}#))
- #{tmp\ 1283}#)))
- (list #{tmp\ 1283}#))))
- ($sc-dispatch
- #{tmp\ 1283}#
- '(any . any)))))
- ($sc-dispatch #{tmp\ 1283}# (quote ()))))
- #{args\ 1279}#))))
- (#{req\ 1269}# #{orig-args\ 1266}# (quote ())))))
- (#{ellipsis?\ 473}#
- (lambda (#{x\ 1301}#)
- (if (#{nonsymbol-id?\ 370}# #{x\ 1301}#)
- (#{free-id=?\ 431}#
- #{x\ 1301}#
- '#(syntax-object
- ...
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i1302"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- chi-lambda-case
- lambda*-formals
- chi-simple-lambda
- lambda-formals
- ellipsis?
- chi-void
- eval-local-transformer
- chi-local-syntax
- chi-body
- chi-macro
- chi-application
- chi-expr
- chi
- chi-top
- syntax-type
- chi-when-list
- chi-install-global
- chi-top-sequence
- chi-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- id-var-name
- same-marks?
- join-marks
- join-wraps
- smart-append
- make-binding-wrap
- extend-ribcage!
- make-empty-ribcage
- new-mark
- anti-mark
- the-anti-mark
- top-marked?
- top-wrap
- empty-wrap
- set-ribcage-labels!
- set-ribcage-marks!
- set-ribcage-symnames!
- ribcage-labels
- ribcage-marks
- ribcage-symnames
- ribcage?
- make-ribcage
- gen-labels
- gen-label
- make-rename
- rename-marks
- rename-new
- rename-old
- subst-rename?
- wrap-subst
- wrap-marks
- make-wrap
- id-sym-name&marks
- id-sym-name
- id?
- nonsymbol-id?
- global-extend
- lookup
- macros-only-env
- extend-var-env
- extend-env
- null-env
- binding-value
- binding-type
- make-binding
- arg-check
- source-annotation
- no-source
- set-syntax-object-module!
- set-syntax-object-wrap!
- set-syntax-object-expression!
- syntax-object-module
- syntax-object-wrap
- syntax-object-expression
- syntax-object?
- make-syntax-object
- build-lexical-var
- build-letrec
- build-named-let
- build-let
- build-sequence
- build-data
- build-primref
- build-lambda-case
- build-case-lambda
- build-simple-lambda
- build-global-definition
- maybe-name-value!
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- decorate-source
- get-global-definition-hook
- put-global-definition-hook
- gensym-hook
- local-eval-hook
- top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
- set-lambda-meta!
- lambda-meta
- lambda?
- make-dynlet
- make-letrec
- make-let
- make-lambda-case
- make-lambda
- make-sequence
- make-application
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i23" "i22" "i21" "i19")))
- (hygiene guile)))
- #f)))
- (#{chi-void\ 471}#
- (lambda () (#{build-void\ 292}# #f)))
- (#{eval-local-transformer\ 469}#
- (lambda (#{expanded\ 1306}# #{mod\ 1307}#)
- (let ((#{p\ 1311}#
- (#{local-eval-hook\ 283}#
- #{expanded\ 1306}#
- #{mod\ 1307}#)))
- (if (procedure? #{p\ 1311}#)
- #{p\ 1311}#
+ (@apply
+ (lambda (#{r\ 1251}#)
+ (#{rest\ 1014}#
+ #{r\ 1251}#
+ (reverse #{rreq\ 1206}#)
+ '()
+ '()))
+ #{tmp\ 1247}#)
+ (let ((#{else\ 1253}#
+ #{tmp\ 1209}#))
+ (syntax-violation
+ 'lambda*
+ "invalid argument list"
+ #{orig-args\ 1005}#
+ #{args\
1205}#))))))))))))))))))
+ (begin
+ (#{req\ 1008}# #{orig-args\ 1005}# (quote ()))))))
+ (#{chi-simple-lambda\ 492}#
+ (lambda (#{e\ 1254}#
+ #{r\ 1255}#
+ #{w\ 1256}#
+ #{s\ 1257}#
+ #{mod\ 1258}#
+ #{req\ 1259}#
+ #{rest\ 1260}#
+ #{meta\ 1261}#
+ #{body\ 1262}#)
+ (begin
+ (let ((#{ids\ 1274}#
+ (if #{rest\ 1260}#
+ (append #{req\ 1259}# (list #{rest\ 1260}#))
+ #{req\ 1259}#)))
+ (begin
+ (let ((#{vars\ 1276}#
+ (map #{gen-var\ 500}# #{ids\ 1274}#)))
+ (begin
+ (let ((#{labels\ 1278}#
+ (#{gen-labels\ 405}# #{ids\ 1274}#)))
+ (#{build-simple-lambda\ 329}#
+ #{s\ 1257}#
+ (map syntax->datum #{req\ 1259}#)
+ (if #{rest\ 1260}#
+ (syntax->datum #{rest\ 1260}#)
+ #f)
+ #{vars\ 1276}#
+ #{meta\ 1261}#
+ (#{chi-body\ 480}#
+ #{body\ 1262}#
+ (#{source-wrap\ 458}#
+ #{e\ 1254}#
+ #{w\ 1256}#
+ #{s\ 1257}#
+ #{mod\ 1258}#)
+ (#{extend-var-env\ 377}#
+ #{labels\ 1278}#
+ #{vars\ 1276}#
+ #{r\ 1255}#)
+ (#{make-binding-wrap\ 434}#
+ #{ids\ 1274}#
+ #{labels\ 1278}#
+ #{w\ 1256}#)
+ #{mod\ 1258}#))))))))))
+ (#{lambda-formals\ 490}#
+ (lambda (#{orig-args\ 1281}#)
+ (letrec*
+ ((#{check\ 1286}#
+ (lambda (#{req\ 1287}# #{rest\ 1288}#)
+ (if (#{distinct-bound-ids?\ 452}#
+ (if #{rest\ 1288}#
+ (cons #{rest\ 1288}# #{req\ 1287}#)
+ #{req\ 1287}#))
+ (values #{req\ 1287}# #f #{rest\ 1288}# #f)
+ (syntax-violation
+ 'lambda
+ "duplicate identifier in argument list"
+ #{orig-args\ 1281}#))))
+ (#{req\ 1284}#
+ (lambda (#{args\ 1294}# #{rreq\ 1295}#)
+ (let ((#{tmp\ 1298}# #{args\ 1294}#))
+ (let ((#{tmp\ 1299}#
+ ($sc-dispatch #{tmp\ 1298}# (quote ()))))
+ (if #{tmp\ 1299}#
+ (@apply
+ (lambda ()
+ (#{check\ 1286}# (reverse #{rreq\ 1295}#) #f))
+ #{tmp\ 1299}#)
+ (let ((#{tmp\ 1300}#
+ ($sc-dispatch
+ #{tmp\ 1298}#
+ '(any . any))))
+ (if (if #{tmp\ 1300}#
+ (@apply
+ (lambda (#{a\ 1303}# #{b\ 1304}#)
+ (#{id?\ 387}# #{a\ 1303}#))
+ #{tmp\ 1300}#)
+ #f)
+ (@apply
+ (lambda (#{a\ 1307}# #{b\ 1308}#)
+ (#{req\ 1284}#
+ #{b\ 1308}#
+ (cons #{a\ 1307}# #{rreq\ 1295}#)))
+ #{tmp\ 1300}#)
+ (let ((#{tmp\ 1309}# (list #{tmp\ 1298}#)))
+ (if (if #{tmp\ 1309}#
+ (@apply
+ (lambda (#{r\ 1311}#)
+ (#{id?\ 387}# #{r\ 1311}#))
+ #{tmp\ 1309}#)
+ #f)
+ (@apply
+ (lambda (#{r\ 1313}#)
+ (#{check\ 1286}#
+ (reverse #{rreq\ 1295}#)
+ #{r\ 1313}#))
+ #{tmp\ 1309}#)
+ (let ((#{else\ 1315}# #{tmp\ 1298}#))
+ (syntax-violation
+ 'lambda
+ "invalid argument list"
+ #{orig-args\ 1281}#
+ #{args\ 1294}#))))))))))))
+ (begin
+ (#{req\ 1284}# #{orig-args\ 1281}# (quote ()))))))
+ (#{ellipsis?\ 488}#
+ (lambda (#{x\ 1316}#)
+ (if (#{nonsymbol-id?\ 385}# #{x\ 1316}#)
+ (#{free-id=?\ 446}#
+ #{x\ 1316}#
+ '#(syntax-object
+ ...
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1317"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+ set-syntax-object-module!
+ set-syntax-object-wrap!
+ set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+ syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+ build-global-definition
+ maybe-name-value!
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+ get-global-definition-hook
+ put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors
+ and-map*)
+ ((top) (top) (top) (top))
+ ("i38" "i37" "i36" "i34")))
+ (hygiene guile)))
+ #f)))
+ (#{chi-void\ 486}#
+ (lambda () (#{build-void\ 307}# #f)))
+ (#{eval-local-transformer\ 484}#
+ (lambda (#{expanded\ 1321}# #{mod\ 1322}#)
+ (begin
+ (let ((#{p\ 1326}#
+ (#{local-eval-hook\ 298}#
+ #{expanded\ 1321}#
+ #{mod\ 1322}#)))
+ (if (procedure? #{p\ 1326}#)
+ #{p\ 1326}#
(syntax-violation
#f
"nonprocedure transformer"
- #{p\ 1311}#)))))
- (#{chi-local-syntax\ 467}#
- (lambda (#{rec?\ 1312}#
- #{e\ 1313}#
- #{r\ 1314}#
- #{w\ 1315}#
- #{s\ 1316}#
- #{mod\ 1317}#
- #{k\ 1318}#)
- ((lambda (#{tmp\ 1326}#)
- ((lambda (#{tmp\ 1327}#)
- (if #{tmp\ 1327}#
- (apply (lambda (#{_\ 1333}#
- #{id\ 1334}#
- #{val\ 1335}#
- #{e1\ 1336}#
- #{e2\ 1337}#)
- (let ((#{ids\ 1339}# #{id\ 1334}#))
- (if (not (#{valid-bound-ids?\ 435}#
- #{ids\ 1339}#))
- (syntax-violation
- #f
- "duplicate bound keyword"
- #{e\ 1313}#)
- (let ((#{labels\ 1342}#
- (#{gen-labels\ 390}#
- #{ids\ 1339}#)))
- (let ((#{new-w\ 1344}#
- (#{make-binding-wrap\ 419}#
- #{ids\ 1339}#
- #{labels\ 1342}#
- #{w\ 1315}#)))
- (#{k\ 1318}#
- (cons #{e1\ 1336}# #{e2\ 1337}#)
- (#{extend-env\ 360}#
- #{labels\ 1342}#
- (let ((#{w\ 1348}#
- (if #{rec?\ 1312}#
- #{new-w\ 1344}#
- #{w\ 1315}#))
- (#{trans-r\ 1349}#
- (#{macros-only-env\ 364}#
- #{r\ 1314}#)))
- (map (lambda (#{x\ 1350}#)
- (cons 'macro
-
(#{eval-local-transformer\ 469}#
- (#{chi\ 457}#
- #{x\ 1350}#
- #{trans-r\
1349}#
- #{w\ 1348}#
- #{mod\ 1317}#)
- #{mod\ 1317}#)))
- #{val\ 1335}#))
- #{r\ 1314}#)
- #{new-w\ 1344}#
- #{s\ 1316}#
- #{mod\ 1317}#))))))
- #{tmp\ 1327}#)
- ((lambda (#{_\ 1355}#)
- (syntax-violation
- #f
- "bad local syntax definition"
- (#{source-wrap\ 443}#
- #{e\ 1313}#
- #{w\ 1315}#
- #{s\ 1316}#
- #{mod\ 1317}#)))
- #{tmp\ 1326}#)))
- ($sc-dispatch
- #{tmp\ 1326}#
- '(any #(each (any any)) any . each-any))))
- #{e\ 1313}#)))
- (#{chi-body\ 465}#
- (lambda (#{body\ 1356}#
- #{outer-form\ 1357}#
- #{r\ 1358}#
- #{w\ 1359}#
- #{mod\ 1360}#)
- (let ((#{r\ 1368}#
+ #{p\ 1326}#))))))
+ (#{chi-local-syntax\ 482}#
+ (lambda (#{rec?\ 1327}#
+ #{e\ 1328}#
+ #{r\ 1329}#
+ #{w\ 1330}#
+ #{s\ 1331}#
+ #{mod\ 1332}#
+ #{k\ 1333}#)
+ (let ((#{tmp\ 1341}# #{e\ 1328}#))
+ (let ((#{tmp\ 1342}#
+ ($sc-dispatch
+ #{tmp\ 1341}#
+ '(any #(each (any any)) any . each-any))))
+ (if #{tmp\ 1342}#
+ (@apply
+ (lambda (#{_\ 1348}#
+ #{id\ 1349}#
+ #{val\ 1350}#
+ #{e1\ 1351}#
+ #{e2\ 1352}#)
+ (begin
+ (let ((#{ids\ 1354}# #{id\ 1349}#))
+ (if (not (#{valid-bound-ids?\ 450}# #{ids\ 1354}#))
+ (syntax-violation
+ #f
+ "duplicate bound keyword"
+ #{e\ 1328}#)
+ (begin
+ (let ((#{labels\ 1357}#
+ (#{gen-labels\ 405}# #{ids\ 1354}#)))
+ (begin
+ (let ((#{new-w\ 1359}#
+ (#{make-binding-wrap\ 434}#
+ #{ids\ 1354}#
+ #{labels\ 1357}#
+ #{w\ 1330}#)))
+ (#{k\ 1333}#
+ (cons #{e1\ 1351}# #{e2\ 1352}#)
+ (#{extend-env\ 375}#
+ #{labels\ 1357}#
+ (begin
+ (let ((#{w\ 1363}#
+ (if #{rec?\ 1327}#
+ #{new-w\ 1359}#
+ #{w\ 1330}#))
+ (#{trans-r\ 1364}#
+ (#{macros-only-env\ 379}#
+ #{r\ 1329}#)))
+ (map (lambda (#{x\ 1365}#)
+ (cons 'macro
+
(#{eval-local-transformer\ 484}#
+ (#{chi\ 472}#
+ #{x\ 1365}#
+ #{trans-r\ 1364}#
+ #{w\ 1363}#
+ #{mod\ 1332}#)
+ #{mod\ 1332}#)))
+ #{val\ 1350}#)))
+ #{r\ 1329}#)
+ #{new-w\ 1359}#
+ #{s\ 1331}#
+ #{mod\ 1332}#)))))))))
+ #{tmp\ 1342}#)
+ (let ((#{_\ 1370}# #{tmp\ 1341}#))
+ (syntax-violation
+ #f
+ "bad local syntax definition"
+ (#{source-wrap\ 458}#
+ #{e\ 1328}#
+ #{w\ 1330}#
+ #{s\ 1331}#
+ #{mod\ 1332}#))))))))
+ (#{chi-body\ 480}#
+ (lambda (#{body\ 1371}#
+ #{outer-form\ 1372}#
+ #{r\ 1373}#
+ #{w\ 1374}#
+ #{mod\ 1375}#)
+ (begin
+ (let ((#{r\ 1383}#
(cons '("placeholder" placeholder)
- #{r\ 1358}#)))
- (let ((#{ribcage\ 1370}#
- (#{make-ribcage\ 393}#
- '()
- '()
- '())))
- (let ((#{w\ 1373}#
- (#{make-wrap\ 377}#
- (#{wrap-marks\ 379}# #{w\ 1359}#)
- (cons #{ribcage\ 1370}#
- (#{wrap-subst\ 381}# #{w\ 1359}#)))))
- (letrec ((#{parse\ 1382}#
- (lambda (#{body\ 1383}#
- #{ids\ 1384}#
- #{labels\ 1385}#
- #{var-ids\ 1386}#
- #{vars\ 1387}#
- #{vals\ 1388}#
- #{bindings\ 1389}#)
- (if (null? #{body\ 1383}#)
- (syntax-violation
- #f
- "no expressions in body"
- #{outer-form\ 1357}#)
- (let ((#{e\ 1394}# (cdar #{body\ 1383}#))
- (#{er\ 1395}# (caar #{body\ 1383}#)))
+ #{r\ 1373}#)))
+ (begin
+ (let ((#{ribcage\ 1385}#
+ (#{make-ribcage\ 408}#
+ '()
+ '()
+ '())))
+ (begin
+ (let ((#{w\ 1388}#
+ (#{make-wrap\ 392}#
+ (#{wrap-marks\ 394}# #{w\ 1374}#)
+ (cons #{ribcage\ 1385}#
+ (#{wrap-subst\ 396}# #{w\ 1374}#)))))
+ (letrec*
+ ((#{parse\ 1397}#
+ (lambda (#{body\ 1398}#
+ #{ids\ 1399}#
+ #{labels\ 1400}#
+ #{var-ids\ 1401}#
+ #{vars\ 1402}#
+ #{vals\ 1403}#
+ #{bindings\ 1404}#)
+ (if (null? #{body\ 1398}#)
+ (syntax-violation
+ #f
+ "no expressions in body"
+ #{outer-form\ 1372}#)
+ (begin
+ (let ((#{e\ 1409}#
+ (cdr (car #{body\ 1398}#)))
+ (#{er\ 1410}#
+ (car (car #{body\ 1398}#))))
(call-with-values
(lambda ()
- (#{syntax-type\ 453}#
- #{e\ 1394}#
- #{er\ 1395}#
+ (#{syntax-type\ 468}#
+ #{e\ 1409}#
+ #{er\ 1410}#
'(())
- (#{source-annotation\ 351}#
- #{er\ 1395}#)
- #{ribcage\ 1370}#
- #{mod\ 1360}#
+ (#{source-annotation\ 366}#
+ #{er\ 1410}#)
+ #{ribcage\ 1385}#
+ #{mod\ 1375}#
#f))
- (lambda (#{type\ 1397}#
- #{value\ 1398}#
- #{e\ 1399}#
- #{w\ 1400}#
- #{s\ 1401}#
- #{mod\ 1402}#)
- (if (memv #{type\ 1397}#
- '(define-form))
- (let ((#{id\ 1412}#
- (#{wrap\ 441}#
- #{value\ 1398}#
- #{w\ 1400}#
- #{mod\ 1402}#))
- (#{label\ 1413}#
- (#{gen-label\ 388}#)))
- (let ((#{var\ 1415}#
- (#{gen-var\ 485}#
- #{id\ 1412}#)))
+ (lambda (#{type\ 1412}#
+ #{value\ 1413}#
+ #{e\ 1414}#
+ #{w\ 1415}#
+ #{s\ 1416}#
+ #{mod\ 1417}#)
+ (if (eqv? #{type\ 1412}#
+ 'define-form)
+ (begin
+ (let ((#{id\ 1427}#
+ (#{wrap\ 456}#
+ #{value\ 1413}#
+ #{w\ 1415}#
+ #{mod\ 1417}#))
+ (#{label\ 1428}#
+ (#{gen-label\ 403}#)))
(begin
- (#{extend-ribcage!\ 417}#
- #{ribcage\ 1370}#
- #{id\ 1412}#
- #{label\ 1413}#)
- (#{parse\ 1382}#
- (cdr #{body\ 1383}#)
- (cons #{id\ 1412}#
- #{ids\ 1384}#)
- (cons #{label\ 1413}#
- #{labels\ 1385}#)
- (cons #{id\ 1412}#
- #{var-ids\ 1386}#)
- (cons #{var\ 1415}#
- #{vars\ 1387}#)
- (cons (cons #{er\ 1395}#
- (#{wrap\ 441}#
- #{e\ 1399}#
- #{w\ 1400}#
- #{mod\
1402}#))
- #{vals\ 1388}#)
- (cons (cons 'lexical
- #{var\ 1415}#)
- #{bindings\
1389}#)))))
- (if (memv #{type\ 1397}#
- '(define-syntax-form))
- (let ((#{id\ 1420}#
- (#{wrap\ 441}#
- #{value\ 1398}#
- #{w\ 1400}#
- #{mod\ 1402}#))
- (#{label\ 1421}#
- (#{gen-label\ 388}#)))
- (begin
- (#{extend-ribcage!\ 417}#
- #{ribcage\ 1370}#
- #{id\ 1420}#
- #{label\ 1421}#)
- (#{parse\ 1382}#
- (cdr #{body\ 1383}#)
- (cons #{id\ 1420}#
- #{ids\ 1384}#)
- (cons #{label\ 1421}#
- #{labels\ 1385}#)
- #{var-ids\ 1386}#
- #{vars\ 1387}#
- #{vals\ 1388}#
- (cons (cons 'macro
- (cons #{er\
1395}#
- (#{wrap\
441}#
- #{e\
1399}#
- #{w\
1400}#
- #{mod\
1402}#)))
- #{bindings\
1389}#))))
- (if (memv #{type\ 1397}#
- '(begin-form))
- ((lambda (#{tmp\ 1424}#)
- ((lambda (#{tmp\ 1425}#)
- (if #{tmp\ 1425}#
- (apply (lambda (#{_\
1428}#
- #{e1\
1429}#)
- (#{parse\
1382}#
- (letrec
((#{f\ 1432}#
-
(lambda (#{forms\ 1433}#)
-
(if (null? #{forms\ 1433}#)
-
(cdr #{body\ 1383}#)
-
(cons (cons #{er\ 1395}#
-
(#{wrap\ 441}#
-
(car #{forms\ 1433}#)
-
#{w\ 1400}#
-
#{mod\ 1402}#))
-
(#{f\ 1432}#
-
(cdr #{forms\ 1433}#)))))))
- (#{f\
1432}#
- #{e1\
1429}#))
- #{ids\
1384}#
- #{labels\
1385}#
- #{var-ids\
1386}#
- #{vars\
1387}#
- #{vals\
1388}#
- #{bindings\
1389}#))
- #{tmp\ 1425}#)
- (syntax-violation
- #f
- "source expression
failed to match any pattern"
- #{tmp\ 1424}#)))
- ($sc-dispatch
- #{tmp\ 1424}#
- '(any . each-any))))
- #{e\ 1399}#)
- (if (memv #{type\ 1397}#
- '(local-syntax-form))
- (#{chi-local-syntax\ 467}#
- #{value\ 1398}#
- #{e\ 1399}#
- #{er\ 1395}#
- #{w\ 1400}#
- #{s\ 1401}#
- #{mod\ 1402}#
- (lambda (#{forms\ 1436}#
- #{er\ 1437}#
- #{w\ 1438}#
- #{s\ 1439}#
- #{mod\ 1440}#)
- (#{parse\ 1382}#
- (letrec ((#{f\ 1448}#
- (lambda
(#{forms\ 1449}#)
- (if
(null? #{forms\ 1449}#)
- (cdr
#{body\ 1383}#)
- (cons
(cons #{er\ 1437}#
-
(#{wrap\ 441}#
-
(car #{forms\ 1449}#)
-
#{w\ 1438}#
-
#{mod\ 1440}#))
-
(#{f\ 1448}#
-
(cdr #{forms\ 1449}#)))))))
- (#{f\ 1448}#
- #{forms\ 1436}#))
- #{ids\ 1384}#
- #{labels\ 1385}#
- #{var-ids\ 1386}#
- #{vars\ 1387}#
- #{vals\ 1388}#
- #{bindings\ 1389}#)))
- (if (null? #{ids\ 1384}#)
- (#{build-sequence\ 324}#
+ (let ((#{var\ 1430}#
+ (#{gen-var\ 500}#
+ #{id\ 1427}#)))
+ (begin
+ (#{extend-ribcage!\ 432}#
+ #{ribcage\ 1385}#
+ #{id\ 1427}#
+ #{label\ 1428}#)
+ (#{parse\ 1397}#
+ (cdr #{body\ 1398}#)
+ (cons #{id\ 1427}#
+ #{ids\ 1399}#)
+ (cons #{label\ 1428}#
+ #{labels\ 1400}#)
+ (cons #{id\ 1427}#
+ #{var-ids\
1401}#)
+ (cons #{var\ 1430}#
+ #{vars\ 1402}#)
+ (cons (cons #{er\
1410}#
+ (#{wrap\
456}#
+ #{e\
1414}#
+ #{w\
1415}#
+ #{mod\
1417}#))
+ #{vals\ 1403}#)
+ (cons (cons 'lexical
+ #{var\
1430}#)
+ #{bindings\
1404}#)))))))
+ (if (eqv? #{type\ 1412}#
+ 'define-syntax-form)
+ (begin
+ (let ((#{id\ 1435}#
+ (#{wrap\ 456}#
+ #{value\ 1413}#
+ #{w\ 1415}#
+ #{mod\ 1417}#))
+ (#{label\ 1436}#
+ (#{gen-label\ 403}#)))
+ (begin
+ (#{extend-ribcage!\ 432}#
+ #{ribcage\ 1385}#
+ #{id\ 1435}#
+ #{label\ 1436}#)
+ (#{parse\ 1397}#
+ (cdr #{body\ 1398}#)
+ (cons #{id\ 1435}#
+ #{ids\ 1399}#)
+ (cons #{label\ 1436}#
+ #{labels\ 1400}#)
+ #{var-ids\ 1401}#
+ #{vars\ 1402}#
+ #{vals\ 1403}#
+ (cons (cons 'macro
+ (cons #{er\
1410}#
+
(#{wrap\ 456}#
+ #{e\
1414}#
+ #{w\
1415}#
+
#{mod\ 1417}#)))
+ #{bindings\
1404}#)))))
+ (if (eqv? #{type\ 1412}#
+ 'begin-form)
+ (let ((#{tmp\ 1439}#
+ #{e\ 1414}#))
+ (let ((#{tmp\ 1440}#
+ ($sc-dispatch
+ #{tmp\ 1439}#
+ '(any .
+ each-any))))
+ (if #{tmp\ 1440}#
+ (@apply
+ (lambda (#{_\ 1443}#
+ #{e1\ 1444}#)
+ (#{parse\ 1397}#
+ (letrec*
+ ((#{f\ 1447}#
+ (lambda
(#{forms\ 1448}#)
+ (if (null?
#{forms\ 1448}#)
+ (cdr
#{body\ 1398}#)
+ (cons
(cons #{er\ 1410}#
+
(#{wrap\ 456}#
+
(car #{forms\ 1448}#)
+
#{w\ 1415}#
+
#{mod\ 1417}#))
+
(#{f\ 1447}#
+
(cdr #{forms\ 1448}#)))))))
+ (begin
+ (#{f\ 1447}#
+ #{e1\
1444}#)))
+ #{ids\ 1399}#
+ #{labels\ 1400}#
+ #{var-ids\ 1401}#
+ #{vars\ 1402}#
+ #{vals\ 1403}#
+ #{bindings\
1404}#))
+ #{tmp\ 1440}#)
+ (syntax-violation
+ #f
+ "source expression
failed to match any pattern"
+ #{tmp\ 1439}#))))
+ (if (eqv? #{type\ 1412}#
+ 'local-syntax-form)
+ (#{chi-local-syntax\ 482}#
+ #{value\ 1413}#
+ #{e\ 1414}#
+ #{er\ 1410}#
+ #{w\ 1415}#
+ #{s\ 1416}#
+ #{mod\ 1417}#
+ (lambda (#{forms\ 1451}#
+ #{er\ 1452}#
+ #{w\ 1453}#
+ #{s\ 1454}#
+ #{mod\ 1455}#)
+ (#{parse\ 1397}#
+ (letrec*
+ ((#{f\ 1463}#
+ (lambda (#{forms\
1464}#)
+ (if (null?
#{forms\ 1464}#)
+ (cdr #{body\
1398}#)
+ (cons (cons
#{er\ 1452}#
+
(#{wrap\ 456}#
+
(car #{forms\ 1464}#)
+
#{w\ 1453}#
+
#{mod\ 1455}#))
+ (#{f\
1463}#
+ (cdr
#{forms\ 1464}#)))))))
+ (begin
+ (#{f\ 1463}#
+ #{forms\
1451}#)))
+ #{ids\ 1399}#
+ #{labels\ 1400}#
+ #{var-ids\ 1401}#
+ #{vars\ 1402}#
+ #{vals\ 1403}#
+ #{bindings\ 1404}#)))
+ (if (null? #{ids\ 1399}#)
+ (#{build-sequence\ 339}#
#f
- (map (lambda (#{x\
1452}#)
- (#{chi\ 457}#
- (cdr #{x\
1452}#)
- (car #{x\
1452}#)
+ (map (lambda (#{x\
1467}#)
+ (#{chi\ 472}#
+ (cdr #{x\
1467}#)
+ (car #{x\
1467}#)
'(())
- #{mod\ 1402}#))
- (cons (cons #{er\
1395}#
-
(#{source-wrap\ 443}#
- #{e\
1399}#
- #{w\
1400}#
- #{s\
1401}#
-
#{mod\ 1402}#))
- (cdr #{body\
1383}#))))
+ #{mod\ 1417}#))
+ (cons (cons #{er\
1410}#
+
(#{source-wrap\ 458}#
+ #{e\
1414}#
+ #{w\
1415}#
+ #{s\
1416}#
+
#{mod\ 1417}#))
+ (cdr #{body\
1398}#))))
(begin
- (if (not
(#{valid-bound-ids?\ 435}#
- #{ids\
1384}#))
+ (if (not
(#{valid-bound-ids?\ 450}#
+ #{ids\
1399}#))
(syntax-violation
#f
"invalid or
duplicate identifier in definition"
- #{outer-form\
1357}#))
- (letrec ((#{loop\ 1459}#
- (lambda
(#{bs\ 1460}#
-
#{er-cache\ 1461}#
-
#{r-cache\ 1462}#)
- (if (not
(null? #{bs\ 1460}#))
- (let
((#{b\ 1465}#
-
(car #{bs\ 1460}#)))
- (if
(eq? (car #{b\ 1465}#)
-
'macro)
- (let
((#{er\ 1468}#
-
(cadr #{b\ 1465}#)))
-
(let ((#{r-cache\ 1470}#
-
(if (eq? #{er\ 1468}#
-
#{er-cache\ 1461}#)
-
#{r-cache\ 1462}#
-
(#{macros-only-env\ 364}#
-
#{er\ 1468}#))))
+ #{outer-form\
1372}#))
+ (letrec*
+ ((#{loop\ 1474}#
+ (lambda (#{bs\
1475}#
+
#{er-cache\ 1476}#
+ #{r-cache\
1477}#)
+ (if (not (null?
#{bs\ 1475}#))
+ (begin
+ (let ((#{b\
1480}#
+ (car
#{bs\ 1475}#)))
+ (if (eq?
(car #{b\ 1480}#)
+
'macro)
+ (begin
+ (let
((#{er\ 1483}#
+
(car (cdr #{b\ 1480}#))))
+ (begin
+
(let ((#{r-cache\ 1485}#
+
(if (eq? #{er\ 1483}#
+
#{er-cache\ 1476}#)
+
#{r-cache\ 1477}#
+
(#{macros-only-env\ 379}#
+
#{er\ 1483}#))))
(begin
(set-cdr!
-
#{b\ 1465}#
-
(#{eval-local-transformer\ 469}#
-
(#{chi\ 457}#
-
(cddr #{b\ 1465}#)
-
#{r-cache\ 1470}#
+
#{b\ 1480}#
+
(#{eval-local-transformer\ 484}#
+
(#{chi\ 472}#
+
(cdr (cdr #{b\ 1480}#))
+
#{r-cache\ 1485}#
'(())
-
#{mod\ 1402}#)
-
#{mod\ 1402}#))
-
(#{loop\ 1459}#
-
(cdr #{bs\ 1460}#)
-
#{er\ 1468}#
-
#{r-cache\ 1470}#))))
-
(#{loop\ 1459}#
-
(cdr #{bs\ 1460}#)
-
#{er-cache\ 1461}#
-
#{r-cache\ 1462}#)))))))
- (#{loop\ 1459}#
- #{bindings\ 1389}#
- #f
- #f))
+
#{mod\ 1417}#)
+
#{mod\ 1417}#))
+
(#{loop\ 1474}#
+
(cdr #{bs\ 1475}#)
+
#{er\ 1483}#
+
#{r-cache\ 1485}#))))))
+ (#{loop\
1474}#
+ (cdr
#{bs\ 1475}#)
+
#{er-cache\ 1476}#
+
#{r-cache\ 1477}#))))))))
+ (begin
+ (#{loop\ 1474}#
+ #{bindings\ 1404}#
+ #f
+ #f)))
(set-cdr!
- #{r\ 1368}#
- (#{extend-env\ 360}#
- #{labels\ 1385}#
- #{bindings\ 1389}#
- (cdr #{r\ 1368}#)))
- (#{build-letrec\ 330}#
+ #{r\ 1383}#
+ (#{extend-env\ 375}#
+ #{labels\ 1400}#
+ #{bindings\ 1404}#
+ (cdr #{r\ 1383}#)))
+ (#{build-letrec\ 345}#
#f
+ #t
(map syntax->datum
- #{var-ids\ 1386}#)
- #{vars\ 1387}#
- (map (lambda (#{x\
1473}#)
- (#{chi\ 457}#
- (cdr #{x\
1473}#)
- (car #{x\
1473}#)
+ #{var-ids\ 1401}#)
+ #{vars\ 1402}#
+ (map (lambda (#{x\
1488}#)
+ (#{chi\ 472}#
+ (cdr #{x\
1488}#)
+ (car #{x\
1488}#)
'(())
- #{mod\
1402}#))
- #{vals\ 1388}#)
- (#{build-sequence\
324}#
+ #{mod\
1417}#))
+ #{vals\ 1403}#)
+ (#{build-sequence\
339}#
#f
- (map (lambda (#{x\
1477}#)
- (#{chi\ 457}#
- (cdr #{x\
1477}#)
- (car #{x\
1477}#)
+ (map (lambda (#{x\
1492}#)
+ (#{chi\ 472}#
+ (cdr #{x\
1492}#)
+ (car #{x\
1492}#)
'(())
- #{mod\
1402}#))
- (cons (cons
#{er\ 1395}#
-
(#{source-wrap\ 443}#
-
#{e\ 1399}#
-
#{w\ 1400}#
-
#{s\ 1401}#
-
#{mod\ 1402}#))
- (cdr
#{body\ 1383}#))))))))))))))))))
- (#{parse\ 1382}#
- (map (lambda (#{x\ 1390}#)
- (cons #{r\ 1368}#
- (#{wrap\ 441}#
- #{x\ 1390}#
- #{w\ 1373}#
- #{mod\ 1360}#)))
- #{body\ 1356}#)
- '()
- '()
- '()
- '()
- '()
- '())))))))
- (#{chi-macro\ 463}#
- (lambda (#{p\ 1480}#
- #{e\ 1481}#
- #{r\ 1482}#
- #{w\ 1483}#
- #{s\ 1484}#
- #{rib\ 1485}#
- #{mod\ 1486}#)
- (letrec ((#{rebuild-macro-output\ 1495}#
- (lambda (#{x\ 1496}# #{m\ 1497}#)
- (if (pair? #{x\ 1496}#)
- (#{decorate-source\ 290}#
- (cons (#{rebuild-macro-output\ 1495}#
- (car #{x\ 1496}#)
- #{m\ 1497}#)
- (#{rebuild-macro-output\ 1495}#
- (cdr #{x\ 1496}#)
- #{m\ 1497}#))
- #{s\ 1484}#)
- (if (#{syntax-object?\ 336}# #{x\ 1496}#)
- (let ((#{w\ 1505}#
- (#{syntax-object-wrap\ 340}#
- #{x\ 1496}#)))
- (let ((#{ms\ 1508}#
- (#{wrap-marks\ 379}# #{w\ 1505}#))
- (#{s\ 1509}#
- (#{wrap-subst\ 381}# #{w\ 1505}#)))
- (if (if (pair? #{ms\ 1508}#)
- (eq? (car #{ms\ 1508}#) #f)
- #f)
- (#{make-syntax-object\ 334}#
- (#{syntax-object-expression\ 338}#
- #{x\ 1496}#)
- (#{make-wrap\ 377}#
- (cdr #{ms\ 1508}#)
- (if #{rib\ 1485}#
- (cons #{rib\ 1485}#
- (cdr #{s\ 1509}#))
- (cdr #{s\ 1509}#)))
- (#{syntax-object-module\ 342}#
- #{x\ 1496}#))
- (#{make-syntax-object\ 334}#
- (#{decorate-source\ 290}#
- (#{syntax-object-expression\ 338}#
- #{x\ 1496}#)
- #{s\ 1509}#)
- (#{make-wrap\ 377}#
- (cons #{m\ 1497}# #{ms\ 1508}#)
- (if #{rib\ 1485}#
- (cons #{rib\ 1485}#
- (cons 'shift
- #{s\ 1509}#))
- (cons (quote shift) #{s\ 1509}#)))
- (#{syntax-object-module\ 342}#
- #{x\ 1496}#)))))
- (if (vector? #{x\ 1496}#)
- (let ((#{n\ 1517}#
- (vector-length #{x\ 1496}#)))
- (let ((#{v\ 1519}#
- (#{decorate-source\ 290}#
- (make-vector #{n\ 1517}#)
- #{x\ 1496}#)))
- (letrec ((#{loop\ 1522}#
- (lambda (#{i\ 1523}#)
- (if (#{fx=\ 277}#
- #{i\ 1523}#
- #{n\ 1517}#)
- (begin
- (if #f #f)
- #{v\ 1519}#)
- (begin
- (vector-set!
- #{v\ 1519}#
- #{i\ 1523}#
-
(#{rebuild-macro-output\ 1495}#
- (vector-ref
- #{x\ 1496}#
- #{i\ 1523}#)
- #{m\ 1497}#))
- (#{loop\ 1522}#
- (#{fx+\ 273}#
- #{i\ 1523}#
- 1)))))))
- (#{loop\ 1522}# 0))))
- (if (symbol? #{x\ 1496}#)
- (syntax-violation
- #f
- "encountered raw symbol in macro output"
- (#{source-wrap\ 443}#
- #{e\ 1481}#
- #{w\ 1483}#
- (#{wrap-subst\ 381}# #{w\ 1483}#)
- #{mod\ 1486}#)
- #{x\ 1496}#)
- (#{decorate-source\ 290}#
- #{x\ 1496}#
- #{s\ 1484}#))))))))
- (#{rebuild-macro-output\ 1495}#
- (#{p\ 1480}#
- (#{source-wrap\ 443}#
- #{e\ 1481}#
- (#{anti-mark\ 413}# #{w\ 1483}#)
- #{s\ 1484}#
- #{mod\ 1486}#))
- (gensym "m")))))
- (#{chi-application\ 461}#
- (lambda (#{x\ 1530}#
- #{e\ 1531}#
- #{r\ 1532}#
- #{w\ 1533}#
- #{s\ 1534}#
- #{mod\ 1535}#)
- ((lambda (#{tmp\ 1542}#)
- ((lambda (#{tmp\ 1543}#)
- (if #{tmp\ 1543}#
- (apply (lambda (#{e0\ 1546}# #{e1\ 1547}#)
- (#{build-application\ 294}#
- #{s\ 1534}#
- #{x\ 1530}#
- (map (lambda (#{e\ 1548}#)
- (#{chi\ 457}#
- #{e\ 1548}#
- #{r\ 1532}#
- #{w\ 1533}#
- #{mod\ 1535}#))
- #{e1\ 1547}#)))
- #{tmp\ 1543}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 1542}#)))
- ($sc-dispatch
- #{tmp\ 1542}#
- '(any . each-any))))
- #{e\ 1531}#)))
- (#{chi-expr\ 459}#
- (lambda (#{type\ 1551}#
- #{value\ 1552}#
- #{e\ 1553}#
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#)
- (if (memv #{type\ 1551}# (quote (lexical)))
- (#{build-lexical-reference\ 300}#
- 'value
- #{s\ 1556}#
- #{e\ 1553}#
- #{value\ 1552}#)
- (if (memv #{type\ 1551}# (quote (core core-form)))
- (#{value\ 1552}#
- #{e\ 1553}#
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#)
- (if (memv #{type\ 1551}# (quote (module-ref)))
- (call-with-values
- (lambda ()
- (#{value\ 1552}#
- #{e\ 1553}#
- #{r\ 1554}#
- #{w\ 1555}#))
- (lambda (#{e\ 1568}#
- #{r\ 1569}#
- #{w\ 1570}#
- #{s\ 1571}#
- #{mod\ 1572}#)
- (#{chi\ 457}#
- #{e\ 1568}#
- #{r\ 1569}#
- #{w\ 1570}#
- #{mod\ 1572}#)))
- (if (memv #{type\ 1551}# (quote (lexical-call)))
- (#{chi-application\ 461}#
- (let ((#{id\ 1580}# (car #{e\ 1553}#)))
- (#{build-lexical-reference\ 300}#
+ #{mod\
1417}#))
+ (cons (cons
#{er\ 1410}#
+
(#{source-wrap\ 458}#
+
#{e\ 1414}#
+
#{w\ 1415}#
+
#{s\ 1416}#
+
#{mod\ 1417}#))
+ (cdr
#{body\ 1398}#)))))))))))))))))))
+ (begin
+ (#{parse\ 1397}#
+ (map (lambda (#{x\ 1405}#)
+ (cons #{r\ 1383}#
+ (#{wrap\ 456}#
+ #{x\ 1405}#
+ #{w\ 1388}#
+ #{mod\ 1375}#)))
+ #{body\ 1371}#)
+ '()
+ '()
+ '()
+ '()
+ '()
+ '())))))))))))
+ (#{chi-macro\ 478}#
+ (lambda (#{p\ 1495}#
+ #{e\ 1496}#
+ #{r\ 1497}#
+ #{w\ 1498}#
+ #{s\ 1499}#
+ #{rib\ 1500}#
+ #{mod\ 1501}#)
+ (letrec*
+ ((#{rebuild-macro-output\ 1510}#
+ (lambda (#{x\ 1511}# #{m\ 1512}#)
+ (if (pair? #{x\ 1511}#)
+ (#{decorate-source\ 305}#
+ (cons (#{rebuild-macro-output\ 1510}#
+ (car #{x\ 1511}#)
+ #{m\ 1512}#)
+ (#{rebuild-macro-output\ 1510}#
+ (cdr #{x\ 1511}#)
+ #{m\ 1512}#))
+ #{s\ 1499}#)
+ (if (#{syntax-object?\ 351}# #{x\ 1511}#)
+ (begin
+ (let ((#{w\ 1520}#
+ (#{syntax-object-wrap\ 355}# #{x\ 1511}#)))
+ (begin
+ (let ((#{ms\ 1523}#
+ (#{wrap-marks\ 394}# #{w\ 1520}#))
+ (#{s\ 1524}#
+ (#{wrap-subst\ 396}# #{w\ 1520}#)))
+ (if (if (pair? #{ms\ 1523}#)
+ (eq? (car #{ms\ 1523}#) #f)
+ #f)
+ (#{make-syntax-object\ 349}#
+ (#{syntax-object-expression\ 353}#
+ #{x\ 1511}#)
+ (#{make-wrap\ 392}#
+ (cdr #{ms\ 1523}#)
+ (if #{rib\ 1500}#
+ (cons #{rib\ 1500}# (cdr #{s\ 1524}#))
+ (cdr #{s\ 1524}#)))
+ (#{syntax-object-module\ 357}#
+ #{x\ 1511}#))
+ (#{make-syntax-object\ 349}#
+ (#{decorate-source\ 305}#
+ (#{syntax-object-expression\ 353}#
+ #{x\ 1511}#)
+ #{s\ 1524}#)
+ (#{make-wrap\ 392}#
+ (cons #{m\ 1512}# #{ms\ 1523}#)
+ (if #{rib\ 1500}#
+ (cons #{rib\ 1500}#
+ (cons (quote shift) #{s\ 1524}#))
+ (cons (quote shift) #{s\ 1524}#)))
+ (#{syntax-object-module\ 357}#
+ #{x\ 1511}#)))))))
+ (if (vector? #{x\ 1511}#)
+ (begin
+ (let ((#{n\ 1532}# (vector-length #{x\ 1511}#)))
+ (begin
+ (let ((#{v\ 1534}#
+ (#{decorate-source\ 305}#
+ (make-vector #{n\ 1532}#)
+ #{x\ 1511}#)))
+ (letrec*
+ ((#{loop\ 1537}#
+ (lambda (#{i\ 1538}#)
+ (if (#{fx=\ 292}#
+ #{i\ 1538}#
+ #{n\ 1532}#)
+ (begin (if #f #f) #{v\ 1534}#)
+ (begin
+ (vector-set!
+ #{v\ 1534}#
+ #{i\ 1538}#
+ (#{rebuild-macro-output\ 1510}#
+ (vector-ref
+ #{x\ 1511}#
+ #{i\ 1538}#)
+ #{m\ 1512}#))
+ (#{loop\ 1537}#
+ (#{fx+\ 288}#
+ #{i\ 1538}#
+ 1)))))))
+ (begin (#{loop\ 1537}# 0)))))))
+ (if (symbol? #{x\ 1511}#)
+ (syntax-violation
+ #f
+ "encountered raw symbol in macro output"
+ (#{source-wrap\ 458}#
+ #{e\ 1496}#
+ #{w\ 1498}#
+ (#{wrap-subst\ 396}# #{w\ 1498}#)
+ #{mod\ 1501}#)
+ #{x\ 1511}#)
+ (#{decorate-source\ 305}#
+ #{x\ 1511}#
+ #{s\ 1499}#))))))))
+ (begin
+ (#{rebuild-macro-output\ 1510}#
+ (#{p\ 1495}#
+ (#{source-wrap\ 458}#
+ #{e\ 1496}#
+ (#{anti-mark\ 428}# #{w\ 1498}#)
+ #{s\ 1499}#
+ #{mod\ 1501}#))
+ (gensym "m"))))))
+ (#{chi-application\ 476}#
+ (lambda (#{x\ 1545}#
+ #{e\ 1546}#
+ #{r\ 1547}#
+ #{w\ 1548}#
+ #{s\ 1549}#
+ #{mod\ 1550}#)
+ (let ((#{tmp\ 1557}# #{e\ 1546}#))
+ (let ((#{tmp\ 1558}#
+ ($sc-dispatch
+ #{tmp\ 1557}#
+ '(any . each-any))))
+ (if #{tmp\ 1558}#
+ (@apply
+ (lambda (#{e0\ 1561}# #{e1\ 1562}#)
+ (#{build-application\ 309}#
+ #{s\ 1549}#
+ #{x\ 1545}#
+ (map (lambda (#{e\ 1563}#)
+ (#{chi\ 472}#
+ #{e\ 1563}#
+ #{r\ 1547}#
+ #{w\ 1548}#
+ #{mod\ 1550}#))
+ #{e1\ 1562}#)))
+ #{tmp\ 1558}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 1557}#))))))
+ (#{chi-expr\ 474}#
+ (lambda (#{type\ 1566}#
+ #{value\ 1567}#
+ #{e\ 1568}#
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#)
+ (if (eqv? #{type\ 1566}# (quote lexical))
+ (#{build-lexical-reference\ 315}#
+ 'value
+ #{s\ 1571}#
+ #{e\ 1568}#
+ #{value\ 1567}#)
+ (if (if (eqv? #{type\ 1566}# (quote core))
+ #t
+ (eqv? #{type\ 1566}# (quote core-form)))
+ (#{value\ 1567}#
+ #{e\ 1568}#
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#)
+ (if (eqv? #{type\ 1566}# (quote module-ref))
+ (call-with-values
+ (lambda ()
+ (#{value\ 1567}#
+ #{e\ 1568}#
+ #{r\ 1569}#
+ #{w\ 1570}#))
+ (lambda (#{e\ 1583}#
+ #{r\ 1584}#
+ #{w\ 1585}#
+ #{s\ 1586}#
+ #{mod\ 1587}#)
+ (#{chi\ 472}#
+ #{e\ 1583}#
+ #{r\ 1584}#
+ #{w\ 1585}#
+ #{mod\ 1587}#)))
+ (if (eqv? #{type\ 1566}# (quote lexical-call))
+ (#{chi-application\ 476}#
+ (begin
+ (let ((#{id\ 1595}# (car #{e\ 1568}#)))
+ (#{build-lexical-reference\ 315}#
'fun
- (#{source-annotation\ 351}# #{id\ 1580}#)
- (if (#{syntax-object?\ 336}# #{id\ 1580}#)
- (syntax->datum #{id\ 1580}#)
- #{id\ 1580}#)
- #{value\ 1552}#))
- #{e\ 1553}#
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#)
- (if (memv #{type\ 1551}# (quote (global-call)))
- (#{chi-application\ 461}#
- (#{build-global-reference\ 306}#
- (#{source-annotation\ 351}# (car #{e\ 1553}#))
- (if (#{syntax-object?\ 336}# #{value\ 1552}#)
- (#{syntax-object-expression\ 338}#
- #{value\ 1552}#)
- #{value\ 1552}#)
- (if (#{syntax-object?\ 336}# #{value\ 1552}#)
- (#{syntax-object-module\ 342}# #{value\ 1552}#)
- #{mod\ 1557}#))
- #{e\ 1553}#
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#)
- (if (memv #{type\ 1551}# (quote (constant)))
- (#{build-data\ 322}#
- #{s\ 1556}#
- (#{strip\ 483}#
- (#{source-wrap\ 443}#
- #{e\ 1553}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#)
- '(())))
- (if (memv #{type\ 1551}# (quote (global)))
- (#{build-global-reference\ 306}#
- #{s\ 1556}#
- #{value\ 1552}#
- #{mod\ 1557}#)
- (if (memv #{type\ 1551}# (quote (call)))
- (#{chi-application\ 461}#
- (#{chi\ 457}#
- (car #{e\ 1553}#)
- #{r\ 1554}#
- #{w\ 1555}#
- #{mod\ 1557}#)
- #{e\ 1553}#
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#)
- (if (memv #{type\ 1551}# (quote (begin-form)))
- ((lambda (#{tmp\ 1587}#)
- ((lambda (#{tmp\ 1588}#)
- (if #{tmp\ 1588}#
- (apply (lambda (#{_\ 1592}#
- #{e1\ 1593}#
- #{e2\ 1594}#)
- (#{chi-sequence\ 445}#
- (cons #{e1\ 1593}#
- #{e2\ 1594}#)
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#))
- #{tmp\ 1588}#)
+ (#{source-annotation\ 366}# #{id\ 1595}#)
+ (if (#{syntax-object?\ 351}# #{id\ 1595}#)
+ (syntax->datum #{id\ 1595}#)
+ #{id\ 1595}#)
+ #{value\ 1567}#)))
+ #{e\ 1568}#
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#)
+ (if (eqv? #{type\ 1566}# (quote global-call))
+ (#{chi-application\ 476}#
+ (#{build-global-reference\ 321}#
+ (#{source-annotation\ 366}# (car #{e\ 1568}#))
+ (if (#{syntax-object?\ 351}# #{value\ 1567}#)
+ (#{syntax-object-expression\ 353}#
+ #{value\ 1567}#)
+ #{value\ 1567}#)
+ (if (#{syntax-object?\ 351}# #{value\ 1567}#)
+ (#{syntax-object-module\ 357}# #{value\ 1567}#)
+ #{mod\ 1572}#))
+ #{e\ 1568}#
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#)
+ (if (eqv? #{type\ 1566}# (quote constant))
+ (#{build-data\ 337}#
+ #{s\ 1571}#
+ (#{strip\ 498}#
+ (#{source-wrap\ 458}#
+ #{e\ 1568}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#)
+ '(())))
+ (if (eqv? #{type\ 1566}# (quote global))
+ (#{build-global-reference\ 321}#
+ #{s\ 1571}#
+ #{value\ 1567}#
+ #{mod\ 1572}#)
+ (if (eqv? #{type\ 1566}# (quote call))
+ (#{chi-application\ 476}#
+ (#{chi\ 472}#
+ (car #{e\ 1568}#)
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{mod\ 1572}#)
+ #{e\ 1568}#
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#)
+ (if (eqv? #{type\ 1566}# (quote begin-form))
+ (let ((#{tmp\ 1602}# #{e\ 1568}#))
+ (let ((#{tmp\ 1603}#
+ ($sc-dispatch
+ #{tmp\ 1602}#
+ '(any any . each-any))))
+ (if #{tmp\ 1603}#
+ (@apply
+ (lambda (#{_\ 1607}#
+ #{e1\ 1608}#
+ #{e2\ 1609}#)
+ (#{chi-sequence\ 460}#
+ (cons #{e1\ 1608}# #{e2\ 1609}#)
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#))
+ #{tmp\ 1603}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp\ 1602}#))))
+ (if (eqv? #{type\ 1566}#
+ 'local-syntax-form)
+ (#{chi-local-syntax\ 482}#
+ #{value\ 1567}#
+ #{e\ 1568}#
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#
+ #{chi-sequence\ 460}#)
+ (if (eqv? #{type\ 1566}#
+ 'eval-when-form)
+ (let ((#{tmp\ 1613}# #{e\ 1568}#))
+ (let ((#{tmp\ 1614}#
+ ($sc-dispatch
+ #{tmp\ 1613}#
+ '(any each-any
+ any
+ .
+ each-any))))
+ (if #{tmp\ 1614}#
+ (@apply
+ (lambda (#{_\ 1619}#
+ #{x\ 1620}#
+ #{e1\ 1621}#
+ #{e2\ 1622}#)
+ (begin
+ (let ((#{when-list\ 1624}#
+ (#{chi-when-list\ 466}#
+ #{e\ 1568}#
+ #{x\ 1620}#
+ #{w\ 1570}#)))
+ (if (memq 'eval
+ #{when-list\ 1624}#)
+ (#{chi-sequence\ 460}#
+ (cons #{e1\ 1621}#
+ #{e2\ 1622}#)
+ #{r\ 1569}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#)
+ (#{chi-void\ 486}#)))))
+ #{tmp\ 1614}#)
(syntax-violation
#f
"source expression failed to match
any pattern"
- #{tmp\ 1587}#)))
- ($sc-dispatch
- #{tmp\ 1587}#
- '(any any . each-any))))
- #{e\ 1553}#)
- (if (memv #{type\ 1551}#
- '(local-syntax-form))
- (#{chi-local-syntax\ 467}#
- #{value\ 1552}#
- #{e\ 1553}#
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#
- #{chi-sequence\ 445}#)
- (if (memv #{type\ 1551}#
- '(eval-when-form))
- ((lambda (#{tmp\ 1598}#)
- ((lambda (#{tmp\ 1599}#)
- (if #{tmp\ 1599}#
- (apply (lambda (#{_\ 1604}#
- #{x\ 1605}#
- #{e1\ 1606}#
- #{e2\ 1607}#)
- (let ((#{when-list\
1609}#
-
(#{chi-when-list\ 451}#
- #{e\ 1553}#
- #{x\ 1605}#
- #{w\ 1555}#)))
- (if (memq 'eval
- #{when-list\
1609}#)
- (#{chi-sequence\
445}#
- (cons #{e1\ 1606}#
- #{e2\ 1607}#)
- #{r\ 1554}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#)
- (#{chi-void\
471}#))))
- #{tmp\ 1599}#)
- (syntax-violation
- #f
- "source expression failed to
match any pattern"
- #{tmp\ 1598}#)))
- ($sc-dispatch
- #{tmp\ 1598}#
- '(any each-any any . each-any))))
- #{e\ 1553}#)
- (if (memv #{type\ 1551}#
- '(define-form
- define-syntax-form))
+ #{tmp\ 1613}#))))
+ (if (if (eqv? #{type\ 1566}#
+ 'define-form)
+ #t
+ (eqv? #{type\ 1566}#
+ 'define-syntax-form))
+ (syntax-violation
+ #f
+ "definition in expression context"
+ #{e\ 1568}#
+ (#{wrap\ 456}#
+ #{value\ 1567}#
+ #{w\ 1570}#
+ #{mod\ 1572}#))
+ (if (eqv? #{type\ 1566}# (quote syntax))
(syntax-violation
#f
- "definition in expression context"
- #{e\ 1553}#
- (#{wrap\ 441}#
- #{value\ 1552}#
- #{w\ 1555}#
- #{mod\ 1557}#))
- (if (memv #{type\ 1551}#
- '(syntax))
+ "reference to pattern variable
outside syntax form"
+ (#{source-wrap\ 458}#
+ #{e\ 1568}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#))
+ (if (eqv? #{type\ 1566}#
+ 'displaced-lexical)
(syntax-violation
#f
- "reference to pattern variable
outside syntax form"
- (#{source-wrap\ 443}#
- #{e\ 1553}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#))
- (if (memv #{type\ 1551}#
- '(displaced-lexical))
- (syntax-violation
- #f
- "reference to identifier outside
its scope"
- (#{source-wrap\ 443}#
- #{e\ 1553}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#))
- (syntax-violation
- #f
- "unexpected syntax"
- (#{source-wrap\ 443}#
- #{e\ 1553}#
- #{w\ 1555}#
- #{s\ 1556}#
- #{mod\ 1557}#))))))))))))))))))
- (#{chi\ 457}#
- (lambda (#{e\ 1616}#
- #{r\ 1617}#
- #{w\ 1618}#
- #{mod\ 1619}#)
- (call-with-values
- (lambda ()
- (#{syntax-type\ 453}#
- #{e\ 1616}#
- #{r\ 1617}#
- #{w\ 1618}#
- (#{source-annotation\ 351}# #{e\ 1616}#)
- #f
- #{mod\ 1619}#
- #f))
- (lambda (#{type\ 1624}#
- #{value\ 1625}#
- #{e\ 1626}#
- #{w\ 1627}#
- #{s\ 1628}#
- #{mod\ 1629}#)
- (#{chi-expr\ 459}#
- #{type\ 1624}#
- #{value\ 1625}#
- #{e\ 1626}#
- #{r\ 1617}#
- #{w\ 1627}#
- #{s\ 1628}#
- #{mod\ 1629}#)))))
- (#{chi-top\ 455}#
- (lambda (#{e\ 1636}#
- #{r\ 1637}#
- #{w\ 1638}#
- #{m\ 1639}#
- #{esew\ 1640}#
- #{mod\ 1641}#)
- (call-with-values
- (lambda ()
- (#{syntax-type\ 453}#
- #{e\ 1636}#
- #{r\ 1637}#
- #{w\ 1638}#
- (#{source-annotation\ 351}# #{e\ 1636}#)
- #f
- #{mod\ 1641}#
- #f))
- (lambda (#{type\ 1662}#
- #{value\ 1663}#
- #{e\ 1664}#
- #{w\ 1665}#
- #{s\ 1666}#
- #{mod\ 1667}#)
- (if (memv #{type\ 1662}# (quote (begin-form)))
- ((lambda (#{tmp\ 1675}#)
- ((lambda (#{tmp\ 1676}#)
- (if #{tmp\ 1676}#
- (apply (lambda (#{_\ 1678}#) (#{chi-void\ 471}#))
- #{tmp\ 1676}#)
- ((lambda (#{tmp\ 1679}#)
- (if #{tmp\ 1679}#
- (apply (lambda (#{_\ 1683}#
- #{e1\ 1684}#
- #{e2\ 1685}#)
- (#{chi-top-sequence\ 447}#
- (cons #{e1\ 1684}# #{e2\ 1685}#)
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- #{m\ 1639}#
- #{esew\ 1640}#
- #{mod\ 1667}#))
- #{tmp\ 1679}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp\ 1675}#)))
- ($sc-dispatch
- #{tmp\ 1675}#
- '(any any . each-any)))))
- ($sc-dispatch #{tmp\ 1675}# (quote (any)))))
- #{e\ 1664}#)
- (if (memv #{type\ 1662}# (quote (local-syntax-form)))
- (#{chi-local-syntax\ 467}#
- #{value\ 1663}#
- #{e\ 1664}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- #{mod\ 1667}#
- (lambda (#{body\ 1688}#
- #{r\ 1689}#
- #{w\ 1690}#
- #{s\ 1691}#
- #{mod\ 1692}#)
- (#{chi-top-sequence\ 447}#
- #{body\ 1688}#
- #{r\ 1689}#
- #{w\ 1690}#
- #{s\ 1691}#
- #{m\ 1639}#
- #{esew\ 1640}#
- #{mod\ 1692}#)))
- (if (memv #{type\ 1662}# (quote (eval-when-form)))
- ((lambda (#{tmp\ 1699}#)
- ((lambda (#{tmp\ 1700}#)
- (if #{tmp\ 1700}#
- (apply (lambda (#{_\ 1705}#
- #{x\ 1706}#
- #{e1\ 1707}#
- #{e2\ 1708}#)
- (let ((#{when-list\ 1711}#
- (#{chi-when-list\ 451}#
- #{e\ 1664}#
- #{x\ 1706}#
- #{w\ 1665}#))
- (#{body\ 1712}#
- (cons #{e1\ 1707}#
- #{e2\ 1708}#)))
- (if (eq? #{m\ 1639}# (quote e))
- (if (memq 'eval
- #{when-list\ 1711}#)
- (#{chi-top-sequence\ 447}#
- #{body\ 1712}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- (if (memq 'expand
- #{when-list\
1711}#)
- 'c&e
- 'e)
- '(eval)
- #{mod\ 1667}#)
- (begin
- (if (memq 'expand
- #{when-list\
1711}#)
- (#{top-level-eval-hook\
281}#
- (#{chi-top-sequence\
447}#
- #{body\ 1712}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- 'e
- '(eval)
- #{mod\ 1667}#)
- #{mod\ 1667}#))
- (#{chi-void\ 471}#)))
- (if (memq 'load
- #{when-list\ 1711}#)
- (if (let ((#{t\ 1721}#
- (memq 'compile
- #{when-list\
1711}#)))
- (if #{t\ 1721}#
- #{t\ 1721}#
- (let ((#{t\ 1724}#
- (memq 'expand
-
#{when-list\ 1711}#)))
- (if #{t\ 1724}#
- #{t\ 1724}#
- (if (eq? #{m\
1639}#
- 'c&e)
- (memq 'eval
-
#{when-list\ 1711}#)
- #f)))))
- (#{chi-top-sequence\ 447}#
- #{body\ 1712}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- 'c&e
- '(compile load)
- #{mod\ 1667}#)
- (if (memq #{m\ 1639}#
- '(c c&e))
- (#{chi-top-sequence\ 447}#
- #{body\ 1712}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- 'c
- '(load)
- #{mod\ 1667}#)
- (#{chi-void\ 471}#)))
- (if (let ((#{t\ 1732}#
- (memq 'compile
- #{when-list\
1711}#)))
- (if #{t\ 1732}#
- #{t\ 1732}#
- (let ((#{t\ 1735}#
- (memq 'expand
-
#{when-list\ 1711}#)))
- (if #{t\ 1735}#
- #{t\ 1735}#
- (if (eq? #{m\
1639}#
- 'c&e)
- (memq 'eval
-
#{when-list\ 1711}#)
- #f)))))
- (begin
- (#{top-level-eval-hook\
281}#
- (#{chi-top-sequence\
447}#
- #{body\ 1712}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- 'e
- '(eval)
- #{mod\ 1667}#)
- #{mod\ 1667}#)
- (#{chi-void\ 471}#))
- (#{chi-void\ 471}#))))))
- #{tmp\ 1700}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp\ 1699}#)))
- ($sc-dispatch
- #{tmp\ 1699}#
- '(any each-any any . each-any))))
- #{e\ 1664}#)
- (if (memv #{type\ 1662}#
- '(define-syntax-form))
- (let ((#{n\ 1743}#
- (#{id-var-name\ 429}#
- #{value\ 1663}#
- #{w\ 1665}#))
- (#{r\ 1744}#
- (#{macros-only-env\ 364}# #{r\ 1637}#)))
- (if (memv #{m\ 1639}# (quote (c)))
- (if (memq (quote compile) #{esew\ 1640}#)
- (let ((#{e\ 1747}#
- (#{chi-install-global\ 449}#
- #{n\ 1743}#
- (#{chi\ 457}#
- #{e\ 1664}#
- #{r\ 1744}#
- #{w\ 1665}#
- #{mod\ 1667}#))))
- (begin
- (#{top-level-eval-hook\ 281}#
- #{e\ 1747}#
- #{mod\ 1667}#)
- (if (memq (quote load) #{esew\ 1640}#)
- #{e\ 1747}#
- (#{chi-void\ 471}#))))
- (if (memq (quote load) #{esew\ 1640}#)
- (#{chi-install-global\ 449}#
- #{n\ 1743}#
- (#{chi\ 457}#
- #{e\ 1664}#
- #{r\ 1744}#
- #{w\ 1665}#
- #{mod\ 1667}#))
- (#{chi-void\ 471}#)))
- (if (memv #{m\ 1639}# (quote (c&e)))
- (let ((#{e\ 1750}#
- (#{chi-install-global\ 449}#
- #{n\ 1743}#
- (#{chi\ 457}#
- #{e\ 1664}#
- #{r\ 1744}#
- #{w\ 1665}#
- #{mod\ 1667}#))))
- (begin
- (#{top-level-eval-hook\ 281}#
- #{e\ 1750}#
- #{mod\ 1667}#)
- #{e\ 1750}#))
+ "reference to identifier outside
its scope"
+ (#{source-wrap\ 458}#
+ #{e\ 1568}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#))
+ (syntax-violation
+ #f
+ "unexpected syntax"
+ (#{source-wrap\ 458}#
+ #{e\ 1568}#
+ #{w\ 1570}#
+ #{s\ 1571}#
+ #{mod\ 1572}#))))))))))))))))))
+ (#{chi\ 472}#
+ (lambda (#{e\ 1631}#
+ #{r\ 1632}#
+ #{w\ 1633}#
+ #{mod\ 1634}#)
+ (call-with-values
+ (lambda ()
+ (#{syntax-type\ 468}#
+ #{e\ 1631}#
+ #{r\ 1632}#
+ #{w\ 1633}#
+ (#{source-annotation\ 366}# #{e\ 1631}#)
+ #f
+ #{mod\ 1634}#
+ #f))
+ (lambda (#{type\ 1639}#
+ #{value\ 1640}#
+ #{e\ 1641}#
+ #{w\ 1642}#
+ #{s\ 1643}#
+ #{mod\ 1644}#)
+ (#{chi-expr\ 474}#
+ #{type\ 1639}#
+ #{value\ 1640}#
+ #{e\ 1641}#
+ #{r\ 1632}#
+ #{w\ 1642}#
+ #{s\ 1643}#
+ #{mod\ 1644}#)))))
+ (#{chi-top\ 470}#
+ (lambda (#{e\ 1651}#
+ #{r\ 1652}#
+ #{w\ 1653}#
+ #{m\ 1654}#
+ #{esew\ 1655}#
+ #{mod\ 1656}#)
+ (call-with-values
+ (lambda ()
+ (#{syntax-type\ 468}#
+ #{e\ 1651}#
+ #{r\ 1652}#
+ #{w\ 1653}#
+ (#{source-annotation\ 366}# #{e\ 1651}#)
+ #f
+ #{mod\ 1656}#
+ #f))
+ (lambda (#{type\ 1677}#
+ #{value\ 1678}#
+ #{e\ 1679}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ #{mod\ 1682}#)
+ (if (eqv? #{type\ 1677}# (quote begin-form))
+ (let ((#{tmp\ 1690}# #{e\ 1679}#))
+ (let ((#{tmp\ 1691}#
+ ($sc-dispatch #{tmp\ 1690}# (quote (any)))))
+ (if #{tmp\ 1691}#
+ (@apply
+ (lambda (#{_\ 1693}#) (#{chi-void\ 486}#))
+ #{tmp\ 1691}#)
+ (let ((#{tmp\ 1694}#
+ ($sc-dispatch
+ #{tmp\ 1690}#
+ '(any any . each-any))))
+ (if #{tmp\ 1694}#
+ (@apply
+ (lambda (#{_\ 1698}# #{e1\ 1699}# #{e2\ 1700}#)
+ (#{chi-top-sequence\ 462}#
+ (cons #{e1\ 1699}# #{e2\ 1700}#)
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ #{m\ 1654}#
+ #{esew\ 1655}#
+ #{mod\ 1682}#))
+ #{tmp\ 1694}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 1690}#))))))
+ (if (eqv? #{type\ 1677}# (quote local-syntax-form))
+ (#{chi-local-syntax\ 482}#
+ #{value\ 1678}#
+ #{e\ 1679}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ #{mod\ 1682}#
+ (lambda (#{body\ 1703}#
+ #{r\ 1704}#
+ #{w\ 1705}#
+ #{s\ 1706}#
+ #{mod\ 1707}#)
+ (#{chi-top-sequence\ 462}#
+ #{body\ 1703}#
+ #{r\ 1704}#
+ #{w\ 1705}#
+ #{s\ 1706}#
+ #{m\ 1654}#
+ #{esew\ 1655}#
+ #{mod\ 1707}#)))
+ (if (eqv? #{type\ 1677}# (quote eval-when-form))
+ (let ((#{tmp\ 1714}# #{e\ 1679}#))
+ (let ((#{tmp\ 1715}#
+ ($sc-dispatch
+ #{tmp\ 1714}#
+ '(any each-any any . each-any))))
+ (if #{tmp\ 1715}#
+ (@apply
+ (lambda (#{_\ 1720}#
+ #{x\ 1721}#
+ #{e1\ 1722}#
+ #{e2\ 1723}#)
(begin
- (if (memq (quote eval) #{esew\ 1640}#)
- (#{top-level-eval-hook\ 281}#
- (#{chi-install-global\ 449}#
- #{n\ 1743}#
- (#{chi\ 457}#
- #{e\ 1664}#
- #{r\ 1744}#
- #{w\ 1665}#
- #{mod\ 1667}#))
- #{mod\ 1667}#))
- (#{chi-void\ 471}#)))))
- (if (memv #{type\ 1662}# (quote (define-form)))
- (let ((#{n\ 1755}#
- (#{id-var-name\ 429}#
- #{value\ 1663}#
- #{w\ 1665}#)))
- (let ((#{type\ 1757}#
- (#{binding-type\ 355}#
- (#{lookup\ 366}#
- #{n\ 1755}#
- #{r\ 1637}#
- #{mod\ 1667}#))))
- (if (memv #{type\ 1757}#
- '(global core macro module-ref))
- (begin
- (if (if (memq #{m\ 1639}# (quote (c c&e)))
- (if (not (module-local-variable
- (current-module)
- #{n\ 1755}#))
- (current-module)
+ (let ((#{when-list\ 1726}#
+ (#{chi-when-list\ 466}#
+ #{e\ 1679}#
+ #{x\ 1721}#
+ #{w\ 1680}#))
+ (#{body\ 1727}#
+ (cons #{e1\ 1722}# #{e2\ 1723}#)))
+ (if (eq? #{m\ 1654}# (quote e))
+ (if (memq 'eval
+ #{when-list\ 1726}#)
+ (#{chi-top-sequence\ 462}#
+ #{body\ 1727}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ (if (memq 'expand
+ #{when-list\ 1726}#)
+ 'c&e
+ 'e)
+ '(eval)
+ #{mod\ 1682}#)
+ (begin
+ (if (memq 'expand
+ #{when-list\ 1726}#)
+ (#{top-level-eval-hook\ 296}#
+ (#{chi-top-sequence\ 462}#
+ #{body\ 1727}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ 'e
+ '(eval)
+ #{mod\ 1682}#)
+ #{mod\ 1682}#))
+ (#{chi-void\ 486}#)))
+ (if (memq 'load
+ #{when-list\ 1726}#)
+ (if (begin
+ (let ((#{t\ 1736}#
+ (memq 'compile
+ #{when-list\
1726}#)))
+ (if #{t\ 1736}#
+ #{t\ 1736}#
+ (begin
+ (let ((#{t\ 1739}#
+ (memq 'expand
+
#{when-list\ 1726}#)))
+ (if #{t\ 1739}#
+ #{t\ 1739}#
+ (if (eq? #{m\ 1654}#
+ 'c&e)
+ (memq 'eval
+ #{when-list\
1726}#)
+ #f)))))))
+ (#{chi-top-sequence\ 462}#
+ #{body\ 1727}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ 'c&e
+ '(compile load)
+ #{mod\ 1682}#)
+ (if (if (eq? #{m\ 1654}# (quote c))
+ #t
+ (eq? #{m\ 1654}# (quote c&e)))
+ (#{chi-top-sequence\ 462}#
+ #{body\ 1727}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ 'c
+ '(load)
+ #{mod\ 1682}#)
+ (#{chi-void\ 486}#)))
+ (if (begin
+ (let ((#{t\ 1747}#
+ (memq 'compile
+ #{when-list\
1726}#)))
+ (if #{t\ 1747}#
+ #{t\ 1747}#
+ (begin
+ (let ((#{t\ 1750}#
+ (memq 'expand
+
#{when-list\ 1726}#)))
+ (if #{t\ 1750}#
+ #{t\ 1750}#
+ (if (eq? #{m\ 1654}#
+ 'c&e)
+ (memq 'eval
+ #{when-list\
1726}#)
+ #f)))))))
+ (begin
+ (#{top-level-eval-hook\ 296}#
+ (#{chi-top-sequence\ 462}#
+ #{body\ 1727}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ 'e
+ '(eval)
+ #{mod\ 1682}#)
+ #{mod\ 1682}#)
+ (#{chi-void\ 486}#))
+ (#{chi-void\ 486}#)))))))
+ #{tmp\ 1715}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 1714}#))))
+ (if (eqv? #{type\ 1677}# (quote define-syntax-form))
+ (begin
+ (let ((#{n\ 1758}#
+ (#{id-var-name\ 444}#
+ #{value\ 1678}#
+ #{w\ 1680}#))
+ (#{r\ 1759}#
+ (#{macros-only-env\ 379}# #{r\ 1652}#)))
+ (if (eqv? #{m\ 1654}# (quote c))
+ (if (memq (quote compile) #{esew\ 1655}#)
+ (begin
+ (let ((#{e\ 1762}#
+ (#{chi-install-global\ 464}#
+ #{n\ 1758}#
+ (#{chi\ 472}#
+ #{e\ 1679}#
+ #{r\ 1759}#
+ #{w\ 1680}#
+ #{mod\ 1682}#))))
+ (begin
+ (#{top-level-eval-hook\ 296}#
+ #{e\ 1762}#
+ #{mod\ 1682}#)
+ (if (memq (quote load) #{esew\ 1655}#)
+ #{e\ 1762}#
+ (#{chi-void\ 486}#)))))
+ (if (memq (quote load) #{esew\ 1655}#)
+ (#{chi-install-global\ 464}#
+ #{n\ 1758}#
+ (#{chi\ 472}#
+ #{e\ 1679}#
+ #{r\ 1759}#
+ #{w\ 1680}#
+ #{mod\ 1682}#))
+ (#{chi-void\ 486}#)))
+ (if (eqv? #{m\ 1654}# (quote c&e))
+ (begin
+ (let ((#{e\ 1765}#
+ (#{chi-install-global\ 464}#
+ #{n\ 1758}#
+ (#{chi\ 472}#
+ #{e\ 1679}#
+ #{r\ 1759}#
+ #{w\ 1680}#
+ #{mod\ 1682}#))))
+ (begin
+ (#{top-level-eval-hook\ 296}#
+ #{e\ 1765}#
+ #{mod\ 1682}#)
+ #{e\ 1765}#)))
+ (begin
+ (if (memq (quote eval) #{esew\ 1655}#)
+ (#{top-level-eval-hook\ 296}#
+ (#{chi-install-global\ 464}#
+ #{n\ 1758}#
+ (#{chi\ 472}#
+ #{e\ 1679}#
+ #{r\ 1759}#
+ #{w\ 1680}#
+ #{mod\ 1682}#))
+ #{mod\ 1682}#))
+ (#{chi-void\ 486}#))))))
+ (if (eqv? #{type\ 1677}# (quote define-form))
+ (begin
+ (let ((#{n\ 1770}#
+ (#{id-var-name\ 444}#
+ #{value\ 1678}#
+ #{w\ 1680}#)))
+ (begin
+ (let ((#{type\ 1772}#
+ (#{binding-type\ 370}#
+ (#{lookup\ 381}#
+ #{n\ 1770}#
+ #{r\ 1652}#
+ #{mod\ 1682}#))))
+ (if (if (eqv? #{type\ 1772}# (quote global))
+ #t
+ (if (eqv? #{type\ 1772}# (quote core))
+ #t
+ (if (eqv? #{type\ 1772}#
+ 'macro)
+ #t
+ (eqv? #{type\ 1772}#
+ 'module-ref))))
+ (begin
+ (if (if (if (eq? #{m\ 1654}# (quote c))
+ #t
+ (eq? #{m\ 1654}# (quote c&e)))
+ (if (not (module-local-variable
+ (current-module)
+ #{n\ 1770}#))
+ (current-module)
+ #f)
#f)
- #f)
- (let ((#{old\ 1763}#
- (module-variable
- (current-module)
- #{n\ 1755}#)))
- (module-define!
- (current-module)
- #{n\ 1755}#
- (if (variable? #{old\ 1763}#)
- (variable-ref #{old\ 1763}#)
- #f))))
- (let ((#{x\ 1766}#
- (#{build-global-definition\ 312}#
- #{s\ 1666}#
- #{n\ 1755}#
- (#{chi\ 457}#
- #{e\ 1664}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{mod\ 1667}#))))
+ (begin
+ (let ((#{old\ 1778}#
+ (module-variable
+ (current-module)
+ #{n\ 1770}#)))
+ (module-define!
+ (current-module)
+ #{n\ 1770}#
+ (if (variable? #{old\ 1778}#)
+ (variable-ref #{old\ 1778}#)
+ #f)))))
(begin
- (if (eq? #{m\ 1639}# (quote c&e))
- (#{top-level-eval-hook\ 281}#
- #{x\ 1766}#
- #{mod\ 1667}#))
- #{x\ 1766}#)))
- (if (memv #{type\ 1757}#
- '(displaced-lexical))
- (syntax-violation
- #f
- "identifier out of context"
- #{e\ 1664}#
- (#{wrap\ 441}#
- #{value\ 1663}#
- #{w\ 1665}#
- #{mod\ 1667}#))
- (syntax-violation
- #f
- "cannot define keyword at top level"
- #{e\ 1664}#
- (#{wrap\ 441}#
- #{value\ 1663}#
- #{w\ 1665}#
- #{mod\ 1667}#))))))
- (let ((#{x\ 1772}#
- (#{chi-expr\ 459}#
- #{type\ 1662}#
- #{value\ 1663}#
- #{e\ 1664}#
- #{r\ 1637}#
- #{w\ 1665}#
- #{s\ 1666}#
- #{mod\ 1667}#)))
+ (let ((#{x\ 1781}#
+ (#{build-global-definition\
327}#
+ #{s\ 1681}#
+ #{n\ 1770}#
+ (#{chi\ 472}#
+ #{e\ 1679}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{mod\ 1682}#))))
+ (begin
+ (if (eq? #{m\ 1654}# (quote c&e))
+ (#{top-level-eval-hook\ 296}#
+ #{x\ 1781}#
+ #{mod\ 1682}#))
+ #{x\ 1781}#))))
+ (if (eqv? #{type\ 1772}#
+ 'displaced-lexical)
+ (syntax-violation
+ #f
+ "identifier out of context"
+ #{e\ 1679}#
+ (#{wrap\ 456}#
+ #{value\ 1678}#
+ #{w\ 1680}#
+ #{mod\ 1682}#))
+ (syntax-violation
+ #f
+ "cannot define keyword at top level"
+ #{e\ 1679}#
+ (#{wrap\ 456}#
+ #{value\ 1678}#
+ #{w\ 1680}#
+ #{mod\ 1682}#))))))))
+ (begin
+ (let ((#{x\ 1787}#
+ (#{chi-expr\ 474}#
+ #{type\ 1677}#
+ #{value\ 1678}#
+ #{e\ 1679}#
+ #{r\ 1652}#
+ #{w\ 1680}#
+ #{s\ 1681}#
+ #{mod\ 1682}#)))
(begin
- (if (eq? #{m\ 1639}# (quote c&e))
- (#{top-level-eval-hook\ 281}#
- #{x\ 1772}#
- #{mod\ 1667}#))
- #{x\ 1772}#)))))))))))
- (#{syntax-type\ 453}#
- (lambda (#{e\ 1773}#
- #{r\ 1774}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{rib\ 1777}#
- #{mod\ 1778}#
- #{for-car?\ 1779}#)
- (if (symbol? #{e\ 1773}#)
- (let ((#{n\ 1791}#
- (#{id-var-name\ 429}# #{e\ 1773}# #{w\ 1775}#)))
- (let ((#{b\ 1793}#
- (#{lookup\ 366}#
- #{n\ 1791}#
- #{r\ 1774}#
- #{mod\ 1778}#)))
- (let ((#{type\ 1795}#
- (#{binding-type\ 355}# #{b\ 1793}#)))
- (if (memv #{type\ 1795}# (quote (lexical)))
- (values
- #{type\ 1795}#
- (#{binding-value\ 357}# #{b\ 1793}#)
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{type\ 1795}# (quote (global)))
- (values
- #{type\ 1795}#
- #{n\ 1791}#
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{type\ 1795}# (quote (macro)))
- (if #{for-car?\ 1779}#
- (values
- #{type\ 1795}#
- (#{binding-value\ 357}# #{b\ 1793}#)
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (#{syntax-type\ 453}#
- (#{chi-macro\ 463}#
- (#{binding-value\ 357}# #{b\ 1793}#)
- #{e\ 1773}#
- #{r\ 1774}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{rib\ 1777}#
- #{mod\ 1778}#)
- #{r\ 1774}#
- '(())
- #{s\ 1776}#
- #{rib\ 1777}#
- #{mod\ 1778}#
- #f))
+ (if (eq? #{m\ 1654}# (quote c&e))
+ (#{top-level-eval-hook\ 296}#
+ #{x\ 1787}#
+ #{mod\ 1682}#))
+ #{x\ 1787}#))))))))))))
+ (#{syntax-type\ 468}#
+ (lambda (#{e\ 1788}#
+ #{r\ 1789}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{rib\ 1792}#
+ #{mod\ 1793}#
+ #{for-car?\ 1794}#)
+ (if (symbol? #{e\ 1788}#)
+ (begin
+ (let ((#{n\ 1806}#
+ (#{id-var-name\ 444}# #{e\ 1788}# #{w\ 1790}#)))
+ (begin
+ (let ((#{b\ 1808}#
+ (#{lookup\ 381}#
+ #{n\ 1806}#
+ #{r\ 1789}#
+ #{mod\ 1793}#)))
+ (begin
+ (let ((#{type\ 1810}#
+ (#{binding-type\ 370}# #{b\ 1808}#)))
+ (if (eqv? #{type\ 1810}# (quote lexical))
(values
- #{type\ 1795}#
- (#{binding-value\ 357}# #{b\ 1793}#)
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)))))))
- (if (pair? #{e\ 1773}#)
- (let ((#{first\ 1804}# (car #{e\ 1773}#)))
+ #{type\ 1810}#
+ (#{binding-value\ 372}# #{b\ 1808}#)
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{type\ 1810}# (quote global))
+ (values
+ #{type\ 1810}#
+ #{n\ 1806}#
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{type\ 1810}# (quote macro))
+ (if #{for-car?\ 1794}#
+ (values
+ #{type\ 1810}#
+ (#{binding-value\ 372}# #{b\ 1808}#)
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (#{syntax-type\ 468}#
+ (#{chi-macro\ 478}#
+ (#{binding-value\ 372}# #{b\ 1808}#)
+ #{e\ 1788}#
+ #{r\ 1789}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{rib\ 1792}#
+ #{mod\ 1793}#)
+ #{r\ 1789}#
+ '(())
+ #{s\ 1791}#
+ #{rib\ 1792}#
+ #{mod\ 1793}#
+ #f))
+ (values
+ #{type\ 1810}#
+ (#{binding-value\ 372}# #{b\ 1808}#)
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#))))))))))
+ (if (pair? #{e\ 1788}#)
+ (begin
+ (let ((#{first\ 1819}# (car #{e\ 1788}#)))
(call-with-values
(lambda ()
- (#{syntax-type\ 453}#
- #{first\ 1804}#
- #{r\ 1774}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{rib\ 1777}#
- #{mod\ 1778}#
+ (#{syntax-type\ 468}#
+ #{first\ 1819}#
+ #{r\ 1789}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{rib\ 1792}#
+ #{mod\ 1793}#
#t))
- (lambda (#{ftype\ 1805}#
- #{fval\ 1806}#
- #{fe\ 1807}#
- #{fw\ 1808}#
- #{fs\ 1809}#
- #{fmod\ 1810}#)
- (if (memv #{ftype\ 1805}# (quote (lexical)))
+ (lambda (#{ftype\ 1820}#
+ #{fval\ 1821}#
+ #{fe\ 1822}#
+ #{fw\ 1823}#
+ #{fs\ 1824}#
+ #{fmod\ 1825}#)
+ (if (eqv? #{ftype\ 1820}# (quote lexical))
(values
'lexical-call
- #{fval\ 1806}#
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{ftype\ 1805}# (quote (global)))
+ #{fval\ 1821}#
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{ftype\ 1820}# (quote global))
(values
'global-call
- (#{make-syntax-object\ 334}#
- #{fval\ 1806}#
- #{w\ 1775}#
- #{fmod\ 1810}#)
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{ftype\ 1805}# (quote (macro)))
- (#{syntax-type\ 453}#
- (#{chi-macro\ 463}#
- #{fval\ 1806}#
- #{e\ 1773}#
- #{r\ 1774}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{rib\ 1777}#
- #{mod\ 1778}#)
- #{r\ 1774}#
+ (#{make-syntax-object\ 349}#
+ #{fval\ 1821}#
+ #{w\ 1790}#
+ #{fmod\ 1825}#)
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{ftype\ 1820}# (quote macro))
+ (#{syntax-type\ 468}#
+ (#{chi-macro\ 478}#
+ #{fval\ 1821}#
+ #{e\ 1788}#
+ #{r\ 1789}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{rib\ 1792}#
+ #{mod\ 1793}#)
+ #{r\ 1789}#
'(())
- #{s\ 1776}#
- #{rib\ 1777}#
- #{mod\ 1778}#
- #{for-car?\ 1779}#)
- (if (memv #{ftype\ 1805}# (quote (module-ref)))
+ #{s\ 1791}#
+ #{rib\ 1792}#
+ #{mod\ 1793}#
+ #{for-car?\ 1794}#)
+ (if (eqv? #{ftype\ 1820}# (quote module-ref))
(call-with-values
(lambda ()
- (#{fval\ 1806}#
- #{e\ 1773}#
- #{r\ 1774}#
- #{w\ 1775}#))
- (lambda (#{e\ 1822}#
- #{r\ 1823}#
- #{w\ 1824}#
- #{s\ 1825}#
- #{mod\ 1826}#)
- (#{syntax-type\ 453}#
- #{e\ 1822}#
- #{r\ 1823}#
- #{w\ 1824}#
- #{s\ 1825}#
- #{rib\ 1777}#
- #{mod\ 1826}#
- #{for-car?\ 1779}#)))
- (if (memv #{ftype\ 1805}# (quote (core)))
+ (#{fval\ 1821}#
+ #{e\ 1788}#
+ #{r\ 1789}#
+ #{w\ 1790}#))
+ (lambda (#{e\ 1837}#
+ #{r\ 1838}#
+ #{w\ 1839}#
+ #{s\ 1840}#
+ #{mod\ 1841}#)
+ (#{syntax-type\ 468}#
+ #{e\ 1837}#
+ #{r\ 1838}#
+ #{w\ 1839}#
+ #{s\ 1840}#
+ #{rib\ 1792}#
+ #{mod\ 1841}#
+ #{for-car?\ 1794}#)))
+ (if (eqv? #{ftype\ 1820}# (quote core))
(values
'core-form
- #{fval\ 1806}#
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{ftype\ 1805}#
- '(local-syntax))
+ #{fval\ 1821}#
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{ftype\ 1820}#
+ 'local-syntax)
(values
'local-syntax-form
- #{fval\ 1806}#
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{ftype\ 1805}# (quote (begin)))
+ #{fval\ 1821}#
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{ftype\ 1820}# (quote begin))
(values
'begin-form
#f
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{ftype\ 1805}#
- '(eval-when))
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{ftype\ 1820}#
+ 'eval-when)
(values
'eval-when-form
#f
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (if (memv #{ftype\ 1805}#
- '(define))
- ((lambda (#{tmp\ 1837}#)
- ((lambda (#{tmp\ 1838}#)
- (if (if #{tmp\ 1838}#
- (apply (lambda (#{_\
1842}#
- #{name\
1843}#
- #{val\
1844}#)
- (#{id?\ 372}#
- #{name\
1843}#))
- #{tmp\ 1838}#)
- #f)
- (apply (lambda (#{_\ 1848}#
- #{name\
1849}#
- #{val\
1850}#)
- (values
- 'define-form
- #{name\ 1849}#
- #{val\ 1850}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#))
- #{tmp\ 1838}#)
- ((lambda (#{tmp\ 1851}#)
- (if (if #{tmp\ 1851}#
- (apply (lambda
(#{_\ 1857}#
-
#{name\ 1858}#
-
#{args\ 1859}#
-
#{e1\ 1860}#
-
#{e2\ 1861}#)
- (if
(#{id?\ 372}#
-
#{name\ 1858}#)
-
(#{valid-bound-ids?\ 435}#
-
(#{lambda-var-list\ 487}#
-
#{args\ 1859}#))
- #f))
- #{tmp\
1851}#)
- #f)
- (apply (lambda (#{_\
1869}#
-
#{name\ 1870}#
-
#{args\ 1871}#
- #{e1\
1872}#
- #{e2\
1873}#)
- (values
- 'define-form
- (#{wrap\
441}#
- #{name\
1870}#
- #{w\
1775}#
- #{mod\
1778}#)
-
(#{decorate-source\ 290}#
- (cons
'#(syntax-object
-
lambda
-
((top)
-
#(ribcage
-
#(_
-
name
-
args
-
e1
-
e2)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1864"
-
"i1865"
-
"i1866"
-
"i1867"
-
"i1868"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(ftype
-
fval
-
fe
-
fw
-
fs
-
fmod)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1811"
-
"i1812"
-
"i1813"
-
"i1814"
-
"i1815"
-
"i1816"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(first)
-
#((top))
-
#("i1803"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(e
-
r
-
w
-
s
-
rib
-
mod
-
for-car?)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1780"
-
"i1781"
-
"i1782"
-
"i1783"
-
"i1784"
-
"i1785"
-
"i1786"))
-
#(ribcage
-
(lambda-var-list
-
gen-var
-
strip
-
chi-lambda-case
-
lambda*-formals
-
chi-simple-lambda
-
lambda-formals
-
ellipsis?
-
chi-void
-
eval-local-transformer
-
chi-local-syntax
-
chi-body
-
chi-macro
-
chi-application
-
chi-expr
-
chi
-
chi-top
-
syntax-type
-
chi-when-list
-
chi-install-global
-
chi-top-sequence
-
chi-sequence
-
source-wrap
-
wrap
-
bound-id-member?
-
distinct-bound-ids?
-
valid-bound-ids?
-
bound-id=?
-
free-id=?
-
id-var-name
-
same-marks?
-
join-marks
-
join-wraps
-
smart-append
-
make-binding-wrap
-
extend-ribcage!
-
make-empty-ribcage
-
new-mark
-
anti-mark
-
the-anti-mark
-
top-marked?
-
top-wrap
-
empty-wrap
-
set-ribcage-labels!
-
set-ribcage-marks!
-
set-ribcage-symnames!
-
ribcage-labels
-
ribcage-marks
-
ribcage-symnames
-
ribcage?
-
make-ribcage
-
gen-labels
-
gen-label
-
make-rename
-
rename-marks
-
rename-new
-
rename-old
-
subst-rename?
-
wrap-subst
-
wrap-marks
-
make-wrap
-
id-sym-name&marks
-
id-sym-name
-
id?
-
nonsymbol-id?
-
global-extend
-
lookup
-
macros-only-env
-
extend-var-env
-
extend-env
-
null-env
-
binding-value
-
binding-type
-
make-binding
-
arg-check
-
source-annotation
-
no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
-
syntax-object-wrap
-
syntax-object-expression
-
syntax-object?
-
make-syntax-object
-
build-lexical-var
-
build-letrec
-
build-named-let
-
build-let
-
build-sequence
-
build-data
-
build-primref
-
build-lambda-case
-
build-case-lambda
-
build-simple-lambda
-
build-global-definition
-
maybe-name-value!
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
-
gensym-hook
-
local-eval-hook
-
top-level-eval-hook
-
fx<
-
fx=
-
fx-
-
fx+
-
set-lambda-meta!
-
lambda-meta
-
lambda?
-
make-dynlet
-
make-letrec
-
make-let
-
make-lambda-case
-
make-lambda
-
make-sequence
-
make-application
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
-
make-const
-
make-void)
-
((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
("i486"
-
"i484"
-
"i482"
-
"i480"
-
"i478"
-
"i476"
-
"i474"
-
"i472"
-
"i470"
-
"i468"
-
"i466"
-
"i464"
-
"i462"
-
"i460"
-
"i458"
-
"i456"
-
"i454"
-
"i452"
-
"i450"
-
"i448"
-
"i446"
-
"i444"
-
"i442"
-
"i440"
-
"i438"
-
"i436"
-
"i434"
-
"i432"
-
"i430"
-
"i428"
-
"i426"
-
"i424"
-
"i422"
-
"i420"
-
"i418"
-
"i416"
-
"i415"
-
"i414"
-
"i412"
-
"i411"
-
"i410"
-
"i409"
-
"i408"
-
"i406"
-
"i404"
-
"i402"
-
"i400"
-
"i398"
-
"i396"
-
"i394"
-
"i392"
-
"i389"
-
"i387"
-
"i386"
-
"i385"
-
"i384"
-
"i383"
-
"i382"
-
"i380"
-
"i378"
-
"i376"
-
"i374"
-
"i373"
-
"i371"
-
"i369"
-
"i367"
-
"i365"
-
"i363"
-
"i361"
-
"i359"
-
"i358"
-
"i356"
-
"i354"
-
"i353"
-
"i352"
-
"i350"
-
"i349"
-
"i347"
-
"i345"
-
"i343"
-
"i341"
-
"i339"
-
"i337"
-
"i335"
-
"i333"
-
"i331"
-
"i329"
-
"i327"
-
"i325"
-
"i323"
-
"i321"
-
"i319"
-
"i317"
-
"i315"
-
"i313"
-
"i311"
-
"i309"
-
"i307"
-
"i305"
-
"i303"
-
"i301"
-
"i299"
-
"i297"
-
"i295"
-
"i293"
-
"i291"
-
"i289"
-
"i287"
-
"i285"
-
"i284"
-
"i282"
-
"i280"
-
"i278"
-
"i276"
-
"i274"
-
"i272"
-
"i270"
-
"i268"
-
"i266"
-
"i263"
-
"i261"
-
"i259"
-
"i257"
-
"i255"
-
"i253"
-
"i251"
-
"i249"
-
"i247"
-
"i245"
-
"i243"
-
"i241"
-
"i239"
-
"i237"
-
"i235"
-
"i233"
-
"i231"
-
"i229"))
-
#(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
-
and-map*)
-
((top)
-
(top)
-
(top)
-
(top))
-
("i23"
-
"i22"
-
"i21"
-
"i19")))
-
(hygiene
-
guile))
-
(#{wrap\ 441}#
-
(cons #{args\ 1871}#
-
(cons #{e1\ 1872}#
-
#{e2\ 1873}#))
-
#{w\ 1775}#
-
#{mod\ 1778}#))
- #{s\
1776}#)
- '(())
- #{s\ 1776}#
- #{mod\
1778}#))
- #{tmp\ 1851}#)
- ((lambda (#{tmp\
1876}#)
- (if (if #{tmp\
1876}#
- (apply
(lambda (#{_\ 1879}#
-
#{name\ 1880}#)
-
(#{id?\ 372}#
-
#{name\ 1880}#))
- #{tmp\
1876}#)
- #f)
- (apply (lambda
(#{_\ 1883}#
-
#{name\ 1884}#)
- (values
-
'define-form
-
(#{wrap\ 441}#
-
#{name\ 1884}#
- #{w\
1775}#
-
#{mod\ 1778}#)
-
'(#(syntax-object
- if
-
((top)
-
#(ribcage
-
#(_
-
name)
-
#((top)
-
(top))
-
#("i1881"
-
"i1882"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(ftype
-
fval
-
fe
-
fw
-
fs
-
fmod)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1811"
-
"i1812"
-
"i1813"
-
"i1814"
-
"i1815"
-
"i1816"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(first)
-
#((top))
-
#("i1803"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(e
-
r
-
w
-
s
-
rib
-
mod
-
for-car?)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1780"
-
"i1781"
-
"i1782"
-
"i1783"
-
"i1784"
-
"i1785"
-
"i1786"))
-
#(ribcage
-
(lambda-var-list
-
gen-var
-
strip
-
chi-lambda-case
-
lambda*-formals
-
chi-simple-lambda
-
lambda-formals
-
ellipsis?
-
chi-void
-
eval-local-transformer
-
chi-local-syntax
-
chi-body
-
chi-macro
-
chi-application
-
chi-expr
-
chi
-
chi-top
-
syntax-type
-
chi-when-list
-
chi-install-global
-
chi-top-sequence
-
chi-sequence
-
source-wrap
-
wrap
-
bound-id-member?
-
distinct-bound-ids?
-
valid-bound-ids?
-
bound-id=?
-
free-id=?
-
id-var-name
-
same-marks?
-
join-marks
-
join-wraps
-
smart-append
-
make-binding-wrap
-
extend-ribcage!
-
make-empty-ribcage
-
new-mark
-
anti-mark
-
the-anti-mark
-
top-marked?
-
top-wrap
-
empty-wrap
-
set-ribcage-labels!
-
set-ribcage-marks!
-
set-ribcage-symnames!
-
ribcage-labels
-
ribcage-marks
-
ribcage-symnames
-
ribcage?
-
make-ribcage
-
gen-labels
-
gen-label
-
make-rename
-
rename-marks
-
rename-new
-
rename-old
-
subst-rename?
-
wrap-subst
-
wrap-marks
-
make-wrap
-
id-sym-name&marks
-
id-sym-name
-
id?
-
nonsymbol-id?
-
global-extend
-
lookup
-
macros-only-env
-
extend-var-env
-
extend-env
-
null-env
-
binding-value
-
binding-type
-
make-binding
-
arg-check
-
source-annotation
-
no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
-
syntax-object-wrap
-
syntax-object-expression
-
syntax-object?
-
make-syntax-object
-
build-lexical-var
-
build-letrec
-
build-named-let
-
build-let
-
build-sequence
-
build-data
-
build-primref
-
build-lambda-case
-
build-case-lambda
-
build-simple-lambda
-
build-global-definition
-
maybe-name-value!
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
-
gensym-hook
-
local-eval-hook
-
top-level-eval-hook
-
fx<
-
fx=
-
fx-
-
fx+
-
set-lambda-meta!
-
lambda-meta
-
lambda?
-
make-dynlet
-
make-letrec
-
make-let
-
make-lambda-case
-
make-lambda
-
make-sequence
-
make-application
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
-
make-const
-
make-void)
-
((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
("i486"
-
"i484"
-
"i482"
-
"i480"
-
"i478"
-
"i476"
-
"i474"
-
"i472"
-
"i470"
-
"i468"
-
"i466"
-
"i464"
-
"i462"
-
"i460"
-
"i458"
-
"i456"
-
"i454"
-
"i452"
-
"i450"
-
"i448"
-
"i446"
-
"i444"
-
"i442"
-
"i440"
-
"i438"
-
"i436"
-
"i434"
-
"i432"
-
"i430"
-
"i428"
-
"i426"
-
"i424"
-
"i422"
-
"i420"
-
"i418"
-
"i416"
-
"i415"
-
"i414"
-
"i412"
-
"i411"
-
"i410"
-
"i409"
-
"i408"
-
"i406"
-
"i404"
-
"i402"
-
"i400"
-
"i398"
-
"i396"
-
"i394"
-
"i392"
-
"i389"
-
"i387"
-
"i386"
-
"i385"
-
"i384"
-
"i383"
-
"i382"
-
"i380"
-
"i378"
-
"i376"
-
"i374"
-
"i373"
-
"i371"
-
"i369"
-
"i367"
-
"i365"
-
"i363"
-
"i361"
-
"i359"
-
"i358"
-
"i356"
-
"i354"
-
"i353"
-
"i352"
-
"i350"
-
"i349"
-
"i347"
-
"i345"
-
"i343"
-
"i341"
-
"i339"
-
"i337"
-
"i335"
-
"i333"
-
"i331"
-
"i329"
-
"i327"
-
"i325"
-
"i323"
-
"i321"
-
"i319"
-
"i317"
-
"i315"
-
"i313"
-
"i311"
-
"i309"
-
"i307"
-
"i305"
-
"i303"
-
"i301"
-
"i299"
-
"i297"
-
"i295"
-
"i293"
-
"i291"
-
"i289"
-
"i287"
-
"i285"
-
"i284"
-
"i282"
-
"i280"
-
"i278"
-
"i276"
-
"i274"
-
"i272"
-
"i270"
-
"i268"
-
"i266"
-
"i263"
-
"i261"
-
"i259"
-
"i257"
-
"i255"
-
"i253"
-
"i251"
-
"i249"
-
"i247"
-
"i245"
-
"i243"
-
"i241"
-
"i239"
-
"i237"
-
"i235"
-
"i233"
-
"i231"
-
"i229"))
-
#(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
-
and-map*)
-
((top)
-
(top)
-
(top)
-
(top))
-
("i23"
-
"i22"
-
"i21"
-
"i19")))
-
(hygiene
-
guile))
-
#(syntax-object
- #f
-
((top)
-
#(ribcage
-
#(_
-
name)
-
#((top)
-
(top))
-
#("i1881"
-
"i1882"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(ftype
-
fval
-
fe
-
fw
-
fs
-
fmod)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1811"
-
"i1812"
-
"i1813"
-
"i1814"
-
"i1815"
-
"i1816"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(first)
-
#((top))
-
#("i1803"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(e
-
r
-
w
-
s
-
rib
-
mod
-
for-car?)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1780"
-
"i1781"
-
"i1782"
-
"i1783"
-
"i1784"
-
"i1785"
-
"i1786"))
-
#(ribcage
-
(lambda-var-list
-
gen-var
-
strip
-
chi-lambda-case
-
lambda*-formals
-
chi-simple-lambda
-
lambda-formals
-
ellipsis?
-
chi-void
-
eval-local-transformer
-
chi-local-syntax
-
chi-body
-
chi-macro
-
chi-application
-
chi-expr
-
chi
-
chi-top
-
syntax-type
-
chi-when-list
-
chi-install-global
-
chi-top-sequence
-
chi-sequence
-
source-wrap
-
wrap
-
bound-id-member?
-
distinct-bound-ids?
-
valid-bound-ids?
-
bound-id=?
-
free-id=?
-
id-var-name
-
same-marks?
-
join-marks
-
join-wraps
-
smart-append
-
make-binding-wrap
-
extend-ribcage!
-
make-empty-ribcage
-
new-mark
-
anti-mark
-
the-anti-mark
-
top-marked?
-
top-wrap
-
empty-wrap
-
set-ribcage-labels!
-
set-ribcage-marks!
-
set-ribcage-symnames!
-
ribcage-labels
-
ribcage-marks
-
ribcage-symnames
-
ribcage?
-
make-ribcage
-
gen-labels
-
gen-label
-
make-rename
-
rename-marks
-
rename-new
-
rename-old
-
subst-rename?
-
wrap-subst
-
wrap-marks
-
make-wrap
-
id-sym-name&marks
-
id-sym-name
-
id?
-
nonsymbol-id?
-
global-extend
-
lookup
-
macros-only-env
-
extend-var-env
-
extend-env
-
null-env
-
binding-value
-
binding-type
-
make-binding
-
arg-check
-
source-annotation
-
no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
-
syntax-object-wrap
-
syntax-object-expression
-
syntax-object?
-
make-syntax-object
-
build-lexical-var
-
build-letrec
-
build-named-let
-
build-let
-
build-sequence
-
build-data
-
build-primref
-
build-lambda-case
-
build-case-lambda
-
build-simple-lambda
-
build-global-definition
-
maybe-name-value!
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
-
gensym-hook
-
local-eval-hook
-
top-level-eval-hook
-
fx<
-
fx=
-
fx-
-
fx+
-
set-lambda-meta!
-
lambda-meta
-
lambda?
-
make-dynlet
-
make-letrec
-
make-let
-
make-lambda-case
-
make-lambda
-
make-sequence
-
make-application
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
-
make-const
-
make-void)
-
((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
("i486"
-
"i484"
-
"i482"
-
"i480"
-
"i478"
-
"i476"
-
"i474"
-
"i472"
-
"i470"
-
"i468"
-
"i466"
-
"i464"
-
"i462"
-
"i460"
-
"i458"
-
"i456"
-
"i454"
-
"i452"
-
"i450"
-
"i448"
-
"i446"
-
"i444"
-
"i442"
-
"i440"
-
"i438"
-
"i436"
-
"i434"
-
"i432"
-
"i430"
-
"i428"
-
"i426"
-
"i424"
-
"i422"
-
"i420"
-
"i418"
-
"i416"
-
"i415"
-
"i414"
-
"i412"
-
"i411"
-
"i410"
-
"i409"
-
"i408"
-
"i406"
-
"i404"
-
"i402"
-
"i400"
-
"i398"
-
"i396"
-
"i394"
-
"i392"
-
"i389"
-
"i387"
-
"i386"
-
"i385"
-
"i384"
-
"i383"
-
"i382"
-
"i380"
-
"i378"
-
"i376"
-
"i374"
-
"i373"
-
"i371"
-
"i369"
-
"i367"
-
"i365"
-
"i363"
-
"i361"
-
"i359"
-
"i358"
-
"i356"
-
"i354"
-
"i353"
-
"i352"
-
"i350"
-
"i349"
-
"i347"
-
"i345"
-
"i343"
-
"i341"
-
"i339"
-
"i337"
-
"i335"
-
"i333"
-
"i331"
-
"i329"
-
"i327"
-
"i325"
-
"i323"
-
"i321"
-
"i319"
-
"i317"
-
"i315"
-
"i313"
-
"i311"
-
"i309"
-
"i307"
-
"i305"
-
"i303"
-
"i301"
-
"i299"
-
"i297"
-
"i295"
-
"i293"
-
"i291"
-
"i289"
-
"i287"
-
"i285"
-
"i284"
-
"i282"
-
"i280"
-
"i278"
-
"i276"
-
"i274"
-
"i272"
-
"i270"
-
"i268"
-
"i266"
-
"i263"
-
"i261"
-
"i259"
-
"i257"
-
"i255"
-
"i253"
-
"i251"
-
"i249"
-
"i247"
-
"i245"
-
"i243"
-
"i241"
-
"i239"
-
"i237"
-
"i235"
-
"i233"
-
"i231"
-
"i229"))
-
#(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
-
and-map*)
-
((top)
-
(top)
-
(top)
-
(top))
-
("i23"
-
"i22"
-
"i21"
-
"i19")))
-
(hygiene
-
guile))
-
#(syntax-object
- #f
-
((top)
-
#(ribcage
-
#(_
-
name)
-
#((top)
-
(top))
-
#("i1881"
-
"i1882"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(ftype
-
fval
-
fe
-
fw
-
fs
-
fmod)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1811"
-
"i1812"
-
"i1813"
-
"i1814"
-
"i1815"
-
"i1816"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(first)
-
#((top))
-
#("i1803"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(e
-
r
-
w
-
s
-
rib
-
mod
-
for-car?)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i1780"
-
"i1781"
-
"i1782"
-
"i1783"
-
"i1784"
-
"i1785"
-
"i1786"))
-
#(ribcage
-
(lambda-var-list
-
gen-var
-
strip
-
chi-lambda-case
-
lambda*-formals
-
chi-simple-lambda
-
lambda-formals
-
ellipsis?
-
chi-void
-
eval-local-transformer
-
chi-local-syntax
-
chi-body
-
chi-macro
-
chi-application
-
chi-expr
-
chi
-
chi-top
-
syntax-type
-
chi-when-list
-
chi-install-global
-
chi-top-sequence
-
chi-sequence
-
source-wrap
-
wrap
-
bound-id-member?
-
distinct-bound-ids?
-
valid-bound-ids?
-
bound-id=?
-
free-id=?
-
id-var-name
-
same-marks?
-
join-marks
-
join-wraps
-
smart-append
-
make-binding-wrap
-
extend-ribcage!
-
make-empty-ribcage
-
new-mark
-
anti-mark
-
the-anti-mark
-
top-marked?
-
top-wrap
-
empty-wrap
-
set-ribcage-labels!
-
set-ribcage-marks!
-
set-ribcage-symnames!
-
ribcage-labels
-
ribcage-marks
-
ribcage-symnames
-
ribcage?
-
make-ribcage
-
gen-labels
-
gen-label
-
make-rename
-
rename-marks
-
rename-new
-
rename-old
-
subst-rename?
-
wrap-subst
-
wrap-marks
-
make-wrap
-
id-sym-name&marks
-
id-sym-name
-
id?
-
nonsymbol-id?
-
global-extend
-
lookup
-
macros-only-env
-
extend-var-env
-
extend-env
-
null-env
-
binding-value
-
binding-type
-
make-binding
-
arg-check
-
source-annotation
-
no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
-
syntax-object-wrap
-
syntax-object-expression
-
syntax-object?
-
make-syntax-object
-
build-lexical-var
-
build-letrec
-
build-named-let
-
build-let
-
build-sequence
-
build-data
-
build-primref
-
build-lambda-case
-
build-case-lambda
-
build-simple-lambda
-
build-global-definition
-
maybe-name-value!
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
-
gensym-hook
-
local-eval-hook
-
top-level-eval-hook
-
fx<
-
fx=
-
fx-
-
fx+
-
set-lambda-meta!
-
lambda-meta
-
lambda?
-
make-dynlet
-
make-letrec
-
make-let
-
make-lambda-case
-
make-lambda
-
make-sequence
-
make-application
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
-
make-const
-
make-void)
-
((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
("i486"
-
"i484"
-
"i482"
-
"i480"
-
"i478"
-
"i476"
-
"i474"
-
"i472"
-
"i470"
-
"i468"
-
"i466"
-
"i464"
-
"i462"
-
"i460"
-
"i458"
-
"i456"
-
"i454"
-
"i452"
-
"i450"
-
"i448"
-
"i446"
-
"i444"
-
"i442"
-
"i440"
-
"i438"
-
"i436"
-
"i434"
-
"i432"
-
"i430"
-
"i428"
-
"i426"
-
"i424"
-
"i422"
-
"i420"
-
"i418"
-
"i416"
-
"i415"
-
"i414"
-
"i412"
-
"i411"
-
"i410"
-
"i409"
-
"i408"
-
"i406"
-
"i404"
-
"i402"
-
"i400"
-
"i398"
-
"i396"
-
"i394"
-
"i392"
-
"i389"
-
"i387"
-
"i386"
-
"i385"
-
"i384"
-
"i383"
-
"i382"
-
"i380"
-
"i378"
-
"i376"
-
"i374"
-
"i373"
-
"i371"
-
"i369"
-
"i367"
-
"i365"
-
"i363"
-
"i361"
-
"i359"
-
"i358"
-
"i356"
-
"i354"
-
"i353"
-
"i352"
-
"i350"
-
"i349"
-
"i347"
-
"i345"
-
"i343"
-
"i341"
-
"i339"
-
"i337"
-
"i335"
-
"i333"
-
"i331"
-
"i329"
-
"i327"
-
"i325"
-
"i323"
-
"i321"
-
"i319"
-
"i317"
-
"i315"
-
"i313"
-
"i311"
-
"i309"
-
"i307"
-
"i305"
-
"i303"
-
"i301"
-
"i299"
-
"i297"
-
"i295"
-
"i293"
-
"i291"
-
"i289"
-
"i287"
-
"i285"
-
"i284"
-
"i282"
-
"i280"
-
"i278"
-
"i276"
-
"i274"
-
"i272"
-
"i270"
-
"i268"
-
"i266"
-
"i263"
-
"i261"
-
"i259"
-
"i257"
-
"i255"
-
"i253"
-
"i251"
-
"i249"
-
"i247"
-
"i245"
-
"i243"
-
"i241"
-
"i239"
-
"i237"
-
"i235"
-
"i233"
-
"i231"
-
"i229"))
-
#(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
-
and-map*)
-
((top)
-
(top)
-
(top)
-
(top))
-
("i23"
-
"i22"
-
"i21"
-
"i19")))
-
(hygiene
-
guile)))
- '(())
- #{s\
1776}#
- #{mod\
1778}#))
- #{tmp\
1876}#)
- (syntax-violation
- #f
- "source
expression failed to match any pattern"
- #{tmp\ 1837}#)))
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (if (eqv? #{ftype\ 1820}#
+ 'define)
+ (let ((#{tmp\ 1852}# #{e\ 1788}#))
+ (let ((#{tmp\ 1853}#
+ ($sc-dispatch
+ #{tmp\ 1852}#
+ '(any any any))))
+ (if (if #{tmp\ 1853}#
+ (@apply
+ (lambda (#{_\ 1857}#
+ #{name\ 1858}#
+ #{val\ 1859}#)
+ (#{id?\ 387}#
+ #{name\ 1858}#))
+ #{tmp\ 1853}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 1863}#
+ #{name\ 1864}#
+ #{val\ 1865}#)
+ (values
+ 'define-form
+ #{name\ 1864}#
+ #{val\ 1865}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#))
+ #{tmp\ 1853}#)
+ (let ((#{tmp\ 1866}#
($sc-dispatch
- #{tmp\ 1837}#
- '(any any)))))
- ($sc-dispatch
- #{tmp\ 1837}#
- '(any (any . any)
- any
- .
- each-any)))))
- ($sc-dispatch
- #{tmp\ 1837}#
- '(any any any))))
- #{e\ 1773}#)
- (if (memv #{ftype\ 1805}#
- '(define-syntax))
- ((lambda (#{tmp\ 1887}#)
- ((lambda (#{tmp\ 1888}#)
- (if (if #{tmp\ 1888}#
- (apply (lambda (#{_\
1892}#
-
#{name\ 1893}#
-
#{val\ 1894}#)
- (#{id?\ 372}#
- #{name\
1893}#))
- #{tmp\ 1888}#)
+ #{tmp\ 1852}#
+ '(any (any . any)
+ any
+ .
+ each-any))))
+ (if (if #{tmp\ 1866}#
+ (@apply
+ (lambda (#{_\ 1872}#
+ #{name\
1873}#
+ #{args\
1874}#
+ #{e1\
1875}#
+ #{e2\
1876}#)
+ (if (#{id?\ 387}#
+ #{name\
1873}#)
+
(#{valid-bound-ids?\ 450}#
+
(#{lambda-var-list\ 502}#
+ #{args\
1874}#))
+ #f))
+ #{tmp\ 1866}#)
#f)
- (apply (lambda (#{_\
1898}#
- #{name\
1899}#
- #{val\
1900}#)
- (values
-
'define-syntax-form
- #{name\ 1899}#
- #{val\ 1900}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#))
- #{tmp\ 1888}#)
- (syntax-violation
- #f
- "source expression
failed to match any pattern"
- #{tmp\ 1887}#)))
- ($sc-dispatch
- #{tmp\ 1887}#
- '(any any any))))
- #{e\ 1773}#)
+ (@apply
+ (lambda (#{_\ 1884}#
+ #{name\ 1885}#
+ #{args\ 1886}#
+ #{e1\ 1887}#
+ #{e2\ 1888}#)
+ (values
+ 'define-form
+ (#{wrap\ 456}#
+ #{name\ 1885}#
+ #{w\ 1790}#
+ #{mod\ 1793}#)
+ (#{decorate-source\
305}#
+ (cons
'#(syntax-object
+ lambda
+ ((top)
+
#(ribcage
+ #(_
+ name
+ args
+ e1
+ e2)
+
#((top)
+
(top)
+
(top)
+
(top)
+
(top))
+
#("i1879"
+
"i1880"
+
"i1881"
+
"i1882"
+
"i1883"))
+
#(ribcage
+ ()
+ ()
+ ())
+
#(ribcage
+ ()
+ ()
+ ())
+
#(ribcage
+
#(ftype
+ fval
+ fe
+ fw
+ fs
+
fmod)
+
#((top)
+
(top)
+
(top)
+
(top)
+
(top)
+
(top))
+
#("i1826"
+
"i1827"
+
"i1828"
+
"i1829"
+
"i1830"
+
"i1831"))
+
#(ribcage
+ ()
+ ()
+ ())
+
#(ribcage
+
#(first)
+
#((top))
+
#("i1818"))
+
#(ribcage
+ ()
+ ()
+ ())
+
#(ribcage
+ ()
+ ()
+ ())
+
#(ribcage
+ ()
+ ()
+ ())
+
#(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+
for-car?)
+
#((top)
+
(top)
+
(top)
+
(top)
+
(top)
+
(top)
+
(top))
+
#("i1795"
+
"i1796"
+
"i1797"
+
"i1798"
+
"i1799"
+
"i1800"
+
"i1801"))
+
#(ribcage
+
(lambda-var-list
+
gen-var
+
strip
+
chi-lambda-case
+
lambda*-formals
+
chi-simple-lambda
+
lambda-formals
+
ellipsis?
+
chi-void
+
eval-local-transformer
+
chi-local-syntax
+
chi-body
+
chi-macro
+
chi-application
+
chi-expr
+ chi
+
chi-top
+
syntax-type
+
chi-when-list
+
chi-install-global
+
chi-top-sequence
+
chi-sequence
+
source-wrap
+ wrap
+
bound-id-member?
+
distinct-bound-ids?
+
valid-bound-ids?
+
bound-id=?
+
free-id=?
+
id-var-name
+
same-marks?
+
join-marks
+
join-wraps
+
smart-append
+
make-binding-wrap
+
extend-ribcage!
+
make-empty-ribcage
+
new-mark
+
anti-mark
+
the-anti-mark
+
top-marked?
+
top-wrap
+
empty-wrap
+
set-ribcage-labels!
+
set-ribcage-marks!
+
set-ribcage-symnames!
+
ribcage-labels
+
ribcage-marks
+
ribcage-symnames
+
ribcage?
+
make-ribcage
+
gen-labels
+
gen-label
+
make-rename
+
rename-marks
+
rename-new
+
rename-old
+
subst-rename?
+
wrap-subst
+
wrap-marks
+
make-wrap
+
id-sym-name&marks
+
id-sym-name
+ id?
+
nonsymbol-id?
+
global-extend
+
lookup
+
macros-only-env
+
extend-var-env
+
extend-env
+
null-env
+
binding-value
+
binding-type
+
make-binding
+
arg-check
+
source-annotation
+
no-source
+
set-syntax-object-module!
+
set-syntax-object-wrap!
+
set-syntax-object-expression!
+
syntax-object-module
+
syntax-object-wrap
+
syntax-object-expression
+
syntax-object?
+
make-syntax-object
+
build-lexical-var
+
build-letrec
+
build-named-let
+
build-let
+
build-sequence
+
build-data
+
build-primref
+
build-lambda-case
+
build-case-lambda
+
build-simple-lambda
+
build-global-definition
+
maybe-name-value!
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+
build-dynlet
+
build-conditional
+
build-application
+
build-void
+
decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+
gensym-hook
+
local-eval-hook
+
top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+
set-lambda-meta!
+
lambda-meta
+
lambda?
+
make-dynlet
+
make-letrec
+
make-let
+
make-lambda-case
+
make-lambda
+
make-sequence
+
make-application
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+
make-module-set
+
make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+
make-const
+
make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+
(top))
+
("i501"
+
"i499"
+
"i497"
+
"i495"
+
"i493"
+
"i491"
+
"i489"
+
"i487"
+
"i485"
+
"i483"
+
"i481"
+
"i479"
+
"i477"
+
"i475"
+
"i473"
+
"i471"
+
"i469"
+
"i467"
+
"i465"
+
"i463"
+
"i461"
+
"i459"
+
"i457"
+
"i455"
+
"i453"
+
"i451"
+
"i449"
+
"i447"
+
"i445"
+
"i443"
+
"i441"
+
"i439"
+
"i437"
+
"i435"
+
"i433"
+
"i431"
+
"i430"
+
"i429"
+
"i427"
+
"i426"
+
"i425"
+
"i424"
+
"i423"
+
"i421"
+
"i419"
+
"i417"
+
"i415"
+
"i413"
+
"i411"
+
"i409"
+
"i407"
+
"i404"
+
"i402"
+
"i401"
+
"i400"
+
"i399"
+
"i398"
+
"i397"
+
"i395"
+
"i393"
+
"i391"
+
"i389"
+
"i388"
+
"i386"
+
"i384"
+
"i382"
+
"i380"
+
"i378"
+
"i376"
+
"i374"
+
"i373"
+
"i371"
+
"i369"
+
"i368"
+
"i367"
+
"i365"
+
"i364"
+
"i362"
+
"i360"
+
"i358"
+
"i356"
+
"i354"
+
"i352"
+
"i350"
+
"i348"
+
"i346"
+
"i344"
+
"i342"
+
"i340"
+
"i338"
+
"i336"
+
"i334"
+
"i332"
+
"i330"
+
"i328"
+
"i326"
+
"i324"
+
"i322"
+
"i320"
+
"i318"
+
"i316"
+
"i314"
+
"i312"
+
"i310"
+
"i308"
+
"i306"
+
"i304"
+
"i302"
+
"i300"
+
"i299"
+
"i297"
+
"i295"
+
"i293"
+
"i291"
+
"i289"
+
"i287"
+
"i285"
+
"i283"
+
"i281"
+
"i278"
+
"i276"
+
"i274"
+
"i272"
+
"i270"
+
"i268"
+
"i266"
+
"i264"
+
"i262"
+
"i260"
+
"i258"
+
"i256"
+
"i254"
+
"i252"
+
"i250"
+
"i248"
+
"i246"
+
"i244"))
+
#(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+
and-map*)
+ ((top)
+ (top)
+ (top)
+
(top))
+ ("i38"
+ "i37"
+ "i36"
+
"i34")))
+ (hygiene
+ guile))
+ (#{wrap\
456}#
+ (cons
#{args\ 1886}#
+
(cons #{e1\ 1887}#
+
#{e2\ 1888}#))
+ #{w\
1790}#
+ #{mod\
1793}#))
+ #{s\ 1791}#)
+ '(())
+ #{s\ 1791}#
+ #{mod\ 1793}#))
+ #{tmp\ 1866}#)
+ (let ((#{tmp\ 1891}#
+ ($sc-dispatch
+ #{tmp\ 1852}#
+ '(any any))))
+ (if (if #{tmp\ 1891}#
+ (@apply
+ (lambda (#{_\
1894}#
+
#{name\ 1895}#)
+ (#{id?\ 387}#
+ #{name\
1895}#))
+ #{tmp\ 1891}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 1898}#
+ #{name\
1899}#)
+ (values
+ 'define-form
+ (#{wrap\ 456}#
+ #{name\ 1899}#
+ #{w\ 1790}#
+ #{mod\ 1793}#)
+
'(#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(_ name)
+ #((top)
+ (top))
+ #("i1896"
+
"i1897"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1826"
+ "i1827"
+ "i1828"
+ "i1829"
+ "i1830"
+
"i1831"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+
#("i1818"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+
for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1795"
+ "i1796"
+ "i1797"
+ "i1798"
+ "i1799"
+ "i1800"
+
"i1801"))
+ #(ribcage
+
(lambda-var-list
+ gen-var
+ strip
+
chi-lambda-case
+
lambda*-formals
+
chi-simple-lambda
+
lambda-formals
+
ellipsis?
+
chi-void
+
eval-local-transformer
+
chi-local-syntax
+
chi-body
+
chi-macro
+
chi-application
+
chi-expr
+ chi
+ chi-top
+
syntax-type
+
chi-when-list
+
chi-install-global
+
chi-top-sequence
+
chi-sequence
+
source-wrap
+ wrap
+
bound-id-member?
+
distinct-bound-ids?
+
valid-bound-ids?
+
bound-id=?
+
free-id=?
+
id-var-name
+
same-marks?
+
join-marks
+
join-wraps
+
smart-append
+
make-binding-wrap
+
extend-ribcage!
+
make-empty-ribcage
+
new-mark
+
anti-mark
+
the-anti-mark
+
top-marked?
+
top-wrap
+
empty-wrap
+
set-ribcage-labels!
+
set-ribcage-marks!
+
set-ribcage-symnames!
+
ribcage-labels
+
ribcage-marks
+
ribcage-symnames
+
ribcage?
+
make-ribcage
+
gen-labels
+
gen-label
+
make-rename
+
rename-marks
+
rename-new
+
rename-old
+
subst-rename?
+
wrap-subst
+
wrap-marks
+
make-wrap
+
id-sym-name&marks
+
id-sym-name
+ id?
+
nonsymbol-id?
+
global-extend
+ lookup
+
macros-only-env
+
extend-var-env
+
extend-env
+
null-env
+
binding-value
+
binding-type
+
make-binding
+
arg-check
+
source-annotation
+
no-source
+
set-syntax-object-module!
+
set-syntax-object-wrap!
+
set-syntax-object-expression!
+
syntax-object-module
+
syntax-object-wrap
+
syntax-object-expression
+
syntax-object?
+
make-syntax-object
+
build-lexical-var
+
build-letrec
+
build-named-let
+
build-let
+
build-sequence
+
build-data
+
build-primref
+
build-lambda-case
+
build-case-lambda
+
build-simple-lambda
+
build-global-definition
+
maybe-name-value!
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+
build-dynlet
+
build-conditional
+
build-application
+
build-void
+
decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+
gensym-hook
+
local-eval-hook
+
top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+
set-lambda-meta!
+
lambda-meta
+ lambda?
+
make-dynlet
+
make-letrec
+
make-let
+
make-lambda-case
+
make-lambda
+
make-sequence
+
make-application
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+
make-module-set
+
make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+
make-const
+
make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+
and-map*)
+ ((top)
+ (top)
+ (top)
+ (top))
+ ("i38"
+ "i37"
+ "i36"
+ "i34")))
+ (hygiene
+ guile))
+
#(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(_ name)
+ #((top)
+ (top))
+ #("i1896"
+
"i1897"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1826"
+ "i1827"
+ "i1828"
+ "i1829"
+ "i1830"
+
"i1831"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+
#("i1818"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+
for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1795"
+ "i1796"
+ "i1797"
+ "i1798"
+ "i1799"
+ "i1800"
+
"i1801"))
+ #(ribcage
+
(lambda-var-list
+ gen-var
+ strip
+
chi-lambda-case
+
lambda*-formals
+
chi-simple-lambda
+
lambda-formals
+
ellipsis?
+
chi-void
+
eval-local-transformer
+
chi-local-syntax
+
chi-body
+
chi-macro
+
chi-application
+
chi-expr
+ chi
+ chi-top
+
syntax-type
+
chi-when-list
+
chi-install-global
+
chi-top-sequence
+
chi-sequence
+
source-wrap
+ wrap
+
bound-id-member?
+
distinct-bound-ids?
+
valid-bound-ids?
+
bound-id=?
+
free-id=?
+
id-var-name
+
same-marks?
+
join-marks
+
join-wraps
+
smart-append
+
make-binding-wrap
+
extend-ribcage!
+
make-empty-ribcage
+
new-mark
+
anti-mark
+
the-anti-mark
+
top-marked?
+
top-wrap
+
empty-wrap
+
set-ribcage-labels!
+
set-ribcage-marks!
+
set-ribcage-symnames!
+
ribcage-labels
+
ribcage-marks
+
ribcage-symnames
+
ribcage?
+
make-ribcage
+
gen-labels
+
gen-label
+
make-rename
+
rename-marks
+
rename-new
+
rename-old
+
subst-rename?
+
wrap-subst
+
wrap-marks
+
make-wrap
+
id-sym-name&marks
+
id-sym-name
+ id?
+
nonsymbol-id?
+
global-extend
+ lookup
+
macros-only-env
+
extend-var-env
+
extend-env
+
null-env
+
binding-value
+
binding-type
+
make-binding
+
arg-check
+
source-annotation
+
no-source
+
set-syntax-object-module!
+
set-syntax-object-wrap!
+
set-syntax-object-expression!
+
syntax-object-module
+
syntax-object-wrap
+
syntax-object-expression
+
syntax-object?
+
make-syntax-object
+
build-lexical-var
+
build-letrec
+
build-named-let
+
build-let
+
build-sequence
+
build-data
+
build-primref
+
build-lambda-case
+
build-case-lambda
+
build-simple-lambda
+
build-global-definition
+
maybe-name-value!
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+
build-dynlet
+
build-conditional
+
build-application
+
build-void
+
decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+
gensym-hook
+
local-eval-hook
+
top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+
set-lambda-meta!
+
lambda-meta
+ lambda?
+
make-dynlet
+
make-letrec
+
make-let
+
make-lambda-case
+
make-lambda
+
make-sequence
+
make-application
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+
make-module-set
+
make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+
make-const
+
make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+
and-map*)
+ ((top)
+ (top)
+ (top)
+ (top))
+ ("i38"
+ "i37"
+ "i36"
+ "i34")))
+ (hygiene
+ guile))
+
#(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(_ name)
+ #((top)
+ (top))
+ #("i1896"
+
"i1897"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1826"
+ "i1827"
+ "i1828"
+ "i1829"
+ "i1830"
+
"i1831"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+
#("i1818"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+
for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1795"
+ "i1796"
+ "i1797"
+ "i1798"
+ "i1799"
+ "i1800"
+
"i1801"))
+ #(ribcage
+
(lambda-var-list
+ gen-var
+ strip
+
chi-lambda-case
+
lambda*-formals
+
chi-simple-lambda
+
lambda-formals
+
ellipsis?
+
chi-void
+
eval-local-transformer
+
chi-local-syntax
+
chi-body
+
chi-macro
+
chi-application
+
chi-expr
+ chi
+ chi-top
+
syntax-type
+
chi-when-list
+
chi-install-global
+
chi-top-sequence
+
chi-sequence
+
source-wrap
+ wrap
+
bound-id-member?
+
distinct-bound-ids?
+
valid-bound-ids?
+
bound-id=?
+
free-id=?
+
id-var-name
+
same-marks?
+
join-marks
+
join-wraps
+
smart-append
+
make-binding-wrap
+
extend-ribcage!
+
make-empty-ribcage
+
new-mark
+
anti-mark
+
the-anti-mark
+
top-marked?
+
top-wrap
+
empty-wrap
+
set-ribcage-labels!
+
set-ribcage-marks!
+
set-ribcage-symnames!
+
ribcage-labels
+
ribcage-marks
+
ribcage-symnames
+
ribcage?
+
make-ribcage
+
gen-labels
+
gen-label
+
make-rename
+
rename-marks
+
rename-new
+
rename-old
+
subst-rename?
+
wrap-subst
+
wrap-marks
+
make-wrap
+
id-sym-name&marks
+
id-sym-name
+ id?
+
nonsymbol-id?
+
global-extend
+ lookup
+
macros-only-env
+
extend-var-env
+
extend-env
+
null-env
+
binding-value
+
binding-type
+
make-binding
+
arg-check
+
source-annotation
+
no-source
+
set-syntax-object-module!
+
set-syntax-object-wrap!
+
set-syntax-object-expression!
+
syntax-object-module
+
syntax-object-wrap
+
syntax-object-expression
+
syntax-object?
+
make-syntax-object
+
build-lexical-var
+
build-letrec
+
build-named-let
+
build-let
+
build-sequence
+
build-data
+
build-primref
+
build-lambda-case
+
build-case-lambda
+
build-simple-lambda
+
build-global-definition
+
maybe-name-value!
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+
build-dynlet
+
build-conditional
+
build-application
+
build-void
+
decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+
gensym-hook
+
local-eval-hook
+
top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+
set-lambda-meta!
+
lambda-meta
+ lambda?
+
make-dynlet
+
make-letrec
+
make-let
+
make-lambda-case
+
make-lambda
+
make-sequence
+
make-application
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+
make-module-set
+
make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+
make-const
+
make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+
and-map*)
+ ((top)
+ (top)
+ (top)
+ (top))
+ ("i38"
+ "i37"
+ "i36"
+ "i34")))
+ (hygiene
+ guile)))
+ '(())
+ #{s\ 1791}#
+ #{mod\ 1793}#))
+ #{tmp\ 1891}#)
+ (syntax-violation
+ #f
+ "source expression
failed to match any pattern"
+ #{tmp\
1852}#))))))))
+ (if (eqv? #{ftype\ 1820}#
+ 'define-syntax)
+ (let ((#{tmp\ 1902}# #{e\ 1788}#))
+ (let ((#{tmp\ 1903}#
+ ($sc-dispatch
+ #{tmp\ 1902}#
+ '(any any any))))
+ (if (if #{tmp\ 1903}#
+ (@apply
+ (lambda (#{_\ 1907}#
+ #{name\
1908}#
+ #{val\
1909}#)
+ (#{id?\ 387}#
+ #{name\ 1908}#))
+ #{tmp\ 1903}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 1913}#
+ #{name\ 1914}#
+ #{val\ 1915}#)
+ (values
+ 'define-syntax-form
+ #{name\ 1914}#
+ #{val\ 1915}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#))
+ #{tmp\ 1903}#)
+ (syntax-violation
+ #f
+ "source expression failed
to match any pattern"
+ #{tmp\ 1902}#))))
(values
'call
#f
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#))))))))))))))
- (if (#{syntax-object?\ 336}# #{e\ 1773}#)
- (#{syntax-type\ 453}#
- (#{syntax-object-expression\ 338}# #{e\ 1773}#)
- #{r\ 1774}#
- (#{join-wraps\ 423}#
- #{w\ 1775}#
- (#{syntax-object-wrap\ 340}# #{e\ 1773}#))
- (let ((#{t\ 1906}#
- (#{source-annotation\ 351}# #{e\ 1773}#)))
- (if #{t\ 1906}# #{t\ 1906}# #{s\ 1776}#))
- #{rib\ 1777}#
- (let ((#{t\ 1910}#
- (#{syntax-object-module\ 342}# #{e\ 1773}#)))
- (if #{t\ 1910}# #{t\ 1910}# #{mod\ 1778}#))
- #{for-car?\ 1779}#)
- (if (self-evaluating? #{e\ 1773}#)
- (values
- 'constant
- #f
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)
- (values
- 'other
- #f
- #{e\ 1773}#
- #{w\ 1775}#
- #{s\ 1776}#
- #{mod\ 1778}#)))))))
- (#{chi-when-list\ 451}#
- (lambda (#{e\ 1915}# #{when-list\ 1916}# #{w\ 1917}#)
- (letrec ((#{f\ 1924}#
- (lambda (#{when-list\ 1925}# #{situations\ 1926}#)
- (if (null? #{when-list\ 1925}#)
- #{situations\ 1926}#
- (#{f\ 1924}#
- (cdr #{when-list\ 1925}#)
- (cons (let ((#{x\ 1928}#
- (car #{when-list\ 1925}#)))
- (if (#{free-id=?\ 431}#
- #{x\ 1928}#
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)))))))))))))))
+ (if (#{syntax-object?\ 351}# #{e\ 1788}#)
+ (#{syntax-type\ 468}#
+ (#{syntax-object-expression\ 353}# #{e\ 1788}#)
+ #{r\ 1789}#
+ (#{join-wraps\ 438}#
+ #{w\ 1790}#
+ (#{syntax-object-wrap\ 355}# #{e\ 1788}#))
+ (begin
+ (let ((#{t\ 1921}#
+ (#{source-annotation\ 366}# #{e\ 1788}#)))
+ (if #{t\ 1921}# #{t\ 1921}# #{s\ 1791}#)))
+ #{rib\ 1792}#
+ (begin
+ (let ((#{t\ 1925}#
+ (#{syntax-object-module\ 357}# #{e\ 1788}#)))
+ (if #{t\ 1925}# #{t\ 1925}# #{mod\ 1793}#)))
+ #{for-car?\ 1794}#)
+ (if (self-evaluating? #{e\ 1788}#)
+ (values
+ 'constant
+ #f
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)
+ (values
+ 'other
+ #f
+ #{e\ 1788}#
+ #{w\ 1790}#
+ #{s\ 1791}#
+ #{mod\ 1793}#)))))))
+ (#{chi-when-list\ 466}#
+ (lambda (#{e\ 1930}# #{when-list\ 1931}# #{w\ 1932}#)
+ (letrec*
+ ((#{f\ 1939}#
+ (lambda (#{when-list\ 1940}# #{situations\ 1941}#)
+ (if (null? #{when-list\ 1940}#)
+ #{situations\ 1941}#
+ (#{f\ 1939}#
+ (cdr #{when-list\ 1940}#)
+ (cons (begin
+ (let ((#{x\ 1943}# (car #{when-list\ 1940}#)))
+ (if (#{free-id=?\ 446}#
+ #{x\ 1943}#
+ '#(syntax-object
+ compile
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1942"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1936" "i1937" "i1938"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1933" "i1934" "i1935"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+ set-syntax-object-module!
+ set-syntax-object-wrap!
+ set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+ syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+ build-global-definition
+ maybe-name-value!
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+ get-global-definition-hook
+ put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors
+ and-map*)
+ ((top) (top) (top) (top))
+ ("i38" "i37" "i36" "i34")))
+ (hygiene guile)))
+ 'compile
+ (if (#{free-id=?\ 446}#
+ #{x\ 1943}#
+ '#(syntax-object
+ load
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i1942"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1936" "i1937" "i1938"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1933" "i1934" "i1935"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+ set-syntax-object-module!
+ set-syntax-object-wrap!
+ set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+ syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+ build-global-definition
+ maybe-name-value!
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+ get-global-definition-hook
+ put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors
+ and-map*)
+ ((top) (top) (top) (top))
+ ("i38" "i37" "i36" "i34")))
+ (hygiene guile)))
+ 'load
+ (if (#{free-id=?\ 446}#
+ #{x\ 1943}#
+ '#(syntax-object
+ eval
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i1942"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1936" "i1937" "i1938"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1933" "i1934" "i1935"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+ set-syntax-object-module!
+ set-syntax-object-wrap!
+
set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+ syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+ build-global-definition
+ maybe-name-value!
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+ get-global-definition-hook
+ put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+
define-expansion-constructors
+ and-map*)
+ ((top) (top) (top) (top))
+ ("i38" "i37" "i36" "i34")))
+ (hygiene guile)))
+ 'eval
+ (if (#{free-id=?\ 446}#
+ #{x\ 1943}#
'#(syntax-object
- compile
+ expand
((top)
#(ribcage () () ())
#(ribcage () () ())
@@ -6002,17 +7396,17 @@
#(ribcage
#(x)
#((top))
- #("i1927"))
+ #("i1942"))
#(ribcage () () ())
#(ribcage
#(f when-list situations)
#((top) (top) (top))
- #("i1921" "i1922" "i1923"))
+ #("i1936" "i1937" "i1938"))
#(ribcage () () ())
#(ribcage
#(e when-list w)
#((top) (top) (top))
- #("i1918" "i1919" "i1920"))
+ #("i1933" "i1934" "i1935"))
#(ribcage
(lambda-var-list
gen-var
@@ -6288,63 +7682,71 @@
(top)
(top)
(top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
"i430"
- "i428"
+ "i429"
+ "i427"
"i426"
+ "i425"
"i424"
- "i422"
- "i420"
- "i418"
- "i416"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
"i415"
- "i414"
- "i412"
+ "i413"
"i411"
- "i410"
"i409"
- "i408"
- "i406"
+ "i407"
"i404"
"i402"
+ "i401"
"i400"
+ "i399"
"i398"
- "i396"
- "i394"
- "i392"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
"i389"
- "i387"
+ "i388"
"i386"
- "i385"
"i384"
- "i383"
"i382"
"i380"
"i378"
@@ -6353,42 +7755,42 @@
"i373"
"i371"
"i369"
+ "i368"
"i367"
"i365"
- "i363"
- "i361"
- "i359"
+ "i364"
+ "i362"
+ "i360"
"i358"
"i356"
"i354"
- "i353"
"i352"
"i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
"i299"
"i297"
"i295"
@@ -6397,9 +7799,8 @@
"i289"
"i287"
"i285"
- "i284"
- "i282"
- "i280"
+ "i283"
+ "i281"
"i278"
"i276"
"i274"
@@ -6407,3712 +7808,3493 @@
"i270"
"i268"
"i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
- ("i23" "i22" "i21" "i19")))
+ ("i38" "i37" "i36" "i34")))
(hygiene guile)))
- 'compile
- (if (#{free-id=?\ 431}#
- #{x\ 1928}#
- '#(syntax-object
- load
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i1927"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1921"
- "i1922"
- "i1923"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1918"
- "i1919"
- "i1920"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- chi-lambda-case
- lambda*-formals
- chi-simple-lambda
- lambda-formals
- ellipsis?
- chi-void
- eval-local-transformer
- chi-local-syntax
- chi-body
- chi-macro
- chi-application
- chi-expr
- chi
- chi-top
- syntax-type
- chi-when-list
- chi-install-global
- chi-top-sequence
- chi-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- id-var-name
- same-marks?
- join-marks
- join-wraps
- smart-append
- make-binding-wrap
- extend-ribcage!
- make-empty-ribcage
- new-mark
- anti-mark
- the-anti-mark
- top-marked?
- top-wrap
- empty-wrap
- set-ribcage-labels!
- set-ribcage-marks!
- set-ribcage-symnames!
- ribcage-labels
- ribcage-marks
- ribcage-symnames
- ribcage?
- make-ribcage
- gen-labels
- gen-label
- make-rename
- rename-marks
- rename-new
- rename-old
- subst-rename?
- wrap-subst
- wrap-marks
- make-wrap
- id-sym-name&marks
- id-sym-name
- id?
- nonsymbol-id?
- global-extend
- lookup
- macros-only-env
- extend-var-env
- extend-env
- null-env
- binding-value
- binding-type
- make-binding
- arg-check
- source-annotation
- no-source
-
set-syntax-object-module!
- set-syntax-object-wrap!
-
set-syntax-object-expression!
- syntax-object-module
- syntax-object-wrap
-
syntax-object-expression
- syntax-object?
- make-syntax-object
- build-lexical-var
- build-letrec
- build-named-let
- build-let
- build-sequence
- build-data
- build-primref
- build-lambda-case
- build-case-lambda
- build-simple-lambda
- build-global-definition
- maybe-name-value!
- build-global-assignment
- build-global-reference
- analyze-variable
-
build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
- gensym-hook
- local-eval-hook
- top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
- set-lambda-meta!
- lambda-meta
- lambda?
- make-dynlet
- make-letrec
- make-let
- make-lambda-case
- make-lambda
- make-sequence
- make-application
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
- #(ribcage
- (define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i23"
- "i22"
- "i21"
- "i19")))
- (hygiene guile)))
- 'load
- (if (#{free-id=?\ 431}#
- #{x\ 1928}#
- '#(syntax-object
- eval
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i1927"))
- #(ribcage () () ())
- #(ribcage
- #(f
- when-list
- situations)
- #((top) (top) (top))
- #("i1921"
- "i1922"
- "i1923"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1918"
- "i1919"
- "i1920"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- chi-lambda-case
- lambda*-formals
- chi-simple-lambda
- lambda-formals
- ellipsis?
- chi-void
-
eval-local-transformer
- chi-local-syntax
- chi-body
- chi-macro
- chi-application
- chi-expr
- chi
- chi-top
- syntax-type
- chi-when-list
- chi-install-global
- chi-top-sequence
- chi-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- id-var-name
- same-marks?
- join-marks
- join-wraps
- smart-append
- make-binding-wrap
- extend-ribcage!
- make-empty-ribcage
- new-mark
- anti-mark
- the-anti-mark
- top-marked?
- top-wrap
- empty-wrap
- set-ribcage-labels!
- set-ribcage-marks!
- set-ribcage-symnames!
- ribcage-labels
- ribcage-marks
- ribcage-symnames
- ribcage?
- make-ribcage
- gen-labels
- gen-label
- make-rename
- rename-marks
- rename-new
- rename-old
- subst-rename?
- wrap-subst
- wrap-marks
- make-wrap
- id-sym-name&marks
- id-sym-name
- id?
- nonsymbol-id?
- global-extend
- lookup
- macros-only-env
- extend-var-env
- extend-env
- null-env
- binding-value
- binding-type
- make-binding
- arg-check
- source-annotation
- no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
- syntax-object-module
- syntax-object-wrap
-
syntax-object-expression
- syntax-object?
- make-syntax-object
- build-lexical-var
- build-letrec
- build-named-let
- build-let
- build-sequence
- build-data
- build-primref
- build-lambda-case
- build-case-lambda
- build-simple-lambda
-
build-global-definition
- maybe-name-value!
-
build-global-assignment
-
build-global-reference
- analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
- gensym-hook
- local-eval-hook
- top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
- set-lambda-meta!
- lambda-meta
- lambda?
- make-dynlet
- make-letrec
- make-let
- make-lambda-case
- make-lambda
- make-sequence
- make-application
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
- #(ribcage
- (define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i23"
- "i22"
- "i21"
- "i19")))
- (hygiene guile)))
- 'eval
- (if (#{free-id=?\ 431}#
- #{x\ 1928}#
- '#(syntax-object
- expand
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i1927"))
- #(ribcage () () ())
- #(ribcage
- #(f
- when-list
- situations)
- #((top) (top) (top))
- #("i1921"
- "i1922"
- "i1923"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1918"
- "i1919"
- "i1920"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- chi-lambda-case
- lambda*-formals
- chi-simple-lambda
- lambda-formals
- ellipsis?
- chi-void
-
eval-local-transformer
- chi-local-syntax
- chi-body
- chi-macro
- chi-application
- chi-expr
- chi
- chi-top
- syntax-type
- chi-when-list
- chi-install-global
- chi-top-sequence
- chi-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- id-var-name
- same-marks?
- join-marks
- join-wraps
- smart-append
- make-binding-wrap
- extend-ribcage!
- make-empty-ribcage
- new-mark
- anti-mark
- the-anti-mark
- top-marked?
- top-wrap
- empty-wrap
- set-ribcage-labels!
- set-ribcage-marks!
-
set-ribcage-symnames!
- ribcage-labels
- ribcage-marks
- ribcage-symnames
- ribcage?
- make-ribcage
- gen-labels
- gen-label
- make-rename
- rename-marks
- rename-new
- rename-old
- subst-rename?
- wrap-subst
- wrap-marks
- make-wrap
- id-sym-name&marks
- id-sym-name
- id?
- nonsymbol-id?
- global-extend
- lookup
- macros-only-env
- extend-var-env
- extend-env
- null-env
- binding-value
- binding-type
- make-binding
- arg-check
- source-annotation
- no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
- syntax-object-wrap
-
syntax-object-expression
- syntax-object?
- make-syntax-object
- build-lexical-var
- build-letrec
- build-named-let
- build-let
- build-sequence
- build-data
- build-primref
- build-lambda-case
- build-case-lambda
- build-simple-lambda
-
build-global-definition
- maybe-name-value!
-
build-global-assignment
-
build-global-reference
- analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
- gensym-hook
- local-eval-hook
- top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
- set-lambda-meta!
- lambda-meta
- lambda?
- make-dynlet
- make-letrec
- make-let
- make-lambda-case
- make-lambda
- make-sequence
- make-application
- make-conditional
-
make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
- #(ribcage
- (define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i23"
- "i22"
- "i21"
- "i19")))
- (hygiene guile)))
- 'expand
- (syntax-violation
- 'eval-when
- "invalid situation"
- #{e\ 1915}#
- (#{wrap\ 441}#
- #{x\ 1928}#
- #{w\ 1917}#
- #f)))))))
- #{situations\ 1926}#))))))
- (#{f\ 1924}# #{when-list\ 1916}# (quote ())))))
- (#{chi-install-global\ 449}#
- (lambda (#{name\ 1938}# #{e\ 1939}#)
- (#{build-global-definition\ 312}#
+ 'expand
+ (syntax-violation
+ 'eval-when
+ "invalid situation"
+ #{e\ 1930}#
+ (#{wrap\ 456}#
+ #{x\ 1943}#
+ #{w\ 1932}#
+ #f))))))))
+ #{situations\ 1941}#))))))
+ (begin
+ (#{f\ 1939}# #{when-list\ 1931}# (quote ()))))))
+ (#{chi-install-global\ 464}#
+ (lambda (#{name\ 1953}# #{e\ 1954}#)
+ (#{build-global-definition\ 327}#
+ #f
+ #{name\ 1953}#
+ (#{build-application\ 309}#
#f
- #{name\ 1938}#
- (#{build-application\ 294}#
+ (#{build-primref\ 335}#
#f
- (#{build-primref\ 320}#
- #f
- 'make-syntax-transformer)
- (list (#{build-data\ 322}# #f #{name\ 1938}#)
- (#{build-data\ 322}# #f (quote macro))
- #{e\ 1939}#)))))
- (#{chi-top-sequence\ 447}#
- (lambda (#{body\ 1947}#
- #{r\ 1948}#
- #{w\ 1949}#
- #{s\ 1950}#
- #{m\ 1951}#
- #{esew\ 1952}#
- #{mod\ 1953}#)
- (#{build-sequence\ 324}#
- #{s\ 1950}#
- (letrec ((#{dobody\ 1969}#
- (lambda (#{body\ 1970}#
- #{r\ 1971}#
- #{w\ 1972}#
- #{m\ 1973}#
- #{esew\ 1974}#
- #{mod\ 1975}#
- #{out\ 1976}#)
- (if (null? #{body\ 1970}#)
- (reverse #{out\ 1976}#)
- (#{dobody\ 1969}#
- (cdr #{body\ 1970}#)
- #{r\ 1971}#
- #{w\ 1972}#
- #{m\ 1973}#
- #{esew\ 1974}#
- #{mod\ 1975}#
- (cons (#{chi-top\ 455}#
- (car #{body\ 1970}#)
- #{r\ 1971}#
- #{w\ 1972}#
- #{m\ 1973}#
- #{esew\ 1974}#
- #{mod\ 1975}#)
- #{out\ 1976}#))))))
- (#{dobody\ 1969}#
- #{body\ 1947}#
- #{r\ 1948}#
- #{w\ 1949}#
- #{m\ 1951}#
- #{esew\ 1952}#
- #{mod\ 1953}#
- '())))))
- (#{chi-sequence\ 445}#
- (lambda (#{body\ 1977}#
- #{r\ 1978}#
- #{w\ 1979}#
- #{s\ 1980}#
- #{mod\ 1981}#)
- (#{build-sequence\ 324}#
- #{s\ 1980}#
- (letrec ((#{dobody\ 1992}#
- (lambda (#{body\ 1993}#
- #{r\ 1994}#
- #{w\ 1995}#
- #{mod\ 1996}#)
- (if (null? #{body\ 1993}#)
- '()
- (let ((#{first\ 1998}#
- (#{chi\ 457}#
- (car #{body\ 1993}#)
- #{r\ 1994}#
- #{w\ 1995}#
- #{mod\ 1996}#)))
- (cons #{first\ 1998}#
- (#{dobody\ 1992}#
- (cdr #{body\ 1993}#)
- #{r\ 1994}#
- #{w\ 1995}#
- #{mod\ 1996}#)))))))
- (#{dobody\ 1992}#
- #{body\ 1977}#
- #{r\ 1978}#
- #{w\ 1979}#
- #{mod\ 1981}#)))))
- (#{source-wrap\ 443}#
- (lambda (#{x\ 1999}#
- #{w\ 2000}#
- #{s\ 2001}#
- #{defmod\ 2002}#)
- (#{wrap\ 441}#
- (#{decorate-source\ 290}#
- #{x\ 1999}#
- #{s\ 2001}#)
- #{w\ 2000}#
- #{defmod\ 2002}#)))
- (#{wrap\ 441}#
- (lambda (#{x\ 2007}# #{w\ 2008}# #{defmod\ 2009}#)
- (if (if (null? (#{wrap-marks\ 379}# #{w\ 2008}#))
- (null? (#{wrap-subst\ 381}# #{w\ 2008}#))
- #f)
- #{x\ 2007}#
- (if (#{syntax-object?\ 336}# #{x\ 2007}#)
- (#{make-syntax-object\ 334}#
- (#{syntax-object-expression\ 338}# #{x\ 2007}#)
- (#{join-wraps\ 423}#
- #{w\ 2008}#
- (#{syntax-object-wrap\ 340}# #{x\ 2007}#))
- (#{syntax-object-module\ 342}# #{x\ 2007}#))
- (if (null? #{x\ 2007}#)
- #{x\ 2007}#
- (#{make-syntax-object\ 334}#
- #{x\ 2007}#
- #{w\ 2008}#
- #{defmod\ 2009}#))))))
- (#{bound-id-member?\ 439}#
- (lambda (#{x\ 2022}# #{list\ 2023}#)
- (if (not (null? #{list\ 2023}#))
- (let ((#{t\ 2030}#
- (#{bound-id=?\ 433}#
- #{x\ 2022}#
- (car #{list\ 2023}#))))
- (if #{t\ 2030}#
- #{t\ 2030}#
- (#{bound-id-member?\ 439}#
- #{x\ 2022}#
- (cdr #{list\ 2023}#))))
- #f)))
- (#{distinct-bound-ids?\ 437}#
- (lambda (#{ids\ 2032}#)
- (letrec ((#{distinct?\ 2036}#
- (lambda (#{ids\ 2037}#)
- (let ((#{t\ 2040}# (null? #{ids\ 2037}#)))
- (if #{t\ 2040}#
- #{t\ 2040}#
- (if (not (#{bound-id-member?\ 439}#
- (car #{ids\ 2037}#)
- (cdr #{ids\ 2037}#)))
- (#{distinct?\ 2036}# (cdr #{ids\ 2037}#))
- #f))))))
- (#{distinct?\ 2036}# #{ids\ 2032}#))))
- (#{valid-bound-ids?\ 435}#
- (lambda (#{ids\ 2044}#)
- (if (letrec ((#{all-ids?\ 2049}#
- (lambda (#{ids\ 2050}#)
- (let ((#{t\ 2053}# (null? #{ids\ 2050}#)))
- (if #{t\ 2053}#
- #{t\ 2053}#
- (if (#{id?\ 372}# (car #{ids\ 2050}#))
- (#{all-ids?\ 2049}# (cdr #{ids\ 2050}#))
- #f))))))
- (#{all-ids?\ 2049}# #{ids\ 2044}#))
- (#{distinct-bound-ids?\ 437}# #{ids\ 2044}#)
- #f)))
- (#{bound-id=?\ 433}#
- (lambda (#{i\ 2058}# #{j\ 2059}#)
- (if (if (#{syntax-object?\ 336}# #{i\ 2058}#)
- (#{syntax-object?\ 336}# #{j\ 2059}#)
- #f)
- (if (eq? (#{syntax-object-expression\ 338}# #{i\ 2058}#)
- (#{syntax-object-expression\ 338}# #{j\ 2059}#))
- (#{same-marks?\ 427}#
- (#{wrap-marks\ 379}#
- (#{syntax-object-wrap\ 340}# #{i\ 2058}#))
- (#{wrap-marks\ 379}#
- (#{syntax-object-wrap\ 340}# #{j\ 2059}#)))
+ 'make-syntax-transformer)
+ (list (#{build-data\ 337}# #f #{name\ 1953}#)
+ (#{build-data\ 337}# #f (quote macro))
+ #{e\ 1954}#)))))
+ (#{chi-top-sequence\ 462}#
+ (lambda (#{body\ 1962}#
+ #{r\ 1963}#
+ #{w\ 1964}#
+ #{s\ 1965}#
+ #{m\ 1966}#
+ #{esew\ 1967}#
+ #{mod\ 1968}#)
+ (#{build-sequence\ 339}#
+ #{s\ 1965}#
+ (letrec*
+ ((#{dobody\ 1984}#
+ (lambda (#{body\ 1985}#
+ #{r\ 1986}#
+ #{w\ 1987}#
+ #{m\ 1988}#
+ #{esew\ 1989}#
+ #{mod\ 1990}#
+ #{out\ 1991}#)
+ (if (null? #{body\ 1985}#)
+ (reverse #{out\ 1991}#)
+ (#{dobody\ 1984}#
+ (cdr #{body\ 1985}#)
+ #{r\ 1986}#
+ #{w\ 1987}#
+ #{m\ 1988}#
+ #{esew\ 1989}#
+ #{mod\ 1990}#
+ (cons (#{chi-top\ 470}#
+ (car #{body\ 1985}#)
+ #{r\ 1986}#
+ #{w\ 1987}#
+ #{m\ 1988}#
+ #{esew\ 1989}#
+ #{mod\ 1990}#)
+ #{out\ 1991}#))))))
+ (begin
+ (#{dobody\ 1984}#
+ #{body\ 1962}#
+ #{r\ 1963}#
+ #{w\ 1964}#
+ #{m\ 1966}#
+ #{esew\ 1967}#
+ #{mod\ 1968}#
+ '()))))))
+ (#{chi-sequence\ 460}#
+ (lambda (#{body\ 1992}#
+ #{r\ 1993}#
+ #{w\ 1994}#
+ #{s\ 1995}#
+ #{mod\ 1996}#)
+ (#{build-sequence\ 339}#
+ #{s\ 1995}#
+ (letrec*
+ ((#{dobody\ 2007}#
+ (lambda (#{body\ 2008}#
+ #{r\ 2009}#
+ #{w\ 2010}#
+ #{mod\ 2011}#)
+ (if (null? #{body\ 2008}#)
+ '()
+ (begin
+ (let ((#{first\ 2013}#
+ (#{chi\ 472}#
+ (car #{body\ 2008}#)
+ #{r\ 2009}#
+ #{w\ 2010}#
+ #{mod\ 2011}#)))
+ (cons #{first\ 2013}#
+ (#{dobody\ 2007}#
+ (cdr #{body\ 2008}#)
+ #{r\ 2009}#
+ #{w\ 2010}#
+ #{mod\ 2011}#))))))))
+ (begin
+ (#{dobody\ 2007}#
+ #{body\ 1992}#
+ #{r\ 1993}#
+ #{w\ 1994}#
+ #{mod\ 1996}#))))))
+ (#{source-wrap\ 458}#
+ (lambda (#{x\ 2014}#
+ #{w\ 2015}#
+ #{s\ 2016}#
+ #{defmod\ 2017}#)
+ (#{wrap\ 456}#
+ (#{decorate-source\ 305}#
+ #{x\ 2014}#
+ #{s\ 2016}#)
+ #{w\ 2015}#
+ #{defmod\ 2017}#)))
+ (#{wrap\ 456}#
+ (lambda (#{x\ 2022}# #{w\ 2023}# #{defmod\ 2024}#)
+ (if (if (null? (#{wrap-marks\ 394}# #{w\ 2023}#))
+ (null? (#{wrap-subst\ 396}# #{w\ 2023}#))
#f)
- (eq? #{i\ 2058}# #{j\ 2059}#))))
- (#{free-id=?\ 431}#
- (lambda (#{i\ 2066}# #{j\ 2067}#)
- (if (eq? (let ((#{x\ 2073}# #{i\ 2066}#))
- (if (#{syntax-object?\ 336}# #{x\ 2073}#)
- (#{syntax-object-expression\ 338}# #{x\ 2073}#)
- #{x\ 2073}#))
- (let ((#{x\ 2076}# #{j\ 2067}#))
- (if (#{syntax-object?\ 336}# #{x\ 2076}#)
- (#{syntax-object-expression\ 338}# #{x\ 2076}#)
- #{x\ 2076}#)))
- (eq? (#{id-var-name\ 429}# #{i\ 2066}# (quote (())))
- (#{id-var-name\ 429}# #{j\ 2067}# (quote (()))))
- #f)))
- (#{id-var-name\ 429}#
- (lambda (#{id\ 2080}# #{w\ 2081}#)
- (letrec ((#{search-vector-rib\ 2090}#
- (lambda (#{sym\ 2102}#
- #{subst\ 2103}#
- #{marks\ 2104}#
- #{symnames\ 2105}#
- #{ribcage\ 2106}#)
- (let ((#{n\ 2113}#
- (vector-length #{symnames\ 2105}#)))
- (letrec ((#{f\ 2116}#
- (lambda (#{i\ 2117}#)
- (if (#{fx=\ 277}#
- #{i\ 2117}#
- #{n\ 2113}#)
- (#{search\ 2086}#
- #{sym\ 2102}#
- (cdr #{subst\ 2103}#)
- #{marks\ 2104}#)
- (if (if (eq? (vector-ref
- #{symnames\ 2105}#
- #{i\ 2117}#)
- #{sym\ 2102}#)
- (#{same-marks?\ 427}#
- #{marks\ 2104}#
- (vector-ref
- (#{ribcage-marks\ 399}#
- #{ribcage\ 2106}#)
- #{i\ 2117}#))
- #f)
- (values
- (vector-ref
- (#{ribcage-labels\ 401}#
- #{ribcage\ 2106}#)
- #{i\ 2117}#)
- #{marks\ 2104}#)
- (#{f\ 2116}#
- (#{fx+\ 273}#
- #{i\ 2117}#
- 1)))))))
- (#{f\ 2116}# 0)))))
- (#{search-list-rib\ 2088}#
- (lambda (#{sym\ 2125}#
- #{subst\ 2126}#
- #{marks\ 2127}#
- #{symnames\ 2128}#
- #{ribcage\ 2129}#)
- (letrec ((#{f\ 2138}#
- (lambda (#{symnames\ 2139}# #{i\ 2140}#)
- (if (null? #{symnames\ 2139}#)
- (#{search\ 2086}#
- #{sym\ 2125}#
- (cdr #{subst\ 2126}#)
- #{marks\ 2127}#)
- (if (if (eq? (car #{symnames\
2139}#)
- #{sym\ 2125}#)
- (#{same-marks?\ 427}#
- #{marks\ 2127}#
- (list-ref
- (#{ribcage-marks\ 399}#
- #{ribcage\ 2129}#)
- #{i\ 2140}#))
- #f)
- (values
- (list-ref
- (#{ribcage-labels\ 401}#
- #{ribcage\ 2129}#)
- #{i\ 2140}#)
- #{marks\ 2127}#)
- (#{f\ 2138}#
- (cdr #{symnames\ 2139}#)
- (#{fx+\ 273}#
- #{i\ 2140}#
- 1)))))))
- (#{f\ 2138}# #{symnames\ 2128}# 0))))
- (#{search\ 2086}#
- (lambda (#{sym\ 2148}#
- #{subst\ 2149}#
- #{marks\ 2150}#)
- (if (null? #{subst\ 2149}#)
- (values #f #{marks\ 2150}#)
- (let ((#{fst\ 2155}# (car #{subst\ 2149}#)))
- (if (eq? #{fst\ 2155}# (quote shift))
- (#{search\ 2086}#
- #{sym\ 2148}#
- (cdr #{subst\ 2149}#)
- (cdr #{marks\ 2150}#))
- (let ((#{symnames\ 2157}#
- (#{ribcage-symnames\ 397}#
- #{fst\ 2155}#)))
- (if (vector? #{symnames\ 2157}#)
- (#{search-vector-rib\ 2090}#
- #{sym\ 2148}#
- #{subst\ 2149}#
- #{marks\ 2150}#
- #{symnames\ 2157}#
- #{fst\ 2155}#)
- (#{search-list-rib\ 2088}#
- #{sym\ 2148}#
- #{subst\ 2149}#
- #{marks\ 2150}#
- #{symnames\ 2157}#
- #{fst\ 2155}#)))))))))
- (if (symbol? #{id\ 2080}#)
- (let ((#{t\ 2160}#
- (call-with-values
- (lambda ()
- (#{search\ 2086}#
- #{id\ 2080}#
- (#{wrap-subst\ 381}# #{w\ 2081}#)
- (#{wrap-marks\ 379}# #{w\ 2081}#)))
- (lambda (#{x\ 2162}# . #{ignore\ 2163}#)
- #{x\ 2162}#))))
- (if #{t\ 2160}# #{t\ 2160}# #{id\ 2080}#))
- (if (#{syntax-object?\ 336}# #{id\ 2080}#)
- (let ((#{id\ 2171}#
- (#{syntax-object-expression\ 338}# #{id\ 2080}#))
- (#{w1\ 2172}#
- (#{syntax-object-wrap\ 340}# #{id\ 2080}#)))
- (let ((#{marks\ 2174}#
- (#{join-marks\ 425}#
- (#{wrap-marks\ 379}# #{w\ 2081}#)
- (#{wrap-marks\ 379}# #{w1\ 2172}#))))
- (call-with-values
- (lambda ()
- (#{search\ 2086}#
- #{id\ 2171}#
- (#{wrap-subst\ 381}# #{w\ 2081}#)
- #{marks\ 2174}#))
- (lambda (#{new-id\ 2175}# #{marks\ 2176}#)
- (let ((#{t\ 2181}# #{new-id\ 2175}#))
- (if #{t\ 2181}#
- #{t\ 2181}#
- (let ((#{t\ 2184}#
- (call-with-values
- (lambda ()
- (#{search\ 2086}#
- #{id\ 2171}#
- (#{wrap-subst\ 381}#
- #{w1\ 2172}#)
- #{marks\ 2176}#))
- (lambda (#{x\ 2186}#
- .
- #{ignore\ 2187}#)
- #{x\ 2186}#))))
- (if #{t\ 2184}#
- #{t\ 2184}#
- #{id\ 2171}#))))))))
+ #{x\ 2022}#
+ (if (#{syntax-object?\ 351}# #{x\ 2022}#)
+ (#{make-syntax-object\ 349}#
+ (#{syntax-object-expression\ 353}# #{x\ 2022}#)
+ (#{join-wraps\ 438}#
+ #{w\ 2023}#
+ (#{syntax-object-wrap\ 355}# #{x\ 2022}#))
+ (#{syntax-object-module\ 357}# #{x\ 2022}#))
+ (if (null? #{x\ 2022}#)
+ #{x\ 2022}#
+ (#{make-syntax-object\ 349}#
+ #{x\ 2022}#
+ #{w\ 2023}#
+ #{defmod\ 2024}#))))))
+ (#{bound-id-member?\ 454}#
+ (lambda (#{x\ 2037}# #{list\ 2038}#)
+ (if (not (null? #{list\ 2038}#))
+ (begin
+ (let ((#{t\ 2045}#
+ (#{bound-id=?\ 448}#
+ #{x\ 2037}#
+ (car #{list\ 2038}#))))
+ (if #{t\ 2045}#
+ #{t\ 2045}#
+ (#{bound-id-member?\ 454}#
+ #{x\ 2037}#
+ (cdr #{list\ 2038}#)))))
+ #f)))
+ (#{distinct-bound-ids?\ 452}#
+ (lambda (#{ids\ 2047}#)
+ (letrec*
+ ((#{distinct?\ 2051}#
+ (lambda (#{ids\ 2052}#)
+ (begin
+ (let ((#{t\ 2055}# (null? #{ids\ 2052}#)))
+ (if #{t\ 2055}#
+ #{t\ 2055}#
+ (if (not (#{bound-id-member?\ 454}#
+ (car #{ids\ 2052}#)
+ (cdr #{ids\ 2052}#)))
+ (#{distinct?\ 2051}# (cdr #{ids\ 2052}#))
+ #f)))))))
+ (begin (#{distinct?\ 2051}# #{ids\ 2047}#)))))
+ (#{valid-bound-ids?\ 450}#
+ (lambda (#{ids\ 2059}#)
+ (if (letrec*
+ ((#{all-ids?\ 2064}#
+ (lambda (#{ids\ 2065}#)
+ (begin
+ (let ((#{t\ 2068}# (null? #{ids\ 2065}#)))
+ (if #{t\ 2068}#
+ #{t\ 2068}#
+ (if (#{id?\ 387}# (car #{ids\ 2065}#))
+ (#{all-ids?\ 2064}# (cdr #{ids\ 2065}#))
+ #f)))))))
+ (begin (#{all-ids?\ 2064}# #{ids\ 2059}#)))
+ (#{distinct-bound-ids?\ 452}# #{ids\ 2059}#)
+ #f)))
+ (#{bound-id=?\ 448}#
+ (lambda (#{i\ 2073}# #{j\ 2074}#)
+ (if (if (#{syntax-object?\ 351}# #{i\ 2073}#)
+ (#{syntax-object?\ 351}# #{j\ 2074}#)
+ #f)
+ (if (eq? (#{syntax-object-expression\ 353}# #{i\ 2073}#)
+ (#{syntax-object-expression\ 353}# #{j\ 2074}#))
+ (#{same-marks?\ 442}#
+ (#{wrap-marks\ 394}#
+ (#{syntax-object-wrap\ 355}# #{i\ 2073}#))
+ (#{wrap-marks\ 394}#
+ (#{syntax-object-wrap\ 355}# #{j\ 2074}#)))
+ #f)
+ (eq? #{i\ 2073}# #{j\ 2074}#))))
+ (#{free-id=?\ 446}#
+ (lambda (#{i\ 2081}# #{j\ 2082}#)
+ (if (eq? (begin
+ (let ((#{x\ 2088}# #{i\ 2081}#))
+ (if (#{syntax-object?\ 351}# #{x\ 2088}#)
+ (#{syntax-object-expression\ 353}# #{x\ 2088}#)
+ #{x\ 2088}#)))
+ (begin
+ (let ((#{x\ 2091}# #{j\ 2082}#))
+ (if (#{syntax-object?\ 351}# #{x\ 2091}#)
+ (#{syntax-object-expression\ 353}# #{x\ 2091}#)
+ #{x\ 2091}#))))
+ (eq? (#{id-var-name\ 444}# #{i\ 2081}# (quote (())))
+ (#{id-var-name\ 444}# #{j\ 2082}# (quote (()))))
+ #f)))
+ (#{id-var-name\ 444}#
+ (lambda (#{id\ 2095}# #{w\ 2096}#)
+ (letrec*
+ ((#{search-vector-rib\ 2105}#
+ (lambda (#{sym\ 2117}#
+ #{subst\ 2118}#
+ #{marks\ 2119}#
+ #{symnames\ 2120}#
+ #{ribcage\ 2121}#)
+ (begin
+ (let ((#{n\ 2128}# (vector-length #{symnames\ 2120}#)))
+ (letrec*
+ ((#{f\ 2131}#
+ (lambda (#{i\ 2132}#)
+ (if (#{fx=\ 292}# #{i\ 2132}# #{n\ 2128}#)
+ (#{search\ 2101}#
+ #{sym\ 2117}#
+ (cdr #{subst\ 2118}#)
+ #{marks\ 2119}#)
+ (if (if (eq? (vector-ref
+ #{symnames\ 2120}#
+ #{i\ 2132}#)
+ #{sym\ 2117}#)
+ (#{same-marks?\ 442}#
+ #{marks\ 2119}#
+ (vector-ref
+ (#{ribcage-marks\ 414}#
+ #{ribcage\ 2121}#)
+ #{i\ 2132}#))
+ #f)
+ (values
+ (vector-ref
+ (#{ribcage-labels\ 416}#
+ #{ribcage\ 2121}#)
+ #{i\ 2132}#)
+ #{marks\ 2119}#)
+ (#{f\ 2131}#
+ (#{fx+\ 288}# #{i\ 2132}# 1)))))))
+ (begin (#{f\ 2131}# 0)))))))
+ (#{search-list-rib\ 2103}#
+ (lambda (#{sym\ 2140}#
+ #{subst\ 2141}#
+ #{marks\ 2142}#
+ #{symnames\ 2143}#
+ #{ribcage\ 2144}#)
+ (letrec*
+ ((#{f\ 2153}#
+ (lambda (#{symnames\ 2154}# #{i\ 2155}#)
+ (if (null? #{symnames\ 2154}#)
+ (#{search\ 2101}#
+ #{sym\ 2140}#
+ (cdr #{subst\ 2141}#)
+ #{marks\ 2142}#)
+ (if (if (eq? (car #{symnames\ 2154}#)
+ #{sym\ 2140}#)
+ (#{same-marks?\ 442}#
+ #{marks\ 2142}#
+ (list-ref
+ (#{ribcage-marks\ 414}#
+ #{ribcage\ 2144}#)
+ #{i\ 2155}#))
+ #f)
+ (values
+ (list-ref
+ (#{ribcage-labels\ 416}# #{ribcage\ 2144}#)
+ #{i\ 2155}#)
+ #{marks\ 2142}#)
+ (#{f\ 2153}#
+ (cdr #{symnames\ 2154}#)
+ (#{fx+\ 288}# #{i\ 2155}# 1)))))))
+ (begin (#{f\ 2153}# #{symnames\ 2143}# 0)))))
+ (#{search\ 2101}#
+ (lambda (#{sym\ 2163}# #{subst\ 2164}# #{marks\ 2165}#)
+ (if (null? #{subst\ 2164}#)
+ (values #f #{marks\ 2165}#)
+ (begin
+ (let ((#{fst\ 2170}# (car #{subst\ 2164}#)))
+ (if (eq? #{fst\ 2170}# (quote shift))
+ (#{search\ 2101}#
+ #{sym\ 2163}#
+ (cdr #{subst\ 2164}#)
+ (cdr #{marks\ 2165}#))
+ (begin
+ (let ((#{symnames\ 2172}#
+ (#{ribcage-symnames\ 412}#
+ #{fst\ 2170}#)))
+ (if (vector? #{symnames\ 2172}#)
+ (#{search-vector-rib\ 2105}#
+ #{sym\ 2163}#
+ #{subst\ 2164}#
+ #{marks\ 2165}#
+ #{symnames\ 2172}#
+ #{fst\ 2170}#)
+ (#{search-list-rib\ 2103}#
+ #{sym\ 2163}#
+ #{subst\ 2164}#
+ #{marks\ 2165}#
+ #{symnames\ 2172}#
+ #{fst\ 2170}#)))))))))))
+ (begin
+ (if (symbol? #{id\ 2095}#)
+ (begin
+ (let ((#{t\ 2175}#
+ (call-with-values
+ (lambda ()
+ (#{search\ 2101}#
+ #{id\ 2095}#
+ (#{wrap-subst\ 396}# #{w\ 2096}#)
+ (#{wrap-marks\ 394}# #{w\ 2096}#)))
+ (lambda (#{x\ 2177}# . #{ignore\ 2178}#)
+ #{x\ 2177}#))))
+ (if #{t\ 2175}# #{t\ 2175}# #{id\ 2095}#)))
+ (if (#{syntax-object?\ 351}# #{id\ 2095}#)
+ (begin
+ (let ((#{id\ 2186}#
+ (#{syntax-object-expression\ 353}#
+ #{id\ 2095}#))
+ (#{w1\ 2187}#
+ (#{syntax-object-wrap\ 355}# #{id\ 2095}#)))
+ (begin
+ (let ((#{marks\ 2189}#
+ (#{join-marks\ 440}#
+ (#{wrap-marks\ 394}# #{w\ 2096}#)
+ (#{wrap-marks\ 394}# #{w1\ 2187}#))))
+ (call-with-values
+ (lambda ()
+ (#{search\ 2101}#
+ #{id\ 2186}#
+ (#{wrap-subst\ 396}# #{w\ 2096}#)
+ #{marks\ 2189}#))
+ (lambda (#{new-id\ 2190}# #{marks\ 2191}#)
+ (begin
+ (let ((#{t\ 2196}# #{new-id\ 2190}#))
+ (if #{t\ 2196}#
+ #{t\ 2196}#
+ (begin
+ (let ((#{t\ 2199}#
+ (call-with-values
+ (lambda ()
+ (#{search\ 2101}#
+ #{id\ 2186}#
+ (#{wrap-subst\ 396}#
+ #{w1\ 2187}#)
+ #{marks\ 2191}#))
+ (lambda (#{x\ 2201}#
+ .
+ #{ignore\ 2202}#)
+ #{x\ 2201}#))))
+ (if #{t\ 2199}#
+ #{t\ 2199}#
+ #{id\ 2186}#))))))))))))
(syntax-violation
'id-var-name
"invalid id"
- #{id\ 2080}#))))))
- (#{same-marks?\ 427}#
- (lambda (#{x\ 2192}# #{y\ 2193}#)
- (let ((#{t\ 2198}# (eq? #{x\ 2192}# #{y\ 2193}#)))
- (if #{t\ 2198}#
- #{t\ 2198}#
- (if (not (null? #{x\ 2192}#))
- (if (not (null? #{y\ 2193}#))
- (if (eq? (car #{x\ 2192}#) (car #{y\ 2193}#))
- (#{same-marks?\ 427}#
- (cdr #{x\ 2192}#)
- (cdr #{y\ 2193}#))
+ #{id\ 2095}#)))))))
+ (#{same-marks?\ 442}#
+ (lambda (#{x\ 2207}# #{y\ 2208}#)
+ (begin
+ (let ((#{t\ 2213}# (eq? #{x\ 2207}# #{y\ 2208}#)))
+ (if #{t\ 2213}#
+ #{t\ 2213}#
+ (if (not (null? #{x\ 2207}#))
+ (if (not (null? #{y\ 2208}#))
+ (if (eq? (car #{x\ 2207}#) (car #{y\ 2208}#))
+ (#{same-marks?\ 442}#
+ (cdr #{x\ 2207}#)
+ (cdr #{y\ 2208}#))
#f)
#f)
- #f)))))
- (#{join-marks\ 425}#
- (lambda (#{m1\ 2204}# #{m2\ 2205}#)
- (#{smart-append\ 421}# #{m1\ 2204}# #{m2\ 2205}#)))
- (#{join-wraps\ 423}#
- (lambda (#{w1\ 2208}# #{w2\ 2209}#)
- (let ((#{m1\ 2214}# (#{wrap-marks\ 379}# #{w1\ 2208}#))
- (#{s1\ 2215}# (#{wrap-subst\ 381}# #{w1\ 2208}#)))
- (if (null? #{m1\ 2214}#)
- (if (null? #{s1\ 2215}#)
- #{w2\ 2209}#
- (#{make-wrap\ 377}#
- (#{wrap-marks\ 379}# #{w2\ 2209}#)
- (#{smart-append\ 421}#
- #{s1\ 2215}#
- (#{wrap-subst\ 381}# #{w2\ 2209}#))))
- (#{make-wrap\ 377}#
- (#{smart-append\ 421}#
- #{m1\ 2214}#
- (#{wrap-marks\ 379}# #{w2\ 2209}#))
- (#{smart-append\ 421}#
- #{s1\ 2215}#
- (#{wrap-subst\ 381}# #{w2\ 2209}#)))))))
- (#{smart-append\ 421}#
- (lambda (#{m1\ 2216}# #{m2\ 2217}#)
- (if (null? #{m2\ 2217}#)
- #{m1\ 2216}#
- (append #{m1\ 2216}# #{m2\ 2217}#))))
- (#{make-binding-wrap\ 419}#
- (lambda (#{ids\ 2220}# #{labels\ 2221}# #{w\ 2222}#)
- (if (null? #{ids\ 2220}#)
- #{w\ 2222}#
- (#{make-wrap\ 377}#
- (#{wrap-marks\ 379}# #{w\ 2222}#)
- (cons (let ((#{labelvec\ 2227}#
- (list->vector #{labels\ 2221}#)))
- (let ((#{n\ 2229}#
- (vector-length #{labelvec\ 2227}#)))
- (let ((#{symnamevec\ 2232}#
- (make-vector #{n\ 2229}#))
- (#{marksvec\ 2233}#
- (make-vector #{n\ 2229}#)))
+ #f))))))
+ (#{join-marks\ 440}#
+ (lambda (#{m1\ 2219}# #{m2\ 2220}#)
+ (#{smart-append\ 436}# #{m1\ 2219}# #{m2\ 2220}#)))
+ (#{join-wraps\ 438}#
+ (lambda (#{w1\ 2223}# #{w2\ 2224}#)
+ (begin
+ (let ((#{m1\ 2229}# (#{wrap-marks\ 394}# #{w1\ 2223}#))
+ (#{s1\ 2230}# (#{wrap-subst\ 396}# #{w1\ 2223}#)))
+ (if (null? #{m1\ 2229}#)
+ (if (null? #{s1\ 2230}#)
+ #{w2\ 2224}#
+ (#{make-wrap\ 392}#
+ (#{wrap-marks\ 394}# #{w2\ 2224}#)
+ (#{smart-append\ 436}#
+ #{s1\ 2230}#
+ (#{wrap-subst\ 396}# #{w2\ 2224}#))))
+ (#{make-wrap\ 392}#
+ (#{smart-append\ 436}#
+ #{m1\ 2229}#
+ (#{wrap-marks\ 394}# #{w2\ 2224}#))
+ (#{smart-append\ 436}#
+ #{s1\ 2230}#
+ (#{wrap-subst\ 396}# #{w2\ 2224}#))))))))
+ (#{smart-append\ 436}#
+ (lambda (#{m1\ 2231}# #{m2\ 2232}#)
+ (if (null? #{m2\ 2232}#)
+ #{m1\ 2231}#
+ (append #{m1\ 2231}# #{m2\ 2232}#))))
+ (#{make-binding-wrap\ 434}#
+ (lambda (#{ids\ 2235}# #{labels\ 2236}# #{w\ 2237}#)
+ (if (null? #{ids\ 2235}#)
+ #{w\ 2237}#
+ (#{make-wrap\ 392}#
+ (#{wrap-marks\ 394}# #{w\ 2237}#)
+ (cons (begin
+ (let ((#{labelvec\ 2242}#
+ (list->vector #{labels\ 2236}#)))
+ (begin
+ (let ((#{n\ 2244}#
+ (vector-length #{labelvec\ 2242}#)))
(begin
- (letrec ((#{f\ 2237}#
- (lambda (#{ids\ 2238}# #{i\ 2239}#)
- (if (not (null? #{ids\ 2238}#))
- (call-with-values
- (lambda ()
- (#{id-sym-name&marks\ 375}#
- (car #{ids\ 2238}#)
- #{w\ 2222}#))
- (lambda (#{symname\ 2240}#
- #{marks\ 2241}#)
- (begin
- (vector-set!
- #{symnamevec\ 2232}#
- #{i\ 2239}#
- #{symname\ 2240}#)
- (vector-set!
- #{marksvec\ 2233}#
- #{i\ 2239}#
- #{marks\ 2241}#)
- (#{f\ 2237}#
- (cdr #{ids\ 2238}#)
- (#{fx+\ 273}#
- #{i\ 2239}#
- 1)))))))))
- (#{f\ 2237}# #{ids\ 2220}# 0))
- (#{make-ribcage\ 393}#
- #{symnamevec\ 2232}#
- #{marksvec\ 2233}#
- #{labelvec\ 2227}#)))))
- (#{wrap-subst\ 381}# #{w\ 2222}#))))))
- (#{extend-ribcage!\ 417}#
- (lambda (#{ribcage\ 2244}# #{id\ 2245}# #{label\ 2246}#)
- (begin
- (#{set-ribcage-symnames!\ 403}#
- #{ribcage\ 2244}#
- (cons (#{syntax-object-expression\ 338}# #{id\ 2245}#)
- (#{ribcage-symnames\ 397}# #{ribcage\ 2244}#)))
- (#{set-ribcage-marks!\ 405}#
- #{ribcage\ 2244}#
- (cons (#{wrap-marks\ 379}#
- (#{syntax-object-wrap\ 340}# #{id\ 2245}#))
- (#{ribcage-marks\ 399}# #{ribcage\ 2244}#)))
- (#{set-ribcage-labels!\ 407}#
- #{ribcage\ 2244}#
- (cons #{label\ 2246}#
- (#{ribcage-labels\ 401}# #{ribcage\ 2244}#))))))
- (#{anti-mark\ 413}#
- (lambda (#{w\ 2250}#)
- (#{make-wrap\ 377}#
- (cons #f (#{wrap-marks\ 379}# #{w\ 2250}#))
- (cons 'shift
- (#{wrap-subst\ 381}# #{w\ 2250}#)))))
- (#{set-ribcage-labels!\ 407}#
- (lambda (#{x\ 2253}# #{update\ 2254}#)
- (vector-set! #{x\ 2253}# 3 #{update\ 2254}#)))
- (#{set-ribcage-marks!\ 405}#
- (lambda (#{x\ 2257}# #{update\ 2258}#)
- (vector-set! #{x\ 2257}# 2 #{update\ 2258}#)))
- (#{set-ribcage-symnames!\ 403}#
- (lambda (#{x\ 2261}# #{update\ 2262}#)
- (vector-set! #{x\ 2261}# 1 #{update\ 2262}#)))
- (#{ribcage-labels\ 401}#
- (lambda (#{x\ 2265}#) (vector-ref #{x\ 2265}# 3)))
- (#{ribcage-marks\ 399}#
- (lambda (#{x\ 2267}#) (vector-ref #{x\ 2267}# 2)))
- (#{ribcage-symnames\ 397}#
- (lambda (#{x\ 2269}#) (vector-ref #{x\ 2269}# 1)))
- (#{ribcage?\ 395}#
- (lambda (#{x\ 2271}#)
- (if (vector? #{x\ 2271}#)
- (if (= (vector-length #{x\ 2271}#) 4)
- (eq? (vector-ref #{x\ 2271}# 0) (quote ribcage))
- #f)
- #f)))
- (#{make-ribcage\ 393}#
- (lambda (#{symnames\ 2276}#
- #{marks\ 2277}#
- #{labels\ 2278}#)
- (vector
- 'ribcage
- #{symnames\ 2276}#
- #{marks\ 2277}#
- #{labels\ 2278}#)))
- (#{gen-labels\ 390}#
- (lambda (#{ls\ 2282}#)
- (if (null? #{ls\ 2282}#)
- '()
- (cons (#{gen-label\ 388}#)
- (#{gen-labels\ 390}# (cdr #{ls\ 2282}#))))))
- (#{gen-label\ 388}#
- (lambda () (symbol->string (gensym "i"))))
- (#{wrap-subst\ 381}# cdr)
- (#{wrap-marks\ 379}# car)
- (#{make-wrap\ 377}# cons)
- (#{id-sym-name&marks\ 375}#
- (lambda (#{x\ 2284}# #{w\ 2285}#)
- (if (#{syntax-object?\ 336}# #{x\ 2284}#)
- (values
- (#{syntax-object-expression\ 338}# #{x\ 2284}#)
- (#{join-marks\ 425}#
- (#{wrap-marks\ 379}# #{w\ 2285}#)
- (#{wrap-marks\ 379}#
- (#{syntax-object-wrap\ 340}# #{x\ 2284}#))))
- (values
- #{x\ 2284}#
- (#{wrap-marks\ 379}# #{w\ 2285}#)))))
- (#{id?\ 372}#
- (lambda (#{x\ 2288}#)
- (if (symbol? #{x\ 2288}#)
- #t
- (if (#{syntax-object?\ 336}# #{x\ 2288}#)
- (symbol?
- (#{syntax-object-expression\ 338}# #{x\ 2288}#))
- #f))))
- (#{nonsymbol-id?\ 370}#
- (lambda (#{x\ 2295}#)
- (if (#{syntax-object?\ 336}# #{x\ 2295}#)
+ (let ((#{symnamevec\ 2247}#
+ (make-vector #{n\ 2244}#))
+ (#{marksvec\ 2248}#
+ (make-vector #{n\ 2244}#)))
+ (begin
+ (letrec*
+ ((#{f\ 2252}#
+ (lambda (#{ids\ 2253}# #{i\ 2254}#)
+ (if (not (null? #{ids\ 2253}#))
+ (call-with-values
+ (lambda ()
+ (#{id-sym-name&marks\ 390}#
+ (car #{ids\ 2253}#)
+ #{w\ 2237}#))
+ (lambda (#{symname\ 2255}#
+ #{marks\ 2256}#)
+ (begin
+ (vector-set!
+ #{symnamevec\ 2247}#
+ #{i\ 2254}#
+ #{symname\ 2255}#)
+ (vector-set!
+ #{marksvec\ 2248}#
+ #{i\ 2254}#
+ #{marks\ 2256}#)
+ (#{f\ 2252}#
+ (cdr #{ids\ 2253}#)
+ (#{fx+\ 288}#
+ #{i\ 2254}#
+ 1)))))))))
+ (begin (#{f\ 2252}# #{ids\ 2235}# 0)))
+ (#{make-ribcage\ 408}#
+ #{symnamevec\ 2247}#
+ #{marksvec\ 2248}#
+ #{labelvec\ 2242}#))))))))
+ (#{wrap-subst\ 396}# #{w\ 2237}#))))))
+ (#{extend-ribcage!\ 432}#
+ (lambda (#{ribcage\ 2259}# #{id\ 2260}# #{label\ 2261}#)
+ (begin
+ (#{set-ribcage-symnames!\ 418}#
+ #{ribcage\ 2259}#
+ (cons (#{syntax-object-expression\ 353}# #{id\ 2260}#)
+ (#{ribcage-symnames\ 412}# #{ribcage\ 2259}#)))
+ (#{set-ribcage-marks!\ 420}#
+ #{ribcage\ 2259}#
+ (cons (#{wrap-marks\ 394}#
+ (#{syntax-object-wrap\ 355}# #{id\ 2260}#))
+ (#{ribcage-marks\ 414}# #{ribcage\ 2259}#)))
+ (#{set-ribcage-labels!\ 422}#
+ #{ribcage\ 2259}#
+ (cons #{label\ 2261}#
+ (#{ribcage-labels\ 416}# #{ribcage\ 2259}#))))))
+ (#{anti-mark\ 428}#
+ (lambda (#{w\ 2265}#)
+ (#{make-wrap\ 392}#
+ (cons #f (#{wrap-marks\ 394}# #{w\ 2265}#))
+ (cons 'shift
+ (#{wrap-subst\ 396}# #{w\ 2265}#)))))
+ (#{set-ribcage-labels!\ 422}#
+ (lambda (#{x\ 2268}# #{update\ 2269}#)
+ (vector-set! #{x\ 2268}# 3 #{update\ 2269}#)))
+ (#{set-ribcage-marks!\ 420}#
+ (lambda (#{x\ 2272}# #{update\ 2273}#)
+ (vector-set! #{x\ 2272}# 2 #{update\ 2273}#)))
+ (#{set-ribcage-symnames!\ 418}#
+ (lambda (#{x\ 2276}# #{update\ 2277}#)
+ (vector-set! #{x\ 2276}# 1 #{update\ 2277}#)))
+ (#{ribcage-labels\ 416}#
+ (lambda (#{x\ 2280}#) (vector-ref #{x\ 2280}# 3)))
+ (#{ribcage-marks\ 414}#
+ (lambda (#{x\ 2282}#) (vector-ref #{x\ 2282}# 2)))
+ (#{ribcage-symnames\ 412}#
+ (lambda (#{x\ 2284}#) (vector-ref #{x\ 2284}# 1)))
+ (#{make-ribcage\ 408}#
+ (lambda (#{symnames\ 2291}#
+ #{marks\ 2292}#
+ #{labels\ 2293}#)
+ (vector
+ 'ribcage
+ #{symnames\ 2291}#
+ #{marks\ 2292}#
+ #{labels\ 2293}#)))
+ (#{gen-labels\ 405}#
+ (lambda (#{ls\ 2297}#)
+ (if (null? #{ls\ 2297}#)
+ '()
+ (cons (#{gen-label\ 403}#)
+ (#{gen-labels\ 405}# (cdr #{ls\ 2297}#))))))
+ (#{gen-label\ 403}#
+ (lambda () (symbol->string (gensym "i"))))
+ (#{id-sym-name&marks\ 390}#
+ (lambda (#{x\ 2299}# #{w\ 2300}#)
+ (if (#{syntax-object?\ 351}# #{x\ 2299}#)
+ (values
+ (#{syntax-object-expression\ 353}# #{x\ 2299}#)
+ (#{join-marks\ 440}#
+ (#{wrap-marks\ 394}# #{w\ 2300}#)
+ (#{wrap-marks\ 394}#
+ (#{syntax-object-wrap\ 355}# #{x\ 2299}#))))
+ (values
+ #{x\ 2299}#
+ (#{wrap-marks\ 394}# #{w\ 2300}#)))))
+ (#{id?\ 387}#
+ (lambda (#{x\ 2303}#)
+ (if (symbol? #{x\ 2303}#)
+ #t
+ (if (#{syntax-object?\ 351}# #{x\ 2303}#)
(symbol?
- (#{syntax-object-expression\ 338}# #{x\ 2295}#))
- #f)))
- (#{global-extend\ 368}#
- (lambda (#{type\ 2299}# #{sym\ 2300}# #{val\ 2301}#)
- (#{put-global-definition-hook\ 286}#
- #{sym\ 2300}#
- #{type\ 2299}#
- #{val\ 2301}#)))
- (#{lookup\ 366}#
- (lambda (#{x\ 2305}# #{r\ 2306}# #{mod\ 2307}#)
- (let ((#{t\ 2313}# (assq #{x\ 2305}# #{r\ 2306}#)))
- (if #{t\ 2313}#
- (cdr #{t\ 2313}#)
- (if (symbol? #{x\ 2305}#)
- (let ((#{t\ 2319}#
- (#{get-global-definition-hook\ 288}#
- #{x\ 2305}#
- #{mod\ 2307}#)))
- (if #{t\ 2319}# #{t\ 2319}# (quote (global))))
- '(displaced-lexical))))))
- (#{macros-only-env\ 364}#
- (lambda (#{r\ 2324}#)
- (if (null? #{r\ 2324}#)
- '()
- (let ((#{a\ 2327}# (car #{r\ 2324}#)))
- (if (eq? (cadr #{a\ 2327}#) (quote macro))
- (cons #{a\ 2327}#
- (#{macros-only-env\ 364}# (cdr #{r\ 2324}#)))
- (#{macros-only-env\ 364}# (cdr #{r\ 2324}#)))))))
- (#{extend-var-env\ 362}#
- (lambda (#{labels\ 2328}# #{vars\ 2329}# #{r\ 2330}#)
- (if (null? #{labels\ 2328}#)
- #{r\ 2330}#
- (#{extend-var-env\ 362}#
- (cdr #{labels\ 2328}#)
- (cdr #{vars\ 2329}#)
- (cons (cons (car #{labels\ 2328}#)
- (cons (quote lexical) (car #{vars\ 2329}#)))
- #{r\ 2330}#)))))
- (#{extend-env\ 360}#
- (lambda (#{labels\ 2335}# #{bindings\ 2336}# #{r\ 2337}#)
- (if (null? #{labels\ 2335}#)
- #{r\ 2337}#
- (#{extend-env\ 360}#
- (cdr #{labels\ 2335}#)
- (cdr #{bindings\ 2336}#)
- (cons (cons (car #{labels\ 2335}#)
- (car #{bindings\ 2336}#))
- #{r\ 2337}#)))))
- (#{binding-value\ 357}# cdr)
- (#{binding-type\ 355}# car)
- (#{source-annotation\ 351}#
- (lambda (#{x\ 2341}#)
- (if (#{syntax-object?\ 336}# #{x\ 2341}#)
- (#{source-annotation\ 351}#
- (#{syntax-object-expression\ 338}# #{x\ 2341}#))
- (if (pair? #{x\ 2341}#)
- (let ((#{props\ 2348}# (source-properties #{x\ 2341}#)))
- (if (pair? #{props\ 2348}#) #{props\ 2348}# #f))
- #f))))
- (#{set-syntax-object-module!\ 348}#
- (lambda (#{x\ 2350}# #{update\ 2351}#)
- (vector-set! #{x\ 2350}# 3 #{update\ 2351}#)))
- (#{set-syntax-object-wrap!\ 346}#
- (lambda (#{x\ 2354}# #{update\ 2355}#)
- (vector-set! #{x\ 2354}# 2 #{update\ 2355}#)))
- (#{set-syntax-object-expression!\ 344}#
- (lambda (#{x\ 2358}# #{update\ 2359}#)
- (vector-set! #{x\ 2358}# 1 #{update\ 2359}#)))
- (#{syntax-object-module\ 342}#
- (lambda (#{x\ 2362}#) (vector-ref #{x\ 2362}# 3)))
- (#{syntax-object-wrap\ 340}#
- (lambda (#{x\ 2364}#) (vector-ref #{x\ 2364}# 2)))
- (#{syntax-object-expression\ 338}#
- (lambda (#{x\ 2366}#) (vector-ref #{x\ 2366}# 1)))
- (#{syntax-object?\ 336}#
- (lambda (#{x\ 2368}#)
- (if (vector? #{x\ 2368}#)
- (if (= (vector-length #{x\ 2368}#) 4)
- (eq? (vector-ref #{x\ 2368}# 0)
- 'syntax-object)
- #f)
- #f)))
- (#{make-syntax-object\ 334}#
- (lambda (#{expression\ 2373}#
- #{wrap\ 2374}#
- #{module\ 2375}#)
- (vector
- 'syntax-object
- #{expression\ 2373}#
- #{wrap\ 2374}#
- #{module\ 2375}#)))
- (#{build-letrec\ 330}#
- (lambda (#{src\ 2379}#
- #{ids\ 2380}#
- #{vars\ 2381}#
- #{val-exps\ 2382}#
- #{body-exp\ 2383}#)
- (if (null? #{vars\ 2381}#)
- #{body-exp\ 2383}#
+ (#{syntax-object-expression\ 353}# #{x\ 2303}#))
+ #f))))
+ (#{nonsymbol-id?\ 385}#
+ (lambda (#{x\ 2310}#)
+ (if (#{syntax-object?\ 351}# #{x\ 2310}#)
+ (symbol?
+ (#{syntax-object-expression\ 353}# #{x\ 2310}#))
+ #f)))
+ (#{global-extend\ 383}#
+ (lambda (#{type\ 2314}# #{sym\ 2315}# #{val\ 2316}#)
+ (#{put-global-definition-hook\ 301}#
+ #{sym\ 2315}#
+ #{type\ 2314}#
+ #{val\ 2316}#)))
+ (#{lookup\ 381}#
+ (lambda (#{x\ 2320}# #{r\ 2321}# #{mod\ 2322}#)
+ (begin
+ (let ((#{t\ 2328}# (assq #{x\ 2320}# #{r\ 2321}#)))
+ (if #{t\ 2328}#
+ (cdr #{t\ 2328}#)
+ (if (symbol? #{x\ 2320}#)
+ (begin
+ (let ((#{t\ 2334}#
+ (#{get-global-definition-hook\ 303}#
+ #{x\ 2320}#
+ #{mod\ 2322}#)))
+ (if #{t\ 2334}# #{t\ 2334}# (quote (global)))))
+ '(displaced-lexical)))))))
+ (#{macros-only-env\ 379}#
+ (lambda (#{r\ 2339}#)
+ (if (null? #{r\ 2339}#)
+ '()
+ (begin
+ (let ((#{a\ 2342}# (car #{r\ 2339}#)))
+ (if (eq? (car (cdr #{a\ 2342}#)) (quote macro))
+ (cons #{a\ 2342}#
+ (#{macros-only-env\ 379}# (cdr #{r\ 2339}#)))
+ (#{macros-only-env\ 379}# (cdr #{r\ 2339}#))))))))
+ (#{extend-var-env\ 377}#
+ (lambda (#{labels\ 2343}# #{vars\ 2344}# #{r\ 2345}#)
+ (if (null? #{labels\ 2343}#)
+ #{r\ 2345}#
+ (#{extend-var-env\ 377}#
+ (cdr #{labels\ 2343}#)
+ (cdr #{vars\ 2344}#)
+ (cons (cons (car #{labels\ 2343}#)
+ (cons (quote lexical) (car #{vars\ 2344}#)))
+ #{r\ 2345}#)))))
+ (#{extend-env\ 375}#
+ (lambda (#{labels\ 2350}# #{bindings\ 2351}# #{r\ 2352}#)
+ (if (null? #{labels\ 2350}#)
+ #{r\ 2352}#
+ (#{extend-env\ 375}#
+ (cdr #{labels\ 2350}#)
+ (cdr #{bindings\ 2351}#)
+ (cons (cons (car #{labels\ 2350}#)
+ (car #{bindings\ 2351}#))
+ #{r\ 2352}#)))))
+ (#{source-annotation\ 366}#
+ (lambda (#{x\ 2356}#)
+ (if (#{syntax-object?\ 351}# #{x\ 2356}#)
+ (#{source-annotation\ 366}#
+ (#{syntax-object-expression\ 353}# #{x\ 2356}#))
+ (if (pair? #{x\ 2356}#)
(begin
- (for-each
- #{maybe-name-value!\ 310}#
- #{ids\ 2380}#
- #{val-exps\ 2382}#)
- (#{make-letrec\ 262}#
- #{src\ 2379}#
- #{ids\ 2380}#
- #{vars\ 2381}#
- #{val-exps\ 2382}#
- #{body-exp\ 2383}#)))))
- (#{build-named-let\ 328}#
- (lambda (#{src\ 2389}#
- #{ids\ 2390}#
- #{vars\ 2391}#
- #{val-exps\ 2392}#
- #{body-exp\ 2393}#)
- (let ((#{f\ 2403}# (car #{vars\ 2391}#))
- (#{f-name\ 2404}# (car #{ids\ 2390}#))
- (#{vars\ 2405}# (cdr #{vars\ 2391}#))
- (#{ids\ 2406}# (cdr #{ids\ 2390}#)))
- (let ((#{proc\ 2408}#
- (#{build-simple-lambda\ 314}#
- #{src\ 2389}#
- #{ids\ 2406}#
- #f
- #{vars\ 2405}#
- '()
- #{body-exp\ 2393}#)))
- (begin
- (#{maybe-name-value!\ 310}#
- #{f-name\ 2404}#
- #{proc\ 2408}#)
- (for-each
- #{maybe-name-value!\ 310}#
- #{ids\ 2406}#
- #{val-exps\ 2392}#)
- (#{make-letrec\ 262}#
- #{src\ 2389}#
- (list #{f-name\ 2404}#)
- (list #{f\ 2403}#)
- (list #{proc\ 2408}#)
- (#{build-application\ 294}#
- #{src\ 2389}#
- (#{build-lexical-reference\ 300}#
- 'fun
- #{src\ 2389}#
- #{f-name\ 2404}#
- #{f\ 2403}#)
- #{val-exps\ 2392}#)))))))
- (#{build-let\ 326}#
- (lambda (#{src\ 2409}#
- #{ids\ 2410}#
- #{vars\ 2411}#
- #{val-exps\ 2412}#
- #{body-exp\ 2413}#)
+ (let ((#{props\ 2363}# (source-properties #{x\ 2356}#)))
+ (if (pair? #{props\ 2363}#) #{props\ 2363}# #f)))
+ #f))))
+ (#{syntax-object-module\ 357}#
+ (lambda (#{x\ 2377}#) (vector-ref #{x\ 2377}# 3)))
+ (#{syntax-object-wrap\ 355}#
+ (lambda (#{x\ 2379}#) (vector-ref #{x\ 2379}# 2)))
+ (#{syntax-object-expression\ 353}#
+ (lambda (#{x\ 2381}#) (vector-ref #{x\ 2381}# 1)))
+ (#{syntax-object?\ 351}#
+ (lambda (#{x\ 2383}#)
+ (if (vector? #{x\ 2383}#)
+ (if (= (vector-length #{x\ 2383}#) 4)
+ (eq? (vector-ref #{x\ 2383}# 0)
+ 'syntax-object)
+ #f)
+ #f)))
+ (#{make-syntax-object\ 349}#
+ (lambda (#{expression\ 2388}#
+ #{wrap\ 2389}#
+ #{module\ 2390}#)
+ (vector
+ 'syntax-object
+ #{expression\ 2388}#
+ #{wrap\ 2389}#
+ #{module\ 2390}#)))
+ (#{build-letrec\ 345}#
+ (lambda (#{src\ 2394}#
+ #{in-order?\ 2395}#
+ #{ids\ 2396}#
+ #{vars\ 2397}#
+ #{val-exps\ 2398}#
+ #{body-exp\ 2399}#)
+ (if (null? #{vars\ 2397}#)
+ #{body-exp\ 2399}#
(begin
(for-each
- #{maybe-name-value!\ 310}#
- #{ids\ 2410}#
- #{val-exps\ 2412}#)
- (if (null? #{vars\ 2411}#)
- #{body-exp\ 2413}#
- (#{make-let\ 260}#
- #{src\ 2409}#
- #{ids\ 2410}#
- #{vars\ 2411}#
- #{val-exps\ 2412}#
- #{body-exp\ 2413}#)))))
- (#{build-sequence\ 324}#
- (lambda (#{src\ 2419}# #{exps\ 2420}#)
- (if (null? (cdr #{exps\ 2420}#))
- (car #{exps\ 2420}#)
- (#{make-sequence\ 254}#
- #{src\ 2419}#
- #{exps\ 2420}#))))
- (#{build-data\ 322}#
- (lambda (#{src\ 2423}# #{exp\ 2424}#)
- (#{make-const\ 232}# #{src\ 2423}# #{exp\ 2424}#)))
- (#{build-primref\ 320}#
- (lambda (#{src\ 2427}# #{name\ 2428}#)
- (if (equal?
- (module-name (current-module))
- '(guile))
- (#{make-toplevel-ref\ 244}#
- #{src\ 2427}#
- #{name\ 2428}#)
- (#{make-module-ref\ 240}#
- #{src\ 2427}#
- '(guile)
- #{name\ 2428}#
- #f))))
- (#{build-lambda-case\ 318}#
- (lambda (#{src\ 2431}#
- #{req\ 2432}#
- #{opt\ 2433}#
- #{rest\ 2434}#
- #{kw\ 2435}#
- #{inits\ 2436}#
- #{vars\ 2437}#
- #{body\ 2438}#
- #{else-case\ 2439}#)
- (#{make-lambda-case\ 258}#
- #{src\ 2431}#
- #{req\ 2432}#
- #{opt\ 2433}#
- #{rest\ 2434}#
- #{kw\ 2435}#
- #{inits\ 2436}#
- #{vars\ 2437}#
- #{body\ 2438}#
- #{else-case\ 2439}#)))
- (#{build-case-lambda\ 316}#
- (lambda (#{src\ 2449}# #{meta\ 2450}# #{body\ 2451}#)
- (#{make-lambda\ 256}#
- #{src\ 2449}#
- #{meta\ 2450}#
- #{body\ 2451}#)))
- (#{build-simple-lambda\ 314}#
- (lambda (#{src\ 2455}#
- #{req\ 2456}#
- #{rest\ 2457}#
- #{vars\ 2458}#
- #{meta\ 2459}#
- #{exp\ 2460}#)
- (#{make-lambda\ 256}#
- #{src\ 2455}#
- #{meta\ 2459}#
- (#{make-lambda-case\ 258}#
- #{src\ 2455}#
- #{req\ 2456}#
- #f
- #{rest\ 2457}#
- #f
- '()
- #{vars\ 2458}#
- #{exp\ 2460}#
- #f))))
- (#{build-global-definition\ 312}#
- (lambda (#{source\ 2467}# #{var\ 2468}# #{exp\ 2469}#)
+ #{maybe-name-value!\ 325}#
+ #{ids\ 2396}#
+ #{val-exps\ 2398}#)
+ (#{make-letrec\ 277}#
+ #{src\ 2394}#
+ #{in-order?\ 2395}#
+ #{ids\ 2396}#
+ #{vars\ 2397}#
+ #{val-exps\ 2398}#
+ #{body-exp\ 2399}#)))))
+ (#{build-named-let\ 343}#
+ (lambda (#{src\ 2406}#
+ #{ids\ 2407}#
+ #{vars\ 2408}#
+ #{val-exps\ 2409}#
+ #{body-exp\ 2410}#)
+ (begin
+ (let ((#{f\ 2420}# (car #{vars\ 2408}#))
+ (#{f-name\ 2421}# (car #{ids\ 2407}#))
+ (#{vars\ 2422}# (cdr #{vars\ 2408}#))
+ (#{ids\ 2423}# (cdr #{ids\ 2407}#)))
+ (begin
+ (let ((#{proc\ 2425}#
+ (#{build-simple-lambda\ 329}#
+ #{src\ 2406}#
+ #{ids\ 2423}#
+ #f
+ #{vars\ 2422}#
+ '()
+ #{body-exp\ 2410}#)))
+ (begin
+ (#{maybe-name-value!\ 325}#
+ #{f-name\ 2421}#
+ #{proc\ 2425}#)
+ (for-each
+ #{maybe-name-value!\ 325}#
+ #{ids\ 2423}#
+ #{val-exps\ 2409}#)
+ (#{make-letrec\ 277}#
+ #{src\ 2406}#
+ #f
+ (list #{f-name\ 2421}#)
+ (list #{f\ 2420}#)
+ (list #{proc\ 2425}#)
+ (#{build-application\ 309}#
+ #{src\ 2406}#
+ (#{build-lexical-reference\ 315}#
+ 'fun
+ #{src\ 2406}#
+ #{f-name\ 2421}#
+ #{f\ 2420}#)
+ #{val-exps\ 2409}#)))))))))
+ (#{build-let\ 341}#
+ (lambda (#{src\ 2426}#
+ #{ids\ 2427}#
+ #{vars\ 2428}#
+ #{val-exps\ 2429}#
+ #{body-exp\ 2430}#)
+ (begin
+ (for-each
+ #{maybe-name-value!\ 325}#
+ #{ids\ 2427}#
+ #{val-exps\ 2429}#)
+ (if (null? #{vars\ 2428}#)
+ #{body-exp\ 2430}#
+ (#{make-let\ 275}#
+ #{src\ 2426}#
+ #{ids\ 2427}#
+ #{vars\ 2428}#
+ #{val-exps\ 2429}#
+ #{body-exp\ 2430}#)))))
+ (#{build-sequence\ 339}#
+ (lambda (#{src\ 2436}# #{exps\ 2437}#)
+ (if (null? (cdr #{exps\ 2437}#))
+ (car #{exps\ 2437}#)
+ (#{make-sequence\ 269}#
+ #{src\ 2436}#
+ #{exps\ 2437}#))))
+ (#{build-data\ 337}#
+ (lambda (#{src\ 2440}# #{exp\ 2441}#)
+ (#{make-const\ 247}# #{src\ 2440}# #{exp\ 2441}#)))
+ (#{build-primref\ 335}#
+ (lambda (#{src\ 2444}# #{name\ 2445}#)
+ (if (equal?
+ (module-name (current-module))
+ '(guile))
+ (#{make-toplevel-ref\ 259}#
+ #{src\ 2444}#
+ #{name\ 2445}#)
+ (#{make-module-ref\ 255}#
+ #{src\ 2444}#
+ '(guile)
+ #{name\ 2445}#
+ #f))))
+ (#{build-lambda-case\ 333}#
+ (lambda (#{src\ 2448}#
+ #{req\ 2449}#
+ #{opt\ 2450}#
+ #{rest\ 2451}#
+ #{kw\ 2452}#
+ #{inits\ 2453}#
+ #{vars\ 2454}#
+ #{body\ 2455}#
+ #{else-case\ 2456}#)
+ (#{make-lambda-case\ 273}#
+ #{src\ 2448}#
+ #{req\ 2449}#
+ #{opt\ 2450}#
+ #{rest\ 2451}#
+ #{kw\ 2452}#
+ #{inits\ 2453}#
+ #{vars\ 2454}#
+ #{body\ 2455}#
+ #{else-case\ 2456}#)))
+ (#{build-case-lambda\ 331}#
+ (lambda (#{src\ 2466}# #{meta\ 2467}# #{body\ 2468}#)
+ (#{make-lambda\ 271}#
+ #{src\ 2466}#
+ #{meta\ 2467}#
+ #{body\ 2468}#)))
+ (#{build-simple-lambda\ 329}#
+ (lambda (#{src\ 2472}#
+ #{req\ 2473}#
+ #{rest\ 2474}#
+ #{vars\ 2475}#
+ #{meta\ 2476}#
+ #{exp\ 2477}#)
+ (#{make-lambda\ 271}#
+ #{src\ 2472}#
+ #{meta\ 2476}#
+ (#{make-lambda-case\ 273}#
+ #{src\ 2472}#
+ #{req\ 2473}#
+ #f
+ #{rest\ 2474}#
+ #f
+ '()
+ #{vars\ 2475}#
+ #{exp\ 2477}#
+ #f))))
+ (#{build-global-definition\ 327}#
+ (lambda (#{source\ 2484}# #{var\ 2485}# #{exp\ 2486}#)
+ (begin
+ (#{maybe-name-value!\ 325}#
+ #{var\ 2485}#
+ #{exp\ 2486}#)
+ (#{make-toplevel-define\ 263}#
+ #{source\ 2484}#
+ #{var\ 2485}#
+ #{exp\ 2486}#))))
+ (#{maybe-name-value!\ 325}#
+ (lambda (#{name\ 2490}# #{val\ 2491}#)
+ (if (#{lambda?\ 282}# #{val\ 2491}#)
(begin
- (#{maybe-name-value!\ 310}#
- #{var\ 2468}#
- #{exp\ 2469}#)
- (#{make-toplevel-define\ 248}#
- #{source\ 2467}#
- #{var\ 2468}#
- #{exp\ 2469}#))))
- (#{maybe-name-value!\ 310}#
- (lambda (#{name\ 2473}# #{val\ 2474}#)
- (if (#{lambda?\ 267}# #{val\ 2474}#)
- (let ((#{meta\ 2478}#
- (#{lambda-meta\ 269}# #{val\ 2474}#)))
- (if (not (assq (quote name) #{meta\ 2478}#))
- (#{set-lambda-meta!\ 271}#
- #{val\ 2474}#
- (acons 'name
- #{name\ 2473}#
- #{meta\ 2478}#)))))))
- (#{build-global-assignment\ 308}#
- (lambda (#{source\ 2479}#
- #{var\ 2480}#
- #{exp\ 2481}#
- #{mod\ 2482}#)
- (#{analyze-variable\ 304}#
- #{mod\ 2482}#
- #{var\ 2480}#
- (lambda (#{mod\ 2487}# #{var\ 2488}# #{public?\ 2489}#)
- (#{make-module-set\ 242}#
- #{source\ 2479}#
- #{mod\ 2487}#
- #{var\ 2488}#
- #{public?\ 2489}#
- #{exp\ 2481}#))
- (lambda (#{var\ 2493}#)
- (#{make-toplevel-set\ 246}#
- #{source\ 2479}#
- #{var\ 2493}#
- #{exp\ 2481}#)))))
- (#{build-global-reference\ 306}#
- (lambda (#{source\ 2495}# #{var\ 2496}# #{mod\ 2497}#)
- (#{analyze-variable\ 304}#
- #{mod\ 2497}#
- #{var\ 2496}#
- (lambda (#{mod\ 2501}# #{var\ 2502}# #{public?\ 2503}#)
- (#{make-module-ref\ 240}#
- #{source\ 2495}#
- #{mod\ 2501}#
- #{var\ 2502}#
- #{public?\ 2503}#))
- (lambda (#{var\ 2507}#)
- (#{make-toplevel-ref\ 244}#
- #{source\ 2495}#
- #{var\ 2507}#)))))
- (#{analyze-variable\ 304}#
- (lambda (#{mod\ 2509}#
- #{var\ 2510}#
- #{modref-cont\ 2511}#
- #{bare-cont\ 2512}#)
- (if (not #{mod\ 2509}#)
- (#{bare-cont\ 2512}# #{var\ 2510}#)
- (let ((#{kind\ 2519}# (car #{mod\ 2509}#))
- (#{mod\ 2520}# (cdr #{mod\ 2509}#)))
- (if (memv #{kind\ 2519}# (quote (public)))
- (#{modref-cont\ 2511}#
- #{mod\ 2520}#
- #{var\ 2510}#
+ (let ((#{meta\ 2495}#
+ (#{lambda-meta\ 284}# #{val\ 2491}#)))
+ (if (not (assq (quote name) #{meta\ 2495}#))
+ (#{set-lambda-meta!\ 286}#
+ #{val\ 2491}#
+ (cons (cons (quote name) #{name\ 2490}#)
+ #{meta\ 2495}#))))))))
+ (#{build-global-assignment\ 323}#
+ (lambda (#{source\ 2496}#
+ #{var\ 2497}#
+ #{exp\ 2498}#
+ #{mod\ 2499}#)
+ (#{analyze-variable\ 319}#
+ #{mod\ 2499}#
+ #{var\ 2497}#
+ (lambda (#{mod\ 2504}# #{var\ 2505}# #{public?\ 2506}#)
+ (#{make-module-set\ 257}#
+ #{source\ 2496}#
+ #{mod\ 2504}#
+ #{var\ 2505}#
+ #{public?\ 2506}#
+ #{exp\ 2498}#))
+ (lambda (#{var\ 2510}#)
+ (#{make-toplevel-set\ 261}#
+ #{source\ 2496}#
+ #{var\ 2510}#
+ #{exp\ 2498}#)))))
+ (#{build-global-reference\ 321}#
+ (lambda (#{source\ 2512}# #{var\ 2513}# #{mod\ 2514}#)
+ (#{analyze-variable\ 319}#
+ #{mod\ 2514}#
+ #{var\ 2513}#
+ (lambda (#{mod\ 2518}# #{var\ 2519}# #{public?\ 2520}#)
+ (#{make-module-ref\ 255}#
+ #{source\ 2512}#
+ #{mod\ 2518}#
+ #{var\ 2519}#
+ #{public?\ 2520}#))
+ (lambda (#{var\ 2524}#)
+ (#{make-toplevel-ref\ 259}#
+ #{source\ 2512}#
+ #{var\ 2524}#)))))
+ (#{analyze-variable\ 319}#
+ (lambda (#{mod\ 2526}#
+ #{var\ 2527}#
+ #{modref-cont\ 2528}#
+ #{bare-cont\ 2529}#)
+ (if (not #{mod\ 2526}#)
+ (#{bare-cont\ 2529}# #{var\ 2527}#)
+ (begin
+ (let ((#{kind\ 2536}# (car #{mod\ 2526}#))
+ (#{mod\ 2537}# (cdr #{mod\ 2526}#)))
+ (if (eqv? #{kind\ 2536}# (quote public))
+ (#{modref-cont\ 2528}#
+ #{mod\ 2537}#
+ #{var\ 2527}#
#t)
- (if (memv #{kind\ 2519}# (quote (private)))
+ (if (eqv? #{kind\ 2536}# (quote private))
(if (not (equal?
- #{mod\ 2520}#
+ #{mod\ 2537}#
(module-name (current-module))))
- (#{modref-cont\ 2511}#
- #{mod\ 2520}#
- #{var\ 2510}#
+ (#{modref-cont\ 2528}#
+ #{mod\ 2537}#
+ #{var\ 2527}#
#f)
- (#{bare-cont\ 2512}# #{var\ 2510}#))
- (if (memv #{kind\ 2519}# (quote (bare)))
- (#{bare-cont\ 2512}# #{var\ 2510}#)
- (if (memv #{kind\ 2519}# (quote (hygiene)))
+ (#{bare-cont\ 2529}# #{var\ 2527}#))
+ (if (eqv? #{kind\ 2536}# (quote bare))
+ (#{bare-cont\ 2529}# #{var\ 2527}#)
+ (if (eqv? #{kind\ 2536}# (quote hygiene))
(if (if (not (equal?
- #{mod\ 2520}#
+ #{mod\ 2537}#
(module-name (current-module))))
(module-variable
- (resolve-module #{mod\ 2520}#)
- #{var\ 2510}#)
+ (resolve-module #{mod\ 2537}#)
+ #{var\ 2527}#)
#f)
- (#{modref-cont\ 2511}#
- #{mod\ 2520}#
- #{var\ 2510}#
+ (#{modref-cont\ 2528}#
+ #{mod\ 2537}#
+ #{var\ 2527}#
#f)
- (#{bare-cont\ 2512}# #{var\ 2510}#))
+ (#{bare-cont\ 2529}# #{var\ 2527}#))
(syntax-violation
#f
"bad module kind"
- #{var\ 2510}#
- #{mod\ 2520}#)))))))))
- (#{build-lexical-assignment\ 302}#
- (lambda (#{source\ 2528}#
- #{name\ 2529}#
- #{var\ 2530}#
- #{exp\ 2531}#)
- (#{make-lexical-set\ 238}#
- #{source\ 2528}#
- #{name\ 2529}#
- #{var\ 2530}#
- #{exp\ 2531}#)))
- (#{build-lexical-reference\ 300}#
- (lambda (#{type\ 2536}#
- #{source\ 2537}#
- #{name\ 2538}#
- #{var\ 2539}#)
- (#{make-lexical-ref\ 236}#
- #{source\ 2537}#
- #{name\ 2538}#
- #{var\ 2539}#)))
- (#{build-dynlet\ 298}#
- (lambda (#{source\ 2544}#
- #{fluids\ 2545}#
- #{vals\ 2546}#
- #{body\ 2547}#)
- (#{make-dynlet\ 264}#
- #{source\ 2544}#
- #{fluids\ 2545}#
- #{vals\ 2546}#
- #{body\ 2547}#)))
- (#{build-conditional\ 296}#
- (lambda (#{source\ 2552}#
- #{test-exp\ 2553}#
- #{then-exp\ 2554}#
- #{else-exp\ 2555}#)
- (#{make-conditional\ 250}#
- #{source\ 2552}#
- #{test-exp\ 2553}#
- #{then-exp\ 2554}#
- #{else-exp\ 2555}#)))
- (#{build-application\ 294}#
- (lambda (#{source\ 2560}#
- #{fun-exp\ 2561}#
- #{arg-exps\ 2562}#)
- (#{make-application\ 252}#
- #{source\ 2560}#
- #{fun-exp\ 2561}#
- #{arg-exps\ 2562}#)))
- (#{build-void\ 292}#
- (lambda (#{source\ 2566}#)
- (#{make-void\ 230}# #{source\ 2566}#)))
- (#{decorate-source\ 290}#
- (lambda (#{e\ 2568}# #{s\ 2569}#)
- (begin
- (if (if (pair? #{e\ 2568}#) #{s\ 2569}# #f)
- (set-source-properties! #{e\ 2568}# #{s\ 2569}#))
- #{e\ 2568}#)))
- (#{get-global-definition-hook\ 288}#
- (lambda (#{symbol\ 2574}# #{module\ 2575}#)
+ #{var\ 2527}#
+ #{mod\ 2537}#))))))))))
+ (#{build-lexical-assignment\ 317}#
+ (lambda (#{source\ 2545}#
+ #{name\ 2546}#
+ #{var\ 2547}#
+ #{exp\ 2548}#)
+ (#{make-lexical-set\ 253}#
+ #{source\ 2545}#
+ #{name\ 2546}#
+ #{var\ 2547}#
+ #{exp\ 2548}#)))
+ (#{build-lexical-reference\ 315}#
+ (lambda (#{type\ 2553}#
+ #{source\ 2554}#
+ #{name\ 2555}#
+ #{var\ 2556}#)
+ (#{make-lexical-ref\ 251}#
+ #{source\ 2554}#
+ #{name\ 2555}#
+ #{var\ 2556}#)))
+ (#{build-dynlet\ 313}#
+ (lambda (#{source\ 2561}#
+ #{fluids\ 2562}#
+ #{vals\ 2563}#
+ #{body\ 2564}#)
+ (#{make-dynlet\ 279}#
+ #{source\ 2561}#
+ #{fluids\ 2562}#
+ #{vals\ 2563}#
+ #{body\ 2564}#)))
+ (#{build-conditional\ 311}#
+ (lambda (#{source\ 2569}#
+ #{test-exp\ 2570}#
+ #{then-exp\ 2571}#
+ #{else-exp\ 2572}#)
+ (#{make-conditional\ 265}#
+ #{source\ 2569}#
+ #{test-exp\ 2570}#
+ #{then-exp\ 2571}#
+ #{else-exp\ 2572}#)))
+ (#{build-application\ 309}#
+ (lambda (#{source\ 2577}#
+ #{fun-exp\ 2578}#
+ #{arg-exps\ 2579}#)
+ (#{make-application\ 267}#
+ #{source\ 2577}#
+ #{fun-exp\ 2578}#
+ #{arg-exps\ 2579}#)))
+ (#{build-void\ 307}#
+ (lambda (#{source\ 2583}#)
+ (#{make-void\ 245}# #{source\ 2583}#)))
+ (#{decorate-source\ 305}#
+ (lambda (#{e\ 2585}# #{s\ 2586}#)
+ (begin
+ (if (if (pair? #{e\ 2585}#) #{s\ 2586}# #f)
+ (set-source-properties! #{e\ 2585}# #{s\ 2586}#))
+ #{e\ 2585}#)))
+ (#{get-global-definition-hook\ 303}#
+ (lambda (#{symbol\ 2591}# #{module\ 2592}#)
+ (begin
+ (if (if (not #{module\ 2592}#) (current-module) #f)
+ (warn "module system is booted, we should have a module"
+ #{symbol\ 2591}#))
(begin
- (if (if (not #{module\ 2575}#) (current-module) #f)
- (warn "module system is booted, we should have a module"
- #{symbol\ 2574}#))
- (let ((#{v\ 2581}#
+ (let ((#{v\ 2598}#
(module-variable
- (if #{module\ 2575}#
- (resolve-module (cdr #{module\ 2575}#))
+ (if #{module\ 2592}#
+ (resolve-module (cdr #{module\ 2592}#))
(current-module))
- #{symbol\ 2574}#)))
- (if #{v\ 2581}#
- (if (variable-bound? #{v\ 2581}#)
- (let ((#{val\ 2586}# (variable-ref #{v\ 2581}#)))
- (if (macro? #{val\ 2586}#)
- (if (macro-type #{val\ 2586}#)
- (cons (macro-type #{val\ 2586}#)
- (macro-binding #{val\ 2586}#))
- #f)
- #f))
+ #{symbol\ 2591}#)))
+ (if #{v\ 2598}#
+ (if (variable-bound? #{v\ 2598}#)
+ (begin
+ (let ((#{val\ 2603}# (variable-ref #{v\ 2598}#)))
+ (if (macro? #{val\ 2603}#)
+ (if (macro-type #{val\ 2603}#)
+ (cons (macro-type #{val\ 2603}#)
+ (macro-binding #{val\ 2603}#))
+ #f)
+ #f)))
#f)
- #f)))))
- (#{put-global-definition-hook\ 286}#
- (lambda (#{symbol\ 2590}# #{type\ 2591}# #{val\ 2592}#)
- (module-define!
- (current-module)
- #{symbol\ 2590}#
- (make-syntax-transformer
- #{symbol\ 2590}#
- #{type\ 2591}#
- #{val\ 2592}#))))
- (#{local-eval-hook\ 283}#
- (lambda (#{x\ 2596}# #{mod\ 2597}#)
- (primitive-eval #{x\ 2596}#)))
- (#{top-level-eval-hook\ 281}#
- (lambda (#{x\ 2600}# #{mod\ 2601}#)
- (primitive-eval #{x\ 2600}#)))
- (#{fx<\ 279}# <)
- (#{fx=\ 277}# =)
- (#{fx-\ 275}# -)
- (#{fx+\ 273}# +)
- (#{set-lambda-meta!\ 271}#
- (lambda (#{x\ 2604}# #{v\ 2605}#)
- (struct-set! #{x\ 2604}# 1 #{v\ 2605}#)))
- (#{lambda-meta\ 269}#
- (lambda (#{x\ 2608}#) (struct-ref #{x\ 2608}# 1)))
- (#{lambda?\ 267}#
- (lambda (#{x\ 2610}#)
- (if (struct? #{x\ 2610}#)
- (eq? (struct-vtable #{x\ 2610}#)
- (vector-ref %expanded-vtables 13))
- #f)))
- (#{make-dynlet\ 264}#
- (lambda (#{src\ 2614}#
- #{fluids\ 2615}#
- #{vals\ 2616}#
- #{body\ 2617}#)
- (make-struct
- (vector-ref %expanded-vtables 17)
- 0
- #{src\ 2614}#
- #{fluids\ 2615}#
- #{vals\ 2616}#
- #{body\ 2617}#)))
- (#{make-letrec\ 262}#
- (lambda (#{src\ 2622}#
- #{names\ 2623}#
- #{gensyms\ 2624}#
- #{vals\ 2625}#
- #{body\ 2626}#)
- (make-struct
- (vector-ref %expanded-vtables 16)
- 0
- #{src\ 2622}#
- #{names\ 2623}#
- #{gensyms\ 2624}#
- #{vals\ 2625}#
- #{body\ 2626}#)))
- (#{make-let\ 260}#
- (lambda (#{src\ 2632}#
- #{names\ 2633}#
- #{gensyms\ 2634}#
- #{vals\ 2635}#
- #{body\ 2636}#)
- (make-struct
- (vector-ref %expanded-vtables 15)
- 0
- #{src\ 2632}#
- #{names\ 2633}#
- #{gensyms\ 2634}#
- #{vals\ 2635}#
- #{body\ 2636}#)))
- (#{make-lambda-case\ 258}#
- (lambda (#{src\ 2642}#
- #{req\ 2643}#
- #{opt\ 2644}#
- #{rest\ 2645}#
- #{kw\ 2646}#
- #{inits\ 2647}#
- #{gensyms\ 2648}#
- #{body\ 2649}#
- #{alternate\ 2650}#)
- (make-struct
- (vector-ref %expanded-vtables 14)
- 0
- #{src\ 2642}#
- #{req\ 2643}#
- #{opt\ 2644}#
- #{rest\ 2645}#
- #{kw\ 2646}#
- #{inits\ 2647}#
- #{gensyms\ 2648}#
- #{body\ 2649}#
- #{alternate\ 2650}#)))
- (#{make-lambda\ 256}#
- (lambda (#{src\ 2660}# #{meta\ 2661}# #{body\ 2662}#)
- (make-struct
- (vector-ref %expanded-vtables 13)
- 0
- #{src\ 2660}#
- #{meta\ 2661}#
- #{body\ 2662}#)))
- (#{make-sequence\ 254}#
- (lambda (#{src\ 2666}# #{exps\ 2667}#)
- (make-struct
- (vector-ref %expanded-vtables 12)
- 0
- #{src\ 2666}#
- #{exps\ 2667}#)))
- (#{make-application\ 252}#
- (lambda (#{src\ 2670}# #{proc\ 2671}# #{args\ 2672}#)
- (make-struct
- (vector-ref %expanded-vtables 11)
- 0
- #{src\ 2670}#
- #{proc\ 2671}#
- #{args\ 2672}#)))
- (#{make-conditional\ 250}#
- (lambda (#{src\ 2676}#
- #{test\ 2677}#
- #{consequent\ 2678}#
- #{alternate\ 2679}#)
- (make-struct
- (vector-ref %expanded-vtables 10)
- 0
- #{src\ 2676}#
- #{test\ 2677}#
- #{consequent\ 2678}#
- #{alternate\ 2679}#)))
- (#{make-toplevel-define\ 248}#
- (lambda (#{src\ 2684}# #{name\ 2685}# #{exp\ 2686}#)
- (make-struct
- (vector-ref %expanded-vtables 9)
- 0
- #{src\ 2684}#
- #{name\ 2685}#
- #{exp\ 2686}#)))
- (#{make-toplevel-set\ 246}#
- (lambda (#{src\ 2690}# #{name\ 2691}# #{exp\ 2692}#)
- (make-struct
- (vector-ref %expanded-vtables 8)
- 0
- #{src\ 2690}#
- #{name\ 2691}#
- #{exp\ 2692}#)))
- (#{make-toplevel-ref\ 244}#
- (lambda (#{src\ 2696}# #{name\ 2697}#)
- (make-struct
- (vector-ref %expanded-vtables 7)
- 0
- #{src\ 2696}#
- #{name\ 2697}#)))
- (#{make-module-set\ 242}#
- (lambda (#{src\ 2700}#
- #{mod\ 2701}#
- #{name\ 2702}#
- #{public?\ 2703}#
- #{exp\ 2704}#)
- (make-struct
- (vector-ref %expanded-vtables 6)
- 0
- #{src\ 2700}#
- #{mod\ 2701}#
- #{name\ 2702}#
- #{public?\ 2703}#
- #{exp\ 2704}#)))
- (#{make-module-ref\ 240}#
- (lambda (#{src\ 2710}#
- #{mod\ 2711}#
- #{name\ 2712}#
- #{public?\ 2713}#)
- (make-struct
- (vector-ref %expanded-vtables 5)
- 0
- #{src\ 2710}#
- #{mod\ 2711}#
- #{name\ 2712}#
- #{public?\ 2713}#)))
- (#{make-lexical-set\ 238}#
- (lambda (#{src\ 2718}#
- #{name\ 2719}#
- #{gensym\ 2720}#
- #{exp\ 2721}#)
- (make-struct
- (vector-ref %expanded-vtables 4)
- 0
- #{src\ 2718}#
- #{name\ 2719}#
- #{gensym\ 2720}#
- #{exp\ 2721}#)))
- (#{make-lexical-ref\ 236}#
- (lambda (#{src\ 2726}# #{name\ 2727}# #{gensym\ 2728}#)
- (make-struct
- (vector-ref %expanded-vtables 3)
- 0
- #{src\ 2726}#
- #{name\ 2727}#
- #{gensym\ 2728}#)))
- (#{make-primitive-ref\ 234}#
- (lambda (#{src\ 2732}# #{name\ 2733}#)
- (make-struct
- (vector-ref %expanded-vtables 2)
- 0
- #{src\ 2732}#
- #{name\ 2733}#)))
- (#{make-const\ 232}#
- (lambda (#{src\ 2736}# #{exp\ 2737}#)
- (make-struct
- (vector-ref %expanded-vtables 1)
- 0
- #{src\ 2736}#
- #{exp\ 2737}#)))
- (#{make-void\ 230}#
- (lambda (#{src\ 2740}#)
- (make-struct
- (vector-ref %expanded-vtables 0)
- 0
- #{src\ 2740}#))))
- (begin
- (#{global-extend\ 368}#
- 'local-syntax
- 'letrec-syntax
- #t)
- (#{global-extend\ 368}#
- 'local-syntax
- 'let-syntax
- #f)
- (#{global-extend\ 368}#
- 'core
- 'fluid-let-syntax
- (lambda (#{e\ 2742}#
- #{r\ 2743}#
- #{w\ 2744}#
- #{s\ 2745}#
- #{mod\ 2746}#)
- ((lambda (#{tmp\ 2752}#)
- ((lambda (#{tmp\ 2753}#)
- (if (if #{tmp\ 2753}#
- (apply (lambda (#{_\ 2759}#
- #{var\ 2760}#
- #{val\ 2761}#
- #{e1\ 2762}#
- #{e2\ 2763}#)
- (#{valid-bound-ids?\ 435}# #{var\ 2760}#))
- #{tmp\ 2753}#)
- #f)
- (apply (lambda (#{_\ 2770}#
- #{var\ 2771}#
- #{val\ 2772}#
- #{e1\ 2773}#
- #{e2\ 2774}#)
- (let ((#{names\ 2776}#
- (map (lambda (#{x\ 2777}#)
- (#{id-var-name\ 429}#
- #{x\ 2777}#
- #{w\ 2744}#))
- #{var\ 2771}#)))
- (begin
- (for-each
- (lambda (#{id\ 2780}# #{n\ 2781}#)
- (let ((#{atom-key\ 2786}#
- (#{binding-type\ 355}#
- (#{lookup\ 366}#
- #{n\ 2781}#
- #{r\ 2743}#
- #{mod\ 2746}#))))
- (if (memv #{atom-key\ 2786}#
- '(displaced-lexical))
- (syntax-violation
- 'fluid-let-syntax
- "identifier out of context"
- #{e\ 2742}#
- (#{source-wrap\ 443}#
- #{id\ 2780}#
- #{w\ 2744}#
- #{s\ 2745}#
- #{mod\ 2746}#)))))
- #{var\ 2771}#
- #{names\ 2776}#)
- (#{chi-body\ 465}#
- (cons #{e1\ 2773}# #{e2\ 2774}#)
- (#{source-wrap\ 443}#
- #{e\ 2742}#
- #{w\ 2744}#
- #{s\ 2745}#
- #{mod\ 2746}#)
- (#{extend-env\ 360}#
- #{names\ 2776}#
- (let ((#{trans-r\ 2791}#
- (#{macros-only-env\ 364}#
- #{r\ 2743}#)))
- (map (lambda (#{x\ 2792}#)
- (cons 'macro
- (#{eval-local-transformer\
469}#
- (#{chi\ 457}#
- #{x\ 2792}#
- #{trans-r\ 2791}#
- #{w\ 2744}#
- #{mod\ 2746}#)
- #{mod\ 2746}#)))
- #{val\ 2772}#))
- #{r\ 2743}#)
- #{w\ 2744}#
- #{mod\ 2746}#))))
- #{tmp\ 2753}#)
- ((lambda (#{_\ 2797}#)
- (syntax-violation
- 'fluid-let-syntax
- "bad syntax"
- (#{source-wrap\ 443}#
- #{e\ 2742}#
- #{w\ 2744}#
- #{s\ 2745}#
- #{mod\ 2746}#)))
- #{tmp\ 2752}#)))
- ($sc-dispatch
- #{tmp\ 2752}#
- '(any #(each (any any)) any . each-any))))
- #{e\ 2742}#)))
- (#{global-extend\ 368}#
- 'core
- 'quote
- (lambda (#{e\ 2798}#
- #{r\ 2799}#
- #{w\ 2800}#
- #{s\ 2801}#
- #{mod\ 2802}#)
- ((lambda (#{tmp\ 2808}#)
- ((lambda (#{tmp\ 2809}#)
- (if #{tmp\ 2809}#
- (apply (lambda (#{_\ 2812}# #{e\ 2813}#)
- (#{build-data\ 322}#
- #{s\ 2801}#
- (#{strip\ 483}# #{e\ 2813}# #{w\ 2800}#)))
- #{tmp\ 2809}#)
- ((lambda (#{_\ 2815}#)
- (syntax-violation
- 'quote
- "bad syntax"
- (#{source-wrap\ 443}#
- #{e\ 2798}#
- #{w\ 2800}#
- #{s\ 2801}#
- #{mod\ 2802}#)))
- #{tmp\ 2808}#)))
- ($sc-dispatch #{tmp\ 2808}# (quote (any any)))))
- #{e\ 2798}#)))
- (#{global-extend\ 368}#
- 'core
- 'syntax
- (letrec ((#{regen\ 2831}#
- (lambda (#{x\ 2832}#)
- (let ((#{atom-key\ 2836}# (car #{x\ 2832}#)))
- (if (memv #{atom-key\ 2836}# (quote (ref)))
- (#{build-lexical-reference\ 300}#
- 'value
- #f
- (cadr #{x\ 2832}#)
- (cadr #{x\ 2832}#))
- (if (memv #{atom-key\ 2836}# (quote (primitive)))
- (#{build-primref\ 320}# #f (cadr #{x\ 2832}#))
- (if (memv #{atom-key\ 2836}# (quote (quote)))
- (#{build-data\ 322}# #f (cadr #{x\ 2832}#))
- (if (memv #{atom-key\ 2836}# (quote (lambda)))
- (if (list? (cadr #{x\ 2832}#))
- (#{build-simple-lambda\ 314}#
- #f
- (cadr #{x\ 2832}#)
+ #f))))))
+ (#{put-global-definition-hook\ 301}#
+ (lambda (#{symbol\ 2607}# #{type\ 2608}# #{val\ 2609}#)
+ (module-define!
+ (current-module)
+ #{symbol\ 2607}#
+ (make-syntax-transformer
+ #{symbol\ 2607}#
+ #{type\ 2608}#
+ #{val\ 2609}#))))
+ (#{local-eval-hook\ 298}#
+ (lambda (#{x\ 2613}# #{mod\ 2614}#)
+ (primitive-eval #{x\ 2613}#)))
+ (#{top-level-eval-hook\ 296}#
+ (lambda (#{x\ 2617}# #{mod\ 2618}#)
+ (primitive-eval #{x\ 2617}#)))
+ (#{set-lambda-meta!\ 286}#
+ (lambda (#{x\ 2621}# #{v\ 2622}#)
+ (struct-set! #{x\ 2621}# 1 #{v\ 2622}#)))
+ (#{lambda-meta\ 284}#
+ (lambda (#{x\ 2625}#) (struct-ref #{x\ 2625}# 1)))
+ (#{lambda?\ 282}#
+ (lambda (#{x\ 2627}#)
+ (if (struct? #{x\ 2627}#)
+ (eq? (struct-vtable #{x\ 2627}#)
+ (vector-ref %expanded-vtables 13))
+ #f)))
+ (#{make-dynlet\ 279}#
+ (lambda (#{src\ 2631}#
+ #{fluids\ 2632}#
+ #{vals\ 2633}#
+ #{body\ 2634}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 17)
+ #{src\ 2631}#
+ #{fluids\ 2632}#
+ #{vals\ 2633}#
+ #{body\ 2634}#)))
+ (#{make-letrec\ 277}#
+ (lambda (#{src\ 2639}#
+ #{in-order?\ 2640}#
+ #{names\ 2641}#
+ #{gensyms\ 2642}#
+ #{vals\ 2643}#
+ #{body\ 2644}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 16)
+ #{src\ 2639}#
+ #{in-order?\ 2640}#
+ #{names\ 2641}#
+ #{gensyms\ 2642}#
+ #{vals\ 2643}#
+ #{body\ 2644}#)))
+ (#{make-let\ 275}#
+ (lambda (#{src\ 2651}#
+ #{names\ 2652}#
+ #{gensyms\ 2653}#
+ #{vals\ 2654}#
+ #{body\ 2655}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ #{src\ 2651}#
+ #{names\ 2652}#
+ #{gensyms\ 2653}#
+ #{vals\ 2654}#
+ #{body\ 2655}#)))
+ (#{make-lambda-case\ 273}#
+ (lambda (#{src\ 2661}#
+ #{req\ 2662}#
+ #{opt\ 2663}#
+ #{rest\ 2664}#
+ #{kw\ 2665}#
+ #{inits\ 2666}#
+ #{gensyms\ 2667}#
+ #{body\ 2668}#
+ #{alternate\ 2669}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ #{src\ 2661}#
+ #{req\ 2662}#
+ #{opt\ 2663}#
+ #{rest\ 2664}#
+ #{kw\ 2665}#
+ #{inits\ 2666}#
+ #{gensyms\ 2667}#
+ #{body\ 2668}#
+ #{alternate\ 2669}#)))
+ (#{make-lambda\ 271}#
+ (lambda (#{src\ 2679}# #{meta\ 2680}# #{body\ 2681}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 13)
+ #{src\ 2679}#
+ #{meta\ 2680}#
+ #{body\ 2681}#)))
+ (#{make-sequence\ 269}#
+ (lambda (#{src\ 2685}# #{exps\ 2686}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #{src\ 2685}#
+ #{exps\ 2686}#)))
+ (#{make-application\ 267}#
+ (lambda (#{src\ 2689}# #{proc\ 2690}# #{args\ 2691}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 11)
+ #{src\ 2689}#
+ #{proc\ 2690}#
+ #{args\ 2691}#)))
+ (#{make-conditional\ 265}#
+ (lambda (#{src\ 2695}#
+ #{test\ 2696}#
+ #{consequent\ 2697}#
+ #{alternate\ 2698}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 10)
+ #{src\ 2695}#
+ #{test\ 2696}#
+ #{consequent\ 2697}#
+ #{alternate\ 2698}#)))
+ (#{make-toplevel-define\ 263}#
+ (lambda (#{src\ 2703}# #{name\ 2704}# #{exp\ 2705}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 9)
+ #{src\ 2703}#
+ #{name\ 2704}#
+ #{exp\ 2705}#)))
+ (#{make-toplevel-set\ 261}#
+ (lambda (#{src\ 2709}# #{name\ 2710}# #{exp\ 2711}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 8)
+ #{src\ 2709}#
+ #{name\ 2710}#
+ #{exp\ 2711}#)))
+ (#{make-toplevel-ref\ 259}#
+ (lambda (#{src\ 2715}# #{name\ 2716}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 7)
+ #{src\ 2715}#
+ #{name\ 2716}#)))
+ (#{make-module-set\ 257}#
+ (lambda (#{src\ 2719}#
+ #{mod\ 2720}#
+ #{name\ 2721}#
+ #{public?\ 2722}#
+ #{exp\ 2723}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 6)
+ #{src\ 2719}#
+ #{mod\ 2720}#
+ #{name\ 2721}#
+ #{public?\ 2722}#
+ #{exp\ 2723}#)))
+ (#{make-module-ref\ 255}#
+ (lambda (#{src\ 2729}#
+ #{mod\ 2730}#
+ #{name\ 2731}#
+ #{public?\ 2732}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 5)
+ #{src\ 2729}#
+ #{mod\ 2730}#
+ #{name\ 2731}#
+ #{public?\ 2732}#)))
+ (#{make-lexical-set\ 253}#
+ (lambda (#{src\ 2737}#
+ #{name\ 2738}#
+ #{gensym\ 2739}#
+ #{exp\ 2740}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 4)
+ #{src\ 2737}#
+ #{name\ 2738}#
+ #{gensym\ 2739}#
+ #{exp\ 2740}#)))
+ (#{make-lexical-ref\ 251}#
+ (lambda (#{src\ 2745}# #{name\ 2746}# #{gensym\ 2747}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 3)
+ #{src\ 2745}#
+ #{name\ 2746}#
+ #{gensym\ 2747}#)))
+ (#{make-const\ 247}#
+ (lambda (#{src\ 2755}# #{exp\ 2756}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ #{src\ 2755}#
+ #{exp\ 2756}#)))
+ (#{make-void\ 245}#
+ (lambda (#{src\ 2759}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 0)
+ #{src\ 2759}#))))
+ (begin
+ (set! #{ribcage?\ 410}#
+ (lambda (#{x\ 2286}#)
+ (if (vector? #{x\ 2286}#)
+ (if (= (vector-length #{x\ 2286}#) 4)
+ (eq? (vector-ref #{x\ 2286}# 0) (quote ribcage))
+ #f)
+ #f)))
+ (set! #{wrap-subst\ 396}# cdr)
+ (set! #{wrap-marks\ 394}# car)
+ (set! #{make-wrap\ 392}# cons)
+ (set! #{binding-value\ 372}# cdr)
+ (set! #{binding-type\ 370}# car)
+ (set! #{set-syntax-object-module!\ 363}#
+ (lambda (#{x\ 2365}# #{update\ 2366}#)
+ (vector-set! #{x\ 2365}# 3 #{update\ 2366}#)))
+ (set! #{set-syntax-object-wrap!\ 361}#
+ (lambda (#{x\ 2369}# #{update\ 2370}#)
+ (vector-set! #{x\ 2369}# 2 #{update\ 2370}#)))
+ (set! #{set-syntax-object-expression!\ 359}#
+ (lambda (#{x\ 2373}# #{update\ 2374}#)
+ (vector-set! #{x\ 2373}# 1 #{update\ 2374}#)))
+ (set! #{fx<\ 294}# <)
+ (set! #{fx=\ 292}# =)
+ (set! #{fx-\ 290}# -)
+ (set! #{fx+\ 288}# +)
+ (set! #{make-primitive-ref\ 249}#
+ (lambda (#{src\ 2751}# #{name\ 2752}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 2)
+ #{src\ 2751}#
+ #{name\ 2752}#)))
+ (begin
+ (#{global-extend\ 383}#
+ 'local-syntax
+ 'letrec-syntax
+ #t)
+ (#{global-extend\ 383}#
+ 'local-syntax
+ 'let-syntax
+ #f)
+ (#{global-extend\ 383}#
+ 'core
+ 'fluid-let-syntax
+ (lambda (#{e\ 2761}#
+ #{r\ 2762}#
+ #{w\ 2763}#
+ #{s\ 2764}#
+ #{mod\ 2765}#)
+ (let ((#{tmp\ 2771}# #{e\ 2761}#))
+ (let ((#{tmp\ 2772}#
+ ($sc-dispatch
+ #{tmp\ 2771}#
+ '(any #(each (any any)) any . each-any))))
+ (if (if #{tmp\ 2772}#
+ (@apply
+ (lambda (#{_\ 2778}#
+ #{var\ 2779}#
+ #{val\ 2780}#
+ #{e1\ 2781}#
+ #{e2\ 2782}#)
+ (#{valid-bound-ids?\ 450}# #{var\ 2779}#))
+ #{tmp\ 2772}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 2789}#
+ #{var\ 2790}#
+ #{val\ 2791}#
+ #{e1\ 2792}#
+ #{e2\ 2793}#)
+ (begin
+ (let ((#{names\ 2795}#
+ (map (lambda (#{x\ 2796}#)
+ (#{id-var-name\ 444}#
+ #{x\ 2796}#
+ #{w\ 2763}#))
+ #{var\ 2790}#)))
+ (begin
+ (for-each
+ (lambda (#{id\ 2799}# #{n\ 2800}#)
+ (begin
+ (let ((#{atom-key\ 2805}#
+ (#{binding-type\ 370}#
+ (#{lookup\ 381}#
+ #{n\ 2800}#
+ #{r\ 2762}#
+ #{mod\ 2765}#))))
+ (if (eqv? #{atom-key\ 2805}#
+ 'displaced-lexical)
+ (syntax-violation
+ 'fluid-let-syntax
+ "identifier out of context"
+ #{e\ 2761}#
+ (#{source-wrap\ 458}#
+ #{id\ 2799}#
+ #{w\ 2763}#
+ #{s\ 2764}#
+ #{mod\ 2765}#))))))
+ #{var\ 2790}#
+ #{names\ 2795}#)
+ (#{chi-body\ 480}#
+ (cons #{e1\ 2792}# #{e2\ 2793}#)
+ (#{source-wrap\ 458}#
+ #{e\ 2761}#
+ #{w\ 2763}#
+ #{s\ 2764}#
+ #{mod\ 2765}#)
+ (#{extend-env\ 375}#
+ #{names\ 2795}#
+ (begin
+ (let ((#{trans-r\ 2810}#
+ (#{macros-only-env\ 379}#
+ #{r\ 2762}#)))
+ (map (lambda (#{x\ 2811}#)
+ (cons 'macro
+
(#{eval-local-transformer\ 484}#
+ (#{chi\ 472}#
+ #{x\ 2811}#
+ #{trans-r\ 2810}#
+ #{w\ 2763}#
+ #{mod\ 2765}#)
+ #{mod\ 2765}#)))
+ #{val\ 2791}#)))
+ #{r\ 2762}#)
+ #{w\ 2763}#
+ #{mod\ 2765}#)))))
+ #{tmp\ 2772}#)
+ (let ((#{_\ 2816}# #{tmp\ 2771}#))
+ (syntax-violation
+ 'fluid-let-syntax
+ "bad syntax"
+ (#{source-wrap\ 458}#
+ #{e\ 2761}#
+ #{w\ 2763}#
+ #{s\ 2764}#
+ #{mod\ 2765}#))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'quote
+ (lambda (#{e\ 2817}#
+ #{r\ 2818}#
+ #{w\ 2819}#
+ #{s\ 2820}#
+ #{mod\ 2821}#)
+ (let ((#{tmp\ 2827}# #{e\ 2817}#))
+ (let ((#{tmp\ 2828}#
+ ($sc-dispatch #{tmp\ 2827}# (quote (any any)))))
+ (if #{tmp\ 2828}#
+ (@apply
+ (lambda (#{_\ 2831}# #{e\ 2832}#)
+ (#{build-data\ 337}#
+ #{s\ 2820}#
+ (#{strip\ 498}# #{e\ 2832}# #{w\ 2819}#)))
+ #{tmp\ 2828}#)
+ (let ((#{_\ 2834}# #{tmp\ 2827}#))
+ (syntax-violation
+ 'quote
+ "bad syntax"
+ (#{source-wrap\ 458}#
+ #{e\ 2817}#
+ #{w\ 2819}#
+ #{s\ 2820}#
+ #{mod\ 2821}#))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'syntax
+ (letrec*
+ ((#{regen\ 2850}#
+ (lambda (#{x\ 2851}#)
+ (begin
+ (let ((#{atom-key\ 2855}# (car #{x\ 2851}#)))
+ (if (eqv? #{atom-key\ 2855}# (quote ref))
+ (#{build-lexical-reference\ 315}#
+ 'value
+ #f
+ (car (cdr #{x\ 2851}#))
+ (car (cdr #{x\ 2851}#)))
+ (if (eqv? #{atom-key\ 2855}# (quote primitive))
+ (#{build-primref\ 335}#
+ #f
+ (car (cdr #{x\ 2851}#)))
+ (if (eqv? #{atom-key\ 2855}# (quote quote))
+ (#{build-data\ 337}# #f (car (cdr #{x\ 2851}#)))
+ (if (eqv? #{atom-key\ 2855}# (quote lambda))
+ (if (list? (car (cdr #{x\ 2851}#)))
+ (#{build-simple-lambda\ 329}#
+ #f
+ (car (cdr #{x\ 2851}#))
+ #f
+ (car (cdr #{x\ 2851}#))
+ '()
+ (#{regen\ 2850}#
+ (car (cdr (cdr #{x\ 2851}#)))))
+ (error "how did we get here" #{x\ 2851}#))
+ (#{build-application\ 309}#
#f
- (cadr #{x\ 2832}#)
- '()
- (#{regen\ 2831}# (caddr #{x\ 2832}#)))
- (error "how did we get here" #{x\ 2832}#))
- (#{build-application\ 294}#
- #f
- (#{build-primref\ 320}# #f (car #{x\ 2832}#))
- (map #{regen\ 2831}#
- (cdr #{x\ 2832}#))))))))))
- (#{gen-vector\ 2829}#
- (lambda (#{x\ 2848}#)
- (if (eq? (car #{x\ 2848}#) (quote list))
- (cons (quote vector) (cdr #{x\ 2848}#))
- (if (eq? (car #{x\ 2848}#) (quote quote))
+ (#{build-primref\ 335}#
+ #f
+ (car #{x\ 2851}#))
+ (map #{regen\ 2850}#
+ (cdr #{x\ 2851}#)))))))))))
+ (#{gen-vector\ 2848}#
+ (lambda (#{x\ 2867}#)
+ (if (eq? (car #{x\ 2867}#) (quote list))
+ (cons (quote vector) (cdr #{x\ 2867}#))
+ (if (eq? (car #{x\ 2867}#) (quote quote))
(list 'quote
- (list->vector (cadr #{x\ 2848}#)))
- (list (quote list->vector) #{x\ 2848}#)))))
- (#{gen-append\ 2827}#
- (lambda (#{x\ 2858}# #{y\ 2859}#)
- (if (equal? #{y\ 2859}# (quote (quote ())))
- #{x\ 2858}#
- (list (quote append) #{x\ 2858}# #{y\ 2859}#))))
- (#{gen-cons\ 2825}#
- (lambda (#{x\ 2863}# #{y\ 2864}#)
- (let ((#{atom-key\ 2869}# (car #{y\ 2864}#)))
- (if (memv #{atom-key\ 2869}# (quote (quote)))
- (if (eq? (car #{x\ 2863}#) (quote quote))
- (list 'quote
- (cons (cadr #{x\ 2863}#) (cadr #{y\ 2864}#)))
- (if (eq? (cadr #{y\ 2864}#) (quote ()))
- (list (quote list) #{x\ 2863}#)
- (list (quote cons) #{x\ 2863}# #{y\ 2864}#)))
- (if (memv #{atom-key\ 2869}# (quote (list)))
- (cons 'list
- (cons #{x\ 2863}# (cdr #{y\ 2864}#)))
- (list (quote cons) #{x\ 2863}# #{y\ 2864}#))))))
- (#{gen-map\ 2823}#
- (lambda (#{e\ 2878}# #{map-env\ 2879}#)
- (let ((#{formals\ 2884}# (map cdr #{map-env\ 2879}#))
- (#{actuals\ 2885}#
- (map (lambda (#{x\ 2886}#)
- (list (quote ref) (car #{x\ 2886}#)))
- #{map-env\ 2879}#)))
- (if (eq? (car #{e\ 2878}#) (quote ref))
- (car #{actuals\ 2885}#)
- (if (and-map
- (lambda (#{x\ 2893}#)
- (if (eq? (car #{x\ 2893}#) (quote ref))
- (memq (cadr #{x\ 2893}#) #{formals\ 2884}#)
- #f))
- (cdr #{e\ 2878}#))
- (cons 'map
- (cons (list 'primitive
- (car #{e\ 2878}#))
- (map (let ((#{r\ 2899}#
- (map cons
- #{formals\ 2884}#
- #{actuals\ 2885}#)))
- (lambda (#{x\ 2900}#)
- (cdr (assq (cadr #{x\ 2900}#)
- #{r\ 2899}#))))
- (cdr #{e\ 2878}#))))
- (cons 'map
- (cons (list 'lambda
- #{formals\ 2884}#
- #{e\ 2878}#)
- #{actuals\ 2885}#)))))))
- (#{gen-mappend\ 2821}#
- (lambda (#{e\ 2904}# #{map-env\ 2905}#)
+ (list->vector (car (cdr #{x\ 2867}#))))
+ (list (quote list->vector) #{x\ 2867}#)))))
+ (#{gen-append\ 2846}#
+ (lambda (#{x\ 2877}# #{y\ 2878}#)
+ (if (equal? #{y\ 2878}# (quote (quote ())))
+ #{x\ 2877}#
+ (list (quote append) #{x\ 2877}# #{y\ 2878}#))))
+ (#{gen-cons\ 2844}#
+ (lambda (#{x\ 2882}# #{y\ 2883}#)
+ (begin
+ (let ((#{atom-key\ 2888}# (car #{y\ 2883}#)))
+ (if (eqv? #{atom-key\ 2888}# (quote quote))
+ (if (eq? (car #{x\ 2882}#) (quote quote))
+ (list 'quote
+ (cons (car (cdr #{x\ 2882}#))
+ (car (cdr #{y\ 2883}#))))
+ (if (eq? (car (cdr #{y\ 2883}#)) (quote ()))
+ (list (quote list) #{x\ 2882}#)
+ (list (quote cons) #{x\ 2882}# #{y\ 2883}#)))
+ (if (eqv? #{atom-key\ 2888}# (quote list))
+ (cons 'list
+ (cons #{x\ 2882}# (cdr #{y\ 2883}#)))
+ (list (quote cons) #{x\ 2882}# #{y\ 2883}#)))))))
+ (#{gen-map\ 2842}#
+ (lambda (#{e\ 2897}# #{map-env\ 2898}#)
+ (begin
+ (let ((#{formals\ 2903}# (map cdr #{map-env\ 2898}#))
+ (#{actuals\ 2904}#
+ (map (lambda (#{x\ 2905}#)
+ (list (quote ref) (car #{x\ 2905}#)))
+ #{map-env\ 2898}#)))
+ (if (eq? (car #{e\ 2897}#) (quote ref))
+ (car #{actuals\ 2904}#)
+ (if (and-map
+ (lambda (#{x\ 2912}#)
+ (if (eq? (car #{x\ 2912}#) (quote ref))
+ (memq (car (cdr #{x\ 2912}#))
+ #{formals\ 2903}#)
+ #f))
+ (cdr #{e\ 2897}#))
+ (cons 'map
+ (cons (list 'primitive
+ (car #{e\ 2897}#))
+ (map (begin
+ (let ((#{r\ 2918}#
+ (map cons
+ #{formals\ 2903}#
+ #{actuals\
2904}#)))
+ (lambda (#{x\ 2919}#)
+ (cdr (assq (car (cdr #{x\
2919}#))
+ #{r\ 2918}#)))))
+ (cdr #{e\ 2897}#))))
+ (cons 'map
+ (cons (list 'lambda
+ #{formals\ 2903}#
+ #{e\ 2897}#)
+ #{actuals\ 2904}#))))))))
+ (#{gen-mappend\ 2840}#
+ (lambda (#{e\ 2923}# #{map-env\ 2924}#)
(list 'apply
'(primitive append)
- (#{gen-map\ 2823}# #{e\ 2904}# #{map-env\ 2905}#))))
- (#{gen-ref\ 2819}#
- (lambda (#{src\ 2909}#
- #{var\ 2910}#
- #{level\ 2911}#
- #{maps\ 2912}#)
- (if (#{fx=\ 277}# #{level\ 2911}# 0)
- (values #{var\ 2910}# #{maps\ 2912}#)
- (if (null? #{maps\ 2912}#)
+ (#{gen-map\ 2842}# #{e\ 2923}# #{map-env\ 2924}#))))
+ (#{gen-ref\ 2838}#
+ (lambda (#{src\ 2928}#
+ #{var\ 2929}#
+ #{level\ 2930}#
+ #{maps\ 2931}#)
+ (if (#{fx=\ 292}# #{level\ 2930}# 0)
+ (values #{var\ 2929}# #{maps\ 2931}#)
+ (if (null? #{maps\ 2931}#)
(syntax-violation
'syntax
"missing ellipsis"
- #{src\ 2909}#)
+ #{src\ 2928}#)
(call-with-values
(lambda ()
- (#{gen-ref\ 2819}#
- #{src\ 2909}#
- #{var\ 2910}#
- (#{fx-\ 275}# #{level\ 2911}# 1)
- (cdr #{maps\ 2912}#)))
- (lambda (#{outer-var\ 2917}# #{outer-maps\ 2918}#)
- (let ((#{b\ 2922}#
- (assq #{outer-var\ 2917}#
- (car #{maps\ 2912}#))))
- (if #{b\ 2922}#
- (values (cdr #{b\ 2922}#) #{maps\ 2912}#)
- (let ((#{inner-var\ 2924}#
- (#{gen-var\ 485}# (quote tmp))))
+ (#{gen-ref\ 2838}#
+ #{src\ 2928}#
+ #{var\ 2929}#
+ (#{fx-\ 290}# #{level\ 2930}# 1)
+ (cdr #{maps\ 2931}#)))
+ (lambda (#{outer-var\ 2936}# #{outer-maps\ 2937}#)
+ (begin
+ (let ((#{b\ 2941}#
+ (assq #{outer-var\ 2936}#
+ (car #{maps\ 2931}#))))
+ (if #{b\ 2941}#
+ (values (cdr #{b\ 2941}#) #{maps\ 2931}#)
+ (begin
+ (let ((#{inner-var\ 2943}#
+ (#{gen-var\ 500}# (quote tmp))))
+ (values
+ #{inner-var\ 2943}#
+ (cons (cons (cons #{outer-var\ 2936}#
+ #{inner-var\ 2943}#)
+ (car #{maps\ 2931}#))
+ #{outer-maps\
2937}#)))))))))))))
+ (#{gen-syntax\ 2836}#
+ (lambda (#{src\ 2944}#
+ #{e\ 2945}#
+ #{r\ 2946}#
+ #{maps\ 2947}#
+ #{ellipsis?\ 2948}#
+ #{mod\ 2949}#)
+ (if (#{id?\ 387}# #{e\ 2945}#)
+ (begin
+ (let ((#{label\ 2957}#
+ (#{id-var-name\ 444}#
+ #{e\ 2945}#
+ '(()))))
+ (begin
+ (let ((#{b\ 2960}#
+ (#{lookup\ 381}#
+ #{label\ 2957}#
+ #{r\ 2946}#
+ #{mod\ 2949}#)))
+ (if (eq? (#{binding-type\ 370}# #{b\ 2960}#)
+ 'syntax)
+ (call-with-values
+ (lambda ()
+ (begin
+ (let ((#{var.lev\ 2962}#
+ (#{binding-value\ 372}#
+ #{b\ 2960}#)))
+ (#{gen-ref\ 2838}#
+ #{src\ 2944}#
+ (car #{var.lev\ 2962}#)
+ (cdr #{var.lev\ 2962}#)
+ #{maps\ 2947}#))))
+ (lambda (#{var\ 2963}# #{maps\ 2964}#)
+ (values
+ (list (quote ref) #{var\ 2963}#)
+ #{maps\ 2964}#)))
+ (if (#{ellipsis?\ 2948}# #{e\ 2945}#)
+ (syntax-violation
+ 'syntax
+ "misplaced ellipsis"
+ #{src\ 2944}#)
(values
- #{inner-var\ 2924}#
- (cons (cons (cons #{outer-var\ 2917}#
- #{inner-var\ 2924}#)
- (car #{maps\ 2912}#))
- #{outer-maps\ 2918}#)))))))))))
- (#{gen-syntax\ 2817}#
- (lambda (#{src\ 2925}#
- #{e\ 2926}#
- #{r\ 2927}#
- #{maps\ 2928}#
- #{ellipsis?\ 2929}#
- #{mod\ 2930}#)
- (if (#{id?\ 372}# #{e\ 2926}#)
- (let ((#{label\ 2938}#
- (#{id-var-name\ 429}#
- #{e\ 2926}#
- '(()))))
- (let ((#{b\ 2941}#
- (#{lookup\ 366}#
- #{label\ 2938}#
- #{r\ 2927}#
- #{mod\ 2930}#)))
- (if (eq? (#{binding-type\ 355}# #{b\ 2941}#)
- 'syntax)
- (call-with-values
- (lambda ()
- (let ((#{var.lev\ 2943}#
- (#{binding-value\ 357}# #{b\ 2941}#)))
- (#{gen-ref\ 2819}#
- #{src\ 2925}#
- (car #{var.lev\ 2943}#)
- (cdr #{var.lev\ 2943}#)
- #{maps\ 2928}#)))
- (lambda (#{var\ 2944}# #{maps\ 2945}#)
- (values
- (list (quote ref) #{var\ 2944}#)
- #{maps\ 2945}#)))
- (if (#{ellipsis?\ 2929}# #{e\ 2926}#)
- (syntax-violation
- 'syntax
- "misplaced ellipsis"
- #{src\ 2925}#)
- (values
- (list (quote quote) #{e\ 2926}#)
- #{maps\ 2928}#)))))
- ((lambda (#{tmp\ 2950}#)
- ((lambda (#{tmp\ 2951}#)
- (if (if #{tmp\ 2951}#
- (apply (lambda (#{dots\ 2954}# #{e\ 2955}#)
- (#{ellipsis?\ 2929}#
- #{dots\ 2954}#))
- #{tmp\ 2951}#)
- #f)
- (apply (lambda (#{dots\ 2958}# #{e\ 2959}#)
- (#{gen-syntax\ 2817}#
- #{src\ 2925}#
- #{e\ 2959}#
- #{r\ 2927}#
- #{maps\ 2928}#
- (lambda (#{x\ 2960}#) #f)
- #{mod\ 2930}#))
- #{tmp\ 2951}#)
- ((lambda (#{tmp\ 2962}#)
- (if (if #{tmp\ 2962}#
- (apply (lambda (#{x\ 2966}#
- #{dots\ 2967}#
- #{y\ 2968}#)
- (#{ellipsis?\ 2929}#
- #{dots\ 2967}#))
- #{tmp\ 2962}#)
- #f)
- (apply (lambda (#{x\ 2972}#
- #{dots\ 2973}#
- #{y\ 2974}#)
- (letrec ((#{f\ 2978}#
- (lambda (#{y\ 2979}#
- #{k\ 2980}#)
- ((lambda (#{tmp\
2987}#)
- ((lambda (#{tmp\
2988}#)
- (if (if #{tmp\
2988}#
- (apply
(lambda (#{dots\ 2991}#
-
#{y\ 2992}#)
-
(#{ellipsis?\ 2929}#
-
#{dots\ 2991}#))
-
#{tmp\ 2988}#)
- #f)
- (apply
(lambda (#{dots\ 2995}#
-
#{y\ 2996}#)
-
(#{f\ 2978}#
-
#{y\ 2996}#
-
(lambda (#{maps\ 2997}#)
-
(call-with-values
-
(lambda ()
-
(#{k\ 2980}#
-
(cons '()
-
#{maps\ 2997}#)))
-
(lambda (#{x\ 2999}#
-
#{maps\ 3000}#)
-
(if (null? (car #{maps\ 3000}#))
-
(syntax-violation
-
'syntax
-
"extra ellipsis"
-
#{src\ 2925}#)
-
(values
-
(#{gen-mappend\ 2821}#
-
#{x\ 2999}#
-
(car #{maps\ 3000}#))
-
(cdr #{maps\ 3000}#))))))))
-
#{tmp\ 2988}#)
- ((lambda
(#{_\ 3004}#)
-
(call-with-values
- (lambda
()
-
(#{gen-syntax\ 2817}#
-
#{src\ 2925}#
-
#{y\ 2979}#
-
#{r\ 2927}#
-
#{maps\ 2928}#
-
#{ellipsis?\ 2929}#
-
#{mod\ 2930}#))
- (lambda
(#{y\ 3005}#
-
#{maps\ 3006}#)
-
(call-with-values
-
(lambda ()
-
(#{k\ 2980}#
-
#{maps\ 3006}#))
-
(lambda (#{x\ 3009}#
-
#{maps\ 3010}#)
-
(values
-
(#{gen-append\ 2827}#
-
#{x\ 3009}#
-
#{y\ 3005}#)
-
#{maps\ 3010}#))))))
- #{tmp\
2987}#)))
- ($sc-dispatch
- #{tmp\ 2987}#
- '(any . any))))
- #{y\ 2979}#))))
- (#{f\ 2978}#
- #{y\ 2974}#
- (lambda (#{maps\ 2981}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax\ 2817}#
- #{src\ 2925}#
- #{x\ 2972}#
- #{r\ 2927}#
- (cons '()
- #{maps\ 2981}#)
- #{ellipsis?\ 2929}#
- #{mod\ 2930}#))
- (lambda (#{x\ 2983}#
- #{maps\ 2984}#)
- (if (null? (car #{maps\
2984}#))
- (syntax-violation
- 'syntax
- "extra ellipsis"
- #{src\ 2925}#)
- (values
- (#{gen-map\ 2823}#
- #{x\ 2983}#
- (car #{maps\
2984}#))
- (cdr #{maps\
2984}#)))))))))
- #{tmp\ 2962}#)
- ((lambda (#{tmp\ 3013}#)
- (if #{tmp\ 3013}#
- (apply (lambda (#{x\ 3016}#
- #{y\ 3017}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax\ 2817}#
- #{src\ 2925}#
- #{x\ 3016}#
- #{r\ 2927}#
- #{maps\ 2928}#
- #{ellipsis?\ 2929}#
- #{mod\ 2930}#))
- (lambda (#{x\ 3018}#
- #{maps\ 3019}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax\ 2817}#
- #{src\ 2925}#
- #{y\ 3017}#
- #{r\ 2927}#
- #{maps\ 3019}#
- #{ellipsis?\ 2929}#
- #{mod\ 2930}#))
- (lambda (#{y\ 3022}#
- #{maps\
3023}#)
- (values
- (#{gen-cons\ 2825}#
- #{x\ 3018}#
- #{y\ 3022}#)
- #{maps\
3023}#))))))
- #{tmp\ 3013}#)
- ((lambda (#{tmp\ 3026}#)
- (if #{tmp\ 3026}#
- (apply (lambda (#{e1\ 3029}#
- #{e2\ 3030}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax\
2817}#
- #{src\ 2925}#
- (cons #{e1\ 3029}#
- #{e2\
3030}#)
- #{r\ 2927}#
- #{maps\ 2928}#
- #{ellipsis?\
2929}#
- #{mod\ 2930}#))
- (lambda (#{e\ 3032}#
- #{maps\
3033}#)
- (values
- (#{gen-vector\
2829}#
- #{e\ 3032}#)
- #{maps\ 3033}#))))
- #{tmp\ 3026}#)
- ((lambda (#{_\ 3037}#)
- (values
- (list 'quote
- #{e\ 2926}#)
- #{maps\ 2928}#))
- #{tmp\ 2950}#)))
- ($sc-dispatch
- #{tmp\ 2950}#
- '#(vector (any . each-any))))))
+ (list (quote quote) #{e\ 2945}#)
+ #{maps\ 2947}#)))))))
+ (let ((#{tmp\ 2969}# #{e\ 2945}#))
+ (let ((#{tmp\ 2970}#
+ ($sc-dispatch
+ #{tmp\ 2969}#
+ '(any any))))
+ (if (if #{tmp\ 2970}#
+ (@apply
+ (lambda (#{dots\ 2973}# #{e\ 2974}#)
+ (#{ellipsis?\ 2948}# #{dots\ 2973}#))
+ #{tmp\ 2970}#)
+ #f)
+ (@apply
+ (lambda (#{dots\ 2977}# #{e\ 2978}#)
+ (#{gen-syntax\ 2836}#
+ #{src\ 2944}#
+ #{e\ 2978}#
+ #{r\ 2946}#
+ #{maps\ 2947}#
+ (lambda (#{x\ 2979}#) #f)
+ #{mod\ 2949}#))
+ #{tmp\ 2970}#)
+ (let ((#{tmp\ 2981}#
($sc-dispatch
- #{tmp\ 2950}#
- '(any . any)))))
- ($sc-dispatch
- #{tmp\ 2950}#
- '(any any . any)))))
- ($sc-dispatch #{tmp\ 2950}# (quote (any any)))))
- #{e\ 2926}#)))))
- (lambda (#{e\ 3039}#
- #{r\ 3040}#
- #{w\ 3041}#
- #{s\ 3042}#
- #{mod\ 3043}#)
- (let ((#{e\ 3050}#
- (#{source-wrap\ 443}#
- #{e\ 3039}#
- #{w\ 3041}#
- #{s\ 3042}#
- #{mod\ 3043}#)))
- ((lambda (#{tmp\ 3051}#)
- ((lambda (#{tmp\ 3052}#)
- (if #{tmp\ 3052}#
- (apply (lambda (#{_\ 3055}# #{x\ 3056}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax\ 2817}#
- #{e\ 3050}#
- #{x\ 3056}#
- #{r\ 3040}#
- '()
- #{ellipsis?\ 473}#
- #{mod\ 3043}#))
- (lambda (#{e\ 3057}# #{maps\ 3058}#)
- (#{regen\ 2831}# #{e\ 3057}#))))
- #{tmp\ 3052}#)
- ((lambda (#{_\ 3062}#)
- (syntax-violation
- 'syntax
- "bad `syntax' form"
- #{e\ 3050}#))
- #{tmp\ 3051}#)))
- ($sc-dispatch #{tmp\ 3051}# (quote (any any)))))
- #{e\ 3050}#)))))
- (#{global-extend\ 368}#
- 'core
- 'lambda
- (lambda (#{e\ 3063}#
- #{r\ 3064}#
- #{w\ 3065}#
- #{s\ 3066}#
- #{mod\ 3067}#)
- ((lambda (#{tmp\ 3073}#)
- ((lambda (#{tmp\ 3074}#)
- (if #{tmp\ 3074}#
- (apply (lambda (#{_\ 3079}#
- #{args\ 3080}#
- #{e1\ 3081}#
- #{e2\ 3082}#)
- (call-with-values
- (lambda ()
- (#{lambda-formals\ 475}# #{args\ 3080}#))
- (lambda (#{req\ 3083}#
- #{opt\ 3084}#
- #{rest\ 3085}#
- #{kw\ 3086}#)
- (letrec ((#{lp\ 3094}#
- (lambda (#{body\ 3095}#
- #{meta\ 3096}#)
- ((lambda (#{tmp\ 3098}#)
- ((lambda (#{tmp\ 3099}#)
- (if (if #{tmp\ 3099}#
- (apply (lambda
(#{docstring\ 3103}#
- #{e1\
3104}#
- #{e2\
3105}#)
- (string?
-
(syntax->datum
-
#{docstring\ 3103}#)))
- #{tmp\ 3099}#)
- #f)
- (apply (lambda
(#{docstring\ 3109}#
- #{e1\
3110}#
- #{e2\
3111}#)
- (#{lp\ 3094}#
- (cons #{e1\
3110}#
- #{e2\
3111}#)
- (append
- #{meta\ 3096}#
- (list (cons
'documentation
-
(syntax->datum
-
#{docstring\ 3109}#))))))
- #{tmp\ 3099}#)
- ((lambda (#{tmp\ 3114}#)
- (if #{tmp\ 3114}#
- (apply (lambda (#{k\
3119}#
- #{v\
3120}#
- #{e1\
3121}#
- #{e2\
3122}#)
- (#{lp\ 3094}#
- (cons
#{e1\ 3121}#
-
#{e2\ 3122}#)
- (append
- #{meta\
3096}#
-
(syntax->datum
- (map
cons
-
#{k\ 3119}#
-
#{v\ 3120}#)))))
- #{tmp\ 3114}#)
- ((lambda (#{_\ 3127}#)
-
(#{chi-simple-lambda\ 477}#
- #{e\ 3063}#
- #{r\ 3064}#
- #{w\ 3065}#
- #{s\ 3066}#
- #{mod\ 3067}#
- #{req\ 3083}#
- #{rest\ 3085}#
- #{meta\ 3096}#
- #{body\ 3095}#))
- #{tmp\ 3098}#)))
- ($sc-dispatch
- #{tmp\ 3098}#
- '(#(vector
- #(each (any . any)))
- any
- .
- each-any)))))
- ($sc-dispatch
- #{tmp\ 3098}#
- '(any any . each-any))))
- #{body\ 3095}#))))
- (#{lp\ 3094}#
- (cons #{e1\ 3081}# #{e2\ 3082}#)
- '())))))
- #{tmp\ 3074}#)
- ((lambda (#{_\ 3129}#)
- (syntax-violation
- 'lambda
- "bad lambda"
- #{e\ 3063}#))
- #{tmp\ 3073}#)))
- ($sc-dispatch
- #{tmp\ 3073}#
- '(any any any . each-any))))
- #{e\ 3063}#)))
- (#{global-extend\ 368}#
- 'core
- 'lambda*
- (lambda (#{e\ 3130}#
- #{r\ 3131}#
- #{w\ 3132}#
- #{s\ 3133}#
- #{mod\ 3134}#)
- ((lambda (#{tmp\ 3140}#)
- ((lambda (#{tmp\ 3141}#)
- (if #{tmp\ 3141}#
- (apply (lambda (#{_\ 3146}#
- #{args\ 3147}#
- #{e1\ 3148}#
- #{e2\ 3149}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case\ 481}#
- #{e\ 3130}#
- #{r\ 3131}#
- #{w\ 3132}#
- #{s\ 3133}#
- #{mod\ 3134}#
- #{lambda*-formals\ 479}#
- (list (cons #{args\ 3147}#
- (cons #{e1\ 3148}#
- #{e2\ 3149}#)))))
- (lambda (#{meta\ 3151}# #{lcase\ 3152}#)
- (#{build-case-lambda\ 316}#
- #{s\ 3133}#
- #{meta\ 3151}#
- #{lcase\ 3152}#))))
- #{tmp\ 3141}#)
- ((lambda (#{_\ 3156}#)
- (syntax-violation
- 'lambda
- "bad lambda*"
- #{e\ 3130}#))
- #{tmp\ 3140}#)))
- ($sc-dispatch
- #{tmp\ 3140}#
- '(any any any . each-any))))
- #{e\ 3130}#)))
- (#{global-extend\ 368}#
- 'core
- 'case-lambda
- (lambda (#{e\ 3157}#
- #{r\ 3158}#
- #{w\ 3159}#
- #{s\ 3160}#
- #{mod\ 3161}#)
- ((lambda (#{tmp\ 3167}#)
- ((lambda (#{tmp\ 3168}#)
- (if #{tmp\ 3168}#
- (apply (lambda (#{_\ 3176}#
- #{args\ 3177}#
- #{e1\ 3178}#
- #{e2\ 3179}#
- #{args*\ 3180}#
- #{e1*\ 3181}#
- #{e2*\ 3182}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case\ 481}#
- #{e\ 3157}#
- #{r\ 3158}#
- #{w\ 3159}#
- #{s\ 3160}#
- #{mod\ 3161}#
- #{lambda-formals\ 475}#
- (cons (cons #{args\ 3177}#
- (cons #{e1\ 3178}# #{e2\ 3179}#))
- (map (lambda (#{tmp\ 3186}#
- #{tmp\ 3185}#
- #{tmp\ 3184}#)
- (cons #{tmp\ 3184}#
- (cons #{tmp\ 3185}#
- #{tmp\ 3186}#)))
- #{e2*\ 3182}#
- #{e1*\ 3181}#
- #{args*\ 3180}#))))
- (lambda (#{meta\ 3188}# #{lcase\ 3189}#)
- (#{build-case-lambda\ 316}#
- #{s\ 3160}#
- #{meta\ 3188}#
- #{lcase\ 3189}#))))
- #{tmp\ 3168}#)
- ((lambda (#{_\ 3193}#)
- (syntax-violation
- 'case-lambda
- "bad case-lambda"
- #{e\ 3157}#))
- #{tmp\ 3167}#)))
- ($sc-dispatch
- #{tmp\ 3167}#
- '(any (any any . each-any)
- .
- #(each (any any . each-any))))))
- #{e\ 3157}#)))
- (#{global-extend\ 368}#
- 'core
- 'case-lambda*
- (lambda (#{e\ 3194}#
- #{r\ 3195}#
- #{w\ 3196}#
- #{s\ 3197}#
- #{mod\ 3198}#)
- ((lambda (#{tmp\ 3204}#)
- ((lambda (#{tmp\ 3205}#)
- (if #{tmp\ 3205}#
- (apply (lambda (#{_\ 3213}#
- #{args\ 3214}#
- #{e1\ 3215}#
- #{e2\ 3216}#
- #{args*\ 3217}#
- #{e1*\ 3218}#
- #{e2*\ 3219}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case\ 481}#
- #{e\ 3194}#
- #{r\ 3195}#
- #{w\ 3196}#
- #{s\ 3197}#
- #{mod\ 3198}#
- #{lambda*-formals\ 479}#
- (cons (cons #{args\ 3214}#
- (cons #{e1\ 3215}# #{e2\ 3216}#))
- (map (lambda (#{tmp\ 3223}#
- #{tmp\ 3222}#
- #{tmp\ 3221}#)
- (cons #{tmp\ 3221}#
- (cons #{tmp\ 3222}#
- #{tmp\ 3223}#)))
- #{e2*\ 3219}#
- #{e1*\ 3218}#
- #{args*\ 3217}#))))
- (lambda (#{meta\ 3225}# #{lcase\ 3226}#)
- (#{build-case-lambda\ 316}#
- #{s\ 3197}#
- #{meta\ 3225}#
- #{lcase\ 3226}#))))
- #{tmp\ 3205}#)
- ((lambda (#{_\ 3230}#)
- (syntax-violation
- 'case-lambda
- "bad case-lambda*"
- #{e\ 3194}#))
- #{tmp\ 3204}#)))
- ($sc-dispatch
- #{tmp\ 3204}#
- '(any (any any . each-any)
- .
- #(each (any any . each-any))))))
- #{e\ 3194}#)))
- (#{global-extend\ 368}#
- 'core
- 'let
- (letrec ((#{chi-let\ 3232}#
- (lambda (#{e\ 3233}#
- #{r\ 3234}#
- #{w\ 3235}#
- #{s\ 3236}#
- #{mod\ 3237}#
- #{constructor\ 3238}#
- #{ids\ 3239}#
- #{vals\ 3240}#
- #{exps\ 3241}#)
- (if (not (#{valid-bound-ids?\ 435}# #{ids\ 3239}#))
+ #{tmp\ 2969}#
+ '(any any . any))))
+ (if (if #{tmp\ 2981}#
+ (@apply
+ (lambda (#{x\ 2985}#
+ #{dots\ 2986}#
+ #{y\ 2987}#)
+ (#{ellipsis?\ 2948}# #{dots\ 2986}#))
+ #{tmp\ 2981}#)
+ #f)
+ (@apply
+ (lambda (#{x\ 2991}#
+ #{dots\ 2992}#
+ #{y\ 2993}#)
+ (letrec*
+ ((#{f\ 2997}#
+ (lambda (#{y\ 2998}# #{k\ 2999}#)
+ (let ((#{tmp\ 3006}# #{y\ 2998}#))
+ (let ((#{tmp\ 3007}#
+ ($sc-dispatch
+ #{tmp\ 3006}#
+ '(any . any))))
+ (if (if #{tmp\ 3007}#
+ (@apply
+ (lambda (#{dots\ 3010}#
+ #{y\ 3011}#)
+ (#{ellipsis?\ 2948}#
+ #{dots\ 3010}#))
+ #{tmp\ 3007}#)
+ #f)
+ (@apply
+ (lambda (#{dots\ 3014}#
+ #{y\ 3015}#)
+ (#{f\ 2997}#
+ #{y\ 3015}#
+ (lambda (#{maps\
3016}#)
+ (call-with-values
+ (lambda ()
+ (#{k\ 2999}#
+ (cons '()
+ #{maps\
3016}#)))
+ (lambda (#{x\
3018}#
+ #{maps\
3019}#)
+ (if (null? (car
#{maps\ 3019}#))
+
(syntax-violation
+ 'syntax
+ "extra
ellipsis"
+ #{src\
2944}#)
+ (values
+
(#{gen-mappend\ 2840}#
+ #{x\ 3018}#
+ (car
#{maps\ 3019}#))
+ (cdr #{maps\
3019}#))))))))
+ #{tmp\ 3007}#)
+ (let ((#{_\ 3023}#
+ #{tmp\ 3006}#))
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax\ 2836}#
+ #{src\ 2944}#
+ #{y\ 2998}#
+ #{r\ 2946}#
+ #{maps\ 2947}#
+ #{ellipsis?\ 2948}#
+ #{mod\ 2949}#))
+ (lambda (#{y\ 3024}#
+ #{maps\ 3025}#)
+ (call-with-values
+ (lambda ()
+ (#{k\ 2999}#
+ #{maps\ 3025}#))
+ (lambda (#{x\ 3028}#
+ #{maps\
3029}#)
+ (values
+ (#{gen-append\
2846}#
+ #{x\ 3028}#
+ #{y\ 3024}#)
+ #{maps\
3029}#))))))))))))
+ (begin
+ (#{f\ 2997}#
+ #{y\ 2993}#
+ (lambda (#{maps\ 3000}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax\ 2836}#
+ #{src\ 2944}#
+ #{x\ 2991}#
+ #{r\ 2946}#
+ (cons '()
+ #{maps\ 3000}#)
+ #{ellipsis?\ 2948}#
+ #{mod\ 2949}#))
+ (lambda (#{x\ 3002}#
+ #{maps\ 3003}#)
+ (if (null? (car #{maps\
3003}#))
+ (syntax-violation
+ 'syntax
+ "extra ellipsis"
+ #{src\ 2944}#)
+ (values
+ (#{gen-map\ 2842}#
+ #{x\ 3002}#
+ (car #{maps\ 3003}#))
+ (cdr #{maps\
3003}#))))))))))
+ #{tmp\ 2981}#)
+ (let ((#{tmp\ 3032}#
+ ($sc-dispatch
+ #{tmp\ 2969}#
+ '(any . any))))
+ (if #{tmp\ 3032}#
+ (@apply
+ (lambda (#{x\ 3035}# #{y\ 3036}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax\ 2836}#
+ #{src\ 2944}#
+ #{x\ 3035}#
+ #{r\ 2946}#
+ #{maps\ 2947}#
+ #{ellipsis?\ 2948}#
+ #{mod\ 2949}#))
+ (lambda (#{x\ 3037}# #{maps\ 3038}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax\ 2836}#
+ #{src\ 2944}#
+ #{y\ 3036}#
+ #{r\ 2946}#
+ #{maps\ 3038}#
+ #{ellipsis?\ 2948}#
+ #{mod\ 2949}#))
+ (lambda (#{y\ 3041}#
+ #{maps\ 3042}#)
+ (values
+ (#{gen-cons\ 2844}#
+ #{x\ 3037}#
+ #{y\ 3041}#)
+ #{maps\ 3042}#))))))
+ #{tmp\ 3032}#)
+ (let ((#{tmp\ 3045}#
+ ($sc-dispatch
+ #{tmp\ 2969}#
+ '#(vector (any . each-any)))))
+ (if #{tmp\ 3045}#
+ (@apply
+ (lambda (#{e1\ 3048}# #{e2\ 3049}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax\ 2836}#
+ #{src\ 2944}#
+ (cons #{e1\ 3048}#
+ #{e2\ 3049}#)
+ #{r\ 2946}#
+ #{maps\ 2947}#
+ #{ellipsis?\ 2948}#
+ #{mod\ 2949}#))
+ (lambda (#{e\ 3051}#
+ #{maps\ 3052}#)
+ (values
+ (#{gen-vector\ 2848}#
+ #{e\ 3051}#)
+ #{maps\ 3052}#))))
+ #{tmp\ 3045}#)
+ (let ((#{_\ 3056}# #{tmp\ 2969}#))
+ (values
+ (list (quote quote) #{e\ 2945}#)
+ #{maps\ 2947}#)))))))))))))))
+ (begin
+ (lambda (#{e\ 3058}#
+ #{r\ 3059}#
+ #{w\ 3060}#
+ #{s\ 3061}#
+ #{mod\ 3062}#)
+ (begin
+ (let ((#{e\ 3069}#
+ (#{source-wrap\ 458}#
+ #{e\ 3058}#
+ #{w\ 3060}#
+ #{s\ 3061}#
+ #{mod\ 3062}#)))
+ (let ((#{tmp\ 3070}# #{e\ 3069}#))
+ (let ((#{tmp\ 3071}#
+ ($sc-dispatch
+ #{tmp\ 3070}#
+ '(any any))))
+ (if #{tmp\ 3071}#
+ (@apply
+ (lambda (#{_\ 3074}# #{x\ 3075}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax\ 2836}#
+ #{e\ 3069}#
+ #{x\ 3075}#
+ #{r\ 3059}#
+ '()
+ #{ellipsis?\ 488}#
+ #{mod\ 3062}#))
+ (lambda (#{e\ 3076}# #{maps\ 3077}#)
+ (#{regen\ 2850}# #{e\ 3076}#))))
+ #{tmp\ 3071}#)
+ (let ((#{_\ 3081}# #{tmp\ 3070}#))
+ (syntax-violation
+ 'syntax
+ "bad `syntax' form"
+ #{e\ 3069}#)))))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'lambda
+ (lambda (#{e\ 3082}#
+ #{r\ 3083}#
+ #{w\ 3084}#
+ #{s\ 3085}#
+ #{mod\ 3086}#)
+ (let ((#{tmp\ 3092}# #{e\ 3082}#))
+ (let ((#{tmp\ 3093}#
+ ($sc-dispatch
+ #{tmp\ 3092}#
+ '(any any any . each-any))))
+ (if #{tmp\ 3093}#
+ (@apply
+ (lambda (#{_\ 3098}#
+ #{args\ 3099}#
+ #{e1\ 3100}#
+ #{e2\ 3101}#)
+ (call-with-values
+ (lambda ()
+ (#{lambda-formals\ 490}# #{args\ 3099}#))
+ (lambda (#{req\ 3102}#
+ #{opt\ 3103}#
+ #{rest\ 3104}#
+ #{kw\ 3105}#)
+ (letrec*
+ ((#{lp\ 3113}#
+ (lambda (#{body\ 3114}# #{meta\ 3115}#)
+ (let ((#{tmp\ 3117}# #{body\ 3114}#))
+ (let ((#{tmp\ 3118}#
+ ($sc-dispatch
+ #{tmp\ 3117}#
+ '(any any . each-any))))
+ (if (if #{tmp\ 3118}#
+ (@apply
+ (lambda (#{docstring\ 3122}#
+ #{e1\ 3123}#
+ #{e2\ 3124}#)
+ (string?
+ (syntax->datum
+ #{docstring\ 3122}#)))
+ #{tmp\ 3118}#)
+ #f)
+ (@apply
+ (lambda (#{docstring\ 3128}#
+ #{e1\ 3129}#
+ #{e2\ 3130}#)
+ (#{lp\ 3113}#
+ (cons #{e1\ 3129}#
+ #{e2\ 3130}#)
+ (append
+ #{meta\ 3115}#
+ (list (cons 'documentation
+ (syntax->datum
+ #{docstring\
3128}#))))))
+ #{tmp\ 3118}#)
+ (let ((#{tmp\ 3133}#
+ ($sc-dispatch
+ #{tmp\ 3117}#
+ '(#(vector
+ #(each (any . any)))
+ any
+ .
+ each-any))))
+ (if #{tmp\ 3133}#
+ (@apply
+ (lambda (#{k\ 3138}#
+ #{v\ 3139}#
+ #{e1\ 3140}#
+ #{e2\ 3141}#)
+ (#{lp\ 3113}#
+ (cons #{e1\ 3140}#
+ #{e2\ 3141}#)
+ (append
+ #{meta\ 3115}#
+ (syntax->datum
+ (map cons
+ #{k\ 3138}#
+ #{v\ 3139}#)))))
+ #{tmp\ 3133}#)
+ (let ((#{_\ 3146}#
+ #{tmp\ 3117}#))
+ (#{chi-simple-lambda\ 492}#
+ #{e\ 3082}#
+ #{r\ 3083}#
+ #{w\ 3084}#
+ #{s\ 3085}#
+ #{mod\ 3086}#
+ #{req\ 3102}#
+ #{rest\ 3104}#
+ #{meta\ 3115}#
+ #{body\ 3114}#))))))))))
+ (begin
+ (#{lp\ 3113}#
+ (cons #{e1\ 3100}# #{e2\ 3101}#)
+ '()))))))
+ #{tmp\ 3093}#)
+ (let ((#{_\ 3148}# #{tmp\ 3092}#))
+ (syntax-violation
+ 'lambda
+ "bad lambda"
+ #{e\ 3082}#)))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'lambda*
+ (lambda (#{e\ 3149}#
+ #{r\ 3150}#
+ #{w\ 3151}#
+ #{s\ 3152}#
+ #{mod\ 3153}#)
+ (let ((#{tmp\ 3159}# #{e\ 3149}#))
+ (let ((#{tmp\ 3160}#
+ ($sc-dispatch
+ #{tmp\ 3159}#
+ '(any any any . each-any))))
+ (if #{tmp\ 3160}#
+ (@apply
+ (lambda (#{_\ 3165}#
+ #{args\ 3166}#
+ #{e1\ 3167}#
+ #{e2\ 3168}#)
+ (call-with-values
+ (lambda ()
+ (#{chi-lambda-case\ 496}#
+ #{e\ 3149}#
+ #{r\ 3150}#
+ #{w\ 3151}#
+ #{s\ 3152}#
+ #{mod\ 3153}#
+ #{lambda*-formals\ 494}#
+ (list (cons #{args\ 3166}#
+ (cons #{e1\ 3167}#
+ #{e2\ 3168}#)))))
+ (lambda (#{meta\ 3170}# #{lcase\ 3171}#)
+ (#{build-case-lambda\ 331}#
+ #{s\ 3152}#
+ #{meta\ 3170}#
+ #{lcase\ 3171}#))))
+ #{tmp\ 3160}#)
+ (let ((#{_\ 3175}# #{tmp\ 3159}#))
+ (syntax-violation
+ 'lambda
+ "bad lambda*"
+ #{e\ 3149}#)))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'case-lambda
+ (lambda (#{e\ 3176}#
+ #{r\ 3177}#
+ #{w\ 3178}#
+ #{s\ 3179}#
+ #{mod\ 3180}#)
+ (let ((#{tmp\ 3186}# #{e\ 3176}#))
+ (let ((#{tmp\ 3187}#
+ ($sc-dispatch
+ #{tmp\ 3186}#
+ '(any (any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if #{tmp\ 3187}#
+ (@apply
+ (lambda (#{_\ 3195}#
+ #{args\ 3196}#
+ #{e1\ 3197}#
+ #{e2\ 3198}#
+ #{args*\ 3199}#
+ #{e1*\ 3200}#
+ #{e2*\ 3201}#)
+ (call-with-values
+ (lambda ()
+ (#{chi-lambda-case\ 496}#
+ #{e\ 3176}#
+ #{r\ 3177}#
+ #{w\ 3178}#
+ #{s\ 3179}#
+ #{mod\ 3180}#
+ #{lambda-formals\ 490}#
+ (cons (cons #{args\ 3196}#
+ (cons #{e1\ 3197}# #{e2\ 3198}#))
+ (map (lambda (#{tmp\ 3205}#
+ #{tmp\ 3204}#
+ #{tmp\ 3203}#)
+ (cons #{tmp\ 3203}#
+ (cons #{tmp\ 3204}#
+ #{tmp\ 3205}#)))
+ #{e2*\ 3201}#
+ #{e1*\ 3200}#
+ #{args*\ 3199}#))))
+ (lambda (#{meta\ 3207}# #{lcase\ 3208}#)
+ (#{build-case-lambda\ 331}#
+ #{s\ 3179}#
+ #{meta\ 3207}#
+ #{lcase\ 3208}#))))
+ #{tmp\ 3187}#)
+ (let ((#{_\ 3212}# #{tmp\ 3186}#))
+ (syntax-violation
+ 'case-lambda
+ "bad case-lambda"
+ #{e\ 3176}#)))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'case-lambda*
+ (lambda (#{e\ 3213}#
+ #{r\ 3214}#
+ #{w\ 3215}#
+ #{s\ 3216}#
+ #{mod\ 3217}#)
+ (let ((#{tmp\ 3223}# #{e\ 3213}#))
+ (let ((#{tmp\ 3224}#
+ ($sc-dispatch
+ #{tmp\ 3223}#
+ '(any (any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if #{tmp\ 3224}#
+ (@apply
+ (lambda (#{_\ 3232}#
+ #{args\ 3233}#
+ #{e1\ 3234}#
+ #{e2\ 3235}#
+ #{args*\ 3236}#
+ #{e1*\ 3237}#
+ #{e2*\ 3238}#)
+ (call-with-values
+ (lambda ()
+ (#{chi-lambda-case\ 496}#
+ #{e\ 3213}#
+ #{r\ 3214}#
+ #{w\ 3215}#
+ #{s\ 3216}#
+ #{mod\ 3217}#
+ #{lambda*-formals\ 494}#
+ (cons (cons #{args\ 3233}#
+ (cons #{e1\ 3234}# #{e2\ 3235}#))
+ (map (lambda (#{tmp\ 3242}#
+ #{tmp\ 3241}#
+ #{tmp\ 3240}#)
+ (cons #{tmp\ 3240}#
+ (cons #{tmp\ 3241}#
+ #{tmp\ 3242}#)))
+ #{e2*\ 3238}#
+ #{e1*\ 3237}#
+ #{args*\ 3236}#))))
+ (lambda (#{meta\ 3244}# #{lcase\ 3245}#)
+ (#{build-case-lambda\ 331}#
+ #{s\ 3216}#
+ #{meta\ 3244}#
+ #{lcase\ 3245}#))))
+ #{tmp\ 3224}#)
+ (let ((#{_\ 3249}# #{tmp\ 3223}#))
+ (syntax-violation
+ 'case-lambda
+ "bad case-lambda*"
+ #{e\ 3213}#)))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'let
+ (letrec*
+ ((#{chi-let\ 3251}#
+ (lambda (#{e\ 3252}#
+ #{r\ 3253}#
+ #{w\ 3254}#
+ #{s\ 3255}#
+ #{mod\ 3256}#
+ #{constructor\ 3257}#
+ #{ids\ 3258}#
+ #{vals\ 3259}#
+ #{exps\ 3260}#)
+ (if (not (#{valid-bound-ids?\ 450}# #{ids\ 3258}#))
(syntax-violation
'let
"duplicate bound variable"
- #{e\ 3233}#)
- (let ((#{labels\ 3253}#
- (#{gen-labels\ 390}# #{ids\ 3239}#))
- (#{new-vars\ 3254}#
- (map #{gen-var\ 485}# #{ids\ 3239}#)))
- (let ((#{nw\ 3257}#
- (#{make-binding-wrap\ 419}#
- #{ids\ 3239}#
- #{labels\ 3253}#
- #{w\ 3235}#))
- (#{nr\ 3258}#
- (#{extend-var-env\ 362}#
- #{labels\ 3253}#
- #{new-vars\ 3254}#
- #{r\ 3234}#)))
- (#{constructor\ 3238}#
- #{s\ 3236}#
- (map syntax->datum #{ids\ 3239}#)
- #{new-vars\ 3254}#
- (map (lambda (#{x\ 3259}#)
- (#{chi\ 457}#
- #{x\ 3259}#
- #{r\ 3234}#
- #{w\ 3235}#
- #{mod\ 3237}#))
- #{vals\ 3240}#)
- (#{chi-body\ 465}#
- #{exps\ 3241}#
- (#{source-wrap\ 443}#
- #{e\ 3233}#
- #{nw\ 3257}#
- #{s\ 3236}#
- #{mod\ 3237}#)
- #{nr\ 3258}#
- #{nw\ 3257}#
- #{mod\ 3237}#))))))))
- (lambda (#{e\ 3261}#
- #{r\ 3262}#
- #{w\ 3263}#
- #{s\ 3264}#
- #{mod\ 3265}#)
- ((lambda (#{tmp\ 3271}#)
- ((lambda (#{tmp\ 3272}#)
- (if (if #{tmp\ 3272}#
- (apply (lambda (#{_\ 3278}#
- #{id\ 3279}#
- #{val\ 3280}#
- #{e1\ 3281}#
- #{e2\ 3282}#)
- (and-map #{id?\ 372}# #{id\ 3279}#))
- #{tmp\ 3272}#)
- #f)
- (apply (lambda (#{_\ 3289}#
- #{id\ 3290}#
- #{val\ 3291}#
- #{e1\ 3292}#
- #{e2\ 3293}#)
- (#{chi-let\ 3232}#
- #{e\ 3261}#
- #{r\ 3262}#
- #{w\ 3263}#
- #{s\ 3264}#
- #{mod\ 3265}#
- #{build-let\ 326}#
- #{id\ 3290}#
- #{val\ 3291}#
- (cons #{e1\ 3292}# #{e2\ 3293}#)))
- #{tmp\ 3272}#)
- ((lambda (#{tmp\ 3297}#)
- (if (if #{tmp\ 3297}#
- (apply (lambda (#{_\ 3304}#
- #{f\ 3305}#
- #{id\ 3306}#
- #{val\ 3307}#
- #{e1\ 3308}#
- #{e2\ 3309}#)
- (if (#{id?\ 372}# #{f\ 3305}#)
- (and-map #{id?\ 372}# #{id\ 3306}#)
+ #{e\ 3252}#)
+ (begin
+ (let ((#{labels\ 3272}#
+ (#{gen-labels\ 405}# #{ids\ 3258}#))
+ (#{new-vars\ 3273}#
+ (map #{gen-var\ 500}# #{ids\ 3258}#)))
+ (begin
+ (let ((#{nw\ 3276}#
+ (#{make-binding-wrap\ 434}#
+ #{ids\ 3258}#
+ #{labels\ 3272}#
+ #{w\ 3254}#))
+ (#{nr\ 3277}#
+ (#{extend-var-env\ 377}#
+ #{labels\ 3272}#
+ #{new-vars\ 3273}#
+ #{r\ 3253}#)))
+ (#{constructor\ 3257}#
+ #{s\ 3255}#
+ (map syntax->datum #{ids\ 3258}#)
+ #{new-vars\ 3273}#
+ (map (lambda (#{x\ 3278}#)
+ (#{chi\ 472}#
+ #{x\ 3278}#
+ #{r\ 3253}#
+ #{w\ 3254}#
+ #{mod\ 3256}#))
+ #{vals\ 3259}#)
+ (#{chi-body\ 480}#
+ #{exps\ 3260}#
+ (#{source-wrap\ 458}#
+ #{e\ 3252}#
+ #{nw\ 3276}#
+ #{s\ 3255}#
+ #{mod\ 3256}#)
+ #{nr\ 3277}#
+ #{nw\ 3276}#
+ #{mod\ 3256}#))))))))))
+ (begin
+ (lambda (#{e\ 3280}#
+ #{r\ 3281}#
+ #{w\ 3282}#
+ #{s\ 3283}#
+ #{mod\ 3284}#)
+ (let ((#{tmp\ 3290}# #{e\ 3280}#))
+ (let ((#{tmp\ 3291}#
+ ($sc-dispatch
+ #{tmp\ 3290}#
+ '(any #(each (any any)) any . each-any))))
+ (if (if #{tmp\ 3291}#
+ (@apply
+ (lambda (#{_\ 3297}#
+ #{id\ 3298}#
+ #{val\ 3299}#
+ #{e1\ 3300}#
+ #{e2\ 3301}#)
+ (and-map #{id?\ 387}# #{id\ 3298}#))
+ #{tmp\ 3291}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 3308}#
+ #{id\ 3309}#
+ #{val\ 3310}#
+ #{e1\ 3311}#
+ #{e2\ 3312}#)
+ (#{chi-let\ 3251}#
+ #{e\ 3280}#
+ #{r\ 3281}#
+ #{w\ 3282}#
+ #{s\ 3283}#
+ #{mod\ 3284}#
+ #{build-let\ 341}#
+ #{id\ 3309}#
+ #{val\ 3310}#
+ (cons #{e1\ 3311}# #{e2\ 3312}#)))
+ #{tmp\ 3291}#)
+ (let ((#{tmp\ 3316}#
+ ($sc-dispatch
+ #{tmp\ 3290}#
+ '(any any
+ #(each (any any))
+ any
+ .
+ each-any))))
+ (if (if #{tmp\ 3316}#
+ (@apply
+ (lambda (#{_\ 3323}#
+ #{f\ 3324}#
+ #{id\ 3325}#
+ #{val\ 3326}#
+ #{e1\ 3327}#
+ #{e2\ 3328}#)
+ (if (#{id?\ 387}# #{f\ 3324}#)
+ (and-map #{id?\ 387}# #{id\ 3325}#)
#f))
- #{tmp\ 3297}#)
- #f)
- (apply (lambda (#{_\ 3319}#
- #{f\ 3320}#
- #{id\ 3321}#
- #{val\ 3322}#
- #{e1\ 3323}#
- #{e2\ 3324}#)
- (#{chi-let\ 3232}#
- #{e\ 3261}#
- #{r\ 3262}#
- #{w\ 3263}#
- #{s\ 3264}#
- #{mod\ 3265}#
- #{build-named-let\ 328}#
- (cons #{f\ 3320}# #{id\ 3321}#)
- #{val\ 3322}#
- (cons #{e1\ 3323}# #{e2\ 3324}#)))
- #{tmp\ 3297}#)
- ((lambda (#{_\ 3329}#)
- (syntax-violation
- 'let
- "bad let"
- (#{source-wrap\ 443}#
- #{e\ 3261}#
- #{w\ 3263}#
- #{s\ 3264}#
- #{mod\ 3265}#)))
- #{tmp\ 3271}#)))
- ($sc-dispatch
- #{tmp\ 3271}#
- '(any any #(each (any any)) any . each-any)))))
- ($sc-dispatch
- #{tmp\ 3271}#
- '(any #(each (any any)) any . each-any))))
- #{e\ 3261}#))))
- (#{global-extend\ 368}#
- 'core
- 'letrec
- (lambda (#{e\ 3330}#
- #{r\ 3331}#
- #{w\ 3332}#
- #{s\ 3333}#
- #{mod\ 3334}#)
- ((lambda (#{tmp\ 3340}#)
- ((lambda (#{tmp\ 3341}#)
- (if (if #{tmp\ 3341}#
- (apply (lambda (#{_\ 3347}#
- #{id\ 3348}#
- #{val\ 3349}#
- #{e1\ 3350}#
- #{e2\ 3351}#)
- (and-map #{id?\ 372}# #{id\ 3348}#))
- #{tmp\ 3341}#)
- #f)
- (apply (lambda (#{_\ 3358}#
- #{id\ 3359}#
- #{val\ 3360}#
- #{e1\ 3361}#
- #{e2\ 3362}#)
- (let ((#{ids\ 3364}# #{id\ 3359}#))
- (if (not (#{valid-bound-ids?\ 435}#
- #{ids\ 3364}#))
- (syntax-violation
- 'letrec
- "duplicate bound variable"
- #{e\ 3330}#)
- (let ((#{labels\ 3368}#
- (#{gen-labels\ 390}# #{ids\ 3364}#))
- (#{new-vars\ 3369}#
- (map #{gen-var\ 485}# #{ids\ 3364}#)))
- (let ((#{w\ 3372}#
- (#{make-binding-wrap\ 419}#
- #{ids\ 3364}#
- #{labels\ 3368}#
- #{w\ 3332}#))
- (#{r\ 3373}#
- (#{extend-var-env\ 362}#
- #{labels\ 3368}#
- #{new-vars\ 3369}#
- #{r\ 3331}#)))
- (#{build-letrec\ 330}#
- #{s\ 3333}#
- (map syntax->datum #{ids\ 3364}#)
- #{new-vars\ 3369}#
- (map (lambda (#{x\ 3374}#)
- (#{chi\ 457}#
- #{x\ 3374}#
- #{r\ 3373}#
- #{w\ 3372}#
- #{mod\ 3334}#))
- #{val\ 3360}#)
- (#{chi-body\ 465}#
- (cons #{e1\ 3361}# #{e2\ 3362}#)
- (#{source-wrap\ 443}#
- #{e\ 3330}#
- #{w\ 3372}#
- #{s\ 3333}#
- #{mod\ 3334}#)
- #{r\ 3373}#
- #{w\ 3372}#
- #{mod\ 3334}#)))))))
- #{tmp\ 3341}#)
- ((lambda (#{_\ 3379}#)
- (syntax-violation
- 'letrec
- "bad letrec"
- (#{source-wrap\ 443}#
- #{e\ 3330}#
- #{w\ 3332}#
- #{s\ 3333}#
- #{mod\ 3334}#)))
- #{tmp\ 3340}#)))
- ($sc-dispatch
- #{tmp\ 3340}#
- '(any #(each (any any)) any . each-any))))
- #{e\ 3330}#)))
- (#{global-extend\ 368}#
- 'core
- 'set!
- (lambda (#{e\ 3380}#
- #{r\ 3381}#
- #{w\ 3382}#
- #{s\ 3383}#
- #{mod\ 3384}#)
- ((lambda (#{tmp\ 3390}#)
- ((lambda (#{tmp\ 3391}#)
- (if (if #{tmp\ 3391}#
- (apply (lambda (#{_\ 3395}# #{id\ 3396}# #{val\ 3397}#)
- (#{id?\ 372}# #{id\ 3396}#))
- #{tmp\ 3391}#)
- #f)
- (apply (lambda (#{_\ 3401}# #{id\ 3402}# #{val\ 3403}#)
- (let ((#{val\ 3406}#
- (#{chi\ 457}#
- #{val\ 3403}#
- #{r\ 3381}#
- #{w\ 3382}#
- #{mod\ 3384}#))
- (#{n\ 3407}#
- (#{id-var-name\ 429}#
- #{id\ 3402}#
- #{w\ 3382}#)))
- (let ((#{b\ 3409}#
- (#{lookup\ 366}#
- #{n\ 3407}#
- #{r\ 3381}#
- #{mod\ 3384}#)))
- (let ((#{atom-key\ 3412}#
- (#{binding-type\ 355}# #{b\ 3409}#)))
- (if (memv #{atom-key\ 3412}#
- '(lexical))
- (#{build-lexical-assignment\ 302}#
- #{s\ 3383}#
- (syntax->datum #{id\ 3402}#)
- (#{binding-value\ 357}# #{b\ 3409}#)
- #{val\ 3406}#)
- (if (memv #{atom-key\ 3412}#
- '(global))
- (#{build-global-assignment\ 308}#
- #{s\ 3383}#
- #{n\ 3407}#
- #{val\ 3406}#
- #{mod\ 3384}#)
- (if (memv #{atom-key\ 3412}#
- '(displaced-lexical))
- (syntax-violation
- 'set!
- "identifier out of context"
- (#{wrap\ 441}#
- #{id\ 3402}#
- #{w\ 3382}#
- #{mod\ 3384}#))
- (syntax-violation
- 'set!
- "bad set!"
- (#{source-wrap\ 443}#
- #{e\ 3380}#
- #{w\ 3382}#
- #{s\ 3383}#
- #{mod\ 3384}#)))))))))
- #{tmp\ 3391}#)
- ((lambda (#{tmp\ 3417}#)
- (if #{tmp\ 3417}#
- (apply (lambda (#{_\ 3422}#
- #{head\ 3423}#
- #{tail\ 3424}#
- #{val\ 3425}#)
- (call-with-values
- (lambda ()
- (#{syntax-type\ 453}#
- #{head\ 3423}#
- #{r\ 3381}#
- '(())
- #f
- #f
- #{mod\ 3384}#
- #t))
- (lambda (#{type\ 3428}#
- #{value\ 3429}#
- #{ee\ 3430}#
- #{ww\ 3431}#
- #{ss\ 3432}#
- #{modmod\ 3433}#)
- (if (memv #{type\ 3428}#
- '(module-ref))
- (let ((#{val\ 3442}#
- (#{chi\ 457}#
- #{val\ 3425}#
- #{r\ 3381}#
- #{w\ 3382}#
- #{mod\ 3384}#)))
+ #{tmp\ 3316}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 3338}#
+ #{f\ 3339}#
+ #{id\ 3340}#
+ #{val\ 3341}#
+ #{e1\ 3342}#
+ #{e2\ 3343}#)
+ (#{chi-let\ 3251}#
+ #{e\ 3280}#
+ #{r\ 3281}#
+ #{w\ 3282}#
+ #{s\ 3283}#
+ #{mod\ 3284}#
+ #{build-named-let\ 343}#
+ (cons #{f\ 3339}# #{id\ 3340}#)
+ #{val\ 3341}#
+ (cons #{e1\ 3342}# #{e2\ 3343}#)))
+ #{tmp\ 3316}#)
+ (let ((#{_\ 3348}# #{tmp\ 3290}#))
+ (syntax-violation
+ 'let
+ "bad let"
+ (#{source-wrap\ 458}#
+ #{e\ 3280}#
+ #{w\ 3282}#
+ #{s\ 3283}#
+ #{mod\ 3284}#))))))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'letrec
+ (lambda (#{e\ 3349}#
+ #{r\ 3350}#
+ #{w\ 3351}#
+ #{s\ 3352}#
+ #{mod\ 3353}#)
+ (let ((#{tmp\ 3359}# #{e\ 3349}#))
+ (let ((#{tmp\ 3360}#
+ ($sc-dispatch
+ #{tmp\ 3359}#
+ '(any #(each (any any)) any . each-any))))
+ (if (if #{tmp\ 3360}#
+ (@apply
+ (lambda (#{_\ 3366}#
+ #{id\ 3367}#
+ #{val\ 3368}#
+ #{e1\ 3369}#
+ #{e2\ 3370}#)
+ (and-map #{id?\ 387}# #{id\ 3367}#))
+ #{tmp\ 3360}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 3377}#
+ #{id\ 3378}#
+ #{val\ 3379}#
+ #{e1\ 3380}#
+ #{e2\ 3381}#)
+ (begin
+ (let ((#{ids\ 3383}# #{id\ 3378}#))
+ (if (not (#{valid-bound-ids?\ 450}#
+ #{ids\ 3383}#))
+ (syntax-violation
+ 'letrec
+ "duplicate bound variable"
+ #{e\ 3349}#)
+ (begin
+ (let ((#{labels\ 3387}#
+ (#{gen-labels\ 405}# #{ids\ 3383}#))
+ (#{new-vars\ 3388}#
+ (map #{gen-var\ 500}#
+ #{ids\ 3383}#)))
+ (begin
+ (let ((#{w\ 3391}#
+ (#{make-binding-wrap\ 434}#
+ #{ids\ 3383}#
+ #{labels\ 3387}#
+ #{w\ 3351}#))
+ (#{r\ 3392}#
+ (#{extend-var-env\ 377}#
+ #{labels\ 3387}#
+ #{new-vars\ 3388}#
+ #{r\ 3350}#)))
+ (#{build-letrec\ 345}#
+ #{s\ 3352}#
+ #f
+ (map syntax->datum #{ids\ 3383}#)
+ #{new-vars\ 3388}#
+ (map (lambda (#{x\ 3393}#)
+ (#{chi\ 472}#
+ #{x\ 3393}#
+ #{r\ 3392}#
+ #{w\ 3391}#
+ #{mod\ 3353}#))
+ #{val\ 3379}#)
+ (#{chi-body\ 480}#
+ (cons #{e1\ 3380}# #{e2\ 3381}#)
+ (#{source-wrap\ 458}#
+ #{e\ 3349}#
+ #{w\ 3391}#
+ #{s\ 3352}#
+ #{mod\ 3353}#)
+ #{r\ 3392}#
+ #{w\ 3391}#
+ #{mod\ 3353}#))))))))))
+ #{tmp\ 3360}#)
+ (let ((#{_\ 3398}# #{tmp\ 3359}#))
+ (syntax-violation
+ 'letrec
+ "bad letrec"
+ (#{source-wrap\ 458}#
+ #{e\ 3349}#
+ #{w\ 3351}#
+ #{s\ 3352}#
+ #{mod\ 3353}#))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'letrec*
+ (lambda (#{e\ 3399}#
+ #{r\ 3400}#
+ #{w\ 3401}#
+ #{s\ 3402}#
+ #{mod\ 3403}#)
+ (let ((#{tmp\ 3409}# #{e\ 3399}#))
+ (let ((#{tmp\ 3410}#
+ ($sc-dispatch
+ #{tmp\ 3409}#
+ '(any #(each (any any)) any . each-any))))
+ (if (if #{tmp\ 3410}#
+ (@apply
+ (lambda (#{_\ 3416}#
+ #{id\ 3417}#
+ #{val\ 3418}#
+ #{e1\ 3419}#
+ #{e2\ 3420}#)
+ (and-map #{id?\ 387}# #{id\ 3417}#))
+ #{tmp\ 3410}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 3427}#
+ #{id\ 3428}#
+ #{val\ 3429}#
+ #{e1\ 3430}#
+ #{e2\ 3431}#)
+ (begin
+ (let ((#{ids\ 3433}# #{id\ 3428}#))
+ (if (not (#{valid-bound-ids?\ 450}#
+ #{ids\ 3433}#))
+ (syntax-violation
+ 'letrec*
+ "duplicate bound variable"
+ #{e\ 3399}#)
+ (begin
+ (let ((#{labels\ 3437}#
+ (#{gen-labels\ 405}# #{ids\ 3433}#))
+ (#{new-vars\ 3438}#
+ (map #{gen-var\ 500}#
+ #{ids\ 3433}#)))
+ (begin
+ (let ((#{w\ 3441}#
+ (#{make-binding-wrap\ 434}#
+ #{ids\ 3433}#
+ #{labels\ 3437}#
+ #{w\ 3401}#))
+ (#{r\ 3442}#
+ (#{extend-var-env\ 377}#
+ #{labels\ 3437}#
+ #{new-vars\ 3438}#
+ #{r\ 3400}#)))
+ (#{build-letrec\ 345}#
+ #{s\ 3402}#
+ #t
+ (map syntax->datum #{ids\ 3433}#)
+ #{new-vars\ 3438}#
+ (map (lambda (#{x\ 3443}#)
+ (#{chi\ 472}#
+ #{x\ 3443}#
+ #{r\ 3442}#
+ #{w\ 3441}#
+ #{mod\ 3403}#))
+ #{val\ 3429}#)
+ (#{chi-body\ 480}#
+ (cons #{e1\ 3430}# #{e2\ 3431}#)
+ (#{source-wrap\ 458}#
+ #{e\ 3399}#
+ #{w\ 3441}#
+ #{s\ 3402}#
+ #{mod\ 3403}#)
+ #{r\ 3442}#
+ #{w\ 3441}#
+ #{mod\ 3403}#))))))))))
+ #{tmp\ 3410}#)
+ (let ((#{_\ 3448}# #{tmp\ 3409}#))
+ (syntax-violation
+ 'letrec*
+ "bad letrec*"
+ (#{source-wrap\ 458}#
+ #{e\ 3399}#
+ #{w\ 3401}#
+ #{s\ 3402}#
+ #{mod\ 3403}#))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'set!
+ (lambda (#{e\ 3449}#
+ #{r\ 3450}#
+ #{w\ 3451}#
+ #{s\ 3452}#
+ #{mod\ 3453}#)
+ (let ((#{tmp\ 3459}# #{e\ 3449}#))
+ (let ((#{tmp\ 3460}#
+ ($sc-dispatch
+ #{tmp\ 3459}#
+ '(any any any))))
+ (if (if #{tmp\ 3460}#
+ (@apply
+ (lambda (#{_\ 3464}# #{id\ 3465}# #{val\ 3466}#)
+ (#{id?\ 387}# #{id\ 3465}#))
+ #{tmp\ 3460}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 3470}# #{id\ 3471}# #{val\ 3472}#)
+ (begin
+ (let ((#{val\ 3475}#
+ (#{chi\ 472}#
+ #{val\ 3472}#
+ #{r\ 3450}#
+ #{w\ 3451}#
+ #{mod\ 3453}#))
+ (#{n\ 3476}#
+ (#{id-var-name\ 444}#
+ #{id\ 3471}#
+ #{w\ 3451}#)))
+ (begin
+ (let ((#{b\ 3478}#
+ (#{lookup\ 381}#
+ #{n\ 3476}#
+ #{r\ 3450}#
+ #{mod\ 3453}#)))
+ (begin
+ (let ((#{atom-key\ 3481}#
+ (#{binding-type\ 370}#
+ #{b\ 3478}#)))
+ (if (eqv? #{atom-key\ 3481}#
+ 'lexical)
+ (#{build-lexical-assignment\ 317}#
+ #{s\ 3452}#
+ (syntax->datum #{id\ 3471}#)
+ (#{binding-value\ 372}# #{b\ 3478}#)
+ #{val\ 3475}#)
+ (if (eqv? #{atom-key\ 3481}#
+ 'global)
+ (#{build-global-assignment\ 323}#
+ #{s\ 3452}#
+ #{n\ 3476}#
+ #{val\ 3475}#
+ #{mod\ 3453}#)
+ (if (eqv? #{atom-key\ 3481}#
+ 'displaced-lexical)
+ (syntax-violation
+ 'set!
+ "identifier out of context"
+ (#{wrap\ 456}#
+ #{id\ 3471}#
+ #{w\ 3451}#
+ #{mod\ 3453}#))
+ (syntax-violation
+ 'set!
+ "bad set!"
+ (#{source-wrap\ 458}#
+ #{e\ 3449}#
+ #{w\ 3451}#
+ #{s\ 3452}#
+ #{mod\ 3453}#))))))))))))
+ #{tmp\ 3460}#)
+ (let ((#{tmp\ 3486}#
+ ($sc-dispatch
+ #{tmp\ 3459}#
+ '(any (any . each-any) any))))
+ (if #{tmp\ 3486}#
+ (@apply
+ (lambda (#{_\ 3491}#
+ #{head\ 3492}#
+ #{tail\ 3493}#
+ #{val\ 3494}#)
+ (call-with-values
+ (lambda ()
+ (#{syntax-type\ 468}#
+ #{head\ 3492}#
+ #{r\ 3450}#
+ '(())
+ #f
+ #f
+ #{mod\ 3453}#
+ #t))
+ (lambda (#{type\ 3497}#
+ #{value\ 3498}#
+ #{ee\ 3499}#
+ #{ww\ 3500}#
+ #{ss\ 3501}#
+ #{modmod\ 3502}#)
+ (if (eqv? #{type\ 3497}# (quote module-ref))
+ (begin
+ (let ((#{val\ 3511}#
+ (#{chi\ 472}#
+ #{val\ 3494}#
+ #{r\ 3450}#
+ #{w\ 3451}#
+ #{mod\ 3453}#)))
(call-with-values
(lambda ()
- (#{value\ 3429}#
- (cons #{head\ 3423}#
- #{tail\ 3424}#)
- #{r\ 3381}#
- #{w\ 3382}#))
- (lambda (#{e\ 3444}#
- #{r\ 3445}#
- #{w\ 3446}#
- #{s*\ 3447}#
- #{mod\ 3448}#)
- ((lambda (#{tmp\ 3454}#)
- ((lambda (#{tmp\ 3455}#)
- (if (if #{tmp\ 3455}#
- (apply (lambda (#{e\
3457}#)
- (#{id?\ 372}#
- #{e\
3457}#))
- #{tmp\ 3455}#)
- #f)
- (apply (lambda (#{e\
3459}#)
-
(#{build-global-assignment\ 308}#
- #{s\ 3383}#
- (syntax->datum
- #{e\ 3459}#)
- #{val\ 3442}#
- #{mod\ 3448}#))
- #{tmp\ 3455}#)
- (syntax-violation
- #f
- "source expression
failed to match any pattern"
- #{tmp\ 3454}#)))
- (list #{tmp\ 3454}#)))
- #{e\ 3444}#))))
- (#{build-application\ 294}#
- #{s\ 3383}#
- (#{chi\ 457}#
- (list '#(syntax-object
- setter
+ (#{value\ 3498}#
+ (cons #{head\ 3492}#
+ #{tail\ 3493}#)
+ #{r\ 3450}#
+ #{w\ 3451}#))
+ (lambda (#{e\ 3513}#
+ #{r\ 3514}#
+ #{w\ 3515}#
+ #{s*\ 3516}#
+ #{mod\ 3517}#)
+ (let ((#{tmp\ 3523}# #{e\ 3513}#))
+ (let ((#{tmp\ 3524}#
+ (list #{tmp\ 3523}#)))
+ (if (if #{tmp\ 3524}#
+ (@apply
+ (lambda (#{e\ 3526}#)
+ (#{id?\ 387}#
+ #{e\ 3526}#))
+ #{tmp\ 3524}#)
+ #f)
+ (@apply
+ (lambda (#{e\ 3528}#)
+
(#{build-global-assignment\ 323}#
+ #{s\ 3452}#
+ (syntax->datum
+ #{e\ 3528}#)
+ #{val\ 3511}#
+ #{mod\ 3517}#))
+ #{tmp\ 3524}#)
+ (syntax-violation
+ #f
+ "source expression failed
to match any pattern"
+ #{tmp\ 3523}#))))))))
+ (#{build-application\ 309}#
+ #{s\ 3452}#
+ (#{chi\ 472}#
+ (list '#(syntax-object
+ setter
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(type
+ value
+ ee
+ ww
+ ss
+ modmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i3503"
+ "i3504"
+ "i3505"
+ "i3506"
+ "i3507"
+ "i3508"))
+ #(ribcage
+ #(_ head tail val)
+ #((top) (top) (top) (top))
+ #("i3487"
+ "i3488"
+ "i3489"
+ "i3490"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e r w s mod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i3454"
+ "i3455"
+ "i3456"
+ "i3457"
+ "i3458"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+ set-syntax-object-module!
+ set-syntax-object-wrap!
+
set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+ syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+ build-global-definition
+ maybe-name-value!
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+ and-map*)
+ ((top) (top) (top) (top))
+ ("i38" "i37" "i36" "i34")))
+ (hygiene guile))
+ #{head\ 3492}#)
+ #{r\ 3450}#
+ #{w\ 3451}#
+ #{mod\ 3453}#)
+ (map (lambda (#{e\ 3530}#)
+ (#{chi\ 472}#
+ #{e\ 3530}#
+ #{r\ 3450}#
+ #{w\ 3451}#
+ #{mod\ 3453}#))
+ (append
+ #{tail\ 3493}#
+ (list #{val\ 3494}#))))))))
+ #{tmp\ 3486}#)
+ (let ((#{_\ 3534}# #{tmp\ 3459}#))
+ (syntax-violation
+ 'set!
+ "bad set!"
+ (#{source-wrap\ 458}#
+ #{e\ 3449}#
+ #{w\ 3451}#
+ #{s\ 3452}#
+ #{mod\ 3453}#))))))))))
+ (#{global-extend\ 383}#
+ 'module-ref
+ '@
+ (lambda (#{e\ 3535}# #{r\ 3536}# #{w\ 3537}#)
+ (let ((#{tmp\ 3541}# #{e\ 3535}#))
+ (let ((#{tmp\ 3542}#
+ ($sc-dispatch
+ #{tmp\ 3541}#
+ '(any each-any any))))
+ (if (if #{tmp\ 3542}#
+ (@apply
+ (lambda (#{_\ 3546}# #{mod\ 3547}# #{id\ 3548}#)
+ (if (and-map #{id?\ 387}# #{mod\ 3547}#)
+ (#{id?\ 387}# #{id\ 3548}#)
+ #f))
+ #{tmp\ 3542}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 3555}# #{mod\ 3556}# #{id\ 3557}#)
+ (values
+ (syntax->datum #{id\ 3557}#)
+ #{r\ 3536}#
+ #{w\ 3537}#
+ #f
+ (syntax->datum
+ (cons '#(syntax-object
+ public
+ ((top)
+ #(ribcage
+ #(_ mod id)
+ #((top) (top) (top))
+ #("i3552" "i3553" "i3554"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e r w)
+ #((top) (top) (top))
+ #("i3538" "i3539" "i3540"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+ set-syntax-object-module!
+ set-syntax-object-wrap!
+ set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+ syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+ build-global-definition
+ maybe-name-value!
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+ get-global-definition-hook
+ put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors
+ and-map*)
+ ((top) (top) (top) (top))
+ ("i38" "i37" "i36" "i34")))
+ (hygiene guile))
+ #{mod\ 3556}#))))
+ #{tmp\ 3542}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 3541}#))))))
+ (#{global-extend\ 383}#
+ 'module-ref
+ '@@
+ (lambda (#{e\ 3559}# #{r\ 3560}# #{w\ 3561}#)
+ (letrec*
+ ((#{remodulate\ 3566}#
+ (lambda (#{x\ 3567}# #{mod\ 3568}#)
+ (if (pair? #{x\ 3567}#)
+ (cons (#{remodulate\ 3566}#
+ (car #{x\ 3567}#)
+ #{mod\ 3568}#)
+ (#{remodulate\ 3566}#
+ (cdr #{x\ 3567}#)
+ #{mod\ 3568}#))
+ (if (#{syntax-object?\ 351}# #{x\ 3567}#)
+ (#{make-syntax-object\ 349}#
+ (#{remodulate\ 3566}#
+ (#{syntax-object-expression\ 353}# #{x\ 3567}#)
+ #{mod\ 3568}#)
+ (#{syntax-object-wrap\ 355}# #{x\ 3567}#)
+ #{mod\ 3568}#)
+ (if (vector? #{x\ 3567}#)
+ (begin
+ (let ((#{n\ 3579}# (vector-length #{x\ 3567}#)))
+ (begin
+ (let ((#{v\ 3581}#
+ (make-vector #{n\ 3579}#)))
+ (letrec*
+ ((#{loop\ 3584}#
+ (lambda (#{i\ 3585}#)
+ (if (#{fx=\ 292}#
+ #{i\ 3585}#
+ #{n\ 3579}#)
+ (begin (if #f #f) #{v\ 3581}#)
+ (begin
+ (vector-set!
+ #{v\ 3581}#
+ #{i\ 3585}#
+ (#{remodulate\ 3566}#
+ (vector-ref
+ #{x\ 3567}#
+ #{i\ 3585}#)
+ #{mod\ 3568}#))
+ (#{loop\ 3584}#
+ (#{fx+\ 288}#
+ #{i\ 3585}#
+ 1)))))))
+ (begin (#{loop\ 3584}# 0)))))))
+ #{x\ 3567}#))))))
+ (begin
+ (let ((#{tmp\ 3589}# #{e\ 3559}#))
+ (let ((#{tmp\ 3590}#
+ ($sc-dispatch
+ #{tmp\ 3589}#
+ '(any each-any any))))
+ (if (if #{tmp\ 3590}#
+ (@apply
+ (lambda (#{_\ 3594}#
+ #{mod\ 3595}#
+ #{exp\ 3596}#)
+ (and-map #{id?\ 387}# #{mod\ 3595}#))
+ #{tmp\ 3590}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 3601}# #{mod\ 3602}# #{exp\ 3603}#)
+ (begin
+ (let ((#{mod\ 3605}#
+ (syntax->datum
+ (cons '#(syntax-object
+ private
((top)
- #(ribcage () () ())
- #(ribcage () () ())
#(ribcage
- #(type
- value
- ee
- ww
- ss
- modmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i3434"
- "i3435"
- "i3436"
- "i3437"
- "i3438"
- "i3439"))
+ #(_ mod exp)
+ #((top) (top) (top))
+ #("i3598"
+ "i3599"
+ "i3600"))
#(ribcage
- #(_ head tail val)
- #((top)
- (top)
- (top)
- (top))
- #("i3418"
- "i3419"
- "i3420"
- "i3421"))
- #(ribcage () () ())
+ (remodulate)
+ ((top))
+ ("i3565"))
#(ribcage
- #(e r w s mod)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i3385"
- "i3386"
- "i3387"
- "i3388"
- "i3389"))
+ #(e r w)
+ #((top) (top) (top))
+ #("i3562"
+ "i3563"
+ "i3564"))
#(ribcage
(lambda-var-list
gen-var
@@ -10388,63 +11570,71 @@
(top)
(top)
(top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
"i430"
- "i428"
+ "i429"
+ "i427"
"i426"
+ "i425"
"i424"
- "i422"
- "i420"
- "i418"
- "i416"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
"i415"
- "i414"
- "i412"
+ "i413"
"i411"
- "i410"
"i409"
- "i408"
- "i406"
+ "i407"
"i404"
"i402"
+ "i401"
"i400"
+ "i399"
"i398"
- "i396"
- "i394"
- "i392"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
"i389"
- "i387"
+ "i388"
"i386"
- "i385"
"i384"
- "i383"
"i382"
"i380"
"i378"
@@ -10453,42 +11643,42 @@
"i373"
"i371"
"i369"
+ "i368"
"i367"
"i365"
- "i363"
- "i361"
- "i359"
+ "i364"
+ "i362"
+ "i360"
"i358"
"i356"
"i354"
- "i353"
"i352"
"i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
"i299"
"i297"
"i295"
@@ -10497,9 +11687,8 @@
"i289"
"i287"
"i285"
- "i284"
- "i282"
- "i280"
+ "i283"
+ "i281"
"i278"
"i276"
"i274"
@@ -10507,3342 +11696,2207 @@
"i270"
"i268"
"i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors
and-map*)
((top) (top) (top) (top))
- ("i23"
- "i22"
- "i21"
- "i19")))
+ ("i38"
+ "i37"
+ "i36"
+ "i34")))
(hygiene guile))
- #{head\ 3423}#)
- #{r\ 3381}#
- #{w\ 3382}#
- #{mod\ 3384}#)
- (map (lambda (#{e\ 3461}#)
- (#{chi\ 457}#
- #{e\ 3461}#
- #{r\ 3381}#
- #{w\ 3382}#
- #{mod\ 3384}#))
- (append
- #{tail\ 3424}#
- (list #{val\ 3425}#))))))))
- #{tmp\ 3417}#)
- ((lambda (#{_\ 3465}#)
+ #{mod\ 3602}#))))
+ (values
+ (#{remodulate\ 3566}#
+ #{exp\ 3603}#
+ #{mod\ 3605}#)
+ #{r\ 3560}#
+ #{w\ 3561}#
+ (#{source-annotation\ 366}# #{exp\ 3603}#)
+ #{mod\ 3605}#))))
+ #{tmp\ 3590}#)
(syntax-violation
- 'set!
- "bad set!"
- (#{source-wrap\ 443}#
- #{e\ 3380}#
- #{w\ 3382}#
- #{s\ 3383}#
- #{mod\ 3384}#)))
- #{tmp\ 3390}#)))
- ($sc-dispatch
- #{tmp\ 3390}#
- '(any (any . each-any) any)))))
- ($sc-dispatch
- #{tmp\ 3390}#
- '(any any any))))
- #{e\ 3380}#)))
- (#{global-extend\ 368}#
- 'module-ref
- '@
- (lambda (#{e\ 3466}# #{r\ 3467}# #{w\ 3468}#)
- ((lambda (#{tmp\ 3472}#)
- ((lambda (#{tmp\ 3473}#)
- (if (if #{tmp\ 3473}#
- (apply (lambda (#{_\ 3477}# #{mod\ 3478}# #{id\ 3479}#)
- (if (and-map #{id?\ 372}# #{mod\ 3478}#)
- (#{id?\ 372}# #{id\ 3479}#)
- #f))
- #{tmp\ 3473}#)
- #f)
- (apply (lambda (#{_\ 3486}# #{mod\ 3487}# #{id\ 3488}#)
- (values
- (syntax->datum #{id\ 3488}#)
- #{r\ 3467}#
- #{w\ 3468}#
- #f
- (syntax->datum
- (cons '#(syntax-object
- public
- ((top)
- #(ribcage
- #(_ mod id)
- #((top) (top) (top))
- #("i3483" "i3484" "i3485"))
- #(ribcage () () ())
- #(ribcage
- #(e r w)
- #((top) (top) (top))
- #("i3469" "i3470" "i3471"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- chi-lambda-case
- lambda*-formals
- chi-simple-lambda
- lambda-formals
- ellipsis?
- chi-void
- eval-local-transformer
- chi-local-syntax
- chi-body
- chi-macro
- chi-application
- chi-expr
- chi
- chi-top
- syntax-type
- chi-when-list
- chi-install-global
- chi-top-sequence
- chi-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- id-var-name
- same-marks?
- join-marks
- join-wraps
- smart-append
- make-binding-wrap
- extend-ribcage!
- make-empty-ribcage
- new-mark
- anti-mark
- the-anti-mark
- top-marked?
- top-wrap
- empty-wrap
- set-ribcage-labels!
- set-ribcage-marks!
- set-ribcage-symnames!
- ribcage-labels
- ribcage-marks
- ribcage-symnames
- ribcage?
- make-ribcage
- gen-labels
- gen-label
- make-rename
- rename-marks
- rename-new
- rename-old
- subst-rename?
- wrap-subst
- wrap-marks
- make-wrap
- id-sym-name&marks
- id-sym-name
- id?
- nonsymbol-id?
- global-extend
- lookup
- macros-only-env
- extend-var-env
- extend-env
- null-env
- binding-value
- binding-type
- make-binding
- arg-check
- source-annotation
- no-source
- set-syntax-object-module!
- set-syntax-object-wrap!
- set-syntax-object-expression!
- syntax-object-module
- syntax-object-wrap
- syntax-object-expression
- syntax-object?
- make-syntax-object
- build-lexical-var
- build-letrec
- build-named-let
- build-let
- build-sequence
- build-data
- build-primref
- build-lambda-case
- build-case-lambda
- build-simple-lambda
- build-global-definition
- maybe-name-value!
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- decorate-source
- get-global-definition-hook
- put-global-definition-hook
- gensym-hook
- local-eval-hook
- top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
- set-lambda-meta!
- lambda-meta
- lambda?
- make-dynlet
- make-letrec
- make-let
- make-lambda-case
- make-lambda
- make-sequence
- make-application
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i23" "i22" "i21" "i19")))
- (hygiene guile))
- #{mod\ 3487}#))))
- #{tmp\ 3473}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 3472}#)))
- ($sc-dispatch
- #{tmp\ 3472}#
- '(any each-any any))))
- #{e\ 3466}#)))
- (#{global-extend\ 368}#
- 'module-ref
- '@@
- (lambda (#{e\ 3490}# #{r\ 3491}# #{w\ 3492}#)
- (letrec ((#{remodulate\ 3497}#
- (lambda (#{x\ 3498}# #{mod\ 3499}#)
- (if (pair? #{x\ 3498}#)
- (cons (#{remodulate\ 3497}#
- (car #{x\ 3498}#)
- #{mod\ 3499}#)
- (#{remodulate\ 3497}#
- (cdr #{x\ 3498}#)
- #{mod\ 3499}#))
- (if (#{syntax-object?\ 336}# #{x\ 3498}#)
- (#{make-syntax-object\ 334}#
- (#{remodulate\ 3497}#
- (#{syntax-object-expression\ 338}# #{x\ 3498}#)
- #{mod\ 3499}#)
- (#{syntax-object-wrap\ 340}# #{x\ 3498}#)
- #{mod\ 3499}#)
- (if (vector? #{x\ 3498}#)
- (let ((#{n\ 3510}# (vector-length #{x\ 3498}#)))
- (let ((#{v\ 3512}# (make-vector #{n\ 3510}#)))
- (letrec ((#{loop\ 3515}#
- (lambda (#{i\ 3516}#)
- (if (#{fx=\ 277}#
- #{i\ 3516}#
- #{n\ 3510}#)
- (begin (if #f #f) #{v\ 3512}#)
- (begin
- (vector-set!
- #{v\ 3512}#
- #{i\ 3516}#
- (#{remodulate\ 3497}#
- (vector-ref
- #{x\ 3498}#
- #{i\ 3516}#)
- #{mod\ 3499}#))
- (#{loop\ 3515}#
- (#{fx+\ 273}#
- #{i\ 3516}#
- 1)))))))
- (#{loop\ 3515}# 0))))
- #{x\ 3498}#))))))
- ((lambda (#{tmp\ 3520}#)
- ((lambda (#{tmp\ 3521}#)
- (if (if #{tmp\ 3521}#
- (apply (lambda (#{_\ 3525}#
- #{mod\ 3526}#
- #{exp\ 3527}#)
- (and-map #{id?\ 372}# #{mod\ 3526}#))
- #{tmp\ 3521}#)
- #f)
- (apply (lambda (#{_\ 3532}# #{mod\ 3533}# #{exp\ 3534}#)
- (let ((#{mod\ 3536}#
- (syntax->datum
- (cons '#(syntax-object
- private
- ((top)
- #(ribcage
- #(_ mod exp)
- #((top) (top) (top))
- #("i3529" "i3530" "i3531"))
- #(ribcage
- (remodulate)
- ((top))
- ("i3496"))
- #(ribcage
- #(e r w)
- #((top) (top) (top))
- #("i3493" "i3494" "i3495"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- chi-lambda-case
- lambda*-formals
- chi-simple-lambda
- lambda-formals
- ellipsis?
- chi-void
- eval-local-transformer
- chi-local-syntax
- chi-body
- chi-macro
- chi-application
- chi-expr
- chi
- chi-top
- syntax-type
- chi-when-list
- chi-install-global
- chi-top-sequence
- chi-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- id-var-name
- same-marks?
- join-marks
- join-wraps
- smart-append
- make-binding-wrap
- extend-ribcage!
- make-empty-ribcage
- new-mark
- anti-mark
- the-anti-mark
- top-marked?
- top-wrap
- empty-wrap
- set-ribcage-labels!
- set-ribcage-marks!
- set-ribcage-symnames!
- ribcage-labels
- ribcage-marks
- ribcage-symnames
- ribcage?
- make-ribcage
- gen-labels
- gen-label
- make-rename
- rename-marks
- rename-new
- rename-old
- subst-rename?
- wrap-subst
- wrap-marks
- make-wrap
- id-sym-name&marks
- id-sym-name
- id?
- nonsymbol-id?
- global-extend
- lookup
- macros-only-env
- extend-var-env
- extend-env
- null-env
- binding-value
- binding-type
- make-binding
- arg-check
- source-annotation
- no-source
- set-syntax-object-module!
- set-syntax-object-wrap!
-
set-syntax-object-expression!
- syntax-object-module
- syntax-object-wrap
- syntax-object-expression
- syntax-object?
- make-syntax-object
- build-lexical-var
- build-letrec
- build-named-let
- build-let
- build-sequence
- build-data
- build-primref
- build-lambda-case
- build-case-lambda
- build-simple-lambda
- build-global-definition
- maybe-name-value!
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- decorate-source
- get-global-definition-hook
- put-global-definition-hook
- gensym-hook
- local-eval-hook
- top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
- set-lambda-meta!
- lambda-meta
- lambda?
- make-dynlet
- make-letrec
- make-let
- make-lambda-case
- make-lambda
- make-sequence
- make-application
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
- #(ribcage
- (define-structure
- define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i23" "i22" "i21" "i19")))
- (hygiene guile))
- #{mod\ 3533}#))))
- (values
- (#{remodulate\ 3497}#
- #{exp\ 3534}#
- #{mod\ 3536}#)
- #{r\ 3491}#
- #{w\ 3492}#
- (#{source-annotation\ 351}# #{exp\ 3534}#)
- #{mod\ 3536}#)))
- #{tmp\ 3521}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 3520}#)))
- ($sc-dispatch
- #{tmp\ 3520}#
- '(any each-any any))))
- #{e\ 3490}#))))
- (#{global-extend\ 368}#
- 'core
- 'if
- (lambda (#{e\ 3538}#
- #{r\ 3539}#
- #{w\ 3540}#
- #{s\ 3541}#
- #{mod\ 3542}#)
- ((lambda (#{tmp\ 3548}#)
- ((lambda (#{tmp\ 3549}#)
- (if #{tmp\ 3549}#
- (apply (lambda (#{_\ 3553}# #{test\ 3554}# #{then\ 3555}#)
- (#{build-conditional\ 296}#
- #{s\ 3541}#
- (#{chi\ 457}#
- #{test\ 3554}#
- #{r\ 3539}#
- #{w\ 3540}#
- #{mod\ 3542}#)
- (#{chi\ 457}#
- #{then\ 3555}#
- #{r\ 3539}#
- #{w\ 3540}#
- #{mod\ 3542}#)
- (#{build-void\ 292}# #f)))
- #{tmp\ 3549}#)
- ((lambda (#{tmp\ 3557}#)
- (if #{tmp\ 3557}#
- (apply (lambda (#{_\ 3562}#
- #{test\ 3563}#
- #{then\ 3564}#
- #{else\ 3565}#)
- (#{build-conditional\ 296}#
- #{s\ 3541}#
- (#{chi\ 457}#
- #{test\ 3563}#
- #{r\ 3539}#
- #{w\ 3540}#
- #{mod\ 3542}#)
- (#{chi\ 457}#
- #{then\ 3564}#
- #{r\ 3539}#
- #{w\ 3540}#
- #{mod\ 3542}#)
- (#{chi\ 457}#
- #{else\ 3565}#
- #{r\ 3539}#
- #{w\ 3540}#
- #{mod\ 3542}#)))
- #{tmp\ 3557}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 3548}#)))
- ($sc-dispatch
- #{tmp\ 3548}#
- '(any any any any)))))
- ($sc-dispatch
- #{tmp\ 3548}#
- '(any any any))))
- #{e\ 3538}#)))
- (#{global-extend\ 368}#
- 'core
- 'with-fluids
- (lambda (#{e\ 3566}#
- #{r\ 3567}#
- #{w\ 3568}#
- #{s\ 3569}#
- #{mod\ 3570}#)
- ((lambda (#{tmp\ 3576}#)
- ((lambda (#{tmp\ 3577}#)
- (if #{tmp\ 3577}#
- (apply (lambda (#{_\ 3583}#
- #{fluid\ 3584}#
- #{val\ 3585}#
- #{b\ 3586}#
- #{b*\ 3587}#)
- (#{build-dynlet\ 298}#
- #{s\ 3569}#
- (map (lambda (#{x\ 3588}#)
- (#{chi\ 457}#
- #{x\ 3588}#
- #{r\ 3567}#
- #{w\ 3568}#
- #{mod\ 3570}#))
- #{fluid\ 3584}#)
- (map (lambda (#{x\ 3591}#)
- (#{chi\ 457}#
- #{x\ 3591}#
- #{r\ 3567}#
- #{w\ 3568}#
- #{mod\ 3570}#))
- #{val\ 3585}#)
- (#{chi-body\ 465}#
- (cons #{b\ 3586}# #{b*\ 3587}#)
- (#{source-wrap\ 443}#
- #{e\ 3566}#
- #{w\ 3568}#
- #{s\ 3569}#
- #{mod\ 3570}#)
- #{r\ 3567}#
- #{w\ 3568}#
- #{mod\ 3570}#)))
- #{tmp\ 3577}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 3576}#)))
- ($sc-dispatch
- #{tmp\ 3576}#
- '(any #(each (any any)) any . each-any))))
- #{e\ 3566}#)))
- (#{global-extend\ 368}#
- 'begin
- 'begin
- '())
- (#{global-extend\ 368}#
- 'define
- 'define
- '())
- (#{global-extend\ 368}#
- 'define-syntax
- 'define-syntax
- '())
- (#{global-extend\ 368}#
- 'eval-when
- 'eval-when
- '())
- (#{global-extend\ 368}#
- 'core
- 'syntax-case
- (letrec ((#{gen-syntax-case\ 3602}#
- (lambda (#{x\ 3603}#
- #{keys\ 3604}#
- #{clauses\ 3605}#
- #{r\ 3606}#
- #{mod\ 3607}#)
- (if (null? #{clauses\ 3605}#)
- (#{build-application\ 294}#
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 3589}#))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'if
+ (lambda (#{e\ 3607}#
+ #{r\ 3608}#
+ #{w\ 3609}#
+ #{s\ 3610}#
+ #{mod\ 3611}#)
+ (let ((#{tmp\ 3617}# #{e\ 3607}#))
+ (let ((#{tmp\ 3618}#
+ ($sc-dispatch
+ #{tmp\ 3617}#
+ '(any any any))))
+ (if #{tmp\ 3618}#
+ (@apply
+ (lambda (#{_\ 3622}# #{test\ 3623}# #{then\ 3624}#)
+ (#{build-conditional\ 311}#
+ #{s\ 3610}#
+ (#{chi\ 472}#
+ #{test\ 3623}#
+ #{r\ 3608}#
+ #{w\ 3609}#
+ #{mod\ 3611}#)
+ (#{chi\ 472}#
+ #{then\ 3624}#
+ #{r\ 3608}#
+ #{w\ 3609}#
+ #{mod\ 3611}#)
+ (#{build-void\ 307}# #f)))
+ #{tmp\ 3618}#)
+ (let ((#{tmp\ 3626}#
+ ($sc-dispatch
+ #{tmp\ 3617}#
+ '(any any any any))))
+ (if #{tmp\ 3626}#
+ (@apply
+ (lambda (#{_\ 3631}#
+ #{test\ 3632}#
+ #{then\ 3633}#
+ #{else\ 3634}#)
+ (#{build-conditional\ 311}#
+ #{s\ 3610}#
+ (#{chi\ 472}#
+ #{test\ 3632}#
+ #{r\ 3608}#
+ #{w\ 3609}#
+ #{mod\ 3611}#)
+ (#{chi\ 472}#
+ #{then\ 3633}#
+ #{r\ 3608}#
+ #{w\ 3609}#
+ #{mod\ 3611}#)
+ (#{chi\ 472}#
+ #{else\ 3634}#
+ #{r\ 3608}#
+ #{w\ 3609}#
+ #{mod\ 3611}#)))
+ #{tmp\ 3626}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 3617}#))))))))
+ (#{global-extend\ 383}#
+ 'core
+ 'with-fluids
+ (lambda (#{e\ 3635}#
+ #{r\ 3636}#
+ #{w\ 3637}#
+ #{s\ 3638}#
+ #{mod\ 3639}#)
+ (let ((#{tmp\ 3645}# #{e\ 3635}#))
+ (let ((#{tmp\ 3646}#
+ ($sc-dispatch
+ #{tmp\ 3645}#
+ '(any #(each (any any)) any . each-any))))
+ (if #{tmp\ 3646}#
+ (@apply
+ (lambda (#{_\ 3652}#
+ #{fluid\ 3653}#
+ #{val\ 3654}#
+ #{b\ 3655}#
+ #{b*\ 3656}#)
+ (#{build-dynlet\ 313}#
+ #{s\ 3638}#
+ (map (lambda (#{x\ 3657}#)
+ (#{chi\ 472}#
+ #{x\ 3657}#
+ #{r\ 3636}#
+ #{w\ 3637}#
+ #{mod\ 3639}#))
+ #{fluid\ 3653}#)
+ (map (lambda (#{x\ 3660}#)
+ (#{chi\ 472}#
+ #{x\ 3660}#
+ #{r\ 3636}#
+ #{w\ 3637}#
+ #{mod\ 3639}#))
+ #{val\ 3654}#)
+ (#{chi-body\ 480}#
+ (cons #{b\ 3655}# #{b*\ 3656}#)
+ (#{source-wrap\ 458}#
+ #{e\ 3635}#
+ #{w\ 3637}#
+ #{s\ 3638}#
+ #{mod\ 3639}#)
+ #{r\ 3636}#
+ #{w\ 3637}#
+ #{mod\ 3639}#)))
+ #{tmp\ 3646}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 3645}#))))))
+ (#{global-extend\ 383}#
+ 'begin
+ 'begin
+ '())
+ (#{global-extend\ 383}#
+ 'define
+ 'define
+ '())
+ (#{global-extend\ 383}#
+ 'define-syntax
+ 'define-syntax
+ '())
+ (#{global-extend\ 383}#
+ 'eval-when
+ 'eval-when
+ '())
+ (#{global-extend\ 383}#
+ 'core
+ 'syntax-case
+ (letrec*
+ ((#{gen-syntax-case\ 3671}#
+ (lambda (#{x\ 3672}#
+ #{keys\ 3673}#
+ #{clauses\ 3674}#
+ #{r\ 3675}#
+ #{mod\ 3676}#)
+ (if (null? #{clauses\ 3674}#)
+ (#{build-application\ 309}#
#f
- (#{build-primref\ 320}#
+ (#{build-primref\ 335}#
#f
'syntax-violation)
- (list (#{build-data\ 322}# #f #f)
- (#{build-data\ 322}#
+ (list (#{build-data\ 337}# #f #f)
+ (#{build-data\ 337}#
#f
"source expression failed to match any
pattern")
- #{x\ 3603}#))
- ((lambda (#{tmp\ 3617}#)
- ((lambda (#{tmp\ 3618}#)
- (if #{tmp\ 3618}#
- (apply (lambda (#{pat\ 3621}# #{exp\ 3622}#)
- (if (if (#{id?\ 372}# #{pat\ 3621}#)
- (and-map
- (lambda (#{x\ 3625}#)
- (not (#{free-id=?\ 431}#
- #{pat\ 3621}#
- #{x\ 3625}#)))
- (cons '#(syntax-object
- ...
- ((top)
- #(ribcage
- #(pat exp)
- #((top) (top))
- #("i3619" "i3620"))
- #(ribcage () () ())
- #(ribcage
- #(x
- keys
- clauses
- r
- mod)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i3608"
- "i3609"
- "i3610"
- "i3611"
- "i3612"))
- #(ribcage
- (gen-syntax-case
- gen-clause
-
build-dispatch-call
- convert-pattern)
- ((top)
- (top)
- (top)
- (top))
- ("i3601"
- "i3599"
- "i3597"
- "i3595"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- chi-lambda-case
- lambda*-formals
- chi-simple-lambda
- lambda-formals
- ellipsis?
- chi-void
-
eval-local-transformer
- chi-local-syntax
- chi-body
- chi-macro
- chi-application
- chi-expr
- chi
- chi-top
- syntax-type
- chi-when-list
-
chi-install-global
- chi-top-sequence
- chi-sequence
- source-wrap
- wrap
- bound-id-member?
-
distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- id-var-name
- same-marks?
- join-marks
- join-wraps
- smart-append
- make-binding-wrap
- extend-ribcage!
-
make-empty-ribcage
- new-mark
- anti-mark
- the-anti-mark
- top-marked?
- top-wrap
- empty-wrap
-
set-ribcage-labels!
-
set-ribcage-marks!
-
set-ribcage-symnames!
- ribcage-labels
- ribcage-marks
- ribcage-symnames
- ribcage?
- make-ribcage
- gen-labels
- gen-label
- make-rename
- rename-marks
- rename-new
- rename-old
- subst-rename?
- wrap-subst
- wrap-marks
- make-wrap
- id-sym-name&marks
- id-sym-name
- id?
- nonsymbol-id?
- global-extend
- lookup
- macros-only-env
- extend-var-env
- extend-env
- null-env
- binding-value
- binding-type
- make-binding
- arg-check
- source-annotation
- no-source
-
set-syntax-object-module!
-
set-syntax-object-wrap!
-
set-syntax-object-expression!
-
syntax-object-module
-
syntax-object-wrap
-
syntax-object-expression
- syntax-object?
-
make-syntax-object
- build-lexical-var
- build-letrec
- build-named-let
- build-let
- build-sequence
- build-data
- build-primref
- build-lambda-case
- build-case-lambda
-
build-simple-lambda
-
build-global-definition
- maybe-name-value!
-
build-global-assignment
-
build-global-reference
- analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- decorate-source
-
get-global-definition-hook
-
put-global-definition-hook
- gensym-hook
- local-eval-hook
-
top-level-eval-hook
- fx<
- fx=
- fx-
- fx+
- set-lambda-meta!
- lambda-meta
- lambda?
- make-dynlet
- make-letrec
- make-let
- make-lambda-case
- make-lambda
- make-sequence
- make-application
- make-conditional
-
make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
-
make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i486"
- "i484"
- "i482"
- "i480"
- "i478"
- "i476"
- "i474"
- "i472"
- "i470"
- "i468"
- "i466"
- "i464"
- "i462"
- "i460"
- "i458"
- "i456"
- "i454"
- "i452"
- "i450"
- "i448"
- "i446"
- "i444"
- "i442"
- "i440"
- "i438"
- "i436"
- "i434"
- "i432"
- "i430"
- "i428"
- "i426"
- "i424"
- "i422"
- "i420"
- "i418"
- "i416"
- "i415"
- "i414"
- "i412"
- "i411"
- "i410"
- "i409"
- "i408"
- "i406"
- "i404"
- "i402"
- "i400"
- "i398"
- "i396"
- "i394"
- "i392"
- "i389"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i380"
- "i378"
- "i376"
- "i374"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i361"
- "i359"
- "i358"
- "i356"
- "i354"
- "i353"
- "i352"
- "i350"
- "i349"
- "i347"
- "i345"
- "i343"
- "i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
- "i325"
- "i323"
- "i321"
- "i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
- "i289"
- "i287"
- "i285"
- "i284"
- "i282"
- "i280"
- "i278"
- "i276"
- "i274"
- "i272"
- "i270"
- "i268"
- "i266"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"
- "i237"
- "i235"
- "i233"
- "i231"
- "i229"))
- #(ribcage
- (define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i23"
- "i22"
- "i21"
- "i19")))
- (hygiene guile))
- #{keys\ 3604}#))
- #f)
- (let ((#{labels\ 3629}#
- (list (#{gen-label\ 388}#)))
- (#{var\ 3630}#
- (#{gen-var\ 485}#
- #{pat\ 3621}#)))
- (#{build-application\ 294}#
- #f
- (#{build-simple-lambda\ 314}#
- #f
- (list (syntax->datum
- #{pat\ 3621}#))
- #f
- (list #{var\ 3630}#)
- '()
- (#{chi\ 457}#
- #{exp\ 3622}#
- (#{extend-env\ 360}#
- #{labels\ 3629}#
- (list (cons 'syntax
- (cons #{var\
3630}#
- 0)))
- #{r\ 3606}#)
- (#{make-binding-wrap\ 419}#
- (list #{pat\ 3621}#)
- #{labels\ 3629}#
- '(()))
- #{mod\ 3607}#))
- (list #{x\ 3603}#)))
- (#{gen-clause\ 3600}#
- #{x\ 3603}#
- #{keys\ 3604}#
- (cdr #{clauses\ 3605}#)
- #{r\ 3606}#
- #{pat\ 3621}#
- #t
- #{exp\ 3622}#
- #{mod\ 3607}#)))
- #{tmp\ 3618}#)
- ((lambda (#{tmp\ 3636}#)
- (if #{tmp\ 3636}#
- (apply (lambda (#{pat\ 3640}#
- #{fender\ 3641}#
- #{exp\ 3642}#)
- (#{gen-clause\ 3600}#
- #{x\ 3603}#
- #{keys\ 3604}#
- (cdr #{clauses\ 3605}#)
- #{r\ 3606}#
- #{pat\ 3640}#
- #{fender\ 3641}#
- #{exp\ 3642}#
- #{mod\ 3607}#))
- #{tmp\ 3636}#)
- ((lambda (#{_\ 3644}#)
- (syntax-violation
- 'syntax-case
- "invalid clause"
- (car #{clauses\ 3605}#)))
- #{tmp\ 3617}#)))
- ($sc-dispatch
- #{tmp\ 3617}#
- '(any any any)))))
- ($sc-dispatch #{tmp\ 3617}# (quote (any any)))))
- (car #{clauses\ 3605}#)))))
- (#{gen-clause\ 3600}#
- (lambda (#{x\ 3645}#
- #{keys\ 3646}#
- #{clauses\ 3647}#
- #{r\ 3648}#
- #{pat\ 3649}#
- #{fender\ 3650}#
- #{exp\ 3651}#
- #{mod\ 3652}#)
+ #{x\ 3672}#))
+ (let ((#{tmp\ 3686}# (car #{clauses\ 3674}#)))
+ (let ((#{tmp\ 3687}#
+ ($sc-dispatch
+ #{tmp\ 3686}#
+ '(any any))))
+ (if #{tmp\ 3687}#
+ (@apply
+ (lambda (#{pat\ 3690}# #{exp\ 3691}#)
+ (if (if (#{id?\ 387}# #{pat\ 3690}#)
+ (and-map
+ (lambda (#{x\ 3694}#)
+ (not (#{free-id=?\ 446}#
+ #{pat\ 3690}#
+ #{x\ 3694}#)))
+ (cons '#(syntax-object
+ ...
+ ((top)
+ #(ribcage
+ #(pat exp)
+ #((top) (top))
+ #("i3688" "i3689"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x keys clauses r mod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i3677"
+ "i3678"
+ "i3679"
+ "i3680"
+ "i3681"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("i3670"
+ "i3668"
+ "i3666"
+ "i3664"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ chi-lambda-case
+ lambda*-formals
+ chi-simple-lambda
+ lambda-formals
+ ellipsis?
+ chi-void
+ eval-local-transformer
+ chi-local-syntax
+ chi-body
+ chi-macro
+ chi-application
+ chi-expr
+ chi
+ chi-top
+ syntax-type
+ chi-when-list
+ chi-install-global
+ chi-top-sequence
+ chi-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ id-var-name
+ same-marks?
+ join-marks
+ join-wraps
+ smart-append
+ make-binding-wrap
+ extend-ribcage!
+ make-empty-ribcage
+ new-mark
+ anti-mark
+ the-anti-mark
+ top-marked?
+ top-wrap
+ empty-wrap
+ set-ribcage-labels!
+ set-ribcage-marks!
+ set-ribcage-symnames!
+ ribcage-labels
+ ribcage-marks
+ ribcage-symnames
+ ribcage?
+ make-ribcage
+ gen-labels
+ gen-label
+ make-rename
+ rename-marks
+ rename-new
+ rename-old
+ subst-rename?
+ wrap-subst
+ wrap-marks
+ make-wrap
+ id-sym-name&marks
+ id-sym-name
+ id?
+ nonsymbol-id?
+ global-extend
+ lookup
+ macros-only-env
+ extend-var-env
+ extend-env
+ null-env
+ binding-value
+ binding-type
+ make-binding
+ arg-check
+ source-annotation
+ no-source
+
set-syntax-object-module!
+ set-syntax-object-wrap!
+
set-syntax-object-expression!
+ syntax-object-module
+ syntax-object-wrap
+ syntax-object-expression
+ syntax-object?
+ make-syntax-object
+ build-lexical-var
+ build-letrec
+ build-named-let
+ build-let
+ build-sequence
+ build-data
+ build-primref
+ build-lambda-case
+ build-case-lambda
+ build-simple-lambda
+ build-global-definition
+ maybe-name-value!
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ decorate-source
+
get-global-definition-hook
+
put-global-definition-hook
+ gensym-hook
+ local-eval-hook
+ top-level-eval-hook
+ fx<
+ fx=
+ fx-
+ fx+
+ set-lambda-meta!
+ lambda-meta
+ lambda?
+ make-dynlet
+ make-letrec
+ make-let
+ make-lambda-case
+ make-lambda
+ make-sequence
+ make-application
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i501"
+ "i499"
+ "i497"
+ "i495"
+ "i493"
+ "i491"
+ "i489"
+ "i487"
+ "i485"
+ "i483"
+ "i481"
+ "i479"
+ "i477"
+ "i475"
+ "i473"
+ "i471"
+ "i469"
+ "i467"
+ "i465"
+ "i463"
+ "i461"
+ "i459"
+ "i457"
+ "i455"
+ "i453"
+ "i451"
+ "i449"
+ "i447"
+ "i445"
+ "i443"
+ "i441"
+ "i439"
+ "i437"
+ "i435"
+ "i433"
+ "i431"
+ "i430"
+ "i429"
+ "i427"
+ "i426"
+ "i425"
+ "i424"
+ "i423"
+ "i421"
+ "i419"
+ "i417"
+ "i415"
+ "i413"
+ "i411"
+ "i409"
+ "i407"
+ "i404"
+ "i402"
+ "i401"
+ "i400"
+ "i399"
+ "i398"
+ "i397"
+ "i395"
+ "i393"
+ "i391"
+ "i389"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i378"
+ "i376"
+ "i374"
+ "i373"
+ "i371"
+ "i369"
+ "i368"
+ "i367"
+ "i365"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i354"
+ "i352"
+ "i350"
+ "i348"
+ "i346"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i324"
+ "i322"
+ "i320"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i299"
+ "i297"
+ "i295"
+ "i293"
+ "i291"
+ "i289"
+ "i287"
+ "i285"
+ "i283"
+ "i281"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i252"
+ "i250"
+ "i248"
+ "i246"
+ "i244"))
+ #(ribcage
+ (define-structure
+
define-expansion-accessors
+
define-expansion-constructors
+ and-map*)
+ ((top) (top) (top) (top))
+ ("i38"
+ "i37"
+ "i36"
+ "i34")))
+ (hygiene guile))
+ #{keys\ 3673}#))
+ #f)
+ (begin
+ (let ((#{labels\ 3698}#
+ (list (#{gen-label\ 403}#)))
+ (#{var\ 3699}#
+ (#{gen-var\ 500}# #{pat\ 3690}#)))
+ (#{build-application\ 309}#
+ #f
+ (#{build-simple-lambda\ 329}#
+ #f
+ (list (syntax->datum #{pat\ 3690}#))
+ #f
+ (list #{var\ 3699}#)
+ '()
+ (#{chi\ 472}#
+ #{exp\ 3691}#
+ (#{extend-env\ 375}#
+ #{labels\ 3698}#
+ (list (cons 'syntax
+ (cons #{var\ 3699}#
+ 0)))
+ #{r\ 3675}#)
+ (#{make-binding-wrap\ 434}#
+ (list #{pat\ 3690}#)
+ #{labels\ 3698}#
+ '(()))
+ #{mod\ 3676}#))
+ (list #{x\ 3672}#))))
+ (#{gen-clause\ 3669}#
+ #{x\ 3672}#
+ #{keys\ 3673}#
+ (cdr #{clauses\ 3674}#)
+ #{r\ 3675}#
+ #{pat\ 3690}#
+ #t
+ #{exp\ 3691}#
+ #{mod\ 3676}#)))
+ #{tmp\ 3687}#)
+ (let ((#{tmp\ 3705}#
+ ($sc-dispatch
+ #{tmp\ 3686}#
+ '(any any any))))
+ (if #{tmp\ 3705}#
+ (@apply
+ (lambda (#{pat\ 3709}#
+ #{fender\ 3710}#
+ #{exp\ 3711}#)
+ (#{gen-clause\ 3669}#
+ #{x\ 3672}#
+ #{keys\ 3673}#
+ (cdr #{clauses\ 3674}#)
+ #{r\ 3675}#
+ #{pat\ 3709}#
+ #{fender\ 3710}#
+ #{exp\ 3711}#
+ #{mod\ 3676}#))
+ #{tmp\ 3705}#)
+ (let ((#{_\ 3713}# #{tmp\ 3686}#))
+ (syntax-violation
+ 'syntax-case
+ "invalid clause"
+ (car #{clauses\ 3674}#)))))))))))
+ (#{gen-clause\ 3669}#
+ (lambda (#{x\ 3714}#
+ #{keys\ 3715}#
+ #{clauses\ 3716}#
+ #{r\ 3717}#
+ #{pat\ 3718}#
+ #{fender\ 3719}#
+ #{exp\ 3720}#
+ #{mod\ 3721}#)
(call-with-values
(lambda ()
- (#{convert-pattern\ 3596}#
- #{pat\ 3649}#
- #{keys\ 3646}#))
- (lambda (#{p\ 3661}# #{pvars\ 3662}#)
- (if (not (#{distinct-bound-ids?\ 437}#
- (map car #{pvars\ 3662}#)))
+ (#{convert-pattern\ 3665}#
+ #{pat\ 3718}#
+ #{keys\ 3715}#))
+ (lambda (#{p\ 3730}# #{pvars\ 3731}#)
+ (if (not (#{distinct-bound-ids?\ 452}#
+ (map car #{pvars\ 3731}#)))
(syntax-violation
'syntax-case
"duplicate pattern variable"
- #{pat\ 3649}#)
+ #{pat\ 3718}#)
(if (not (and-map
- (lambda (#{x\ 3669}#)
- (not (#{ellipsis?\ 473}#
- (car #{x\ 3669}#))))
- #{pvars\ 3662}#))
+ (lambda (#{x\ 3738}#)
+ (not (#{ellipsis?\ 488}#
+ (car #{x\ 3738}#))))
+ #{pvars\ 3731}#))
(syntax-violation
'syntax-case
"misplaced ellipsis"
- #{pat\ 3649}#)
- (let ((#{y\ 3673}#
- (#{gen-var\ 485}# (quote tmp))))
- (#{build-application\ 294}#
- #f
- (#{build-simple-lambda\ 314}#
- #f
- (list (quote tmp))
+ #{pat\ 3718}#)
+ (begin
+ (let ((#{y\ 3742}#
+ (#{gen-var\ 500}# (quote tmp))))
+ (#{build-application\ 309}#
#f
- (list #{y\ 3673}#)
- '()
- (let ((#{y\ 3677}#
- (#{build-lexical-reference\ 300}#
- 'value
- #f
- 'tmp
- #{y\ 3673}#)))
- (#{build-conditional\ 296}#
- #f
- ((lambda (#{tmp\ 3680}#)
- ((lambda (#{tmp\ 3681}#)
- (if #{tmp\ 3681}#
- (apply (lambda () #{y\ 3677}#)
- #{tmp\ 3681}#)
- ((lambda (#{_\ 3683}#)
- (#{build-conditional\ 296}#
- #f
- #{y\ 3677}#
- (#{build-dispatch-call\
3598}#
- #{pvars\ 3662}#
- #{fender\ 3650}#
- #{y\ 3677}#
- #{r\ 3648}#
- #{mod\ 3652}#)
- (#{build-data\ 322}#
- #f
- #f)))
- #{tmp\ 3680}#)))
- ($sc-dispatch
- #{tmp\ 3680}#
- '#(atom #t))))
- #{fender\ 3650}#)
- (#{build-dispatch-call\ 3598}#
- #{pvars\ 3662}#
- #{exp\ 3651}#
- #{y\ 3677}#
- #{r\ 3648}#
- #{mod\ 3652}#)
- (#{gen-syntax-case\ 3602}#
- #{x\ 3645}#
- #{keys\ 3646}#
- #{clauses\ 3647}#
- #{r\ 3648}#
- #{mod\ 3652}#))))
- (list (if (eq? #{p\ 3661}# (quote any))
- (#{build-application\ 294}#
+ (#{build-simple-lambda\ 329}#
+ #f
+ (list (quote tmp))
+ #f
+ (list #{y\ 3742}#)
+ '()
+ (begin
+ (let ((#{y\ 3746}#
+ (#{build-lexical-reference\
315}#
+ 'value
+ #f
+ 'tmp
+ #{y\ 3742}#)))
+ (#{build-conditional\ 311}#
#f
- (#{build-primref\ 320}#
+ (let ((#{tmp\ 3749}#
+ #{fender\ 3719}#))
+ (let ((#{tmp\ 3750}#
+ ($sc-dispatch
+ #{tmp\ 3749}#
+ '#(atom #t))))
+ (if #{tmp\ 3750}#
+ (@apply
+ (lambda () #{y\ 3746}#)
+ #{tmp\ 3750}#)
+ (let ((#{_\ 3752}#
+ #{tmp\ 3749}#))
+ (#{build-conditional\ 311}#
+ #f
+ #{y\ 3746}#
+ (#{build-dispatch-call\
3667}#
+ #{pvars\ 3731}#
+ #{fender\ 3719}#
+ #{y\ 3746}#
+ #{r\ 3717}#
+ #{mod\ 3721}#)
+ (#{build-data\ 337}#
+ #f
+ #f))))))
+ (#{build-dispatch-call\ 3667}#
+ #{pvars\ 3731}#
+ #{exp\ 3720}#
+ #{y\ 3746}#
+ #{r\ 3717}#
+ #{mod\ 3721}#)
+ (#{gen-syntax-case\ 3671}#
+ #{x\ 3714}#
+ #{keys\ 3715}#
+ #{clauses\ 3716}#
+ #{r\ 3717}#
+ #{mod\ 3721}#)))))
+ (list (if (eq? #{p\ 3730}# (quote any))
+ (#{build-application\ 309}#
#f
- 'list)
- (list #{x\ 3645}#))
- (#{build-application\ 294}#
- #f
- (#{build-primref\ 320}#
+ (#{build-primref\ 335}#
+ #f
+ 'list)
+ (list #{x\ 3714}#))
+ (#{build-application\ 309}#
#f
- '$sc-dispatch)
- (list #{x\ 3645}#
- (#{build-data\ 322}#
- #f
- #{p\ 3661}#)))))))))))))
- (#{build-dispatch-call\ 3598}#
- (lambda (#{pvars\ 3691}#
- #{exp\ 3692}#
- #{y\ 3693}#
- #{r\ 3694}#
- #{mod\ 3695}#)
- (let ((#{ids\ 3703}# (map car #{pvars\ 3691}#))
- (#{levels\ 3704}# (map cdr #{pvars\ 3691}#)))
- (let ((#{labels\ 3707}#
- (#{gen-labels\ 390}# #{ids\ 3703}#))
- (#{new-vars\ 3708}#
- (map #{gen-var\ 485}# #{ids\ 3703}#)))
- (#{build-application\ 294}#
- #f
- (#{build-primref\ 320}# #f (quote apply))
- (list (#{build-simple-lambda\ 314}#
- #f
- (map syntax->datum #{ids\ 3703}#)
- #f
- #{new-vars\ 3708}#
- '()
- (#{chi\ 457}#
- #{exp\ 3692}#
- (#{extend-env\ 360}#
- #{labels\ 3707}#
- (map (lambda (#{var\ 3712}#
- #{level\ 3713}#)
- (cons 'syntax
- (cons #{var\ 3712}#
- #{level\ 3713}#)))
- #{new-vars\ 3708}#
- (map cdr #{pvars\ 3691}#))
- #{r\ 3694}#)
- (#{make-binding-wrap\ 419}#
- #{ids\ 3703}#
- #{labels\ 3707}#
- '(()))
- #{mod\ 3695}#))
- #{y\ 3693}#))))))
- (#{convert-pattern\ 3596}#
- (lambda (#{pattern\ 3719}# #{keys\ 3720}#)
- (letrec ((#{cvt\ 3726}#
- (lambda (#{p\ 3727}# #{n\ 3728}# #{ids\ 3729}#)
- (if (#{id?\ 372}# #{p\ 3727}#)
- (if (#{bound-id-member?\ 439}#
- #{p\ 3727}#
- #{keys\ 3720}#)
- (values
- (vector (quote free-id) #{p\ 3727}#)
- #{ids\ 3729}#)
- (values
- 'any
- (cons (cons #{p\ 3727}# #{n\ 3728}#)
- #{ids\ 3729}#)))
- ((lambda (#{tmp\ 3733}#)
- ((lambda (#{tmp\ 3734}#)
- (if (if #{tmp\ 3734}#
- (apply (lambda (#{x\ 3737}#
- #{dots\ 3738}#)
- (#{ellipsis?\ 473}#
- #{dots\ 3738}#))
- #{tmp\ 3734}#)
- #f)
- (apply (lambda (#{x\ 3741}#
- #{dots\ 3742}#)
- (call-with-values
- (lambda ()
- (#{cvt\ 3726}#
- #{x\ 3741}#
- (#{fx+\ 273}#
- #{n\ 3728}#
- 1)
- #{ids\ 3729}#))
- (lambda (#{p\ 3743}#
- #{ids\ 3744}#)
- (values
- (if (eq? #{p\ 3743}#
- 'any)
- 'each-any
- (vector
- 'each
- #{p\ 3743}#))
- #{ids\ 3744}#))))
- #{tmp\ 3734}#)
- ((lambda (#{tmp\ 3747}#)
- (if (if #{tmp\ 3747}#
- (apply (lambda (#{x\
3751}#
- #{dots\
3752}#
- #{ys\
3753}#)
- (#{ellipsis?\
473}#
- #{dots\
3752}#))
- #{tmp\ 3747}#)
- #f)
- (apply (lambda (#{x\ 3757}#
- #{dots\ 3758}#
- #{ys\ 3759}#)
- (call-with-values
- (lambda ()
- (#{cvt*\ 3724}#
- #{ys\ 3759}#
- #{n\ 3728}#
- #{ids\ 3729}#))
- (lambda (#{ys\
3761}#
- #{ids\
3762}#)
- (call-with-values
- (lambda ()
- (#{cvt\
3726}#
- #{x\ 3757}#
- (+ #{n\
3728}#
- 1)
- #{ids\
3762}#))
- (lambda (#{x\
3765}#
-
#{ids\ 3766}#)
- (values
-
(list->vector
- (cons
'each+
-
(cons #{x\ 3765}#
-
(cons (reverse
-
#{ys\ 3761}#)
-
'(())))))
- #{ids\
3766}#))))))
- #{tmp\ 3747}#)
- ((lambda (#{tmp\ 3770}#)
- (if #{tmp\ 3770}#
- (apply (lambda (#{x\
3773}#
- #{y\
3774}#)
-
(call-with-values
- (lambda ()
- (#{cvt\
3726}#
- #{y\
3774}#
- #{n\
3728}#
- #{ids\
3729}#))
- (lambda (#{y\
3775}#
-
#{ids\ 3776}#)
-
(call-with-values
- (lambda ()
- (#{cvt\
3726}#
- #{x\
3773}#
- #{n\
3728}#
-
#{ids\ 3776}#))
- (lambda
(#{x\ 3779}#
-
#{ids\ 3780}#)
- (values
- (cons
#{x\ 3779}#
-
#{y\ 3775}#)
-
#{ids\ 3780}#))))))
- #{tmp\ 3770}#)
- ((lambda (#{tmp\ 3783}#)
- (if #{tmp\ 3783}#
- (apply (lambda ()
- (values
- '()
- #{ids\
3729}#))
- #{tmp\
3783}#)
- ((lambda (#{tmp\
3784}#)
- (if #{tmp\ 3784}#
- (apply (lambda
(#{x\ 3786}#)
-
(call-with-values
-
(lambda ()
-
(#{cvt\ 3726}#
-
#{x\ 3786}#
-
#{n\ 3728}#
-
#{ids\ 3729}#))
-
(lambda (#{p\ 3788}#
-
#{ids\ 3789}#)
-
(values
-
(vector
-
'vector
-
#{p\ 3788}#)
-
#{ids\ 3789}#))))
- #{tmp\
3784}#)
- ((lambda (#{x\
3793}#)
- (values
- (vector
- 'atom
-
(#{strip\ 483}#
- #{p\
3727}#
-
'(())))
- #{ids\
3729}#))
- #{tmp\
3733}#)))
- ($sc-dispatch
- #{tmp\ 3733}#
- '#(vector
- each-any)))))
- ($sc-dispatch
- #{tmp\ 3733}#
- '()))))
- ($sc-dispatch
- #{tmp\ 3733}#
- '(any . any)))))
- ($sc-dispatch
- #{tmp\ 3733}#
- '(any any . each-any)))))
+ (#{build-primref\ 335}#
+ #f
+ '$sc-dispatch)
+ (list #{x\ 3714}#
+ (#{build-data\ 337}#
+ #f
+ #{p\ 3730}#))))))))))))))
+ (#{build-dispatch-call\ 3667}#
+ (lambda (#{pvars\ 3760}#
+ #{exp\ 3761}#
+ #{y\ 3762}#
+ #{r\ 3763}#
+ #{mod\ 3764}#)
+ (begin
+ (map cdr #{pvars\ 3760}#)
+ (let ((#{ids\ 3772}# (map car #{pvars\ 3760}#)))
+ (begin
+ (let ((#{labels\ 3776}#
+ (#{gen-labels\ 405}# #{ids\ 3772}#))
+ (#{new-vars\ 3777}#
+ (map #{gen-var\ 500}# #{ids\ 3772}#)))
+ (#{build-application\ 309}#
+ #f
+ (#{build-primref\ 335}# #f (quote apply))
+ (list (#{build-simple-lambda\ 329}#
+ #f
+ (map syntax->datum #{ids\ 3772}#)
+ #f
+ #{new-vars\ 3777}#
+ '()
+ (#{chi\ 472}#
+ #{exp\ 3761}#
+ (#{extend-env\ 375}#
+ #{labels\ 3776}#
+ (map (lambda (#{var\ 3781}#
+ #{level\ 3782}#)
+ (cons 'syntax
+ (cons #{var\ 3781}#
+ #{level\
3782}#)))
+ #{new-vars\ 3777}#
+ (map cdr #{pvars\ 3760}#))
+ #{r\ 3763}#)
+ (#{make-binding-wrap\ 434}#
+ #{ids\ 3772}#
+ #{labels\ 3776}#
+ '(()))
+ #{mod\ 3764}#))
+ #{y\ 3762}#))))))))
+ (#{convert-pattern\ 3665}#
+ (lambda (#{pattern\ 3788}# #{keys\ 3789}#)
+ (letrec*
+ ((#{cvt\ 3795}#
+ (lambda (#{p\ 3796}# #{n\ 3797}# #{ids\ 3798}#)
+ (if (#{id?\ 387}# #{p\ 3796}#)
+ (if (#{bound-id-member?\ 454}#
+ #{p\ 3796}#
+ #{keys\ 3789}#)
+ (values
+ (vector (quote free-id) #{p\ 3796}#)
+ #{ids\ 3798}#)
+ (values
+ 'any
+ (cons (cons #{p\ 3796}# #{n\ 3797}#)
+ #{ids\ 3798}#)))
+ (let ((#{tmp\ 3802}# #{p\ 3796}#))
+ (let ((#{tmp\ 3803}#
($sc-dispatch
- #{tmp\ 3733}#
+ #{tmp\ 3802}#
'(any any))))
- #{p\ 3727}#))))
- (#{cvt*\ 3724}#
- (lambda (#{p*\ 3795}#
- #{n\ 3796}#
- #{ids\ 3797}#)
- (if (null? #{p*\ 3795}#)
- (values (quote ()) #{ids\ 3797}#)
- (call-with-values
- (lambda ()
- (#{cvt*\ 3724}#
- (cdr #{p*\ 3795}#)
- #{n\ 3796}#
- #{ids\ 3797}#))
- (lambda (#{y\ 3801}# #{ids\ 3802}#)
+ (if (if #{tmp\ 3803}#
+ (@apply
+ (lambda (#{x\ 3806}# #{dots\ 3807}#)
+ (#{ellipsis?\ 488}#
+ #{dots\ 3807}#))
+ #{tmp\ 3803}#)
+ #f)
+ (@apply
+ (lambda (#{x\ 3810}# #{dots\ 3811}#)
(call-with-values
(lambda ()
- (#{cvt\ 3726}#
- (car #{p*\ 3795}#)
- #{n\ 3796}#
- #{ids\ 3802}#))
- (lambda (#{x\ 3805}# #{ids\ 3806}#)
+ (#{cvt\ 3795}#
+ #{x\ 3810}#
+ (#{fx+\ 288}# #{n\ 3797}# 1)
+ #{ids\ 3798}#))
+ (lambda (#{p\ 3812}# #{ids\ 3813}#)
(values
- (cons #{x\ 3805}# #{y\ 3801}#)
- #{ids\ 3806}#)))))))))
- (#{cvt\ 3726}# #{pattern\ 3719}# 0 (quote ()))))))
- (lambda (#{e\ 3809}#
- #{r\ 3810}#
- #{w\ 3811}#
- #{s\ 3812}#
- #{mod\ 3813}#)
- (let ((#{e\ 3820}#
- (#{source-wrap\ 443}#
- #{e\ 3809}#
- #{w\ 3811}#
- #{s\ 3812}#
- #{mod\ 3813}#)))
- ((lambda (#{tmp\ 3821}#)
- ((lambda (#{tmp\ 3822}#)
- (if #{tmp\ 3822}#
- (apply (lambda (#{_\ 3827}#
- #{val\ 3828}#
- #{key\ 3829}#
- #{m\ 3830}#)
- (if (and-map
- (lambda (#{x\ 3831}#)
- (if (#{id?\ 372}# #{x\ 3831}#)
- (not (#{ellipsis?\ 473}# #{x\ 3831}#))
- #f))
- #{key\ 3829}#)
- (let ((#{x\ 3837}#
- (#{gen-var\ 485}# (quote tmp))))
- (#{build-application\ 294}#
- #{s\ 3812}#
- (#{build-simple-lambda\ 314}#
- #f
- (list (quote tmp))
- #f
- (list #{x\ 3837}#)
- '()
- (#{gen-syntax-case\ 3602}#
- (#{build-lexical-reference\ 300}#
- 'value
- #f
- 'tmp
- #{x\ 3837}#)
- #{key\ 3829}#
- #{m\ 3830}#
- #{r\ 3810}#
- #{mod\ 3813}#))
- (list (#{chi\ 457}#
- #{val\ 3828}#
- #{r\ 3810}#
- '(())
- #{mod\ 3813}#))))
- (syntax-violation
- 'syntax-case
- "invalid literals list"
- #{e\ 3820}#)))
- #{tmp\ 3822}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 3821}#)))
- ($sc-dispatch
- #{tmp\ 3821}#
- '(any any each-any . each-any))))
- #{e\ 3820}#)))))
- (set! macroexpand
- (lambda*
- (#{x\ 3843}#
- #:optional
- (#{m\ 3845}# (quote e))
- (#{esew\ 3847}# (quote (eval))))
- (#{chi-top\ 455}#
- #{x\ 3843}#
- '()
- '((top))
- #{m\ 3845}#
- #{esew\ 3847}#
- (cons 'hygiene
- (module-name (current-module))))))
- (set! identifier?
- (lambda (#{x\ 3851}#)
- (#{nonsymbol-id?\ 370}# #{x\ 3851}#)))
- (set! datum->syntax
- (lambda (#{id\ 3853}# #{datum\ 3854}#)
- (#{make-syntax-object\ 334}#
- #{datum\ 3854}#
- (#{syntax-object-wrap\ 340}# #{id\ 3853}#)
- (#{syntax-object-module\ 342}# #{id\ 3853}#))))
- (set! syntax->datum
- (lambda (#{x\ 3857}#)
- (#{strip\ 483}# #{x\ 3857}# (quote (())))))
- (set! syntax-source
- (lambda (#{x\ 3860}#)
- (#{source-annotation\ 351}# #{x\ 3860}#)))
- (set! generate-temporaries
- (lambda (#{ls\ 3862}#)
- (begin
- (let ((#{x\ 3866}# #{ls\ 3862}#))
- (if (not (list? #{x\ 3866}#))
- (syntax-violation
- 'generate-temporaries
- "invalid argument"
- #{x\ 3866}#)))
- (map (lambda (#{x\ 3867}#)
- (#{wrap\ 441}# (gensym) (quote ((top))) #f))
- #{ls\ 3862}#))))
- (set! free-identifier=?
- (lambda (#{x\ 3871}# #{y\ 3872}#)
- (begin
- (let ((#{x\ 3877}# #{x\ 3871}#))
- (if (not (#{nonsymbol-id?\ 370}# #{x\ 3877}#))
- (syntax-violation
- 'free-identifier=?
- "invalid argument"
- #{x\ 3877}#)))
- (let ((#{x\ 3880}# #{y\ 3872}#))
- (if (not (#{nonsymbol-id?\ 370}# #{x\ 3880}#))
- (syntax-violation
- 'free-identifier=?
- "invalid argument"
- #{x\ 3880}#)))
- (#{free-id=?\ 431}# #{x\ 3871}# #{y\ 3872}#))))
- (set! bound-identifier=?
- (lambda (#{x\ 3881}# #{y\ 3882}#)
- (begin
- (let ((#{x\ 3887}# #{x\ 3881}#))
- (if (not (#{nonsymbol-id?\ 370}# #{x\ 3887}#))
- (syntax-violation
- 'bound-identifier=?
- "invalid argument"
- #{x\ 3887}#)))
- (let ((#{x\ 3890}# #{y\ 3882}#))
- (if (not (#{nonsymbol-id?\ 370}# #{x\ 3890}#))
- (syntax-violation
- 'bound-identifier=?
- "invalid argument"
- #{x\ 3890}#)))
- (#{bound-id=?\ 433}# #{x\ 3881}# #{y\ 3882}#))))
- (set! syntax-violation
- (lambda (#{who\ 3891}#
- #{message\ 3892}#
- #{form\ 3893}#
- .
- #{subform\ 3894}#)
- (begin
- (let ((#{x\ 3901}# #{who\ 3891}#))
- (if (not ((lambda (#{x\ 3902}#)
- (let ((#{t\ 3906}# (not #{x\ 3902}#)))
- (if #{t\ 3906}#
- #{t\ 3906}#
- (let ((#{t\ 3909}# (string? #{x\ 3902}#)))
- (if #{t\ 3909}#
- #{t\ 3909}#
- (symbol? #{x\ 3902}#))))))
- #{x\ 3901}#))
- (syntax-violation
- 'syntax-violation
- "invalid argument"
- #{x\ 3901}#)))
- (let ((#{x\ 3913}# #{message\ 3892}#))
- (if (not (string? #{x\ 3913}#))
- (syntax-violation
- 'syntax-violation
- "invalid argument"
- #{x\ 3913}#)))
- (scm-error
- 'syntax-error
- 'macroexpand
- (string-append
- (if #{who\ 3891}# "~a: " "")
- "~a "
- (if (null? #{subform\ 3894}#)
- "in ~a"
- "in subform `~s' of `~s'"))
- (let ((#{tail\ 3915}#
- (cons #{message\ 3892}#
- (map (lambda (#{x\ 3916}#)
- (#{strip\ 483}# #{x\ 3916}# (quote (()))))
- (append
- #{subform\ 3894}#
- (list #{form\ 3893}#))))))
- (if #{who\ 3891}#
- (cons #{who\ 3891}# #{tail\ 3915}#)
- #{tail\ 3915}#))
- #f))))
- (letrec ((#{match\ 3932}#
- (lambda (#{e\ 3933}#
- #{p\ 3934}#
- #{w\ 3935}#
- #{r\ 3936}#
- #{mod\ 3937}#)
- (if (not #{r\ 3936}#)
+ (if (eq? #{p\ 3812}# (quote any))
+ 'each-any
+ (vector
+ 'each
+ #{p\ 3812}#))
+ #{ids\ 3813}#))))
+ #{tmp\ 3803}#)
+ (let ((#{tmp\ 3816}#
+ ($sc-dispatch
+ #{tmp\ 3802}#
+ '(any any . each-any))))
+ (if (if #{tmp\ 3816}#
+ (@apply
+ (lambda (#{x\ 3820}#
+ #{dots\ 3821}#
+ #{ys\ 3822}#)
+ (#{ellipsis?\ 488}#
+ #{dots\ 3821}#))
+ #{tmp\ 3816}#)
+ #f)
+ (@apply
+ (lambda (#{x\ 3826}#
+ #{dots\ 3827}#
+ #{ys\ 3828}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt*\ 3793}#
+ #{ys\ 3828}#
+ #{n\ 3797}#
+ #{ids\ 3798}#))
+ (lambda (#{ys\ 3830}#
+ #{ids\ 3831}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt\ 3795}#
+ #{x\ 3826}#
+ (1+ #{n\ 3797}#)
+ #{ids\ 3831}#))
+ (lambda (#{x\ 3834}#
+ #{ids\ 3835}#)
+ (values
+ (list->vector
+ (cons 'each+
+ (cons #{x\ 3834}#
+ (cons
(reverse
+
#{ys\ 3830}#)
+
'(())))))
+ #{ids\ 3835}#))))))
+ #{tmp\ 3816}#)
+ (let ((#{tmp\ 3839}#
+ ($sc-dispatch
+ #{tmp\ 3802}#
+ '(any . any))))
+ (if #{tmp\ 3839}#
+ (@apply
+ (lambda (#{x\ 3842}# #{y\ 3843}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt\ 3795}#
+ #{y\ 3843}#
+ #{n\ 3797}#
+ #{ids\ 3798}#))
+ (lambda (#{y\ 3844}#
+ #{ids\ 3845}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt\ 3795}#
+ #{x\ 3842}#
+ #{n\ 3797}#
+ #{ids\ 3845}#))
+ (lambda (#{x\ 3848}#
+ #{ids\ 3849}#)
+ (values
+ (cons #{x\ 3848}#
+ #{y\ 3844}#)
+ #{ids\ 3849}#))))))
+ #{tmp\ 3839}#)
+ (let ((#{tmp\ 3852}#
+ ($sc-dispatch
+ #{tmp\ 3802}#
+ '())))
+ (if #{tmp\ 3852}#
+ (@apply
+ (lambda ()
+ (values
+ '()
+ #{ids\ 3798}#))
+ #{tmp\ 3852}#)
+ (let ((#{tmp\ 3853}#
+ ($sc-dispatch
+ #{tmp\ 3802}#
+ '#(vector
+ each-any))))
+ (if #{tmp\ 3853}#
+ (@apply
+ (lambda (#{x\ 3855}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt\ 3795}#
+ #{x\ 3855}#
+ #{n\ 3797}#
+ #{ids\ 3798}#))
+ (lambda (#{p\ 3857}#
+ #{ids\
3858}#)
+ (values
+ (vector
+ 'vector
+ #{p\ 3857}#)
+ #{ids\ 3858}#))))
+ #{tmp\ 3853}#)
+ (let ((#{x\ 3862}#
+ #{tmp\ 3802}#))
+ (values
+ (vector
+ 'atom
+ (#{strip\ 498}#
+ #{p\ 3796}#
+ '(())))
+ #{ids\
3798}#))))))))))))))))
+ (#{cvt*\ 3793}#
+ (lambda (#{p*\ 3864}# #{n\ 3865}# #{ids\ 3866}#)
+ (if (null? #{p*\ 3864}#)
+ (values (quote ()) #{ids\ 3866}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt*\ 3793}#
+ (cdr #{p*\ 3864}#)
+ #{n\ 3865}#
+ #{ids\ 3866}#))
+ (lambda (#{y\ 3870}# #{ids\ 3871}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt\ 3795}#
+ (car #{p*\ 3864}#)
+ #{n\ 3865}#
+ #{ids\ 3871}#))
+ (lambda (#{x\ 3874}# #{ids\ 3875}#)
+ (values
+ (cons #{x\ 3874}# #{y\ 3870}#)
+ #{ids\ 3875}#)))))))))
+ (begin
+ (#{cvt\ 3795}# #{pattern\ 3788}# 0 (quote ())))))))
+ (begin
+ (lambda (#{e\ 3878}#
+ #{r\ 3879}#
+ #{w\ 3880}#
+ #{s\ 3881}#
+ #{mod\ 3882}#)
+ (begin
+ (let ((#{e\ 3889}#
+ (#{source-wrap\ 458}#
+ #{e\ 3878}#
+ #{w\ 3880}#
+ #{s\ 3881}#
+ #{mod\ 3882}#)))
+ (let ((#{tmp\ 3890}# #{e\ 3889}#))
+ (let ((#{tmp\ 3891}#
+ ($sc-dispatch
+ #{tmp\ 3890}#
+ '(any any each-any . each-any))))
+ (if #{tmp\ 3891}#
+ (@apply
+ (lambda (#{_\ 3896}#
+ #{val\ 3897}#
+ #{key\ 3898}#
+ #{m\ 3899}#)
+ (if (and-map
+ (lambda (#{x\ 3900}#)
+ (if (#{id?\ 387}# #{x\ 3900}#)
+ (not (#{ellipsis?\ 488}#
+ #{x\ 3900}#))
+ #f))
+ #{key\ 3898}#)
+ (begin
+ (let ((#{x\ 3906}#
+ (#{gen-var\ 500}# (quote tmp))))
+ (#{build-application\ 309}#
+ #{s\ 3881}#
+ (#{build-simple-lambda\ 329}#
+ #f
+ (list (quote tmp))
+ #f
+ (list #{x\ 3906}#)
+ '()
+ (#{gen-syntax-case\ 3671}#
+ (#{build-lexical-reference\ 315}#
+ 'value
+ #f
+ 'tmp
+ #{x\ 3906}#)
+ #{key\ 3898}#
+ #{m\ 3899}#
+ #{r\ 3879}#
+ #{mod\ 3882}#))
+ (list (#{chi\ 472}#
+ #{val\ 3897}#
+ #{r\ 3879}#
+ '(())
+ #{mod\ 3882}#)))))
+ (syntax-violation
+ 'syntax-case
+ "invalid literals list"
+ #{e\ 3889}#)))
+ #{tmp\ 3891}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 3890}#))))))))))
+ (set! macroexpand
+ (lambda*
+ (#{x\ 3912}#
+ #:optional
+ (#{m\ 3914}# (quote e))
+ (#{esew\ 3916}# (quote (eval))))
+ (#{chi-top\ 470}#
+ #{x\ 3912}#
+ '()
+ '((top))
+ #{m\ 3914}#
+ #{esew\ 3916}#
+ (cons 'hygiene
+ (module-name (current-module))))))
+ (set! identifier?
+ (lambda (#{x\ 3920}#)
+ (#{nonsymbol-id?\ 385}# #{x\ 3920}#)))
+ (set! datum->syntax
+ (lambda (#{id\ 3922}# #{datum\ 3923}#)
+ (#{make-syntax-object\ 349}#
+ #{datum\ 3923}#
+ (#{syntax-object-wrap\ 355}# #{id\ 3922}#)
+ (#{syntax-object-module\ 357}# #{id\ 3922}#))))
+ (set! syntax->datum
+ (lambda (#{x\ 3926}#)
+ (#{strip\ 498}# #{x\ 3926}# (quote (())))))
+ (set! syntax-source
+ (lambda (#{x\ 3929}#)
+ (#{source-annotation\ 366}# #{x\ 3929}#)))
+ (set! generate-temporaries
+ (lambda (#{ls\ 3931}#)
+ (begin
+ (begin
+ (let ((#{x\ 3935}# #{ls\ 3931}#))
+ (if (not (list? #{x\ 3935}#))
+ (syntax-violation
+ 'generate-temporaries
+ "invalid argument"
+ #{x\ 3935}#))))
+ (map (lambda (#{x\ 3936}#)
+ (#{wrap\ 456}# (gensym) (quote ((top))) #f))
+ #{ls\ 3931}#))))
+ (set! free-identifier=?
+ (lambda (#{x\ 3940}# #{y\ 3941}#)
+ (begin
+ (begin
+ (let ((#{x\ 3946}# #{x\ 3940}#))
+ (if (not (#{nonsymbol-id?\ 385}# #{x\ 3946}#))
+ (syntax-violation
+ 'free-identifier=?
+ "invalid argument"
+ #{x\ 3946}#))))
+ (begin
+ (let ((#{x\ 3949}# #{y\ 3941}#))
+ (if (not (#{nonsymbol-id?\ 385}# #{x\ 3949}#))
+ (syntax-violation
+ 'free-identifier=?
+ "invalid argument"
+ #{x\ 3949}#))))
+ (#{free-id=?\ 446}# #{x\ 3940}# #{y\ 3941}#))))
+ (set! bound-identifier=?
+ (lambda (#{x\ 3950}# #{y\ 3951}#)
+ (begin
+ (begin
+ (let ((#{x\ 3956}# #{x\ 3950}#))
+ (if (not (#{nonsymbol-id?\ 385}# #{x\ 3956}#))
+ (syntax-violation
+ 'bound-identifier=?
+ "invalid argument"
+ #{x\ 3956}#))))
+ (begin
+ (let ((#{x\ 3959}# #{y\ 3951}#))
+ (if (not (#{nonsymbol-id?\ 385}# #{x\ 3959}#))
+ (syntax-violation
+ 'bound-identifier=?
+ "invalid argument"
+ #{x\ 3959}#))))
+ (#{bound-id=?\ 448}# #{x\ 3950}# #{y\ 3951}#))))
+ (set! syntax-violation
+ (lambda (#{who\ 3960}#
+ #{message\ 3961}#
+ #{form\ 3962}#
+ .
+ #{subform\ 3963}#)
+ (begin
+ (begin
+ (let ((#{x\ 3970}# #{who\ 3960}#))
+ (if (not (let ((#{x\ 3971}# #{x\ 3970}#))
+ (begin
+ (let ((#{t\ 3975}# (not #{x\ 3971}#)))
+ (if #{t\ 3975}#
+ #{t\ 3975}#
+ (begin
+ (let ((#{t\ 3978}#
+ (string? #{x\ 3971}#)))
+ (if #{t\ 3978}#
+ #{t\ 3978}#
+ (symbol? #{x\ 3971}#)))))))))
+ (syntax-violation
+ 'syntax-violation
+ "invalid argument"
+ #{x\ 3970}#))))
+ (begin
+ (let ((#{x\ 3982}# #{message\ 3961}#))
+ (if (not (string? #{x\ 3982}#))
+ (syntax-violation
+ 'syntax-violation
+ "invalid argument"
+ #{x\ 3982}#))))
+ (scm-error
+ 'syntax-error
+ 'macroexpand
+ (string-append
+ (if #{who\ 3960}# "~a: " "")
+ "~a "
+ (if (null? #{subform\ 3963}#)
+ "in ~a"
+ "in subform `~s' of `~s'"))
+ (begin
+ (let ((#{tail\ 3984}#
+ (cons #{message\ 3961}#
+ (map (lambda (#{x\ 3985}#)
+ (#{strip\ 498}#
+ #{x\ 3985}#
+ '(())))
+ (append
+ #{subform\ 3963}#
+ (list #{form\ 3962}#))))))
+ (if #{who\ 3960}#
+ (cons #{who\ 3960}# #{tail\ 3984}#)
+ #{tail\ 3984}#)))
+ #f))))
+ (letrec*
+ ((#{match\ 4001}#
+ (lambda (#{e\ 4002}#
+ #{p\ 4003}#
+ #{w\ 4004}#
+ #{r\ 4005}#
+ #{mod\ 4006}#)
+ (if (not #{r\ 4005}#)
#f
- (if (eq? #{p\ 3934}# (quote any))
- (cons (#{wrap\ 441}#
- #{e\ 3933}#
- #{w\ 3935}#
- #{mod\ 3937}#)
- #{r\ 3936}#)
- (if (#{syntax-object?\ 336}# #{e\ 3933}#)
- (#{match*\ 3930}#
- (#{syntax-object-expression\ 338}# #{e\ 3933}#)
- #{p\ 3934}#
- (#{join-wraps\ 423}#
- #{w\ 3935}#
- (#{syntax-object-wrap\ 340}# #{e\ 3933}#))
- #{r\ 3936}#
- (#{syntax-object-module\ 342}# #{e\ 3933}#))
- (#{match*\ 3930}#
- #{e\ 3933}#
- #{p\ 3934}#
- #{w\ 3935}#
- #{r\ 3936}#
- #{mod\ 3937}#))))))
- (#{match*\ 3930}#
- (lambda (#{e\ 3950}#
- #{p\ 3951}#
- #{w\ 3952}#
- #{r\ 3953}#
- #{mod\ 3954}#)
- (if (null? #{p\ 3951}#)
- (if (null? #{e\ 3950}#) #{r\ 3953}# #f)
- (if (pair? #{p\ 3951}#)
- (if (pair? #{e\ 3950}#)
- (#{match\ 3932}#
- (car #{e\ 3950}#)
- (car #{p\ 3951}#)
- #{w\ 3952}#
- (#{match\ 3932}#
- (cdr #{e\ 3950}#)
- (cdr #{p\ 3951}#)
- #{w\ 3952}#
- #{r\ 3953}#
- #{mod\ 3954}#)
- #{mod\ 3954}#)
+ (if (eq? #{p\ 4003}# (quote any))
+ (cons (#{wrap\ 456}#
+ #{e\ 4002}#
+ #{w\ 4004}#
+ #{mod\ 4006}#)
+ #{r\ 4005}#)
+ (if (#{syntax-object?\ 351}# #{e\ 4002}#)
+ (#{match*\ 3999}#
+ (#{syntax-object-expression\ 353}# #{e\ 4002}#)
+ #{p\ 4003}#
+ (#{join-wraps\ 438}#
+ #{w\ 4004}#
+ (#{syntax-object-wrap\ 355}# #{e\ 4002}#))
+ #{r\ 4005}#
+ (#{syntax-object-module\ 357}# #{e\ 4002}#))
+ (#{match*\ 3999}#
+ #{e\ 4002}#
+ #{p\ 4003}#
+ #{w\ 4004}#
+ #{r\ 4005}#
+ #{mod\ 4006}#))))))
+ (#{match*\ 3999}#
+ (lambda (#{e\ 4019}#
+ #{p\ 4020}#
+ #{w\ 4021}#
+ #{r\ 4022}#
+ #{mod\ 4023}#)
+ (if (null? #{p\ 4020}#)
+ (if (null? #{e\ 4019}#) #{r\ 4022}# #f)
+ (if (pair? #{p\ 4020}#)
+ (if (pair? #{e\ 4019}#)
+ (#{match\ 4001}#
+ (car #{e\ 4019}#)
+ (car #{p\ 4020}#)
+ #{w\ 4021}#
+ (#{match\ 4001}#
+ (cdr #{e\ 4019}#)
+ (cdr #{p\ 4020}#)
+ #{w\ 4021}#
+ #{r\ 4022}#
+ #{mod\ 4023}#)
+ #{mod\ 4023}#)
#f)
- (if (eq? #{p\ 3951}# (quote each-any))
- (let ((#{l\ 3971}#
- (#{match-each-any\ 3924}#
- #{e\ 3950}#
- #{w\ 3952}#
- #{mod\ 3954}#)))
- (if #{l\ 3971}#
- (cons #{l\ 3971}# #{r\ 3953}#)
- #f))
- (let ((#{atom-key\ 3977}# (vector-ref #{p\ 3951}# 0)))
- (if (memv #{atom-key\ 3977}# (quote (each)))
- (if (null? #{e\ 3950}#)
- (#{match-empty\ 3926}#
- (vector-ref #{p\ 3951}# 1)
- #{r\ 3953}#)
- (let ((#{l\ 3980}#
- (#{match-each\ 3920}#
- #{e\ 3950}#
- (vector-ref #{p\ 3951}# 1)
- #{w\ 3952}#
- #{mod\ 3954}#)))
- (if #{l\ 3980}#
- (letrec ((#{collect\ 3985}#
- (lambda (#{l\ 3986}#)
- (if (null? (car #{l\ 3986}#))
- #{r\ 3953}#
- (cons (map car #{l\ 3986}#)
- (#{collect\ 3985}#
- (map cdr
- #{l\
3986}#)))))))
- (#{collect\ 3985}# #{l\ 3980}#))
- #f)))
- (if (memv #{atom-key\ 3977}# (quote (each+)))
- (call-with-values
- (lambda ()
- (#{match-each+\ 3922}#
- #{e\ 3950}#
- (vector-ref #{p\ 3951}# 1)
- (vector-ref #{p\ 3951}# 2)
- (vector-ref #{p\ 3951}# 3)
- #{w\ 3952}#
- #{r\ 3953}#
- #{mod\ 3954}#))
- (lambda (#{xr*\ 3988}#
- #{y-pat\ 3989}#
- #{r\ 3990}#)
- (if #{r\ 3990}#
- (if (null? #{y-pat\ 3989}#)
- (if (null? #{xr*\ 3988}#)
- (#{match-empty\ 3926}#
- (vector-ref #{p\ 3951}# 1)
- #{r\ 3990}#)
- (#{combine\ 3928}#
- #{xr*\ 3988}#
- #{r\ 3990}#))
+ (if (eq? #{p\ 4020}# (quote each-any))
+ (begin
+ (let ((#{l\ 4040}#
+ (#{match-each-any\ 3993}#
+ #{e\ 4019}#
+ #{w\ 4021}#
+ #{mod\ 4023}#)))
+ (if #{l\ 4040}#
+ (cons #{l\ 4040}# #{r\ 4022}#)
+ #f)))
+ (begin
+ (let ((#{atom-key\ 4046}#
+ (vector-ref #{p\ 4020}# 0)))
+ (if (eqv? #{atom-key\ 4046}# (quote each))
+ (if (null? #{e\ 4019}#)
+ (#{match-empty\ 3995}#
+ (vector-ref #{p\ 4020}# 1)
+ #{r\ 4022}#)
+ (begin
+ (let ((#{l\ 4049}#
+ (#{match-each\ 3989}#
+ #{e\ 4019}#
+ (vector-ref #{p\ 4020}# 1)
+ #{w\ 4021}#
+ #{mod\ 4023}#)))
+ (if #{l\ 4049}#
+ (letrec*
+ ((#{collect\ 4054}#
+ (lambda (#{l\ 4055}#)
+ (if (null? (car #{l\ 4055}#))
+ #{r\ 4022}#
+ (cons (map car #{l\ 4055}#)
+ (#{collect\ 4054}#
+ (map cdr
+ #{l\ 4055}#)))))))
+ (begin
+ (#{collect\ 4054}# #{l\ 4049}#)))
+ #f))))
+ (if (eqv? #{atom-key\ 4046}# (quote each+))
+ (call-with-values
+ (lambda ()
+ (#{match-each+\ 3991}#
+ #{e\ 4019}#
+ (vector-ref #{p\ 4020}# 1)
+ (vector-ref #{p\ 4020}# 2)
+ (vector-ref #{p\ 4020}# 3)
+ #{w\ 4021}#
+ #{r\ 4022}#
+ #{mod\ 4023}#))
+ (lambda (#{xr*\ 4057}#
+ #{y-pat\ 4058}#
+ #{r\ 4059}#)
+ (if #{r\ 4059}#
+ (if (null? #{y-pat\ 4058}#)
+ (if (null? #{xr*\ 4057}#)
+ (#{match-empty\ 3995}#
+ (vector-ref #{p\ 4020}# 1)
+ #{r\ 4059}#)
+ (#{combine\ 3997}#
+ #{xr*\ 4057}#
+ #{r\ 4059}#))
+ #f)
+ #f)))
+ (if (eqv? #{atom-key\ 4046}# (quote free-id))
+ (if (#{id?\ 387}# #{e\ 4019}#)
+ (if (#{free-id=?\ 446}#
+ (#{wrap\ 456}#
+ #{e\ 4019}#
+ #{w\ 4021}#
+ #{mod\ 4023}#)
+ (vector-ref #{p\ 4020}# 1))
+ #{r\ 4022}#
#f)
- #f)))
- (if (memv #{atom-key\ 3977}# (quote (free-id)))
- (if (#{id?\ 372}# #{e\ 3950}#)
- (if (#{free-id=?\ 431}#
- (#{wrap\ 441}#
- #{e\ 3950}#
- #{w\ 3952}#
- #{mod\ 3954}#)
- (vector-ref #{p\ 3951}# 1))
- #{r\ 3953}#
- #f)
- #f)
- (if (memv #{atom-key\ 3977}# (quote (atom)))
- (if (equal?
- (vector-ref #{p\ 3951}# 1)
- (#{strip\ 483}#
- #{e\ 3950}#
- #{w\ 3952}#))
- #{r\ 3953}#
#f)
- (if (memv #{atom-key\ 3977}#
- '(vector))
- (if (vector? #{e\ 3950}#)
- (#{match\ 3932}#
- (vector->list #{e\ 3950}#)
- (vector-ref #{p\ 3951}# 1)
- #{w\ 3952}#
- #{r\ 3953}#
- #{mod\ 3954}#)
- #f))))))))))))
- (#{combine\ 3928}#
- (lambda (#{r*\ 4007}# #{r\ 4008}#)
- (if (null? (car #{r*\ 4007}#))
- #{r\ 4008}#
- (cons (map car #{r*\ 4007}#)
- (#{combine\ 3928}#
- (map cdr #{r*\ 4007}#)
- #{r\ 4008}#)))))
- (#{match-empty\ 3926}#
- (lambda (#{p\ 4011}# #{r\ 4012}#)
- (if (null? #{p\ 4011}#)
- #{r\ 4012}#
- (if (eq? #{p\ 4011}# (quote any))
- (cons (quote ()) #{r\ 4012}#)
- (if (pair? #{p\ 4011}#)
- (#{match-empty\ 3926}#
- (car #{p\ 4011}#)
- (#{match-empty\ 3926}#
- (cdr #{p\ 4011}#)
- #{r\ 4012}#))
- (if (eq? #{p\ 4011}# (quote each-any))
- (cons (quote ()) #{r\ 4012}#)
- (let ((#{atom-key\ 4026}#
- (vector-ref #{p\ 4011}# 0)))
- (if (memv #{atom-key\ 4026}# (quote (each)))
- (#{match-empty\ 3926}#
- (vector-ref #{p\ 4011}# 1)
- #{r\ 4012}#)
- (if (memv #{atom-key\ 4026}# (quote (each+)))
- (#{match-empty\ 3926}#
- (vector-ref #{p\ 4011}# 1)
- (#{match-empty\ 3926}#
- (reverse (vector-ref #{p\ 4011}# 2))
- (#{match-empty\ 3926}#
- (vector-ref #{p\ 4011}# 3)
- #{r\ 4012}#)))
- (if (memv #{atom-key\ 4026}#
- '(free-id atom))
- #{r\ 4012}#
- (if (memv #{atom-key\ 4026}#
- '(vector))
- (#{match-empty\ 3926}#
- (vector-ref #{p\ 4011}# 1)
- #{r\ 4012}#))))))))))))
- (#{match-each-any\ 3924}#
- (lambda (#{e\ 4031}# #{w\ 4032}# #{mod\ 4033}#)
- (if (pair? #{e\ 4031}#)
- (let ((#{l\ 4040}#
- (#{match-each-any\ 3924}#
- (cdr #{e\ 4031}#)
- #{w\ 4032}#
- #{mod\ 4033}#)))
- (if #{l\ 4040}#
- (cons (#{wrap\ 441}#
- (car #{e\ 4031}#)
- #{w\ 4032}#
- #{mod\ 4033}#)
- #{l\ 4040}#)
- #f))
- (if (null? #{e\ 4031}#)
+ (if (eqv? #{atom-key\ 4046}# (quote atom))
+ (if (equal?
+ (vector-ref #{p\ 4020}# 1)
+ (#{strip\ 498}#
+ #{e\ 4019}#
+ #{w\ 4021}#))
+ #{r\ 4022}#
+ #f)
+ (if (eqv? #{atom-key\ 4046}#
+ 'vector)
+ (if (vector? #{e\ 4019}#)
+ (#{match\ 4001}#
+ (vector->list #{e\ 4019}#)
+ (vector-ref #{p\ 4020}# 1)
+ #{w\ 4021}#
+ #{r\ 4022}#
+ #{mod\ 4023}#)
+ #f)))))))))))))
+ (#{combine\ 3997}#
+ (lambda (#{r*\ 4076}# #{r\ 4077}#)
+ (if (null? (car #{r*\ 4076}#))
+ #{r\ 4077}#
+ (cons (map car #{r*\ 4076}#)
+ (#{combine\ 3997}#
+ (map cdr #{r*\ 4076}#)
+ #{r\ 4077}#)))))
+ (#{match-empty\ 3995}#
+ (lambda (#{p\ 4080}# #{r\ 4081}#)
+ (if (null? #{p\ 4080}#)
+ #{r\ 4081}#
+ (if (eq? #{p\ 4080}# (quote any))
+ (cons (quote ()) #{r\ 4081}#)
+ (if (pair? #{p\ 4080}#)
+ (#{match-empty\ 3995}#
+ (car #{p\ 4080}#)
+ (#{match-empty\ 3995}#
+ (cdr #{p\ 4080}#)
+ #{r\ 4081}#))
+ (if (eq? #{p\ 4080}# (quote each-any))
+ (cons (quote ()) #{r\ 4081}#)
+ (begin
+ (let ((#{atom-key\ 4095}#
+ (vector-ref #{p\ 4080}# 0)))
+ (if (eqv? #{atom-key\ 4095}# (quote each))
+ (#{match-empty\ 3995}#
+ (vector-ref #{p\ 4080}# 1)
+ #{r\ 4081}#)
+ (if (eqv? #{atom-key\ 4095}# (quote each+))
+ (#{match-empty\ 3995}#
+ (vector-ref #{p\ 4080}# 1)
+ (#{match-empty\ 3995}#
+ (reverse (vector-ref #{p\ 4080}# 2))
+ (#{match-empty\ 3995}#
+ (vector-ref #{p\ 4080}# 3)
+ #{r\ 4081}#)))
+ (if (if (eqv? #{atom-key\ 4095}#
+ 'free-id)
+ #t
+ (eqv? #{atom-key\ 4095}#
+ 'atom))
+ #{r\ 4081}#
+ (if (eqv? #{atom-key\ 4095}#
+ 'vector)
+ (#{match-empty\ 3995}#
+ (vector-ref #{p\ 4080}# 1)
+ #{r\ 4081}#)))))))))))))
+ (#{match-each-any\ 3993}#
+ (lambda (#{e\ 4100}# #{w\ 4101}# #{mod\ 4102}#)
+ (if (pair? #{e\ 4100}#)
+ (begin
+ (let ((#{l\ 4109}#
+ (#{match-each-any\ 3993}#
+ (cdr #{e\ 4100}#)
+ #{w\ 4101}#
+ #{mod\ 4102}#)))
+ (if #{l\ 4109}#
+ (cons (#{wrap\ 456}#
+ (car #{e\ 4100}#)
+ #{w\ 4101}#
+ #{mod\ 4102}#)
+ #{l\ 4109}#)
+ #f)))
+ (if (null? #{e\ 4100}#)
'()
- (if (#{syntax-object?\ 336}# #{e\ 4031}#)
- (#{match-each-any\ 3924}#
- (#{syntax-object-expression\ 338}# #{e\ 4031}#)
- (#{join-wraps\ 423}#
- #{w\ 4032}#
- (#{syntax-object-wrap\ 340}# #{e\ 4031}#))
- #{mod\ 4033}#)
+ (if (#{syntax-object?\ 351}# #{e\ 4100}#)
+ (#{match-each-any\ 3993}#
+ (#{syntax-object-expression\ 353}# #{e\ 4100}#)
+ (#{join-wraps\ 438}#
+ #{w\ 4101}#
+ (#{syntax-object-wrap\ 355}# #{e\ 4100}#))
+ #{mod\ 4102}#)
#f)))))
- (#{match-each+\ 3922}#
- (lambda (#{e\ 4048}#
- #{x-pat\ 4049}#
- #{y-pat\ 4050}#
- #{z-pat\ 4051}#
- #{w\ 4052}#
- #{r\ 4053}#
- #{mod\ 4054}#)
- (letrec ((#{f\ 4065}#
- (lambda (#{e\ 4066}# #{w\ 4067}#)
- (if (pair? #{e\ 4066}#)
- (call-with-values
- (lambda ()
- (#{f\ 4065}#
- (cdr #{e\ 4066}#)
- #{w\ 4067}#))
- (lambda (#{xr*\ 4070}#
- #{y-pat\ 4071}#
- #{r\ 4072}#)
- (if #{r\ 4072}#
- (if (null? #{y-pat\ 4071}#)
- (let ((#{xr\ 4077}#
- (#{match\ 3932}#
- (car #{e\ 4066}#)
- #{x-pat\ 4049}#
- #{w\ 4067}#
- '()
- #{mod\ 4054}#)))
- (if #{xr\ 4077}#
- (values
- (cons #{xr\ 4077}#
- #{xr*\ 4070}#)
- #{y-pat\ 4071}#
- #{r\ 4072}#)
- (values #f #f #f)))
+ (#{match-each+\ 3991}#
+ (lambda (#{e\ 4117}#
+ #{x-pat\ 4118}#
+ #{y-pat\ 4119}#
+ #{z-pat\ 4120}#
+ #{w\ 4121}#
+ #{r\ 4122}#
+ #{mod\ 4123}#)
+ (letrec*
+ ((#{f\ 4134}#
+ (lambda (#{e\ 4135}# #{w\ 4136}#)
+ (if (pair? #{e\ 4135}#)
+ (call-with-values
+ (lambda ()
+ (#{f\ 4134}# (cdr #{e\ 4135}#) #{w\ 4136}#))
+ (lambda (#{xr*\ 4139}#
+ #{y-pat\ 4140}#
+ #{r\ 4141}#)
+ (if #{r\ 4141}#
+ (if (null? #{y-pat\ 4140}#)
+ (begin
+ (let ((#{xr\ 4146}#
+ (#{match\ 4001}#
+ (car #{e\ 4135}#)
+ #{x-pat\ 4118}#
+ #{w\ 4136}#
+ '()
+ #{mod\ 4123}#)))
+ (if #{xr\ 4146}#
(values
- '()
- (cdr #{y-pat\ 4071}#)
- (#{match\ 3932}#
- (car #{e\ 4066}#)
- (car #{y-pat\ 4071}#)
- #{w\ 4067}#
- #{r\ 4072}#
- #{mod\ 4054}#)))
- (values #f #f #f))))
- (if (#{syntax-object?\ 336}# #{e\ 4066}#)
- (#{f\ 4065}#
- (#{syntax-object-expression\ 338}#
- #{e\ 4066}#)
- (#{join-wraps\ 423}#
- #{w\ 4067}#
- #{e\ 4066}#))
+ (cons #{xr\ 4146}# #{xr*\ 4139}#)
+ #{y-pat\ 4140}#
+ #{r\ 4141}#)
+ (values #f #f #f))))
(values
'()
- #{y-pat\ 4050}#
- (#{match\ 3932}#
- #{e\ 4066}#
- #{z-pat\ 4051}#
- #{w\ 4067}#
- #{r\ 4053}#
- #{mod\ 4054}#)))))))
- (#{f\ 4065}# #{e\ 4048}# #{w\ 4052}#))))
- (#{match-each\ 3920}#
- (lambda (#{e\ 4081}#
- #{p\ 4082}#
- #{w\ 4083}#
- #{mod\ 4084}#)
- (if (pair? #{e\ 4081}#)
- (let ((#{first\ 4092}#
- (#{match\ 3932}#
- (car #{e\ 4081}#)
- #{p\ 4082}#
- #{w\ 4083}#
- '()
- #{mod\ 4084}#)))
- (if #{first\ 4092}#
- (let ((#{rest\ 4096}#
- (#{match-each\ 3920}#
- (cdr #{e\ 4081}#)
- #{p\ 4082}#
- #{w\ 4083}#
- #{mod\ 4084}#)))
- (if #{rest\ 4096}#
- (cons #{first\ 4092}# #{rest\ 4096}#)
- #f))
- #f))
- (if (null? #{e\ 4081}#)
+ (cdr #{y-pat\ 4140}#)
+ (#{match\ 4001}#
+ (car #{e\ 4135}#)
+ (car #{y-pat\ 4140}#)
+ #{w\ 4136}#
+ #{r\ 4141}#
+ #{mod\ 4123}#)))
+ (values #f #f #f))))
+ (if (#{syntax-object?\ 351}# #{e\ 4135}#)
+ (#{f\ 4134}#
+ (#{syntax-object-expression\ 353}# #{e\ 4135}#)
+ (#{join-wraps\ 438}# #{w\ 4136}# #{e\ 4135}#))
+ (values
+ '()
+ #{y-pat\ 4119}#
+ (#{match\ 4001}#
+ #{e\ 4135}#
+ #{z-pat\ 4120}#
+ #{w\ 4136}#
+ #{r\ 4122}#
+ #{mod\ 4123}#)))))))
+ (begin (#{f\ 4134}# #{e\ 4117}# #{w\ 4121}#)))))
+ (#{match-each\ 3989}#
+ (lambda (#{e\ 4150}#
+ #{p\ 4151}#
+ #{w\ 4152}#
+ #{mod\ 4153}#)
+ (if (pair? #{e\ 4150}#)
+ (begin
+ (let ((#{first\ 4161}#
+ (#{match\ 4001}#
+ (car #{e\ 4150}#)
+ #{p\ 4151}#
+ #{w\ 4152}#
+ '()
+ #{mod\ 4153}#)))
+ (if #{first\ 4161}#
+ (begin
+ (let ((#{rest\ 4165}#
+ (#{match-each\ 3989}#
+ (cdr #{e\ 4150}#)
+ #{p\ 4151}#
+ #{w\ 4152}#
+ #{mod\ 4153}#)))
+ (if #{rest\ 4165}#
+ (cons #{first\ 4161}# #{rest\ 4165}#)
+ #f)))
+ #f)))
+ (if (null? #{e\ 4150}#)
'()
- (if (#{syntax-object?\ 336}# #{e\ 4081}#)
- (#{match-each\ 3920}#
- (#{syntax-object-expression\ 338}# #{e\ 4081}#)
- #{p\ 4082}#
- (#{join-wraps\ 423}#
- #{w\ 4083}#
- (#{syntax-object-wrap\ 340}# #{e\ 4081}#))
- (#{syntax-object-module\ 342}# #{e\ 4081}#))
+ (if (#{syntax-object?\ 351}# #{e\ 4150}#)
+ (#{match-each\ 3989}#
+ (#{syntax-object-expression\ 353}# #{e\ 4150}#)
+ #{p\ 4151}#
+ (#{join-wraps\ 438}#
+ #{w\ 4152}#
+ (#{syntax-object-wrap\ 355}# #{e\ 4150}#))
+ (#{syntax-object-module\ 357}# #{e\ 4150}#))
#f))))))
- (set! $sc-dispatch
- (lambda (#{e\ 4104}# #{p\ 4105}#)
- (if (eq? #{p\ 4105}# (quote any))
- (list #{e\ 4104}#)
- (if (#{syntax-object?\ 336}# #{e\ 4104}#)
- (#{match*\ 3930}#
- (#{syntax-object-expression\ 338}# #{e\ 4104}#)
- #{p\ 4105}#
- (#{syntax-object-wrap\ 340}# #{e\ 4104}#)
- '()
- (#{syntax-object-module\ 342}# #{e\ 4104}#))
- (#{match*\ 3930}#
- #{e\ 4104}#
- #{p\ 4105}#
- '(())
- '()
- #f)))))))))
+ (begin
+ (set! $sc-dispatch
+ (lambda (#{e\ 4173}# #{p\ 4174}#)
+ (if (eq? #{p\ 4174}# (quote any))
+ (list #{e\ 4173}#)
+ (if (#{syntax-object?\ 351}# #{e\ 4173}#)
+ (#{match*\ 3999}#
+ (#{syntax-object-expression\ 353}# #{e\ 4173}#)
+ #{p\ 4174}#
+ (#{syntax-object-wrap\ 355}# #{e\ 4173}#)
+ '()
+ (#{syntax-object-module\ 357}# #{e\ 4173}#))
+ (#{match*\ 3999}#
+ #{e\ 4173}#
+ #{p\ 4174}#
+ '(())
+ '()
+ #f)))))))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
- (lambda (#{x\ 4114}#)
- ((lambda (#{tmp\ 4116}#)
- ((lambda (#{tmp\ 4117}#)
- (if #{tmp\ 4117}#
- (apply (lambda (#{_\ 4121}# #{e1\ 4122}# #{e2\ 4123}#)
- (cons '#(syntax-object
- begin
- ((top)
- #(ribcage
- #(_ e1 e2)
- #((top) (top) (top))
- #("i4118" "i4119" "i4120"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4115")))
- (hygiene guile))
- (cons #{e1\ 4122}# #{e2\ 4123}#)))
- #{tmp\ 4117}#)
- ((lambda (#{tmp\ 4125}#)
- (if #{tmp\ 4125}#
- (apply (lambda (#{_\ 4131}#
- #{out\ 4132}#
- #{in\ 4133}#
- #{e1\ 4134}#
- #{e2\ 4135}#)
- (list '#(syntax-object
- syntax-case
- ((top)
- #(ribcage
- #(_ out in e1 e2)
- #((top) (top) (top) (top) (top))
- #("i4126"
- "i4127"
- "i4128"
- "i4129"
- "i4130"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4115")))
- (hygiene guile))
- #{in\ 4133}#
- '()
- (list #{out\ 4132}#
- (cons '#(syntax-object
- begin
- ((top)
- #(ribcage
- #(_ out in e1 e2)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i4126"
- "i4127"
- "i4128"
- "i4129"
- "i4130"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4115")))
- (hygiene guile))
- (cons #{e1\ 4134}#
- #{e2\ 4135}#)))))
- #{tmp\ 4125}#)
- ((lambda (#{tmp\ 4137}#)
- (if #{tmp\ 4137}#
- (apply (lambda (#{_\ 4143}#
- #{out\ 4144}#
- #{in\ 4145}#
- #{e1\ 4146}#
- #{e2\ 4147}#)
- (list '#(syntax-object
- syntax-case
- ((top)
- #(ribcage
- #(_ out in e1 e2)
- #((top) (top) (top) (top) (top))
- #("i4138"
- "i4139"
- "i4140"
- "i4141"
- "i4142"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4115")))
- (hygiene guile))
- (cons '#(syntax-object
- list
- ((top)
- #(ribcage
- #(_ out in e1 e2)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i4138"
- "i4139"
- "i4140"
- "i4141"
- "i4142"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4115")))
- (hygiene guile))
- #{in\ 4145}#)
- '()
- (list #{out\ 4144}#
- (cons '#(syntax-object
- begin
- ((top)
- #(ribcage
- #(_ out in e1 e2)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i4138"
- "i4139"
- "i4140"
- "i4141"
- "i4142"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4115")))
- (hygiene guile))
- (cons #{e1\ 4146}#
- #{e2\ 4147}#)))))
- #{tmp\ 4137}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4116}#)))
+ (lambda (#{x\ 4183}#)
+ (let ((#{tmp\ 4185}# #{x\ 4183}#))
+ (let ((#{tmp\ 4186}#
+ ($sc-dispatch
+ #{tmp\ 4185}#
+ '(any () any . each-any))))
+ (if #{tmp\ 4186}#
+ (@apply
+ (lambda (#{_\ 4190}# #{e1\ 4191}# #{e2\ 4192}#)
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(_ e1 e2)
+ #((top) (top) (top))
+ #("i4187" "i4188" "i4189"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4184")))
+ (hygiene guile))
+ (cons #{e1\ 4191}# #{e2\ 4192}#)))
+ #{tmp\ 4186}#)
+ (let ((#{tmp\ 4194}#
($sc-dispatch
- #{tmp\ 4116}#
- '(any #(each (any any)) any . each-any)))))
- ($sc-dispatch
- #{tmp\ 4116}#
- '(any ((any any)) any . each-any)))))
- ($sc-dispatch
- #{tmp\ 4116}#
- '(any () any . each-any))))
- #{x\ 4114}#))))
+ #{tmp\ 4185}#
+ '(any ((any any)) any . each-any))))
+ (if #{tmp\ 4194}#
+ (@apply
+ (lambda (#{_\ 4200}#
+ #{out\ 4201}#
+ #{in\ 4202}#
+ #{e1\ 4203}#
+ #{e2\ 4204}#)
+ (list '#(syntax-object
+ syntax-case
+ ((top)
+ #(ribcage
+ #(_ out in e1 e2)
+ #((top) (top) (top) (top) (top))
+ #("i4195" "i4196" "i4197" "i4198" "i4199"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4184")))
+ (hygiene guile))
+ #{in\ 4202}#
+ '()
+ (list #{out\ 4201}#
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(_ out in e1 e2)
+ #((top) (top) (top) (top) (top))
+ #("i4195"
+ "i4196"
+ "i4197"
+ "i4198"
+ "i4199"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4184")))
+ (hygiene guile))
+ (cons #{e1\ 4203}# #{e2\ 4204}#)))))
+ #{tmp\ 4194}#)
+ (let ((#{tmp\ 4206}#
+ ($sc-dispatch
+ #{tmp\ 4185}#
+ '(any #(each (any any)) any . each-any))))
+ (if #{tmp\ 4206}#
+ (@apply
+ (lambda (#{_\ 4212}#
+ #{out\ 4213}#
+ #{in\ 4214}#
+ #{e1\ 4215}#
+ #{e2\ 4216}#)
+ (list '#(syntax-object
+ syntax-case
+ ((top)
+ #(ribcage
+ #(_ out in e1 e2)
+ #((top) (top) (top) (top) (top))
+ #("i4207" "i4208" "i4209" "i4210" "i4211"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4184")))
+ (hygiene guile))
+ (cons '#(syntax-object
+ list
+ ((top)
+ #(ribcage
+ #(_ out in e1 e2)
+ #((top) (top) (top) (top) (top))
+ #("i4207"
+ "i4208"
+ "i4209"
+ "i4210"
+ "i4211"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4184")))
+ (hygiene guile))
+ #{in\ 4214}#)
+ '()
+ (list #{out\ 4213}#
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(_ out in e1 e2)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4207"
+ "i4208"
+ "i4209"
+ "i4210"
+ "i4211"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4184")))
+ (hygiene guile))
+ (cons #{e1\ 4215}# #{e2\ 4216}#)))))
+ #{tmp\ 4206}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4185}#)))))))))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
- (lambda (#{x\ 4151}#)
- ((lambda (#{tmp\ 4153}#)
- ((lambda (#{tmp\ 4154}#)
- (if #{tmp\ 4154}#
- (apply (lambda (#{_\ 4160}#
- #{k\ 4161}#
- #{keyword\ 4162}#
- #{pattern\ 4163}#
- #{template\ 4164}#)
- (list '#(syntax-object
- lambda
- ((top)
- #(ribcage
- #(_ k keyword pattern template)
- #((top) (top) (top) (top) (top))
- #("i4155" "i4156" "i4157" "i4158" "i4159"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4152")))
- (hygiene guile))
- '(#(syntax-object
- x
+ (lambda (#{x\ 4220}#)
+ (let ((#{tmp\ 4222}# #{x\ 4220}#))
+ (let ((#{tmp\ 4223}#
+ ($sc-dispatch
+ #{tmp\ 4222}#
+ '(any each-any . #(each ((any . any) any))))))
+ (if #{tmp\ 4223}#
+ (@apply
+ (lambda (#{_\ 4229}#
+ #{k\ 4230}#
+ #{keyword\ 4231}#
+ #{pattern\ 4232}#
+ #{template\ 4233}#)
+ (list '#(syntax-object
+ lambda
+ ((top)
+ #(ribcage
+ #(_ k keyword pattern template)
+ #((top) (top) (top) (top) (top))
+ #("i4224" "i4225" "i4226" "i4227" "i4228"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4221")))
+ (hygiene guile))
+ '(#(syntax-object
+ x
+ ((top)
+ #(ribcage
+ #(_ k keyword pattern template)
+ #((top) (top) (top) (top) (top))
+ #("i4224" "i4225" "i4226" "i4227" "i4228"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4221")))
+ (hygiene guile)))
+ (vector
+ '(#(syntax-object
+ macro-type
+ ((top)
+ #(ribcage
+ #(_ k keyword pattern template)
+ #((top) (top) (top) (top) (top))
+ #("i4224" "i4225" "i4226" "i4227" "i4228"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4221")))
+ (hygiene guile))
+ .
+ #(syntax-object
+ syntax-rules
+ ((top)
+ #(ribcage
+ #(_ k keyword pattern template)
+ #((top) (top) (top) (top) (top))
+ #("i4224" "i4225" "i4226" "i4227" "i4228"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4221")))
+ (hygiene guile)))
+ (cons '#(syntax-object
+ patterns
((top)
#(ribcage
#(_ k keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i4155" "i4156" "i4157" "i4158" "i4159"))
+ #("i4224" "i4225" "i4226" "i4227" "i4228"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4152")))
- (hygiene guile)))
- (vector
- '(#(syntax-object
- macro-type
- ((top)
- #(ribcage
- #(_ k keyword pattern template)
- #((top) (top) (top) (top) (top))
- #("i4155"
- "i4156"
- "i4157"
- "i4158"
- "i4159"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4152")))
- (hygiene guile))
- .
- #(syntax-object
- syntax-rules
- ((top)
- #(ribcage
- #(_ k keyword pattern template)
- #((top) (top) (top) (top) (top))
- #("i4155"
- "i4156"
- "i4157"
- "i4158"
- "i4159"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4152")))
- (hygiene guile)))
- (cons '#(syntax-object
- patterns
- ((top)
- #(ribcage
- #(_ k keyword pattern template)
- #((top) (top) (top) (top) (top))
- #("i4155"
- "i4156"
- "i4157"
- "i4158"
- "i4159"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4152")))
- (hygiene guile))
- #{pattern\ 4163}#))
- (cons '#(syntax-object
- syntax-case
- ((top)
- #(ribcage
- #(_ k keyword pattern template)
- #((top) (top) (top) (top) (top))
- #("i4155"
- "i4156"
- "i4157"
- "i4158"
- "i4159"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4152")))
- (hygiene guile))
- (cons '#(syntax-object
- x
+ #(ribcage #(x) #((top)) #("i4221")))
+ (hygiene guile))
+ #{pattern\ 4232}#))
+ (cons '#(syntax-object
+ syntax-case
+ ((top)
+ #(ribcage
+ #(_ k keyword pattern template)
+ #((top) (top) (top) (top) (top))
+ #("i4224" "i4225" "i4226" "i4227" "i4228"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4221")))
+ (hygiene guile))
+ (cons '#(syntax-object
+ x
+ ((top)
+ #(ribcage
+ #(_ k keyword pattern template)
+ #((top) (top) (top) (top) (top))
+ #("i4224"
+ "i4225"
+ "i4226"
+ "i4227"
+ "i4228"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4221")))
+ (hygiene guile))
+ (cons #{k\ 4230}#
+ (map (lambda (#{tmp\ 4237}#
+ #{tmp\ 4236}#)
+ (list (cons '#(syntax-object
+ dummy
+ ((top)
+ #(ribcage
+ #(_
+ k
+ keyword
+ pattern
+ template)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4224"
+ "i4225"
+ "i4226"
+ "i4227"
+ "i4228"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4221")))
+ (hygiene guile))
+ #{tmp\ 4236}#)
+ (list '#(syntax-object
+ syntax
+ ((top)
+ #(ribcage
+ #(_
+ k
+ keyword
+ pattern
+ template)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4224"
+ "i4225"
+ "i4226"
+ "i4227"
+ "i4228"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4221")))
+ (hygiene guile))
+ #{tmp\ 4237}#)))
+ #{template\ 4233}#
+ #{pattern\ 4232}#))))))
+ #{tmp\ 4223}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4222}#)))))))
+
+(define let*
+ (make-syntax-transformer
+ 'let*
+ 'macro
+ (lambda (#{x\ 4238}#)
+ (let ((#{tmp\ 4240}# #{x\ 4238}#))
+ (let ((#{tmp\ 4241}#
+ ($sc-dispatch
+ #{tmp\ 4240}#
+ '(any #(each (any any)) any . each-any))))
+ (if (if #{tmp\ 4241}#
+ (@apply
+ (lambda (#{let*\ 4247}#
+ #{x\ 4248}#
+ #{v\ 4249}#
+ #{e1\ 4250}#
+ #{e2\ 4251}#)
+ (and-map identifier? #{x\ 4248}#))
+ #{tmp\ 4241}#)
+ #f)
+ (@apply
+ (lambda (#{let*\ 4258}#
+ #{x\ 4259}#
+ #{v\ 4260}#
+ #{e1\ 4261}#
+ #{e2\ 4262}#)
+ (letrec*
+ ((#{f\ 4265}#
+ (lambda (#{bindings\ 4266}#)
+ (if (null? #{bindings\ 4266}#)
+ (cons '#(syntax-object
+ let
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(f bindings)
+ #((top) (top))
+ #("i4263" "i4264"))
+ #(ribcage
+ #(let* x v e1 e2)
+ #((top) (top) (top) (top) (top))
+ #("i4253"
+ "i4254"
+ "i4255"
+ "i4256"
+ "i4257"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4239")))
+ (hygiene guile))
+ (cons '()
+ (cons #{e1\ 4261}# #{e2\ 4262}#)))
+ (let ((#{tmp\ 4271}#
+ (list (#{f\ 4265}# (cdr #{bindings\ 4266}#))
+ (car #{bindings\ 4266}#))))
+ (let ((#{tmp\ 4272}#
+ ($sc-dispatch
+ #{tmp\ 4271}#
+ '(any any))))
+ (if #{tmp\ 4272}#
+ (@apply
+ (lambda (#{body\ 4275}# #{binding\ 4276}#)
+ (list '#(syntax-object
+ let
((top)
#(ribcage
- #(_ k keyword pattern template)
+ #(body binding)
+ #((top) (top))
+ #("i4273" "i4274"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f bindings)
+ #((top) (top))
+ #("i4263" "i4264"))
+ #(ribcage
+ #(let* x v e1 e2)
#((top) (top) (top) (top) (top))
- #("i4155"
- "i4156"
- "i4157"
- "i4158"
- "i4159"))
+ #("i4253"
+ "i4254"
+ "i4255"
+ "i4256"
+ "i4257"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4152")))
+ #("i4239")))
(hygiene guile))
- (cons #{k\ 4161}#
- (map (lambda (#{tmp\ 4168}#
- #{tmp\ 4167}#)
- (list (cons
'#(syntax-object
- dummy
- ((top)
- #(ribcage
- #(_
- k
-
keyword
-
pattern
-
template)
- #((top)
- (top)
- (top)
- (top)
-
(top))
-
#("i4155"
-
"i4156"
-
"i4157"
-
"i4158"
-
"i4159"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(x)
-
#((top))
-
#("i4152")))
- (hygiene
- guile))
- #{tmp\
4167}#)
- (list
'#(syntax-object
- syntax
- ((top)
- #(ribcage
- #(_
- k
-
keyword
-
pattern
-
template)
- #((top)
- (top)
- (top)
- (top)
-
(top))
-
#("i4155"
-
"i4156"
-
"i4157"
-
"i4158"
-
"i4159"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(x)
-
#((top))
-
#("i4152")))
- (hygiene
- guile))
- #{tmp\
4168}#)))
- #{template\ 4164}#
- #{pattern\ 4163}#))))))
- #{tmp\ 4154}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4153}#)))
- ($sc-dispatch
- #{tmp\ 4153}#
- '(any each-any . #(each ((any . any) any))))))
- #{x\ 4151}#))))
-
-(define let*
- (make-syntax-transformer
- 'let*
- 'macro
- (lambda (#{x\ 4169}#)
- ((lambda (#{tmp\ 4171}#)
- ((lambda (#{tmp\ 4172}#)
- (if (if #{tmp\ 4172}#
- (apply (lambda (#{let*\ 4178}#
- #{x\ 4179}#
- #{v\ 4180}#
- #{e1\ 4181}#
- #{e2\ 4182}#)
- (and-map identifier? #{x\ 4179}#))
- #{tmp\ 4172}#)
- #f)
- (apply (lambda (#{let*\ 4189}#
- #{x\ 4190}#
- #{v\ 4191}#
- #{e1\ 4192}#
- #{e2\ 4193}#)
- (letrec ((#{f\ 4196}#
- (lambda (#{bindings\ 4197}#)
- (if (null? #{bindings\ 4197}#)
- (cons '#(syntax-object
- let
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(f bindings)
- #((top) (top))
- #("i4194" "i4195"))
- #(ribcage
- #(let* x v e1 e2)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i4184"
- "i4185"
- "i4186"
- "i4187"
- "i4188"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4170")))
- (hygiene guile))
- (cons '()
- (cons #{e1\ 4192}#
- #{e2\ 4193}#)))
- ((lambda (#{tmp\ 4202}#)
- ((lambda (#{tmp\ 4203}#)
- (if #{tmp\ 4203}#
- (apply (lambda (#{body\ 4206}#
- #{binding\
4207}#)
- (list '#(syntax-object
- let
- ((top)
- #(ribcage
- #(body
- binding)
- #((top)
- (top))
- #("i4204"
- "i4205"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(f
- bindings)
- #((top)
- (top))
- #("i4194"
- "i4195"))
- #(ribcage
- #(let*
- x
- v
- e1
- e2)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i4184"
- "i4185"
- "i4186"
- "i4187"
- "i4188"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(x)
- #((top))
- #("i4170")))
- (hygiene
- guile))
- (list #{binding\
4207}#)
- #{body\ 4206}#))
- #{tmp\ 4203}#)
- (syntax-violation
- #f
- "source expression failed to
match any pattern"
- #{tmp\ 4202}#)))
- ($sc-dispatch
- #{tmp\ 4202}#
- '(any any))))
- (list (#{f\ 4196}#
- (cdr #{bindings\ 4197}#))
- (car #{bindings\ 4197}#)))))))
- (#{f\ 4196}# (map list #{x\ 4190}# #{v\ 4191}#))))
- #{tmp\ 4172}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4171}#)))
- ($sc-dispatch
- #{tmp\ 4171}#
- '(any #(each (any any)) any . each-any))))
- #{x\ 4169}#))))
+ (list #{binding\ 4276}#)
+ #{body\ 4275}#))
+ #{tmp\ 4272}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp\ 4271}#))))))))
+ (begin
+ (#{f\ 4265}# (map list #{x\ 4259}# #{v\ 4260}#)))))
+ #{tmp\ 4241}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4240}#)))))))
(define do
(make-syntax-transformer
'do
'macro
- (lambda (#{orig-x\ 4208}#)
- ((lambda (#{tmp\ 4210}#)
- ((lambda (#{tmp\ 4211}#)
- (if #{tmp\ 4211}#
- (apply (lambda (#{_\ 4219}#
- #{var\ 4220}#
- #{init\ 4221}#
- #{step\ 4222}#
- #{e0\ 4223}#
- #{e1\ 4224}#
- #{c\ 4225}#)
- ((lambda (#{tmp\ 4227}#)
- ((lambda (#{tmp\ 4228}#)
- (if #{tmp\ 4228}#
- (apply (lambda (#{step\ 4230}#)
- ((lambda (#{tmp\ 4231}#)
- ((lambda (#{tmp\ 4232}#)
- (if #{tmp\ 4232}#
- (apply (lambda ()
- (list '#(syntax-object
- let
- ((top)
- #(ribcage
- #(step)
- #((top))
-
#("i4229"))
- #(ribcage
- #(_
- var
- init
- step
- e0
- e1
- c)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i4212"
- "i4213"
- "i4214"
- "i4215"
- "i4216"
- "i4217"
-
"i4218"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(orig-x)
- #((top))
-
#("i4209")))
- (hygiene
- guile))
- '#(syntax-object
- doloop
- ((top)
- #(ribcage
- #(step)
- #((top))
-
#("i4229"))
- #(ribcage
- #(_
- var
- init
- step
- e0
- e1
- c)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i4212"
- "i4213"
- "i4214"
- "i4215"
- "i4216"
- "i4217"
-
"i4218"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(orig-x)
- #((top))
-
#("i4209")))
- (hygiene
- guile))
- (map list
- #{var\
4220}#
- #{init\
4221}#)
- (list
'#(syntax-object
- if
- ((top)
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
- #(_
-
var
-
init
-
step
- e0
- e1
- c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
- (list
'#(syntax-object
-
not
-
((top)
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
-
#(_
-
var
-
init
-
step
-
e0
-
e1
-
c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
-
#{e0\ 4223}#)
- (cons
'#(syntax-object
-
begin
-
((top)
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
-
#(_
-
var
-
init
-
step
-
e0
-
e1
-
c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
-
(append
-
#{c\ 4225}#
-
(list (cons '#(syntax-object
-
doloop
-
((top)
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
-
#(_
-
var
-
init
-
step
-
e0
-
e1
-
c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
-
#{step\ 4230}#)))))))
- #{tmp\ 4232}#)
- ((lambda (#{tmp\ 4237}#)
- (if #{tmp\ 4237}#
- (apply (lambda (#{e1\
4240}#
- #{e2\
4241}#)
- (list
'#(syntax-object
- let
- ((top)
-
#(ribcage
- #(e1
- e2)
-
#((top)
-
(top))
-
#("i4238"
-
"i4239"))
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
- #(_
- var
-
init
-
step
- e0
- e1
- c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
- (hygiene
-
guile))
-
'#(syntax-object
+ (lambda (#{orig-x\ 4277}#)
+ (let ((#{tmp\ 4279}# #{orig-x\ 4277}#))
+ (let ((#{tmp\ 4280}#
+ ($sc-dispatch
+ #{tmp\ 4279}#
+ '(any #(each (any any . any))
+ (any . each-any)
+ .
+ each-any))))
+ (if #{tmp\ 4280}#
+ (@apply
+ (lambda (#{_\ 4288}#
+ #{var\ 4289}#
+ #{init\ 4290}#
+ #{step\ 4291}#
+ #{e0\ 4292}#
+ #{e1\ 4293}#
+ #{c\ 4294}#)
+ (let ((#{tmp\ 4296}#
+ (map (lambda (#{v\ 4317}# #{s\ 4318}#)
+ (let ((#{tmp\ 4321}# #{s\ 4318}#))
+ (let ((#{tmp\ 4322}#
+ ($sc-dispatch
+ #{tmp\ 4321}#
+ '())))
+ (if #{tmp\ 4322}#
+ (@apply
+ (lambda () #{v\ 4317}#)
+ #{tmp\ 4322}#)
+ (let ((#{tmp\ 4323}#
+ ($sc-dispatch
+ #{tmp\ 4321}#
+ '(any))))
+ (if #{tmp\ 4323}#
+ (@apply
+ (lambda (#{e\ 4325}#) #{e\ 4325}#)
+ #{tmp\ 4323}#)
+ (let ((#{_\ 4327}# #{tmp\ 4321}#))
+ (syntax-violation
+ 'do
+ "bad step expression"
+ #{orig-x\ 4277}#
+ #{s\ 4318}#))))))))
+ #{var\ 4289}#
+ #{step\ 4291}#)))
+ (let ((#{tmp\ 4297}#
+ ($sc-dispatch #{tmp\ 4296}# (quote each-any))))
+ (if #{tmp\ 4297}#
+ (@apply
+ (lambda (#{step\ 4299}#)
+ (let ((#{tmp\ 4300}# #{e1\ 4293}#))
+ (let ((#{tmp\ 4301}#
+ ($sc-dispatch #{tmp\ 4300}# (quote ()))))
+ (if #{tmp\ 4301}#
+ (@apply
+ (lambda ()
+ (list '#(syntax-object
+ let
+ ((top)
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_ var init step e0 e1 c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ '#(syntax-object
+ doloop
+ ((top)
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_ var init step e0 e1 c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ (map list
+ #{var\ 4289}#
+ #{init\ 4290}#)
+ (list '#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_
+ var
+ init
+ step
+ e0
+ e1
+ c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ (list '#(syntax-object
+ not
+ ((top)
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_
+ var
+ init
+ step
+ e0
+ e1
+ c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ #{e0\ 4292}#)
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_
+ var
+ init
+ step
+ e0
+ e1
+ c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ (append
+ #{c\ 4294}#
+ (list (cons
'#(syntax-object
doloop
((top)
#(ribcage
- #(e1
- e2)
-
#((top)
-
(top))
-
#("i4238"
-
"i4239"))
-
#(ribcage
#(step)
#((top))
-
#("i4229"))
+
#("i4298"))
#(ribcage
#(_
var
@@ -13858,13 +13912,13 @@
(top)
(top)
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
+
#("i4281"
+
"i4282"
+
"i4283"
+
"i4284"
+
"i4285"
+
"i4286"
+
"i4287"))
#(ribcage
()
()
@@ -13872,1858 +13926,1318 @@
#(ribcage
#(orig-x)
#((top))
-
#("i4209")))
+
#("i4278")))
(hygiene
guile))
- (map list
-
#{var\ 4220}#
-
#{init\ 4221}#)
- (list
'#(syntax-object
- if
-
((top)
-
#(ribcage
-
#(e1
-
e2)
-
#((top)
-
(top))
-
#("i4238"
-
"i4239"))
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
-
#(_
-
var
-
init
-
step
-
e0
-
e1
-
c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
-
#{e0\ 4223}#
-
(cons '#(syntax-object
-
begin
-
((top)
-
#(ribcage
-
#(e1
-
e2)
-
#((top)
-
(top))
-
#("i4238"
-
"i4239"))
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
-
#(_
-
var
-
init
-
step
-
e0
-
e1
-
c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
-
(cons #{e1\ 4240}#
-
#{e2\ 4241}#))
-
(cons '#(syntax-object
-
begin
-
((top)
-
#(ribcage
-
#(e1
-
e2)
-
#((top)
-
(top))
-
#("i4238"
-
"i4239"))
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
-
#(_
-
var
-
init
-
step
-
e0
-
e1
-
c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
-
(append
-
#{c\ 4225}#
-
(list (cons '#(syntax-object
-
doloop
-
((top)
-
#(ribcage
-
#(e1
-
e2)
-
#((top)
-
(top))
-
#("i4238"
-
"i4239"))
-
#(ribcage
-
#(step)
-
#((top))
-
#("i4229"))
-
#(ribcage
-
#(_
-
var
-
init
-
step
-
e0
-
e1
-
c)
-
#((top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top)
-
(top))
-
#("i4212"
-
"i4213"
-
"i4214"
-
"i4215"
-
"i4216"
-
"i4217"
-
"i4218"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(orig-x)
-
#((top))
-
#("i4209")))
-
(hygiene
-
guile))
-
#{step\ 4230}#)))))))
- #{tmp\ 4237}#)
- (syntax-violation
- #f
- "source expression
failed to match any pattern"
- #{tmp\ 4231}#)))
- ($sc-dispatch
- #{tmp\ 4231}#
- '(any . each-any)))))
- ($sc-dispatch
- #{tmp\ 4231}#
- '())))
- #{e1\ 4224}#))
- #{tmp\ 4228}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp\ 4227}#)))
- ($sc-dispatch #{tmp\ 4227}# (quote each-any))))
- (map (lambda (#{v\ 4248}# #{s\ 4249}#)
- ((lambda (#{tmp\ 4252}#)
- ((lambda (#{tmp\ 4253}#)
- (if #{tmp\ 4253}#
- (apply (lambda () #{v\ 4248}#)
- #{tmp\ 4253}#)
- ((lambda (#{tmp\ 4254}#)
- (if #{tmp\ 4254}#
- (apply (lambda (#{e\ 4256}#)
- #{e\ 4256}#)
- #{tmp\ 4254}#)
- ((lambda (#{_\ 4258}#)
- (syntax-violation
- 'do
- "bad step expression"
- #{orig-x\ 4208}#
- #{s\ 4249}#))
- #{tmp\ 4252}#)))
+ #{step\
4299}#)))))))
+ #{tmp\ 4301}#)
+ (let ((#{tmp\ 4306}#
($sc-dispatch
- #{tmp\ 4252}#
- '(any)))))
- ($sc-dispatch #{tmp\ 4252}# (quote ()))))
- #{s\ 4249}#))
- #{var\ 4220}#
- #{step\ 4222}#)))
- #{tmp\ 4211}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4210}#)))
- ($sc-dispatch
- #{tmp\ 4210}#
- '(any #(each (any any . any))
- (any . each-any)
- .
- each-any))))
- #{orig-x\ 4208}#))))
+ #{tmp\ 4300}#
+ '(any . each-any))))
+ (if #{tmp\ 4306}#
+ (@apply
+ (lambda (#{e1\ 4309}# #{e2\ 4310}#)
+ (list '#(syntax-object
+ let
+ ((top)
+ #(ribcage
+ #(e1 e2)
+ #((top) (top))
+ #("i4307" "i4308"))
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_ var init step e0 e1 c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ '#(syntax-object
+ doloop
+ ((top)
+ #(ribcage
+ #(e1 e2)
+ #((top) (top))
+ #("i4307" "i4308"))
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_ var init step e0 e1 c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ (map list
+ #{var\ 4289}#
+ #{init\ 4290}#)
+ (list '#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(e1 e2)
+ #((top) (top))
+ #("i4307" "i4308"))
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_
+ var
+ init
+ step
+ e0
+ e1
+ c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage () () ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ #{e0\ 4292}#
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(e1 e2)
+ #((top) (top))
+ #("i4307"
+ "i4308"))
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_
+ var
+ init
+ step
+ e0
+ e1
+ c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ (cons #{e1\ 4309}#
+ #{e2\ 4310}#))
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(e1 e2)
+ #((top) (top))
+ #("i4307"
+ "i4308"))
+ #(ribcage
+ #(step)
+ #((top))
+ #("i4298"))
+ #(ribcage
+ #(_
+ var
+ init
+ step
+ e0
+ e1
+ c)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i4281"
+ "i4282"
+ "i4283"
+ "i4284"
+ "i4285"
+ "i4286"
+ "i4287"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(orig-x)
+ #((top))
+ #("i4278")))
+ (hygiene guile))
+ (append
+ #{c\ 4294}#
+ (list (cons
'#(syntax-object
+
doloop
+
((top)
+
#(ribcage
+
#(e1
+
e2)
+
#((top)
+
(top))
+
#("i4307"
+
"i4308"))
+
#(ribcage
+
#(step)
+
#((top))
+
#("i4298"))
+
#(ribcage
+
#(_
+
var
+
init
+
step
+
e0
+
e1
+
c)
+
#((top)
+
(top)
+
(top)
+
(top)
+
(top)
+
(top)
+
(top))
+
#("i4281"
+
"i4282"
+
"i4283"
+
"i4284"
+
"i4285"
+
"i4286"
+
"i4287"))
+
#(ribcage
+
()
+
()
+
())
+
#(ribcage
+
#(orig-x)
+
#((top))
+
#("i4278")))
+
(hygiene
+
guile))
+
#{step\ 4299}#)))))))
+ #{tmp\ 4306}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp\ 4300}#)))))))
+ #{tmp\ 4297}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4296}#)))))
+ #{tmp\ 4280}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4279}#)))))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
- (letrec ((#{quasicons\ 4265}#
- (lambda (#{x\ 4269}# #{y\ 4270}#)
- ((lambda (#{tmp\ 4274}#)
- ((lambda (#{tmp\ 4275}#)
- (if #{tmp\ 4275}#
- (apply (lambda (#{x\ 4278}# #{y\ 4279}#)
- ((lambda (#{tmp\ 4280}#)
- ((lambda (#{tmp\ 4281}#)
- (if #{tmp\ 4281}#
- (apply (lambda (#{dy\ 4283}#)
- ((lambda (#{tmp\ 4284}#)
- ((lambda (#{tmp\ 4285}#)
- (if #{tmp\ 4285}#
- (apply (lambda
(#{dx\ 4287}#)
- (list
'#(syntax-object
-
quote
-
((top)
-
#(ribcage
-
#(dx)
-
#((top))
-
#("i4286"))
-
#(ribcage
-
#(dy)
-
#((top))
-
#("i4282"))
-
#(ribcage
-
#(x
-
y)
-
#((top)
-
(top))
-
#("i4276"
-
"i4277"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x
-
y)
-
#((top)
-
(top))
-
#("i4271"
-
"i4272"))
-
#(ribcage
-
#(quasicons
-
quasiappend
-
quasivector
-
quasi)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4261"
-
"i4262"
-
"i4263"
-
"i4264")))
-
(hygiene
-
guile))
-
(cons #{dx\ 4287}#
-
#{dy\ 4283}#)))
- #{tmp\
4285}#)
- ((lambda (#{_\
4289}#)
- (if (null? #{dy\
4283}#)
- (list
'#(syntax-object
- list
- ((top)
-
#(ribcage
-
#(_)
-
#((top))
-
#("i4288"))
-
#(ribcage
-
#(dy)
-
#((top))
-
#("i4282"))
-
#(ribcage
- #(x
-
y)
-
#((top)
-
(top))
-
#("i4276"
-
"i4277"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- #(x
-
y)
-
#((top)
-
(top))
-
#("i4271"
-
"i4272"))
-
#(ribcage
-
#(quasicons
-
quasiappend
-
quasivector
-
quasi)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4261"
-
"i4262"
-
"i4263"
-
"i4264")))
-
(hygiene
-
guile))
- #{x\
4278}#)
- (list
'#(syntax-object
- cons
- ((top)
-
#(ribcage
-
#(_)
-
#((top))
-
#("i4288"))
-
#(ribcage
-
#(dy)
-
#((top))
-
#("i4282"))
-
#(ribcage
- #(x
-
y)
-
#((top)
-
(top))
-
#("i4276"
-
"i4277"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- #(x
-
y)
-
#((top)
-
(top))
-
#("i4271"
-
"i4272"))
-
#(ribcage
-
#(quasicons
-
quasiappend
-
quasivector
-
quasi)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4261"
-
"i4262"
-
"i4263"
-
"i4264")))
-
(hygiene
-
guile))
- #{x\
4278}#
- #{y\
4279}#)))
- #{tmp\ 4284}#)))
- ($sc-dispatch
- #{tmp\ 4284}#
- '(#(free-id
- #(syntax-object
- quote
- ((top)
- #(ribcage
- #(dy)
- #((top))
- #("i4282"))
- #(ribcage
- #(x y)
- #((top)
- (top))
- #("i4276"
- "i4277"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(x y)
- #((top)
- (top))
- #("i4271"
- "i4272"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene
- guile)))
- any))))
- #{x\ 4278}#))
- #{tmp\ 4281}#)
- ((lambda (#{tmp\ 4290}#)
- (if #{tmp\ 4290}#
- (apply (lambda (#{stuff\ 4292}#)
- (cons '#(syntax-object
- list
- ((top)
- #(ribcage
- #(stuff)
- #((top))
- #("i4291"))
- #(ribcage
- #(x y)
- #((top)
- (top))
- #("i4276"
- "i4277"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(x y)
- #((top)
- (top))
- #("i4271"
- "i4272"))
- #(ribcage
- #(quasicons
-
quasiappend
-
quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
-
"i4264")))
- (hygiene
- guile))
- (cons #{x\ 4278}#
- #{stuff\
4292}#)))
- #{tmp\ 4290}#)
- ((lambda (#{else\ 4294}#)
- (list '#(syntax-object
- cons
- ((top)
- #(ribcage
- #(else)
- #((top))
- #("i4293"))
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4276"
- "i4277"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4271"
- "i4272"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #{x\ 4278}#
- #{y\ 4279}#))
- #{tmp\ 4280}#)))
- ($sc-dispatch
- #{tmp\ 4280}#
- '(#(free-id
- #(syntax-object
- list
- ((top)
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4276" "i4277"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4271" "i4272"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile)))
- .
- any)))))
- ($sc-dispatch
- #{tmp\ 4280}#
- '(#(free-id
- #(syntax-object
- quote
- ((top)
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4276" "i4277"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4271" "i4272"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile)))
- any))))
- #{y\ 4279}#))
- #{tmp\ 4275}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4274}#)))
- ($sc-dispatch #{tmp\ 4274}# (quote (any any)))))
- (list #{x\ 4269}# #{y\ 4270}#))))
- (#{quasiappend\ 4266}#
- (lambda (#{x\ 4295}# #{y\ 4296}#)
- ((lambda (#{tmp\ 4300}#)
- ((lambda (#{tmp\ 4301}#)
- (if #{tmp\ 4301}#
- (apply (lambda (#{x\ 4304}# #{y\ 4305}#)
- ((lambda (#{tmp\ 4306}#)
- ((lambda (#{tmp\ 4307}#)
- (if #{tmp\ 4307}#
- (apply (lambda () #{x\ 4304}#)
- #{tmp\ 4307}#)
- ((lambda (#{_\ 4309}#)
- (list '#(syntax-object
- append
- ((top)
- #(ribcage
- #(_)
- #((top))
- #("i4308"))
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4302" "i4303"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4297" "i4298"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #{x\ 4304}#
- #{y\ 4305}#))
- #{tmp\ 4306}#)))
- ($sc-dispatch
- #{tmp\ 4306}#
- '(#(free-id
- #(syntax-object
- quote
- ((top)
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4302" "i4303"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x y)
- #((top) (top))
- #("i4297" "i4298"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile)))
- ()))))
- #{y\ 4305}#))
- #{tmp\ 4301}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4300}#)))
- ($sc-dispatch #{tmp\ 4300}# (quote (any any)))))
- (list #{x\ 4295}# #{y\ 4296}#))))
- (#{quasivector\ 4267}#
- (lambda (#{x\ 4310}#)
- ((lambda (#{tmp\ 4313}#)
- ((lambda (#{x\ 4315}#)
- ((lambda (#{tmp\ 4316}#)
- ((lambda (#{tmp\ 4317}#)
- (if #{tmp\ 4317}#
- (apply (lambda (#{x\ 4319}#)
- (list '#(syntax-object
+ (letrec*
+ ((#{quasicons\ 4334}#
+ (lambda (#{x\ 4338}# #{y\ 4339}#)
+ (let ((#{tmp\ 4343}# (list #{x\ 4338}# #{y\ 4339}#)))
+ (let ((#{tmp\ 4344}#
+ ($sc-dispatch #{tmp\ 4343}# (quote (any any)))))
+ (if #{tmp\ 4344}#
+ (@apply
+ (lambda (#{x\ 4347}# #{y\ 4348}#)
+ (let ((#{tmp\ 4349}# #{y\ 4348}#))
+ (let ((#{tmp\ 4350}#
+ ($sc-dispatch
+ #{tmp\ 4349}#
+ '(#(free-id
+ #(syntax-object
+ quote
+ ((top)
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4340" "i4341"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ any))))
+ (if #{tmp\ 4350}#
+ (@apply
+ (lambda (#{dy\ 4352}#)
+ (let ((#{tmp\ 4353}# #{x\ 4347}#))
+ (let ((#{tmp\ 4354}#
+ ($sc-dispatch
+ #{tmp\ 4353}#
+ '(#(free-id
+ #(syntax-object
quote
((top)
#(ribcage
- #(x)
+ #(dy)
#((top))
- #("i4318"))
+ #("i4351"))
#(ribcage
- #(x)
- #((top))
- #("i4314"))
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
- #(x)
- #((top))
- #("i4311"))
+ #(x y)
+ #((top) (top))
+ #("i4340" "i4341"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- (list->vector #{x\ 4319}#)))
- #{tmp\ 4317}#)
- ((lambda (#{tmp\ 4321}#)
- (if #{tmp\ 4321}#
- (apply (lambda (#{x\ 4323}#)
- (cons '#(syntax-object
- vector
- ((top)
- #(ribcage
- #(x)
- #((top))
- #("i4322"))
- #(ribcage
- #(x)
- #((top))
- #("i4314"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4311"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #{x\ 4323}#))
- #{tmp\ 4321}#)
- ((lambda (#{_\ 4326}#)
- (list '#(syntax-object
- list->vector
- ((top)
- #(ribcage
- #(_)
- #((top))
- #("i4325"))
- #(ribcage
- #(x)
- #((top))
- #("i4314"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4311"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #{x\ 4315}#))
- #{tmp\ 4316}#)))
- ($sc-dispatch
- #{tmp\ 4316}#
- '(#(free-id
- #(syntax-object
- list
- ((top)
- #(ribcage #(x) #((top)) #("i4314"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4311"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261" "i4262" "i4263" "i4264")))
- (hygiene guile)))
- .
- each-any)))))
- ($sc-dispatch
- #{tmp\ 4316}#
- '(#(free-id
- #(syntax-object
- quote
- ((top)
- #(ribcage #(x) #((top)) #("i4314"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4311"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261" "i4262" "i4263" "i4264")))
- (hygiene guile)))
- each-any))))
- #{x\ 4315}#))
- #{tmp\ 4313}#))
- #{x\ 4310}#)))
- (#{quasi\ 4268}#
- (lambda (#{p\ 4327}# #{lev\ 4328}#)
- ((lambda (#{tmp\ 4331}#)
- ((lambda (#{tmp\ 4332}#)
- (if #{tmp\ 4332}#
- (apply (lambda (#{p\ 4334}#)
- (if (= #{lev\ 4328}# 0)
- #{p\ 4334}#
- (#{quasicons\ 4265}#
- '(#(syntax-object
- quote
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile)))
+ any))))
+ (if #{tmp\ 4354}#
+ (@apply
+ (lambda (#{dx\ 4356}#)
+ (list '#(syntax-object
+ quote
+ ((top)
+ #(ribcage
+ #(dx)
+ #((top))
+ #("i4355"))
+ #(ribcage
+ #(dy)
+ #((top))
+ #("i4351"))
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4340" "i4341"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile))
+ (cons #{dx\ 4356}#
+ #{dy\ 4352}#)))
+ #{tmp\ 4354}#)
+ (let ((#{_\ 4358}# #{tmp\ 4353}#))
+ (if (null? #{dy\ 4352}#)
+ (list '#(syntax-object
+ list
+ ((top)
+ #(ribcage
+ #(_)
+ #((top))
+ #("i4357"))
+ #(ribcage
+ #(dy)
+ #((top))
+ #("i4351"))
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4340" "i4341"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile))
+ #{x\ 4347}#)
+ (list '#(syntax-object
+ cons
+ ((top)
+ #(ribcage
+ #(_)
+ #((top))
+ #("i4357"))
+ #(ribcage
+ #(dy)
+ #((top))
+ #("i4351"))
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4340" "i4341"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile))
+ #{x\ 4347}#
+ #{y\ 4348}#)))))))
+ #{tmp\ 4350}#)
+ (let ((#{tmp\ 4359}#
+ ($sc-dispatch
+ #{tmp\ 4349}#
+ '(#(free-id
+ #(syntax-object
+ list
+ ((top)
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4340" "i4341"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile)))
+ .
+ any))))
+ (if #{tmp\ 4359}#
+ (@apply
+ (lambda (#{stuff\ 4361}#)
+ (cons '#(syntax-object
+ list
+ ((top)
+ #(ribcage
+ #(stuff)
+ #((top))
+ #("i4360"))
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4340" "i4341"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile))
+ (cons #{x\ 4347}# #{stuff\ 4361}#)))
+ #{tmp\ 4359}#)
+ (let ((#{else\ 4363}# #{tmp\ 4349}#))
+ (list '#(syntax-object
+ cons
((top)
- #(ribcage #(p) #((top)) #("i4333"))
+ #(ribcage
+ #(else)
+ #((top))
+ #("i4362"))
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4345" "i4346"))
+ #(ribcage () () ())
#(ribcage () () ())
#(ribcage
- #(p lev)
+ #(x y)
#((top) (top))
- #("i4329" "i4330"))
+ #("i4340" "i4341"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
(hygiene guile))
+ #{x\ 4347}#
+ #{y\ 4348}#))))))))
+ #{tmp\ 4344}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4343}#))))))
+ (#{quasiappend\ 4335}#
+ (lambda (#{x\ 4364}# #{y\ 4365}#)
+ (let ((#{tmp\ 4369}# (list #{x\ 4364}# #{y\ 4365}#)))
+ (let ((#{tmp\ 4370}#
+ ($sc-dispatch #{tmp\ 4369}# (quote (any any)))))
+ (if #{tmp\ 4370}#
+ (@apply
+ (lambda (#{x\ 4373}# #{y\ 4374}#)
+ (let ((#{tmp\ 4375}# #{y\ 4374}#))
+ (let ((#{tmp\ 4376}#
+ ($sc-dispatch
+ #{tmp\ 4375}#
+ '(#(free-id
+ #(syntax-object
+ quote
+ ((top)
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4371" "i4372"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4366" "i4367"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ ()))))
+ (if #{tmp\ 4376}#
+ (@apply (lambda () #{x\ 4373}#) #{tmp\ 4376}#)
+ (let ((#{_\ 4378}# #{tmp\ 4375}#))
+ (list '#(syntax-object
+ append
+ ((top)
+ #(ribcage #(_) #((top)) #("i4377"))
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4371" "i4372"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x y)
+ #((top) (top))
+ #("i4366" "i4367"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile))
+ #{x\ 4373}#
+ #{y\ 4374}#))))))
+ #{tmp\ 4370}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4369}#))))))
+ (#{quasivector\ 4336}#
+ (lambda (#{x\ 4379}#)
+ (let ((#{tmp\ 4382}# #{x\ 4379}#))
+ (let ((#{x\ 4384}# #{tmp\ 4382}#))
+ (let ((#{tmp\ 4385}# #{x\ 4384}#))
+ (let ((#{tmp\ 4386}#
+ ($sc-dispatch
+ #{tmp\ 4385}#
+ '(#(free-id
+ #(syntax-object
+ quote
+ ((top)
+ #(ribcage #(x) #((top)) #("i4383"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4380"))
+ #(ribcage
+ #(quasicons quasiappend quasivector quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ each-any))))
+ (if #{tmp\ 4386}#
+ (@apply
+ (lambda (#{x\ 4388}#)
+ (list '#(syntax-object
+ quote
+ ((top)
+ #(ribcage #(x) #((top)) #("i4387"))
+ #(ribcage #(x) #((top)) #("i4383"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4380"))
+ #(ribcage
+ #(quasicons quasiappend quasivector quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile))
+ (list->vector #{x\ 4388}#)))
+ #{tmp\ 4386}#)
+ (let ((#{tmp\ 4390}#
+ ($sc-dispatch
+ #{tmp\ 4385}#
+ '(#(free-id
+ #(syntax-object
+ list
+ ((top)
+ #(ribcage #(x) #((top)) #("i4383"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4380"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ .
+ each-any))))
+ (if #{tmp\ 4390}#
+ (@apply
+ (lambda (#{x\ 4392}#)
+ (cons '#(syntax-object
+ vector
+ ((top)
+ #(ribcage #(x) #((top)) #("i4391"))
+ #(ribcage #(x) #((top)) #("i4383"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4380"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile))
+ #{x\ 4392}#))
+ #{tmp\ 4390}#)
+ (let ((#{_\ 4395}# #{tmp\ 4385}#))
+ (list '#(syntax-object
+ list->vector
+ ((top)
+ #(ribcage #(_) #((top)) #("i4394"))
+ #(ribcage #(x) #((top)) #("i4383"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4380"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile))
+ #{x\ 4384}#)))))))))))
+ (#{quasi\ 4337}#
+ (lambda (#{p\ 4396}# #{lev\ 4397}#)
+ (let ((#{tmp\ 4400}# #{p\ 4396}#))
+ (let ((#{tmp\ 4401}#
+ ($sc-dispatch
+ #{tmp\ 4400}#
+ '(#(free-id
+ #(syntax-object
+ unquote
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons quasiappend quasivector quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ any))))
+ (if #{tmp\ 4401}#
+ (@apply
+ (lambda (#{p\ 4403}#)
+ (if (= #{lev\ 4397}# 0)
+ #{p\ 4403}#
+ (#{quasicons\ 4334}#
+ '(#(syntax-object
+ quote
+ ((top)
+ #(ribcage #(p) #((top)) #("i4402"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons quasiappend quasivector quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile))
+ #(syntax-object
+ unquote
+ ((top)
+ #(ribcage #(p) #((top)) #("i4402"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons quasiappend quasivector quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ (#{quasi\ 4337}#
+ (list #{p\ 4403}#)
+ (1- #{lev\ 4397}#)))))
+ #{tmp\ 4401}#)
+ (let ((#{tmp\ 4404}#
+ ($sc-dispatch
+ #{tmp\ 4400}#
+ '(#(free-id
+ #(syntax-object
+ unquote
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons quasiappend quasivector quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ .
+ any))))
+ (if (if #{tmp\ 4404}#
+ (@apply
+ (lambda (#{args\ 4406}#) (= #{lev\ 4397}# 0))
+ #{tmp\ 4404}#)
+ #f)
+ (@apply
+ (lambda (#{args\ 4408}#)
+ (syntax-violation
+ 'unquote
+ "unquote takes exactly one argument"
+ #{p\ 4396}#
+ (cons '#(syntax-object
+ unquote
+ ((top)
+ #(ribcage #(args) #((top)) #("i4407"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile))
+ #{args\ 4408}#)))
+ #{tmp\ 4404}#)
+ (let ((#{tmp\ 4409}#
+ ($sc-dispatch
+ #{tmp\ 4400}#
+ '((#(free-id
+ #(syntax-object
+ unquote-splicing
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ any)
+ .
+ any))))
+ (if #{tmp\ 4409}#
+ (@apply
+ (lambda (#{p\ 4412}# #{q\ 4413}#)
+ (if (= #{lev\ 4397}# 0)
+ (#{quasiappend\ 4335}#
+ #{p\ 4412}#
+ (#{quasi\ 4337}# #{q\ 4413}# #{lev\ 4397}#))
+ (#{quasicons\ 4334}#
+ (#{quasicons\ 4334}#
+ '(#(syntax-object
+ quote
+ ((top)
+ #(ribcage
+ #(p q)
+ #((top) (top))
+ #("i4410" "i4411"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile))
+ #(syntax-object
+ unquote-splicing
+ ((top)
+ #(ribcage
+ #(p q)
+ #((top) (top))
+ #("i4410" "i4411"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330" "i4331" "i4332" "i4333")))
+ (hygiene guile)))
+ (#{quasi\ 4337}#
+ (list #{p\ 4412}#)
+ (1- #{lev\ 4397}#)))
+ (#{quasi\ 4337}# #{q\ 4413}# #{lev\ 4397}#))))
+ #{tmp\ 4409}#)
+ (let ((#{tmp\ 4414}#
+ ($sc-dispatch
+ #{tmp\ 4400}#
+ '((#(free-id
#(syntax-object
- unquote
+ unquote-splicing
((top)
- #(ribcage #(p) #((top)) #("i4333"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4329" "i4330"))
+ #("i4398" "i4399"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
(hygiene guile)))
- (#{quasi\ 4268}#
- (list #{p\ 4334}#)
- (- #{lev\ 4328}# 1)))))
- #{tmp\ 4332}#)
- ((lambda (#{tmp\ 4335}#)
- (if (if #{tmp\ 4335}#
- (apply (lambda (#{args\ 4337}#)
- (= #{lev\ 4328}# 0))
- #{tmp\ 4335}#)
- #f)
- (apply (lambda (#{args\ 4339}#)
- (syntax-violation
- 'unquote
- "unquote takes exactly one argument"
- #{p\ 4327}#
- (cons '#(syntax-object
- unquote
- ((top)
- #(ribcage
- #(args)
- #((top))
- #("i4338"))
- #(ribcage () () ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329" "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #{args\ 4339}#)))
- #{tmp\ 4335}#)
- ((lambda (#{tmp\ 4340}#)
- (if #{tmp\ 4340}#
- (apply (lambda (#{p\ 4343}# #{q\ 4344}#)
- (if (= #{lev\ 4328}# 0)
- (#{quasiappend\ 4266}#
- #{p\ 4343}#
- (#{quasi\ 4268}#
- #{q\ 4344}#
- #{lev\ 4328}#))
- (#{quasicons\ 4265}#
- (#{quasicons\ 4265}#
- '(#(syntax-object
- quote
- ((top)
- #(ribcage
- #(p q)
- #((top) (top))
- #("i4341" "i4342"))
- #(ribcage () () ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329" "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #(syntax-object
- unquote-splicing
- ((top)
- #(ribcage
- #(p q)
- #((top) (top))
- #("i4341" "i4342"))
- #(ribcage () () ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329" "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile)))
- (#{quasi\ 4268}#
- (list #{p\ 4343}#)
- (- #{lev\ 4328}# 1)))
- (#{quasi\ 4268}#
- #{q\ 4344}#
- #{lev\ 4328}#))))
- #{tmp\ 4340}#)
- ((lambda (#{tmp\ 4345}#)
- (if (if #{tmp\ 4345}#
- (apply (lambda (#{args\ 4348}#
- #{q\ 4349}#)
- (= #{lev\ 4328}# 0))
- #{tmp\ 4345}#)
- #f)
- (apply (lambda (#{args\ 4352}#
- #{q\ 4353}#)
- (syntax-violation
- 'unquote-splicing
- "unquote-splicing takes
exactly one argument"
- #{p\ 4327}#
- (cons '#(syntax-object
- unquote-splicing
- ((top)
- #(ribcage
- #(args q)
- #((top) (top))
- #("i4350"
- "i4351"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329"
- "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #{args\ 4352}#)))
- #{tmp\ 4345}#)
- ((lambda (#{tmp\ 4354}#)
- (if #{tmp\ 4354}#
- (apply (lambda (#{p\ 4356}#)
- (#{quasicons\ 4265}#
- '(#(syntax-object
- quote
- ((top)
- #(ribcage
- #(p)
- #((top))
- #("i4355"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329"
- "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile))
- #(syntax-object
- quasiquote
- ((top)
- #(ribcage
- #(p)
- #((top))
- #("i4355"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329"
- "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile)))
- (#{quasi\ 4268}#
- (list #{p\ 4356}#)
- (+ #{lev\ 4328}#
- 1))))
- #{tmp\ 4354}#)
- ((lambda (#{tmp\ 4357}#)
- (if #{tmp\ 4357}#
- (apply (lambda (#{p\ 4360}#
- #{q\ 4361}#)
- (#{quasicons\ 4265}#
- (#{quasi\ 4268}#
- #{p\ 4360}#
- #{lev\ 4328}#)
- (#{quasi\ 4268}#
- #{q\ 4361}#
- #{lev\ 4328}#)))
- #{tmp\ 4357}#)
- ((lambda (#{tmp\ 4362}#)
- (if #{tmp\ 4362}#
- (apply (lambda (#{x\
4364}#)
-
(#{quasivector\ 4267}#
- (#{quasi\
4268}#
- #{x\ 4364}#
- #{lev\
4328}#)))
- #{tmp\ 4362}#)
- ((lambda (#{p\ 4367}#)
- (list
'#(syntax-object
- quote
- ((top)
- #(ribcage
- #(p)
- #((top))
-
#("i4366"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(p lev)
- #((top)
- (top))
- #("i4329"
-
"i4330"))
- #(ribcage
-
#(quasicons
-
quasiappend
-
quasivector
- quasi)
- #((top)
- (top)
- (top)
- (top))
- #("i4261"
- "i4262"
- "i4263"
-
"i4264")))
- (hygiene
- guile))
- #{p\ 4367}#))
- #{tmp\ 4331}#)))
- ($sc-dispatch
- #{tmp\ 4331}#
- '#(vector each-any)))))
- ($sc-dispatch
- #{tmp\ 4331}#
- '(any . any)))))
- ($sc-dispatch
- #{tmp\ 4331}#
- '(#(free-id
- #(syntax-object
- quasiquote
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329" "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
- (hygiene guile)))
- any)))))
- ($sc-dispatch
- #{tmp\ 4331}#
- '((#(free-id
+ .
+ any)
+ .
+ any))))
+ (if (if #{tmp\ 4414}#
+ (@apply
+ (lambda (#{args\ 4417}# #{q\ 4418}#)
+ (= #{lev\ 4397}# 0))
+ #{tmp\ 4414}#)
+ #f)
+ (@apply
+ (lambda (#{args\ 4421}# #{q\ 4422}#)
+ (syntax-violation
+ 'unquote-splicing
+ "unquote-splicing takes exactly one
argument"
+ #{p\ 4396}#
+ (cons '#(syntax-object
+ unquote-splicing
+ ((top)
+ #(ribcage
+ #(args q)
+ #((top) (top))
+ #("i4419" "i4420"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile))
+ #{args\ 4421}#)))
+ #{tmp\ 4414}#)
+ (let ((#{tmp\ 4423}#
+ ($sc-dispatch
+ #{tmp\ 4400}#
+ '(#(free-id
#(syntax-object
- unquote-splicing
+ quasiquote
((top)
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4329" "i4330"))
+ #("i4398" "i4399"))
#(ribcage
#(quasicons
quasiappend
quasivector
quasi)
#((top) (top) (top) (top))
- #("i4261"
- "i4262"
- "i4263"
- "i4264")))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
(hygiene guile)))
- .
- any)
- .
- any)))))
- ($sc-dispatch
- #{tmp\ 4331}#
- '((#(free-id
- #(syntax-object
- unquote-splicing
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329" "i4330"))
- #(ribcage
- #(quasicons
- quasiappend
- quasivector
- quasi)
- #((top) (top) (top) (top))
- #("i4261" "i4262" "i4263" "i4264")))
- (hygiene guile)))
- any)
- .
- any)))))
- ($sc-dispatch
- #{tmp\ 4331}#
- '(#(free-id
- #(syntax-object
- unquote
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329" "i4330"))
- #(ribcage
- #(quasicons quasiappend quasivector quasi)
- #((top) (top) (top) (top))
- #("i4261" "i4262" "i4263" "i4264")))
- (hygiene guile)))
- .
- any)))))
- ($sc-dispatch
- #{tmp\ 4331}#
- '(#(free-id
- #(syntax-object
- unquote
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(p lev)
- #((top) (top))
- #("i4329" "i4330"))
- #(ribcage
- #(quasicons quasiappend quasivector quasi)
- #((top) (top) (top) (top))
- #("i4261" "i4262" "i4263" "i4264")))
- (hygiene guile)))
- any))))
- #{p\ 4327}#))))
- (lambda (#{x\ 4368}#)
- ((lambda (#{tmp\ 4370}#)
- ((lambda (#{tmp\ 4371}#)
- (if #{tmp\ 4371}#
- (apply (lambda (#{_\ 4374}# #{e\ 4375}#)
- (#{quasi\ 4268}# #{e\ 4375}# 0))
- #{tmp\ 4371}#)
+ any))))
+ (if #{tmp\ 4423}#
+ (@apply
+ (lambda (#{p\ 4425}#)
+ (#{quasicons\ 4334}#
+ '(#(syntax-object
+ quote
+ ((top)
+ #(ribcage #(p) #((top)) #("i4424"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile))
+ #(syntax-object
+ quasiquote
+ ((top)
+ #(ribcage #(p) #((top)) #("i4424"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top) (top) (top) (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile)))
+ (#{quasi\ 4337}#
+ (list #{p\ 4425}#)
+ (1+ #{lev\ 4397}#))))
+ #{tmp\ 4423}#)
+ (let ((#{tmp\ 4426}#
+ ($sc-dispatch
+ #{tmp\ 4400}#
+ '(any . any))))
+ (if #{tmp\ 4426}#
+ (@apply
+ (lambda (#{p\ 4429}# #{q\ 4430}#)
+ (#{quasicons\ 4334}#
+ (#{quasi\ 4337}#
+ #{p\ 4429}#
+ #{lev\ 4397}#)
+ (#{quasi\ 4337}#
+ #{q\ 4430}#
+ #{lev\ 4397}#)))
+ #{tmp\ 4426}#)
+ (let ((#{tmp\ 4431}#
+ ($sc-dispatch
+ #{tmp\ 4400}#
+ '#(vector each-any))))
+ (if #{tmp\ 4431}#
+ (@apply
+ (lambda (#{x\ 4433}#)
+ (#{quasivector\ 4336}#
+ (#{quasi\ 4337}#
+ #{x\ 4433}#
+ #{lev\ 4397}#)))
+ #{tmp\ 4431}#)
+ (let ((#{p\ 4436}# #{tmp\ 4400}#))
+ (list '#(syntax-object
+ quote
+ ((top)
+ #(ribcage
+ #(p)
+ #((top))
+ #("i4435"))
+ #(ribcage () () ())
+ #(ribcage
+ #(p lev)
+ #((top) (top))
+ #("i4398" "i4399"))
+ #(ribcage
+ #(quasicons
+ quasiappend
+ quasivector
+ quasi)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4330"
+ "i4331"
+ "i4332"
+ "i4333")))
+ (hygiene guile))
+ #{p\
4436}#))))))))))))))))))))
+ (begin
+ (lambda (#{x\ 4437}#)
+ (let ((#{tmp\ 4439}# #{x\ 4437}#))
+ (let ((#{tmp\ 4440}#
+ ($sc-dispatch #{tmp\ 4439}# (quote (any any)))))
+ (if #{tmp\ 4440}#
+ (@apply
+ (lambda (#{_\ 4443}# #{e\ 4444}#)
+ (#{quasi\ 4337}# #{e\ 4444}# 0))
+ #{tmp\ 4440}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp\ 4370}#)))
- ($sc-dispatch #{tmp\ 4370}# (quote (any any)))))
- #{x\ 4368}#)))))
+ #{tmp\ 4439}#)))))))))
(define include
(make-syntax-transformer
'include
'macro
- (lambda (#{x\ 4376}#)
- (letrec ((#{read-file\ 4379}#
- (lambda (#{fn\ 4380}# #{k\ 4381}#)
- (let ((#{p\ 4385}# (open-input-file #{fn\ 4380}#)))
- (letrec ((#{f\ 4389}#
- (lambda (#{x\ 4390}# #{result\ 4391}#)
- (if (eof-object? #{x\ 4390}#)
- (begin
- (close-input-port #{p\ 4385}#)
- (reverse #{result\ 4391}#))
- (#{f\ 4389}#
- (read #{p\ 4385}#)
- (cons (datum->syntax
- #{k\ 4381}#
- #{x\ 4390}#)
- #{result\ 4391}#))))))
- (#{f\ 4389}# (read #{p\ 4385}#) (quote ())))))))
- ((lambda (#{tmp\ 4392}#)
- ((lambda (#{tmp\ 4393}#)
- (if #{tmp\ 4393}#
- (apply (lambda (#{k\ 4396}# #{filename\ 4397}#)
- (let ((#{fn\ 4399}#
- (syntax->datum #{filename\ 4397}#)))
- ((lambda (#{tmp\ 4401}#)
- ((lambda (#{tmp\ 4402}#)
- (if #{tmp\ 4402}#
- (apply (lambda (#{exp\ 4404}#)
- (cons '#(syntax-object
- begin
- ((top)
- #(ribcage
- #(exp)
- #((top))
- #("i4403"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(fn)
- #((top))
- #("i4398"))
- #(ribcage
- #(k filename)
- #((top) (top))
- #("i4394" "i4395"))
- #(ribcage
- (read-file)
- ((top))
- ("i4378"))
- #(ribcage
- #(x)
- #((top))
- #("i4377")))
- (hygiene guile))
- #{exp\ 4404}#))
- #{tmp\ 4402}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp\ 4401}#)))
- ($sc-dispatch #{tmp\ 4401}# (quote each-any))))
- (#{read-file\ 4379}#
- #{fn\ 4399}#
- #{filename\ 4397}#))))
- #{tmp\ 4393}#)
+ (lambda (#{x\ 4445}#)
+ (letrec*
+ ((#{read-file\ 4448}#
+ (lambda (#{fn\ 4449}# #{k\ 4450}#)
+ (begin
+ (let ((#{p\ 4454}# (open-input-file #{fn\ 4449}#)))
+ (letrec*
+ ((#{f\ 4458}#
+ (lambda (#{x\ 4459}# #{result\ 4460}#)
+ (if (eof-object? #{x\ 4459}#)
+ (begin
+ (close-input-port #{p\ 4454}#)
+ (reverse #{result\ 4460}#))
+ (#{f\ 4458}#
+ (read #{p\ 4454}#)
+ (cons (datum->syntax #{k\ 4450}# #{x\ 4459}#)
+ #{result\ 4460}#))))))
+ (begin
+ (#{f\ 4458}# (read #{p\ 4454}#) (quote ())))))))))
+ (begin
+ (let ((#{tmp\ 4461}# #{x\ 4445}#))
+ (let ((#{tmp\ 4462}#
+ ($sc-dispatch #{tmp\ 4461}# (quote (any any)))))
+ (if #{tmp\ 4462}#
+ (@apply
+ (lambda (#{k\ 4465}# #{filename\ 4466}#)
+ (begin
+ (let ((#{fn\ 4468}# (syntax->datum #{filename\ 4466}#)))
+ (let ((#{tmp\ 4470}#
+ (#{read-file\ 4448}#
+ #{fn\ 4468}#
+ #{filename\ 4466}#)))
+ (let ((#{tmp\ 4471}#
+ ($sc-dispatch
+ #{tmp\ 4470}#
+ 'each-any)))
+ (if #{tmp\ 4471}#
+ (@apply
+ (lambda (#{exp\ 4473}#)
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(exp)
+ #((top))
+ #("i4472"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(fn)
+ #((top))
+ #("i4467"))
+ #(ribcage
+ #(k filename)
+ #((top) (top))
+ #("i4463" "i4464"))
+ #(ribcage
+ (read-file)
+ ((top))
+ ("i4447"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4446")))
+ (hygiene guile))
+ #{exp\ 4473}#))
+ #{tmp\ 4471}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4470}#)))))))
+ #{tmp\ 4462}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp\ 4392}#)))
- ($sc-dispatch #{tmp\ 4392}# (quote (any any)))))
- #{x\ 4376}#)))))
+ #{tmp\ 4461}#)))))))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
- (lambda (#{x\ 4406}#)
- ((lambda (#{tmp\ 4408}#)
- ((lambda (#{tmp\ 4409}#)
- (if #{tmp\ 4409}#
- (apply (lambda (#{k\ 4412}# #{filename\ 4413}#)
- (let ((#{fn\ 4415}# (syntax->datum #{filename\ 4413}#)))
- ((lambda (#{tmp\ 4417}#)
- ((lambda (#{fn\ 4419}#)
- (list '#(syntax-object
- include
- ((top)
- #(ribcage #(fn) #((top)) #("i4418"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(fn) #((top)) #("i4414"))
- #(ribcage
- #(k filename)
- #((top) (top))
- #("i4410" "i4411"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4407")))
- (hygiene guile))
- #{fn\ 4419}#))
- #{tmp\ 4417}#))
- (datum->syntax
- #{filename\ 4413}#
- (let ((#{t\ 4422}#
- (%search-load-path #{fn\ 4415}#)))
- (if #{t\ 4422}#
- #{t\ 4422}#
- (syntax-violation
- 'include-from-path
- "file not found in path"
- #{x\ 4406}#
- #{filename\ 4413}#)))))))
- #{tmp\ 4409}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4408}#)))
- ($sc-dispatch #{tmp\ 4408}# (quote (any any)))))
- #{x\ 4406}#))))
+ (lambda (#{x\ 4475}#)
+ (let ((#{tmp\ 4477}# #{x\ 4475}#))
+ (let ((#{tmp\ 4478}#
+ ($sc-dispatch #{tmp\ 4477}# (quote (any any)))))
+ (if #{tmp\ 4478}#
+ (@apply
+ (lambda (#{k\ 4481}# #{filename\ 4482}#)
+ (begin
+ (let ((#{fn\ 4484}# (syntax->datum #{filename\ 4482}#)))
+ (let ((#{tmp\ 4486}#
+ (datum->syntax
+ #{filename\ 4482}#
+ (begin
+ (let ((#{t\ 4491}#
+ (%search-load-path #{fn\ 4484}#)))
+ (if #{t\ 4491}#
+ #{t\ 4491}#
+ (syntax-violation
+ 'include-from-path
+ "file not found in path"
+ #{x\ 4475}#
+ #{filename\ 4482}#)))))))
+ (let ((#{fn\ 4488}# #{tmp\ 4486}#))
+ (list '#(syntax-object
+ include
+ ((top)
+ #(ribcage #(fn) #((top)) #("i4487"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(fn) #((top)) #("i4483"))
+ #(ribcage
+ #(k filename)
+ #((top) (top))
+ #("i4479" "i4480"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4476")))
+ (hygiene guile))
+ #{fn\ 4488}#))))))
+ #{tmp\ 4478}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4477}#)))))))
(define unquote
(make-syntax-transformer
'unquote
'macro
- (lambda (#{x\ 4424}#)
- ((lambda (#{tmp\ 4426}#)
- ((lambda (#{tmp\ 4427}#)
- (if #{tmp\ 4427}#
- (apply (lambda (#{_\ 4430}# #{e\ 4431}#)
- (syntax-violation
- 'unquote
- "expression not valid outside of quasiquote"
- #{x\ 4424}#))
- #{tmp\ 4427}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4426}#)))
- ($sc-dispatch #{tmp\ 4426}# (quote (any any)))))
- #{x\ 4424}#))))
+ (lambda (#{x\ 4493}#)
+ (let ((#{tmp\ 4495}# #{x\ 4493}#))
+ (let ((#{tmp\ 4496}#
+ ($sc-dispatch #{tmp\ 4495}# (quote (any any)))))
+ (if #{tmp\ 4496}#
+ (@apply
+ (lambda (#{_\ 4499}# #{e\ 4500}#)
+ (syntax-violation
+ 'unquote
+ "expression not valid outside of quasiquote"
+ #{x\ 4493}#))
+ #{tmp\ 4496}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4495}#)))))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
- (lambda (#{x\ 4432}#)
- ((lambda (#{tmp\ 4434}#)
- ((lambda (#{tmp\ 4435}#)
- (if #{tmp\ 4435}#
- (apply (lambda (#{_\ 4438}# #{e\ 4439}#)
- (syntax-violation
- 'unquote-splicing
- "expression not valid outside of quasiquote"
- #{x\ 4432}#))
- #{tmp\ 4435}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4434}#)))
- ($sc-dispatch #{tmp\ 4434}# (quote (any any)))))
- #{x\ 4432}#))))
+ (lambda (#{x\ 4501}#)
+ (let ((#{tmp\ 4503}# #{x\ 4501}#))
+ (let ((#{tmp\ 4504}#
+ ($sc-dispatch #{tmp\ 4503}# (quote (any any)))))
+ (if #{tmp\ 4504}#
+ (@apply
+ (lambda (#{_\ 4507}# #{e\ 4508}#)
+ (syntax-violation
+ 'unquote-splicing
+ "expression not valid outside of quasiquote"
+ #{x\ 4501}#))
+ #{tmp\ 4504}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4503}#)))))))
(define case
(make-syntax-transformer
'case
'macro
- (lambda (#{x\ 4440}#)
- ((lambda (#{tmp\ 4442}#)
- ((lambda (#{tmp\ 4443}#)
- (if #{tmp\ 4443}#
- (apply (lambda (#{_\ 4448}#
- #{e\ 4449}#
- #{m1\ 4450}#
- #{m2\ 4451}#)
- ((lambda (#{tmp\ 4453}#)
- ((lambda (#{body\ 4455}#)
- (list '#(syntax-object
- let
- ((top)
- #(ribcage #(body) #((top)) #("i4454"))
- #(ribcage
- #(_ e m1 m2)
- #((top) (top) (top) (top))
- #("i4444" "i4445" "i4446" "i4447"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4441")))
- (hygiene guile))
- (list (list '#(syntax-object
- t
- ((top)
- #(ribcage
- #(body)
- #((top))
- #("i4454"))
- #(ribcage
- #(_ e m1 m2)
- #((top) (top) (top) (top))
- #("i4444"
- "i4445"
- "i4446"
- "i4447"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4441")))
- (hygiene guile))
- #{e\ 4449}#))
- #{body\ 4455}#))
- #{tmp\ 4453}#))
- (letrec ((#{f\ 4459}#
- (lambda (#{clause\ 4460}# #{clauses\ 4461}#)
- (if (null? #{clauses\ 4461}#)
- ((lambda (#{tmp\ 4463}#)
- ((lambda (#{tmp\ 4464}#)
- (if #{tmp\ 4464}#
- (apply (lambda (#{e1\ 4467}#
- #{e2\ 4468}#)
- (cons '#(syntax-object
- begin
- ((top)
- #(ribcage
- #(e1 e2)
- #((top)
- (top))
- #("i4465"
- "i4466"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(f
- clause
- clauses)
- #((top)
- (top)
- (top))
- #("i4456"
- "i4457"
- "i4458"))
- #(ribcage
- #(_
- e
- m1
- m2)
- #((top)
- (top)
- (top)
- (top))
- #("i4444"
- "i4445"
- "i4446"
- "i4447"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(x)
- #((top))
-
#("i4441")))
- (hygiene
- guile))
- (cons #{e1\
4467}#
- #{e2\
4468}#)))
- #{tmp\ 4464}#)
- ((lambda (#{tmp\ 4470}#)
- (if #{tmp\ 4470}#
- (apply (lambda (#{k\ 4474}#
- #{e1\
4475}#
- #{e2\
4476}#)
- (list
'#(syntax-object
- if
- ((top)
-
#(ribcage
- #(k
- e1
- e2)
-
#((top)
-
(top)
-
(top))
-
#("i4471"
-
"i4472"
-
"i4473"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- #(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
- #(_
- e
- m1
- m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- #(x)
-
#((top))
-
#("i4441")))
- (hygiene
- guile))
- (list
'#(syntax-object
-
memv
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4471"
-
"i4472"
-
"i4473"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
-
'#(syntax-object
- t
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4471"
-
"i4472"
-
"i4473"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
- (list
'#(syntax-object
-
quote
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4471"
-
"i4472"
-
"i4473"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
-
#{k\ 4474}#))
- (cons
'#(syntax-object
-
begin
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4471"
-
"i4472"
-
"i4473"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
- (cons
#{e1\ 4475}#
-
#{e2\ 4476}#))))
- #{tmp\ 4470}#)
- ((lambda (#{_\ 4480}#)
- (syntax-violation
- 'case
- "bad clause"
- #{x\ 4440}#
- #{clause\ 4460}#))
- #{tmp\ 4463}#)))
- ($sc-dispatch
- #{tmp\ 4463}#
- '(each-any
- any
- .
- each-any)))))
+ (lambda (#{x\ 4509}#)
+ (let ((#{tmp\ 4511}# #{x\ 4509}#))
+ (let ((#{tmp\ 4512}#
+ ($sc-dispatch
+ #{tmp\ 4511}#
+ '(any any any . each-any))))
+ (if #{tmp\ 4512}#
+ (@apply
+ (lambda (#{_\ 4517}#
+ #{e\ 4518}#
+ #{m1\ 4519}#
+ #{m2\ 4520}#)
+ (let ((#{tmp\ 4522}#
+ (letrec*
+ ((#{f\ 4528}#
+ (lambda (#{clause\ 4529}# #{clauses\ 4530}#)
+ (if (null? #{clauses\ 4530}#)
+ (let ((#{tmp\ 4532}# #{clause\ 4529}#))
+ (let ((#{tmp\ 4533}#
($sc-dispatch
- #{tmp\ 4463}#
+ #{tmp\ 4532}#
'(#(free-id
#(syntax-object
else
@@ -15732,634 +15246,870 @@
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i4456"
- "i4457"
- "i4458"))
+ #("i4525"
+ "i4526"
+ "i4527"))
#(ribcage
#(_ e m1 m2)
#((top)
(top)
(top)
(top))
- #("i4444"
- "i4445"
- "i4446"
- "i4447"))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4441")))
+ #("i4510")))
(hygiene guile)))
any
.
each-any))))
- #{clause\ 4460}#)
- ((lambda (#{tmp\ 4482}#)
- ((lambda (#{rest\ 4484}#)
- ((lambda (#{tmp\ 4485}#)
- ((lambda (#{tmp\ 4486}#)
- (if #{tmp\ 4486}#
- (apply (lambda (#{k\
4490}#
- #{e1\
4491}#
- #{e2\
4492}#)
- (list
'#(syntax-object
- if
- ((top)
-
#(ribcage
- #(k
- e1
- e2)
-
#((top)
-
(top)
-
(top))
-
#("i4487"
-
"i4488"
-
"i4489"))
-
#(ribcage
-
#(rest)
-
#((top))
-
#("i4483"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- #(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
- #(_
- e
- m1
- m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
- ()
- ()
- ())
-
#(ribcage
- #(x)
-
#((top))
-
#("i4441")))
- (hygiene
-
guile))
- (list
'#(syntax-object
-
memv
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4487"
-
"i4488"
-
"i4489"))
-
#(ribcage
-
#(rest)
-
#((top))
-
#("i4483"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
-
'#(syntax-object
- t
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4487"
-
"i4488"
-
"i4489"))
-
#(ribcage
-
#(rest)
-
#((top))
-
#("i4483"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
-
(list '#(syntax-object
-
quote
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4487"
-
"i4488"
-
"i4489"))
-
#(ribcage
-
#(rest)
-
#((top))
-
#("i4483"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
-
#{k\ 4490}#))
- (cons
'#(syntax-object
-
begin
-
((top)
-
#(ribcage
-
#(k
-
e1
-
e2)
-
#((top)
-
(top)
-
(top))
-
#("i4487"
-
"i4488"
-
"i4489"))
-
#(ribcage
-
#(rest)
-
#((top))
-
#("i4483"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(f
-
clause
-
clauses)
-
#((top)
-
(top)
-
(top))
-
#("i4456"
-
"i4457"
-
"i4458"))
-
#(ribcage
-
#(_
-
e
-
m1
-
m2)
-
#((top)
-
(top)
-
(top)
-
(top))
-
#("i4444"
-
"i4445"
-
"i4446"
-
"i4447"))
-
#(ribcage
-
()
-
()
-
())
-
#(ribcage
-
#(x)
-
#((top))
-
#("i4441")))
-
(hygiene
-
guile))
-
(cons #{e1\ 4491}#
-
#{e2\ 4492}#))
- #{rest\
4484}#))
- #{tmp\ 4486}#)
- ((lambda (#{_\ 4496}#)
- (syntax-violation
- 'case
- "bad clause"
- #{x\ 4440}#
- #{clause\ 4460}#))
- #{tmp\ 4485}#)))
- ($sc-dispatch
- #{tmp\ 4485}#
- '(each-any
- any
- .
- each-any))))
- #{clause\ 4460}#))
- #{tmp\ 4482}#))
- (#{f\ 4459}#
- (car #{clauses\ 4461}#)
- (cdr #{clauses\ 4461}#)))))))
- (#{f\ 4459}# #{m1\ 4450}# #{m2\ 4451}#))))
- #{tmp\ 4443}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4442}#)))
- ($sc-dispatch
- #{tmp\ 4442}#
- '(any any any . each-any))))
- #{x\ 4440}#))))
+ (if #{tmp\ 4533}#
+ (@apply
+ (lambda (#{e1\ 4536}# #{e2\ 4537}#)
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(e1 e2)
+ #((top) (top))
+ #("i4534" "i4535"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f clause clauses)
+ #((top) (top) (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ (cons #{e1\ 4536}#
+ #{e2\ 4537}#)))
+ #{tmp\ 4533}#)
+ (let ((#{tmp\ 4539}#
+ ($sc-dispatch
+ #{tmp\ 4532}#
+ '(each-any any . each-any))))
+ (if #{tmp\ 4539}#
+ (@apply
+ (lambda (#{k\ 4543}#
+ #{e1\ 4544}#
+ #{e2\ 4545}#)
+ (list '#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top) (top) (top))
+ #("i4540"
+ "i4541"
+ "i4542"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f clause clauses)
+ #((top) (top) (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ (list '#(syntax-object
+ memv
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top)
+ (top)
+ (top))
+ #("i4540"
+ "i4541"
+ "i4542"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+ clauses)
+ #((top)
+ (top)
+ (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ '#(syntax-object
+ t
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top)
+ (top)
+ (top))
+ #("i4540"
+ "i4541"
+ "i4542"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+ clauses)
+ #((top)
+ (top)
+ (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ (list
'#(syntax-object
+ quote
+ ((top)
+ #(ribcage
+ #(k
+ e1
+ e2)
+ #((top)
+ (top)
+ (top))
+
#("i4540"
+
"i4541"
+
"i4542"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+
clauses)
+ #((top)
+ (top)
+ (top))
+
#("i4525"
+
"i4526"
+
"i4527"))
+ #(ribcage
+ #(_
+ e
+ m1
+ m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+
#("i4513"
+
"i4514"
+
"i4515"
+
"i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+
#("i4510")))
+ (hygiene
+ guile))
+ #{k\ 4543}#))
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top)
+ (top)
+ (top))
+ #("i4540"
+ "i4541"
+ "i4542"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+ clauses)
+ #((top)
+ (top)
+ (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ (cons #{e1\ 4544}#
+ #{e2\
4545}#))))
+ #{tmp\ 4539}#)
+ (let ((#{_\ 4549}# #{tmp\ 4532}#))
+ (syntax-violation
+ 'case
+ "bad clause"
+ #{x\ 4509}#
+ #{clause\ 4529}#)))))))
+ (let ((#{tmp\ 4551}#
+ (#{f\ 4528}#
+ (car #{clauses\ 4530}#)
+ (cdr #{clauses\ 4530}#))))
+ (let ((#{rest\ 4553}# #{tmp\ 4551}#))
+ (let ((#{tmp\ 4554}# #{clause\ 4529}#))
+ (let ((#{tmp\ 4555}#
+ ($sc-dispatch
+ #{tmp\ 4554}#
+ '(each-any any . each-any))))
+ (if #{tmp\ 4555}#
+ (@apply
+ (lambda (#{k\ 4559}#
+ #{e1\ 4560}#
+ #{e2\ 4561}#)
+ (list '#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top) (top) (top))
+ #("i4556"
+ "i4557"
+ "i4558"))
+ #(ribcage
+ #(rest)
+ #((top))
+ #("i4552"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f clause clauses)
+ #((top) (top) (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ (list '#(syntax-object
+ memv
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top)
+ (top)
+ (top))
+ #("i4556"
+ "i4557"
+ "i4558"))
+ #(ribcage
+ #(rest)
+ #((top))
+ #("i4552"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+ clauses)
+ #((top)
+ (top)
+ (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ '#(syntax-object
+ t
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top)
+ (top)
+ (top))
+ #("i4556"
+ "i4557"
+ "i4558"))
+ #(ribcage
+ #(rest)
+ #((top))
+ #("i4552"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+ clauses)
+ #((top)
+ (top)
+ (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ (list
'#(syntax-object
+ quote
+ ((top)
+ #(ribcage
+ #(k
+ e1
+ e2)
+ #((top)
+ (top)
+ (top))
+
#("i4556"
+
"i4557"
+
"i4558"))
+ #(ribcage
+ #(rest)
+ #((top))
+
#("i4552"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+
clauses)
+ #((top)
+ (top)
+ (top))
+
#("i4525"
+
"i4526"
+
"i4527"))
+ #(ribcage
+ #(_
+ e
+ m1
+ m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+
#("i4513"
+
"i4514"
+
"i4515"
+
"i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+
#("i4510")))
+ (hygiene
+ guile))
+ #{k\ 4559}#))
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage
+ #(k e1 e2)
+ #((top)
+ (top)
+ (top))
+ #("i4556"
+ "i4557"
+ "i4558"))
+ #(ribcage
+ #(rest)
+ #((top))
+ #("i4552"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(f
+ clause
+ clauses)
+ #((top)
+ (top)
+ (top))
+ #("i4525"
+ "i4526"
+ "i4527"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i4513"
+ "i4514"
+ "i4515"
+ "i4516"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4510")))
+ (hygiene guile))
+ (cons #{e1\ 4560}#
+ #{e2\ 4561}#))
+ #{rest\ 4553}#))
+ #{tmp\ 4555}#)
+ (let ((#{_\ 4565}# #{tmp\ 4554}#))
+ (syntax-violation
+ 'case
+ "bad clause"
+ #{x\ 4509}#
+ #{clause\ 4529}#)))))))))))
+ (begin (#{f\ 4528}# #{m1\ 4519}# #{m2\ 4520}#)))))
+ (let ((#{body\ 4524}# #{tmp\ 4522}#))
+ (list '#(syntax-object
+ let
+ ((top)
+ #(ribcage #(body) #((top)) #("i4523"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top) (top) (top) (top))
+ #("i4513" "i4514" "i4515" "i4516"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4510")))
+ (hygiene guile))
+ (list (list '#(syntax-object
+ t
+ ((top)
+ #(ribcage
+ #(body)
+ #((top))
+ #("i4523"))
+ #(ribcage
+ #(_ e m1 m2)
+ #((top) (top) (top) (top))
+ #("i4513" "i4514" "i4515" "i4516"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4510")))
+ (hygiene guile))
+ #{e\ 4518}#))
+ #{body\ 4524}#))))
+ #{tmp\ 4512}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4511}#)))))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
- (lambda (#{x\ 4497}#)
- ((lambda (#{tmp\ 4499}#)
- ((lambda (#{tmp\ 4500}#)
- (if #{tmp\ 4500}#
- (apply (lambda (#{_\ 4503}# #{e\ 4504}#)
- (list '#(syntax-object
- lambda
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4498")))
- (hygiene guile))
- '(#(syntax-object
- x
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4498")))
- (hygiene guile)))
- '#((#(syntax-object
- macro-type
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4498")))
- (hygiene guile))
- .
- #(syntax-object
- identifier-syntax
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4498")))
- (hygiene guile))))
- (list '#(syntax-object
- syntax-case
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4498")))
- (hygiene guile))
- '#(syntax-object
- x
+ (lambda (#{x\ 4566}#)
+ (let ((#{tmp\ 4568}# #{x\ 4566}#))
+ (let ((#{tmp\ 4569}#
+ ($sc-dispatch #{tmp\ 4568}# (quote (any any)))))
+ (if #{tmp\ 4569}#
+ (@apply
+ (lambda (#{_\ 4572}# #{e\ 4573}#)
+ (list '#(syntax-object
+ lambda
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))
+ '(#(syntax-object
+ x
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile)))
+ '#((#(syntax-object
+ macro-type
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))
+ .
+ #(syntax-object
+ identifier-syntax
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))))
+ (list '#(syntax-object
+ syntax-case
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))
+ '#(syntax-object
+ x
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))
+ '()
+ (list '#(syntax-object
+ id
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))
+ '(#(syntax-object
+ identifier?
((top)
#(ribcage
#(_ e)
#((top) (top))
- #("i4501" "i4502"))
+ #("i4570" "i4571"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4498")))
+ #(ribcage #(x) #((top)) #("i4567")))
(hygiene guile))
- '()
- (list '#(syntax-object
- id
+ (#(syntax-object
+ syntax
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))
+ #(syntax-object
+ id
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4567")))
+ (hygiene guile))))
+ (list '#(syntax-object
+ syntax
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4567")))
+ (hygiene guile))
+ #{e\ 4573}#))
+ (list (cons #{_\ 4572}#
+ '(#(syntax-object
+ x
((top)
#(ribcage
#(_ e)
#((top) (top))
- #("i4501" "i4502"))
+ #("i4570" "i4571"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4498")))
+ #("i4567")))
(hygiene guile))
- '(#(syntax-object
- identifier?
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4498")))
- (hygiene guile))
- (#(syntax-object
- syntax
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4498")))
- (hygiene guile))
- #(syntax-object
- id
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4498")))
- (hygiene guile))))
- (list '#(syntax-object
- syntax
+ #(syntax-object
+ ...
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4567")))
+ (hygiene guile))))
+ (list '#(syntax-object
+ syntax
+ ((top)
+ #(ribcage
+ #(_ e)
+ #((top) (top))
+ #("i4570" "i4571"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4567")))
+ (hygiene guile))
+ (cons #{e\ 4573}#
+ '(#(syntax-object
+ x
((top)
#(ribcage
#(_ e)
#((top) (top))
- #("i4501" "i4502"))
+ #("i4570" "i4571"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4498")))
+ #("i4567")))
(hygiene guile))
- #{e\ 4504}#))
- (list (cons #{_\ 4503}#
- '(#(syntax-object
- x
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4498")))
- (hygiene guile))
- #(syntax-object
- ...
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4498")))
- (hygiene guile))))
- (list '#(syntax-object
- syntax
+ #(syntax-object
+ ...
((top)
#(ribcage
#(_ e)
#((top) (top))
- #("i4501" "i4502"))
+ #("i4570" "i4571"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4498")))
- (hygiene guile))
- (cons #{e\ 4504}#
- '(#(syntax-object
- x
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4498")))
- (hygiene guile))
- #(syntax-object
- ...
- ((top)
- #(ribcage
- #(_ e)
- #((top) (top))
- #("i4501" "i4502"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4498")))
- (hygiene
- guile)))))))))
- #{tmp\ 4500}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4499}#)))
- ($sc-dispatch #{tmp\ 4499}# (quote (any any)))))
- #{x\ 4497}#))))
+ #("i4567")))
+ (hygiene guile)))))))))
+ #{tmp\ 4569}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4568}#)))))))
(define define*
(make-syntax-transformer
'define*
'macro
- (lambda (#{x\ 4505}#)
- ((lambda (#{tmp\ 4507}#)
- ((lambda (#{tmp\ 4508}#)
- (if #{tmp\ 4508}#
- (apply (lambda (#{_\ 4514}#
- #{id\ 4515}#
- #{args\ 4516}#
- #{b0\ 4517}#
- #{b1\ 4518}#)
- (list '#(syntax-object
- define
- ((top)
- #(ribcage
- #(_ id args b0 b1)
- #((top) (top) (top) (top) (top))
- #("i4509" "i4510" "i4511" "i4512" "i4513"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4506")))
- (hygiene guile))
- #{id\ 4515}#
- (cons '#(syntax-object
- lambda*
- ((top)
- #(ribcage
- #(_ id args b0 b1)
- #((top) (top) (top) (top) (top))
- #("i4509"
- "i4510"
- "i4511"
- "i4512"
- "i4513"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4506")))
- (hygiene guile))
- (cons #{args\ 4516}#
- (cons #{b0\ 4517}# #{b1\ 4518}#)))))
- #{tmp\ 4508}#)
- ((lambda (#{tmp\ 4520}#)
- (if (if #{tmp\ 4520}#
- (apply (lambda (#{_\ 4524}# #{id\ 4525}# #{val\ 4526}#)
- (identifier?
- '#(syntax-object
- x
- ((top)
- #(ribcage
- #(_ id val)
- #((top) (top) (top))
- #("i4521" "i4522" "i4523"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4506")))
- (hygiene guile))))
- #{tmp\ 4520}#)
- #f)
- (apply (lambda (#{_\ 4530}# #{id\ 4531}# #{val\ 4532}#)
- (list '#(syntax-object
- define
- ((top)
- #(ribcage
- #(_ id val)
- #((top) (top) (top))
- #("i4527" "i4528" "i4529"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4506")))
- (hygiene guile))
- #{id\ 4531}#
- #{val\ 4532}#))
- #{tmp\ 4520}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp\ 4507}#)))
- ($sc-dispatch
- #{tmp\ 4507}#
- '(any any any)))))
- ($sc-dispatch
- #{tmp\ 4507}#
- '(any (any . any) any . each-any))))
- #{x\ 4505}#))))
+ (lambda (#{x\ 4574}#)
+ (let ((#{tmp\ 4576}# #{x\ 4574}#))
+ (let ((#{tmp\ 4577}#
+ ($sc-dispatch
+ #{tmp\ 4576}#
+ '(any (any . any) any . each-any))))
+ (if #{tmp\ 4577}#
+ (@apply
+ (lambda (#{_\ 4583}#
+ #{id\ 4584}#
+ #{args\ 4585}#
+ #{b0\ 4586}#
+ #{b1\ 4587}#)
+ (list '#(syntax-object
+ define
+ ((top)
+ #(ribcage
+ #(_ id args b0 b1)
+ #((top) (top) (top) (top) (top))
+ #("i4578" "i4579" "i4580" "i4581" "i4582"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4575")))
+ (hygiene guile))
+ #{id\ 4584}#
+ (cons '#(syntax-object
+ lambda*
+ ((top)
+ #(ribcage
+ #(_ id args b0 b1)
+ #((top) (top) (top) (top) (top))
+ #("i4578" "i4579" "i4580" "i4581" "i4582"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4575")))
+ (hygiene guile))
+ (cons #{args\ 4585}#
+ (cons #{b0\ 4586}# #{b1\ 4587}#)))))
+ #{tmp\ 4577}#)
+ (let ((#{tmp\ 4589}#
+ ($sc-dispatch
+ #{tmp\ 4576}#
+ '(any any any))))
+ (if (if #{tmp\ 4589}#
+ (@apply
+ (lambda (#{_\ 4593}# #{id\ 4594}# #{val\ 4595}#)
+ (identifier?
+ '#(syntax-object
+ x
+ ((top)
+ #(ribcage
+ #(_ id val)
+ #((top) (top) (top))
+ #("i4590" "i4591" "i4592"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4575")))
+ (hygiene guile))))
+ #{tmp\ 4589}#)
+ #f)
+ (@apply
+ (lambda (#{_\ 4599}# #{id\ 4600}# #{val\ 4601}#)
+ (list '#(syntax-object
+ define
+ ((top)
+ #(ribcage
+ #(_ id val)
+ #((top) (top) (top))
+ #("i4596" "i4597" "i4598"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4575")))
+ (hygiene guile))
+ #{id\ 4600}#
+ #{val\ 4601}#))
+ #{tmp\ 4589}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp\ 4576}#)))))))))
diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm
index cf6a3d4..8345479 100644
--- a/module/ice-9/psyntax.scm
+++ b/module/ice-9/psyntax.scm
@@ -520,18 +520,18 @@
(maybe-name-value! f-name proc)
(for-each maybe-name-value! ids val-exps)
(make-letrec
- src
+ src #f
(list f-name) (list f) (list proc)
(build-application src (build-lexical-reference 'fun src f-name f)
val-exps))))))
(define build-letrec
- (lambda (src ids vars val-exps body-exp)
+ (lambda (src in-order? ids vars val-exps body-exp)
(if (null? vars)
body-exp
(begin
(for-each maybe-name-value! ids val-exps)
- (make-letrec src ids vars val-exps body-exp)))))
+ (make-letrec src in-order? ids vars val-exps body-exp)))))
;; FIXME: use a faster gensym
@@ -1483,7 +1483,7 @@
(loop (cdr bs) er r-cache))
(loop (cdr bs) er-cache r-cache)))))
(set-cdr! r (extend-env labels bindings (cdr r)))
- (build-letrec no-source
+ (build-letrec no-source #t
(map syntax->datum var-ids)
vars
(map (lambda (x)
@@ -2103,7 +2103,7 @@
(new-vars (map gen-var ids)))
(let ((w (make-binding-wrap ids labels w))
(r (extend-var-env labels new-vars r)))
- (build-letrec s
+ (build-letrec s #f
(map syntax->datum ids)
new-vars
(map (lambda (x) (chi x r w
mod)) #'(val ...))
@@ -2112,6 +2112,27 @@
(_ (syntax-violation 'letrec "bad letrec" (source-wrap e
w s mod))))))
+ (global-extend 'core 'letrec*
+ (lambda (e r w s mod)
+ (syntax-case e ()
+ ((_ ((id val) ...) e1 e2 ...)
+ (and-map id? #'(id ...))
+ (let ((ids #'(id ...)))
+ (if (not (valid-bound-ids? ids))
+ (syntax-violation 'letrec* "duplicate bound
variable" e)
+ (let ((labels (gen-labels ids))
+ (new-vars (map gen-var ids)))
+ (let ((w (make-binding-wrap ids labels w))
+ (r (extend-var-env labels new-vars r)))
+ (build-letrec s #t
+ (map syntax->datum ids)
+ new-vars
+ (map (lambda (x) (chi x r w
mod)) #'(val ...))
+ (chi-body #'(e1 e2 ...)
+ (source-wrap e w s
mod) r w mod)))))))
+ (_ (syntax-violation 'letrec* "bad letrec*" (source-wrap
e w s mod))))))
+
+
(global-extend 'core 'set!
(lambda (e r w s mod)
(syntax-case e ()
diff --git a/module/language/elisp/compile-tree-il.scm
b/module/language/elisp/compile-tree-il.scm
index 47b49d6..1701f0f 100644
--- a/module/language/elisp/compile-tree-il.scm
+++ b/module/language/elisp/compile-tree-il.scm
@@ -770,7 +770,7 @@
(iter-thunk (make-lambda loc '()
(make-lambda-case #f '() #f #f #f '() '()
lambda-body #f))))
- (make-letrec loc '(iterate) (list itersym) (list iter-thunk)
+ (make-letrec loc #f '(iterate) (list itersym) (list iter-thunk)
iter-call)))
; Either (lambda ...) or (function (lambda ...)) denotes a
lambda-expression
diff --git a/module/language/tree-il.scm b/module/language/tree-il.scm
index 6811734..9cff011 100644
--- a/module/language/tree-il.scm
+++ b/module/language/tree-il.scm
@@ -42,7 +42,7 @@
lambda-case-inits lambda-case-gensyms
lambda-case-body lambda-case-alternate
<let> let? make-let let-src let-names let-gensyms let-vals let-body
- <letrec> letrec? make-letrec letrec-src letrec-names
letrec-gensyms letrec-vals letrec-body
+ <letrec> letrec? make-letrec letrec-src letrec-in-order?
letrec-names letrec-gensyms letrec-vals letrec-body
<fix> fix? make-fix fix-src fix-names fix-gensyms fix-vals fix-body
<let-values> let-values? make-let-values let-values-src
let-values-exp let-values-body
<dynwind> dynwind? make-dynwind dynwind-src dynwind-winder
dynwind-body dynwind-unwinder
@@ -123,7 +123,7 @@
;; (<lambda> meta body)
;; (<lambda-case> req opt rest kw inits gensyms body alternate)
;; (<let> names gensyms vals body)
- ;; (<letrec> names gensyms vals body)
+ ;; (<letrec> in-order? names gensyms vals body)
;; (<dynlet> fluids vals body)
(define-type (<tree-il> #:common-slots (src) #:printer print-tree-il)
@@ -216,7 +216,10 @@
(make-let loc names gensyms (map retrans vals) (retrans body)))
((letrec ,names ,gensyms ,vals ,body)
- (make-letrec loc names gensyms (map retrans vals) (retrans body)))
+ (make-letrec loc #f names gensyms (map retrans vals) (retrans body)))
+
+ ((letrec* ,names ,gensyms ,vals ,body)
+ (make-letrec loc #t names gensyms (map retrans vals) (retrans body)))
((fix ,names ,gensyms ,vals ,body)
(make-fix loc names gensyms (map retrans vals) (retrans body)))
@@ -297,8 +300,9 @@
((<let> names gensyms vals body)
`(let ,names ,gensyms ,(map unparse-tree-il vals) ,(unparse-tree-il
body)))
- ((<letrec> names gensyms vals body)
- `(letrec ,names ,gensyms ,(map unparse-tree-il vals) ,(unparse-tree-il
body)))
+ ((<letrec> in-order? names gensyms vals body)
+ `(,(if in-order? 'letrec* 'letrec) ,names ,gensyms
+ ,(map unparse-tree-il vals) ,(unparse-tree-il body)))
((<fix> names gensyms vals body)
`(fix ,names ,gensyms ,(map unparse-tree-il vals) ,(unparse-tree-il
body)))
@@ -435,12 +439,15 @@
((<let> gensyms vals body)
`(let ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme
body)))
- ((<letrec> gensyms vals body)
- `(letrec ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme
body)))
+ ((<letrec> in-order? gensyms vals body)
+ `(,(if in-order? 'letrec* 'letrec)
+ ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme body)))
((<fix> gensyms vals body)
- ;; not a typo, we really do translate back to letrec
- `(letrec ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme
body)))
+ ;; not a typo, we really do translate back to letrec. use letrec* since it
+ ;; doesn't matter, and the naive letrec* transformation does not require
an
+ ;; inner let.
+ `(letrec* ,(map list gensyms (map tree-il->scheme vals))
,(tree-il->scheme body)))
((<let-values> exp body)
`(call-with-values (lambda () ,(tree-il->scheme exp))
diff --git a/module/language/tree-il/compile-glil.scm
b/module/language/tree-il/compile-glil.scm
index 10b06b8..91ff8c7 100644
--- a/module/language/tree-il/compile-glil.scm
+++ b/module/language/tree-il/compile-glil.scm
@@ -114,7 +114,6 @@
((vector-set! . 3) . vector-set)
((variable-ref . 1) . variable-ref)
;; nb, *not* variable-set! -- the args are switched
- ((variable-set . 2) . variable-set)
((variable-bound? . 1) . variable-bound?)
((struct? . 1) . struct?)
((struct-vtable . 1) . struct-vtable)
@@ -385,6 +384,18 @@
args))
(maybe-emit-return))))
+ ;; A hack for variable-set, the opcode for which takes its args
+ ;; reversed, relative to the variable-set! function
+ ((and (primitive-ref? proc)
+ (eq? (primitive-ref-name proc) 'variable-set!)
+ (= (length args) 2))
+ (comp-push (cadr args))
+ (comp-push (car args))
+ (emit-code src (make-glil-call 'variable-set 2))
+ (case context
+ ((tail push vals) (emit-code #f (make-glil-void))))
+ (maybe-emit-return))
+
((and (primitive-ref? proc)
(or (hash-ref *primcall-ops*
(cons (primitive-ref-name proc) (length args)))
@@ -778,21 +789,35 @@
(comp-tail body)
(emit-code #f (make-glil-unbind)))
- ((<letrec> src names gensyms vals body)
+ ((<letrec> src in-order? names gensyms vals body)
+ ;; First prepare heap storage slots.
(for-each (lambda (v)
(pmatch (hashq-ref (hashq-ref allocation v) self)
((#t #t . ,n)
(emit-code src (make-glil-lexical #t #t 'empty-box n)))
(,loc (error "badness" x loc))))
gensyms)
- (for-each comp-push vals)
+ ;; Even though the slots are empty, the bindings are valid.
(emit-bindings src names gensyms allocation self emit-code)
- (for-each (lambda (v)
- (pmatch (hashq-ref (hashq-ref allocation v) self)
- ((#t #t . ,n)
- (emit-code src (make-glil-lexical #t #t 'set n)))
- (,loc (error "badness" x loc))))
- (reverse gensyms))
+ (cond
+ (in-order?
+ ;; For letrec*, bind values in order.
+ (for-each (lambda (name v val)
+ (pmatch (hashq-ref (hashq-ref allocation v) self)
+ ((#t #t . ,n)
+ (comp-push val)
+ (emit-code src (make-glil-lexical #t #t 'set n)))
+ (,loc (error "badness" x loc))))
+ names gensyms vals))
+ (else
+ ;; But for letrec, eval all values, then bind.
+ (for-each comp-push vals)
+ (for-each (lambda (v)
+ (pmatch (hashq-ref (hashq-ref allocation v) self)
+ ((#t #t . ,n)
+ (emit-code src (make-glil-lexical #t #t 'set n)))
+ (,loc (error "badness" x loc))))
+ (reverse gensyms))))
(comp-tail body)
(emit-code #f (make-glil-unbind)))
diff --git a/module/language/tree-il/fix-letrec.scm
b/module/language/tree-il/fix-letrec.scm
index 13e4807..3fbe8c0 100644
--- a/module/language/tree-il/fix-letrec.scm
+++ b/module/language/tree-il/fix-letrec.scm
@@ -31,24 +31,25 @@
(define fix-fold
(make-tree-il-folder unref ref set simple lambda complex))
-(define (simple-expression? x bound-vars)
+(define (simple-expression? x bound-vars simple-primitive?)
(record-case x
((<void>) #t)
((<const>) #t)
((<lexical-ref> gensym)
(not (memq gensym bound-vars)))
((<conditional> test consequent alternate)
- (and (simple-expression? test bound-vars)
- (simple-expression? consequent bound-vars)
- (simple-expression? alternate bound-vars)))
+ (and (simple-expression? test bound-vars simple-primitive?)
+ (simple-expression? consequent bound-vars simple-primitive?)
+ (simple-expression? alternate bound-vars simple-primitive?)))
((<sequence> exps)
- (and-map (lambda (x) (simple-expression? x bound-vars))
+ (and-map (lambda (x) (simple-expression? x bound-vars simple-primitive?))
exps))
((<application> proc args)
(and (primitive-ref? proc)
- (effect-free-primitive? (primitive-ref-name proc))
+ (simple-primitive? (primitive-ref-name proc))
;; FIXME: check arity?
- (and-map (lambda (x) (simple-expression? x bound-vars))
+ (and-map (lambda (x)
+ (simple-expression? x bound-vars simple-primitive?))
args)))
(else #f)))
@@ -90,27 +91,43 @@
(values unref ref set simple lambda* complex))))
(lambda (x unref ref set simple lambda* complex)
(record-case x
- ((<letrec> (orig-gensyms gensyms) vals)
+ ((<letrec> in-order? (orig-gensyms gensyms) vals)
(let lp ((gensyms orig-gensyms) (vals vals)
(s '()) (l '()) (c '()))
(cond
((null? gensyms)
- (values unref
+ ;; Unreferenced vars are still complex for letrec*.
+ ;; We need to update our algorithm to "Fixing letrec
+ ;; reloaded" to fix this.
+ (values (if in-order?
+ (lset-difference eq? unref c)
+ unref)
ref
set
(append s simple)
(append l lambda*)
(append c complex)))
((memq (car gensyms) unref)
- (lp (cdr gensyms) (cdr vals)
- s l c))
+ ;; See above note about unref and letrec*.
+ (if in-order?
+ (lp (cdr gensyms) (cdr vals)
+ s l (cons (car gensyms) c))
+ (lp (cdr gensyms) (cdr vals)
+ s l c)))
((memq (car gensyms) set)
(lp (cdr gensyms) (cdr vals)
s l (cons (car gensyms) c)))
((lambda? (car vals))
(lp (cdr gensyms) (cdr vals)
s (cons (car gensyms) l) c))
- ((simple-expression? (car vals) orig-gensyms)
+ ((simple-expression?
+ (car vals) orig-gensyms
+ (if in-order?
+ effect+exception-free-primitive?
+ effect-free-primitive?))
+ ;; For letrec*, we can't consider e.g. `car' to be
+ ;; "simple", as it could raise an exception. Hence
+ ;; effect+exception-free-primitive? above.
(lp (cdr gensyms) (cdr vals)
(cons (car gensyms) s) l c))
(else
@@ -172,11 +189,17 @@
(make-sequence #f (list exp (make-void #f)))
x))
- ((<letrec> src names gensyms vals body)
+ ((<letrec> src in-order? names gensyms vals body)
(let ((binds (map list gensyms names vals)))
+ ;; The bindings returned by this function need to appear in the
same
+ ;; order that they appear in the letrec.
(define (lookup set)
- (map (lambda (v) (assq v binds))
- (lset-intersection eq? gensyms set)))
+ (let lp ((binds binds))
+ (cond
+ ((null? binds) '())
+ ((memq (caar binds) set)
+ (cons (car binds) (lp (cdr binds))))
+ (else (lp (cdr binds))))))
(let ((u (lookup unref))
(s (lookup simple))
(l (lookup lambda*))
@@ -197,25 +220,34 @@
;; The right-hand-sides of the unreferenced
;; bindings, for effect.
(map caddr u)
- (if (null? c)
- ;; No complex bindings, just emit the body.
- (list body)
- (list
- ;; Evaluate the the "complex" bindings, in a `let' to
- ;; indicate that order doesn't matter, and bind to
- ;; their variables.
- (let ((tmps (map (lambda (x) (gensym)) c)))
- (make-let
- #f (map cadr c) tmps (map caddr c)
- (make-sequence
- #f
- (map (lambda (x tmp)
- (make-lexical-set
- #f (cadr x) (car x)
- (make-lexical-ref #f (cadr x) tmp)))
- c tmps))))
- ;; Finally, the body.
- body)))))))))
+ (cond
+ ((null? c)
+ ;; No complex bindings, just emit the body.
+ (list body))
+ (in-order?
+ ;; For letrec*, assign complex bindings in order, then the
+ ;; body.
+ (append
+ (map (lambda (c)
+ (make-lexical-set #f (cadr c) (car c) (caddr c)))
+ c)
+ (list body)))
+ (else
+ ;; Otherwise for plain letrec, evaluate the the "complex"
+ ;; bindings, in a `let' to indicate that order doesn't
+ ;; matter, and bind to their variables.
+ (list
+ (let ((tmps (map (lambda (x) (gensym)) c)))
+ (make-let
+ #f (map cadr c) tmps (map caddr c)
+ (make-sequence
+ #f
+ (map (lambda (x tmp)
+ (make-lexical-set
+ #f (cadr x) (car x)
+ (make-lexical-ref #f (cadr x) tmp)))
+ c tmps))))
+ body))))))))))
((<let> src names gensyms vals body)
(let ((binds (map list gensyms names vals)))
diff --git a/module/language/tree-il/primitives.scm
b/module/language/tree-il/primitives.scm
index 6fc0b3c..f710fa6 100644
--- a/module/language/tree-il/primitives.scm
+++ b/module/language/tree-il/primitives.scm
@@ -26,7 +26,8 @@
#:use-module (srfi srfi-4)
#:use-module (srfi srfi-16)
#:export (resolve-primitives! add-interesting-primitive!
- expand-primitives! effect-free-primitive?))
+ expand-primitives!
+ effect-free-primitive? effect+exception-free-primitive?))
(define *interesting-primitive-names*
'(apply @apply
@@ -59,7 +60,6 @@
vector-ref vector-set!
variable-ref variable-set!
variable-bound?
- ;; args of variable-set are switched; it needs special help
fluid-ref fluid-set!
@@ -120,7 +120,7 @@
caaaar caaadr caadar caaddr cadaar cadadr caddar cadddr
cdaaar cdaadr cdadar cdaddr cddaar cddadr cdddar cddddr
vector-ref
- struct? struct-vtable make-struct struct-ref
+ struct? struct-vtable make-struct make-struct/no-tail struct-ref
bytevector-u8-ref bytevector-s8-ref
bytevector-u16-ref bytevector-u16-native-ref
bytevector-s16-ref bytevector-s16-native-ref
@@ -131,14 +131,30 @@
bytevector-ieee-single-ref bytevector-ieee-single-native-ref
bytevector-ieee-double-ref bytevector-ieee-double-native-ref))
+;; Like *effect-free-primitives* above, but further restricted in that they
+;; cannot raise exceptions.
+(define *effect+exception-free-primitives*
+ '(values
+ eq? eqv? equal?
+ not
+ pair? null? list? acons cons cons*
+ list vector
+ struct?))
(define *effect-free-primitive-table* (make-hash-table))
+(define *effect+exceptions-free-primitive-table* (make-hash-table))
-(for-each (lambda (x) (hashq-set! *effect-free-primitive-table* x #t))
+(for-each (lambda (x)
+ (hashq-set! *effect-free-primitive-table* x #t))
*effect-free-primitives*)
+(for-each (lambda (x)
+ (hashq-set! *effect+exceptions-free-primitive-table* x #t))
+ *effect+exception-free-primitives*)
(define (effect-free-primitive? prim)
(hashq-ref *effect-free-primitive-table* prim))
+(define (effect+exception-free-primitive? prim)
+ (hashq-ref *effect+exceptions-free-primitive-table* prim))
(define (resolve-primitives! x mod)
(post-order!
@@ -317,10 +333,6 @@
(define-primitive-expander values (x) x)
-;; swap args
-(define-primitive-expander variable-set! (var val)
- (variable-set val var))
-
(define-primitive-expander make-struct (vtable tail-size . args)
(if (and (const? tail-size)
(let ((n (const-exp tail-size)))
diff --git a/test-suite/tests/tree-il.test b/test-suite/tests/tree-il.test
index caa8692..54bfd37 100644
--- a/test-suite/tests/tree-il.test
+++ b/test-suite/tests/tree-il.test
@@ -319,6 +319,52 @@
(program () (std-prelude 0 0 #f) (label _)
(const 2) (call null? 1) (call return 1))))
+(with-test-prefix "letrec"
+ ;; simple bindings -> let
+ (assert-tree-il->glil
+ (letrec (x y) (x1 y1) ((const 10) (const 20))
+ (apply (toplevel foo) (lexical x x1) (lexical y y1)))
+ (program () (std-prelude 0 2 #f) (label _)
+ (const 10) (const 20)
+ (bind (x #f 0) (y #f 1))
+ (lexical #t #f set 1) (lexical #t #f set 0)
+ (toplevel ref foo)
+ (lexical #t #f ref 0) (lexical #t #f ref 1)
+ (call tail-call 2)
+ (unbind)))
+
+ ;; complex bindings -> box and set! within let
+ (assert-tree-il->glil
+ (letrec (x y) (x1 y1) ((apply (toplevel foo)) (apply (toplevel bar)))
+ (apply (primitive +) (lexical x x1) (lexical y y1)))
+ (program () (std-prelude 0 4 #f) (label _)
+ (void) (void) ;; what are these?
+ (bind (x #t 0) (y #t 1))
+ (lexical #t #t box 1) (lexical #t #t box 0)
+ (call new-frame 0) (toplevel ref foo) (call call 0)
+ (call new-frame 0) (toplevel ref bar) (call call 0)
+ (bind (x #f 2) (y #f 3)) (lexical #t #f set 3) (lexical #t #f set
2)
+ (lexical #t #f ref 2) (lexical #t #t set 0)
+ (lexical #t #f ref 3) (lexical #t #t set 1) (unbind)
+ (lexical #t #t ref 0) (lexical #t #t ref 1)
+ (call add 2) (call return 1) (unbind)))
+
+ ;; complex bindings in letrec* -> box and set! in order
+ (assert-tree-il->glil
+ (letrec* (x y) (x1 y1) ((apply (toplevel foo)) (apply (toplevel bar)))
+ (apply (primitive +) (lexical x x1) (lexical y y1)))
+ (program () (std-prelude 0 2 #f) (label _)
+ (void) (void) ;; what are these?
+ (bind (x #t 0) (y #t 1))
+ (lexical #t #t box 1) (lexical #t #t box 0)
+ (call new-frame 0) (toplevel ref foo) (call call 0)
+ (lexical #t #t set 0)
+ (call new-frame 0) (toplevel ref bar) (call call 0)
+ (lexical #t #t set 1)
+ (lexical #t #t ref 0)
+ (lexical #t #t ref 1)
+ (call add 2) (call return 1) (unbind))))
+
(with-test-prefix "lambda"
(assert-tree-il->glil
(lambda ()
hooks/post-receive
--
GNU Guile
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Guile-commits] GNU Guile branch, master, updated. release_1-9-11-84-g417ee09,
Andy Wingo <=