[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] GNU Guile branch, master, updated. v2.0.1-53-g5eb75b5
From: |
Andy Wingo |
Subject: |
[Guile-commits] GNU Guile branch, master, updated. v2.0.1-53-g5eb75b5 |
Date: |
Thu, 05 May 2011 22:19:55 +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=5eb75b5de08ea8eb86a4760e1454460b61b4bccc
The branch, master has been updated
via 5eb75b5de08ea8eb86a4760e1454460b61b4bccc (commit)
via a2a6c0e319b5c146c484cb1fe8ffc9b14b9a9876 (commit)
via a2230b653b86cece1daab09315873b5a4c592d6b (commit)
via e2ccab571e3e756b96b4179769b8fe8821bc28fd (commit)
via 3b7f4ba37b41a4db80fc60ef7324d5c1e27944c1 (commit)
via 3009b93e9b7d14edebedde6dc28539917b556344 (commit)
from 891a1851a1e0e47560cf99cf76e9478d77e1a7db (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 5eb75b5de08ea8eb86a4760e1454460b61b4bccc
Merge: 891a185 a2a6c0e
Author: Andy Wingo <address@hidden>
Date: Fri May 6 00:18:52 2011 +0200
Merge remote-tracking branch 'origin/stable-2.0'
-----------------------------------------------------------------------
Summary of changes:
libguile/__scm.h | 4 +-
libguile/eval.c | 170 +-
libguile/evalext.c | 5 +-
libguile/list.c | 59 +-
libguile/srfi-1.c | 229 -
libguile/srfi-1.h | 2 -
libguile/vm-engine.c | 2 +-
libguile/vm-engine.h | 2 +-
libguile/vm-i-system.c | 8 +-
module/ice-9/boot-9.scm | 185 +
module/ice-9/psyntax-pp.scm |30583 +++++++++++++++++++++----------------------
module/ice-9/psyntax.scm | 27 +-
module/srfi/srfi-1.scm | 129 +-
test-suite/tests/eval.test | 15 +-
test-suite/tests/ports.test | 54 +-
15 files changed, 15591 insertions(+), 15883 deletions(-)
diff --git a/libguile/__scm.h b/libguile/__scm.h
index 2bfb4f6..f5551ad 100644
--- a/libguile/__scm.h
+++ b/libguile/__scm.h
@@ -536,10 +536,10 @@ SCM_API void scm_async_tick (void);
while (0)
/* SCM_ASYNC_TICK_WITH_CODE is only available to Guile itself */
-# define SCM_ASYNC_TICK_WITH_CODE(stmt) \
+# define SCM_ASYNC_TICK_WITH_CODE(thr, stmt) \
do \
{ \
- if (SCM_UNLIKELY (SCM_I_CURRENT_THREAD->pending_asyncs)) \
+ if (SCM_UNLIKELY (thr->pending_asyncs)) \
{ \
stmt; \
scm_async_click (); \
diff --git a/libguile/eval.c b/libguile/eval.c
index f830e00..009f379 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -596,171 +596,31 @@ SCM_DEFINE (scm_nconc2last, "apply:nconc2last", 1, 0, 0,
#undef FUNC_NAME
-
-/* Typechecking for multi-argument MAP and FOR-EACH.
-
- Verify that each element of the vector ARGV, except for the first,
- is a proper list whose length is LEN. Attribute errors to WHO,
- and claim that the i'th element of ARGV is WHO's i+2'th argument. */
-static inline void
-check_map_args (SCM argv,
- long len,
- SCM gf,
- SCM proc,
- SCM args,
- const char *who)
-{
- long i;
-
- for (i = SCM_SIMPLE_VECTOR_LENGTH (argv) - 1; i >= 1; i--)
- {
- SCM elt = SCM_SIMPLE_VECTOR_REF (argv, i);
- long elt_len = scm_ilength (elt);
-
- if (elt_len < 0)
- {
- if (gf)
- scm_apply_generic (gf, scm_cons (proc, args));
- else
- scm_wrong_type_arg (who, i + 2, elt);
- }
-
- if (elt_len != len)
- scm_out_of_range_pos (who, elt, scm_from_long (i + 2));
- }
-}
-
-
-SCM_GPROC (s_map, "map", 2, 0, 1, scm_map, g_map);
-
-/* Note: Currently, scm_map applies PROC to the argument list(s)
- sequentially, starting with the first element(s). This is used in
- evalext.c where the Scheme procedure `map-in-order', which guarantees
- sequential behaviour, is implemented using scm_map. If the
- behaviour changes, we need to update `map-in-order'.
-*/
-
SCM
scm_map (SCM proc, SCM arg1, SCM args)
-#define FUNC_NAME s_map
{
- long i, len;
- SCM res = SCM_EOL;
- SCM *pres = &res;
-
- len = scm_ilength (arg1);
- SCM_GASSERTn (len >= 0,
- g_map, scm_cons2 (proc, arg1, args), SCM_ARG2, s_map);
- SCM_VALIDATE_REST_ARGUMENT (args);
- if (scm_is_null (args))
- {
- SCM_GASSERT2 (scm_is_true (scm_procedure_p (proc)), g_map, proc, arg1,
SCM_ARG1, s_map);
- while (SCM_NIMP (arg1))
- {
- *pres = scm_list_1 (scm_call_1 (proc, SCM_CAR (arg1)));
- pres = SCM_CDRLOC (*pres);
- arg1 = SCM_CDR (arg1);
- }
- return res;
- }
- if (scm_is_null (SCM_CDR (args)))
- {
- SCM arg2 = SCM_CAR (args);
- int len2 = scm_ilength (arg2);
- SCM_GASSERTn (scm_is_true (scm_procedure_p (proc)), g_map,
- scm_cons2 (proc, arg1, args), SCM_ARG1, s_map);
- SCM_GASSERTn (len2 >= 0,
- g_map, scm_cons2 (proc, arg1, args), SCM_ARG3, s_map);
- if (len2 != len)
- SCM_OUT_OF_RANGE (3, arg2);
- while (SCM_NIMP (arg1))
- {
- *pres = scm_list_1 (scm_call_2 (proc, SCM_CAR (arg1), SCM_CAR
(arg2)));
- pres = SCM_CDRLOC (*pres);
- arg1 = SCM_CDR (arg1);
- arg2 = SCM_CDR (arg2);
- }
- return res;
- }
- arg1 = scm_cons (arg1, args);
- args = scm_vector (arg1);
- check_map_args (args, len, g_map, proc, arg1, s_map);
- while (1)
- {
- arg1 = SCM_EOL;
- for (i = SCM_SIMPLE_VECTOR_LENGTH (args) - 1; i >= 0; i--)
- {
- SCM elt = SCM_SIMPLE_VECTOR_REF (args, i);
- if (SCM_IMP (elt))
- return res;
- arg1 = scm_cons (SCM_CAR (elt), arg1);
- SCM_SIMPLE_VECTOR_SET (args, i, SCM_CDR (elt));
- }
- *pres = scm_list_1 (scm_apply (proc, arg1, SCM_EOL));
- pres = SCM_CDRLOC (*pres);
- }
-}
-#undef FUNC_NAME
+ static SCM var = SCM_BOOL_F;
+ if (scm_is_false (var))
+ var = scm_private_variable (scm_the_root_module (),
+ scm_from_latin1_symbol ("map"));
-SCM_GPROC (s_for_each, "for-each", 2, 0, 1, scm_for_each, g_for_each);
+ return scm_apply (scm_variable_ref (var),
+ scm_cons (proc, scm_cons (arg1, args)), SCM_EOL);
+}
SCM
scm_for_each (SCM proc, SCM arg1, SCM args)
-#define FUNC_NAME s_for_each
{
- long i, len;
- len = scm_ilength (arg1);
- SCM_GASSERTn (len >= 0, g_for_each, scm_cons2 (proc, arg1, args),
- SCM_ARG2, s_for_each);
- SCM_VALIDATE_REST_ARGUMENT (args);
- if (scm_is_null (args))
- {
- SCM_GASSERT2 (scm_is_true (scm_procedure_p (proc)), g_for_each,
- proc, arg1, SCM_ARG1, s_for_each);
- while (SCM_NIMP (arg1))
- {
- scm_call_1 (proc, SCM_CAR (arg1));
- arg1 = SCM_CDR (arg1);
- }
- return SCM_UNSPECIFIED;
- }
- if (scm_is_null (SCM_CDR (args)))
- {
- SCM arg2 = SCM_CAR (args);
- int len2 = scm_ilength (arg2);
- SCM_GASSERTn (scm_is_true (scm_procedure_p (proc)), g_for_each,
- scm_cons2 (proc, arg1, args), SCM_ARG1, s_for_each);
- SCM_GASSERTn (len2 >= 0, g_for_each,
- scm_cons2 (proc, arg1, args), SCM_ARG3, s_for_each);
- if (len2 != len)
- SCM_OUT_OF_RANGE (3, arg2);
- while (SCM_NIMP (arg1))
- {
- scm_call_2 (proc, SCM_CAR (arg1), SCM_CAR (arg2));
- arg1 = SCM_CDR (arg1);
- arg2 = SCM_CDR (arg2);
- }
- return SCM_UNSPECIFIED;
- }
- arg1 = scm_cons (arg1, args);
- args = scm_vector (arg1);
- check_map_args (args, len, g_for_each, proc, arg1, s_for_each);
- while (1)
- {
- arg1 = SCM_EOL;
- for (i = SCM_SIMPLE_VECTOR_LENGTH (args) - 1; i >= 0; i--)
- {
- SCM elt = SCM_SIMPLE_VECTOR_REF (args, i);
- if (SCM_IMP (elt))
- return SCM_UNSPECIFIED;
- arg1 = scm_cons (SCM_CAR (elt), arg1);
- SCM_SIMPLE_VECTOR_SET (args, i, SCM_CDR (elt));
- }
- scm_apply (proc, arg1, SCM_EOL);
- }
+ static SCM var = SCM_BOOL_F;
+
+ if (scm_is_false (var))
+ var = scm_private_variable (scm_the_root_module (),
+ scm_from_latin1_symbol ("for-each"));
+
+ return scm_apply (scm_variable_ref (var),
+ scm_cons (proc, scm_cons (arg1, args)), SCM_EOL);
}
-#undef FUNC_NAME
static SCM
diff --git a/libguile/evalext.c b/libguile/evalext.c
index ff2ff0e..1e5bd68 100644
--- a/libguile/evalext.c
+++ b/libguile/evalext.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006, 2008, 2009, 2010 Free
Software Foundation, Inc.
+/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006, 2008, 2009, 2010, 2011
Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@@ -55,9 +55,6 @@ SCM_DEFINE (scm_defined_p, "defined?", 1, 1, 0,
#undef FUNC_NAME
-SCM_REGISTER_PROC (s_map_in_order, "map-in-order", 2, 0, 1, scm_map);
-
-
SCM_DEFINE (scm_self_evaluating_p, "self-evaluating?", 1, 0, 0,
(SCM obj),
"Return #t for objects which Guile considers self-evaluating")
diff --git a/libguile/list.c b/libguile/list.c
index 23ef404..7041515 100644
--- a/libguile/list.c
+++ b/libguile/list.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,2000,2001,2003,2004,2008,2009,2010
+/* Copyright (C) 1995,1996,1997,2000,2001,2003,2004,2008,2009,2010,2011
* Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
@@ -617,8 +617,32 @@ SCM_DEFINE (scm_memq, "memq", 2, 0, 0,
"returned.")
#define FUNC_NAME s_scm_memq
{
- SCM_VALIDATE_LIST (2, lst);
- return scm_c_memq (x, lst);
+ SCM hare = lst, tortoise = lst;
+
+ while (scm_is_pair (hare))
+ {
+ if (scm_is_eq (SCM_CAR (hare), x))
+ return hare;
+ else
+ hare = SCM_CDR (hare);
+
+ if (!scm_is_pair (hare))
+ break;
+
+ if (scm_is_eq (SCM_CAR (hare), x))
+ return hare;
+ else
+ hare = SCM_CDR (hare);
+
+ tortoise = SCM_CDR (tortoise);
+ if (SCM_UNLIKELY (scm_is_eq (hare, tortoise)))
+ break;
+ }
+
+ if (SCM_LIKELY (scm_is_null (hare)))
+ return SCM_BOOL_F;
+ else
+ scm_wrong_type_arg_msg (FUNC_NAME, 2, lst, "list");
}
#undef FUNC_NAME
@@ -633,13 +657,32 @@ SCM_DEFINE (scm_memv, "memv", 2, 0, 0,
"returned.")
#define FUNC_NAME s_scm_memv
{
- SCM_VALIDATE_LIST (2, lst);
- for (; !SCM_NULL_OR_NIL_P (lst); lst = SCM_CDR (lst))
+ SCM hare = lst, tortoise = lst;
+
+ while (scm_is_pair (hare))
{
- if (! scm_is_false (scm_eqv_p (SCM_CAR (lst), x)))
- return lst;
+ if (scm_is_true (scm_eqv_p (SCM_CAR (hare), x)))
+ return hare;
+ else
+ hare = SCM_CDR (hare);
+
+ if (!scm_is_pair (hare))
+ break;
+
+ if (scm_is_true (scm_eqv_p (SCM_CAR (hare), x)))
+ return hare;
+ else
+ hare = SCM_CDR (hare);
+
+ tortoise = SCM_CDR (tortoise);
+ if (SCM_UNLIKELY (scm_is_eq (hare, tortoise)))
+ break;
}
- return SCM_BOOL_F;
+
+ if (SCM_LIKELY (scm_is_null (hare)))
+ return SCM_BOOL_F;
+ else
+ scm_wrong_type_arg_msg (FUNC_NAME, 2, lst, "list");
}
#undef FUNC_NAME
diff --git a/libguile/srfi-1.c b/libguile/srfi-1.c
index f67e600..37441f7 100644
--- a/libguile/srfi-1.c
+++ b/libguile/srfi-1.c
@@ -44,32 +44,6 @@
*/
-static long
-srfi1_ilength (SCM sx)
-{
- long i = 0;
- SCM tortoise = sx;
- SCM hare = sx;
-
- do {
- if (SCM_NULL_OR_NIL_P(hare)) return i;
- if (!scm_is_pair (hare)) return -2;
- hare = SCM_CDR(hare);
- i++;
- if (SCM_NULL_OR_NIL_P(hare)) return i;
- if (!scm_is_pair (hare)) return -2;
- hare = SCM_CDR(hare);
- i++;
- /* For every two steps the hare takes, the tortoise takes one. */
- tortoise = SCM_CDR(tortoise);
- }
- while (! scm_is_eq (hare, tortoise));
-
- /* If the tortoise ever catches the hare, then the list must contain
- a cycle. */
- return -1;
-}
-
static SCM
equal_trampoline (SCM proc, SCM arg1, SCM arg2)
{
@@ -760,202 +734,6 @@ SCM_DEFINE (scm_srfi1_lset_difference_x,
"lset-difference!", 2, 0, 1,
#undef FUNC_NAME
-/* Typechecking for multi-argument MAP and FOR-EACH.
-
- Verify that each element of the vector ARGV, except for the first,
- is a list and return minimum length. Attribute errors to WHO,
- and claim that the i'th element of ARGV is WHO's i+2'th argument. */
-static inline int
-check_map_args (SCM argv,
- long len,
- SCM gf,
- SCM proc,
- SCM args,
- const char *who)
-{
- long i;
- SCM elt;
-
- for (i = SCM_SIMPLE_VECTOR_LENGTH (argv) - 1; i >= 1; i--)
- {
- long elt_len;
- elt = SCM_SIMPLE_VECTOR_REF (argv, i);
-
- if (!(scm_is_null (elt) || scm_is_pair (elt)))
- goto check_map_error;
-
- elt_len = srfi1_ilength (elt);
- if (elt_len < -1)
- goto check_map_error;
-
- if (len < 0 || (elt_len >= 0 && elt_len < len))
- len = elt_len;
- }
-
- if (len < 0)
- {
- /* i == 0 */
- elt = SCM_EOL;
- check_map_error:
- if (gf)
- scm_apply_generic (gf, scm_cons (proc, args));
- else
- scm_wrong_type_arg (who, i + 2, elt);
- }
-
- scm_remember_upto_here_1 (argv);
- return len;
-}
-
-
-SCM_GPROC (s_srfi1_map, "map", 2, 0, 1, scm_srfi1_map, g_srfi1_map);
-
-/* Note: Currently, scm_srfi1_map applies PROC to the argument list(s)
- sequentially, starting with the first element(s). This is used in
- the Scheme procedure `map-in-order', which guarantees sequential
- behaviour, is implemented using scm_map. If the behaviour changes,
- we need to update `map-in-order'.
-*/
-
-SCM
-scm_srfi1_map (SCM proc, SCM arg1, SCM args)
-#define FUNC_NAME s_srfi1_map
-{
- long i, len;
- SCM res = SCM_EOL;
- SCM *pres = &res;
-
- len = srfi1_ilength (arg1);
- SCM_GASSERTn ((scm_is_null (arg1) || scm_is_pair (arg1)) && len >= -1,
- g_srfi1_map,
- scm_cons2 (proc, arg1, args), SCM_ARG2, s_srfi1_map);
- SCM_VALIDATE_REST_ARGUMENT (args);
- if (scm_is_null (args))
- {
- SCM_GASSERT2 (scm_is_true (scm_procedure_p (proc)), g_srfi1_map,
- proc, arg1, SCM_ARG1, s_srfi1_map);
- SCM_GASSERT2 (len >= 0, g_srfi1_map, proc, arg1, SCM_ARG2, s_srfi1_map);
- while (SCM_NIMP (arg1))
- {
- *pres = scm_list_1 (scm_call_1 (proc, SCM_CAR (arg1)));
- pres = SCM_CDRLOC (*pres);
- arg1 = SCM_CDR (arg1);
- }
- return res;
- }
- if (scm_is_null (SCM_CDR (args)))
- {
- SCM arg2 = SCM_CAR (args);
- int len2 = srfi1_ilength (arg2);
- SCM_GASSERTn (scm_is_true (scm_procedure_p (proc)), g_srfi1_map,
- scm_cons2 (proc, arg1, args), SCM_ARG1, s_srfi1_map);
- if (len < 0 || (len2 >= 0 && len2 < len))
- len = len2;
- SCM_GASSERTn ((scm_is_null (arg2) || scm_is_pair (arg2))
- && len >= 0 && len2 >= -1,
- g_srfi1_map,
- scm_cons2 (proc, arg1, args),
- len2 >= 0 ? SCM_ARG2 : SCM_ARG3,
- s_srfi1_map);
- while (len > 0)
- {
- *pres = scm_list_1 (scm_call_2 (proc, SCM_CAR (arg1), SCM_CAR
(arg2)));
- pres = SCM_CDRLOC (*pres);
- arg1 = SCM_CDR (arg1);
- arg2 = SCM_CDR (arg2);
- --len;
- }
- return res;
- }
- args = scm_vector (arg1 = scm_cons (arg1, args));
- len = check_map_args (args, len, g_srfi1_map, proc, arg1, s_srfi1_map);
- while (len > 0)
- {
- arg1 = SCM_EOL;
- for (i = SCM_SIMPLE_VECTOR_LENGTH (args) - 1; i >= 0; i--)
- {
- SCM elt = SCM_SIMPLE_VECTOR_REF (args, i);
- arg1 = scm_cons (SCM_CAR (elt), arg1);
- SCM_SIMPLE_VECTOR_SET (args, i, SCM_CDR (elt));
- }
- *pres = scm_list_1 (scm_apply (proc, arg1, SCM_EOL));
- pres = SCM_CDRLOC (*pres);
- --len;
- }
- return res;
-}
-#undef FUNC_NAME
-
-SCM_REGISTER_PROC (s_srfi1_map_in_order, "map-in-order", 2, 0, 1,
scm_srfi1_map);
-
-SCM_GPROC (s_srfi1_for_each, "for-each", 2, 0, 1, scm_srfi1_for_each,
g_srfi1_for_each);
-
-SCM
-scm_srfi1_for_each (SCM proc, SCM arg1, SCM args)
-#define FUNC_NAME s_srfi1_for_each
-{
- long i, len;
- len = srfi1_ilength (arg1);
- SCM_GASSERTn ((scm_is_null (arg1) || scm_is_pair (arg1)) && len >= -1,
- g_srfi1_for_each, scm_cons2 (proc, arg1, args),
- SCM_ARG2, s_srfi1_for_each);
- SCM_VALIDATE_REST_ARGUMENT (args);
- if (scm_is_null (args))
- {
- SCM_GASSERT2 (scm_is_true (scm_procedure_p (proc)), g_srfi1_for_each,
- proc, arg1, SCM_ARG1, s_srfi1_for_each);
- SCM_GASSERT2 (len >= 0, g_srfi1_for_each, proc, arg1,
- SCM_ARG2, s_srfi1_map);
- while (SCM_NIMP (arg1))
- {
- scm_call_1 (proc, SCM_CAR (arg1));
- arg1 = SCM_CDR (arg1);
- }
- return SCM_UNSPECIFIED;
- }
- if (scm_is_null (SCM_CDR (args)))
- {
- SCM arg2 = SCM_CAR (args);
- int len2 = srfi1_ilength (arg2);
- SCM_GASSERTn (scm_is_true (scm_procedure_p (proc)), g_srfi1_for_each,
- scm_cons2 (proc, arg1, args), SCM_ARG1, s_srfi1_for_each);
- if (len < 0 || (len2 >= 0 && len2 < len))
- len = len2;
- SCM_GASSERTn ((scm_is_null (arg2) || scm_is_pair (arg2))
- && len >= 0 && len2 >= -1,
- g_srfi1_for_each,
- scm_cons2 (proc, arg1, args),
- len2 >= 0 ? SCM_ARG2 : SCM_ARG3,
- s_srfi1_for_each);
- while (len > 0)
- {
- scm_call_2 (proc, SCM_CAR (arg1), SCM_CAR (arg2));
- arg1 = SCM_CDR (arg1);
- arg2 = SCM_CDR (arg2);
- --len;
- }
- return SCM_UNSPECIFIED;
- }
- args = scm_vector (arg1 = scm_cons (arg1, args));
- len = check_map_args (args, len, g_srfi1_for_each, proc, arg1,
- s_srfi1_for_each);
- while (len > 0)
- {
- arg1 = SCM_EOL;
- for (i = SCM_SIMPLE_VECTOR_LENGTH (args) - 1; i >= 0; i--)
- {
- SCM elt = SCM_SIMPLE_VECTOR_REF (args, i);
- arg1 = scm_cons (SCM_CAR (elt), arg1);
- SCM_SIMPLE_VECTOR_SET (args, i, SCM_CDR (elt));
- }
- scm_apply (proc, arg1, SCM_EOL);
- --len;
- }
- return SCM_UNSPECIFIED;
-}
-#undef FUNC_NAME
-
-
SCM_DEFINE (scm_srfi1_assoc, "assoc", 2, 1, 0,
(SCM key, SCM alist, SCM pred),
"Behaves like @code{assq} but uses third argument @var{pred?}\n"
@@ -1175,16 +953,9 @@ scm_register_srfi_1 (void)
void
scm_init_srfi_1 (void)
{
- SCM the_root_module = scm_lookup_closure_module (SCM_BOOL_F);
#ifndef SCM_MAGIC_SNARFER
#include "libguile/srfi-1.x"
#endif
- scm_c_extend_primitive_generic
- (SCM_VARIABLE_REF (scm_c_module_lookup (the_root_module, "map")),
- SCM_VARIABLE_REF (scm_c_lookup ("map")));
- scm_c_extend_primitive_generic
- (SCM_VARIABLE_REF (scm_c_module_lookup (the_root_module, "for-each")),
- SCM_VARIABLE_REF (scm_c_lookup ("for-each")));
}
/* End of srfi-1.c. */
diff --git a/libguile/srfi-1.h b/libguile/srfi-1.h
index 85aa65d..13ab067 100644
--- a/libguile/srfi-1.h
+++ b/libguile/srfi-1.h
@@ -39,8 +39,6 @@ SCM_INTERNAL SCM scm_srfi1_find_tail (SCM pred, SCM lst);
SCM_INTERNAL SCM scm_srfi1_length_plus (SCM lst);
SCM_INTERNAL SCM scm_srfi1_lset_difference_x (SCM equal, SCM lst, SCM rest);
SCM_INTERNAL SCM scm_srfi1_list_copy (SCM lst);
-SCM_INTERNAL SCM scm_srfi1_map (SCM proc, SCM arg1, SCM args);
-SCM_INTERNAL SCM scm_srfi1_for_each (SCM proc, SCM arg1, SCM args);
SCM_INTERNAL SCM scm_srfi1_assoc (SCM key, SCM alist, SCM pred);
SCM_INTERNAL SCM scm_srfi1_partition (SCM pred, SCM list);
SCM_INTERNAL SCM scm_srfi1_partition_x (SCM pred, SCM list);
diff --git a/libguile/vm-engine.c b/libguile/vm-engine.c
index bfa8489..e449b43 100644
--- a/libguile/vm-engine.c
+++ b/libguile/vm-engine.c
@@ -52,7 +52,7 @@ VM_NAME (SCM vm, SCM program, SCM *argv, int nargs)
#endif
SCM *stack_limit = vp->stack_limit; /* stack limit address */
- SCM dynstate = SCM_I_CURRENT_THREAD->dynamic_state;
+ scm_i_thread *current_thread = SCM_I_CURRENT_THREAD;
scm_t_int64 vm_cookie = vp->cookie++;
/* Internal variables */
diff --git a/libguile/vm-engine.h b/libguile/vm-engine.h
index abbc110..146931e 100644
--- a/libguile/vm-engine.h
+++ b/libguile/vm-engine.h
@@ -244,7 +244,7 @@
RUN_HOOK (SCM_VM_RESTORE_CONTINUATION_HOOK)
#define VM_HANDLE_INTERRUPTS \
- SCM_ASYNC_TICK_WITH_CODE (SYNC_REGISTER ())
+ SCM_ASYNC_TICK_WITH_CODE (current_thread, SYNC_REGISTER ())
/*
diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c
index ea00fc9..0ff411f 100644
--- a/libguile/vm-i-system.c
+++ b/libguile/vm-i-system.c
@@ -1635,7 +1635,7 @@ VM_DEFINE_INSTRUCTION (89, wind_fluids, "wind-fluids", 1,
-1, 0)
wf = scm_i_make_with_fluids (n, sp + 1, sp + 1 + n);
NULLSTACK (2 * n);
- scm_i_swap_with_fluids (wf, dynstate);
+ scm_i_swap_with_fluids (wf, current_thread->dynamic_state);
scm_i_set_dynwinds (scm_cons (wf, scm_i_dynwinds ()));
NEXT;
}
@@ -1645,7 +1645,7 @@ VM_DEFINE_INSTRUCTION (90, unwind_fluids,
"unwind-fluids", 0, 0, 0)
SCM wf;
wf = scm_car (scm_i_dynwinds ());
scm_i_set_dynwinds (scm_cdr (scm_i_dynwinds ()));
- scm_i_swap_with_fluids (wf, dynstate);
+ scm_i_swap_with_fluids (wf, current_thread->dynamic_state);
NEXT;
}
@@ -1655,7 +1655,7 @@ VM_DEFINE_INSTRUCTION (91, fluid_ref, "fluid-ref", 0, 1,
1)
SCM fluids;
CHECK_UNDERFLOW ();
- fluids = SCM_I_DYNAMIC_STATE_FLUIDS (dynstate);
+ fluids = SCM_I_DYNAMIC_STATE_FLUIDS (current_thread->dynamic_state);
if (SCM_UNLIKELY (!SCM_FLUID_P (*sp))
|| ((num = SCM_I_FLUID_NUM (*sp)) >= SCM_SIMPLE_VECTOR_LENGTH (fluids)))
{
@@ -1683,7 +1683,7 @@ VM_DEFINE_INSTRUCTION (92, fluid_set, "fluid-set", 0, 2,
0)
SCM val, fluid, fluids;
POP2 (val, fluid);
- fluids = SCM_I_DYNAMIC_STATE_FLUIDS (dynstate);
+ fluids = SCM_I_DYNAMIC_STATE_FLUIDS (current_thread->dynamic_state);
if (SCM_UNLIKELY (!SCM_FLUID_P (fluid))
|| ((num = SCM_I_FLUID_NUM (fluid)) >= SCM_SIMPLE_VECTOR_LENGTH
(fluids)))
{
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index 294b915..60d133f 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -263,6 +263,50 @@ If there is no handler at all, Guile prints an error and
then exits."
+;;; Boot versions of `map' and `for-each', enough to get the expander
+;;; running.
+;;;
+(define map
+ (case-lambda
+ ((f l)
+ (let map1 ((l l))
+ (if (null? l)
+ '()
+ (cons (f (car l)) (map1 (cdr l))))))
+ ((f l1 l2)
+ (let map2 ((l1 l1) (l2 l2))
+ (if (null? l1)
+ '()
+ (cons (f (car l1) (car l2))
+ (map2 (cdr l1) (cdr l2))))))
+ ((f l1 . rest)
+ (let lp ((l1 l1) (rest rest))
+ (if (null? l1)
+ '()
+ (cons (apply f (car l1) (map car rest))
+ (lp (cdr l1) (map cdr rest))))))))
+
+(define for-each
+ (case-lambda
+ ((f l)
+ (let for-each1 ((l l))
+ (if (pair? l)
+ (begin
+ (f (car l))
+ (for-each1 (cdr l))))))
+ ((f l1 l2)
+ (let for-each2 ((l1 l1) (l2 l2))
+ (if (pair? l1)
+ (begin
+ (f (car l1) (car l2))
+ (for-each2 (cdr l1) (cdr l2))))))
+ ((f l1 . rest)
+ (let lp ((l1 l1) (rest rest))
+ (if (pair? l1)
+ (begin
+ (apply f (car l1) (map car rest))
+ (lp (cdr l1) (map cdr rest))))))))
+
;;; {and-map and or-map}
;;;
;;; (and-map fn lst) is like (and (fn (car lst)) (fn (cadr lst)) (fn...) ...)
@@ -479,6 +523,147 @@ If there is no handler at all, Guile prints an error and
then exits."
(define sym
(if (module-locally-bound? (current-module) 'sym) sym val)))))
+;;; The real versions of `map' and `for-each', with cycle detection, and
+;;; that use reverse! instead of recursion in the case of `map'.
+;;;
+(define map
+ (case-lambda
+ ((f l)
+ (let map1 ((hare l) (tortoise l) (move? #f) (out '()))
+ (if (pair? hare)
+ (if move?
+ (if (eq? tortoise hare)
+ (scm-error 'wrong-type-arg "map" "Circular list: ~S"
+ (list l) #f)
+ (map1 (cdr hare) (cdr tortoise) #f
+ (cons (f (car hare)) out)))
+ (map1 (cdr hare) tortoise #t
+ (cons (f (car hare)) out)))
+ (if (null? hare)
+ (reverse! out)
+ (scm-error 'wrong-type-arg "map" "Not a list: ~S"
+ (list l) #f)))))
+
+ ((f l1 l2)
+ (let map2 ((h1 l1) (h2 l2) (t1 l1) (t2 l2) (move? #f) (out '()))
+ (cond
+ ((pair? h1)
+ (cond
+ ((not (pair? h2))
+ (scm-error 'wrong-type-arg "map"
+ (if (list? h2)
+ "List of wrong length: ~S"
+ "Not a list: ~S")
+ (list l2) #f))
+ ((not move?)
+ (map2 (cdr h1) (cdr h2) t1 t2 #t
+ (cons (f (car h1) (car h2)) out)))
+ ((eq? t1 h1)
+ (scm-error 'wrong-type-arg "map" "Circular list: ~S"
+ (list l1) #f))
+ ((eq? t2 h2)
+ (scm-error 'wrong-type-arg "map" "Circular list: ~S"
+ (list l2) #f))
+ (else
+ (map2 (cdr h1) (cdr h2) (cdr t1) (cdr t2) #f
+ (cons (f (car h1) (car h2)) out)))))
+
+ ((and (null? h1) (null? h2))
+ (reverse! out))
+
+ ((null? h1)
+ (scm-error 'wrong-type-arg "map"
+ (if (list? h2)
+ "List of wrong length: ~S"
+ "Not a list: ~S")
+ (list l2) #f))
+ (else
+ (scm-error 'wrong-type-arg "map"
+ "Not a list: ~S"
+ (list l1) #f)))))
+
+ ((f l1 . rest)
+ (let ((len (length l1)))
+ (let mapn ((rest rest))
+ (or (null? rest)
+ (if (= (length (car rest)) len)
+ (mapn (cdr rest))
+ (scm-error 'wrong-type-arg "map" "List of wrong length: ~S"
+ (list (car rest)) #f)))))
+ (let mapn ((l1 l1) (rest rest) (out '()))
+ (if (null? l1)
+ (reverse! out)
+ (mapn (cdr l1) (map cdr rest)
+ (cons (apply f (car l1) (map car rest)) out)))))))
+
+(define map-in-order map)
+
+(define for-each
+ (case-lambda
+ ((f l)
+ (let for-each1 ((hare l) (tortoise l) (move? #f))
+ (if (pair? hare)
+ (if move?
+ (if (eq? tortoise hare)
+ (scm-error 'wrong-type-arg "for-each" "Circular list: ~S"
+ (list l) #f)
+ (begin
+ (f (car hare))
+ (for-each1 (cdr hare) (cdr tortoise) #f)))
+ (begin
+ (f (car hare))
+ (for-each1 (cdr hare) tortoise #t)))
+
+ (if (not (null? hare))
+ (scm-error 'wrong-type-arg "for-each" "Not a list: ~S"
+ (list l) #f)))))
+
+ ((f l1 l2)
+ (let for-each2 ((h1 l1) (h2 l2) (t1 l1) (t2 l2) (move? #f))
+ (cond
+ ((and (pair? h1) (pair? h2))
+ (cond
+ ((not move?)
+ (f (car h1) (car h2))
+ (for-each2 (cdr h1) (cdr h2) t1 t2 #t))
+ ((eq? t1 h1)
+ (scm-error 'wrong-type-arg "for-each" "Circular list: ~S"
+ (list l1) #f))
+ ((eq? t2 h2)
+ (scm-error 'wrong-type-arg "for-each" "Circular list: ~S"
+ (list l2) #f))
+ (else
+ (f (car h1) (car h2))
+ (for-each2 (cdr h1) (cdr h2) (cdr t1) (cdr t2) #f))))
+
+ ((if (null? h1)
+ (or (null? h2) (pair? h2))
+ (and (pair? h1) (null? h2)))
+ (if #f #f))
+
+ ((list? h1)
+ (scm-error 'wrong-type-arg "for-each" "Unexpected tail: ~S"
+ (list h2) #f))
+ (else
+ (scm-error 'wrong-type-arg "for-each" "Unexpected tail: ~S"
+ (list h1) #f)))))
+
+ ((f l1 . rest)
+ (let ((len (length l1)))
+ (let for-eachn ((rest rest))
+ (or (null? rest)
+ (if (= (length (car rest)) len)
+ (for-eachn (cdr rest))
+ (scm-error 'wrong-type-arg "for-each" "List of wrong length:
~S"
+ (list (car rest)) #f)))))
+
+ (let for-eachn ((l1 l1) (rest rest))
+ (if (pair? l1)
+ (begin
+ (apply f (car l1) (map car rest))
+ (for-eachn (cdr l1) (map cdr rest))))))))
+
+
;;;
diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm
index 16c6a90..2a444a0 100644
--- a/module/ice-9/psyntax-pp.scm
+++ b/module/ice-9/psyntax-pp.scm
@@ -2,10603 +2,1521 @@
(if #f #f)
(letrec*
- ((#{and-map* 38}#
- (lambda (#{f 202}# #{first 203}# . #{rest 204}#)
+ ((#{make-void 203}#
+ (lambda (#{src 761}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 0)
+ #{src 761}#)))
+ (#{make-const 205}#
+ (lambda (#{src 763}# #{exp 764}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ #{src 763}#
+ #{exp 764}#)))
+ (#{make-lexical-ref 209}#
+ (lambda (#{src 771}# #{name 772}# #{gensym 773}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 3)
+ #{src 771}#
+ #{name 772}#
+ #{gensym 773}#)))
+ (#{make-lexical-set 211}#
+ (lambda (#{src 777}#
+ #{name 778}#
+ #{gensym 779}#
+ #{exp 780}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 4)
+ #{src 777}#
+ #{name 778}#
+ #{gensym 779}#
+ #{exp 780}#)))
+ (#{make-module-ref 213}#
+ (lambda (#{src 785}#
+ #{mod 786}#
+ #{name 787}#
+ #{public? 788}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 5)
+ #{src 785}#
+ #{mod 786}#
+ #{name 787}#
+ #{public? 788}#)))
+ (#{make-module-set 215}#
+ (lambda (#{src 793}#
+ #{mod 794}#
+ #{name 795}#
+ #{public? 796}#
+ #{exp 797}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 6)
+ #{src 793}#
+ #{mod 794}#
+ #{name 795}#
+ #{public? 796}#
+ #{exp 797}#)))
+ (#{make-toplevel-ref 217}#
+ (lambda (#{src 803}# #{name 804}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 7)
+ #{src 803}#
+ #{name 804}#)))
+ (#{make-toplevel-set 219}#
+ (lambda (#{src 807}# #{name 808}# #{exp 809}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 8)
+ #{src 807}#
+ #{name 808}#
+ #{exp 809}#)))
+ (#{make-toplevel-define 221}#
+ (lambda (#{src 813}# #{name 814}# #{exp 815}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 9)
+ #{src 813}#
+ #{name 814}#
+ #{exp 815}#)))
+ (#{make-conditional 223}#
+ (lambda (#{src 819}#
+ #{test 820}#
+ #{consequent 821}#
+ #{alternate 822}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 10)
+ #{src 819}#
+ #{test 820}#
+ #{consequent 821}#
+ #{alternate 822}#)))
+ (#{make-application 225}#
+ (lambda (#{src 827}# #{proc 828}# #{args 829}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 11)
+ #{src 827}#
+ #{proc 828}#
+ #{args 829}#)))
+ (#{make-sequence 227}#
+ (lambda (#{src 833}# #{exps 834}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #{src 833}#
+ #{exps 834}#)))
+ (#{make-lambda 229}#
+ (lambda (#{src 837}# #{meta 838}# #{body 839}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 13)
+ #{src 837}#
+ #{meta 838}#
+ #{body 839}#)))
+ (#{make-lambda-case 231}#
+ (lambda (#{src 843}#
+ #{req 844}#
+ #{opt 845}#
+ #{rest 846}#
+ #{kw 847}#
+ #{inits 848}#
+ #{gensyms 849}#
+ #{body 850}#
+ #{alternate 851}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ #{src 843}#
+ #{req 844}#
+ #{opt 845}#
+ #{rest 846}#
+ #{kw 847}#
+ #{inits 848}#
+ #{gensyms 849}#
+ #{body 850}#
+ #{alternate 851}#)))
+ (#{make-let 233}#
+ (lambda (#{src 861}#
+ #{names 862}#
+ #{gensyms 863}#
+ #{vals 864}#
+ #{body 865}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ #{src 861}#
+ #{names 862}#
+ #{gensyms 863}#
+ #{vals 864}#
+ #{body 865}#)))
+ (#{make-letrec 235}#
+ (lambda (#{src 871}#
+ #{in-order? 872}#
+ #{names 873}#
+ #{gensyms 874}#
+ #{vals 875}#
+ #{body 876}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 16)
+ #{src 871}#
+ #{in-order? 872}#
+ #{names 873}#
+ #{gensyms 874}#
+ #{vals 875}#
+ #{body 876}#)))
+ (#{make-dynlet 237}#
+ (lambda (#{src 883}#
+ #{fluids 884}#
+ #{vals 885}#
+ #{body 886}#)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 17)
+ #{src 883}#
+ #{fluids 884}#
+ #{vals 885}#
+ #{body 886}#)))
+ (#{lambda? 240}#
+ (lambda (#{x 891}#)
+ (if (struct? #{x 891}#)
+ (eq? (struct-vtable #{x 891}#)
+ (vector-ref %expanded-vtables 13))
+ #f)))
+ (#{lambda-meta 242}#
+ (lambda (#{x 895}#) (struct-ref #{x 895}# 1)))
+ (#{set-lambda-meta! 244}#
+ (lambda (#{x 897}# #{v 898}#)
+ (struct-set! #{x 897}# 1 #{v 898}#)))
+ (#{top-level-eval-hook 250}#
+ (lambda (#{x 901}# #{mod 902}#)
+ (primitive-eval #{x 901}#)))
+ (#{local-eval-hook 252}#
+ (lambda (#{x 905}# #{mod 906}#)
+ (primitive-eval #{x 905}#)))
+ (#{put-global-definition-hook 255}#
+ (lambda (#{symbol 909}# #{type 910}# #{val 911}#)
+ (module-define!
+ (current-module)
+ #{symbol 909}#
+ (make-syntax-transformer
+ #{symbol 909}#
+ #{type 910}#
+ #{val 911}#))))
+ (#{get-global-definition-hook 257}#
+ (lambda (#{symbol 915}# #{module 916}#)
(begin
- (let ((#{t 210}# (null? #{first 203}#)))
- (if #{t 210}#
- #{t 210}#
- (if (null? #{rest 204}#)
- (letrec*
- ((#{andmap 214}#
- (lambda (#{first 215}#)
- (begin
- (let ((#{x 218}# (car #{first 215}#))
- (#{first 219}# (cdr #{first 215}#)))
- (if (null? #{first 219}#)
- (#{f 202}# #{x 218}#)
- (if (#{f 202}# #{x 218}#)
- (#{andmap 214}# #{first 219}#)
- #f)))))))
- (begin (#{andmap 214}# #{first 203}#)))
- (letrec*
- ((#{andmap 225}#
- (lambda (#{first 226}# #{rest 227}#)
- (begin
- (let ((#{x 232}# (car #{first 226}#))
- (#{xr 233}# (map car #{rest 227}#))
- (#{first 234}# (cdr #{first 226}#))
- (#{rest 235}# (map cdr #{rest 227}#)))
- (if (null? #{first 234}#)
- (@apply #{f 202}# #{x 232}# #{xr 233}#)
- (if (@apply #{f 202}# #{x 232}# #{xr 233}#)
- (#{andmap 225}# #{first 234}# #{rest 235}#)
- #f)))))))
+ (if (if (not #{module 916}#) (current-module) #f)
+ (warn "module system is booted, we should have a module"
+ #{symbol 915}#))
+ (begin
+ (let ((#{v 922}# (module-variable
+ (if #{module 916}#
+ (resolve-module (cdr #{module 916}#))
+ (current-module))
+ #{symbol 915}#)))
+ (if #{v 922}#
+ (if (variable-bound? #{v 922}#)
(begin
- (#{andmap 225}# #{first 203}# #{rest 204}#))))))))))
- (begin
- (letrec*
- ((#{make-void 240}#
- (lambda (#{src 798}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 0)
- #{src 798}#)))
- (#{make-const 242}#
- (lambda (#{src 800}# #{exp 801}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #{src 800}#
- #{exp 801}#)))
- (#{make-lexical-ref 246}#
- (lambda (#{src 808}# #{name 809}# #{gensym 810}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 3)
- #{src 808}#
- #{name 809}#
- #{gensym 810}#)))
- (#{make-lexical-set 248}#
- (lambda (#{src 814}#
- #{name 815}#
- #{gensym 816}#
- #{exp 817}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 4)
- #{src 814}#
- #{name 815}#
- #{gensym 816}#
- #{exp 817}#)))
- (#{make-module-ref 250}#
- (lambda (#{src 822}#
- #{mod 823}#
- #{name 824}#
- #{public? 825}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 5)
- #{src 822}#
- #{mod 823}#
- #{name 824}#
- #{public? 825}#)))
- (#{make-module-set 252}#
- (lambda (#{src 830}#
- #{mod 831}#
- #{name 832}#
- #{public? 833}#
- #{exp 834}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 6)
- #{src 830}#
- #{mod 831}#
- #{name 832}#
- #{public? 833}#
- #{exp 834}#)))
- (#{make-toplevel-ref 254}#
- (lambda (#{src 840}# #{name 841}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 7)
- #{src 840}#
- #{name 841}#)))
- (#{make-toplevel-set 256}#
- (lambda (#{src 844}# #{name 845}# #{exp 846}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 8)
- #{src 844}#
- #{name 845}#
- #{exp 846}#)))
- (#{make-toplevel-define 258}#
- (lambda (#{src 850}# #{name 851}# #{exp 852}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 9)
- #{src 850}#
- #{name 851}#
- #{exp 852}#)))
- (#{make-conditional 260}#
- (lambda (#{src 856}#
- #{test 857}#
- #{consequent 858}#
- #{alternate 859}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 10)
- #{src 856}#
- #{test 857}#
- #{consequent 858}#
- #{alternate 859}#)))
- (#{make-application 262}#
- (lambda (#{src 864}# #{proc 865}# #{args 866}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 11)
- #{src 864}#
- #{proc 865}#
- #{args 866}#)))
- (#{make-sequence 264}#
- (lambda (#{src 870}# #{exps 871}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 12)
- #{src 870}#
- #{exps 871}#)))
- (#{make-lambda 266}#
- (lambda (#{src 874}# #{meta 875}# #{body 876}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 13)
- #{src 874}#
- #{meta 875}#
- #{body 876}#)))
- (#{make-lambda-case 268}#
- (lambda (#{src 880}#
- #{req 881}#
- #{opt 882}#
- #{rest 883}#
- #{kw 884}#
- #{inits 885}#
- #{gensyms 886}#
- #{body 887}#
- #{alternate 888}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #{src 880}#
- #{req 881}#
- #{opt 882}#
- #{rest 883}#
- #{kw 884}#
- #{inits 885}#
- #{gensyms 886}#
- #{body 887}#
- #{alternate 888}#)))
- (#{make-let 270}#
- (lambda (#{src 898}#
- #{names 899}#
- #{gensyms 900}#
- #{vals 901}#
- #{body 902}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 15)
- #{src 898}#
- #{names 899}#
- #{gensyms 900}#
- #{vals 901}#
- #{body 902}#)))
- (#{make-letrec 272}#
- (lambda (#{src 908}#
- #{in-order? 909}#
- #{names 910}#
- #{gensyms 911}#
- #{vals 912}#
- #{body 913}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 16)
- #{src 908}#
- #{in-order? 909}#
- #{names 910}#
- #{gensyms 911}#
- #{vals 912}#
- #{body 913}#)))
- (#{make-dynlet 274}#
- (lambda (#{src 920}#
- #{fluids 921}#
- #{vals 922}#
- #{body 923}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 17)
- #{src 920}#
- #{fluids 921}#
- #{vals 922}#
- #{body 923}#)))
- (#{lambda? 277}#
- (lambda (#{x 928}#)
- (if (struct? #{x 928}#)
- (eq? (struct-vtable #{x 928}#)
- (vector-ref %expanded-vtables 13))
- #f)))
- (#{lambda-meta 279}#
- (lambda (#{x 932}#) (struct-ref #{x 932}# 1)))
- (#{set-lambda-meta! 281}#
- (lambda (#{x 934}# #{v 935}#)
- (struct-set! #{x 934}# 1 #{v 935}#)))
- (#{top-level-eval-hook 287}#
- (lambda (#{x 938}# #{mod 939}#)
- (primitive-eval #{x 938}#)))
- (#{local-eval-hook 289}#
- (lambda (#{x 942}# #{mod 943}#)
- (primitive-eval #{x 942}#)))
- (#{put-global-definition-hook 292}#
- (lambda (#{symbol 946}# #{type 947}# #{val 948}#)
- (module-define!
- (current-module)
- #{symbol 946}#
- (make-syntax-transformer
- #{symbol 946}#
- #{type 947}#
- #{val 948}#))))
- (#{get-global-definition-hook 294}#
- (lambda (#{symbol 952}# #{module 953}#)
- (begin
- (if (if (not #{module 953}#) (current-module) #f)
- (warn "module system is booted, we should have a module"
- #{symbol 952}#))
- (begin
- (let ((#{v 959}# (module-variable
- (if #{module 953}#
- (resolve-module (cdr #{module 953}#))
- (current-module))
- #{symbol 952}#)))
- (if #{v 959}#
- (if (variable-bound? #{v 959}#)
- (begin
- (let ((#{val 964}# (variable-ref #{v 959}#)))
- (if (macro? #{val 964}#)
- (if (macro-type #{val 964}#)
- (cons (macro-type #{val 964}#)
- (macro-binding #{val 964}#))
- #f)
- #f)))
- #f)
- #f))))))
- (#{decorate-source 296}#
- (lambda (#{e 968}# #{s 969}#)
- (begin
- (if (if (pair? #{e 968}#) #{s 969}# #f)
- (set-source-properties! #{e 968}# #{s 969}#))
- #{e 968}#)))
- (#{maybe-name-value! 298}#
- (lambda (#{name 974}# #{val 975}#)
- (if (#{lambda? 277}# #{val 975}#)
- (begin
- (let ((#{meta 979}# (#{lambda-meta 279}# #{val 975}#)))
- (if (not (assq 'name #{meta 979}#))
- (#{set-lambda-meta! 281}#
- #{val 975}#
- (cons (cons 'name #{name 974}#) #{meta 979}#))))))))
- (#{build-void 300}#
- (lambda (#{source 980}#)
- (#{make-void 240}# #{source 980}#)))
- (#{build-application 302}#
- (lambda (#{source 982}# #{fun-exp 983}# #{arg-exps 984}#)
- (#{make-application 262}#
- #{source 982}#
- #{fun-exp 983}#
- #{arg-exps 984}#)))
- (#{build-conditional 304}#
- (lambda (#{source 988}#
- #{test-exp 989}#
- #{then-exp 990}#
- #{else-exp 991}#)
- (#{make-conditional 260}#
- #{source 988}#
- #{test-exp 989}#
- #{then-exp 990}#
- #{else-exp 991}#)))
- (#{build-dynlet 306}#
- (lambda (#{source 996}#
- #{fluids 997}#
- #{vals 998}#
- #{body 999}#)
- (#{make-dynlet 274}#
- #{source 996}#
- #{fluids 997}#
- #{vals 998}#
- #{body 999}#)))
- (#{build-lexical-reference 308}#
- (lambda (#{type 1004}#
- #{source 1005}#
- #{name 1006}#
- #{var 1007}#)
- (#{make-lexical-ref 246}#
- #{source 1005}#
- #{name 1006}#
- #{var 1007}#)))
- (#{build-lexical-assignment 310}#
- (lambda (#{source 1012}#
- #{name 1013}#
- #{var 1014}#
- #{exp 1015}#)
- (begin
- (#{maybe-name-value! 298}#
- #{name 1013}#
- #{exp 1015}#)
- (#{make-lexical-set 248}#
- #{source 1012}#
- #{name 1013}#
- #{var 1014}#
- #{exp 1015}#))))
- (#{analyze-variable 312}#
- (lambda (#{mod 1020}#
- #{var 1021}#
- #{modref-cont 1022}#
- #{bare-cont 1023}#)
- (if (not #{mod 1020}#)
- (#{bare-cont 1023}# #{var 1021}#)
- (begin
- (let ((#{kind 1030}# (car #{mod 1020}#))
- (#{mod 1031}# (cdr #{mod 1020}#)))
- (if (eqv? #{kind 1030}# 'public)
- (#{modref-cont 1022}#
- #{mod 1031}#
- #{var 1021}#
- #t)
- (if (eqv? #{kind 1030}# 'private)
- (if (not (equal?
- #{mod 1031}#
- (module-name (current-module))))
- (#{modref-cont 1022}#
- #{mod 1031}#
- #{var 1021}#
+ (let ((#{val 927}# (variable-ref #{v 922}#)))
+ (if (macro? #{val 927}#)
+ (if (macro-type #{val 927}#)
+ (cons (macro-type #{val 927}#)
+ (macro-binding #{val 927}#))
#f)
- (#{bare-cont 1023}# #{var 1021}#))
- (if (eqv? #{kind 1030}# 'bare)
- (#{bare-cont 1023}# #{var 1021}#)
- (if (eqv? #{kind 1030}# 'hygiene)
- (if (if (not (equal?
- #{mod 1031}#
- (module-name (current-module))))
- (module-variable
- (resolve-module #{mod 1031}#)
- #{var 1021}#)
- #f)
- (#{modref-cont 1022}#
- #{mod 1031}#
- #{var 1021}#
- #f)
- (#{bare-cont 1023}# #{var 1021}#))
- (syntax-violation
- #f
- "bad module kind"
- #{var 1021}#
- #{mod 1031}#))))))))))
- (#{build-global-reference 314}#
- (lambda (#{source 1039}# #{var 1040}# #{mod 1041}#)
- (#{analyze-variable 312}#
- #{mod 1041}#
- #{var 1040}#
- (lambda (#{mod 1045}# #{var 1046}# #{public? 1047}#)
- (#{make-module-ref 250}#
- #{source 1039}#
- #{mod 1045}#
- #{var 1046}#
- #{public? 1047}#))
- (lambda (#{var 1051}#)
- (#{make-toplevel-ref 254}#
- #{source 1039}#
- #{var 1051}#)))))
- (#{build-global-assignment 316}#
- (lambda (#{source 1053}#
- #{var 1054}#
- #{exp 1055}#
- #{mod 1056}#)
- (begin
- (#{maybe-name-value! 298}#
- #{var 1054}#
- #{exp 1055}#)
- (#{analyze-variable 312}#
- #{mod 1056}#
- #{var 1054}#
- (lambda (#{mod 1061}# #{var 1062}# #{public? 1063}#)
- (#{make-module-set 252}#
- #{source 1053}#
- #{mod 1061}#
- #{var 1062}#
- #{public? 1063}#
- #{exp 1055}#))
- (lambda (#{var 1067}#)
- (#{make-toplevel-set 256}#
- #{source 1053}#
- #{var 1067}#
- #{exp 1055}#))))))
- (#{build-global-definition 318}#
- (lambda (#{source 1069}# #{var 1070}# #{exp 1071}#)
- (begin
- (#{maybe-name-value! 298}#
- #{var 1070}#
- #{exp 1071}#)
- (#{make-toplevel-define 258}#
- #{source 1069}#
- #{var 1070}#
- #{exp 1071}#))))
- (#{build-simple-lambda 320}#
- (lambda (#{src 1075}#
- #{req 1076}#
- #{rest 1077}#
- #{vars 1078}#
- #{meta 1079}#
- #{exp 1080}#)
- (#{make-lambda 266}#
- #{src 1075}#
- #{meta 1079}#
- (#{make-lambda-case 268}#
- #{src 1075}#
- #{req 1076}#
- #f
- #{rest 1077}#
- #f
- '()
- #{vars 1078}#
- #{exp 1080}#
- #f))))
- (#{build-case-lambda 322}#
- (lambda (#{src 1087}# #{meta 1088}# #{body 1089}#)
- (#{make-lambda 266}#
- #{src 1087}#
- #{meta 1088}#
- #{body 1089}#)))
- (#{build-lambda-case 324}#
- (lambda (#{src 1093}#
- #{req 1094}#
- #{opt 1095}#
- #{rest 1096}#
- #{kw 1097}#
- #{inits 1098}#
- #{vars 1099}#
- #{body 1100}#
- #{else-case 1101}#)
- (#{make-lambda-case 268}#
- #{src 1093}#
- #{req 1094}#
- #{opt 1095}#
- #{rest 1096}#
- #{kw 1097}#
- #{inits 1098}#
- #{vars 1099}#
- #{body 1100}#
- #{else-case 1101}#)))
- (#{build-primref 326}#
- (lambda (#{src 1111}# #{name 1112}#)
- (if (equal? (module-name (current-module)) '(guile))
- (#{make-toplevel-ref 254}#
- #{src 1111}#
- #{name 1112}#)
- (#{make-module-ref 250}#
- #{src 1111}#
- '(guile)
- #{name 1112}#
- #f))))
- (#{build-data 328}#
- (lambda (#{src 1115}# #{exp 1116}#)
- (#{make-const 242}# #{src 1115}# #{exp 1116}#)))
- (#{build-sequence 330}#
- (lambda (#{src 1119}# #{exps 1120}#)
- (if (null? (cdr #{exps 1120}#))
- (car #{exps 1120}#)
- (#{make-sequence 264}#
- #{src 1119}#
- #{exps 1120}#))))
- (#{build-let 332}#
- (lambda (#{src 1123}#
- #{ids 1124}#
- #{vars 1125}#
- #{val-exps 1126}#
- #{body-exp 1127}#)
- (begin
- (for-each
- #{maybe-name-value! 298}#
- #{ids 1124}#
- #{val-exps 1126}#)
- (if (null? #{vars 1125}#)
- #{body-exp 1127}#
- (#{make-let 270}#
- #{src 1123}#
- #{ids 1124}#
- #{vars 1125}#
- #{val-exps 1126}#
- #{body-exp 1127}#)))))
- (#{build-named-let 334}#
- (lambda (#{src 1133}#
- #{ids 1134}#
- #{vars 1135}#
- #{val-exps 1136}#
- #{body-exp 1137}#)
+ #f)))
+ #f)
+ #f))))))
+ (#{decorate-source 259}#
+ (lambda (#{e 931}# #{s 932}#)
+ (begin
+ (if (if (pair? #{e 931}#) #{s 932}# #f)
+ (set-source-properties! #{e 931}# #{s 932}#))
+ #{e 931}#)))
+ (#{maybe-name-value! 261}#
+ (lambda (#{name 937}# #{val 938}#)
+ (if (#{lambda? 240}# #{val 938}#)
+ (begin
+ (let ((#{meta 942}# (#{lambda-meta 242}# #{val 938}#)))
+ (if (not (assq 'name #{meta 942}#))
+ (#{set-lambda-meta! 244}#
+ #{val 938}#
+ (cons (cons 'name #{name 937}#) #{meta 942}#))))))))
+ (#{build-void 263}#
+ (lambda (#{source 943}#)
+ (#{make-void 203}# #{source 943}#)))
+ (#{build-application 265}#
+ (lambda (#{source 945}# #{fun-exp 946}# #{arg-exps 947}#)
+ (#{make-application 225}#
+ #{source 945}#
+ #{fun-exp 946}#
+ #{arg-exps 947}#)))
+ (#{build-conditional 267}#
+ (lambda (#{source 951}#
+ #{test-exp 952}#
+ #{then-exp 953}#
+ #{else-exp 954}#)
+ (#{make-conditional 223}#
+ #{source 951}#
+ #{test-exp 952}#
+ #{then-exp 953}#
+ #{else-exp 954}#)))
+ (#{build-dynlet 269}#
+ (lambda (#{source 959}#
+ #{fluids 960}#
+ #{vals 961}#
+ #{body 962}#)
+ (#{make-dynlet 237}#
+ #{source 959}#
+ #{fluids 960}#
+ #{vals 961}#
+ #{body 962}#)))
+ (#{build-lexical-reference 271}#
+ (lambda (#{type 967}#
+ #{source 968}#
+ #{name 969}#
+ #{var 970}#)
+ (#{make-lexical-ref 209}#
+ #{source 968}#
+ #{name 969}#
+ #{var 970}#)))
+ (#{build-lexical-assignment 273}#
+ (lambda (#{source 975}#
+ #{name 976}#
+ #{var 977}#
+ #{exp 978}#)
+ (begin
+ (#{maybe-name-value! 261}#
+ #{name 976}#
+ #{exp 978}#)
+ (#{make-lexical-set 211}#
+ #{source 975}#
+ #{name 976}#
+ #{var 977}#
+ #{exp 978}#))))
+ (#{analyze-variable 275}#
+ (lambda (#{mod 983}#
+ #{var 984}#
+ #{modref-cont 985}#
+ #{bare-cont 986}#)
+ (if (not #{mod 983}#)
+ (#{bare-cont 986}# #{var 984}#)
+ (begin
+ (let ((#{kind 993}# (car #{mod 983}#))
+ (#{mod 994}# (cdr #{mod 983}#)))
+ (if (eqv? #{kind 993}# 'public)
+ (#{modref-cont 985}# #{mod 994}# #{var 984}# #t)
+ (if (eqv? #{kind 993}# 'private)
+ (if (not (equal?
+ #{mod 994}#
+ (module-name (current-module))))
+ (#{modref-cont 985}# #{mod 994}# #{var 984}# #f)
+ (#{bare-cont 986}# #{var 984}#))
+ (if (eqv? #{kind 993}# 'bare)
+ (#{bare-cont 986}# #{var 984}#)
+ (if (eqv? #{kind 993}# 'hygiene)
+ (if (if (not (equal?
+ #{mod 994}#
+ (module-name (current-module))))
+ (module-variable
+ (resolve-module #{mod 994}#)
+ #{var 984}#)
+ #f)
+ (#{modref-cont 985}# #{mod 994}# #{var 984}# #f)
+ (#{bare-cont 986}# #{var 984}#))
+ (syntax-violation
+ #f
+ "bad module kind"
+ #{var 984}#
+ #{mod 994}#))))))))))
+ (#{build-global-reference 277}#
+ (lambda (#{source 1002}# #{var 1003}# #{mod 1004}#)
+ (#{analyze-variable 275}#
+ #{mod 1004}#
+ #{var 1003}#
+ (lambda (#{mod 1008}# #{var 1009}# #{public? 1010}#)
+ (#{make-module-ref 213}#
+ #{source 1002}#
+ #{mod 1008}#
+ #{var 1009}#
+ #{public? 1010}#))
+ (lambda (#{var 1014}#)
+ (#{make-toplevel-ref 217}#
+ #{source 1002}#
+ #{var 1014}#)))))
+ (#{build-global-assignment 279}#
+ (lambda (#{source 1016}#
+ #{var 1017}#
+ #{exp 1018}#
+ #{mod 1019}#)
+ (begin
+ (#{maybe-name-value! 261}#
+ #{var 1017}#
+ #{exp 1018}#)
+ (#{analyze-variable 275}#
+ #{mod 1019}#
+ #{var 1017}#
+ (lambda (#{mod 1024}# #{var 1025}# #{public? 1026}#)
+ (#{make-module-set 215}#
+ #{source 1016}#
+ #{mod 1024}#
+ #{var 1025}#
+ #{public? 1026}#
+ #{exp 1018}#))
+ (lambda (#{var 1030}#)
+ (#{make-toplevel-set 219}#
+ #{source 1016}#
+ #{var 1030}#
+ #{exp 1018}#))))))
+ (#{build-global-definition 281}#
+ (lambda (#{source 1032}# #{var 1033}# #{exp 1034}#)
+ (begin
+ (#{maybe-name-value! 261}#
+ #{var 1033}#
+ #{exp 1034}#)
+ (#{make-toplevel-define 221}#
+ #{source 1032}#
+ #{var 1033}#
+ #{exp 1034}#))))
+ (#{build-simple-lambda 283}#
+ (lambda (#{src 1038}#
+ #{req 1039}#
+ #{rest 1040}#
+ #{vars 1041}#
+ #{meta 1042}#
+ #{exp 1043}#)
+ (#{make-lambda 229}#
+ #{src 1038}#
+ #{meta 1042}#
+ (#{make-lambda-case 231}#
+ #{src 1038}#
+ #{req 1039}#
+ #f
+ #{rest 1040}#
+ #f
+ '()
+ #{vars 1041}#
+ #{exp 1043}#
+ #f))))
+ (#{build-case-lambda 285}#
+ (lambda (#{src 1050}# #{meta 1051}# #{body 1052}#)
+ (#{make-lambda 229}#
+ #{src 1050}#
+ #{meta 1051}#
+ #{body 1052}#)))
+ (#{build-lambda-case 287}#
+ (lambda (#{src 1056}#
+ #{req 1057}#
+ #{opt 1058}#
+ #{rest 1059}#
+ #{kw 1060}#
+ #{inits 1061}#
+ #{vars 1062}#
+ #{body 1063}#
+ #{else-case 1064}#)
+ (#{make-lambda-case 231}#
+ #{src 1056}#
+ #{req 1057}#
+ #{opt 1058}#
+ #{rest 1059}#
+ #{kw 1060}#
+ #{inits 1061}#
+ #{vars 1062}#
+ #{body 1063}#
+ #{else-case 1064}#)))
+ (#{build-primref 289}#
+ (lambda (#{src 1074}# #{name 1075}#)
+ (if (equal? (module-name (current-module)) '(guile))
+ (#{make-toplevel-ref 217}#
+ #{src 1074}#
+ #{name 1075}#)
+ (#{make-module-ref 213}#
+ #{src 1074}#
+ '(guile)
+ #{name 1075}#
+ #f))))
+ (#{build-data 291}#
+ (lambda (#{src 1078}# #{exp 1079}#)
+ (#{make-const 205}# #{src 1078}# #{exp 1079}#)))
+ (#{build-sequence 293}#
+ (lambda (#{src 1082}# #{exps 1083}#)
+ (if (null? (cdr #{exps 1083}#))
+ (car #{exps 1083}#)
+ (#{make-sequence 227}#
+ #{src 1082}#
+ #{exps 1083}#))))
+ (#{build-let 295}#
+ (lambda (#{src 1086}#
+ #{ids 1087}#
+ #{vars 1088}#
+ #{val-exps 1089}#
+ #{body-exp 1090}#)
+ (begin
+ (for-each
+ #{maybe-name-value! 261}#
+ #{ids 1087}#
+ #{val-exps 1089}#)
+ (if (null? #{vars 1088}#)
+ #{body-exp 1090}#
+ (#{make-let 233}#
+ #{src 1086}#
+ #{ids 1087}#
+ #{vars 1088}#
+ #{val-exps 1089}#
+ #{body-exp 1090}#)))))
+ (#{build-named-let 297}#
+ (lambda (#{src 1096}#
+ #{ids 1097}#
+ #{vars 1098}#
+ #{val-exps 1099}#
+ #{body-exp 1100}#)
+ (begin
+ (let ((#{f 1110}# (car #{vars 1098}#))
+ (#{f-name 1111}# (car #{ids 1097}#))
+ (#{vars 1112}# (cdr #{vars 1098}#))
+ (#{ids 1113}# (cdr #{ids 1097}#)))
(begin
- (let ((#{f 1147}# (car #{vars 1135}#))
- (#{f-name 1148}# (car #{ids 1134}#))
- (#{vars 1149}# (cdr #{vars 1135}#))
- (#{ids 1150}# (cdr #{ids 1134}#)))
- (begin
- (let ((#{proc 1152}#
- (#{build-simple-lambda 320}#
- #{src 1133}#
- #{ids 1150}#
- #f
- #{vars 1149}#
- '()
- #{body-exp 1137}#)))
- (begin
- (#{maybe-name-value! 298}#
- #{f-name 1148}#
- #{proc 1152}#)
- (for-each
- #{maybe-name-value! 298}#
- #{ids 1150}#
- #{val-exps 1136}#)
- (#{make-letrec 272}#
- #{src 1133}#
+ (let ((#{proc 1115}#
+ (#{build-simple-lambda 283}#
+ #{src 1096}#
+ #{ids 1113}#
#f
- (list #{f-name 1148}#)
- (list #{f 1147}#)
- (list #{proc 1152}#)
- (#{build-application 302}#
- #{src 1133}#
- (#{build-lexical-reference 308}#
- 'fun
- #{src 1133}#
- #{f-name 1148}#
- #{f 1147}#)
- #{val-exps 1136}#)))))))))
- (#{build-letrec 336}#
- (lambda (#{src 1153}#
- #{in-order? 1154}#
- #{ids 1155}#
- #{vars 1156}#
- #{val-exps 1157}#
- #{body-exp 1158}#)
- (if (null? #{vars 1156}#)
- #{body-exp 1158}#
- (begin
- (for-each
- #{maybe-name-value! 298}#
- #{ids 1155}#
- #{val-exps 1157}#)
- (#{make-letrec 272}#
- #{src 1153}#
- #{in-order? 1154}#
- #{ids 1155}#
- #{vars 1156}#
- #{val-exps 1157}#
- #{body-exp 1158}#)))))
- (#{make-syntax-object 340}#
- (lambda (#{expression 1165}#
- #{wrap 1166}#
- #{module 1167}#)
- (vector
- 'syntax-object
- #{expression 1165}#
- #{wrap 1166}#
- #{module 1167}#)))
- (#{syntax-object? 342}#
- (lambda (#{x 1171}#)
- (if (vector? #{x 1171}#)
- (if (= (vector-length #{x 1171}#) 4)
- (eq? (vector-ref #{x 1171}# 0) 'syntax-object)
- #f)
- #f)))
- (#{syntax-object-expression 344}#
- (lambda (#{x 1176}#) (vector-ref #{x 1176}# 1)))
- (#{syntax-object-wrap 346}#
- (lambda (#{x 1178}#) (vector-ref #{x 1178}# 2)))
- (#{syntax-object-module 348}#
- (lambda (#{x 1180}#) (vector-ref #{x 1180}# 3)))
- (#{source-annotation 357}#
- (lambda (#{x 1194}#)
- (if (#{syntax-object? 342}# #{x 1194}#)
- (#{source-annotation 357}#
- (#{syntax-object-expression 344}# #{x 1194}#))
- (if (pair? #{x 1194}#)
+ #{vars 1112}#
+ '()
+ #{body-exp 1100}#)))
(begin
- (let ((#{props 1201}# (source-properties #{x 1194}#)))
- (if (pair? #{props 1201}#) #{props 1201}# #f)))
- #f))))
- (#{extend-env 364}#
- (lambda (#{labels 1203}# #{bindings 1204}# #{r 1205}#)
- (if (null? #{labels 1203}#)
- #{r 1205}#
- (#{extend-env 364}#
- (cdr #{labels 1203}#)
- (cdr #{bindings 1204}#)
- (cons (cons (car #{labels 1203}#)
- (car #{bindings 1204}#))
- #{r 1205}#)))))
- (#{extend-var-env 366}#
- (lambda (#{labels 1209}# #{vars 1210}# #{r 1211}#)
- (if (null? #{labels 1209}#)
- #{r 1211}#
- (#{extend-var-env 366}#
- (cdr #{labels 1209}#)
- (cdr #{vars 1210}#)
- (cons (cons (car #{labels 1209}#)
- (cons 'lexical (car #{vars 1210}#)))
- #{r 1211}#)))))
- (#{macros-only-env 368}#
- (lambda (#{r 1216}#)
- (if (null? #{r 1216}#)
- '()
- (begin
- (let ((#{a 1219}# (car #{r 1216}#)))
- (if (eq? (car (cdr #{a 1219}#)) 'macro)
- (cons #{a 1219}#
- (#{macros-only-env 368}# (cdr #{r 1216}#)))
- (#{macros-only-env 368}# (cdr #{r 1216}#))))))))
- (#{lookup 370}#
- (lambda (#{x 1220}# #{r 1221}# #{mod 1222}#)
- (begin
- (let ((#{t 1228}# (assq #{x 1220}# #{r 1221}#)))
- (if #{t 1228}#
- (cdr #{t 1228}#)
- (if (symbol? #{x 1220}#)
- (begin
- (let ((#{t 1234}#
- (#{get-global-definition-hook 294}#
- #{x 1220}#
- #{mod 1222}#)))
- (if #{t 1234}# #{t 1234}# '(global))))
- '(displaced-lexical)))))))
- (#{global-extend 372}#
- (lambda (#{type 1239}# #{sym 1240}# #{val 1241}#)
- (#{put-global-definition-hook 292}#
- #{sym 1240}#
- #{type 1239}#
- #{val 1241}#)))
- (#{nonsymbol-id? 374}#
- (lambda (#{x 1245}#)
- (if (#{syntax-object? 342}# #{x 1245}#)
- (symbol?
- (#{syntax-object-expression 344}# #{x 1245}#))
- #f)))
- (#{id? 376}#
- (lambda (#{x 1249}#)
- (if (symbol? #{x 1249}#)
- #t
- (if (#{syntax-object? 342}# #{x 1249}#)
- (symbol?
- (#{syntax-object-expression 344}# #{x 1249}#))
- #f))))
- (#{id-sym-name&marks 379}#
- (lambda (#{x 1256}# #{w 1257}#)
- (if (#{syntax-object? 342}# #{x 1256}#)
- (values
- (#{syntax-object-expression 344}# #{x 1256}#)
- (#{join-marks 426}#
- (car #{w 1257}#)
- (car (#{syntax-object-wrap 346}# #{x 1256}#))))
- (values #{x 1256}# (car #{w 1257}#)))))
- (#{gen-label 389}#
- (lambda () (symbol->string (gensym "i"))))
- (#{gen-labels 391}#
- (lambda (#{ls 1263}#)
- (if (null? #{ls 1263}#)
- '()
- (cons (#{gen-label 389}#)
- (#{gen-labels 391}# (cdr #{ls 1263}#))))))
- (#{make-ribcage 394}#
- (lambda (#{symnames 1265}#
- #{marks 1266}#
- #{labels 1267}#)
- (vector
- 'ribcage
- #{symnames 1265}#
- #{marks 1266}#
- #{labels 1267}#)))
- (#{ribcage-symnames 398}#
- (lambda (#{x 1276}#) (vector-ref #{x 1276}# 1)))
- (#{ribcage-marks 400}#
- (lambda (#{x 1278}#) (vector-ref #{x 1278}# 2)))
- (#{ribcage-labels 402}#
- (lambda (#{x 1280}#) (vector-ref #{x 1280}# 3)))
- (#{set-ribcage-symnames! 404}#
- (lambda (#{x 1282}# #{update 1283}#)
- (vector-set! #{x 1282}# 1 #{update 1283}#)))
- (#{set-ribcage-marks! 406}#
- (lambda (#{x 1286}# #{update 1287}#)
- (vector-set! #{x 1286}# 2 #{update 1287}#)))
- (#{set-ribcage-labels! 408}#
- (lambda (#{x 1290}# #{update 1291}#)
- (vector-set! #{x 1290}# 3 #{update 1291}#)))
- (#{anti-mark 414}#
- (lambda (#{w 1294}#)
- (cons (cons #f (car #{w 1294}#))
- (cons 'shift (cdr #{w 1294}#)))))
- (#{extend-ribcage! 418}#
- (lambda (#{ribcage 1300}# #{id 1301}# #{label 1302}#)
+ (#{maybe-name-value! 261}#
+ #{f-name 1111}#
+ #{proc 1115}#)
+ (for-each
+ #{maybe-name-value! 261}#
+ #{ids 1113}#
+ #{val-exps 1099}#)
+ (#{make-letrec 235}#
+ #{src 1096}#
+ #f
+ (list #{f-name 1111}#)
+ (list #{f 1110}#)
+ (list #{proc 1115}#)
+ (#{build-application 265}#
+ #{src 1096}#
+ (#{build-lexical-reference 271}#
+ 'fun
+ #{src 1096}#
+ #{f-name 1111}#
+ #{f 1110}#)
+ #{val-exps 1099}#)))))))))
+ (#{build-letrec 299}#
+ (lambda (#{src 1116}#
+ #{in-order? 1117}#
+ #{ids 1118}#
+ #{vars 1119}#
+ #{val-exps 1120}#
+ #{body-exp 1121}#)
+ (if (null? #{vars 1119}#)
+ #{body-exp 1121}#
+ (begin
+ (for-each
+ #{maybe-name-value! 261}#
+ #{ids 1118}#
+ #{val-exps 1120}#)
+ (#{make-letrec 235}#
+ #{src 1116}#
+ #{in-order? 1117}#
+ #{ids 1118}#
+ #{vars 1119}#
+ #{val-exps 1120}#
+ #{body-exp 1121}#)))))
+ (#{make-syntax-object 303}#
+ (lambda (#{expression 1128}#
+ #{wrap 1129}#
+ #{module 1130}#)
+ (vector
+ 'syntax-object
+ #{expression 1128}#
+ #{wrap 1129}#
+ #{module 1130}#)))
+ (#{syntax-object? 305}#
+ (lambda (#{x 1134}#)
+ (if (vector? #{x 1134}#)
+ (if (= (vector-length #{x 1134}#) 4)
+ (eq? (vector-ref #{x 1134}# 0) 'syntax-object)
+ #f)
+ #f)))
+ (#{syntax-object-expression 307}#
+ (lambda (#{x 1139}#) (vector-ref #{x 1139}# 1)))
+ (#{syntax-object-wrap 309}#
+ (lambda (#{x 1141}#) (vector-ref #{x 1141}# 2)))
+ (#{syntax-object-module 311}#
+ (lambda (#{x 1143}#) (vector-ref #{x 1143}# 3)))
+ (#{source-annotation 320}#
+ (lambda (#{x 1157}#)
+ (if (#{syntax-object? 305}# #{x 1157}#)
+ (#{source-annotation 320}#
+ (#{syntax-object-expression 307}# #{x 1157}#))
+ (if (pair? #{x 1157}#)
(begin
- (#{set-ribcage-symnames! 404}#
- #{ribcage 1300}#
- (cons (#{syntax-object-expression 344}# #{id 1301}#)
- (#{ribcage-symnames 398}# #{ribcage 1300}#)))
- (#{set-ribcage-marks! 406}#
- #{ribcage 1300}#
- (cons (car (#{syntax-object-wrap 346}# #{id 1301}#))
- (#{ribcage-marks 400}# #{ribcage 1300}#)))
- (#{set-ribcage-labels! 408}#
- #{ribcage 1300}#
- (cons #{label 1302}#
- (#{ribcage-labels 402}# #{ribcage 1300}#))))))
- (#{make-binding-wrap 420}#
- (lambda (#{ids 1307}# #{labels 1308}# #{w 1309}#)
- (if (null? #{ids 1307}#)
- #{w 1309}#
- (cons (car #{w 1309}#)
- (cons (begin
- (let ((#{labelvec 1316}#
- (list->vector #{labels 1308}#)))
+ (let ((#{props 1164}# (source-properties #{x 1157}#)))
+ (if (pair? #{props 1164}#) #{props 1164}# #f)))
+ #f))))
+ (#{extend-env 327}#
+ (lambda (#{labels 1166}# #{bindings 1167}# #{r 1168}#)
+ (if (null? #{labels 1166}#)
+ #{r 1168}#
+ (#{extend-env 327}#
+ (cdr #{labels 1166}#)
+ (cdr #{bindings 1167}#)
+ (cons (cons (car #{labels 1166}#)
+ (car #{bindings 1167}#))
+ #{r 1168}#)))))
+ (#{extend-var-env 329}#
+ (lambda (#{labels 1172}# #{vars 1173}# #{r 1174}#)
+ (if (null? #{labels 1172}#)
+ #{r 1174}#
+ (#{extend-var-env 329}#
+ (cdr #{labels 1172}#)
+ (cdr #{vars 1173}#)
+ (cons (cons (car #{labels 1172}#)
+ (cons 'lexical (car #{vars 1173}#)))
+ #{r 1174}#)))))
+ (#{macros-only-env 331}#
+ (lambda (#{r 1179}#)
+ (if (null? #{r 1179}#)
+ '()
+ (begin
+ (let ((#{a 1182}# (car #{r 1179}#)))
+ (if (eq? (car (cdr #{a 1182}#)) 'macro)
+ (cons #{a 1182}#
+ (#{macros-only-env 331}# (cdr #{r 1179}#)))
+ (#{macros-only-env 331}# (cdr #{r 1179}#))))))))
+ (#{lookup 333}#
+ (lambda (#{x 1183}# #{r 1184}# #{mod 1185}#)
+ (begin
+ (let ((#{t 1191}# (assq #{x 1183}# #{r 1184}#)))
+ (if #{t 1191}#
+ (cdr #{t 1191}#)
+ (if (symbol? #{x 1183}#)
+ (begin
+ (let ((#{t 1197}#
+ (#{get-global-definition-hook 257}#
+ #{x 1183}#
+ #{mod 1185}#)))
+ (if #{t 1197}# #{t 1197}# '(global))))
+ '(displaced-lexical)))))))
+ (#{global-extend 335}#
+ (lambda (#{type 1202}# #{sym 1203}# #{val 1204}#)
+ (#{put-global-definition-hook 255}#
+ #{sym 1203}#
+ #{type 1202}#
+ #{val 1204}#)))
+ (#{nonsymbol-id? 337}#
+ (lambda (#{x 1208}#)
+ (if (#{syntax-object? 305}# #{x 1208}#)
+ (symbol?
+ (#{syntax-object-expression 307}# #{x 1208}#))
+ #f)))
+ (#{id? 339}#
+ (lambda (#{x 1212}#)
+ (if (symbol? #{x 1212}#)
+ #t
+ (if (#{syntax-object? 305}# #{x 1212}#)
+ (symbol?
+ (#{syntax-object-expression 307}# #{x 1212}#))
+ #f))))
+ (#{id-sym-name&marks 342}#
+ (lambda (#{x 1219}# #{w 1220}#)
+ (if (#{syntax-object? 305}# #{x 1219}#)
+ (values
+ (#{syntax-object-expression 307}# #{x 1219}#)
+ (#{join-marks 389}#
+ (car #{w 1220}#)
+ (car (#{syntax-object-wrap 309}# #{x 1219}#))))
+ (values #{x 1219}# (car #{w 1220}#)))))
+ (#{gen-label 352}#
+ (lambda () (symbol->string (gensym "i"))))
+ (#{gen-labels 354}#
+ (lambda (#{ls 1226}#)
+ (if (null? #{ls 1226}#)
+ '()
+ (cons (#{gen-label 352}#)
+ (#{gen-labels 354}# (cdr #{ls 1226}#))))))
+ (#{make-ribcage 357}#
+ (lambda (#{symnames 1228}#
+ #{marks 1229}#
+ #{labels 1230}#)
+ (vector
+ 'ribcage
+ #{symnames 1228}#
+ #{marks 1229}#
+ #{labels 1230}#)))
+ (#{ribcage-symnames 361}#
+ (lambda (#{x 1239}#) (vector-ref #{x 1239}# 1)))
+ (#{ribcage-marks 363}#
+ (lambda (#{x 1241}#) (vector-ref #{x 1241}# 2)))
+ (#{ribcage-labels 365}#
+ (lambda (#{x 1243}#) (vector-ref #{x 1243}# 3)))
+ (#{set-ribcage-symnames! 367}#
+ (lambda (#{x 1245}# #{update 1246}#)
+ (vector-set! #{x 1245}# 1 #{update 1246}#)))
+ (#{set-ribcage-marks! 369}#
+ (lambda (#{x 1249}# #{update 1250}#)
+ (vector-set! #{x 1249}# 2 #{update 1250}#)))
+ (#{set-ribcage-labels! 371}#
+ (lambda (#{x 1253}# #{update 1254}#)
+ (vector-set! #{x 1253}# 3 #{update 1254}#)))
+ (#{anti-mark 377}#
+ (lambda (#{w 1257}#)
+ (cons (cons #f (car #{w 1257}#))
+ (cons 'shift (cdr #{w 1257}#)))))
+ (#{extend-ribcage! 381}#
+ (lambda (#{ribcage 1263}# #{id 1264}# #{label 1265}#)
+ (begin
+ (#{set-ribcage-symnames! 367}#
+ #{ribcage 1263}#
+ (cons (#{syntax-object-expression 307}# #{id 1264}#)
+ (#{ribcage-symnames 361}# #{ribcage 1263}#)))
+ (#{set-ribcage-marks! 369}#
+ #{ribcage 1263}#
+ (cons (car (#{syntax-object-wrap 309}# #{id 1264}#))
+ (#{ribcage-marks 363}# #{ribcage 1263}#)))
+ (#{set-ribcage-labels! 371}#
+ #{ribcage 1263}#
+ (cons #{label 1265}#
+ (#{ribcage-labels 365}# #{ribcage 1263}#))))))
+ (#{make-binding-wrap 383}#
+ (lambda (#{ids 1270}# #{labels 1271}# #{w 1272}#)
+ (if (null? #{ids 1270}#)
+ #{w 1272}#
+ (cons (car #{w 1272}#)
+ (cons (begin
+ (let ((#{labelvec 1279}#
+ (list->vector #{labels 1271}#)))
+ (begin
+ (let ((#{n 1281}#
+ (vector-length #{labelvec 1279}#)))
(begin
- (let ((#{n 1318}#
- (vector-length #{labelvec 1316}#)))
+ (let ((#{symnamevec 1284}#
+ (make-vector #{n 1281}#))
+ (#{marksvec 1285}#
+ (make-vector #{n 1281}#)))
(begin
- (let ((#{symnamevec 1321}#
- (make-vector #{n 1318}#))
- (#{marksvec 1322}#
- (make-vector #{n 1318}#)))
- (begin
- (letrec*
- ((#{f 1326}#
- (lambda (#{ids 1327}# #{i 1328}#)
- (if (not (null? #{ids 1327}#))
- (call-with-values
- (lambda ()
- (#{id-sym-name&marks 379}#
- (car #{ids 1327}#)
- #{w 1309}#))
- (lambda (#{symname 1329}#
- #{marks 1330}#)
- (begin
- (vector-set!
- #{symnamevec 1321}#
- #{i 1328}#
- #{symname 1329}#)
- (vector-set!
- #{marksvec 1322}#
- #{i 1328}#
- #{marks 1330}#)
- (#{f 1326}#
- (cdr #{ids 1327}#)
- (#{1+}# #{i
1328}#)))))))))
- (begin (#{f 1326}# #{ids 1307}# 0)))
- (#{make-ribcage 394}#
- #{symnamevec 1321}#
- #{marksvec 1322}#
- #{labelvec 1316}#))))))))
- (cdr #{w 1309}#))))))
- (#{smart-append 422}#
- (lambda (#{m1 1335}# #{m2 1336}#)
- (if (null? #{m2 1336}#)
- #{m1 1335}#
- (append #{m1 1335}# #{m2 1336}#))))
- (#{join-wraps 424}#
- (lambda (#{w1 1339}# #{w2 1340}#)
- (begin
- (let ((#{m1 1345}# (car #{w1 1339}#))
- (#{s1 1346}# (cdr #{w1 1339}#)))
- (if (null? #{m1 1345}#)
- (if (null? #{s1 1346}#)
- #{w2 1340}#
- (cons (car #{w2 1340}#)
- (#{smart-append 422}#
- #{s1 1346}#
- (cdr #{w2 1340}#))))
- (cons (#{smart-append 422}#
- #{m1 1345}#
- (car #{w2 1340}#))
- (#{smart-append 422}#
- #{s1 1346}#
- (cdr #{w2 1340}#))))))))
- (#{join-marks 426}#
- (lambda (#{m1 1355}# #{m2 1356}#)
- (#{smart-append 422}# #{m1 1355}# #{m2 1356}#)))
- (#{same-marks? 428}#
- (lambda (#{x 1359}# #{y 1360}#)
- (begin
- (let ((#{t 1365}# (eq? #{x 1359}# #{y 1360}#)))
- (if #{t 1365}#
- #{t 1365}#
- (if (not (null? #{x 1359}#))
- (if (not (null? #{y 1360}#))
- (if (eq? (car #{x 1359}#) (car #{y 1360}#))
- (#{same-marks? 428}#
- (cdr #{x 1359}#)
- (cdr #{y 1360}#))
- #f)
- #f)
- #f))))))
- (#{id-var-name 430}#
- (lambda (#{id 1371}# #{w 1372}#)
- (letrec*
- ((#{search 1377}#
- (lambda (#{sym 1393}# #{subst 1394}# #{marks 1395}#)
- (if (null? #{subst 1394}#)
- (values #f #{marks 1395}#)
- (begin
- (let ((#{fst 1400}# (car #{subst 1394}#)))
- (if (eq? #{fst 1400}# 'shift)
- (#{search 1377}#
- #{sym 1393}#
- (cdr #{subst 1394}#)
- (cdr #{marks 1395}#))
- (begin
- (let ((#{symnames 1402}#
- (#{ribcage-symnames 398}# #{fst 1400}#)))
- (if (vector? #{symnames 1402}#)
- (#{search-vector-rib 1381}#
- #{sym 1393}#
- #{subst 1394}#
- #{marks 1395}#
- #{symnames 1402}#
- #{fst 1400}#)
- (#{search-list-rib 1379}#
- #{sym 1393}#
- #{subst 1394}#
- #{marks 1395}#
- #{symnames 1402}#
- #{fst 1400}#))))))))))
- (#{search-list-rib 1379}#
- (lambda (#{sym 1403}#
- #{subst 1404}#
- #{marks 1405}#
- #{symnames 1406}#
- #{ribcage 1407}#)
+ (letrec*
+ ((#{f 1289}#
+ (lambda (#{ids 1290}# #{i 1291}#)
+ (if (not (null? #{ids 1290}#))
+ (call-with-values
+ (lambda ()
+ (#{id-sym-name&marks 342}#
+ (car #{ids 1290}#)
+ #{w 1272}#))
+ (lambda (#{symname 1292}#
+ #{marks 1293}#)
+ (begin
+ (vector-set!
+ #{symnamevec 1284}#
+ #{i 1291}#
+ #{symname 1292}#)
+ (vector-set!
+ #{marksvec 1285}#
+ #{i 1291}#
+ #{marks 1293}#)
+ (#{f 1289}#
+ (cdr #{ids 1290}#)
+ (#{1+}# #{i 1291}#)))))))))
+ (begin (#{f 1289}# #{ids 1270}# 0)))
+ (#{make-ribcage 357}#
+ #{symnamevec 1284}#
+ #{marksvec 1285}#
+ #{labelvec 1279}#))))))))
+ (cdr #{w 1272}#))))))
+ (#{smart-append 385}#
+ (lambda (#{m1 1298}# #{m2 1299}#)
+ (if (null? #{m2 1299}#)
+ #{m1 1298}#
+ (append #{m1 1298}# #{m2 1299}#))))
+ (#{join-wraps 387}#
+ (lambda (#{w1 1302}# #{w2 1303}#)
+ (begin
+ (let ((#{m1 1308}# (car #{w1 1302}#))
+ (#{s1 1309}# (cdr #{w1 1302}#)))
+ (if (null? #{m1 1308}#)
+ (if (null? #{s1 1309}#)
+ #{w2 1303}#
+ (cons (car #{w2 1303}#)
+ (#{smart-append 385}#
+ #{s1 1309}#
+ (cdr #{w2 1303}#))))
+ (cons (#{smart-append 385}#
+ #{m1 1308}#
+ (car #{w2 1303}#))
+ (#{smart-append 385}#
+ #{s1 1309}#
+ (cdr #{w2 1303}#))))))))
+ (#{join-marks 389}#
+ (lambda (#{m1 1318}# #{m2 1319}#)
+ (#{smart-append 385}# #{m1 1318}# #{m2 1319}#)))
+ (#{same-marks? 391}#
+ (lambda (#{x 1322}# #{y 1323}#)
+ (begin
+ (let ((#{t 1328}# (eq? #{x 1322}# #{y 1323}#)))
+ (if #{t 1328}#
+ #{t 1328}#
+ (if (not (null? #{x 1322}#))
+ (if (not (null? #{y 1323}#))
+ (if (eq? (car #{x 1322}#) (car #{y 1323}#))
+ (#{same-marks? 391}#
+ (cdr #{x 1322}#)
+ (cdr #{y 1323}#))
+ #f)
+ #f)
+ #f))))))
+ (#{id-var-name 393}#
+ (lambda (#{id 1334}# #{w 1335}#)
+ (letrec*
+ ((#{search 1340}#
+ (lambda (#{sym 1356}# #{subst 1357}# #{marks 1358}#)
+ (if (null? #{subst 1357}#)
+ (values #f #{marks 1358}#)
+ (begin
+ (let ((#{fst 1363}# (car #{subst 1357}#)))
+ (if (eq? #{fst 1363}# 'shift)
+ (#{search 1340}#
+ #{sym 1356}#
+ (cdr #{subst 1357}#)
+ (cdr #{marks 1358}#))
+ (begin
+ (let ((#{symnames 1365}#
+ (#{ribcage-symnames 361}# #{fst 1363}#)))
+ (if (vector? #{symnames 1365}#)
+ (#{search-vector-rib 1344}#
+ #{sym 1356}#
+ #{subst 1357}#
+ #{marks 1358}#
+ #{symnames 1365}#
+ #{fst 1363}#)
+ (#{search-list-rib 1342}#
+ #{sym 1356}#
+ #{subst 1357}#
+ #{marks 1358}#
+ #{symnames 1365}#
+ #{fst 1363}#))))))))))
+ (#{search-list-rib 1342}#
+ (lambda (#{sym 1366}#
+ #{subst 1367}#
+ #{marks 1368}#
+ #{symnames 1369}#
+ #{ribcage 1370}#)
+ (letrec*
+ ((#{f 1379}#
+ (lambda (#{symnames 1380}# #{i 1381}#)
+ (if (null? #{symnames 1380}#)
+ (#{search 1340}#
+ #{sym 1366}#
+ (cdr #{subst 1367}#)
+ #{marks 1368}#)
+ (if (if (eq? (car #{symnames 1380}#) #{sym 1366}#)
+ (#{same-marks? 391}#
+ #{marks 1368}#
+ (list-ref
+ (#{ribcage-marks 363}# #{ribcage 1370}#)
+ #{i 1381}#))
+ #f)
+ (values
+ (list-ref
+ (#{ribcage-labels 365}# #{ribcage 1370}#)
+ #{i 1381}#)
+ #{marks 1368}#)
+ (#{f 1379}#
+ (cdr #{symnames 1380}#)
+ (#{1+}# #{i 1381}#)))))))
+ (begin (#{f 1379}# #{symnames 1369}# 0)))))
+ (#{search-vector-rib 1344}#
+ (lambda (#{sym 1390}#
+ #{subst 1391}#
+ #{marks 1392}#
+ #{symnames 1393}#
+ #{ribcage 1394}#)
+ (begin
+ (let ((#{n 1401}# (vector-length #{symnames 1393}#)))
(letrec*
- ((#{f 1416}#
- (lambda (#{symnames 1417}# #{i 1418}#)
- (if (null? #{symnames 1417}#)
- (#{search 1377}#
- #{sym 1403}#
- (cdr #{subst 1404}#)
- #{marks 1405}#)
- (if (if (eq? (car #{symnames 1417}#) #{sym 1403}#)
- (#{same-marks? 428}#
- #{marks 1405}#
- (list-ref
- (#{ribcage-marks 400}# #{ribcage 1407}#)
- #{i 1418}#))
+ ((#{f 1404}#
+ (lambda (#{i 1405}#)
+ (if (= #{i 1405}# #{n 1401}#)
+ (#{search 1340}#
+ #{sym 1390}#
+ (cdr #{subst 1391}#)
+ #{marks 1392}#)
+ (if (if (eq? (vector-ref
+ #{symnames 1393}#
+ #{i 1405}#)
+ #{sym 1390}#)
+ (#{same-marks? 391}#
+ #{marks 1392}#
+ (vector-ref
+ (#{ribcage-marks 363}# #{ribcage 1394}#)
+ #{i 1405}#))
#f)
(values
- (list-ref
- (#{ribcage-labels 402}# #{ribcage 1407}#)
- #{i 1418}#)
- #{marks 1405}#)
- (#{f 1416}#
- (cdr #{symnames 1417}#)
- (#{1+}# #{i 1418}#)))))))
- (begin (#{f 1416}# #{symnames 1406}# 0)))))
- (#{search-vector-rib 1381}#
- (lambda (#{sym 1427}#
- #{subst 1428}#
- #{marks 1429}#
- #{symnames 1430}#
- #{ribcage 1431}#)
- (begin
- (let ((#{n 1438}# (vector-length #{symnames 1430}#)))
- (letrec*
- ((#{f 1441}#
- (lambda (#{i 1442}#)
- (if (= #{i 1442}# #{n 1438}#)
- (#{search 1377}#
- #{sym 1427}#
- (cdr #{subst 1428}#)
- #{marks 1429}#)
- (if (if (eq? (vector-ref
- #{symnames 1430}#
- #{i 1442}#)
- #{sym 1427}#)
- (#{same-marks? 428}#
- #{marks 1429}#
- (vector-ref
- (#{ribcage-marks 400}#
- #{ribcage 1431}#)
- #{i 1442}#))
- #f)
- (values
- (vector-ref
- (#{ribcage-labels 402}# #{ribcage 1431}#)
- #{i 1442}#)
- #{marks 1429}#)
- (#{f 1441}# (#{1+}# #{i 1442}#)))))))
- (begin (#{f 1441}# 0))))))))
+ (vector-ref
+ (#{ribcage-labels 365}# #{ribcage 1394}#)
+ #{i 1405}#)
+ #{marks 1392}#)
+ (#{f 1404}# (#{1+}# #{i 1405}#)))))))
+ (begin (#{f 1404}# 0))))))))
+ (begin
+ (if (symbol? #{id 1334}#)
(begin
- (if (symbol? #{id 1371}#)
- (begin
- (let ((#{t 1454}#
- (call-with-values
- (lambda ()
- (#{search 1377}#
- #{id 1371}#
- (cdr #{w 1372}#)
- (car #{w 1372}#)))
- (lambda (#{x 1458}# . #{ignore 1459}#)
- #{x 1458}#))))
- (if #{t 1454}# #{t 1454}# #{id 1371}#)))
- (if (#{syntax-object? 342}# #{id 1371}#)
+ (let ((#{t 1417}#
+ (#{search 1340}#
+ #{id 1334}#
+ (cdr #{w 1335}#)
+ (car #{w 1335}#))))
+ (if #{t 1417}# #{t 1417}# #{id 1334}#)))
+ (if (#{syntax-object? 305}# #{id 1334}#)
+ (begin
+ (let ((#{id 1426}#
+ (#{syntax-object-expression 307}# #{id 1334}#))
+ (#{w1 1427}#
+ (#{syntax-object-wrap 309}# #{id 1334}#)))
(begin
- (let ((#{id 1467}#
- (#{syntax-object-expression 344}# #{id 1371}#))
- (#{w1 1468}#
- (#{syntax-object-wrap 346}# #{id 1371}#)))
- (begin
- (let ((#{marks 1470}#
- (#{join-marks 426}#
- (car #{w 1372}#)
- (car #{w1 1468}#))))
- (call-with-values
- (lambda ()
- (#{search 1377}#
- #{id 1467}#
- (cdr #{w 1372}#)
- #{marks 1470}#))
- (lambda (#{new-id 1474}# #{marks 1475}#)
- (begin
- (let ((#{t 1480}# #{new-id 1474}#))
- (if #{t 1480}#
- #{t 1480}#
- (begin
- (let ((#{t 1483}#
- (call-with-values
- (lambda ()
- (#{search 1377}#
- #{id 1467}#
- (cdr #{w1 1468}#)
- #{marks 1475}#))
- (lambda (#{x 1486}#
- .
- #{ignore 1487}#)
- #{x 1486}#))))
- (if #{t 1483}#
- #{t 1483}#
- #{id 1467}#))))))))))))
- (syntax-violation
- 'id-var-name
- "invalid id"
- #{id 1371}#)))))))
- (#{free-id=? 432}#
- (lambda (#{i 1492}# #{j 1493}#)
- (if (eq? (begin
- (let ((#{x 1499}# #{i 1492}#))
- (if (#{syntax-object? 342}# #{x 1499}#)
- (#{syntax-object-expression 344}# #{x 1499}#)
- #{x 1499}#)))
- (begin
- (let ((#{x 1502}# #{j 1493}#))
- (if (#{syntax-object? 342}# #{x 1502}#)
- (#{syntax-object-expression 344}# #{x 1502}#)
- #{x 1502}#))))
- (eq? (#{id-var-name 430}# #{i 1492}# '(()))
- (#{id-var-name 430}# #{j 1493}# '(())))
- #f)))
- (#{bound-id=? 434}#
- (lambda (#{i 1506}# #{j 1507}#)
- (if (if (#{syntax-object? 342}# #{i 1506}#)
- (#{syntax-object? 342}# #{j 1507}#)
- #f)
- (if (eq? (#{syntax-object-expression 344}# #{i 1506}#)
- (#{syntax-object-expression 344}# #{j 1507}#))
- (#{same-marks? 428}#
- (car (#{syntax-object-wrap 346}# #{i 1506}#))
- (car (#{syntax-object-wrap 346}# #{j 1507}#)))
- #f)
- (eq? #{i 1506}# #{j 1507}#))))
- (#{valid-bound-ids? 436}#
- (lambda (#{ids 1516}#)
- (if (letrec*
- ((#{all-ids? 1521}#
- (lambda (#{ids 1522}#)
- (begin
- (let ((#{t 1525}# (null? #{ids 1522}#)))
- (if #{t 1525}#
- #{t 1525}#
- (if (#{id? 376}# (car #{ids 1522}#))
- (#{all-ids? 1521}# (cdr #{ids 1522}#))
- #f)))))))
- (begin (#{all-ids? 1521}# #{ids 1516}#)))
- (#{distinct-bound-ids? 438}# #{ids 1516}#)
- #f)))
- (#{distinct-bound-ids? 438}#
- (lambda (#{ids 1530}#)
- (letrec*
- ((#{distinct? 1534}#
- (lambda (#{ids 1535}#)
+ (let ((#{marks 1429}#
+ (#{join-marks 389}#
+ (car #{w 1335}#)
+ (car #{w1 1427}#))))
+ (call-with-values
+ (lambda ()
+ (#{search 1340}#
+ #{id 1426}#
+ (cdr #{w 1335}#)
+ #{marks 1429}#))
+ (lambda (#{new-id 1433}# #{marks 1434}#)
+ (begin
+ (let ((#{t 1439}# #{new-id 1433}#))
+ (if #{t 1439}#
+ #{t 1439}#
+ (begin
+ (let ((#{t 1442}#
+ (#{search 1340}#
+ #{id 1426}#
+ (cdr #{w1 1427}#)
+ #{marks 1434}#)))
+ (if #{t 1442}#
+ #{t 1442}#
+ #{id 1426}#))))))))))))
+ (syntax-violation
+ 'id-var-name
+ "invalid id"
+ #{id 1334}#)))))))
+ (#{free-id=? 395}#
+ (lambda (#{i 1447}# #{j 1448}#)
+ (if (eq? (begin
+ (let ((#{x 1454}# #{i 1447}#))
+ (if (#{syntax-object? 305}# #{x 1454}#)
+ (#{syntax-object-expression 307}# #{x 1454}#)
+ #{x 1454}#)))
+ (begin
+ (let ((#{x 1457}# #{j 1448}#))
+ (if (#{syntax-object? 305}# #{x 1457}#)
+ (#{syntax-object-expression 307}# #{x 1457}#)
+ #{x 1457}#))))
+ (eq? (#{id-var-name 393}# #{i 1447}# '(()))
+ (#{id-var-name 393}# #{j 1448}# '(())))
+ #f)))
+ (#{bound-id=? 397}#
+ (lambda (#{i 1461}# #{j 1462}#)
+ (if (if (#{syntax-object? 305}# #{i 1461}#)
+ (#{syntax-object? 305}# #{j 1462}#)
+ #f)
+ (if (eq? (#{syntax-object-expression 307}# #{i 1461}#)
+ (#{syntax-object-expression 307}# #{j 1462}#))
+ (#{same-marks? 391}#
+ (car (#{syntax-object-wrap 309}# #{i 1461}#))
+ (car (#{syntax-object-wrap 309}# #{j 1462}#)))
+ #f)
+ (eq? #{i 1461}# #{j 1462}#))))
+ (#{valid-bound-ids? 399}#
+ (lambda (#{ids 1471}#)
+ (if (letrec*
+ ((#{all-ids? 1476}#
+ (lambda (#{ids 1477}#)
(begin
- (let ((#{t 1538}# (null? #{ids 1535}#)))
- (if #{t 1538}#
- #{t 1538}#
- (if (not (#{bound-id-member? 440}#
- (car #{ids 1535}#)
- (cdr #{ids 1535}#)))
- (#{distinct? 1534}# (cdr #{ids 1535}#))
+ (let ((#{t 1480}# (null? #{ids 1477}#)))
+ (if #{t 1480}#
+ #{t 1480}#
+ (if (#{id? 339}# (car #{ids 1477}#))
+ (#{all-ids? 1476}# (cdr #{ids 1477}#))
#f)))))))
- (begin (#{distinct? 1534}# #{ids 1530}#)))))
- (#{bound-id-member? 440}#
- (lambda (#{x 1542}# #{list 1543}#)
- (if (not (null? #{list 1543}#))
- (begin
- (let ((#{t 1550}#
- (#{bound-id=? 434}#
- #{x 1542}#
- (car #{list 1543}#))))
- (if #{t 1550}#
- #{t 1550}#
- (#{bound-id-member? 440}#
- #{x 1542}#
- (cdr #{list 1543}#)))))
- #f)))
- (#{wrap 442}#
- (lambda (#{x 1552}# #{w 1553}# #{defmod 1554}#)
- (if (if (null? (car #{w 1553}#))
- (null? (cdr #{w 1553}#))
- #f)
- #{x 1552}#
- (if (#{syntax-object? 342}# #{x 1552}#)
- (#{make-syntax-object 340}#
- (#{syntax-object-expression 344}# #{x 1552}#)
- (#{join-wraps 424}#
- #{w 1553}#
- (#{syntax-object-wrap 346}# #{x 1552}#))
- (#{syntax-object-module 348}# #{x 1552}#))
- (if (null? #{x 1552}#)
- #{x 1552}#
- (#{make-syntax-object 340}#
- #{x 1552}#
- #{w 1553}#
- #{defmod 1554}#))))))
- (#{source-wrap 444}#
- (lambda (#{x 1569}#
- #{w 1570}#
- #{s 1571}#
- #{defmod 1572}#)
- (#{wrap 442}#
- (#{decorate-source 296}# #{x 1569}# #{s 1571}#)
- #{w 1570}#
- #{defmod 1572}#)))
- (#{chi-sequence 446}#
- (lambda (#{body 1577}#
- #{r 1578}#
- #{w 1579}#
- #{s 1580}#
- #{mod 1581}#)
- (#{build-sequence 330}#
- #{s 1580}#
- (letrec*
- ((#{dobody 1592}#
- (lambda (#{body 1593}#
- #{r 1594}#
- #{w 1595}#
- #{mod 1596}#)
- (if (null? #{body 1593}#)
- '()
- (begin
- (let ((#{first 1598}#
- (#{chi 456}#
- (car #{body 1593}#)
- #{r 1594}#
- #{w 1595}#
- #{mod 1596}#)))
- (cons #{first 1598}#
- (#{dobody 1592}#
- (cdr #{body 1593}#)
- #{r 1594}#
- #{w 1595}#
- #{mod 1596}#))))))))
- (begin
- (#{dobody 1592}#
- #{body 1577}#
- #{r 1578}#
- #{w 1579}#
- #{mod 1581}#))))))
- (#{chi-top-sequence 448}#
- (lambda (#{body 1599}#
- #{r 1600}#
- #{w 1601}#
- #{s 1602}#
- #{m 1603}#
- #{esew 1604}#
- #{mod 1605}#)
- (letrec*
- ((#{scan 1614}#
- (lambda (#{body 1615}#
- #{r 1616}#
- #{w 1617}#
- #{s 1618}#
- #{m 1619}#
- #{esew 1620}#
- #{mod 1621}#
- #{exps 1622}#)
- (if (null? #{body 1615}#)
- #{exps 1622}#
+ (begin (#{all-ids? 1476}# #{ids 1471}#)))
+ (#{distinct-bound-ids? 401}# #{ids 1471}#)
+ #f)))
+ (#{distinct-bound-ids? 401}#
+ (lambda (#{ids 1485}#)
+ (letrec*
+ ((#{distinct? 1489}#
+ (lambda (#{ids 1490}#)
+ (begin
+ (let ((#{t 1493}# (null? #{ids 1490}#)))
+ (if #{t 1493}#
+ #{t 1493}#
+ (if (not (#{bound-id-member? 403}#
+ (car #{ids 1490}#)
+ (cdr #{ids 1490}#)))
+ (#{distinct? 1489}# (cdr #{ids 1490}#))
+ #f)))))))
+ (begin (#{distinct? 1489}# #{ids 1485}#)))))
+ (#{bound-id-member? 403}#
+ (lambda (#{x 1497}# #{list 1498}#)
+ (if (not (null? #{list 1498}#))
+ (begin
+ (let ((#{t 1505}#
+ (#{bound-id=? 397}#
+ #{x 1497}#
+ (car #{list 1498}#))))
+ (if #{t 1505}#
+ #{t 1505}#
+ (#{bound-id-member? 403}#
+ #{x 1497}#
+ (cdr #{list 1498}#)))))
+ #f)))
+ (#{wrap 405}#
+ (lambda (#{x 1507}# #{w 1508}# #{defmod 1509}#)
+ (if (if (null? (car #{w 1508}#))
+ (null? (cdr #{w 1508}#))
+ #f)
+ #{x 1507}#
+ (if (#{syntax-object? 305}# #{x 1507}#)
+ (#{make-syntax-object 303}#
+ (#{syntax-object-expression 307}# #{x 1507}#)
+ (#{join-wraps 387}#
+ #{w 1508}#
+ (#{syntax-object-wrap 309}# #{x 1507}#))
+ (#{syntax-object-module 311}# #{x 1507}#))
+ (if (null? #{x 1507}#)
+ #{x 1507}#
+ (#{make-syntax-object 303}#
+ #{x 1507}#
+ #{w 1508}#
+ #{defmod 1509}#))))))
+ (#{source-wrap 407}#
+ (lambda (#{x 1524}#
+ #{w 1525}#
+ #{s 1526}#
+ #{defmod 1527}#)
+ (#{wrap 405}#
+ (#{decorate-source 259}# #{x 1524}# #{s 1526}#)
+ #{w 1525}#
+ #{defmod 1527}#)))
+ (#{chi-sequence 409}#
+ (lambda (#{body 1532}#
+ #{r 1533}#
+ #{w 1534}#
+ #{s 1535}#
+ #{mod 1536}#)
+ (#{build-sequence 293}#
+ #{s 1535}#
+ (letrec*
+ ((#{dobody 1547}#
+ (lambda (#{body 1548}#
+ #{r 1549}#
+ #{w 1550}#
+ #{mod 1551}#)
+ (if (null? #{body 1548}#)
+ '()
+ (begin
+ (let ((#{first 1553}#
+ (#{chi 419}#
+ (car #{body 1548}#)
+ #{r 1549}#
+ #{w 1550}#
+ #{mod 1551}#)))
+ (cons #{first 1553}#
+ (#{dobody 1547}#
+ (cdr #{body 1548}#)
+ #{r 1549}#
+ #{w 1550}#
+ #{mod 1551}#))))))))
+ (begin
+ (#{dobody 1547}#
+ #{body 1532}#
+ #{r 1533}#
+ #{w 1534}#
+ #{mod 1536}#))))))
+ (#{chi-top-sequence 411}#
+ (lambda (#{body 1554}#
+ #{r 1555}#
+ #{w 1556}#
+ #{s 1557}#
+ #{m 1558}#
+ #{esew 1559}#
+ #{mod 1560}#)
+ (letrec*
+ ((#{scan 1569}#
+ (lambda (#{body 1570}#
+ #{r 1571}#
+ #{w 1572}#
+ #{s 1573}#
+ #{m 1574}#
+ #{esew 1575}#
+ #{mod 1576}#
+ #{exps 1577}#)
+ (if (null? #{body 1570}#)
+ #{exps 1577}#
+ (call-with-values
+ (lambda ()
(call-with-values
(lambda ()
- (call-with-values
- (lambda ()
- (begin
- (let ((#{e 1635}# (car #{body 1615}#)))
- (#{syntax-type 454}#
- #{e 1635}#
- #{r 1616}#
- #{w 1617}#
- (begin
- (let ((#{t 1638}#
- (#{source-annotation 357}#
- #{e 1635}#)))
- (if #{t 1638}# #{t 1638}# #{s 1618}#)))
- #f
+ (begin
+ (let ((#{e 1590}# (car #{body 1570}#)))
+ (#{syntax-type 417}#
+ #{e 1590}#
+ #{r 1571}#
+ #{w 1572}#
+ (begin
+ (let ((#{t 1593}#
+ (#{source-annotation 320}#
+ #{e 1590}#)))
+ (if #{t 1593}# #{t 1593}# #{s 1573}#)))
+ #f
+ #{mod 1576}#
+ #f))))
+ (lambda (#{type 1595}#
+ #{value 1596}#
+ #{e 1597}#
+ #{w 1598}#
+ #{s 1599}#
+ #{mod 1600}#)
+ (if (eqv? #{type 1595}# 'begin-form)
+ (let ((#{tmp 1608}# #{e 1597}#))
+ (let ((#{tmp 1609}#
+ ($sc-dispatch #{tmp 1608}# '(_))))
+ (if #{tmp 1609}#
+ (@apply (lambda () #{exps 1577}#) #{tmp 1609}#)
+ (let ((#{tmp 1610}#
+ ($sc-dispatch
+ #{tmp 1608}#
+ '(_ any . each-any))))
+ (if #{tmp 1610}#
+ (@apply
+ (lambda (#{e1 1613}# #{e2 1614}#)
+ (#{scan 1569}#
+ (cons #{e1 1613}# #{e2 1614}#)
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ #{m 1574}#
+ #{esew 1575}#
+ #{mod 1600}#
+ #{exps 1577}#))
+ #{tmp 1610}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp 1608}#))))))
+ (if (eqv? #{type 1595}# 'local-syntax-form)
+ (#{chi-local-syntax 429}#
+ #{value 1596}#
+ #{e 1597}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ #{mod 1600}#
+ (lambda (#{body 1617}#
+ #{r 1618}#
+ #{w 1619}#
+ #{s 1620}#
+ #{mod 1621}#)
+ (#{scan 1569}#
+ #{body 1617}#
+ #{r 1618}#
+ #{w 1619}#
+ #{s 1620}#
+ #{m 1574}#
+ #{esew 1575}#
#{mod 1621}#
- #f))))
- (lambda (#{type 1640}#
- #{value 1641}#
- #{e 1642}#
- #{w 1643}#
- #{s 1644}#
- #{mod 1645}#)
- (if (eqv? #{type 1640}# 'begin-form)
- (let ((#{tmp 1653}# #{e 1642}#))
- (let ((#{tmp 1654}#
- ($sc-dispatch #{tmp 1653}# '(_))))
- (if #{tmp 1654}#
+ #{exps 1577}#)))
+ (if (eqv? #{type 1595}# 'eval-when-form)
+ (let ((#{tmp 1628}# #{e 1597}#))
+ (let ((#{tmp 1629}#
+ ($sc-dispatch
+ #{tmp 1628}#
+ '(_ each-any any . each-any))))
+ (if #{tmp 1629}#
(@apply
- (lambda () #{exps 1622}#)
- #{tmp 1654}#)
- (let ((#{tmp 1655}#
- ($sc-dispatch
- #{tmp 1653}#
- '(_ any . each-any))))
- (if #{tmp 1655}#
- (@apply
- (lambda (#{e1 1658}# #{e2 1659}#)
- (#{scan 1614}#
- (cons #{e1 1658}# #{e2 1659}#)
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- #{m 1619}#
- #{esew 1620}#
- #{mod 1645}#
- #{exps 1622}#))
- #{tmp 1655}#)
- (syntax-violation
- #f
- "source expression failed to match
any pattern"
- #{tmp 1653}#))))))
- (if (eqv? #{type 1640}# 'local-syntax-form)
- (#{chi-local-syntax 466}#
- #{value 1641}#
- #{e 1642}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- #{mod 1645}#
- (lambda (#{body 1662}#
- #{r 1663}#
- #{w 1664}#
- #{s 1665}#
- #{mod 1666}#)
- (#{scan 1614}#
- #{body 1662}#
- #{r 1663}#
- #{w 1664}#
- #{s 1665}#
- #{m 1619}#
- #{esew 1620}#
- #{mod 1666}#
- #{exps 1622}#)))
- (if (eqv? #{type 1640}# 'eval-when-form)
- (let ((#{tmp 1673}# #{e 1642}#))
- (let ((#{tmp 1674}#
- ($sc-dispatch
- #{tmp 1673}#
- '(_ each-any any . each-any))))
- (if #{tmp 1674}#
- (@apply
- (lambda (#{x 1678}#
- #{e1 1679}#
- #{e2 1680}#)
- (begin
- (let ((#{when-list 1683}#
- (#{chi-when-list 452}#
- #{e 1642}#
- #{x 1678}#
- #{w 1643}#))
- (#{body 1684}#
- (cons #{e1 1679}#
- #{e2 1680}#)))
- (if (eq? #{m 1619}# 'e)
- (if (memq 'eval
- #{when-list 1683}#)
- (#{scan 1614}#
- #{body 1684}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- (if (memq 'expand
- #{when-list
1683}#)
- 'c&e
- 'e)
- '(eval)
- #{mod 1645}#
- #{exps 1622}#)
- (begin
- (if (memq 'expand
- #{when-list
1683}#)
- (#{top-level-eval-hook
287}#
- (#{chi-top-sequence
448}#
- #{body 1684}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- 'e
- '(eval)
- #{mod 1645}#)
- #{mod 1645}#))
- #{exps 1622}#))
- (if (memq 'load
- #{when-list 1683}#)
- (if (begin
- (let ((#{t 1693}#
- (memq
'compile
-
#{when-list 1683}#)))
- (if #{t 1693}#
- #{t 1693}#
- (begin
- (let ((#{t
1696}#
- (memq
'expand
-
#{when-list 1683}#)))
- (if #{t
1696}#
- #{t 1696}#
- (if (eq?
#{m 1619}#
-
'c&e)
- (memq
'eval
-
#{when-list 1683}#)
- #f)))))))
- (#{scan 1614}#
- #{body 1684}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- 'c&e
- '(compile load)
- #{mod 1645}#
- #{exps 1622}#)
- (if (if (eq? #{m 1619}#
- 'c)
- #t
- (eq? #{m 1619}#
- 'c&e))
- (#{scan 1614}#
- #{body 1684}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- 'c
- '(load)
- #{mod 1645}#
- #{exps 1622}#)
- #{exps 1622}#))
- (if (begin
- (let ((#{t 1704}#
- (memq
'compile
-
#{when-list 1683}#)))
- (if #{t 1704}#
- #{t 1704}#
- (begin
- (let ((#{t
1707}#
- (memq
'expand
-
#{when-list 1683}#)))
- (if #{t
1707}#
- #{t 1707}#
- (if (eq?
#{m 1619}#
-
'c&e)
- (memq
'eval
-
#{when-list 1683}#)
- #f)))))))
- (begin
- (#{top-level-eval-hook
287}#
- (#{chi-top-sequence
448}#
- #{body 1684}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- 'e
- '(eval)
- #{mod 1645}#)
- #{mod 1645}#)
- #{exps 1622}#)
- #{exps 1622}#))))))
- #{tmp 1674}#)
- (syntax-violation
- #f
- "source expression failed to match
any pattern"
- #{tmp 1673}#))))
- (if (eqv? #{type 1640}# 'define-syntax-form)
- (begin
- (let ((#{n 1715}#
- (#{id-var-name 430}#
- #{value 1641}#
- #{w 1643}#))
- (#{r 1716}#
- (#{macros-only-env 368}#
- #{r 1616}#)))
- (if (eqv? #{m 1619}# 'c)
- (if (memq 'compile #{esew 1620}#)
- (begin
- (let ((#{e 1719}#
- (#{chi-install-global
450}#
- #{n 1715}#
- (#{chi 456}#
- #{e 1642}#
- #{r 1716}#
- #{w 1643}#
- #{mod 1645}#))))
+ (lambda (#{x 1633}#
+ #{e1 1634}#
+ #{e2 1635}#)
+ (begin
+ (let ((#{when-list 1638}#
+ (#{chi-when-list 415}#
+ #{e 1597}#
+ #{x 1633}#
+ #{w 1598}#))
+ (#{body 1639}#
+ (cons #{e1 1634}#
+ #{e2 1635}#)))
+ (if (eq? #{m 1574}# 'e)
+ (if (memq 'eval
+ #{when-list 1638}#)
+ (#{scan 1569}#
+ #{body 1639}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ (if (memq 'expand
+ #{when-list 1638}#)
+ 'c&e
+ 'e)
+ '(eval)
+ #{mod 1600}#
+ #{exps 1577}#)
(begin
- (#{top-level-eval-hook 287}#
- #{e 1719}#
- #{mod 1645}#)
- (if (memq 'load
- #{esew 1620}#)
- (cons #{e 1719}#
- #{exps 1622}#)
- #{exps 1622}#))))
- (if (memq 'load #{esew 1620}#)
- (cons (#{chi-install-global 450}#
- #{n 1715}#
- (#{chi 456}#
- #{e 1642}#
- #{r 1716}#
- #{w 1643}#
- #{mod 1645}#))
- #{exps 1622}#)
- #{exps 1622}#))
- (if (eqv? #{m 1619}# 'c&e)
+ (if (memq 'expand
+ #{when-list 1638}#)
+ (#{top-level-eval-hook
250}#
+ (#{chi-top-sequence 411}#
+ #{body 1639}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ 'e
+ '(eval)
+ #{mod 1600}#)
+ #{mod 1600}#))
+ #{exps 1577}#))
+ (if (memq 'load
+ #{when-list 1638}#)
+ (if (begin
+ (let ((#{t 1648}#
+ (memq 'compile
+
#{when-list 1638}#)))
+ (if #{t 1648}#
+ #{t 1648}#
+ (begin
+ (let ((#{t 1651}#
+ (memq
'expand
+
#{when-list 1638}#)))
+ (if #{t 1651}#
+ #{t 1651}#
+ (if (eq? #{m
1574}#
+ 'c&e)
+ (memq 'eval
+
#{when-list 1638}#)
+ #f)))))))
+ (#{scan 1569}#
+ #{body 1639}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ 'c&e
+ '(compile load)
+ #{mod 1600}#
+ #{exps 1577}#)
+ (if (if (eq? #{m 1574}# 'c)
+ #t
+ (eq? #{m 1574}# 'c&e))
+ (#{scan 1569}#
+ #{body 1639}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ 'c
+ '(load)
+ #{mod 1600}#
+ #{exps 1577}#)
+ #{exps 1577}#))
+ (if (begin
+ (let ((#{t 1659}#
+ (memq 'compile
+
#{when-list 1638}#)))
+ (if #{t 1659}#
+ #{t 1659}#
+ (begin
+ (let ((#{t 1662}#
+ (memq
'expand
+
#{when-list 1638}#)))
+ (if #{t 1662}#
+ #{t 1662}#
+ (if (eq? #{m
1574}#
+ 'c&e)
+ (memq 'eval
+
#{when-list 1638}#)
+ #f)))))))
+ (begin
+ (#{top-level-eval-hook
250}#
+ (#{chi-top-sequence 411}#
+ #{body 1639}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ 'e
+ '(eval)
+ #{mod 1600}#)
+ #{mod 1600}#)
+ #{exps 1577}#)
+ #{exps 1577}#))))))
+ #{tmp 1629}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp 1628}#))))
+ (if (eqv? #{type 1595}# 'define-syntax-form)
+ (begin
+ (let ((#{n 1670}#
+ (#{id-var-name 393}#
+ #{value 1596}#
+ #{w 1598}#))
+ (#{r 1671}#
+ (#{macros-only-env 331}#
+ #{r 1571}#)))
+ (if (eqv? #{m 1574}# 'c)
+ (if (memq 'compile #{esew 1575}#)
+ (begin
+ (let ((#{e 1674}#
+ (#{chi-install-global 413}#
+ #{n 1670}#
+ (#{chi 419}#
+ #{e 1597}#
+ #{r 1671}#
+ #{w 1598}#
+ #{mod 1600}#))))
(begin
- (let ((#{e 1722}#
- (#{chi-install-global
450}#
- #{n 1715}#
- (#{chi 456}#
- #{e 1642}#
- #{r 1716}#
- #{w 1643}#
- #{mod 1645}#))))
- (begin
- (#{top-level-eval-hook 287}#
- #{e 1722}#
- #{mod 1645}#)
- (cons #{e 1722}#
- #{exps 1622}#))))
+ (#{top-level-eval-hook 250}#
+ #{e 1674}#
+ #{mod 1600}#)
+ (if (memq 'load #{esew 1575}#)
+ (cons #{e 1674}# #{exps 1577}#)
+ #{exps 1577}#))))
+ (if (memq 'load #{esew 1575}#)
+ (cons (#{chi-install-global 413}#
+ #{n 1670}#
+ (#{chi 419}#
+ #{e 1597}#
+ #{r 1671}#
+ #{w 1598}#
+ #{mod 1600}#))
+ #{exps 1577}#)
+ #{exps 1577}#))
+ (if (eqv? #{m 1574}# 'c&e)
+ (begin
+ (let ((#{e 1677}#
+ (#{chi-install-global 413}#
+ #{n 1670}#
+ (#{chi 419}#
+ #{e 1597}#
+ #{r 1671}#
+ #{w 1598}#
+ #{mod 1600}#))))
(begin
- (if (memq 'eval #{esew 1620}#)
- (#{top-level-eval-hook 287}#
- (#{chi-install-global 450}#
- #{n 1715}#
- (#{chi 456}#
- #{e 1642}#
- #{r 1716}#
- #{w 1643}#
- #{mod 1645}#))
- #{mod 1645}#))
- #{exps 1622}#)))))
- (if (eqv? #{type 1640}# 'define-form)
+ (#{top-level-eval-hook 250}#
+ #{e 1677}#
+ #{mod 1600}#)
+ (cons #{e 1677}#
+ #{exps 1577}#))))
+ (begin
+ (if (memq 'eval #{esew 1575}#)
+ (#{top-level-eval-hook 250}#
+ (#{chi-install-global 413}#
+ #{n 1670}#
+ (#{chi 419}#
+ #{e 1597}#
+ #{r 1671}#
+ #{w 1598}#
+ #{mod 1600}#))
+ #{mod 1600}#))
+ #{exps 1577}#)))))
+ (if (eqv? #{type 1595}# 'define-form)
+ (begin
+ (let ((#{n 1682}#
+ (#{id-var-name 393}#
+ #{value 1596}#
+ #{w 1598}#)))
(begin
- (let ((#{n 1727}#
- (#{id-var-name 430}#
- #{value 1641}#
- #{w 1643}#)))
- (begin
- (let ((#{type 1729}#
- (car (#{lookup 370}#
- #{n 1727}#
- #{r 1616}#
- #{mod 1645}#))))
- (if (if (eqv? #{type 1729}#
- 'global)
+ (let ((#{type 1684}#
+ (car (#{lookup 333}#
+ #{n 1682}#
+ #{r 1571}#
+ #{mod 1600}#))))
+ (if (if (eqv? #{type 1684}# 'global)
+ #t
+ (if (eqv? #{type 1684}# 'core)
+ #t
+ (if (eqv? #{type 1684}#
+ 'macro)
#t
- (if (eqv? #{type 1729}#
- 'core)
- #t
- (if (eqv? #{type 1729}#
- 'macro)
+ (eqv? #{type 1684}#
+ 'module-ref))))
+ (begin
+ (if (if (if (eq? #{m 1574}# 'c)
#t
- (eqv? #{type 1729}#
- 'module-ref))))
+ (eq? #{m 1574}# 'c&e))
+ (if (not
(module-local-variable
+ (current-module)
+ #{n 1682}#))
+ (current-module)
+ #f)
+ #f)
(begin
- (if (if (if (eq? #{m 1619}#
- 'c)
- #t
- (eq? #{m 1619}#
- 'c&e))
- (if (not
(module-local-variable
-
(current-module)
- #{n 1727}#))
- (current-module)
- #f)
- #f)
- (begin
- (let ((#{old 1736}#
- (module-variable
-
(current-module)
- #{n 1727}#)))
- (if (if (variable?
- #{old 1736}#)
- (variable-bound?
- #{old 1736}#)
- #f)
- (module-define!
+ (let ((#{old 1691}#
+ (module-variable
(current-module)
- #{n 1727}#
- (variable-ref
- #{old 1736}#))
- (module-add!
- (current-module)
- #{n 1727}#
-
(make-undefined-variable))))))
- (cons (if (eq? #{m 1619}#
- 'c&e)
+ #{n 1682}#)))
+ (if (if (variable?
+ #{old 1691}#)
+ (variable-bound?
+ #{old 1691}#)
+ #f)
+ (module-define!
+ (current-module)
+ #{n 1682}#
+ (variable-ref
+ #{old 1691}#))
+ (module-add!
+ (current-module)
+ #{n 1682}#
+
(make-undefined-variable))))))
+ (cons (if (eq? #{m 1574}# 'c&e)
+ (begin
+ (let ((#{x 1695}#
+
(#{build-global-definition 281}#
+ #{s 1599}#
+ #{n 1682}#
+ (#{chi 419}#
+ #{e 1597}#
+ #{r 1571}#
+ #{w 1598}#
+ #{mod
1600}#))))
(begin
- (let ((#{x 1740}#
-
(#{build-global-definition 318}#
- #{s
1644}#
- #{n
1727}#
- (#{chi
456}#
- #{e
1642}#
- #{r
1616}#
- #{w
1643}#
- #{mod
1645}#))))
- (begin
-
(#{top-level-eval-hook 287}#
- #{x 1740}#
- #{mod 1645}#)
- #{x 1740}#)))
- (lambda ()
-
(#{build-global-definition 318}#
- #{s 1644}#
- #{n 1727}#
- (#{chi 456}#
- #{e 1642}#
- #{r 1616}#
- #{w 1643}#
- #{mod
1645}#))))
- #{exps 1622}#))
- (if (eqv? #{type 1729}#
- 'displaced-lexical)
- (syntax-violation
- #f
- "identifier out of context"
- #{e 1642}#
- (#{wrap 442}#
- #{value 1641}#
- #{w 1643}#
- #{mod 1645}#))
- (syntax-violation
- #f
- "cannot define keyword at
top level"
- #{e 1642}#
- (#{wrap 442}#
- #{value 1641}#
- #{w 1643}#
- #{mod 1645}#))))))))
- (cons (if (eq? #{m 1619}# 'c&e)
+
(#{top-level-eval-hook 250}#
+ #{x 1695}#
+ #{mod 1600}#)
+ #{x 1695}#)))
+ (lambda ()
+
(#{build-global-definition 281}#
+ #{s 1599}#
+ #{n 1682}#
+ (#{chi 419}#
+ #{e 1597}#
+ #{r 1571}#
+ #{w 1598}#
+ #{mod 1600}#))))
+ #{exps 1577}#))
+ (if (eqv? #{type 1684}#
+ 'displaced-lexical)
+ (syntax-violation
+ #f
+ "identifier out of context"
+ #{e 1597}#
+ (#{wrap 405}#
+ #{value 1596}#
+ #{w 1598}#
+ #{mod 1600}#))
+ (syntax-violation
+ #f
+ "cannot define keyword at top
level"
+ #{e 1597}#
+ (#{wrap 405}#
+ #{value 1596}#
+ #{w 1598}#
+ #{mod 1600}#))))))))
+ (cons (if (eq? #{m 1574}# 'c&e)
+ (begin
+ (let ((#{x 1700}#
+ (#{chi-expr 421}#
+ #{type 1595}#
+ #{value 1596}#
+ #{e 1597}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ #{mod 1600}#)))
(begin
- (let ((#{x 1745}#
- (#{chi-expr 458}#
- #{type 1640}#
- #{value 1641}#
- #{e 1642}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- #{mod 1645}#)))
- (begin
- (#{top-level-eval-hook
287}#
- #{x 1745}#
- #{mod 1645}#)
- #{x 1745}#)))
- (lambda ()
- (#{chi-expr 458}#
- #{type 1640}#
- #{value 1641}#
- #{e 1642}#
- #{r 1616}#
- #{w 1643}#
- #{s 1644}#
- #{mod 1645}#)))
- #{exps 1622}#)))))))))
- (lambda (#{exps 1746}#)
- (#{scan 1614}#
- (cdr #{body 1615}#)
- #{r 1616}#
- #{w 1617}#
- #{s 1618}#
- #{m 1619}#
- #{esew 1620}#
- #{mod 1621}#
- #{exps 1746}#)))))))
- (begin
- (call-with-values
- (lambda ()
- (#{scan 1614}#
- #{body 1599}#
- #{r 1600}#
- #{w 1601}#
- #{s 1602}#
- #{m 1603}#
- #{esew 1604}#
- #{mod 1605}#
- '()))
- (lambda (#{exps 1748}#)
- (if (null? #{exps 1748}#)
- (#{build-void 300}# #{s 1602}#)
- (#{build-sequence 330}#
- #{s 1602}#
- (letrec*
- ((#{lp 1753}#
- (lambda (#{in 1754}# #{out 1755}#)
- (if (null? #{in 1754}#)
- #{out 1755}#
- (begin
- (let ((#{e 1757}# (car #{in 1754}#)))
- (#{lp 1753}#
- (cdr #{in 1754}#)
- (cons (if (procedure? #{e 1757}#)
- (#{e 1757}#)
- #{e 1757}#)
- #{out 1755}#))))))))
- (begin (#{lp 1753}# #{exps 1748}# '())))))))))))
- (#{chi-install-global 450}#
- (lambda (#{name 1758}# #{e 1759}#)
- (#{build-global-definition 318}#
+ (#{top-level-eval-hook 250}#
+ #{x 1700}#
+ #{mod 1600}#)
+ #{x 1700}#)))
+ (lambda ()
+ (#{chi-expr 421}#
+ #{type 1595}#
+ #{value 1596}#
+ #{e 1597}#
+ #{r 1571}#
+ #{w 1598}#
+ #{s 1599}#
+ #{mod 1600}#)))
+ #{exps 1577}#)))))))))
+ (lambda (#{exps 1701}#)
+ (#{scan 1569}#
+ (cdr #{body 1570}#)
+ #{r 1571}#
+ #{w 1572}#
+ #{s 1573}#
+ #{m 1574}#
+ #{esew 1575}#
+ #{mod 1576}#
+ #{exps 1701}#)))))))
+ (begin
+ (call-with-values
+ (lambda ()
+ (#{scan 1569}#
+ #{body 1554}#
+ #{r 1555}#
+ #{w 1556}#
+ #{s 1557}#
+ #{m 1558}#
+ #{esew 1559}#
+ #{mod 1560}#
+ '()))
+ (lambda (#{exps 1703}#)
+ (if (null? #{exps 1703}#)
+ (#{build-void 263}# #{s 1557}#)
+ (#{build-sequence 293}#
+ #{s 1557}#
+ (letrec*
+ ((#{lp 1708}#
+ (lambda (#{in 1709}# #{out 1710}#)
+ (if (null? #{in 1709}#)
+ #{out 1710}#
+ (begin
+ (let ((#{e 1712}# (car #{in 1709}#)))
+ (#{lp 1708}#
+ (cdr #{in 1709}#)
+ (cons (if (procedure? #{e 1712}#)
+ (#{e 1712}#)
+ #{e 1712}#)
+ #{out 1710}#))))))))
+ (begin (#{lp 1708}# #{exps 1703}# '())))))))))))
+ (#{chi-install-global 413}#
+ (lambda (#{name 1713}# #{e 1714}#)
+ (#{build-global-definition 281}#
+ #f
+ #{name 1713}#
+ (#{build-application 265}#
+ #f
+ (#{build-primref 289}#
#f
- #{name 1758}#
- (#{build-application 302}#
- #f
- (#{build-primref 326}#
- #f
- 'make-syntax-transformer)
- (list (#{build-data 328}# #f #{name 1758}#)
- (#{build-data 328}# #f 'macro)
- #{e 1759}#)))))
- (#{chi-when-list 452}#
- (lambda (#{e 1767}# #{when-list 1768}# #{w 1769}#)
- (letrec*
- ((#{f 1776}#
- (lambda (#{when-list 1777}# #{situations 1778}#)
- (if (null? #{when-list 1777}#)
- #{situations 1778}#
- (#{f 1776}#
- (cdr #{when-list 1777}#)
- (cons (begin
- (let ((#{x 1780}# (car #{when-list 1777}#)))
- (if (#{free-id=? 432}#
- #{x 1780}#
- '#(syntax-object
- compile
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i1779"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1773" "i1774" "i1775"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1770" "i1771" "i1772"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile)))
- 'compile
- (if (#{free-id=? 432}#
- #{x 1780}#
- '#(syntax-object
- load
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i1779"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1773" "i1774" "i1775"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1770" "i1771" "i1772"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile)))
- 'load
- (if (#{free-id=? 432}#
- #{x 1780}#
- '#(syntax-object
- eval
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i1779"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1773" "i1774" "i1775"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1770" "i1771" "i1772"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile)))
- 'eval
- (if (#{free-id=? 432}#
- #{x 1780}#
- '#(syntax-object
- expand
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i1779"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1773" "i1774" "i1775"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1770" "i1771" "i1772"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
- define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile)))
- 'expand
- (syntax-violation
- 'eval-when
- "invalid situation"
- #{e 1767}#
- (#{wrap 442}#
- #{x 1780}#
- #{w 1769}#
- #f))))))))
- #{situations 1778}#))))))
- (begin (#{f 1776}# #{when-list 1768}# '())))))
- (#{syntax-type 454}#
- (lambda (#{e 1790}#
- #{r 1791}#
- #{w 1792}#
- #{s 1793}#
- #{rib 1794}#
- #{mod 1795}#
- #{for-car? 1796}#)
- (if (symbol? #{e 1790}#)
- (begin
- (let ((#{n 1808}#
- (#{id-var-name 430}# #{e 1790}# #{w 1792}#)))
- (begin
- (let ((#{b 1810}#
- (#{lookup 370}#
- #{n 1808}#
- #{r 1791}#
- #{mod 1795}#)))
- (begin
- (let ((#{type 1812}# (car #{b 1810}#)))
- (if (eqv? #{type 1812}# 'lexical)
- (values
- #{type 1812}#
- (cdr #{b 1810}#)
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{type 1812}# 'global)
- (values
- #{type 1812}#
- #{n 1808}#
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{type 1812}# 'macro)
- (if #{for-car? 1796}#
- (values
- #{type 1812}#
- (cdr #{b 1810}#)
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (#{syntax-type 454}#
- (#{chi-macro 462}#
- (cdr #{b 1810}#)
- #{e 1790}#
- #{r 1791}#
- #{w 1792}#
- #{s 1793}#
- #{rib 1794}#
- #{mod 1795}#)
- #{r 1791}#
- '(())
- #{s 1793}#
- #{rib 1794}#
- #{mod 1795}#
- #f))
- (values
- #{type 1812}#
- (cdr #{b 1810}#)
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#))))))))))
- (if (pair? #{e 1790}#)
- (begin
- (let ((#{first 1826}# (car #{e 1790}#)))
- (call-with-values
- (lambda ()
- (#{syntax-type 454}#
- #{first 1826}#
- #{r 1791}#
- #{w 1792}#
- #{s 1793}#
- #{rib 1794}#
- #{mod 1795}#
- #t))
- (lambda (#{ftype 1827}#
- #{fval 1828}#
- #{fe 1829}#
- #{fw 1830}#
- #{fs 1831}#
- #{fmod 1832}#)
- (if (eqv? #{ftype 1827}# 'lexical)
- (values
- 'lexical-call
- #{fval 1828}#
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{ftype 1827}# 'global)
- (values
- 'global-call
- (#{make-syntax-object 340}#
- #{fval 1828}#
- #{w 1792}#
- #{fmod 1832}#)
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{ftype 1827}# 'macro)
- (#{syntax-type 454}#
- (#{chi-macro 462}#
- #{fval 1828}#
- #{e 1790}#
- #{r 1791}#
- #{w 1792}#
- #{s 1793}#
- #{rib 1794}#
- #{mod 1795}#)
- #{r 1791}#
- '(())
- #{s 1793}#
- #{rib 1794}#
- #{mod 1795}#
- #{for-car? 1796}#)
- (if (eqv? #{ftype 1827}# 'module-ref)
- (call-with-values
- (lambda ()
- (#{fval 1828}#
- #{e 1790}#
- #{r 1791}#
- #{w 1792}#))
- (lambda (#{e 1844}#
- #{r 1845}#
- #{w 1846}#
- #{s 1847}#
- #{mod 1848}#)
- (#{syntax-type 454}#
- #{e 1844}#
- #{r 1845}#
- #{w 1846}#
- #{s 1847}#
- #{rib 1794}#
- #{mod 1848}#
- #{for-car? 1796}#)))
- (if (eqv? #{ftype 1827}# 'core)
- (values
- 'core-form
- #{fval 1828}#
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{ftype 1827}# 'local-syntax)
- (values
- 'local-syntax-form
- #{fval 1828}#
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{ftype 1827}# 'begin)
- (values
- 'begin-form
- #f
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{ftype 1827}# 'eval-when)
- (values
- 'eval-when-form
- #f
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (if (eqv? #{ftype 1827}# 'define)
- (let ((#{tmp 1859}# #{e 1790}#))
- (let ((#{tmp 1860}#
- ($sc-dispatch
- #{tmp 1859}#
- '(_ any any))))
- (if (if #{tmp 1860}#
- (@apply
- (lambda (#{name 1863}#
- #{val 1864}#)
- (#{id? 376}#
- #{name 1863}#))
- #{tmp 1860}#)
- #f)
- (@apply
- (lambda (#{name 1867}#
- #{val 1868}#)
- (values
- 'define-form
- #{name 1867}#
- #{val 1868}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#))
- #{tmp 1860}#)
- (let ((#{tmp 1869}#
- ($sc-dispatch
- #{tmp 1859}#
- '(_ (any . any)
- any
- .
- each-any))))
- (if (if #{tmp 1869}#
- (@apply
- (lambda (#{name 1874}#
- #{args 1875}#
- #{e1 1876}#
- #{e2 1877}#)
- (if (#{id? 376}#
- #{name 1874}#)
-
(#{valid-bound-ids? 436}#
-
(#{lambda-var-list 486}#
- #{args
1875}#))
- #f))
- #{tmp 1869}#)
- #f)
- (@apply
- (lambda (#{name 1884}#
- #{args 1885}#
- #{e1 1886}#
- #{e2 1887}#)
- (values
- 'define-form
- (#{wrap 442}#
- #{name 1884}#
- #{w 1792}#
- #{mod 1795}#)
- (#{decorate-source
296}#
- (cons
'#(syntax-object
- lambda
- ((top)
- #(ribcage
- #(name
- args
- e1
- e2)
- #((top)
- (top)
- (top)
- (top))
-
#("i1880"
-
"i1881"
-
"i1882"
-
"i1883"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
-
#("i1833"
-
"i1834"
-
"i1835"
-
"i1836"
-
"i1837"
-
"i1838"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
-
#("i1825"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
-
for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
-
#("i1797"
-
"i1798"
-
"i1799"
-
"i1800"
-
"i1801"
-
"i1802"
-
"i1803"))
- #(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
-
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
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
maybe-name-value!
-
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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
-
"i239"))
- #(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
-
and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i41"
- "i40"
- "i39"
-
"i37")))
- (hygiene
- guile))
- (#{wrap 442}#
- (cons
#{args 1885}#
- (cons
#{e1 1886}#
-
#{e2 1887}#))
- #{w 1792}#
- #{mod
1795}#))
- #{s 1793}#)
- '(())
- #{s 1793}#
- #{mod 1795}#))
- #{tmp 1869}#)
- (let ((#{tmp 1890}#
- ($sc-dispatch
- #{tmp 1859}#
- '(_ any))))
- (if (if #{tmp 1890}#
- (@apply
- (lambda (#{name
1892}#)
- (#{id? 376}#
- #{name
1892}#))
- #{tmp 1890}#)
- #f)
- (@apply
- (lambda (#{name
1894}#)
- (values
- 'define-form
- (#{wrap 442}#
- #{name 1894}#
- #{w 1792}#
- #{mod 1795}#)
- '(#(syntax-object
- if
- ((top)
- #(ribcage
- #(name)
- #((top))
- #("i1893"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1833"
- "i1834"
- "i1835"
- "i1836"
- "i1837"
- "i1838"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i1825"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1797"
- "i1798"
- "i1799"
- "i1800"
- "i1801"
- "i1802"
- "i1803"))
- #(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
-
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
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
maybe-name-value!
-
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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i41"
- "i40"
- "i39"
- "i37")))
- (hygiene
- guile))
- #(syntax-object
- #f
- ((top)
- #(ribcage
- #(name)
- #((top))
- #("i1893"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1833"
- "i1834"
- "i1835"
- "i1836"
- "i1837"
- "i1838"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i1825"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1797"
- "i1798"
- "i1799"
- "i1800"
- "i1801"
- "i1802"
- "i1803"))
- #(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
-
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
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
maybe-name-value!
-
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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i41"
- "i40"
- "i39"
- "i37")))
- (hygiene
- guile))
- #(syntax-object
- #f
- ((top)
- #(ribcage
- #(name)
- #((top))
- #("i1893"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1833"
- "i1834"
- "i1835"
- "i1836"
- "i1837"
- "i1838"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i1825"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1797"
- "i1798"
- "i1799"
- "i1800"
- "i1801"
- "i1802"
- "i1803"))
- #(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
-
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
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
-
build-dynlet
-
build-conditional
-
build-application
-
build-void
-
maybe-name-value!
-
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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i41"
- "i40"
- "i39"
- "i37")))
- (hygiene
- guile)))
- '(())
- #{s 1793}#
- #{mod 1795}#))
- #{tmp 1890}#)
- (syntax-violation
- #f
- "source expression
failed to match any pattern"
- #{tmp 1859}#))))))))
- (if (eqv? #{ftype 1827}#
- 'define-syntax)
- (let ((#{tmp 1897}# #{e 1790}#))
- (let ((#{tmp 1898}#
- ($sc-dispatch
- #{tmp 1897}#
- '(_ any any))))
- (if (if #{tmp 1898}#
- (@apply
- (lambda (#{name 1901}#
- #{val 1902}#)
- (#{id? 376}#
- #{name 1901}#))
- #{tmp 1898}#)
- #f)
- (@apply
- (lambda (#{name 1905}#
- #{val 1906}#)
- (values
- 'define-syntax-form
- #{name 1905}#
- #{val 1906}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#))
- #{tmp 1898}#)
- (syntax-violation
- #f
- "source expression failed
to match any pattern"
- #{tmp 1897}#))))
- (values
- 'call
- #f
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)))))))))))))))
- (if (#{syntax-object? 342}# #{e 1790}#)
- (#{syntax-type 454}#
- (#{syntax-object-expression 344}# #{e 1790}#)
- #{r 1791}#
- (#{join-wraps 424}#
- #{w 1792}#
- (#{syntax-object-wrap 346}# #{e 1790}#))
- (begin
- (let ((#{t 1912}#
- (#{source-annotation 357}# #{e 1790}#)))
- (if #{t 1912}# #{t 1912}# #{s 1793}#)))
- #{rib 1794}#
- (begin
- (let ((#{t 1916}#
- (#{syntax-object-module 348}# #{e 1790}#)))
- (if #{t 1916}# #{t 1916}# #{mod 1795}#)))
- #{for-car? 1796}#)
- (if (self-evaluating? #{e 1790}#)
- (values
- 'constant
- #f
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)
- (values
- 'other
- #f
- #{e 1790}#
- #{w 1792}#
- #{s 1793}#
- #{mod 1795}#)))))))
- (#{chi 456}#
- (lambda (#{e 1921}# #{r 1922}# #{w 1923}# #{mod 1924}#)
- (call-with-values
- (lambda ()
- (#{syntax-type 454}#
- #{e 1921}#
- #{r 1922}#
- #{w 1923}#
- (#{source-annotation 357}# #{e 1921}#)
- #f
- #{mod 1924}#
- #f))
- (lambda (#{type 1929}#
- #{value 1930}#
- #{e 1931}#
- #{w 1932}#
- #{s 1933}#
- #{mod 1934}#)
- (#{chi-expr 458}#
- #{type 1929}#
- #{value 1930}#
- #{e 1931}#
- #{r 1922}#
- #{w 1932}#
- #{s 1933}#
- #{mod 1934}#)))))
- (#{chi-expr 458}#
- (lambda (#{type 1941}#
- #{value 1942}#
- #{e 1943}#
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#)
- (if (eqv? #{type 1941}# 'lexical)
- (#{build-lexical-reference 308}#
- 'value
- #{s 1946}#
- #{e 1943}#
- #{value 1942}#)
- (if (if (eqv? #{type 1941}# 'core)
- #t
- (eqv? #{type 1941}# 'core-form))
- (#{value 1942}#
- #{e 1943}#
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#)
- (if (eqv? #{type 1941}# 'module-ref)
- (call-with-values
- (lambda ()
- (#{value 1942}# #{e 1943}# #{r 1944}# #{w 1945}#))
- (lambda (#{e 1958}#
- #{r 1959}#
- #{w 1960}#
- #{s 1961}#
- #{mod 1962}#)
- (#{chi 456}#
- #{e 1958}#
- #{r 1959}#
- #{w 1960}#
- #{mod 1962}#)))
- (if (eqv? #{type 1941}# 'lexical-call)
- (#{chi-application 460}#
- (begin
- (let ((#{id 1970}# (car #{e 1943}#)))
- (#{build-lexical-reference 308}#
- 'fun
- (#{source-annotation 357}# #{id 1970}#)
- (if (#{syntax-object? 342}# #{id 1970}#)
- (syntax->datum #{id 1970}#)
- #{id 1970}#)
- #{value 1942}#)))
- #{e 1943}#
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#)
- (if (eqv? #{type 1941}# 'global-call)
- (#{chi-application 460}#
- (#{build-global-reference 314}#
- (#{source-annotation 357}# (car #{e 1943}#))
- (if (#{syntax-object? 342}# #{value 1942}#)
- (#{syntax-object-expression 344}# #{value 1942}#)
- #{value 1942}#)
- (if (#{syntax-object? 342}# #{value 1942}#)
- (#{syntax-object-module 348}# #{value 1942}#)
- #{mod 1947}#))
- #{e 1943}#
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#)
- (if (eqv? #{type 1941}# 'constant)
- (#{build-data 328}#
- #{s 1946}#
- (#{strip 482}#
- (#{source-wrap 444}#
- #{e 1943}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#)
- '(())))
- (if (eqv? #{type 1941}# 'global)
- (#{build-global-reference 314}#
- #{s 1946}#
- #{value 1942}#
- #{mod 1947}#)
- (if (eqv? #{type 1941}# 'call)
- (#{chi-application 460}#
- (#{chi 456}#
- (car #{e 1943}#)
- #{r 1944}#
- #{w 1945}#
- #{mod 1947}#)
- #{e 1943}#
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#)
- (if (eqv? #{type 1941}# 'begin-form)
- (let ((#{tmp 1977}# #{e 1943}#))
- (let ((#{tmp 1978}#
- ($sc-dispatch
- #{tmp 1977}#
- '(_ any . each-any))))
- (if #{tmp 1978}#
- (@apply
- (lambda (#{e1 1981}# #{e2 1982}#)
- (#{chi-sequence 446}#
- (cons #{e1 1981}# #{e2 1982}#)
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#))
- #{tmp 1978}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp 1977}#))))
- (if (eqv? #{type 1941}# 'local-syntax-form)
- (#{chi-local-syntax 466}#
- #{value 1942}#
- #{e 1943}#
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#
- #{chi-sequence 446}#)
- (if (eqv? #{type 1941}# 'eval-when-form)
- (let ((#{tmp 1986}# #{e 1943}#))
- (let ((#{tmp 1987}#
- ($sc-dispatch
- #{tmp 1986}#
- '(_ each-any any . each-any))))
- (if #{tmp 1987}#
- (@apply
- (lambda (#{x 1991}#
- #{e1 1992}#
- #{e2 1993}#)
- (begin
- (let ((#{when-list 1995}#
- (#{chi-when-list 452}#
- #{e 1943}#
- #{x 1991}#
- #{w 1945}#)))
- (if (memq 'eval
- #{when-list 1995}#)
- (#{chi-sequence 446}#
- (cons #{e1 1992}#
- #{e2 1993}#)
- #{r 1944}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#)
- (#{chi-void 470}#)))))
- #{tmp 1987}#)
- (syntax-violation
- #f
- "source expression failed to match
any pattern"
- #{tmp 1986}#))))
- (if (if (eqv? #{type 1941}# 'define-form)
- #t
- (eqv? #{type 1941}#
- 'define-syntax-form))
- (syntax-violation
- #f
- "definition in expression context"
- #{e 1943}#
- (#{wrap 442}#
- #{value 1942}#
- #{w 1945}#
- #{mod 1947}#))
- (if (eqv? #{type 1941}# 'syntax)
- (syntax-violation
- #f
- "reference to pattern variable outside
syntax form"
- (#{source-wrap 444}#
- #{e 1943}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#))
- (if (eqv? #{type 1941}#
- 'displaced-lexical)
- (syntax-violation
- #f
- "reference to identifier outside its
scope"
- (#{source-wrap 444}#
- #{e 1943}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#))
- (syntax-violation
- #f
- "unexpected syntax"
- (#{source-wrap 444}#
- #{e 1943}#
- #{w 1945}#
- #{s 1946}#
- #{mod 1947}#))))))))))))))))))
- (#{chi-application 460}#
- (lambda (#{x 2002}#
- #{e 2003}#
- #{r 2004}#
- #{w 2005}#
- #{s 2006}#
- #{mod 2007}#)
- (let ((#{tmp 2014}# #{e 2003}#))
- (let ((#{tmp 2015}#
- ($sc-dispatch #{tmp 2014}# '(any . each-any))))
- (if #{tmp 2015}#
- (@apply
- (lambda (#{e0 2018}# #{e1 2019}#)
- (#{build-application 302}#
- #{s 2006}#
- #{x 2002}#
- (map (lambda (#{e 2020}#)
- (#{chi 456}#
- #{e 2020}#
- #{r 2004}#
- #{w 2005}#
- #{mod 2007}#))
- #{e1 2019}#)))
- #{tmp 2015}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2014}#))))))
- (#{chi-macro 462}#
- (lambda (#{p 2023}#
- #{e 2024}#
- #{r 2025}#
- #{w 2026}#
- #{s 2027}#
- #{rib 2028}#
- #{mod 2029}#)
- (letrec*
- ((#{rebuild-macro-output 2038}#
- (lambda (#{x 2039}# #{m 2040}#)
- (if (pair? #{x 2039}#)
- (#{decorate-source 296}#
- (cons (#{rebuild-macro-output 2038}#
- (car #{x 2039}#)
- #{m 2040}#)
- (#{rebuild-macro-output 2038}#
- (cdr #{x 2039}#)
- #{m 2040}#))
- #{s 2027}#)
- (if (#{syntax-object? 342}# #{x 2039}#)
- (begin
- (let ((#{w 2048}#
- (#{syntax-object-wrap 346}# #{x 2039}#)))
- (begin
- (let ((#{ms 2051}# (car #{w 2048}#))
- (#{s 2052}# (cdr #{w 2048}#)))
- (if (if (pair? #{ms 2051}#)
- (eq? (car #{ms 2051}#) #f)
- #f)
- (#{make-syntax-object 340}#
- (#{syntax-object-expression 344}# #{x 2039}#)
- (cons (cdr #{ms 2051}#)
- (if #{rib 2028}#
- (cons #{rib 2028}# (cdr #{s 2052}#))
- (cdr #{s 2052}#)))
- (#{syntax-object-module 348}# #{x 2039}#))
- (#{make-syntax-object 340}#
- (#{decorate-source 296}#
- (#{syntax-object-expression 344}#
- #{x 2039}#)
- #{s 2052}#)
- (cons (cons #{m 2040}# #{ms 2051}#)
- (if #{rib 2028}#
- (cons #{rib 2028}#
- (cons 'shift #{s 2052}#))
- (cons 'shift #{s 2052}#)))
- (#{syntax-object-module 348}#
- #{x 2039}#)))))))
- (if (vector? #{x 2039}#)
- (begin
- (let ((#{n 2064}# (vector-length #{x 2039}#)))
- (begin
- (let ((#{v 2066}#
- (#{decorate-source 296}#
- (make-vector #{n 2064}#)
- #{x 2039}#)))
- (letrec*
- ((#{loop 2069}#
- (lambda (#{i 2070}#)
- (if (= #{i 2070}# #{n 2064}#)
- (begin (if #f #f) #{v 2066}#)
- (begin
- (vector-set!
- #{v 2066}#
- #{i 2070}#
- (#{rebuild-macro-output 2038}#
- (vector-ref
- #{x 2039}#
- #{i 2070}#)
- #{m 2040}#))
- (#{loop 2069}#
- (#{1+}# #{i 2070}#)))))))
- (begin (#{loop 2069}# 0)))))))
- (if (symbol? #{x 2039}#)
- (syntax-violation
- #f
- "encountered raw symbol in macro output"
- (#{source-wrap 444}#
- #{e 2024}#
- #{w 2026}#
- (cdr #{w 2026}#)
- #{mod 2029}#)
- #{x 2039}#)
- (#{decorate-source 296}#
- #{x 2039}#
- #{s 2027}#))))))))
- (begin
- (#{rebuild-macro-output 2038}#
- (#{p 2023}#
- (#{source-wrap 444}#
- #{e 2024}#
- (#{anti-mark 414}# #{w 2026}#)
- #{s 2027}#
- #{mod 2029}#))
- (gensym "m"))))))
- (#{chi-body 464}#
- (lambda (#{body 2080}#
- #{outer-form 2081}#
- #{r 2082}#
- #{w 2083}#
- #{mod 2084}#)
- (begin
- (let ((#{r 2092}#
- (cons '("placeholder" placeholder) #{r 2082}#)))
- (begin
- (let ((#{ribcage 2094}#
- (#{make-ribcage 394}# '() '() '())))
- (begin
- (let ((#{w 2097}#
- (cons (car #{w 2083}#)
- (cons #{ribcage 2094}# (cdr #{w 2083}#)))))
- (letrec*
- ((#{parse 2109}#
- (lambda (#{body 2110}#
- #{ids 2111}#
- #{labels 2112}#
- #{var-ids 2113}#
- #{vars 2114}#
- #{vals 2115}#
- #{bindings 2116}#)
- (if (null? #{body 2110}#)
- (syntax-violation
- #f
- "no expressions in body"
- #{outer-form 2081}#)
- (begin
- (let ((#{e 2121}# (cdr (car #{body 2110}#)))
- (#{er 2122}#
- (car (car #{body 2110}#))))
- (call-with-values
- (lambda ()
- (#{syntax-type 454}#
- #{e 2121}#
- #{er 2122}#
- '(())
- (#{source-annotation 357}#
- #{er 2122}#)
- #{ribcage 2094}#
- #{mod 2084}#
- #f))
- (lambda (#{type 2124}#
- #{value 2125}#
- #{e 2126}#
- #{w 2127}#
- #{s 2128}#
- #{mod 2129}#)
- (if (eqv? #{type 2124}# 'define-form)
- (begin
- (let ((#{id 2139}#
- (#{wrap 442}#
- #{value 2125}#
- #{w 2127}#
- #{mod 2129}#))
- (#{label 2140}#
- (#{gen-label 389}#)))
- (begin
- (let ((#{var 2142}#
- (#{gen-var 484}#
- #{id 2139}#)))
- (begin
- (#{extend-ribcage! 418}#
- #{ribcage 2094}#
- #{id 2139}#
- #{label 2140}#)
- (#{parse 2109}#
- (cdr #{body 2110}#)
- (cons #{id 2139}#
- #{ids 2111}#)
- (cons #{label 2140}#
- #{labels 2112}#)
- (cons #{id 2139}#
- #{var-ids 2113}#)
- (cons #{var 2142}#
- #{vars 2114}#)
- (cons (cons #{er 2122}#
- (#{wrap 442}#
- #{e 2126}#
- #{w 2127}#
- #{mod
2129}#))
- #{vals 2115}#)
- (cons (cons 'lexical
- #{var 2142}#)
- #{bindings
2116}#)))))))
- (if (eqv? #{type 2124}#
- 'define-syntax-form)
- (begin
- (let ((#{id 2147}#
- (#{wrap 442}#
- #{value 2125}#
- #{w 2127}#
- #{mod 2129}#))
- (#{label 2148}#
- (#{gen-label 389}#)))
- (begin
- (#{extend-ribcage! 418}#
- #{ribcage 2094}#
- #{id 2147}#
- #{label 2148}#)
- (#{parse 2109}#
- (cdr #{body 2110}#)
- (cons #{id 2147}#
- #{ids 2111}#)
- (cons #{label 2148}#
- #{labels 2112}#)
- #{var-ids 2113}#
- #{vars 2114}#
- #{vals 2115}#
- (cons (cons 'macro
- (cons #{er
2122}#
- (#{wrap
442}#
- #{e
2126}#
- #{w
2127}#
- #{mod
2129}#)))
- #{bindings
2116}#)))))
- (if (eqv? #{type 2124}#
- 'begin-form)
- (let ((#{tmp 2151}# #{e 2126}#))
- (let ((#{tmp 2152}#
- ($sc-dispatch
- #{tmp 2151}#
- '(_ . each-any))))
- (if #{tmp 2152}#
- (@apply
- (lambda (#{e1 2154}#)
- (#{parse 2109}#
- (letrec*
- ((#{f 2157}#
- (lambda
(#{forms 2158}#)
- (if (null?
#{forms 2158}#)
- (cdr #{body
2110}#)
- (cons (cons
#{er 2122}#
-
(#{wrap 442}#
-
(car #{forms 2158}#)
-
#{w 2127}#
-
#{mod 2129}#))
- (#{f
2157}#
-
(cdr #{forms 2158}#)))))))
- (begin
- (#{f 2157}#
- #{e1 2154}#)))
- #{ids 2111}#
- #{labels 2112}#
- #{var-ids 2113}#
- #{vars 2114}#
- #{vals 2115}#
- #{bindings 2116}#))
- #{tmp 2152}#)
- (syntax-violation
- #f
- "source expression
failed to match any pattern"
- #{tmp 2151}#))))
- (if (eqv? #{type 2124}#
- 'local-syntax-form)
- (#{chi-local-syntax 466}#
- #{value 2125}#
- #{e 2126}#
- #{er 2122}#
- #{w 2127}#
- #{s 2128}#
- #{mod 2129}#
- (lambda (#{forms 2161}#
- #{er 2162}#
- #{w 2163}#
- #{s 2164}#
- #{mod 2165}#)
- (#{parse 2109}#
- (letrec*
- ((#{f 2173}#
- (lambda (#{forms
2174}#)
- (if (null?
#{forms 2174}#)
- (cdr #{body
2110}#)
- (cons (cons
#{er 2162}#
-
(#{wrap 442}#
-
(car #{forms 2174}#)
-
#{w 2163}#
-
#{mod 2165}#))
- (#{f
2173}#
- (cdr
#{forms 2174}#)))))))
- (begin
- (#{f 2173}#
- #{forms 2161}#)))
- #{ids 2111}#
- #{labels 2112}#
- #{var-ids 2113}#
- #{vars 2114}#
- #{vals 2115}#
- #{bindings 2116}#)))
- (if (null? #{ids 2111}#)
- (#{build-sequence 330}#
- #f
- (map (lambda (#{x 2177}#)
- (#{chi 456}#
- (cdr #{x 2177}#)
- (car #{x 2177}#)
- '(())
- #{mod 2129}#))
- (cons (cons #{er
2122}#
-
(#{source-wrap 444}#
- #{e
2126}#
- #{w
2127}#
- #{s
2128}#
- #{mod
2129}#))
- (cdr #{body
2110}#))))
- (begin
- (if (not
(#{valid-bound-ids? 436}#
- #{ids 2111}#))
- (syntax-violation
- #f
- "invalid or duplicate
identifier in definition"
- #{outer-form 2081}#))
- (letrec*
- ((#{loop 2184}#
- (lambda (#{bs 2185}#
- #{er-cache
2186}#
- #{r-cache
2187}#)
- (if (not (null?
#{bs 2185}#))
- (begin
- (let ((#{b
2190}#
- (car
#{bs 2185}#)))
- (if (eq? (car
#{b 2190}#)
-
'macro)
- (begin
- (let
((#{er 2193}#
-
(car (cdr #{b 2190}#))))
- (begin
- (let
((#{r-cache 2195}#
-
(if (eq? #{er 2193}#
-
#{er-cache 2186}#)
-
#{r-cache 2187}#
-
(#{macros-only-env 368}#
-
#{er 2193}#))))
-
(begin
-
(set-cdr!
-
#{b 2190}#
-
(#{eval-local-transformer 468}#
-
(#{chi 456}#
-
(cdr (cdr #{b 2190}#))
-
#{r-cache 2195}#
-
'(())
-
#{mod 2129}#)
-
#{mod 2129}#))
-
(#{loop 2184}#
-
(cdr #{bs 2185}#)
-
#{er 2193}#
-
#{r-cache 2195}#))))))
- (#{loop
2184}#
- (cdr #{bs
2185}#)
-
#{er-cache 2186}#
- #{r-cache
2187}#))))))))
- (begin
- (#{loop 2184}#
- #{bindings 2116}#
- #f
- #f)))
- (set-cdr!
- #{r 2092}#
- (#{extend-env 364}#
- #{labels 2112}#
- #{bindings 2116}#
- (cdr #{r 2092}#)))
- (#{build-letrec 336}#
- #f
- #t
- (reverse
- (map syntax->datum
- #{var-ids 2113}#))
- (reverse #{vars 2114}#)
- (map (lambda (#{x 2198}#)
- (#{chi 456}#
- (cdr #{x 2198}#)
- (car #{x 2198}#)
- '(())
- #{mod 2129}#))
- (reverse
- #{vals 2115}#))
- (#{build-sequence 330}#
- #f
- (map (lambda (#{x
2202}#)
- (#{chi 456}#
- (cdr #{x
2202}#)
- (car #{x
2202}#)
- '(())
- #{mod 2129}#))
- (cons (cons #{er
2122}#
-
(#{source-wrap 444}#
- #{e
2126}#
- #{w
2127}#
- #{s
2128}#
-
#{mod 2129}#))
- (cdr #{body
2110}#)))))))))))))))))))
- (begin
- (#{parse 2109}#
- (map (lambda (#{x 2117}#)
- (cons #{r 2092}#
- (#{wrap 442}#
- #{x 2117}#
- #{w 2097}#
- #{mod 2084}#)))
- #{body 2080}#)
- '()
- '()
- '()
- '()
- '()
- '())))))))))))
- (#{chi-local-syntax 466}#
- (lambda (#{rec? 2205}#
- #{e 2206}#
- #{r 2207}#
- #{w 2208}#
- #{s 2209}#
- #{mod 2210}#
- #{k 2211}#)
- (let ((#{tmp 2219}# #{e 2206}#))
- (let ((#{tmp 2220}#
- ($sc-dispatch
- #{tmp 2219}#
- '(_ #(each (any any)) any . each-any))))
- (if #{tmp 2220}#
- (@apply
- (lambda (#{id 2225}#
- #{val 2226}#
- #{e1 2227}#
- #{e2 2228}#)
- (begin
- (let ((#{ids 2230}# #{id 2225}#))
- (if (not (#{valid-bound-ids? 436}# #{ids 2230}#))
- (syntax-violation
- #f
- "duplicate bound keyword"
- #{e 2206}#)
- (begin
- (let ((#{labels 2233}#
- (#{gen-labels 391}# #{ids 2230}#)))
- (begin
- (let ((#{new-w 2235}#
- (#{make-binding-wrap 420}#
- #{ids 2230}#
- #{labels 2233}#
- #{w 2208}#)))
- (#{k 2211}#
- (cons #{e1 2227}# #{e2 2228}#)
- (#{extend-env 364}#
- #{labels 2233}#
- (begin
- (let ((#{w 2239}#
- (if #{rec? 2205}#
- #{new-w 2235}#
- #{w 2208}#))
- (#{trans-r 2240}#
- (#{macros-only-env 368}#
- #{r 2207}#)))
- (map (lambda (#{x 2241}#)
- (cons 'macro
-
(#{eval-local-transformer 468}#
- (#{chi 456}#
- #{x 2241}#
- #{trans-r 2240}#
- #{w 2239}#
- #{mod 2210}#)
- #{mod 2210}#)))
- #{val 2226}#)))
- #{r 2207}#)
- #{new-w 2235}#
- #{s 2209}#
- #{mod 2210}#)))))))))
- #{tmp 2220}#)
- (let ((#{_ 2246}# #{tmp 2219}#))
- (syntax-violation
- #f
- "bad local syntax definition"
- (#{source-wrap 444}#
- #{e 2206}#
- #{w 2208}#
- #{s 2209}#
- #{mod 2210}#))))))))
- (#{eval-local-transformer 468}#
- (lambda (#{expanded 2247}# #{mod 2248}#)
- (begin
- (let ((#{p 2252}#
- (#{local-eval-hook 289}#
- #{expanded 2247}#
- #{mod 2248}#)))
- (if (procedure? #{p 2252}#)
- #{p 2252}#
- (syntax-violation
- #f
- "nonprocedure transformer"
- #{p 2252}#))))))
- (#{chi-void 470}#
- (lambda () (#{build-void 300}# #f)))
- (#{ellipsis? 472}#
- (lambda (#{x 2254}#)
- (if (#{nonsymbol-id? 374}# #{x 2254}#)
- (#{free-id=? 432}#
- #{x 2254}#
- '#(syntax-object
- ...
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i2255"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile)))
- #f)))
- (#{lambda-formals 474}#
- (lambda (#{orig-args 2258}#)
- (letrec*
- ((#{req 2261}#
- (lambda (#{args 2264}# #{rreq 2265}#)
- (let ((#{tmp 2268}# #{args 2264}#))
- (let ((#{tmp 2269}# ($sc-dispatch #{tmp 2268}# '())))
- (if #{tmp 2269}#
- (@apply
- (lambda ()
- (#{check 2263}# (reverse #{rreq 2265}#) #f))
- #{tmp 2269}#)
- (let ((#{tmp 2270}#
- ($sc-dispatch #{tmp 2268}# '(any . any))))
- (if (if #{tmp 2270}#
- (@apply
- (lambda (#{a 2273}# #{b 2274}#)
- (#{id? 376}# #{a 2273}#))
- #{tmp 2270}#)
- #f)
- (@apply
- (lambda (#{a 2277}# #{b 2278}#)
- (#{req 2261}#
- #{b 2278}#
- (cons #{a 2277}# #{rreq 2265}#)))
- #{tmp 2270}#)
- (let ((#{tmp 2279}# (list #{tmp 2268}#)))
- (if (if #{tmp 2279}#
- (@apply
- (lambda (#{r 2281}#)
- (#{id? 376}# #{r 2281}#))
- #{tmp 2279}#)
- #f)
- (@apply
- (lambda (#{r 2283}#)
- (#{check 2263}#
- (reverse #{rreq 2265}#)
- #{r 2283}#))
- #{tmp 2279}#)
- (let ((#{else 2285}# #{tmp 2268}#))
- (syntax-violation
- 'lambda
- "invalid argument list"
- #{orig-args 2258}#
- #{args 2264}#)))))))))))
- (#{check 2263}#
- (lambda (#{req 2286}# #{rest 2287}#)
- (if (#{distinct-bound-ids? 438}#
- (if #{rest 2287}#
- (cons #{rest 2287}# #{req 2286}#)
- #{req 2286}#))
- (values #{req 2286}# #f #{rest 2287}# #f)
- (syntax-violation
- 'lambda
- "duplicate identifier in argument list"
- #{orig-args 2258}#)))))
- (begin (#{req 2261}# #{orig-args 2258}# '())))))
- (#{chi-simple-lambda 476}#
- (lambda (#{e 2293}#
- #{r 2294}#
- #{w 2295}#
- #{s 2296}#
- #{mod 2297}#
- #{req 2298}#
- #{rest 2299}#
- #{meta 2300}#
- #{body 2301}#)
- (begin
- (let ((#{ids 2313}#
- (if #{rest 2299}#
- (append #{req 2298}# (list #{rest 2299}#))
- #{req 2298}#)))
- (begin
- (let ((#{vars 2315}#
- (map #{gen-var 484}# #{ids 2313}#)))
- (begin
- (let ((#{labels 2317}#
- (#{gen-labels 391}# #{ids 2313}#)))
- (#{build-simple-lambda 320}#
- #{s 2296}#
- (map syntax->datum #{req 2298}#)
- (if #{rest 2299}#
- (syntax->datum #{rest 2299}#)
- #f)
- #{vars 2315}#
- #{meta 2300}#
- (#{chi-body 464}#
- #{body 2301}#
- (#{source-wrap 444}#
- #{e 2293}#
- #{w 2295}#
- #{s 2296}#
- #{mod 2297}#)
- (#{extend-var-env 366}#
- #{labels 2317}#
- #{vars 2315}#
- #{r 2294}#)
- (#{make-binding-wrap 420}#
- #{ids 2313}#
- #{labels 2317}#
- #{w 2295}#)
- #{mod 2297}#))))))))))
- (#{lambda*-formals 478}#
- (lambda (#{orig-args 2320}#)
- (letrec*
- ((#{req 2323}#
- (lambda (#{args 2332}# #{rreq 2333}#)
- (let ((#{tmp 2336}# #{args 2332}#))
- (let ((#{tmp 2337}# ($sc-dispatch #{tmp 2336}# '())))
- (if #{tmp 2337}#
- (@apply
- (lambda ()
- (#{check 2331}#
- (reverse #{rreq 2333}#)
- '()
- #f
- '()))
- #{tmp 2337}#)
- (let ((#{tmp 2338}#
- ($sc-dispatch #{tmp 2336}# '(any . any))))
- (if (if #{tmp 2338}#
- (@apply
- (lambda (#{a 2341}# #{b 2342}#)
- (#{id? 376}# #{a 2341}#))
- #{tmp 2338}#)
- #f)
- (@apply
- (lambda (#{a 2345}# #{b 2346}#)
- (#{req 2323}#
- #{b 2346}#
- (cons #{a 2345}# #{rreq 2333}#)))
- #{tmp 2338}#)
- (let ((#{tmp 2347}#
- ($sc-dispatch #{tmp 2336}# '(any . any))))
- (if (if #{tmp 2347}#
- (@apply
- (lambda (#{a 2350}# #{b 2351}#)
- (eq? (syntax->datum #{a 2350}#)
- #:optional))
- #{tmp 2347}#)
- #f)
- (@apply
- (lambda (#{a 2354}# #{b 2355}#)
- (#{opt 2325}#
- #{b 2355}#
- (reverse #{rreq 2333}#)
- '()))
- #{tmp 2347}#)
- (let ((#{tmp 2356}#
- ($sc-dispatch
- #{tmp 2336}#
- '(any . any))))
- (if (if #{tmp 2356}#
- (@apply
- (lambda (#{a 2359}# #{b 2360}#)
- (eq? (syntax->datum #{a 2359}#)
- #:key))
- #{tmp 2356}#)
- #f)
- (@apply
- (lambda (#{a 2363}# #{b 2364}#)
- (#{key 2327}#
- #{b 2364}#
- (reverse #{rreq 2333}#)
- '()
- '()))
- #{tmp 2356}#)
- (let ((#{tmp 2365}#
- ($sc-dispatch
- #{tmp 2336}#
- '(any any))))
- (if (if #{tmp 2365}#
- (@apply
- (lambda (#{a 2368}# #{b 2369}#)
- (eq? (syntax->datum #{a 2368}#)
- #:rest))
- #{tmp 2365}#)
- #f)
- (@apply
- (lambda (#{a 2372}# #{b 2373}#)
- (#{rest 2329}#
- #{b 2373}#
- (reverse #{rreq 2333}#)
- '()
- '()))
- #{tmp 2365}#)
- (let ((#{tmp 2374}#
- (list #{tmp 2336}#)))
- (if (if #{tmp 2374}#
- (@apply
- (lambda (#{r 2376}#)
- (#{id? 376}# #{r 2376}#))
- #{tmp 2374}#)
- #f)
- (@apply
- (lambda (#{r 2378}#)
- (#{rest 2329}#
- #{r 2378}#
- (reverse #{rreq 2333}#)
- '()
- '()))
- #{tmp 2374}#)
- (let ((#{else 2380}# #{tmp 2336}#))
- (syntax-violation
- 'lambda*
- "invalid argument list"
- #{orig-args 2320}#
- #{args 2332}#)))))))))))))))))
- (#{opt 2325}#
- (lambda (#{args 2381}# #{req 2382}# #{ropt 2383}#)
- (let ((#{tmp 2387}# #{args 2381}#))
- (let ((#{tmp 2388}# ($sc-dispatch #{tmp 2387}# '())))
- (if #{tmp 2388}#
- (@apply
- (lambda ()
- (#{check 2331}#
- #{req 2382}#
- (reverse #{ropt 2383}#)
- #f
- '()))
- #{tmp 2388}#)
- (let ((#{tmp 2389}#
- ($sc-dispatch #{tmp 2387}# '(any . any))))
- (if (if #{tmp 2389}#
- (@apply
- (lambda (#{a 2392}# #{b 2393}#)
- (#{id? 376}# #{a 2392}#))
- #{tmp 2389}#)
- #f)
- (@apply
- (lambda (#{a 2396}# #{b 2397}#)
- (#{opt 2325}#
- #{b 2397}#
- #{req 2382}#
- (cons (cons #{a 2396}#
- '(#(syntax-object
- #f
- ((top)
- #(ribcage
- #(a b)
- #((top) (top))
- #("i2394" "i2395"))
- #(ribcage () () ())
- #(ribcage
- #(args req ropt)
- #((top) (top) (top))
- #("i2384"
- "i2385"
- "i2386"))
- #(ribcage
- (check rest key opt req)
- ((top)
- (top)
- (top)
- (top)
- (top))
- ("i2330"
- "i2328"
- "i2326"
- "i2324"
- "i2322"))
- #(ribcage
- #(orig-args)
- #((top))
- #("i2321"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41"
- "i40"
- "i39"
- "i37")))
- (hygiene guile))))
- #{ropt 2383}#)))
- #{tmp 2389}#)
- (let ((#{tmp 2398}#
- ($sc-dispatch
- #{tmp 2387}#
- '((any any) . any))))
- (if (if #{tmp 2398}#
- (@apply
- (lambda (#{a 2402}#
- #{init 2403}#
- #{b 2404}#)
- (#{id? 376}# #{a 2402}#))
- #{tmp 2398}#)
- #f)
- (@apply
- (lambda (#{a 2408}# #{init 2409}# #{b 2410}#)
- (#{opt 2325}#
- #{b 2410}#
- #{req 2382}#
- (cons (list #{a 2408}# #{init 2409}#)
- #{ropt 2383}#)))
- #{tmp 2398}#)
- (let ((#{tmp 2411}#
- ($sc-dispatch
- #{tmp 2387}#
- '(any . any))))
- (if (if #{tmp 2411}#
- (@apply
- (lambda (#{a 2414}# #{b 2415}#)
- (eq? (syntax->datum #{a 2414}#)
- #:key))
- #{tmp 2411}#)
- #f)
- (@apply
- (lambda (#{a 2418}# #{b 2419}#)
- (#{key 2327}#
- #{b 2419}#
- #{req 2382}#
- (reverse #{ropt 2383}#)
- '()))
- #{tmp 2411}#)
- (let ((#{tmp 2420}#
- ($sc-dispatch
- #{tmp 2387}#
- '(any any))))
- (if (if #{tmp 2420}#
- (@apply
- (lambda (#{a 2423}# #{b 2424}#)
- (eq? (syntax->datum #{a 2423}#)
- #:rest))
- #{tmp 2420}#)
- #f)
- (@apply
- (lambda (#{a 2427}# #{b 2428}#)
- (#{rest 2329}#
- #{b 2428}#
- #{req 2382}#
- (reverse #{ropt 2383}#)
- '()))
- #{tmp 2420}#)
- (let ((#{tmp 2429}#
- (list #{tmp 2387}#)))
- (if (if #{tmp 2429}#
- (@apply
- (lambda (#{r 2431}#)
- (#{id? 376}# #{r 2431}#))
- #{tmp 2429}#)
- #f)
- (@apply
- (lambda (#{r 2433}#)
- (#{rest 2329}#
- #{r 2433}#
- #{req 2382}#
- (reverse #{ropt 2383}#)
- '()))
- #{tmp 2429}#)
- (let ((#{else 2435}# #{tmp 2387}#))
- (syntax-violation
- 'lambda*
- "invalid optional argument
list"
- #{orig-args 2320}#
- #{args 2381}#)))))))))))))))))
- (#{key 2327}#
- (lambda (#{args 2436}#
- #{req 2437}#
- #{opt 2438}#
- #{rkey 2439}#)
- (let ((#{tmp 2444}# #{args 2436}#))
- (let ((#{tmp 2445}# ($sc-dispatch #{tmp 2444}# '())))
- (if #{tmp 2445}#
- (@apply
- (lambda ()
- (#{check 2331}#
- #{req 2437}#
- #{opt 2438}#
- #f
- (cons #f (reverse #{rkey 2439}#))))
- #{tmp 2445}#)
- (let ((#{tmp 2446}#
- ($sc-dispatch #{tmp 2444}# '(any . any))))
- (if (if #{tmp 2446}#
- (@apply
- (lambda (#{a 2449}# #{b 2450}#)
- (#{id? 376}# #{a 2449}#))
- #{tmp 2446}#)
- #f)
- (@apply
- (lambda (#{a 2453}# #{b 2454}#)
- (let ((#{tmp 2456}#
- (symbol->keyword
- (syntax->datum #{a 2453}#))))
- (let ((#{k 2458}# #{tmp 2456}#))
- (#{key 2327}#
- #{b 2454}#
- #{req 2437}#
- #{opt 2438}#
- (cons (cons #{k 2458}#
- (cons #{a 2453}#
- '(#(syntax-object
- #f
- ((top)
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(k)
- #((top))
- #("i2457"))
- #(ribcage
- #(a b)
- #((top) (top))
- #("i2451"
- "i2452"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(args
- req
- opt
- rkey)
- #((top)
- (top)
- (top)
- (top))
- #("i2440"
- "i2441"
- "i2442"
- "i2443"))
- #(ribcage
- (check rest
- key
- opt
- req)
- ((top)
- (top)
- (top)
- (top)
- (top))
- ("i2330"
- "i2328"
- "i2326"
- "i2324"
- "i2322"))
- #(ribcage
- #(orig-args)
- #((top))
- #("i2321"))
- #(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
- 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
-
build-global-assignment
-
build-global-reference
-
analyze-variable
-
build-lexical-assignment
-
build-lexical-reference
- build-dynlet
-
build-conditional
-
build-application
- build-void
-
maybe-name-value!
-
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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
-
(define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top)
- (top)
- (top)
- (top))
- ("i41"
- "i40"
- "i39"
- "i37")))
- (hygiene guile)))))
- #{rkey 2439}#)))))
- #{tmp 2446}#)
- (let ((#{tmp 2459}#
- ($sc-dispatch
- #{tmp 2444}#
- '((any any) . any))))
- (if (if #{tmp 2459}#
- (@apply
- (lambda (#{a 2463}#
- #{init 2464}#
- #{b 2465}#)
- (#{id? 376}# #{a 2463}#))
- #{tmp 2459}#)
- #f)
- (@apply
- (lambda (#{a 2469}# #{init 2470}# #{b 2471}#)
- (let ((#{tmp 2473}#
- (symbol->keyword
- (syntax->datum #{a 2469}#))))
- (let ((#{k 2475}# #{tmp 2473}#))
- (#{key 2327}#
- #{b 2471}#
- #{req 2437}#
- #{opt 2438}#
- (cons (list #{k 2475}#
- #{a 2469}#
- #{init 2470}#)
- #{rkey 2439}#)))))
- #{tmp 2459}#)
- (let ((#{tmp 2476}#
- ($sc-dispatch
- #{tmp 2444}#
- '((any any any) . any))))
- (if (if #{tmp 2476}#
- (@apply
- (lambda (#{a 2481}#
- #{init 2482}#
- #{k 2483}#
- #{b 2484}#)
- (if (#{id? 376}# #{a 2481}#)
- (keyword?
- (syntax->datum #{k 2483}#))
- #f))
- #{tmp 2476}#)
- #f)
- (@apply
- (lambda (#{a 2491}#
- #{init 2492}#
- #{k 2493}#
- #{b 2494}#)
- (#{key 2327}#
- #{b 2494}#
- #{req 2437}#
- #{opt 2438}#
- (cons (list #{k 2493}#
- #{a 2491}#
- #{init 2492}#)
- #{rkey 2439}#)))
- #{tmp 2476}#)
- (let ((#{tmp 2495}#
- ($sc-dispatch
- #{tmp 2444}#
- '(any))))
- (if (if #{tmp 2495}#
- (@apply
- (lambda (#{aok 2497}#)
- (eq? (syntax->datum
- #{aok 2497}#)
- #:allow-other-keys))
- #{tmp 2495}#)
- #f)
- (@apply
- (lambda (#{aok 2499}#)
- (#{check 2331}#
- #{req 2437}#
- #{opt 2438}#
- #f
- (cons #t
- (reverse #{rkey 2439}#))))
- #{tmp 2495}#)
- (let ((#{tmp 2500}#
- ($sc-dispatch
- #{tmp 2444}#
- '(any any any))))
- (if (if #{tmp 2500}#
- (@apply
- (lambda (#{aok 2504}#
- #{a 2505}#
- #{b 2506}#)
- (if (eq? (syntax->datum
- #{aok 2504}#)
-
#:allow-other-keys)
- (eq? (syntax->datum
- #{a 2505}#)
- #:rest)
- #f))
- #{tmp 2500}#)
- #f)
- (@apply
- (lambda (#{aok 2512}#
- #{a 2513}#
- #{b 2514}#)
- (#{rest 2329}#
- #{b 2514}#
- #{req 2437}#
- #{opt 2438}#
- (cons #t
- (reverse
- #{rkey 2439}#))))
- #{tmp 2500}#)
- (let ((#{tmp 2515}#
- ($sc-dispatch
- #{tmp 2444}#
- '(any . any))))
- (if (if #{tmp 2515}#
- (@apply
- (lambda (#{aok 2518}#
- #{r 2519}#)
- (if (eq? (syntax->datum
- #{aok
2518}#)
-
#:allow-other-keys)
- (#{id? 376}#
- #{r 2519}#)
- #f))
- #{tmp 2515}#)
- #f)
- (@apply
- (lambda (#{aok 2524}#
- #{r 2525}#)
- (#{rest 2329}#
- #{r 2525}#
- #{req 2437}#
- #{opt 2438}#
- (cons #t
- (reverse
- #{rkey 2439}#))))
- #{tmp 2515}#)
- (let ((#{tmp 2526}#
- ($sc-dispatch
- #{tmp 2444}#
- '(any any))))
- (if (if #{tmp 2526}#
- (@apply
- (lambda (#{a 2529}#
- #{b 2530}#)
- (eq? (syntax->datum
- #{a 2529}#)
- #:rest))
- #{tmp 2526}#)
- #f)
- (@apply
- (lambda (#{a 2533}#
- #{b 2534}#)
- (#{rest 2329}#
- #{b 2534}#
- #{req 2437}#
- #{opt 2438}#
- (cons #f
- (reverse
- #{rkey
2439}#))))
- #{tmp 2526}#)
- (let ((#{tmp 2535}#
- (list #{tmp
2444}#)))
- (if (if #{tmp 2535}#
- (@apply
- (lambda (#{r
2537}#)
- (#{id? 376}#
- #{r 2537}#))
- #{tmp 2535}#)
- #f)
- (@apply
- (lambda (#{r 2539}#)
- (#{rest 2329}#
- #{r 2539}#
- #{req 2437}#
- #{opt 2438}#
- (cons #f
- (reverse
- #{rkey
2439}#))))
- #{tmp 2535}#)
- (let ((#{else 2541}#
- #{tmp 2444}#))
- (syntax-violation
- 'lambda*
- "invalid keyword
argument list"
- #{orig-args 2320}#
- #{args
2436}#)))))))))))))))))))))))
- (#{rest 2329}#
- (lambda (#{args 2542}#
- #{req 2543}#
- #{opt 2544}#
- #{kw 2545}#)
- (let ((#{tmp 2550}# #{args 2542}#))
- (let ((#{tmp 2551}# (list #{tmp 2550}#)))
- (if (if #{tmp 2551}#
- (@apply
- (lambda (#{r 2553}#) (#{id? 376}# #{r 2553}#))
- #{tmp 2551}#)
- #f)
- (@apply
- (lambda (#{r 2555}#)
- (#{check 2331}#
- #{req 2543}#
- #{opt 2544}#
- #{r 2555}#
- #{kw 2545}#))
- #{tmp 2551}#)
- (let ((#{else 2557}# #{tmp 2550}#))
- (syntax-violation
- 'lambda*
- "invalid rest argument"
- #{orig-args 2320}#
- #{args 2542}#)))))))
- (#{check 2331}#
- (lambda (#{req 2558}#
- #{opt 2559}#
- #{rest 2560}#
- #{kw 2561}#)
- (if (#{distinct-bound-ids? 438}#
- (append
- #{req 2558}#
- (map car #{opt 2559}#)
- (if #{rest 2560}# (list #{rest 2560}#) '())
- (if (pair? #{kw 2561}#)
- (map cadr (cdr #{kw 2561}#))
- '())))
- (values
- #{req 2558}#
- #{opt 2559}#
- #{rest 2560}#
- #{kw 2561}#)
- (syntax-violation
- 'lambda*
- "duplicate identifier in argument list"
- #{orig-args 2320}#)))))
- (begin (#{req 2323}# #{orig-args 2320}# '())))))
- (#{chi-lambda-case 480}#
- (lambda (#{e 2569}#
- #{r 2570}#
- #{w 2571}#
- #{s 2572}#
- #{mod 2573}#
- #{get-formals 2574}#
- #{clauses 2575}#)
- (letrec*
- ((#{expand-req 2584}#
- (lambda (#{req 2591}#
- #{opt 2592}#
- #{rest 2593}#
- #{kw 2594}#
- #{body 2595}#)
- (begin
- (let ((#{vars 2603}#
- (map #{gen-var 484}# #{req 2591}#))
- (#{labels 2604}#
- (#{gen-labels 391}# #{req 2591}#)))
- (begin
- (let ((#{r* 2607}#
- (#{extend-var-env 366}#
- #{labels 2604}#
- #{vars 2603}#
- #{r 2570}#))
- (#{w* 2608}#
- (#{make-binding-wrap 420}#
- #{req 2591}#
- #{labels 2604}#
- #{w 2571}#)))
- (#{expand-opt 2586}#
- (map syntax->datum #{req 2591}#)
- #{opt 2592}#
- #{rest 2593}#
- #{kw 2594}#
- #{body 2595}#
- (reverse #{vars 2603}#)
- #{r* 2607}#
- #{w* 2608}#
- '()
- '())))))))
- (#{expand-opt 2586}#
- (lambda (#{req 2609}#
- #{opt 2610}#
- #{rest 2611}#
- #{kw 2612}#
- #{body 2613}#
- #{vars 2614}#
- #{r* 2615}#
- #{w* 2616}#
- #{out 2617}#
- #{inits 2618}#)
- (if (pair? #{opt 2610}#)
- (let ((#{tmp 2631}# (car #{opt 2610}#)))
- (let ((#{tmp 2632}#
- ($sc-dispatch #{tmp 2631}# '(any any))))
- (if #{tmp 2632}#
- (@apply
- (lambda (#{id 2635}# #{i 2636}#)
- (begin
- (let ((#{v 2639}#
- (#{gen-var 484}# #{id 2635}#)))
- (begin
- (let ((#{l 2641}#
- (#{gen-labels 391}#
- (list #{v 2639}#))))
- (begin
- (let ((#{r** 2643}#
- (#{extend-var-env 366}#
- #{l 2641}#
- (list #{v 2639}#)
- #{r* 2615}#)))
- (begin
- (let ((#{w** 2645}#
- (#{make-binding-wrap 420}#
- (list #{id 2635}#)
- #{l 2641}#
- #{w* 2616}#)))
- (#{expand-opt 2586}#
- #{req 2609}#
- (cdr #{opt 2610}#)
- #{rest 2611}#
- #{kw 2612}#
- #{body 2613}#
- (cons #{v 2639}# #{vars 2614}#)
- #{r** 2643}#
- #{w** 2645}#
- (cons (syntax->datum
- #{id 2635}#)
- #{out 2617}#)
- (cons (#{chi 456}#
- #{i 2636}#
- #{r* 2615}#
- #{w* 2616}#
- #{mod 2573}#)
- #{inits 2618}#)))))))))))
- #{tmp 2632}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2631}#))))
- (if #{rest 2611}#
- (begin
- (let ((#{v 2650}# (#{gen-var 484}# #{rest 2611}#)))
- (begin
- (let ((#{l 2652}#
- (#{gen-labels 391}# (list #{v 2650}#))))
- (begin
- (let ((#{r* 2654}#
- (#{extend-var-env 366}#
- #{l 2652}#
- (list #{v 2650}#)
- #{r* 2615}#)))
- (begin
- (let ((#{w* 2656}#
- (#{make-binding-wrap 420}#
- (list #{rest 2611}#)
- #{l 2652}#
- #{w* 2616}#)))
- (#{expand-kw 2588}#
- #{req 2609}#
- (if (pair? #{out 2617}#)
- (reverse #{out 2617}#)
- #f)
- (syntax->datum #{rest 2611}#)
- (if (pair? #{kw 2612}#)
- (cdr #{kw 2612}#)
- #{kw 2612}#)
- #{body 2613}#
- (cons #{v 2650}# #{vars 2614}#)
- #{r* 2654}#
- #{w* 2656}#
- (if (pair? #{kw 2612}#)
- (car #{kw 2612}#)
- #f)
- '()
- #{inits 2618}#)))))))))
- (#{expand-kw 2588}#
- #{req 2609}#
- (if (pair? #{out 2617}#)
- (reverse #{out 2617}#)
- #f)
- #f
- (if (pair? #{kw 2612}#)
- (cdr #{kw 2612}#)
- #{kw 2612}#)
- #{body 2613}#
- #{vars 2614}#
- #{r* 2615}#
- #{w* 2616}#
- (if (pair? #{kw 2612}#) (car #{kw 2612}#) #f)
- '()
- #{inits 2618}#)))))
- (#{expand-kw 2588}#
- (lambda (#{req 2658}#
- #{opt 2659}#
- #{rest 2660}#
- #{kw 2661}#
- #{body 2662}#
- #{vars 2663}#
- #{r* 2664}#
- #{w* 2665}#
- #{aok 2666}#
- #{out 2667}#
- #{inits 2668}#)
- (if (pair? #{kw 2661}#)
- (let ((#{tmp 2682}# (car #{kw 2661}#)))
- (let ((#{tmp 2683}#
- ($sc-dispatch #{tmp 2682}# '(any any any))))
- (if #{tmp 2683}#
- (@apply
- (lambda (#{k 2687}# #{id 2688}# #{i 2689}#)
- (begin
- (let ((#{v 2692}#
- (#{gen-var 484}# #{id 2688}#)))
- (begin
- (let ((#{l 2694}#
- (#{gen-labels 391}#
- (list #{v 2692}#))))
- (begin
- (let ((#{r** 2696}#
- (#{extend-var-env 366}#
- #{l 2694}#
- (list #{v 2692}#)
- #{r* 2664}#)))
- (begin
- (let ((#{w** 2698}#
- (#{make-binding-wrap 420}#
- (list #{id 2688}#)
- #{l 2694}#
- #{w* 2665}#)))
- (#{expand-kw 2588}#
- #{req 2658}#
- #{opt 2659}#
- #{rest 2660}#
- (cdr #{kw 2661}#)
- #{body 2662}#
- (cons #{v 2692}# #{vars 2663}#)
- #{r** 2696}#
- #{w** 2698}#
- #{aok 2666}#
- (cons (list (syntax->datum
- #{k 2687}#)
- (syntax->datum
- #{id 2688}#)
- #{v 2692}#)
- #{out 2667}#)
- (cons (#{chi 456}#
- #{i 2689}#
- #{r* 2664}#
- #{w* 2665}#
- #{mod 2573}#)
- #{inits 2668}#)))))))))))
- #{tmp 2683}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2682}#))))
- (#{expand-body 2590}#
- #{req 2658}#
- #{opt 2659}#
- #{rest 2660}#
- (if (begin
- (let ((#{t 2702}# #{aok 2666}#))
- (if #{t 2702}# #{t 2702}# (pair? #{out 2667}#))))
- (cons #{aok 2666}# (reverse #{out 2667}#))
- #f)
- #{body 2662}#
- (reverse #{vars 2663}#)
- #{r* 2664}#
- #{w* 2665}#
- (reverse #{inits 2668}#)
- '()))))
- (#{expand-body 2590}#
- (lambda (#{req 2704}#
- #{opt 2705}#
- #{rest 2706}#
- #{kw 2707}#
- #{body 2708}#
- #{vars 2709}#
- #{r* 2710}#
- #{w* 2711}#
- #{inits 2712}#
- #{meta 2713}#)
- (let ((#{tmp 2724}# #{body 2708}#))
- (let ((#{tmp 2725}#
- ($sc-dispatch #{tmp 2724}# '(any any . each-any))))
- (if (if #{tmp 2725}#
- (@apply
- (lambda (#{docstring 2729}#
- #{e1 2730}#
- #{e2 2731}#)
- (string? (syntax->datum #{docstring 2729}#)))
- #{tmp 2725}#)
- #f)
- (@apply
- (lambda (#{docstring 2735}# #{e1 2736}# #{e2 2737}#)
- (#{expand-body 2590}#
- #{req 2704}#
- #{opt 2705}#
- #{rest 2706}#
- #{kw 2707}#
- (cons #{e1 2736}# #{e2 2737}#)
- #{vars 2709}#
- #{r* 2710}#
- #{w* 2711}#
- #{inits 2712}#
- (append
- #{meta 2713}#
- (list (cons 'documentation
- (syntax->datum
- #{docstring 2735}#))))))
- #{tmp 2725}#)
- (let ((#{tmp 2740}#
- ($sc-dispatch
- #{tmp 2724}#
- '(#(vector #(each (any . any)))
- any
- .
- each-any))))
- (if #{tmp 2740}#
- (@apply
- (lambda (#{k 2745}#
- #{v 2746}#
- #{e1 2747}#
- #{e2 2748}#)
- (#{expand-body 2590}#
- #{req 2704}#
- #{opt 2705}#
- #{rest 2706}#
- #{kw 2707}#
- (cons #{e1 2747}# #{e2 2748}#)
- #{vars 2709}#
- #{r* 2710}#
- #{w* 2711}#
- #{inits 2712}#
- (append
- #{meta 2713}#
- (syntax->datum
- (map cons #{k 2745}# #{v 2746}#)))))
- #{tmp 2740}#)
- (let ((#{tmp 2752}#
- ($sc-dispatch
- #{tmp 2724}#
- '(any . each-any))))
- (if #{tmp 2752}#
- (@apply
- (lambda (#{e1 2755}# #{e2 2756}#)
- (values
- #{meta 2713}#
- #{req 2704}#
- #{opt 2705}#
- #{rest 2706}#
- #{kw 2707}#
- #{inits 2712}#
- #{vars 2709}#
- (#{chi-body 464}#
- (cons #{e1 2755}# #{e2 2756}#)
- (#{source-wrap 444}#
- #{e 2569}#
- #{w 2571}#
- #{s 2572}#
- #{mod 2573}#)
- #{r* 2710}#
- #{w* 2711}#
- #{mod 2573}#)))
- #{tmp 2752}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp 2724}#)))))))))))
- (begin
- (let ((#{tmp 2758}# #{clauses 2575}#))
- (let ((#{tmp 2759}# ($sc-dispatch #{tmp 2758}# '())))
- (if #{tmp 2759}#
- (@apply (lambda () (values '() #f)) #{tmp 2759}#)
- (let ((#{tmp 2760}#
- ($sc-dispatch
- #{tmp 2758}#
- '((any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 2760}#
- (@apply
- (lambda (#{args 2767}#
- #{e1 2768}#
- #{e2 2769}#
- #{args* 2770}#
- #{e1* 2771}#
- #{e2* 2772}#)
- (call-with-values
- (lambda () (#{get-formals 2574}# #{args 2767}#))
- (lambda (#{req 2773}#
- #{opt 2774}#
- #{rest 2775}#
- #{kw 2776}#)
- (call-with-values
- (lambda ()
- (#{expand-req 2584}#
- #{req 2773}#
- #{opt 2774}#
- #{rest 2775}#
- #{kw 2776}#
- (cons #{e1 2768}# #{e2 2769}#)))
- (lambda (#{meta 2782}#
- #{req 2783}#
- #{opt 2784}#
- #{rest 2785}#
- #{kw 2786}#
- #{inits 2787}#
- #{vars 2788}#
- #{body 2789}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 480}#
- #{e 2569}#
- #{r 2570}#
- #{w 2571}#
- #{s 2572}#
- #{mod 2573}#
- #{get-formals 2574}#
- (map (lambda (#{tmp 2800}#
- #{tmp 2799}#
- #{tmp 2798}#)
- (cons #{tmp 2798}#
- (cons #{tmp 2799}#
- #{tmp 2800}#)))
- #{e2* 2772}#
- #{e1* 2771}#
- #{args* 2770}#)))
- (lambda (#{meta* 2802}# #{else* 2803}#)
- (values
- (append
- #{meta 2782}#
- #{meta* 2802}#)
- (#{build-lambda-case 324}#
- #{s 2572}#
- #{req 2783}#
- #{opt 2784}#
- #{rest 2785}#
- #{kw 2786}#
- #{inits 2787}#
- #{vars 2788}#
- #{body 2789}#
- #{else* 2803}#)))))))))
- #{tmp 2760}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2758}#))))))))))
- (#{strip 482}#
- (lambda (#{x 2806}# #{w 2807}#)
- (if (memq 'top (car #{w 2807}#))
- #{x 2806}#
- (letrec*
- ((#{f 2814}#
- (lambda (#{x 2815}#)
- (if (#{syntax-object? 342}# #{x 2815}#)
- (#{strip 482}#
- (#{syntax-object-expression 344}# #{x 2815}#)
- (#{syntax-object-wrap 346}# #{x 2815}#))
- (if (pair? #{x 2815}#)
- (begin
- (let ((#{a 2822}# (#{f 2814}# (car #{x 2815}#)))
- (#{d 2823}# (#{f 2814}# (cdr #{x 2815}#))))
- (if (if (eq? #{a 2822}# (car #{x 2815}#))
- (eq? #{d 2823}# (cdr #{x 2815}#))
- #f)
- #{x 2815}#
- (cons #{a 2822}# #{d 2823}#))))
- (if (vector? #{x 2815}#)
- (begin
- (let ((#{old 2829}# (vector->list #{x 2815}#)))
- (begin
- (let ((#{new 2831}#
- (map #{f 2814}# #{old 2829}#)))
- (if (#{and-map* 38}#
- eq?
- #{old 2829}#
- #{new 2831}#)
- #{x 2815}#
- (list->vector #{new 2831}#))))))
- #{x 2815}#))))))
- (begin (#{f 2814}# #{x 2806}#))))))
- (#{gen-var 484}#
- (lambda (#{id 2833}#)
- (begin
- (let ((#{id 2836}#
- (if (#{syntax-object? 342}# #{id 2833}#)
- (#{syntax-object-expression 344}# #{id 2833}#)
- #{id 2833}#)))
- (gensym
- (string-append (symbol->string #{id 2836}#) " "))))))
- (#{lambda-var-list 486}#
- (lambda (#{vars 2838}#)
- (letrec*
- ((#{lvl 2844}#
- (lambda (#{vars 2845}# #{ls 2846}# #{w 2847}#)
- (if (pair? #{vars 2845}#)
- (#{lvl 2844}#
- (cdr #{vars 2845}#)
- (cons (#{wrap 442}# (car #{vars 2845}#) #{w 2847}# #f)
- #{ls 2846}#)
- #{w 2847}#)
- (if (#{id? 376}# #{vars 2845}#)
- (cons (#{wrap 442}# #{vars 2845}# #{w 2847}# #f)
- #{ls 2846}#)
- (if (null? #{vars 2845}#)
- #{ls 2846}#
- (if (#{syntax-object? 342}# #{vars 2845}#)
- (#{lvl 2844}#
- (#{syntax-object-expression 344}# #{vars 2845}#)
- #{ls 2846}#
- (#{join-wraps 424}#
- #{w 2847}#
- (#{syntax-object-wrap 346}# #{vars 2845}#)))
- (cons #{vars 2845}# #{ls 2846}#))))))))
- (begin (#{lvl 2844}# #{vars 2838}# '() '(())))))))
- (begin
- (lambda (#{src 804}# #{name 805}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 2)
- #{src 804}#
- #{name 805}#))
- (lambda (#{x 1182}# #{update 1183}#)
- (vector-set! #{x 1182}# 1 #{update 1183}#))
- (lambda (#{x 1186}# #{update 1187}#)
- (vector-set! #{x 1186}# 2 #{update 1187}#))
- (lambda (#{x 1190}# #{update 1191}#)
- (vector-set! #{x 1190}# 3 #{update 1191}#))
- (lambda (#{x 1271}#)
- (if (vector? #{x 1271}#)
- (if (= (vector-length #{x 1271}#) 4)
- (eq? (vector-ref #{x 1271}# 0) 'ribcage)
- #f)
- #f))
- (begin
- (#{global-extend 372}#
- 'local-syntax
- 'letrec-syntax
- #t)
- (#{global-extend 372}#
- 'local-syntax
- 'let-syntax
- #f)
- (#{global-extend 372}#
- 'core
- 'fluid-let-syntax
- (lambda (#{e 2858}#
- #{r 2859}#
- #{w 2860}#
- #{s 2861}#
- #{mod 2862}#)
- (let ((#{tmp 2868}# #{e 2858}#))
- (let ((#{tmp 2869}#
- ($sc-dispatch
- #{tmp 2868}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 2869}#
- (@apply
- (lambda (#{var 2874}#
- #{val 2875}#
- #{e1 2876}#
- #{e2 2877}#)
- (#{valid-bound-ids? 436}# #{var 2874}#))
- #{tmp 2869}#)
- #f)
- (@apply
- (lambda (#{var 2883}#
- #{val 2884}#
- #{e1 2885}#
- #{e2 2886}#)
- (begin
- (let ((#{names 2888}#
- (map (lambda (#{x 2889}#)
- (#{id-var-name 430}#
- #{x 2889}#
- #{w 2860}#))
- #{var 2883}#)))
- (begin
- (for-each
- (lambda (#{id 2892}# #{n 2893}#)
- (begin
- (let ((#{atom-key 2898}#
- (car (#{lookup 370}#
- #{n 2893}#
- #{r 2859}#
- #{mod 2862}#))))
- (if (eqv? #{atom-key 2898}#
- 'displaced-lexical)
- (syntax-violation
- 'fluid-let-syntax
- "identifier out of context"
- #{e 2858}#
- (#{source-wrap 444}#
- #{id 2892}#
- #{w 2860}#
- #{s 2861}#
- #{mod 2862}#))))))
- #{var 2883}#
- #{names 2888}#)
- (#{chi-body 464}#
- (cons #{e1 2885}# #{e2 2886}#)
- (#{source-wrap 444}#
- #{e 2858}#
- #{w 2860}#
- #{s 2861}#
- #{mod 2862}#)
- (#{extend-env 364}#
- #{names 2888}#
- (begin
- (let ((#{trans-r 2904}#
- (#{macros-only-env 368}#
- #{r 2859}#)))
- (map (lambda (#{x 2905}#)
- (cons 'macro
- (#{eval-local-transformer
468}#
- (#{chi 456}#
- #{x 2905}#
- #{trans-r 2904}#
- #{w 2860}#
- #{mod 2862}#)
- #{mod 2862}#)))
- #{val 2884}#)))
- #{r 2859}#)
- #{w 2860}#
- #{mod 2862}#)))))
- #{tmp 2869}#)
- (let ((#{_ 2910}# #{tmp 2868}#))
- (syntax-violation
- 'fluid-let-syntax
- "bad syntax"
- (#{source-wrap 444}#
- #{e 2858}#
- #{w 2860}#
- #{s 2861}#
- #{mod 2862}#))))))))
- (#{global-extend 372}#
- 'core
- 'quote
- (lambda (#{e 2911}#
- #{r 2912}#
- #{w 2913}#
- #{s 2914}#
- #{mod 2915}#)
- (let ((#{tmp 2921}# #{e 2911}#))
- (let ((#{tmp 2922}#
- ($sc-dispatch #{tmp 2921}# '(_ any))))
- (if #{tmp 2922}#
- (@apply
- (lambda (#{e 2924}#)
- (#{build-data 328}#
- #{s 2914}#
- (#{strip 482}# #{e 2924}# #{w 2913}#)))
- #{tmp 2922}#)
- (let ((#{_ 2926}# #{tmp 2921}#))
- (syntax-violation
- 'quote
- "bad syntax"
- (#{source-wrap 444}#
- #{e 2911}#
- #{w 2913}#
- #{s 2914}#
- #{mod 2915}#))))))))
- (#{global-extend 372}#
- 'core
- 'syntax
- (letrec*
- ((#{gen-syntax 2928}#
- (lambda (#{src 2943}#
- #{e 2944}#
- #{r 2945}#
- #{maps 2946}#
- #{ellipsis? 2947}#
- #{mod 2948}#)
- (if (#{id? 376}# #{e 2944}#)
- (begin
- (let ((#{label 2956}#
- (#{id-var-name 430}# #{e 2944}# '(()))))
- (begin
- (let ((#{b 2959}#
- (#{lookup 370}#
- #{label 2956}#
- #{r 2945}#
- #{mod 2948}#)))
- (if (eq? (car #{b 2959}#) 'syntax)
- (call-with-values
- (lambda ()
- (begin
- (let ((#{var.lev 2962}# (cdr #{b 2959}#)))
- (#{gen-ref 2930}#
- #{src 2943}#
- (car #{var.lev 2962}#)
- (cdr #{var.lev 2962}#)
- #{maps 2946}#))))
- (lambda (#{var 2964}# #{maps 2965}#)
- (values
- (list 'ref #{var 2964}#)
- #{maps 2965}#)))
- (if (#{ellipsis? 2947}# #{e 2944}#)
- (syntax-violation
- 'syntax
- "misplaced ellipsis"
- #{src 2943}#)
- (values
- (list 'quote #{e 2944}#)
- #{maps 2946}#)))))))
- (let ((#{tmp 2970}# #{e 2944}#))
- (let ((#{tmp 2971}#
- ($sc-dispatch #{tmp 2970}# '(any any))))
- (if (if #{tmp 2971}#
- (@apply
- (lambda (#{dots 2974}# #{e 2975}#)
- (#{ellipsis? 2947}# #{dots 2974}#))
- #{tmp 2971}#)
- #f)
- (@apply
- (lambda (#{dots 2978}# #{e 2979}#)
- (#{gen-syntax 2928}#
- #{src 2943}#
- #{e 2979}#
- #{r 2945}#
- #{maps 2946}#
- (lambda (#{x 2980}#) #f)
- #{mod 2948}#))
- #{tmp 2971}#)
- (let ((#{tmp 2982}#
- ($sc-dispatch
- #{tmp 2970}#
- '(any any . any))))
- (if (if #{tmp 2982}#
- (@apply
- (lambda (#{x 2986}#
- #{dots 2987}#
- #{y 2988}#)
- (#{ellipsis? 2947}# #{dots 2987}#))
- #{tmp 2982}#)
- #f)
- (@apply
- (lambda (#{x 2992}# #{dots 2993}# #{y 2994}#)
- (letrec*
- ((#{f 2998}#
- (lambda (#{y 2999}# #{k 3000}#)
- (let ((#{tmp 3007}# #{y 2999}#))
- (let ((#{tmp 3008}#
- ($sc-dispatch
- #{tmp 3007}#
- '(any . any))))
- (if (if #{tmp 3008}#
- (@apply
- (lambda (#{dots 3011}#
- #{y 3012}#)
- (#{ellipsis? 2947}#
- #{dots 3011}#))
- #{tmp 3008}#)
- #f)
- (@apply
- (lambda (#{dots 3015}#
- #{y 3016}#)
- (#{f 2998}#
- #{y 3016}#
- (lambda (#{maps 3017}#)
- (call-with-values
- (lambda ()
- (#{k 3000}#
- (cons '()
- #{maps
3017}#)))
- (lambda (#{x 3019}#
- #{maps
3020}#)
- (if (null? (car
#{maps 3020}#))
- (syntax-violation
- 'syntax
- "extra
ellipsis"
- #{src 2943}#)
- (values
- (#{gen-mappend
2932}#
- #{x 3019}#
- (car #{maps
3020}#))
- (cdr #{maps
3020}#))))))))
- #{tmp 3008}#)
- (let ((#{_ 3024}#
- #{tmp 3007}#))
- (call-with-values
- (lambda ()
- (#{gen-syntax 2928}#
- #{src 2943}#
- #{y 2999}#
- #{r 2945}#
- #{maps 2946}#
- #{ellipsis? 2947}#
- #{mod 2948}#))
- (lambda (#{y 3025}#
- #{maps 3026}#)
- (call-with-values
- (lambda ()
- (#{k 3000}#
- #{maps 3026}#))
- (lambda (#{x 3029}#
- #{maps 3030}#)
- (values
- (#{gen-append
2938}#
- #{x 3029}#
- #{y 3025}#)
- #{maps
3030}#))))))))))))
- (begin
- (#{f 2998}#
- #{y 2994}#
- (lambda (#{maps 3001}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2928}#
- #{src 2943}#
- #{x 2992}#
- #{r 2945}#
- (cons '() #{maps 3001}#)
- #{ellipsis? 2947}#
- #{mod 2948}#))
- (lambda (#{x 3003}# #{maps 3004}#)
- (if (null? (car #{maps 3004}#))
- (syntax-violation
- 'syntax
- "extra ellipsis"
- #{src 2943}#)
- (values
- (#{gen-map 2934}#
- #{x 3003}#
- (car #{maps 3004}#))
- (cdr #{maps 3004}#))))))))))
- #{tmp 2982}#)
- (let ((#{tmp 3033}#
- ($sc-dispatch
- #{tmp 2970}#
- '(any . any))))
- (if #{tmp 3033}#
- (@apply
- (lambda (#{x 3036}# #{y 3037}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2928}#
- #{src 2943}#
- #{x 3036}#
- #{r 2945}#
- #{maps 2946}#
- #{ellipsis? 2947}#
- #{mod 2948}#))
- (lambda (#{x 3038}# #{maps 3039}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2928}#
- #{src 2943}#
- #{y 3037}#
- #{r 2945}#
- #{maps 3039}#
- #{ellipsis? 2947}#
- #{mod 2948}#))
- (lambda (#{y 3042}# #{maps 3043}#)
- (values
- (#{gen-cons 2936}#
- #{x 3038}#
- #{y 3042}#)
- #{maps 3043}#))))))
- #{tmp 3033}#)
- (let ((#{tmp 3046}#
- ($sc-dispatch
- #{tmp 2970}#
- '#(vector (any . each-any)))))
- (if #{tmp 3046}#
- (@apply
- (lambda (#{e1 3049}# #{e2 3050}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2928}#
- #{src 2943}#
- (cons #{e1 3049}# #{e2 3050}#)
- #{r 2945}#
- #{maps 2946}#
- #{ellipsis? 2947}#
- #{mod 2948}#))
- (lambda (#{e 3052}# #{maps 3053}#)
- (values
- (#{gen-vector 2940}#
- #{e 3052}#)
- #{maps 3053}#))))
- #{tmp 3046}#)
- (let ((#{_ 3057}# #{tmp 2970}#))
- (values
- (list 'quote #{e 2944}#)
- #{maps 2946}#))))))))))))))
- (#{gen-ref 2930}#
- (lambda (#{src 3059}#
- #{var 3060}#
- #{level 3061}#
- #{maps 3062}#)
- (if (= #{level 3061}# 0)
- (values #{var 3060}# #{maps 3062}#)
- (if (null? #{maps 3062}#)
- (syntax-violation
- 'syntax
- "missing ellipsis"
- #{src 3059}#)
- (call-with-values
- (lambda ()
- (#{gen-ref 2930}#
- #{src 3059}#
- #{var 3060}#
- (#{1-}# #{level 3061}#)
- (cdr #{maps 3062}#)))
- (lambda (#{outer-var 3069}# #{outer-maps 3070}#)
- (begin
- (let ((#{b 3074}#
- (assq #{outer-var 3069}#
- (car #{maps 3062}#))))
- (if #{b 3074}#
- (values (cdr #{b 3074}#) #{maps 3062}#)
- (begin
- (let ((#{inner-var 3076}#
- (#{gen-var 484}# 'tmp)))
- (values
- #{inner-var 3076}#
- (cons (cons (cons #{outer-var 3069}#
- #{inner-var 3076}#)
- (car #{maps 3062}#))
- #{outer-maps 3070}#)))))))))))))
- (#{gen-mappend 2932}#
- (lambda (#{e 3077}# #{map-env 3078}#)
- (list 'apply
- '(primitive append)
- (#{gen-map 2934}# #{e 3077}# #{map-env 3078}#))))
- (#{gen-map 2934}#
- (lambda (#{e 3082}# #{map-env 3083}#)
- (begin
- (let ((#{formals 3088}# (map cdr #{map-env 3083}#))
- (#{actuals 3089}#
- (map (lambda (#{x 3090}#)
- (list 'ref (car #{x 3090}#)))
- #{map-env 3083}#)))
- (if (eq? (car #{e 3082}#) 'ref)
- (car #{actuals 3089}#)
- (if (and-map
- (lambda (#{x 3097}#)
- (if (eq? (car #{x 3097}#) 'ref)
- (memq (car (cdr #{x 3097}#))
- #{formals 3088}#)
- #f))
- (cdr #{e 3082}#))
- (cons 'map
- (cons (list 'primitive (car #{e 3082}#))
- (map (begin
- (let ((#{r 3103}#
- (map cons
- #{formals 3088}#
- #{actuals 3089}#)))
- (lambda (#{x 3104}#)
- (cdr (assq (car (cdr #{x
3104}#))
- #{r 3103}#)))))
- (cdr #{e 3082}#))))
- (cons 'map
- (cons (list 'lambda
- #{formals 3088}#
- #{e 3082}#)
- #{actuals 3089}#))))))))
- (#{gen-cons 2936}#
- (lambda (#{x 3108}# #{y 3109}#)
- (begin
- (let ((#{atom-key 3114}# (car #{y 3109}#)))
- (if (eqv? #{atom-key 3114}# 'quote)
- (if (eq? (car #{x 3108}#) 'quote)
- (list 'quote
- (cons (car (cdr #{x 3108}#))
- (car (cdr #{y 3109}#))))
- (if (eq? (car (cdr #{y 3109}#)) '())
- (list 'list #{x 3108}#)
- (list 'cons #{x 3108}# #{y 3109}#)))
- (if (eqv? #{atom-key 3114}# 'list)
- (cons 'list (cons #{x 3108}# (cdr #{y 3109}#)))
- (list 'cons #{x 3108}# #{y 3109}#)))))))
- (#{gen-append 2938}#
- (lambda (#{x 3123}# #{y 3124}#)
- (if (equal? #{y 3124}# ''())
- #{x 3123}#
- (list 'append #{x 3123}# #{y 3124}#))))
- (#{gen-vector 2940}#
- (lambda (#{x 3128}#)
- (if (eq? (car #{x 3128}#) 'list)
- (cons 'vector (cdr #{x 3128}#))
- (if (eq? (car #{x 3128}#) 'quote)
- (list 'quote
- (list->vector (car (cdr #{x 3128}#))))
- (list 'list->vector #{x 3128}#)))))
- (#{regen 2942}#
- (lambda (#{x 3138}#)
- (begin
- (let ((#{atom-key 3142}# (car #{x 3138}#)))
- (if (eqv? #{atom-key 3142}# 'ref)
- (#{build-lexical-reference 308}#
- 'value
- #f
- (car (cdr #{x 3138}#))
- (car (cdr #{x 3138}#)))
- (if (eqv? #{atom-key 3142}# 'primitive)
- (#{build-primref 326}# #f (car (cdr #{x 3138}#)))
- (if (eqv? #{atom-key 3142}# 'quote)
- (#{build-data 328}# #f (car (cdr #{x 3138}#)))
- (if (eqv? #{atom-key 3142}# 'lambda)
- (if (list? (car (cdr #{x 3138}#)))
- (#{build-simple-lambda 320}#
- #f
- (car (cdr #{x 3138}#))
- #f
- (car (cdr #{x 3138}#))
- '()
- (#{regen 2942}#
- (car (cdr (cdr #{x 3138}#)))))
- (error "how did we get here" #{x 3138}#))
- (#{build-application 302}#
- #f
- (#{build-primref 326}# #f (car #{x 3138}#))
- (map #{regen 2942}#
- (cdr #{x 3138}#))))))))))))
- (begin
- (lambda (#{e 3154}#
- #{r 3155}#
- #{w 3156}#
- #{s 3157}#
- #{mod 3158}#)
- (begin
- (let ((#{e 3165}#
- (#{source-wrap 444}#
- #{e 3154}#
- #{w 3156}#
- #{s 3157}#
- #{mod 3158}#)))
- (let ((#{tmp 3166}# #{e 3165}#))
- (let ((#{tmp 3167}#
- ($sc-dispatch #{tmp 3166}# '(_ any))))
- (if #{tmp 3167}#
- (@apply
- (lambda (#{x 3169}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2928}#
- #{e 3165}#
- #{x 3169}#
- #{r 3155}#
- '()
- #{ellipsis? 472}#
- #{mod 3158}#))
- (lambda (#{e 3170}# #{maps 3171}#)
- (#{regen 2942}# #{e 3170}#))))
- #{tmp 3167}#)
- (let ((#{_ 3175}# #{tmp 3166}#))
- (syntax-violation
- 'syntax
- "bad `syntax' form"
- #{e 3165}#)))))))))))
- (#{global-extend 372}#
- 'core
- '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 . each-any))))
- (if #{tmp 3187}#
- (@apply
- (lambda (#{args 3191}# #{e1 3192}# #{e2 3193}#)
- (call-with-values
- (lambda ()
- (#{lambda-formals 474}# #{args 3191}#))
- (lambda (#{req 3194}#
- #{opt 3195}#
- #{rest 3196}#
- #{kw 3197}#)
- (letrec*
- ((#{lp 3205}#
- (lambda (#{body 3206}# #{meta 3207}#)
- (let ((#{tmp 3209}# #{body 3206}#))
- (let ((#{tmp 3210}#
- ($sc-dispatch
- #{tmp 3209}#
- '(any any . each-any))))
- (if (if #{tmp 3210}#
- (@apply
- (lambda (#{docstring 3214}#
- #{e1 3215}#
- #{e2 3216}#)
- (string?
- (syntax->datum
- #{docstring 3214}#)))
- #{tmp 3210}#)
- #f)
- (@apply
- (lambda (#{docstring 3220}#
- #{e1 3221}#
- #{e2 3222}#)
- (#{lp 3205}#
- (cons #{e1 3221}# #{e2 3222}#)
- (append
- #{meta 3207}#
- (list (cons 'documentation
- (syntax->datum
- #{docstring
3220}#))))))
- #{tmp 3210}#)
- (let ((#{tmp 3225}#
- ($sc-dispatch
- #{tmp 3209}#
- '(#(vector
- #(each (any . any)))
- any
- .
- each-any))))
- (if #{tmp 3225}#
- (@apply
- (lambda (#{k 3230}#
- #{v 3231}#
- #{e1 3232}#
- #{e2 3233}#)
- (#{lp 3205}#
- (cons #{e1 3232}#
- #{e2 3233}#)
- (append
- #{meta 3207}#
- (syntax->datum
- (map cons
- #{k 3230}#
- #{v 3231}#)))))
- #{tmp 3225}#)
- (let ((#{_ 3238}# #{tmp 3209}#))
- (#{chi-simple-lambda 476}#
- #{e 3176}#
- #{r 3177}#
- #{w 3178}#
- #{s 3179}#
- #{mod 3180}#
- #{req 3194}#
- #{rest 3196}#
- #{meta 3207}#
- #{body 3206}#))))))))))
- (begin
- (#{lp 3205}#
- (cons #{e1 3192}# #{e2 3193}#)
- '()))))))
- #{tmp 3187}#)
- (let ((#{_ 3240}# #{tmp 3186}#))
- (syntax-violation
- 'lambda
- "bad lambda"
- #{e 3176}#)))))))
- (#{global-extend 372}#
- 'core
- 'lambda*
- (lambda (#{e 3241}#
- #{r 3242}#
- #{w 3243}#
- #{s 3244}#
- #{mod 3245}#)
- (let ((#{tmp 3251}# #{e 3241}#))
- (let ((#{tmp 3252}#
- ($sc-dispatch
- #{tmp 3251}#
- '(_ any any . each-any))))
- (if #{tmp 3252}#
- (@apply
- (lambda (#{args 3256}# #{e1 3257}# #{e2 3258}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 480}#
- #{e 3241}#
- #{r 3242}#
- #{w 3243}#
- #{s 3244}#
- #{mod 3245}#
- #{lambda*-formals 478}#
- (list (cons #{args 3256}#
- (cons #{e1 3257}# #{e2 3258}#)))))
- (lambda (#{meta 3260}# #{lcase 3261}#)
- (#{build-case-lambda 322}#
- #{s 3244}#
- #{meta 3260}#
- #{lcase 3261}#))))
- #{tmp 3252}#)
- (let ((#{_ 3265}# #{tmp 3251}#))
- (syntax-violation
- 'lambda
- "bad lambda*"
- #{e 3241}#)))))))
- (#{global-extend 372}#
- 'core
- 'case-lambda
- (lambda (#{e 3266}#
- #{r 3267}#
- #{w 3268}#
- #{s 3269}#
- #{mod 3270}#)
- (let ((#{tmp 3276}# #{e 3266}#))
- (let ((#{tmp 3277}#
- ($sc-dispatch
- #{tmp 3276}#
- '(_ (any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 3277}#
- (@apply
- (lambda (#{args 3284}#
- #{e1 3285}#
- #{e2 3286}#
- #{args* 3287}#
- #{e1* 3288}#
- #{e2* 3289}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 480}#
- #{e 3266}#
- #{r 3267}#
- #{w 3268}#
- #{s 3269}#
- #{mod 3270}#
- #{lambda-formals 474}#
- (cons (cons #{args 3284}#
- (cons #{e1 3285}# #{e2 3286}#))
- (map (lambda (#{tmp 3293}#
- #{tmp 3292}#
- #{tmp 3291}#)
- (cons #{tmp 3291}#
- (cons #{tmp 3292}#
- #{tmp 3293}#)))
- #{e2* 3289}#
- #{e1* 3288}#
- #{args* 3287}#))))
- (lambda (#{meta 3295}# #{lcase 3296}#)
- (#{build-case-lambda 322}#
- #{s 3269}#
- #{meta 3295}#
- #{lcase 3296}#))))
- #{tmp 3277}#)
- (let ((#{_ 3300}# #{tmp 3276}#))
- (syntax-violation
- 'case-lambda
- "bad case-lambda"
- #{e 3266}#)))))))
- (#{global-extend 372}#
- 'core
- 'case-lambda*
- (lambda (#{e 3301}#
- #{r 3302}#
- #{w 3303}#
- #{s 3304}#
- #{mod 3305}#)
- (let ((#{tmp 3311}# #{e 3301}#))
- (let ((#{tmp 3312}#
- ($sc-dispatch
- #{tmp 3311}#
- '(_ (any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 3312}#
- (@apply
- (lambda (#{args 3319}#
- #{e1 3320}#
- #{e2 3321}#
- #{args* 3322}#
- #{e1* 3323}#
- #{e2* 3324}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 480}#
- #{e 3301}#
- #{r 3302}#
- #{w 3303}#
- #{s 3304}#
- #{mod 3305}#
- #{lambda*-formals 478}#
- (cons (cons #{args 3319}#
- (cons #{e1 3320}# #{e2 3321}#))
- (map (lambda (#{tmp 3328}#
- #{tmp 3327}#
- #{tmp 3326}#)
- (cons #{tmp 3326}#
- (cons #{tmp 3327}#
- #{tmp 3328}#)))
- #{e2* 3324}#
- #{e1* 3323}#
- #{args* 3322}#))))
- (lambda (#{meta 3330}# #{lcase 3331}#)
- (#{build-case-lambda 322}#
- #{s 3304}#
- #{meta 3330}#
- #{lcase 3331}#))))
- #{tmp 3312}#)
- (let ((#{_ 3335}# #{tmp 3311}#))
- (syntax-violation
- 'case-lambda
- "bad case-lambda*"
- #{e 3301}#)))))))
- (#{global-extend 372}#
- 'core
- 'let
- (letrec*
- ((#{chi-let 3337}#
- (lambda (#{e 3338}#
- #{r 3339}#
- #{w 3340}#
- #{s 3341}#
- #{mod 3342}#
- #{constructor 3343}#
- #{ids 3344}#
- #{vals 3345}#
- #{exps 3346}#)
- (if (not (#{valid-bound-ids? 436}# #{ids 3344}#))
- (syntax-violation
- 'let
- "duplicate bound variable"
- #{e 3338}#)
- (begin
- (let ((#{labels 3358}#
- (#{gen-labels 391}# #{ids 3344}#))
- (#{new-vars 3359}#
- (map #{gen-var 484}# #{ids 3344}#)))
- (begin
- (let ((#{nw 3362}#
- (#{make-binding-wrap 420}#
- #{ids 3344}#
- #{labels 3358}#
- #{w 3340}#))
- (#{nr 3363}#
- (#{extend-var-env 366}#
- #{labels 3358}#
- #{new-vars 3359}#
- #{r 3339}#)))
- (#{constructor 3343}#
- #{s 3341}#
- (map syntax->datum #{ids 3344}#)
- #{new-vars 3359}#
- (map (lambda (#{x 3364}#)
- (#{chi 456}#
- #{x 3364}#
- #{r 3339}#
- #{w 3340}#
- #{mod 3342}#))
- #{vals 3345}#)
- (#{chi-body 464}#
- #{exps 3346}#
- (#{source-wrap 444}#
- #{e 3338}#
- #{nw 3362}#
- #{s 3341}#
- #{mod 3342}#)
- #{nr 3363}#
- #{nw 3362}#
- #{mod 3342}#))))))))))
- (begin
- (lambda (#{e 3366}#
- #{r 3367}#
- #{w 3368}#
- #{s 3369}#
- #{mod 3370}#)
- (let ((#{tmp 3376}# #{e 3366}#))
- (let ((#{tmp 3377}#
- ($sc-dispatch
- #{tmp 3376}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 3377}#
- (@apply
- (lambda (#{id 3382}#
- #{val 3383}#
- #{e1 3384}#
- #{e2 3385}#)
- (and-map #{id? 376}# #{id 3382}#))
- #{tmp 3377}#)
- #f)
- (@apply
- (lambda (#{id 3391}#
- #{val 3392}#
- #{e1 3393}#
- #{e2 3394}#)
- (#{chi-let 3337}#
- #{e 3366}#
- #{r 3367}#
- #{w 3368}#
- #{s 3369}#
- #{mod 3370}#
- #{build-let 332}#
- #{id 3391}#
- #{val 3392}#
- (cons #{e1 3393}# #{e2 3394}#)))
- #{tmp 3377}#)
- (let ((#{tmp 3398}#
- ($sc-dispatch
- #{tmp 3376}#
- '(_ any #(each (any any)) any . each-any))))
- (if (if #{tmp 3398}#
- (@apply
- (lambda (#{f 3404}#
- #{id 3405}#
- #{val 3406}#
- #{e1 3407}#
- #{e2 3408}#)
- (if (#{id? 376}# #{f 3404}#)
- (and-map #{id? 376}# #{id 3405}#)
- #f))
- #{tmp 3398}#)
- #f)
- (@apply
- (lambda (#{f 3417}#
- #{id 3418}#
- #{val 3419}#
- #{e1 3420}#
- #{e2 3421}#)
- (#{chi-let 3337}#
- #{e 3366}#
- #{r 3367}#
- #{w 3368}#
- #{s 3369}#
- #{mod 3370}#
- #{build-named-let 334}#
- (cons #{f 3417}# #{id 3418}#)
- #{val 3419}#
- (cons #{e1 3420}# #{e2 3421}#)))
- #{tmp 3398}#)
- (let ((#{_ 3426}# #{tmp 3376}#))
- (syntax-violation
- 'let
- "bad let"
- (#{source-wrap 444}#
- #{e 3366}#
- #{w 3368}#
- #{s 3369}#
- #{mod 3370}#))))))))))))
- (#{global-extend 372}#
- 'core
- 'letrec
- (lambda (#{e 3427}#
- #{r 3428}#
- #{w 3429}#
- #{s 3430}#
- #{mod 3431}#)
- (let ((#{tmp 3437}# #{e 3427}#))
- (let ((#{tmp 3438}#
- ($sc-dispatch
- #{tmp 3437}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 3438}#
- (@apply
- (lambda (#{id 3443}#
- #{val 3444}#
- #{e1 3445}#
- #{e2 3446}#)
- (and-map #{id? 376}# #{id 3443}#))
- #{tmp 3438}#)
- #f)
- (@apply
- (lambda (#{id 3452}#
- #{val 3453}#
- #{e1 3454}#
- #{e2 3455}#)
- (begin
- (let ((#{ids 3457}# #{id 3452}#))
- (if (not (#{valid-bound-ids? 436}# #{ids 3457}#))
- (syntax-violation
- 'letrec
- "duplicate bound variable"
- #{e 3427}#)
- (begin
- (let ((#{labels 3461}#
- (#{gen-labels 391}# #{ids 3457}#))
- (#{new-vars 3462}#
- (map #{gen-var 484}# #{ids 3457}#)))
- (begin
- (let ((#{w 3465}#
- (#{make-binding-wrap 420}#
- #{ids 3457}#
- #{labels 3461}#
- #{w 3429}#))
- (#{r 3466}#
- (#{extend-var-env 366}#
- #{labels 3461}#
- #{new-vars 3462}#
- #{r 3428}#)))
- (#{build-letrec 336}#
- #{s 3430}#
- #f
- (map syntax->datum #{ids 3457}#)
- #{new-vars 3462}#
- (map (lambda (#{x 3467}#)
- (#{chi 456}#
- #{x 3467}#
- #{r 3466}#
- #{w 3465}#
- #{mod 3431}#))
- #{val 3453}#)
- (#{chi-body 464}#
- (cons #{e1 3454}# #{e2 3455}#)
- (#{source-wrap 444}#
- #{e 3427}#
- #{w 3465}#
- #{s 3430}#
- #{mod 3431}#)
- #{r 3466}#
- #{w 3465}#
- #{mod 3431}#))))))))))
- #{tmp 3438}#)
- (let ((#{_ 3472}# #{tmp 3437}#))
- (syntax-violation
- 'letrec
- "bad letrec"
- (#{source-wrap 444}#
- #{e 3427}#
- #{w 3429}#
- #{s 3430}#
- #{mod 3431}#))))))))
- (#{global-extend 372}#
- 'core
- 'letrec*
- (lambda (#{e 3473}#
- #{r 3474}#
- #{w 3475}#
- #{s 3476}#
- #{mod 3477}#)
- (let ((#{tmp 3483}# #{e 3473}#))
- (let ((#{tmp 3484}#
- ($sc-dispatch
- #{tmp 3483}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 3484}#
- (@apply
- (lambda (#{id 3489}#
- #{val 3490}#
- #{e1 3491}#
- #{e2 3492}#)
- (and-map #{id? 376}# #{id 3489}#))
- #{tmp 3484}#)
- #f)
- (@apply
- (lambda (#{id 3498}#
- #{val 3499}#
- #{e1 3500}#
- #{e2 3501}#)
- (begin
- (let ((#{ids 3503}# #{id 3498}#))
- (if (not (#{valid-bound-ids? 436}# #{ids 3503}#))
- (syntax-violation
- 'letrec*
- "duplicate bound variable"
- #{e 3473}#)
- (begin
- (let ((#{labels 3507}#
- (#{gen-labels 391}# #{ids 3503}#))
- (#{new-vars 3508}#
- (map #{gen-var 484}# #{ids 3503}#)))
- (begin
- (let ((#{w 3511}#
- (#{make-binding-wrap 420}#
- #{ids 3503}#
- #{labels 3507}#
- #{w 3475}#))
- (#{r 3512}#
- (#{extend-var-env 366}#
- #{labels 3507}#
- #{new-vars 3508}#
- #{r 3474}#)))
- (#{build-letrec 336}#
- #{s 3476}#
- #t
- (map syntax->datum #{ids 3503}#)
- #{new-vars 3508}#
- (map (lambda (#{x 3513}#)
- (#{chi 456}#
- #{x 3513}#
- #{r 3512}#
- #{w 3511}#
- #{mod 3477}#))
- #{val 3499}#)
- (#{chi-body 464}#
- (cons #{e1 3500}# #{e2 3501}#)
- (#{source-wrap 444}#
- #{e 3473}#
- #{w 3511}#
- #{s 3476}#
- #{mod 3477}#)
- #{r 3512}#
- #{w 3511}#
- #{mod 3477}#))))))))))
- #{tmp 3484}#)
- (let ((#{_ 3518}# #{tmp 3483}#))
- (syntax-violation
- 'letrec*
- "bad letrec*"
- (#{source-wrap 444}#
- #{e 3473}#
- #{w 3475}#
- #{s 3476}#
- #{mod 3477}#))))))))
- (#{global-extend 372}#
- 'core
- 'set!
- (lambda (#{e 3519}#
- #{r 3520}#
- #{w 3521}#
- #{s 3522}#
- #{mod 3523}#)
- (let ((#{tmp 3529}# #{e 3519}#))
- (let ((#{tmp 3530}#
- ($sc-dispatch #{tmp 3529}# '(_ any any))))
- (if (if #{tmp 3530}#
- (@apply
- (lambda (#{id 3533}# #{val 3534}#)
- (#{id? 376}# #{id 3533}#))
- #{tmp 3530}#)
- #f)
- (@apply
- (lambda (#{id 3537}# #{val 3538}#)
- (begin
- (let ((#{n 3541}#
- (#{id-var-name 430}# #{id 3537}# #{w 3521}#))
- (#{id-mod 3542}#
- (if (#{syntax-object? 342}# #{id 3537}#)
- (#{syntax-object-module 348}# #{id 3537}#)
- #{mod 3523}#)))
- (begin
- (let ((#{b 3544}#
- (#{lookup 370}#
- #{n 3541}#
- #{r 3520}#
- #{id-mod 3542}#)))
- (begin
- (let ((#{atom-key 3547}# (car #{b 3544}#)))
- (if (eqv? #{atom-key 3547}# 'lexical)
- (#{build-lexical-assignment 310}#
- #{s 3522}#
- (syntax->datum #{id 3537}#)
- (cdr #{b 3544}#)
- (#{chi 456}#
- #{val 3538}#
- #{r 3520}#
- #{w 3521}#
- #{mod 3523}#))
- (if (eqv? #{atom-key 3547}# 'global)
- (#{build-global-assignment 316}#
- #{s 3522}#
- #{n 3541}#
- (#{chi 456}#
- #{val 3538}#
- #{r 3520}#
- #{w 3521}#
- #{mod 3523}#)
- #{id-mod 3542}#)
- (if (eqv? #{atom-key 3547}# 'macro)
- (begin
- (let ((#{p 3554}#
- (cdr #{b 3544}#)))
- (if (procedure-property
- #{p 3554}#
- 'variable-transformer)
- (#{chi 456}#
- (#{chi-macro 462}#
- #{p 3554}#
- #{e 3519}#
- #{r 3520}#
- #{w 3521}#
- #{s 3522}#
- #f
- #{mod 3523}#)
- #{r 3520}#
- '(())
- #{mod 3523}#)
- (syntax-violation
- 'set!
- "not a variable transformer"
- (#{wrap 442}#
- #{e 3519}#
- #{w 3521}#
- #{mod 3523}#)
- (#{wrap 442}#
- #{id 3537}#
- #{w 3521}#
- #{id-mod 3542}#)))))
- (if (eqv? #{atom-key 3547}#
- 'displaced-lexical)
- (syntax-violation
- 'set!
- "identifier out of context"
- (#{wrap 442}#
- #{id 3537}#
- #{w 3521}#
- #{mod 3523}#))
- (syntax-violation
- 'set!
- "bad set!"
- (#{source-wrap 444}#
- #{e 3519}#
- #{w 3521}#
- #{s 3522}#
- #{mod 3523}#)))))))))))))
- #{tmp 3530}#)
- (let ((#{tmp 3559}#
- ($sc-dispatch
- #{tmp 3529}#
- '(_ (any . each-any) any))))
- (if #{tmp 3559}#
- (@apply
- (lambda (#{head 3563}# #{tail 3564}# #{val 3565}#)
- (call-with-values
- (lambda ()
- (#{syntax-type 454}#
- #{head 3563}#
- #{r 3520}#
- '(())
- #f
- #f
- #{mod 3523}#
- #t))
- (lambda (#{type 3568}#
- #{value 3569}#
- #{ee 3570}#
- #{ww 3571}#
- #{ss 3572}#
- #{modmod 3573}#)
- (if (eqv? #{type 3568}# 'module-ref)
- (begin
- (let ((#{val 3582}#
- (#{chi 456}#
- #{val 3565}#
- #{r 3520}#
- #{w 3521}#
- #{mod 3523}#)))
- (call-with-values
- (lambda ()
- (#{value 3569}#
- (cons #{head 3563}# #{tail 3564}#)
- #{r 3520}#
- #{w 3521}#))
- (lambda (#{e 3584}#
- #{r 3585}#
- #{w 3586}#
- #{s* 3587}#
- #{mod 3588}#)
- (let ((#{tmp 3594}# #{e 3584}#))
- (let ((#{tmp 3595}#
- (list #{tmp 3594}#)))
- (if (if #{tmp 3595}#
- (@apply
- (lambda (#{e 3597}#)
- (#{id? 376}#
- #{e 3597}#))
- #{tmp 3595}#)
- #f)
- (@apply
- (lambda (#{e 3599}#)
- (#{build-global-assignment
316}#
- #{s 3522}#
- (syntax->datum
- #{e 3599}#)
- #{val 3582}#
- #{mod 3588}#))
- #{tmp 3595}#)
- (syntax-violation
- #f
- "source expression failed to
match any pattern"
- #{tmp 3594}#))))))))
- (#{build-application 302}#
- #{s 3522}#
- (#{chi 456}#
- (list '#(syntax-object
- setter
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(type value ee ww ss modmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i3574"
- "i3575"
- "i3576"
- "i3577"
- "i3578"
- "i3579"))
- #(ribcage
- #(head tail val)
- #((top) (top) (top))
- #("i3560" "i3561" "i3562"))
- #(ribcage () () ())
- #(ribcage
- #(e r w s mod)
- #((top)
- (top)
- (top)
- (top)
- (top))
- #("i3524"
- "i3525"
- "i3526"
- "i3527"
- "i3528"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
- define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile))
- #{head 3563}#)
- #{r 3520}#
- #{w 3521}#
- #{mod 3523}#)
- (map (lambda (#{e 3601}#)
- (#{chi 456}#
- #{e 3601}#
- #{r 3520}#
- #{w 3521}#
- #{mod 3523}#))
- (append
- #{tail 3564}#
- (list #{val 3565}#))))))))
- #{tmp 3559}#)
- (let ((#{_ 3605}# #{tmp 3529}#))
- (syntax-violation
- 'set!
- "bad set!"
- (#{source-wrap 444}#
- #{e 3519}#
- #{w 3521}#
- #{s 3522}#
- #{mod 3523}#))))))))))
- (#{global-extend 372}#
- 'module-ref
- '@
- (lambda (#{e 3606}# #{r 3607}# #{w 3608}#)
- (let ((#{tmp 3612}# #{e 3606}#))
- (let ((#{tmp 3613}#
- ($sc-dispatch #{tmp 3612}# '(_ each-any any))))
- (if (if #{tmp 3613}#
- (@apply
- (lambda (#{mod 3616}# #{id 3617}#)
- (if (and-map #{id? 376}# #{mod 3616}#)
- (#{id? 376}# #{id 3617}#)
- #f))
- #{tmp 3613}#)
- #f)
- (@apply
- (lambda (#{mod 3623}# #{id 3624}#)
- (values
- (syntax->datum #{id 3624}#)
- #{r 3607}#
- #{w 3608}#
- #f
- (syntax->datum
- (cons '#(syntax-object
- public
+ 'make-syntax-transformer)
+ (list (#{build-data 291}# #f #{name 1713}#)
+ (#{build-data 291}# #f 'macro)
+ #{e 1714}#)))))
+ (#{chi-when-list 415}#
+ (lambda (#{e 1722}# #{when-list 1723}# #{w 1724}#)
+ (letrec*
+ ((#{f 1731}#
+ (lambda (#{when-list 1732}# #{situations 1733}#)
+ (if (null? #{when-list 1732}#)
+ #{situations 1733}#
+ (#{f 1731}#
+ (cdr #{when-list 1732}#)
+ (cons (begin
+ (let ((#{x 1735}# (car #{when-list 1732}#)))
+ (if (#{free-id=? 395}#
+ #{x 1735}#
+ '#(syntax-object
+ compile
((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1734"))
+ #(ribcage () () ())
#(ribcage
- #(mod id)
- #((top) (top))
- #("i3621" "i3622"))
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1728" "i1729" "i1730"))
#(ribcage () () ())
#(ribcage
- #(e r w)
+ #(e when-list w)
#((top) (top) (top))
- #("i3609" "i3610" "i3611"))
+ #("i1725" "i1726" "i1727"))
#(ribcage
(lambda-var-list
gen-var
@@ -10707,96 +1625,36 @@
maybe-name-value!
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)
+ 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)
@@ -10871,836 +1729,230 @@
(top)
(top)
(top)
- (top))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile))
- #{mod 3623}#))))
- #{tmp 3613}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3612}#))))))
- (#{global-extend 372}#
- 'module-ref
- '@@
- (lambda (#{e 3626}# #{r 3627}# #{w 3628}#)
- (letrec*
- ((#{remodulate 3633}#
- (lambda (#{x 3634}# #{mod 3635}#)
- (if (pair? #{x 3634}#)
- (cons (#{remodulate 3633}#
- (car #{x 3634}#)
- #{mod 3635}#)
- (#{remodulate 3633}#
- (cdr #{x 3634}#)
- #{mod 3635}#))
- (if (#{syntax-object? 342}# #{x 3634}#)
- (#{make-syntax-object 340}#
- (#{remodulate 3633}#
- (#{syntax-object-expression 344}# #{x 3634}#)
- #{mod 3635}#)
- (#{syntax-object-wrap 346}# #{x 3634}#)
- #{mod 3635}#)
- (if (vector? #{x 3634}#)
- (begin
- (let ((#{n 3646}# (vector-length #{x 3634}#)))
- (begin
- (let ((#{v 3648}# (make-vector #{n 3646}#)))
- (letrec*
- ((#{loop 3651}#
- (lambda (#{i 3652}#)
- (if (= #{i 3652}# #{n 3646}#)
- (begin (if #f #f) #{v 3648}#)
- (begin
- (vector-set!
- #{v 3648}#
- #{i 3652}#
- (#{remodulate 3633}#
- (vector-ref
- #{x 3634}#
- #{i 3652}#)
- #{mod 3635}#))
- (#{loop 3651}#
- (#{1+}# #{i 3652}#)))))))
- (begin (#{loop 3651}# 0)))))))
- #{x 3634}#))))))
- (begin
- (let ((#{tmp 3658}# #{e 3626}#))
- (let ((#{tmp 3659}#
- ($sc-dispatch #{tmp 3658}# '(_ each-any any))))
- (if (if #{tmp 3659}#
- (@apply
- (lambda (#{mod 3662}# #{exp 3663}#)
- (and-map #{id? 376}# #{mod 3662}#))
- #{tmp 3659}#)
- #f)
- (@apply
- (lambda (#{mod 3667}# #{exp 3668}#)
- (begin
- (let ((#{mod 3670}#
- (syntax->datum
- (cons '#(syntax-object
- private
- ((top)
- #(ribcage
- #(mod exp)
- #((top) (top))
- #("i3665" "i3666"))
- #(ribcage
- (remodulate)
- ((top))
- ("i3632"))
- #(ribcage
- #(e r w)
- #((top) (top) (top))
- #("i3629" "i3630" "i3631"))
- #(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
- 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
- build-global-assignment
- build-global-reference
- analyze-variable
- build-lexical-assignment
- build-lexical-reference
- build-dynlet
- build-conditional
- build-application
- build-void
- maybe-name-value!
- 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))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
- "i416"
- "i415"
- "i413"
- "i412"
- "i411"
- "i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
- "i390"
- "i388"
- "i387"
- "i386"
- "i385"
- "i384"
- "i383"
- "i382"
- "i381"
- "i380"
- "i378"
- "i377"
- "i375"
- "i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
- "i362"
- "i361"
- "i360"
- "i359"
- "i358"
- "i356"
- "i355"
- "i353"
- "i351"
- "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"
- "i290"
- "i288"
- "i286"
- "i285"
- "i284"
- "i283"
- "i282"
- "i280"
- "i278"
- "i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
- "i253"
- "i251"
- "i249"
- "i247"
- "i245"
- "i243"
- "i241"
- "i239"))
- #(ribcage
- (define-structure
-
define-expansion-accessors
-
define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
- (hygiene guile))
- #{mod 3667}#))))
- (values
- (#{remodulate 3633}#
- #{exp 3668}#
- #{mod 3670}#)
- #{r 3627}#
- #{w 3628}#
- (#{source-annotation 357}# #{exp 3668}#)
- #{mod 3670}#))))
- #{tmp 3659}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3658}#))))))))
- (#{global-extend 372}#
- 'core
- 'if
- (lambda (#{e 3672}#
- #{r 3673}#
- #{w 3674}#
- #{s 3675}#
- #{mod 3676}#)
- (let ((#{tmp 3682}# #{e 3672}#))
- (let ((#{tmp 3683}#
- ($sc-dispatch #{tmp 3682}# '(_ any any))))
- (if #{tmp 3683}#
- (@apply
- (lambda (#{test 3686}# #{then 3687}#)
- (#{build-conditional 304}#
- #{s 3675}#
- (#{chi 456}#
- #{test 3686}#
- #{r 3673}#
- #{w 3674}#
- #{mod 3676}#)
- (#{chi 456}#
- #{then 3687}#
- #{r 3673}#
- #{w 3674}#
- #{mod 3676}#)
- (#{build-void 300}# #f)))
- #{tmp 3683}#)
- (let ((#{tmp 3689}#
- ($sc-dispatch #{tmp 3682}# '(_ any any any))))
- (if #{tmp 3689}#
- (@apply
- (lambda (#{test 3693}# #{then 3694}# #{else 3695}#)
- (#{build-conditional 304}#
- #{s 3675}#
- (#{chi 456}#
- #{test 3693}#
- #{r 3673}#
- #{w 3674}#
- #{mod 3676}#)
- (#{chi 456}#
- #{then 3694}#
- #{r 3673}#
- #{w 3674}#
- #{mod 3676}#)
- (#{chi 456}#
- #{else 3695}#
- #{r 3673}#
- #{w 3674}#
- #{mod 3676}#)))
- #{tmp 3689}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3682}#))))))))
- (#{global-extend 372}#
- 'core
- 'with-fluids
- (lambda (#{e 3696}#
- #{r 3697}#
- #{w 3698}#
- #{s 3699}#
- #{mod 3700}#)
- (let ((#{tmp 3706}# #{e 3696}#))
- (let ((#{tmp 3707}#
- ($sc-dispatch
- #{tmp 3706}#
- '(_ #(each (any any)) any . each-any))))
- (if #{tmp 3707}#
- (@apply
- (lambda (#{fluid 3712}#
- #{val 3713}#
- #{b 3714}#
- #{b* 3715}#)
- (#{build-dynlet 306}#
- #{s 3699}#
- (map (lambda (#{x 3716}#)
- (#{chi 456}#
- #{x 3716}#
- #{r 3697}#
- #{w 3698}#
- #{mod 3700}#))
- #{fluid 3712}#)
- (map (lambda (#{x 3719}#)
- (#{chi 456}#
- #{x 3719}#
- #{r 3697}#
- #{w 3698}#
- #{mod 3700}#))
- #{val 3713}#)
- (#{chi-body 464}#
- (cons #{b 3714}# #{b* 3715}#)
- (#{source-wrap 444}#
- #{e 3696}#
- #{w 3698}#
- #{s 3699}#
- #{mod 3700}#)
- #{r 3697}#
- #{w 3698}#
- #{mod 3700}#)))
- #{tmp 3707}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3706}#))))))
- (#{global-extend 372}# 'begin 'begin '())
- (#{global-extend 372}# 'define 'define '())
- (#{global-extend 372}#
- 'define-syntax
- 'define-syntax
- '())
- (#{global-extend 372}# 'eval-when 'eval-when '())
- (#{global-extend 372}#
- 'core
- 'syntax-case
- (letrec*
- ((#{convert-pattern 3724}#
- (lambda (#{pattern 3731}# #{keys 3732}#)
- (letrec*
- ((#{cvt* 3736}#
- (lambda (#{p* 3739}# #{n 3740}# #{ids 3741}#)
- (if (null? #{p* 3739}#)
- (values '() #{ids 3741}#)
- (call-with-values
- (lambda ()
- (#{cvt* 3736}#
- (cdr #{p* 3739}#)
- #{n 3740}#
- #{ids 3741}#))
- (lambda (#{y 3745}# #{ids 3746}#)
- (call-with-values
- (lambda ()
- (#{cvt 3738}#
- (car #{p* 3739}#)
- #{n 3740}#
- #{ids 3746}#))
- (lambda (#{x 3749}# #{ids 3750}#)
- (values
- (cons #{x 3749}# #{y 3745}#)
- #{ids 3750}#))))))))
- (#{cvt 3738}#
- (lambda (#{p 3753}# #{n 3754}# #{ids 3755}#)
- (if (#{id? 376}# #{p 3753}#)
- (if (#{bound-id-member? 440}#
- #{p 3753}#
- #{keys 3732}#)
- (values
- (vector 'free-id #{p 3753}#)
- #{ids 3755}#)
- (if (#{free-id=? 432}#
- #{p 3753}#
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i448"
+ "i446"
+ "i444"
+ "i442"
+ "i440"
+ "i438"
+ "i436"
+ "i434"
+ "i432"
+ "i430"
+ "i428"
+ "i426"
+ "i424"
+ "i422"
+ "i420"
+ "i418"
+ "i416"
+ "i414"
+ "i412"
+ "i410"
+ "i408"
+ "i406"
+ "i404"
+ "i402"
+ "i400"
+ "i398"
+ "i396"
+ "i394"
+ "i392"
+ "i390"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i376"
+ "i375"
+ "i374"
+ "i373"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i353"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i346"
+ "i345"
+ "i344"
+ "i343"
+ "i341"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i325"
+ "i324"
+ "i323"
+ "i322"
+ "i321"
+ "i319"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i298"
+ "i296"
+ "i294"
+ "i292"
+ "i290"
+ "i288"
+ "i286"
+ "i284"
+ "i282"
+ "i280"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i253"
+ "i251"
+ "i249"
+ "i248"
+ "i247"
+ "i246"
+ "i245"
+ "i243"
+ "i241"
+ "i239"
+ "i236"
+ "i234"
+ "i232"
+ "i230"
+ "i228"
+ "i226"
+ "i224"
+ "i222"
+ "i220"
+ "i218"
+ "i216"
+ "i214"
+ "i212"
+ "i210"
+ "i208"
+ "i206"
+ "i204"
+ "i202"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("i40" "i39" "i38")))
+ (hygiene guile)))
+ 'compile
+ (if (#{free-id=? 395}#
+ #{x 1735}#
'#(syntax-object
- _
+ load
((top)
#(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1734"))
+ #(ribcage () () ())
#(ribcage
- #(p n ids)
+ #(f when-list situations)
#((top) (top) (top))
- #("i3756" "i3757" "i3758"))
- #(ribcage
- (cvt cvt*)
- ((top) (top))
- ("i3737" "i3735"))
- #(ribcage
- #(pattern keys)
- #((top) (top))
- #("i3733" "i3734"))
+ #("i1728" "i1729" "i1730"))
+ #(ribcage () () ())
#(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i3729" "i3727" "i3725" "i3723"))
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1725" "i1726" "i1727"))
#(ribcage
(lambda-var-list
gen-var
@@ -11974,2427 +2226,11964 @@
(top)
(top)
(top))
- ("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"
- "i429"
- "i427"
- "i425"
- "i423"
- "i421"
- "i419"
- "i417"
+ ("i448"
+ "i446"
+ "i444"
+ "i442"
+ "i440"
+ "i438"
+ "i436"
+ "i434"
+ "i432"
+ "i430"
+ "i428"
+ "i426"
+ "i424"
+ "i422"
+ "i420"
+ "i418"
"i416"
- "i415"
- "i413"
+ "i414"
"i412"
- "i411"
"i410"
- "i409"
- "i407"
- "i405"
- "i403"
- "i401"
- "i399"
- "i397"
- "i395"
- "i393"
+ "i408"
+ "i406"
+ "i404"
+ "i402"
+ "i400"
+ "i398"
+ "i396"
+ "i394"
+ "i392"
"i390"
"i388"
- "i387"
"i386"
- "i385"
"i384"
- "i383"
"i382"
- "i381"
"i380"
+ "i379"
"i378"
- "i377"
+ "i376"
"i375"
+ "i374"
"i373"
- "i371"
- "i369"
- "i367"
- "i365"
- "i363"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
"i362"
- "i361"
"i360"
- "i359"
"i358"
"i356"
- "i355"
"i353"
"i351"
+ "i350"
"i349"
+ "i348"
"i347"
+ "i346"
"i345"
+ "i344"
"i343"
"i341"
- "i339"
- "i337"
- "i335"
- "i333"
- "i331"
- "i329"
- "i327"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
"i325"
+ "i324"
"i323"
+ "i322"
"i321"
"i319"
- "i317"
- "i315"
- "i313"
- "i311"
- "i309"
- "i307"
- "i305"
- "i303"
- "i301"
- "i299"
- "i297"
- "i295"
- "i293"
- "i291"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i298"
+ "i296"
+ "i294"
+ "i292"
"i290"
"i288"
"i286"
- "i285"
"i284"
- "i283"
"i282"
"i280"
"i278"
"i276"
- "i273"
- "i271"
- "i269"
- "i267"
- "i265"
- "i263"
- "i261"
- "i259"
- "i257"
- "i255"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
"i253"
"i251"
"i249"
+ "i248"
"i247"
+ "i246"
"i245"
"i243"
"i241"
- "i239"))
+ "i239"
+ "i236"
+ "i234"
+ "i232"
+ "i230"
+ "i228"
+ "i226"
+ "i224"
+ "i222"
+ "i220"
+ "i218"
+ "i216"
+ "i214"
+ "i212"
+ "i210"
+ "i208"
+ "i206"
+ "i204"
+ "i202"))
#(ribcage
(define-structure
define-expansion-accessors
- define-expansion-constructors
- and-map*)
- ((top) (top) (top) (top))
- ("i41" "i40" "i39" "i37")))
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("i40" "i39" "i38")))
(hygiene guile)))
- (values '_ #{ids 3755}#)
+ 'load
+ (if (#{free-id=? 395}#
+ #{x 1735}#
+ '#(syntax-object
+ eval
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1734"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1728" "i1729" "i1730"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1725" "i1726" "i1727"))
+ #(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
+ 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
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ maybe-name-value!
+ 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))
+ ("i448"
+ "i446"
+ "i444"
+ "i442"
+ "i440"
+ "i438"
+ "i436"
+ "i434"
+ "i432"
+ "i430"
+ "i428"
+ "i426"
+ "i424"
+ "i422"
+ "i420"
+ "i418"
+ "i416"
+ "i414"
+ "i412"
+ "i410"
+ "i408"
+ "i406"
+ "i404"
+ "i402"
+ "i400"
+ "i398"
+ "i396"
+ "i394"
+ "i392"
+ "i390"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i376"
+ "i375"
+ "i374"
+ "i373"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i353"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i346"
+ "i345"
+ "i344"
+ "i343"
+ "i341"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i325"
+ "i324"
+ "i323"
+ "i322"
+ "i321"
+ "i319"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i298"
+ "i296"
+ "i294"
+ "i292"
+ "i290"
+ "i288"
+ "i286"
+ "i284"
+ "i282"
+ "i280"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i253"
+ "i251"
+ "i249"
+ "i248"
+ "i247"
+ "i246"
+ "i245"
+ "i243"
+ "i241"
+ "i239"
+ "i236"
+ "i234"
+ "i232"
+ "i230"
+ "i228"
+ "i226"
+ "i224"
+ "i222"
+ "i220"
+ "i218"
+ "i216"
+ "i214"
+ "i212"
+ "i210"
+ "i208"
+ "i206"
+ "i204"
+ "i202"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("i40" "i39" "i38")))
+ (hygiene guile)))
+ 'eval
+ (if (#{free-id=? 395}#
+ #{x 1735}#
+ '#(syntax-object
+ expand
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1734"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1728" "i1729" "i1730"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1725" "i1726" "i1727"))
+ #(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
+ 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
+ build-global-assignment
+ build-global-reference
+ analyze-variable
+ build-lexical-assignment
+ build-lexical-reference
+ build-dynlet
+ build-conditional
+ build-application
+ build-void
+ maybe-name-value!
+ 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))
+ ("i448"
+ "i446"
+ "i444"
+ "i442"
+ "i440"
+ "i438"
+ "i436"
+ "i434"
+ "i432"
+ "i430"
+ "i428"
+ "i426"
+ "i424"
+ "i422"
+ "i420"
+ "i418"
+ "i416"
+ "i414"
+ "i412"
+ "i410"
+ "i408"
+ "i406"
+ "i404"
+ "i402"
+ "i400"
+ "i398"
+ "i396"
+ "i394"
+ "i392"
+ "i390"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i376"
+ "i375"
+ "i374"
+ "i373"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i353"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i346"
+ "i345"
+ "i344"
+ "i343"
+ "i341"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i325"
+ "i324"
+ "i323"
+ "i322"
+ "i321"
+ "i319"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i298"
+ "i296"
+ "i294"
+ "i292"
+ "i290"
+ "i288"
+ "i286"
+ "i284"
+ "i282"
+ "i280"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i253"
+ "i251"
+ "i249"
+ "i248"
+ "i247"
+ "i246"
+ "i245"
+ "i243"
+ "i241"
+ "i239"
+ "i236"
+ "i234"
+ "i232"
+ "i230"
+ "i228"
+ "i226"
+ "i224"
+ "i222"
+ "i220"
+ "i218"
+ "i216"
+ "i214"
+ "i212"
+ "i210"
+ "i208"
+ "i206"
+ "i204"
+ "i202"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("i40" "i39" "i38")))
+ (hygiene guile)))
+ 'expand
+ (syntax-violation
+ 'eval-when
+ "invalid situation"
+ #{e 1722}#
+ (#{wrap 405}#
+ #{x 1735}#
+ #{w 1724}#
+ #f))))))))
+ #{situations 1733}#))))))
+ (begin (#{f 1731}# #{when-list 1723}# '())))))
+ (#{syntax-type 417}#
+ (lambda (#{e 1745}#
+ #{r 1746}#
+ #{w 1747}#
+ #{s 1748}#
+ #{rib 1749}#
+ #{mod 1750}#
+ #{for-car? 1751}#)
+ (if (symbol? #{e 1745}#)
+ (begin
+ (let ((#{n 1763}#
+ (#{id-var-name 393}# #{e 1745}# #{w 1747}#)))
+ (begin
+ (let ((#{b 1765}#
+ (#{lookup 333}#
+ #{n 1763}#
+ #{r 1746}#
+ #{mod 1750}#)))
+ (begin
+ (let ((#{type 1767}# (car #{b 1765}#)))
+ (if (eqv? #{type 1767}# 'lexical)
+ (values
+ #{type 1767}#
+ (cdr #{b 1765}#)
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{type 1767}# 'global)
+ (values
+ #{type 1767}#
+ #{n 1763}#
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{type 1767}# 'macro)
+ (if #{for-car? 1751}#
+ (values
+ #{type 1767}#
+ (cdr #{b 1765}#)
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (#{syntax-type 417}#
+ (#{chi-macro 425}#
+ (cdr #{b 1765}#)
+ #{e 1745}#
+ #{r 1746}#
+ #{w 1747}#
+ #{s 1748}#
+ #{rib 1749}#
+ #{mod 1750}#)
+ #{r 1746}#
+ '(())
+ #{s 1748}#
+ #{rib 1749}#
+ #{mod 1750}#
+ #f))
+ (values
+ #{type 1767}#
+ (cdr #{b 1765}#)
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#))))))))))
+ (if (pair? #{e 1745}#)
+ (begin
+ (let ((#{first 1781}# (car #{e 1745}#)))
+ (call-with-values
+ (lambda ()
+ (#{syntax-type 417}#
+ #{first 1781}#
+ #{r 1746}#
+ #{w 1747}#
+ #{s 1748}#
+ #{rib 1749}#
+ #{mod 1750}#
+ #t))
+ (lambda (#{ftype 1782}#
+ #{fval 1783}#
+ #{fe 1784}#
+ #{fw 1785}#
+ #{fs 1786}#
+ #{fmod 1787}#)
+ (if (eqv? #{ftype 1782}# 'lexical)
+ (values
+ 'lexical-call
+ #{fval 1783}#
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{ftype 1782}# 'global)
+ (values
+ 'global-call
+ (#{make-syntax-object 303}#
+ #{fval 1783}#
+ #{w 1747}#
+ #{fmod 1787}#)
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{ftype 1782}# 'macro)
+ (#{syntax-type 417}#
+ (#{chi-macro 425}#
+ #{fval 1783}#
+ #{e 1745}#
+ #{r 1746}#
+ #{w 1747}#
+ #{s 1748}#
+ #{rib 1749}#
+ #{mod 1750}#)
+ #{r 1746}#
+ '(())
+ #{s 1748}#
+ #{rib 1749}#
+ #{mod 1750}#
+ #{for-car? 1751}#)
+ (if (eqv? #{ftype 1782}# 'module-ref)
+ (call-with-values
+ (lambda ()
+ (#{fval 1783}#
+ #{e 1745}#
+ #{r 1746}#
+ #{w 1747}#))
+ (lambda (#{e 1799}#
+ #{r 1800}#
+ #{w 1801}#
+ #{s 1802}#
+ #{mod 1803}#)
+ (#{syntax-type 417}#
+ #{e 1799}#
+ #{r 1800}#
+ #{w 1801}#
+ #{s 1802}#
+ #{rib 1749}#
+ #{mod 1803}#
+ #{for-car? 1751}#)))
+ (if (eqv? #{ftype 1782}# 'core)
+ (values
+ 'core-form
+ #{fval 1783}#
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{ftype 1782}# 'local-syntax)
+ (values
+ 'local-syntax-form
+ #{fval 1783}#
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{ftype 1782}# 'begin)
+ (values
+ 'begin-form
+ #f
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{ftype 1782}# 'eval-when)
+ (values
+ 'eval-when-form
+ #f
+ #{e 1745}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#)
+ (if (eqv? #{ftype 1782}# 'define)
+ (let ((#{tmp 1814}# #{e 1745}#))
+ (let ((#{tmp 1815}#
+ ($sc-dispatch
+ #{tmp 1814}#
+ '(_ any any))))
+ (if (if #{tmp 1815}#
+ (@apply
+ (lambda (#{name 1818}#
+ #{val 1819}#)
+ (#{id? 339}# #{name 1818}#))
+ #{tmp 1815}#)
+ #f)
+ (@apply
+ (lambda (#{name 1822}#
+ #{val 1823}#)
+ (values
+ 'define-form
+ #{name 1822}#
+ #{val 1823}#
+ #{w 1747}#
+ #{s 1748}#
+ #{mod 1750}#))
+ #{tmp 1815}#)
+ (let ((#{tmp 1824}#
+ ($sc-dispatch
+ #{tmp 1814}#
+ '(_ (any . any)
+ any
+ .
+ each-any))))
+ (if (if #{tmp 1824}#
+ (@apply
+ (lambda (#{name 1829}#
+ #{args 1830}#
+ #{e1 1831}#
+ #{e2 1832}#)
+ (if (#{id? 339}#
+ #{name 1829}#)
+ (#{valid-bound-ids?
399}#
+ (#{lambda-var-list
449}#
+ #{args 1830}#))
+ #f))
+ #{tmp 1824}#)
+ #f)
+ (@apply
+ (lambda (#{name 1839}#
+ #{args 1840}#
+ #{e1 1841}#
+ #{e2 1842}#)
+ (values
+ 'define-form
+ (#{wrap 405}#
+ #{name 1839}#
+ #{w 1747}#
+ #{mod 1750}#)
+ (#{decorate-source 259}#
+ (cons '#(syntax-object
+ lambda
+ ((top)
+ #(ribcage
+ #(name
+ args
+ e1
+ e2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i1835"
+ "i1836"
+ "i1837"
+ "i1838"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1788"
+ "i1789"
+ "i1790"
+ "i1791"
+ "i1792"
+ "i1793"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1780"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1752"
+ "i1753"
+ "i1754"
+ "i1755"
+ "i1756"
+ "i1757"
+ "i1758"))
+ #(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
+
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
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+
build-dynlet
+
build-conditional
+
build-application
+ build-void
+
maybe-name-value!
+
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))
+ ("i448"
+ "i446"
+ "i444"
+ "i442"
+ "i440"
+ "i438"
+ "i436"
+ "i434"
+ "i432"
+ "i430"
+ "i428"
+ "i426"
+ "i424"
+ "i422"
+ "i420"
+ "i418"
+ "i416"
+ "i414"
+ "i412"
+ "i410"
+ "i408"
+ "i406"
+ "i404"
+ "i402"
+ "i400"
+ "i398"
+ "i396"
+ "i394"
+ "i392"
+ "i390"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i376"
+ "i375"
+ "i374"
+ "i373"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i353"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i346"
+ "i345"
+ "i344"
+ "i343"
+ "i341"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i325"
+ "i324"
+ "i323"
+ "i322"
+ "i321"
+ "i319"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i298"
+ "i296"
+ "i294"
+ "i292"
+ "i290"
+ "i288"
+ "i286"
+ "i284"
+ "i282"
+ "i280"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i253"
+ "i251"
+ "i249"
+ "i248"
+ "i247"
+ "i246"
+ "i245"
+ "i243"
+ "i241"
+ "i239"
+ "i236"
+ "i234"
+ "i232"
+ "i230"
+ "i228"
+ "i226"
+ "i224"
+ "i222"
+ "i220"
+ "i218"
+ "i216"
+ "i214"
+ "i212"
+ "i210"
+ "i208"
+ "i206"
+ "i204"
+ "i202"))
+ #(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors)
+ ((top)
+ (top)
+ (top))
+ ("i40"
+ "i39"
+ "i38")))
+ (hygiene
+ guile))
+ (#{wrap 405}#
+ (cons #{args
1840}#
+ (cons
#{e1 1841}#
+
#{e2 1842}#))
+ #{w 1747}#
+ #{mod 1750}#))
+ #{s 1748}#)
+ '(())
+ #{s 1748}#
+ #{mod 1750}#))
+ #{tmp 1824}#)
+ (let ((#{tmp 1845}#
+ ($sc-dispatch
+ #{tmp 1814}#
+ '(_ any))))
+ (if (if #{tmp 1845}#
+ (@apply
+ (lambda (#{name
1847}#)
+ (#{id? 339}#
+ #{name 1847}#))
+ #{tmp 1845}#)
+ #f)
+ (@apply
+ (lambda (#{name 1849}#)
+ (values
+ 'define-form
+ (#{wrap 405}#
+ #{name 1849}#
+ #{w 1747}#
+ #{mod 1750}#)
+ '(#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(name)
+ #((top))
+ #("i1848"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1788"
+ "i1789"
+ "i1790"
+ "i1791"
+ "i1792"
+ "i1793"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1780"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1752"
+ "i1753"
+ "i1754"
+ "i1755"
+ "i1756"
+ "i1757"
+ "i1758"))
+ #(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
+ 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
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+ build-dynlet
+
build-conditional
+
build-application
+ build-void
+
maybe-name-value!
+
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))
+ ("i448"
+ "i446"
+ "i444"
+ "i442"
+ "i440"
+ "i438"
+ "i436"
+ "i434"
+ "i432"
+ "i430"
+ "i428"
+ "i426"
+ "i424"
+ "i422"
+ "i420"
+ "i418"
+ "i416"
+ "i414"
+ "i412"
+ "i410"
+ "i408"
+ "i406"
+ "i404"
+ "i402"
+ "i400"
+ "i398"
+ "i396"
+ "i394"
+ "i392"
+ "i390"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i376"
+ "i375"
+ "i374"
+ "i373"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i353"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i346"
+ "i345"
+ "i344"
+ "i343"
+ "i341"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i325"
+ "i324"
+ "i323"
+ "i322"
+ "i321"
+ "i319"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i298"
+ "i296"
+ "i294"
+ "i292"
+ "i290"
+ "i288"
+ "i286"
+ "i284"
+ "i282"
+ "i280"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i253"
+ "i251"
+ "i249"
+ "i248"
+ "i247"
+ "i246"
+ "i245"
+ "i243"
+ "i241"
+ "i239"
+ "i236"
+ "i234"
+ "i232"
+ "i230"
+ "i228"
+ "i226"
+ "i224"
+ "i222"
+ "i220"
+ "i218"
+ "i216"
+ "i214"
+ "i212"
+ "i210"
+ "i208"
+ "i206"
+ "i204"
+ "i202"))
+ #(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors)
+ ((top)
+ (top)
+ (top))
+ ("i40"
+ "i39"
+ "i38")))
+ (hygiene guile))
+ #(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(name)
+ #((top))
+ #("i1848"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1788"
+ "i1789"
+ "i1790"
+ "i1791"
+ "i1792"
+ "i1793"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1780"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1752"
+ "i1753"
+ "i1754"
+ "i1755"
+ "i1756"
+ "i1757"
+ "i1758"))
+ #(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
+ 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
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+ build-dynlet
+
build-conditional
+
build-application
+ build-void
+
maybe-name-value!
+
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))
+ ("i448"
+ "i446"
+ "i444"
+ "i442"
+ "i440"
+ "i438"
+ "i436"
+ "i434"
+ "i432"
+ "i430"
+ "i428"
+ "i426"
+ "i424"
+ "i422"
+ "i420"
+ "i418"
+ "i416"
+ "i414"
+ "i412"
+ "i410"
+ "i408"
+ "i406"
+ "i404"
+ "i402"
+ "i400"
+ "i398"
+ "i396"
+ "i394"
+ "i392"
+ "i390"
+ "i388"
+ "i386"
+ "i384"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i376"
+ "i375"
+ "i374"
+ "i373"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i358"
+ "i356"
+ "i353"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i346"
+ "i345"
+ "i344"
+ "i343"
+ "i341"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i328"
+ "i326"
+ "i325"
+ "i324"
+ "i323"
+ "i322"
+ "i321"
+ "i319"
+ "i318"
+ "i316"
+ "i314"
+ "i312"
+ "i310"
+ "i308"
+ "i306"
+ "i304"
+ "i302"
+ "i300"
+ "i298"
+ "i296"
+ "i294"
+ "i292"
+ "i290"
+ "i288"
+ "i286"
+ "i284"
+ "i282"
+ "i280"
+ "i278"
+ "i276"
+ "i274"
+ "i272"
+ "i270"
+ "i268"
+ "i266"
+ "i264"
+ "i262"
+ "i260"
+ "i258"
+ "i256"
+ "i254"
+ "i253"
+ "i251"
+ "i249"
+ "i248"
+ "i247"
+ "i246"
+ "i245"
+ "i243"
+ "i241"
+ "i239"
+ "i236"
+ "i234"
+ "i232"
+ "i230"
+ "i228"
+ "i226"
+ "i224"
+ "i222"
+ "i220"
+ "i218"
+ "i216"
+ "i214"
+ "i212"
+ "i210"
+ "i208"
+ "i206"
+ "i204"
+ "i202"))
+ #(ribcage
+
(define-structure
+
define-expansion-accessors
+
define-expansion-constructors)
+ ((top)
+ (top)
+ (top))
+ ("i40"
+ "i39"
+ "i38")))
+ (hygiene guile))
+ #(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(name)
+ #((top))
+ #("i1848"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1788"
+ "i1789"
+ "i1790"
+ "i1791"
+ "i1792"
+ "i1793"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1780"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1752"
+ "i1753"
+ "i1754"
+ "i1755"
+ "i1756"
+ "i1757"
+ "i1758"))
+ #(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
+ 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
+
build-global-assignment
+
build-global-reference
+
analyze-variable
+
build-lexical-assignment
+
build-lexical-reference
+ build-dynlet
+
build-conditional
+
build-application
+ build-void
+
maybe-name-value!
+
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)
+