[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] GNU Guile branch, master, updated. v2.1.0-120-g78f0ef2
From: |
Andy Wingo |
Subject: |
[Guile-commits] GNU Guile branch, master, updated. v2.1.0-120-g78f0ef2 |
Date: |
Fri, 17 Jun 2011 23:11:28 +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=78f0ef20a77dd745a8fa4c1ac1fae4d42b481adf
The branch, master has been updated
via 78f0ef20a77dd745a8fa4c1ac1fae4d42b481adf (commit)
via 25711fa4caf815ffdf6000045534b2bf8f73740b (commit)
via c245d16a5b18afdb68356f8343e6af7b3c32935b (commit)
via b88fef5519fab447c6c5405928c248f9f0966148 (commit)
via f86f748db26eba15ca71e65b3e084a2fcbf8c3ac (commit)
via 669ea4ebff8f0eb69b36f3d55b60e69f9f27c761 (commit)
via 0083cb5ec441c2a6df8d6eb1710eb8a88cf9fc5a (commit)
via ad0fedbf82786988b764492aca664664da2f85ad (commit)
via 074f39c7bc86386fd2d3ce9f4657451e6621e511 (commit)
via 933c6eb795d2a427d469cf94957e4cdb2758ecd2 (commit)
via 95643853d75f2dfe6209a2702ebb58248d606049 (commit)
via 284019a2a5cfd7c7734701671f6a1776f11211eb (commit)
via a67f2fce5456caf8e63dacb110b8e15600bb1c9f (commit)
via 7505c6e024369f2ef381512cbc4a790cc6503428 (commit)
from 99cc1092a89292c6e6db2db537988e5963b19868 (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 78f0ef20a77dd745a8fa4c1ac1fae4d42b481adf
Merge: 25711fa c245d16
Author: Andy Wingo <address@hidden>
Date: Sat Jun 18 00:45:19 2011 +0200
Merge remote-tracking branch 'local-2.0/stable-2.0'
Conflicts:
module/ice-9/psyntax-pp.scm
module/language/tree-il/compile-glil.scm
commit 25711fa4caf815ffdf6000045534b2bf8f73740b
Author: Andy Wingo <address@hidden>
Date: Sat Jun 18 00:38:52 2011 +0200
fix tree-il->scheme bug for seq
* module/language/tree-il.scm (tree-il->scheme): Fix bug for `seq'.
* module/ice-9/psyntax-pp.scm: Regenerate correctly.
-----------------------------------------------------------------------
Summary of changes:
NEWS | 1 +
acinclude.m4 | 12 +-
configure.ac | 22 +-
lib/Makefile.am | 35 +-
lib/basename-lgpl.c | 75 +
lib/dirname-lgpl.c | 86 +
lib/dirname.h | 46 +
lib/rename.c | 473 +
lib/rmdir.c | 53 +
lib/{isnand.c => same-inode.h} | 14 +-
lib/stripslash.c | 45 +
libguile/Makefile.am | 4 +-
libguile/filesys.c | 6 +-
libguile/load.c | 29 +-
libguile/strings.c | 41 +-
libguile/win32-dirent.c | 133 -
libguile/win32-dirent.h | 65 -
m4/dirname.m4 | 19 +
m4/gnulib-cache.m4 | 3 +-
m4/gnulib-comp.m4 | 27 +
m4/rename.m4 | 184 +
m4/rmdir.m4 | 34 +
module/ice-9/boot-9.scm | 12 +-
module/ice-9/psyntax-pp.scm |29835 +++++++++++++++---------------
module/ice-9/psyntax.scm | 3 +-
module/language/tree-il.scm | 3 +-
module/language/tree-il/compile-glil.scm | 85 +-
module/language/tree-il/primitives.scm | 8 +-
module/system/base/language.scm | 5 +-
test-suite/tests/compiler.test | 17 +-
test-suite/tests/tree-il.test | 20 +
31 files changed, 16025 insertions(+), 15370 deletions(-)
create mode 100644 lib/basename-lgpl.c
create mode 100644 lib/dirname-lgpl.c
create mode 100644 lib/dirname.h
create mode 100644 lib/rename.c
create mode 100644 lib/rmdir.c
copy lib/{isnand.c => same-inode.h} (67%)
create mode 100644 lib/stripslash.c
delete mode 100644 libguile/win32-dirent.c
delete mode 100644 libguile/win32-dirent.h
create mode 100644 m4/dirname.m4
create mode 100644 m4/rename.m4
create mode 100644 m4/rmdir.m4
diff --git a/NEWS b/NEWS
index 7ae9c11..2ca0272 100644
--- a/NEWS
+++ b/NEWS
@@ -166,6 +166,7 @@ ports)' documentation from the R6RS documentation. Thanks
Andreas!
** Fix multithreaded access to internal hash tables
** Emit a 1-based line number in error messages
** Fix define-module ordering
+** Fix several POSIX functions to use the locale encoding
Changes in 2.0.1 (since 2.0.0):
diff --git a/acinclude.m4 b/acinclude.m4
index ba8b090..5bd1ced 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -529,8 +529,14 @@ AC_DEFUN([gl_CLOCK_TIME],
AC_SUBST([LIB_CLOCK_GETTIME])
gl_saved_libs=$LIBS
AC_SEARCH_LIBS([clock_gettime], [rt posix4],
- [test "$ac_cv_search_clock_gettime" = "none required" ||
- LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime])
- AC_CHECK_FUNCS([clock_gettime clock_settime])
+ [if test "$ac_cv_search_clock_gettime" = "none required";
then
+ AC_SEARCH_LIBS([clock_getcpuclockid], [rt posix4],
+ [test "$ac_cv_search_clock_getcpuclockid"
= "none required" \
+ ||
LIB_CLOCK_GETTIME=$ac_cv_search_clock_getcpuclockid],
+
[LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime])
+ else
+ LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime
+ fi])
+ AC_CHECK_FUNCS([clock_gettime clock_settime clock_getcpuclockid])
LIBS=$gl_saved_libs
])
diff --git a/configure.ac b/configure.ac
index 57c06d5..ea3ca61 100644
--- a/configure.ac
+++ b/configure.ac
@@ -67,7 +67,8 @@ AC_PROG_LN_S
dnl Gnulib.
gl_INIT
dnl FIXME: remove me and the acinclude.m4 code when clock-gettime is
-dnl LGPL-compatible and can be imported normally.
+dnl fixed for clock_getcpuclockid and can be imported normally from
+dnl gnulib.
gl_CLOCK_TIME
AC_PROG_CC_C89
@@ -716,7 +717,6 @@ case $host in
[Define if you have the <winsock2.h> header file.])])
AC_CHECK_LIB(ws2_32, main)
AC_LIBOBJ([win32-uname])
- AC_LIBOBJ([win32-dirent])
if test "$enable_networking" = yes ; then
AC_LIBOBJ([win32-socket])
fi
@@ -1145,19 +1145,19 @@ AC_CHECK_FUNCS(asinh acosh atanh copysign finite sincos
trunc)
# use <math.h> so doesn't detect on macro-only systems like HP-UX.
#
AC_MSG_CHECKING([for isinf])
-AC_LINK_IFELSE(AC_LANG_SOURCE(
+AC_LINK_IFELSE([AC_LANG_SOURCE(
[[#include <math.h>
volatile double x = 0.0;
-int main () { return (isinf(x) != 0); }]]),
+int main () { return (isinf(x) != 0); }]])],
[AC_MSG_RESULT([yes])
AC_DEFINE([HAVE_ISINF], 1,
[Define to 1 if you have the `isinf' macro or function.])],
[AC_MSG_RESULT([no])])
AC_MSG_CHECKING([for isnan])
-AC_LINK_IFELSE(AC_LANG_SOURCE(
-[[#include <math.h>
+AC_LINK_IFELSE([AC_LANG_SOURCE([[
+#include <math.h>
volatile double x = 0.0;
-int main () { return (isnan(x) != 0); }]]),
+int main () { return (isnan(x) != 0); }]])],
[AC_MSG_RESULT([yes])
AC_DEFINE([HAVE_ISNAN], 1,
[Define to 1 if you have the `isnan' macro or function.])],
@@ -1438,8 +1438,8 @@ case "$with_threads" in
AC_CACHE_CHECK([whether PTHREAD_ONCE_INIT needs braces],
guile_cv_need_braces_on_pthread_once_init,
- [AC_COMPILE_IFELSE([#include <pthread.h>
- pthread_once_t foo = PTHREAD_ONCE_INIT;],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>
+ pthread_once_t foo = PTHREAD_ONCE_INIT;]])],
[guile_cv_need_braces_on_pthread_once_init=no],
[guile_cv_need_braces_on_pthread_once_init=yes])])
if test "$guile_cv_need_braces_on_pthread_once_init" = yes; then
@@ -1450,8 +1450,8 @@ case "$with_threads" in
# 6.5.30m with GCC 3.3.
AC_CACHE_CHECK([whether PTHREAD_MUTEX_INITIALIZER needs braces],
guile_cv_need_braces_on_pthread_mutex_initializer,
- [AC_COMPILE_IFELSE([#include <pthread.h>
- pthread_mutex_t foo = PTHREAD_MUTEX_INITIALIZER;],
+ [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>
+ pthread_mutex_t foo = PTHREAD_MUTEX_INITIALIZER;]])],
[guile_cv_need_braces_on_pthread_mutex_initializer=no],
[guile_cv_need_braces_on_pthread_mutex_initializer=yes])])
if test "$guile_cv_need_braces_on_pthread_mutex_initializer" = yes; then
diff --git a/lib/Makefile.am b/lib/Makefile.am
index dfba180..5ae7948 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -9,7 +9,7 @@
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
-# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib
--m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3
--no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept
alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil
close connect duplocale environ extensions flock floor fpieee frexp full-read
full-write func gendocs getaddrinfo getpeername getsockname getsockopt
git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib
iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions
lib-symbol-visibility libunistring listen locale log1p maintainer-makefile
malloc-gnu malloca nproc open pipe2 putenv recv recvfrom send sendto setsockopt
shutdown socket stat-time stdlib strftime striconveh string sys_stat trunc
verify vsnprintf warnings wchar
+# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=lib
--m4-base=m4 --doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3
--no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept
alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil
close connect duplocale environ extensions flock floor fpieee frexp full-read
full-write func gendocs getaddrinfo getpeername getsockname getsockopt
git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib
iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions
lib-symbol-visibility libunistring listen locale log1p maintainer-makefile
malloc-gnu malloca nproc open pipe2 putenv recv recvfrom rename send sendto
setsockopt shutdown socket stat-time stdlib strftime striconveh string sys_stat
trunc verify vsnprintf warnings wchar
AUTOMAKE_OPTIONS = 1.5 gnits subdir-objects
@@ -277,6 +277,14 @@ EXTRA_libgnu_la_SOURCES += connect.c
## end gnulib module connect
+## begin gnulib module dirname-lgpl
+
+libgnu_la_SOURCES += dirname-lgpl.c basename-lgpl.c stripslash.c
+
+EXTRA_DIST += dirname.h
+
+## end gnulib module dirname-lgpl
+
## begin gnulib module dosname
@@ -1111,6 +1119,24 @@ EXTRA_libgnu_la_SOURCES += recvfrom.c
## end gnulib module recvfrom
+## begin gnulib module rename
+
+
+EXTRA_DIST += rename.c
+
+EXTRA_libgnu_la_SOURCES += rename.c
+
+## end gnulib module rename
+
+## begin gnulib module rmdir
+
+
+EXTRA_DIST += rmdir.c
+
+EXTRA_libgnu_la_SOURCES += rmdir.c
+
+## end gnulib module rmdir
+
## begin gnulib module safe-read
libgnu_la_SOURCES += safe-read.c
@@ -1129,6 +1155,13 @@ EXTRA_libgnu_la_SOURCES += safe-read.c
## end gnulib module safe-write
+## begin gnulib module same-inode
+
+
+EXTRA_DIST += same-inode.h
+
+## end gnulib module same-inode
+
## begin gnulib module send
diff --git a/lib/basename-lgpl.c b/lib/basename-lgpl.c
new file mode 100644
index 0000000..685cbc7
--- /dev/null
+++ b/lib/basename-lgpl.c
@@ -0,0 +1,75 @@
+/* basename.c -- return the last element in a file name
+
+ Copyright (C) 1990, 1998-2001, 2003-2006, 2009-2011 Free Software
+ Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include "dirname.h"
+
+#include <string.h>
+
+/* Return the address of the last file name component of NAME. If
+ NAME has no relative file name components because it is a file
+ system root, return the empty string. */
+
+char *
+last_component (char const *name)
+{
+ char const *base = name + FILE_SYSTEM_PREFIX_LEN (name);
+ char const *p;
+ bool saw_slash = false;
+
+ while (ISSLASH (*base))
+ base++;
+
+ for (p = base; *p; p++)
+ {
+ if (ISSLASH (*p))
+ saw_slash = true;
+ else if (saw_slash)
+ {
+ base = p;
+ saw_slash = false;
+ }
+ }
+
+ return (char *) base;
+}
+
+/* Return the length of the basename NAME. Typically NAME is the
+ value returned by base_name or last_component. Act like strlen
+ (NAME), except omit all trailing slashes. */
+
+size_t
+base_len (char const *name)
+{
+ size_t len;
+ size_t prefix_len = FILE_SYSTEM_PREFIX_LEN (name);
+
+ for (len = strlen (name); 1 < len && ISSLASH (name[len - 1]); len--)
+ continue;
+
+ if (DOUBLE_SLASH_IS_DISTINCT_ROOT && len == 1
+ && ISSLASH (name[0]) && ISSLASH (name[1]) && ! name[2])
+ return 2;
+
+ if (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE && prefix_len
+ && len == prefix_len && ISSLASH (name[prefix_len]))
+ return prefix_len + 1;
+
+ return len;
+}
diff --git a/lib/dirname-lgpl.c b/lib/dirname-lgpl.c
new file mode 100644
index 0000000..934c271
--- /dev/null
+++ b/lib/dirname-lgpl.c
@@ -0,0 +1,86 @@
+/* dirname.c -- return all but the last element in a file name
+
+ Copyright (C) 1990, 1998, 2000-2001, 2003-2006, 2009-2011 Free Software
+ Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include "dirname.h"
+
+#include <stdlib.h>
+#include <string.h>
+
+/* Return the length of the prefix of FILE that will be used by
+ dir_name. If FILE is in the working directory, this returns zero
+ even though `dir_name (FILE)' will return ".". Works properly even
+ if there are trailing slashes (by effectively ignoring them). */
+
+size_t
+dir_len (char const *file)
+{
+ size_t prefix_length = FILE_SYSTEM_PREFIX_LEN (file);
+ size_t length;
+
+ /* Advance prefix_length beyond important leading slashes. */
+ prefix_length += (prefix_length != 0
+ ? (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
+ && ISSLASH (file[prefix_length]))
+ : (ISSLASH (file[0])
+ ? ((DOUBLE_SLASH_IS_DISTINCT_ROOT
+ && ISSLASH (file[1]) && ! ISSLASH (file[2])
+ ? 2 : 1))
+ : 0));
+
+ /* Strip the basename and any redundant slashes before it. */
+ for (length = last_component (file) - file;
+ prefix_length < length; length--)
+ if (! ISSLASH (file[length - 1]))
+ break;
+ return length;
+}
+
+
+/* In general, we can't use the builtin `dirname' function if available,
+ since it has different meanings in different environments.
+ In some environments the builtin `dirname' modifies its argument.
+
+ Return the leading directories part of FILE, allocated with malloc.
+ Works properly even if there are trailing slashes (by effectively
+ ignoring them). Return NULL on failure.
+
+ If lstat (FILE) would succeed, then { chdir (dir_name (FILE));
+ lstat (base_name (FILE)); } will access the same file. Likewise,
+ if the sequence { chdir (dir_name (FILE));
+ rename (base_name (FILE), "foo"); } succeeds, you have renamed FILE
+ to "foo" in the same directory FILE was in. */
+
+char *
+mdir_name (char const *file)
+{
+ size_t length = dir_len (file);
+ bool append_dot = (length == 0
+ || (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE
+ && length == FILE_SYSTEM_PREFIX_LEN (file)
+ && file[2] != '\0' && ! ISSLASH (file[2])));
+ char *dir = malloc (length + append_dot + 1);
+ if (!dir)
+ return NULL;
+ memcpy (dir, file, length);
+ if (append_dot)
+ dir[length++] = '.';
+ dir[length] = '\0';
+ return dir;
+}
diff --git a/lib/dirname.h b/lib/dirname.h
new file mode 100644
index 0000000..6e7f1e9
--- /dev/null
+++ b/lib/dirname.h
@@ -0,0 +1,46 @@
+/* Take file names apart into directory and base names.
+
+ Copyright (C) 1998, 2001, 2003-2006, 2009-2011 Free Software Foundation,
+ Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#ifndef DIRNAME_H_
+# define DIRNAME_H_ 1
+
+# include <stdbool.h>
+# include <stddef.h>
+# include "dosname.h"
+
+# ifndef DIRECTORY_SEPARATOR
+# define DIRECTORY_SEPARATOR '/'
+# endif
+
+# ifndef DOUBLE_SLASH_IS_DISTINCT_ROOT
+# define DOUBLE_SLASH_IS_DISTINCT_ROOT 0
+# endif
+
+# if GNULIB_DIRNAME
+char *base_name (char const *file);
+char *dir_name (char const *file);
+# endif
+
+char *mdir_name (char const *file);
+size_t base_len (char const *file);
+size_t dir_len (char const *file);
+char *last_component (char const *file);
+
+bool strip_trailing_slashes (char *file);
+
+#endif /* not DIRNAME_H_ */
diff --git a/lib/rename.c b/lib/rename.c
new file mode 100644
index 0000000..ebbbfea
--- /dev/null
+++ b/lib/rename.c
@@ -0,0 +1,473 @@
+/* Work around rename bugs in some systems.
+
+ Copyright (C) 2001-2003, 2005-2006, 2009-2011 Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* Written by Volker Borchert, Eric Blake. */
+
+#include <config.h>
+
+#include <stdio.h>
+
+#undef rename
+
+#if (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__
+/* The mingw rename has problems with trailing slashes; it also
+ requires use of native Windows calls to allow atomic renames over
+ existing files. */
+
+# include <errno.h>
+# include <stdbool.h>
+# include <stdlib.h>
+# include <sys/stat.h>
+# include <unistd.h>
+
+# define WIN32_LEAN_AND_MEAN
+# include <windows.h>
+
+# include "dirname.h"
+
+/* Rename the file SRC to DST. This replacement is necessary on
+ Windows, on which the system rename function will not replace
+ an existing DST. */
+int
+rpl_rename (char const *src, char const *dst)
+{
+ int error;
+ size_t src_len = strlen (src);
+ size_t dst_len = strlen (dst);
+ char *src_base = last_component (src);
+ char *dst_base = last_component (dst);
+ bool src_slash;
+ bool dst_slash;
+ bool dst_exists;
+ struct stat src_st;
+ struct stat dst_st;
+
+ /* Filter out dot as last component. */
+ if (!src_len || !dst_len)
+ {
+ errno = ENOENT;
+ return -1;
+ }
+ if (*src_base == '.')
+ {
+ size_t len = base_len (src_base);
+ if (len == 1 || (len == 2 && src_base[1] == '.'))
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ }
+ if (*dst_base == '.')
+ {
+ size_t len = base_len (dst_base);
+ if (len == 1 || (len == 2 && dst_base[1] == '.'))
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ }
+
+ /* Presence of a trailing slash requires directory semantics. If
+ the source does not exist, or if the destination cannot be turned
+ into a directory, give up now. Otherwise, strip trailing slashes
+ before calling rename. There are no symlinks on mingw, so stat
+ works instead of lstat. */
+ src_slash = ISSLASH (src[src_len - 1]);
+ dst_slash = ISSLASH (dst[dst_len - 1]);
+ if (stat (src, &src_st))
+ return -1;
+ if (stat (dst, &dst_st))
+ {
+ if (errno != ENOENT || (!S_ISDIR (src_st.st_mode) && dst_slash))
+ return -1;
+ dst_exists = false;
+ }
+ else
+ {
+ if (S_ISDIR (dst_st.st_mode) != S_ISDIR (src_st.st_mode))
+ {
+ errno = S_ISDIR (dst_st.st_mode) ? EISDIR : ENOTDIR;
+ return -1;
+ }
+ dst_exists = true;
+ }
+
+ /* There are no symlinks, so if a file existed with a trailing
+ slash, it must be a directory, and we don't have to worry about
+ stripping strip trailing slash. However, mingw refuses to
+ replace an existing empty directory, so we have to help it out.
+ And canonicalize_file_name is not yet ported to mingw; however,
+ for directories, getcwd works as a viable alternative. Ensure
+ that we can get back to where we started before using it; later
+ attempts to return are fatal. Note that we can end up losing a
+ directory if rename then fails, but it was empty, so not much
+ damage was done. */
+ if (dst_exists && S_ISDIR (dst_st.st_mode))
+ {
+ char *cwd = getcwd (NULL, 0);
+ char *src_temp;
+ char *dst_temp;
+ if (!cwd || chdir (cwd))
+ return -1;
+ if (IS_ABSOLUTE_FILE_NAME (src))
+ {
+ dst_temp = chdir (dst) ? NULL : getcwd (NULL, 0);
+ src_temp = chdir (src) ? NULL : getcwd (NULL, 0);
+ }
+ else
+ {
+ src_temp = chdir (src) ? NULL : getcwd (NULL, 0);
+ if (!IS_ABSOLUTE_FILE_NAME (dst) && chdir (cwd))
+ abort ();
+ dst_temp = chdir (dst) ? NULL : getcwd (NULL, 0);
+ }
+ if (chdir (cwd))
+ abort ();
+ free (cwd);
+ if (!src_temp || !dst_temp)
+ {
+ free (src_temp);
+ free (dst_temp);
+ errno = ENOMEM;
+ return -1;
+ }
+ src_len = strlen (src_temp);
+ if (strncmp (src_temp, dst_temp, src_len) == 0
+ && (ISSLASH (dst_temp[src_len]) || dst_temp[src_len] == '\0'))
+ {
+ error = dst_temp[src_len];
+ free (src_temp);
+ free (dst_temp);
+ if (error)
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ return 0;
+ }
+ if (rmdir (dst))
+ {
+ error = errno;
+ free (src_temp);
+ free (dst_temp);
+ errno = error;
+ return -1;
+ }
+ free (src_temp);
+ free (dst_temp);
+ }
+
+ /* MoveFileEx works if SRC is a directory without any flags, but
+ fails with MOVEFILE_REPLACE_EXISTING, so try without flags first.
+ Thankfully, MoveFileEx handles hard links correctly, even though
+ rename() does not. */
+ if (MoveFileEx (src, dst, 0))
+ return 0;
+
+ /* Retry with MOVEFILE_REPLACE_EXISTING if the move failed
+ due to the destination already existing. */
+ error = GetLastError ();
+ if (error == ERROR_FILE_EXISTS || error == ERROR_ALREADY_EXISTS)
+ {
+ if (MoveFileEx (src, dst, MOVEFILE_REPLACE_EXISTING))
+ return 0;
+
+ error = GetLastError ();
+ }
+
+ switch (error)
+ {
+ case ERROR_FILE_NOT_FOUND:
+ case ERROR_PATH_NOT_FOUND:
+ case ERROR_BAD_PATHNAME:
+ case ERROR_DIRECTORY:
+ errno = ENOENT;
+ break;
+
+ case ERROR_ACCESS_DENIED:
+ case ERROR_SHARING_VIOLATION:
+ errno = EACCES;
+ break;
+
+ case ERROR_OUTOFMEMORY:
+ errno = ENOMEM;
+ break;
+
+ case ERROR_CURRENT_DIRECTORY:
+ errno = EBUSY;
+ break;
+
+ case ERROR_NOT_SAME_DEVICE:
+ errno = EXDEV;
+ break;
+
+ case ERROR_WRITE_PROTECT:
+ errno = EROFS;
+ break;
+
+ case ERROR_WRITE_FAULT:
+ case ERROR_READ_FAULT:
+ case ERROR_GEN_FAILURE:
+ errno = EIO;
+ break;
+
+ case ERROR_HANDLE_DISK_FULL:
+ case ERROR_DISK_FULL:
+ case ERROR_DISK_TOO_FRAGMENTED:
+ errno = ENOSPC;
+ break;
+
+ case ERROR_FILE_EXISTS:
+ case ERROR_ALREADY_EXISTS:
+ errno = EEXIST;
+ break;
+
+ case ERROR_BUFFER_OVERFLOW:
+ case ERROR_FILENAME_EXCED_RANGE:
+ errno = ENAMETOOLONG;
+ break;
+
+ case ERROR_INVALID_NAME:
+ case ERROR_DELETE_PENDING:
+ errno = EPERM; /* ? */
+ break;
+
+# ifndef ERROR_FILE_TOO_LARGE
+/* This value is documented but not defined in all versions of windows.h. */
+# define ERROR_FILE_TOO_LARGE 223
+# endif
+ case ERROR_FILE_TOO_LARGE:
+ errno = EFBIG;
+ break;
+
+ default:
+ errno = EINVAL;
+ break;
+ }
+
+ return -1;
+}
+
+#else /* ! W32 platform */
+
+# include <errno.h>
+# include <stdio.h>
+# include <stdlib.h>
+# include <string.h>
+# include <sys/stat.h>
+# include <unistd.h>
+
+# include "dirname.h"
+# include "same-inode.h"
+
+/* Rename the file SRC to DST, fixing any trailing slash bugs. */
+
+int
+rpl_rename (char const *src, char const *dst)
+{
+ size_t src_len = strlen (src);
+ size_t dst_len = strlen (dst);
+ char *src_temp = (char *) src;
+ char *dst_temp = (char *) dst;
+ bool src_slash;
+ bool dst_slash;
+ bool dst_exists;
+ int ret_val = -1;
+ int rename_errno = ENOTDIR;
+ struct stat src_st;
+ struct stat dst_st;
+
+ if (!src_len || !dst_len)
+ return rename (src, dst); /* Let strace see the ENOENT failure. */
+
+# if RENAME_DEST_EXISTS_BUG
+ {
+ char *src_base = last_component (src);
+ char *dst_base = last_component (dst);
+ if (*src_base == '.')
+ {
+ size_t len = base_len (src_base);
+ if (len == 1 || (len == 2 && src_base[1] == '.'))
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ }
+ if (*dst_base == '.')
+ {
+ size_t len = base_len (dst_base);
+ if (len == 1 || (len == 2 && dst_base[1] == '.'))
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ }
+ }
+# endif /* RENAME_DEST_EXISTS_BUG */
+
+ src_slash = src[src_len - 1] == '/';
+ dst_slash = dst[dst_len - 1] == '/';
+
+# if !RENAME_HARD_LINK_BUG && !RENAME_DEST_EXISTS_BUG
+ /* If there are no trailing slashes, then trust the native
+ implementation unless we also suspect issues with hard link
+ detection or file/directory conflicts. */
+ if (!src_slash && !dst_slash)
+ return rename (src, dst);
+# endif /* !RENAME_HARD_LINK_BUG && !RENAME_DEST_EXISTS_BUG */
+
+ /* Presence of a trailing slash requires directory semantics. If
+ the source does not exist, or if the destination cannot be turned
+ into a directory, give up now. Otherwise, strip trailing slashes
+ before calling rename. */
+ if (lstat (src, &src_st))
+ return -1;
+ if (lstat (dst, &dst_st))
+ {
+ if (errno != ENOENT || (!S_ISDIR (src_st.st_mode) && dst_slash))
+ return -1;
+ dst_exists = false;
+ }
+ else
+ {
+ if (S_ISDIR (dst_st.st_mode) != S_ISDIR (src_st.st_mode))
+ {
+ errno = S_ISDIR (dst_st.st_mode) ? EISDIR : ENOTDIR;
+ return -1;
+ }
+# if RENAME_HARD_LINK_BUG
+ if (SAME_INODE (src_st, dst_st))
+ return 0;
+# endif /* RENAME_HARD_LINK_BUG */
+ dst_exists = true;
+ }
+
+# if (RENAME_TRAILING_SLASH_SOURCE_BUG || RENAME_DEST_EXISTS_BUG \
+ || RENAME_HARD_LINK_BUG)
+ /* If the only bug was that a trailing slash was allowed on a
+ non-existing file destination, as in Solaris 10, then we've
+ already covered that situation. But if there is any problem with
+ a trailing slash on an existing source or destination, as in
+ Solaris 9, or if a directory can overwrite a symlink, as on
+ Cygwin 1.5, or if directories cannot be created with trailing
+ slash, as on NetBSD 1.6, then we must strip the offending slash
+ and check that we have not encountered a symlink instead of a
+ directory.
+
+ Stripping a trailing slash interferes with POSIX semantics, where
+ rename behavior on a symlink with a trailing slash operates on
+ the corresponding target directory. We prefer the GNU semantics
+ of rejecting any use of a symlink with trailing slash, but do not
+ enforce them, since Solaris 10 is able to obey POSIX semantics
+ and there might be clients expecting it, as counter-intuitive as
+ those semantics are.
+
+ Technically, we could also follow the POSIX behavior by chasing a
+ readlink trail, but that is harder to implement. */
+ if (src_slash)
+ {
+ src_temp = strdup (src);
+ if (!src_temp)
+ {
+ /* Rather than rely on strdup-posix, we set errno ourselves. */
+ rename_errno = ENOMEM;
+ goto out;
+ }
+ strip_trailing_slashes (src_temp);
+ if (lstat (src_temp, &src_st))
+ {
+ rename_errno = errno;
+ goto out;
+ }
+ if (S_ISLNK (src_st.st_mode))
+ goto out;
+ }
+ if (dst_slash)
+ {
+ dst_temp = strdup (dst);
+ if (!dst_temp)
+ {
+ rename_errno = ENOMEM;
+ goto out;
+ }
+ strip_trailing_slashes (dst_temp);
+ if (lstat (dst_temp, &dst_st))
+ {
+ if (errno != ENOENT)
+ {
+ rename_errno = errno;
+ goto out;
+ }
+ }
+ else if (S_ISLNK (dst_st.st_mode))
+ goto out;
+ }
+# endif /* RENAME_TRAILING_SLASH_SOURCE_BUG || RENAME_DEST_EXISTS_BUG
+ || RENAME_HARD_LINK_BUG */
+
+# if RENAME_DEST_EXISTS_BUG
+ /* Cygwin 1.5 sometimes behaves oddly when moving a non-empty
+ directory on top of an empty one (the old directory name can
+ reappear if the new directory tree is removed). Work around this
+ by removing the target first, but don't remove the target if it
+ is a subdirectory of the source. Note that we can end up losing
+ a directory if rename then fails, but it was empty, so not much
+ damage was done. */
+ if (dst_exists && S_ISDIR (dst_st.st_mode))
+ {
+ if (src_st.st_dev != dst_st.st_dev)
+ {
+ rename_errno = EXDEV;
+ goto out;
+ }
+ if (src_temp != src)
+ free (src_temp);
+ src_temp = canonicalize_file_name (src);
+ if (dst_temp != dst)
+ free (dst_temp);
+ dst_temp = canonicalize_file_name (dst);
+ if (!src_temp || !dst_temp)
+ {
+ rename_errno = ENOMEM;
+ goto out;
+ }
+ src_len = strlen (src_temp);
+ if (strncmp (src_temp, dst_temp, src_len) == 0
+ && dst_temp[src_len] == '/')
+ {
+ rename_errno = EINVAL;
+ goto out;
+ }
+ if (rmdir (dst))
+ {
+ rename_errno = errno;
+ goto out;
+ }
+ }
+# endif /* RENAME_DEST_EXISTS_BUG */
+
+ ret_val = rename (src_temp, dst_temp);
+ rename_errno = errno;
+ out:
+ if (src_temp != src)
+ free (src_temp);
+ if (dst_temp != dst)
+ free (dst_temp);
+ errno = rename_errno;
+ return ret_val;
+}
+#endif /* ! W32 platform */
diff --git a/lib/rmdir.c b/lib/rmdir.c
new file mode 100644
index 0000000..98104bf
--- /dev/null
+++ b/lib/rmdir.c
@@ -0,0 +1,53 @@
+/* Work around rmdir bugs.
+
+ Copyright (C) 1988, 1990, 1999, 2003-2006, 2009-2011 Free Software
+ Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include <unistd.h>
+
+#include <errno.h>
+#include <string.h>
+
+#include "dosname.h"
+
+#undef rmdir
+
+/* Remove directory DIR.
+ Return 0 if successful, -1 if not. */
+
+int
+rpl_rmdir (char const *dir)
+{
+ /* Work around cygwin 1.5.x bug where rmdir("dir/./") succeeds. */
+ size_t len = strlen (dir);
+ int result;
+ while (len && ISSLASH (dir[len - 1]))
+ len--;
+ if (len && dir[len - 1] == '.' && (1 == len || ISSLASH (dir[len - 2])))
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ result = rmdir (dir);
+ /* Work around mingw bug, where rmdir("file/") fails with EINVAL
+ instead of ENOTDIR. We've already filtered out trailing ., the
+ only reason allowed by POSIX for EINVAL. */
+ if (result == -1 && errno == EINVAL)
+ errno = ENOTDIR;
+ return result;
+}
diff --git a/lib/isnand.c b/lib/same-inode.h
similarity index 67%
copy from lib/isnand.c
copy to lib/same-inode.h
index adfac27..e89cb53 100644
--- a/lib/isnand.c
+++ b/lib/same-inode.h
@@ -1,5 +1,6 @@
-/* Test for NaN that does not need libm.
- Copyright (C) 2008-2011 Free Software Foundation, Inc.
+/* Determine whether two stat buffers refer to the same file.
+
+ Copyright (C) 2006, 2009-2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
@@ -14,6 +15,11 @@
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
-/* Written by Bruno Haible <address@hidden>, 2008. */
+#ifndef SAME_INODE_H
+# define SAME_INODE_H 1
+
+# define SAME_INODE(Stat_buf_1, Stat_buf_2) \
+ ((Stat_buf_1).st_ino == (Stat_buf_2).st_ino \
+ && (Stat_buf_1).st_dev == (Stat_buf_2).st_dev)
-#include "isnan.c"
+#endif
diff --git a/lib/stripslash.c b/lib/stripslash.c
new file mode 100644
index 0000000..31034cb
--- /dev/null
+++ b/lib/stripslash.c
@@ -0,0 +1,45 @@
+/* stripslash.c -- remove redundant trailing slashes from a file name
+
+ Copyright (C) 1990, 2001, 2003-2006, 2009-2011 Free Software Foundation,
+ Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+#include <config.h>
+
+#include "dirname.h"
+
+/* Remove trailing slashes from FILE. Return true if a trailing slash
+ was removed. This is useful when using file name completion from a
+ shell that adds a "/" after directory names (such as tcsh and
+ bash), because on symlinks to directories, several system calls
+ have different semantics according to whether a trailing slash is
+ present. */
+
+bool
+strip_trailing_slashes (char *file)
+{
+ char *base = last_component (file);
+ char *base_lim;
+ bool had_slash;
+
+ /* last_component returns "" for file system roots, but we need to turn
+ `///' into `/'. */
+ if (! *base)
+ base = file;
+ base_lim = base + base_len (base);
+ had_slash = (*base_lim != '\0');
+ *base_lim = '\0';
+ return had_slash;
+}
diff --git a/libguile/Makefile.am b/libguile/Makefile.am
index 9cc1434..e69a155 100644
--- a/libguile/Makefile.am
+++ b/libguile/Makefile.am
@@ -433,7 +433,7 @@ address@hidden@_la_SOURCES = _scm.h \
dynl.c regex-posix.c \
posix.c net_db.c socket.c \
debug-malloc.c mkstemp.c \
- win32-uname.c win32-dirent.c win32-socket.c \
+ win32-uname.c win32-socket.c \
locale-categories.h
## delete guile-snarf.awk from the installation bindir, in case it's
@@ -450,7 +450,7 @@ noinst_HEADERS = conv-integer.i.c conv-uinteger.i.c
\
ieee-754.h \
srfi-14.i.c \
quicksort.i.c \
- win32-uname.h win32-dirent.h win32-socket.h \
+ win32-uname.h win32-socket.h \
private-gc.h private-options.h
# vm instructions
diff --git a/libguile/filesys.c b/libguile/filesys.c
index 2429e80..86287a1 100644
--- a/libguile/filesys.c
+++ b/libguile/filesys.c
@@ -97,11 +97,7 @@
#endif
-#if defined (__MINGW32__) || defined (_MSC_VER) || defined (__BORLANDC__)
-# include "win32-dirent.h"
-# define NAMLEN(dirent) strlen((dirent)->d_name)
-/* The following bits are per AC_HEADER_DIRENT doco in the autoconf manual */
-#elif HAVE_DIRENT_H
+#if HAVE_DIRENT_H
# include <dirent.h>
# define NAMLEN(dirent) strlen((dirent)->d_name)
#else
diff --git a/libguile/load.c b/libguile/load.c
index fa19a2a..b06fd77 100644
--- a/libguile/load.c
+++ b/libguile/load.c
@@ -293,6 +293,12 @@ scm_init_load_path ()
snprintf (cachedir, sizeof(cachedir), "%s/.cache/" FALLBACK_DIR,
pwd->pw_dir);
#endif /* HAVE_GETPWENT */
+#ifdef __MINGW32__
+ else if ((e = getenv ("LOCALAPPDATA")))
+ snprintf (cachedir, sizeof (cachedir), "%s/.cache/" FALLBACK_DIR, e);
+ else if ((e = getenv ("APPDATA")))
+ snprintf (cachedir, sizeof (cachedir), "%s/.cache/" FALLBACK_DIR, e);
+#endif /* __MINGW32__ */
else
cachedir[0] = 0;
@@ -730,14 +736,27 @@ static SCM
auto_compile_catch_handler (void *data, SCM tag, SCM throw_args)
{
SCM source = PTR2SCM (data);
+ SCM oport, lines;
+
+ oport = scm_open_output_string ();
+ scm_print_exception (oport, SCM_BOOL_F, tag, throw_args);
+
scm_puts (";;; WARNING: compilation of ", scm_current_error_port ());
scm_display (source, scm_current_error_port ());
scm_puts (" failed:\n", scm_current_error_port ());
- scm_puts (";;; key ", scm_current_error_port ());
- scm_write (tag, scm_current_error_port ());
- scm_puts (", throw args ", scm_current_error_port ());
- scm_write (throw_args, scm_current_error_port ());
- scm_newline (scm_current_error_port ());
+
+ lines = scm_string_split (scm_get_output_string (oport),
+ SCM_MAKE_CHAR ('\n'));
+ for (; scm_is_pair (lines); lines = scm_cdr (lines))
+ if (scm_c_string_length (scm_car (lines)))
+ {
+ scm_puts (";;; ", scm_current_error_port ());
+ scm_display (scm_car (lines), scm_current_error_port ());
+ scm_newline (scm_current_error_port ());
+ }
+
+ scm_close_port (oport);
+
return SCM_BOOL_F;
}
diff --git a/libguile/strings.c b/libguile/strings.c
index e54c27d..b43ccab 100644
--- a/libguile/strings.c
+++ b/libguile/strings.c
@@ -2052,8 +2052,9 @@ SCM_DEFINE (scm_string_normalize_nfkd,
"string-normalize-nfkd", 1, 0, 0,
}
#undef FUNC_NAME
-/* converts C scm_array of strings to SCM scm_list of strings. */
-/* If argc < 0, a null terminated scm_array is assumed. */
+/* converts C scm_array of strings to SCM scm_list of strings.
+ If argc < 0, a null terminated scm_array is assumed.
+ The current locale encoding is assumed */
SCM
scm_makfromstrs (int argc, char **argv)
{
@@ -2067,37 +2068,43 @@ scm_makfromstrs (int argc, char **argv)
}
/* Return a newly allocated array of char pointers to each of the strings
- in args, with a terminating NULL pointer. */
+ in args, with a terminating NULL pointer. The strings are encoded using
+ the current locale. */
char **
scm_i_allocate_string_pointers (SCM list)
#define FUNC_NAME "scm_i_allocate_string_pointers"
{
char **result;
- int len = scm_ilength (list);
+ int list_len = scm_ilength (list);
int i;
- if (len < 0)
+ if (list_len < 0)
scm_wrong_type_arg_msg (NULL, 0, list, "proper list");
- result = scm_gc_malloc ((len + 1) * sizeof (char *),
+ result = scm_gc_malloc ((list_len + 1) * sizeof (char *),
"string pointers");
- result[len] = NULL;
+ result[list_len] = NULL;
- /* The list might be have been modified in another thread, so
+ /* The list might have been modified in another thread, so
we check LIST before each access.
*/
- for (i = 0; i < len && scm_is_pair (list); i++)
+ for (i = 0; i < list_len && scm_is_pair (list); i++)
{
- SCM str;
- size_t len;
-
- str = SCM_CAR (list);
- len = scm_c_string_length (str);
-
- result[i] = scm_gc_malloc_pointerless (len + 1, "string pointers");
- memcpy (result[i], scm_i_string_chars (str), len);
+ SCM str = SCM_CAR (list);
+ size_t len; /* String length in bytes */
+ char *c_str = scm_to_locale_stringn (str, &len);
+
+ /* OPTIMIZE-ME: Right now, scm_to_locale_stringn always uses
+ scm_malloc to allocate the returned string, which must be
+ explicitly deallocated. This forces us to copy the string a
+ second time into a new buffer. Ideally there would be variants
+ of scm_to_*_stringn that can return garbage-collected buffers. */
+
+ result[i] = scm_gc_malloc_pointerless (len + 1, "string");
+ memcpy (result[i], c_str, len);
result[i][len] = '\0';
+ free (c_str);
list = SCM_CDR (list);
}
diff --git a/libguile/win32-dirent.c b/libguile/win32-dirent.c
deleted file mode 100644
index de170c7..0000000
--- a/libguile/win32-dirent.c
+++ /dev/null
@@ -1,133 +0,0 @@
-/* Copyright (C) 2001, 2006, 2008 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
- * as published by the Free Software Foundation; either version 3 of
- * the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA
- */
-
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
-
-#include "libguile/__scm.h"
-
-#include <windows.h>
-#include <stdio.h>
-#include <string.h>
-
-#include "win32-dirent.h"
-
-DIR *
-opendir (const char * name)
-{
- DIR *dir;
- HANDLE hnd;
- char *file;
- WIN32_FIND_DATA find;
-
- if (!name || !*name)
- return NULL;
- file = malloc (strlen (name) + 3);
- strcpy (file, name);
- if (file[strlen (name) - 1] != '/' && file[strlen (name) - 1] != '\\')
- strcat (file, "/*");
- else
- strcat (file, "*");
-
- if ((hnd = FindFirstFile (file, &find)) == INVALID_HANDLE_VALUE)
- {
- free (file);
- return NULL;
- }
-
- dir = malloc (sizeof (DIR));
- dir->mask = file;
- dir->fd = (int) hnd;
- dir->data = malloc (sizeof (WIN32_FIND_DATA));
- dir->allocation = sizeof (WIN32_FIND_DATA);
- dir->size = dir->allocation;
- dir->filepos = 0;
- memcpy (dir->data, &find, sizeof (WIN32_FIND_DATA));
- return dir;
-}
-
-struct dirent *
-readdir (DIR * dir)
-{
- static struct dirent entry;
- WIN32_FIND_DATA *find;
-
- entry.d_ino = 0;
- entry.d_type = 0;
- find = (WIN32_FIND_DATA *) dir->data;
-
- if (dir->filepos)
- {
- if (!FindNextFile ((HANDLE) dir->fd, find))
- return NULL;
- }
-
- entry.d_off = dir->filepos;
- strncpy (entry.d_name, find->cFileName, sizeof (entry.d_name));
- entry.d_reclen = strlen (find->cFileName);
- dir->filepos++;
- return &entry;
-}
-
-int
-closedir (DIR * dir)
-{
- HANDLE hnd = (HANDLE) dir->fd;
- free (dir->data);
- free (dir->mask);
- free (dir);
- return FindClose (hnd) ? 0 : -1;
-}
-
-void
-rewinddir (DIR * dir)
-{
- HANDLE hnd = (HANDLE) dir->fd;
- WIN32_FIND_DATA *find = (WIN32_FIND_DATA *) dir->data;
-
- FindClose (hnd);
- hnd = FindFirstFile (dir->mask, find);
- dir->fd = (int) hnd;
- dir->filepos = 0;
-}
-
-void
-seekdir (DIR * dir, off_t offset)
-{
- off_t n;
-
- rewinddir (dir);
- for (n = 0; n < offset; n++)
- {
- if (FindNextFile ((HANDLE) dir->fd, (WIN32_FIND_DATA *) dir->data))
- dir->filepos++;
- }
-}
-
-off_t
-telldir (DIR * dir)
-{
- return dir->filepos;
-}
-
-int
-dirfd (DIR * dir)
-{
- return dir->fd;
-}
diff --git a/libguile/win32-dirent.h b/libguile/win32-dirent.h
deleted file mode 100644
index 578db49..0000000
--- a/libguile/win32-dirent.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/* classes: h_files */
-
-#ifndef SCM_WIN32_DIRENT_H
-#define SCM_WIN32_DIRENT_H
-
-/* Copyright (C) 2001, 2006 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
- * as published by the Free Software Foundation; either version 3 of
- * the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
- * 02110-1301 USA
- */
-
-/* Directory stream type.
- The miscellaneous Unix `readdir' implementations read directory data
- into a buffer and return `struct dirent *' pointers into it. */
-
-#include <sys/types.h>
-
-struct dirstream
-{
- int fd; /* File descriptor. */
- char *data; /* Directory block. */
- size_t allocation; /* Space allocated for the block. */
- size_t size; /* Total valid data in the block. */
- size_t offset; /* Current offset into the block. */
- off_t filepos; /* Position of next entry to read. */
- char *mask; /* Initial file mask. */
-};
-
-struct dirent
-{
- long d_ino;
- off_t d_off;
- unsigned short int d_reclen;
- unsigned char d_type;
- char d_name[256];
-};
-
-#define d_fileno d_ino /* Backwards compatibility. */
-
-/* This is the data type of directory stream objects.
- The actual structure is opaque to users. */
-
-typedef struct dirstream DIR;
-
-DIR * opendir (const char * name);
-struct dirent * readdir (DIR * dir);
-int closedir (DIR * dir);
-void rewinddir (DIR * dir);
-void seekdir (DIR * dir, off_t offset);
-off_t telldir (DIR * dir);
-int dirfd (DIR * dir);
-
-#endif /* SCM_WIN32_DIRENT_H */
diff --git a/m4/dirname.m4 b/m4/dirname.m4
new file mode 100644
index 0000000..dcec7e4
--- /dev/null
+++ b/m4/dirname.m4
@@ -0,0 +1,19 @@
+#serial 10 -*- autoconf -*-
+dnl Copyright (C) 2002-2006, 2009-2011 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_DIRNAME],
+[
+ AC_REQUIRE([gl_DIRNAME_LGPL])
+])
+
+AC_DEFUN([gl_DIRNAME_LGPL],
+[
+ dnl Prerequisites of lib/dirname.h.
+ AC_REQUIRE([gl_DOUBLE_SLASH_ROOT])
+
+ dnl No prerequisites of lib/basename-lgpl.c, lib/dirname-lgpl.c,
+ dnl lib/stripslash.c.
+])
diff --git a/m4/gnulib-cache.m4 b/m4/gnulib-cache.m4
index 64dfef0..a0d0ff8 100644
--- a/m4/gnulib-cache.m4
+++ b/m4/gnulib-cache.m4
@@ -15,7 +15,7 @@
# Specification in the form of a command-line invocation:
-# gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4
--doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3
--no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept
alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil
close connect duplocale environ extensions flock floor fpieee frexp full-read
full-write func gendocs getaddrinfo getpeername getsockname getsockopt
git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib
iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions
lib-symbol-visibility libunistring listen locale log1p maintainer-makefile
malloc-gnu malloca nproc open pipe2 putenv recv recvfrom send sendto setsockopt
shutdown socket stat-time stdlib strftime striconveh string sys_stat trunc
verify vsnprintf warnings wchar
+# gnulib-tool --import --dir=. --lib=libgnu --source-base=lib --m4-base=m4
--doc-base=doc --tests-base=tests --aux-dir=build-aux --lgpl=3
--no-conditional-dependencies --libtool --macro-prefix=gl --no-vc-files accept
alignof alloca-opt announce-gen autobuild bind byteswap canonicalize-lgpl ceil
close connect duplocale environ extensions flock floor fpieee frexp full-read
full-write func gendocs getaddrinfo getpeername getsockname getsockopt
git-version-gen gitlog-to-changelog gnu-web-doc-update gnupload havelib
iconv_open-utf inet_ntop inet_pton isinf isnan ldexp lib-symbol-versions
lib-symbol-visibility libunistring listen locale log1p maintainer-makefile
malloc-gnu malloca nproc open pipe2 putenv recv recvfrom rename send sendto
setsockopt shutdown socket stat-time stdlib strftime striconveh string sys_stat
trunc verify vsnprintf warnings wchar
# Specification in the form of a few gnulib-tool.m4 macro invocations:
gl_LOCAL_DIR([])
@@ -72,6 +72,7 @@ gl_MODULES([
putenv
recv
recvfrom
+ rename
send
sendto
setsockopt
diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4
index 79f61fb..f532ac6 100644
--- a/m4/gnulib-comp.m4
+++ b/m4/gnulib-comp.m4
@@ -46,7 +46,9 @@ AC_DEFUN([gl_EARLY],
# Code from module ceil:
# Code from module close:
# Code from module connect:
+ # Code from module dirname-lgpl:
# Code from module dosname:
+ # Code from module double-slash-root:
# Code from module duplocale:
# Code from module environ:
# Code from module errno:
@@ -130,8 +132,11 @@ AC_DEFUN([gl_EARLY],
# Code from module readlink:
# Code from module recv:
# Code from module recvfrom:
+ # Code from module rename:
+ # Code from module rmdir:
# Code from module safe-read:
# Code from module safe-write:
+ # Code from module same-inode:
# Code from module send:
# Code from module sendto:
# Code from module servent:
@@ -230,6 +235,8 @@ if test "$ac_cv_header_winsock2_h" = yes; then
AC_LIBOBJ([connect])
fi
gl_SYS_SOCKET_MODULE_INDICATOR([connect])
+gl_DIRNAME_LGPL
+gl_DOUBLE_SLASH_ROOT
gl_FUNC_DUPLOCALE
if test $REPLACE_DUPLOCALE = 1; then
AC_LIBOBJ([duplocale])
@@ -472,6 +479,16 @@ if test "$ac_cv_header_winsock2_h" = yes; then
AC_LIBOBJ([recvfrom])
fi
gl_SYS_SOCKET_MODULE_INDICATOR([recvfrom])
+gl_FUNC_RENAME
+if test $REPLACE_RENAME = 1; then
+ AC_LIBOBJ([rename])
+fi
+gl_STDIO_MODULE_INDICATOR([rename])
+gl_FUNC_RMDIR
+if test $REPLACE_RMDIR = 1; then
+ AC_LIBOBJ([rmdir])
+fi
+gl_UNISTD_MODULE_INDICATOR([rmdir])
gl_PREREQ_SAFE_READ
gl_PREREQ_SAFE_WRITE
AC_REQUIRE([gl_HEADER_SYS_SOCKET])
@@ -736,6 +753,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/alloca.in.h
lib/arpa_inet.in.h
lib/asnprintf.c
+ lib/basename-lgpl.c
lib/binary-io.h
lib/bind.c
lib/byteswap.in.h
@@ -749,6 +767,8 @@ AC_DEFUN([gl_FILE_LIST], [
lib/ceil.c
lib/close.c
lib/connect.c
+ lib/dirname-lgpl.c
+ lib/dirname.h
lib/dosname.h
lib/duplocale.c
lib/errno.in.h
@@ -825,10 +845,13 @@ AC_DEFUN([gl_FILE_LIST], [
lib/readlink.c
lib/recv.c
lib/recvfrom.c
+ lib/rename.c
+ lib/rmdir.c
lib/safe-read.c
lib/safe-read.h
lib/safe-write.c
lib/safe-write.h
+ lib/same-inode.h
lib/send.c
lib/sendto.c
lib/setsockopt.c
@@ -851,6 +874,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/striconveh.c
lib/striconveh.h
lib/string.in.h
+ lib/stripslash.c
lib/sys_file.in.h
lib/sys_socket.in.h
lib/sys_stat.in.h
@@ -888,6 +912,7 @@ AC_DEFUN([gl_FILE_LIST], [
m4/ceil.m4
m4/check-math-lib.m4
m4/close.m4
+ m4/dirname.m4
m4/double-slash-root.m4
m4/duplocale.m4
m4/eealloc.m4
@@ -961,6 +986,8 @@ AC_DEFUN([gl_FILE_LIST], [
m4/putenv.m4
m4/read.m4
m4/readlink.m4
+ m4/rename.m4
+ m4/rmdir.m4
m4/safe-read.m4
m4/safe-write.m4
m4/servent.m4
diff --git a/m4/rename.m4 b/m4/rename.m4
new file mode 100644
index 0000000..c938b0d
--- /dev/null
+++ b/m4/rename.m4
@@ -0,0 +1,184 @@
+# serial 24
+
+# Copyright (C) 2001, 2003, 2005-2006, 2009-2011 Free Software Foundation, Inc.
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+dnl From Volker Borchert.
+dnl Determine whether rename works for source file names with a trailing slash.
+dnl The rename from SunOS 4.1.1_U1 doesn't.
+dnl
+dnl If it doesn't, then define RENAME_TRAILING_SLASH_BUG and arrange
+dnl to compile the wrapper function.
+dnl
+
+AC_DEFUN([gl_FUNC_RENAME],
+[
+ AC_REQUIRE([AC_CANONICAL_HOST])
+ AC_REQUIRE([gl_STDIO_H_DEFAULTS])
+ AC_CHECK_FUNCS_ONCE([lstat])
+
+ dnl Solaris 10, AIX 7.1 mistakenly allow rename("file","name/").
+ dnl NetBSD 1.6 mistakenly forbids rename("dir","name/").
+ dnl FreeBSD 7.2 mistakenly allows rename("file","link-to-file/").
+ dnl The Solaris bug can be worked around without stripping
+ dnl trailing slash, while the NetBSD bug requires stripping;
+ dnl the two conditions can be distinguished by whether hard
+ dnl links are also broken.
+ AC_CACHE_CHECK([whether rename honors trailing slash on destination],
+ [gl_cv_func_rename_slash_dst_works],
+ [rm -rf conftest.f conftest.f1 conftest.f2 conftest.d1 conftest.d2
conftest.lnk
+ touch conftest.f && touch conftest.f1 && mkdir conftest.d1 ||
+ AC_MSG_ERROR([cannot create temporary files])
+ # Assume that if we have lstat, we can also check symlinks.
+ if test $ac_cv_func_lstat = yes; then
+ ln -s conftest.f conftest.lnk
+ fi
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM([[
+# include <stdio.h>
+# include <stdlib.h>
+ ]],
+ [[int result = 0;
+ if (rename ("conftest.f1", "conftest.f2/") == 0)
+ result |= 1;
+ if (rename ("conftest.d1", "conftest.d2/") != 0)
+ result |= 2;
+#if HAVE_LSTAT
+ if (rename ("conftest.f", "conftest.lnk/") == 0)
+ result |= 4;
+#endif
+ return result;
+ ]])],
+ [gl_cv_func_rename_slash_dst_works=yes],
+ [gl_cv_func_rename_slash_dst_works=no],
+ dnl When crosscompiling, assume rename is broken.
+ [gl_cv_func_rename_slash_dst_works="guessing no"])
+ rm -rf conftest.f conftest.f1 conftest.f2 conftest.d1 conftest.d2
conftest.lnk
+ ])
+ if test "x$gl_cv_func_rename_slash_dst_works" != xyes; then
+ REPLACE_RENAME=1
+ AC_DEFINE([RENAME_TRAILING_SLASH_DEST_BUG], [1],
+ [Define if rename does not correctly handle slashes on the destination
+ argument, such as on Solaris 10 or NetBSD 1.6.])
+ fi
+
+ dnl SunOS 4.1.1_U1 mistakenly forbids rename("dir/","name").
+ dnl Solaris 9 mistakenly allows rename("file/","name").
+ dnl FreeBSD 7.2 mistakenly allows rename("link-to-file/","name").
+ dnl These bugs require stripping trailing slash to avoid corrupting
+ dnl symlinks with a trailing slash.
+ AC_CACHE_CHECK([whether rename honors trailing slash on source],
+ [gl_cv_func_rename_slash_src_works],
+ [rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.d3
conftest.lnk
+ touch conftest.f && touch conftest.f1 && mkdir conftest.d1 ||
+ AC_MSG_ERROR([cannot create temporary files])
+ # Assume that if we have lstat, we can also check symlinks.
+ if test $ac_cv_func_lstat = yes; then
+ ln -s conftest.f conftest.lnk
+ fi
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM([[
+# include <stdio.h>
+# include <stdlib.h>
+ ]],
+ [[int result = 0;
+ if (rename ("conftest.f1/", "conftest.d3") == 0)
+ result |= 1;
+ if (rename ("conftest.d1/", "conftest.d2") != 0)
+ result |= 2;
+#if HAVE_LSTAT
+ if (rename ("conftest.lnk/", "conftest.f") == 0)
+ result |= 4;
+#endif
+ return result;
+ ]])],
+ [gl_cv_func_rename_slash_src_works=yes],
+ [gl_cv_func_rename_slash_src_works=no],
+ dnl When crosscompiling, assume rename is broken.
+ [gl_cv_func_rename_slash_src_works="guessing no"])
+ rm -rf conftest.f conftest.f1 conftest.d1 conftest.d2 conftest.d3
conftest.lnk
+ ])
+ if test "x$gl_cv_func_rename_slash_src_works" != xyes; then
+ REPLACE_RENAME=1
+ AC_DEFINE([RENAME_TRAILING_SLASH_SOURCE_BUG], [1],
+ [Define if rename does not correctly handle slashes on the source
+ argument, such as on Solaris 9 or cygwin 1.5.])
+ fi
+
+ dnl NetBSD 1.6 and cygwin 1.5.x mistakenly reduce hard link count
+ dnl on rename("h1","h2").
+ dnl This bug requires stat'ting targets prior to attempting rename.
+ AC_CACHE_CHECK([whether rename manages hard links correctly],
+ [gl_cv_func_rename_link_works],
+ [rm -rf conftest.f conftest.f1
+ if touch conftest.f && ln conftest.f conftest.f1 &&
+ set x `ls -i conftest.f conftest.f1` && test "$2" = "$4"; then
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM([[
+# include <stdio.h>
+# include <stdlib.h>
+# include <unistd.h>
+ ]],
+ [[int result = 0;
+ if (rename ("conftest.f", "conftest.f1"))
+ result |= 1;
+ if (unlink ("conftest.f1"))
+ result |= 2;
+ if (rename ("conftest.f", "conftest.f"))
+ result |= 4;
+ if (rename ("conftest.f1", "conftest.f1") == 0)
+ result |= 8;
+ return result;
+ ]])],
+ [gl_cv_func_rename_link_works=yes],
+ [gl_cv_func_rename_link_works=no],
+ dnl When crosscompiling, assume rename is broken.
+ [gl_cv_func_rename_link_works="guessing no"])
+ else
+ gl_cv_func_rename_link_works="guessing no"
+ fi
+ rm -rf conftest.f conftest.f1
+ ])
+ if test "x$gl_cv_func_rename_link_works" != xyes; then
+ REPLACE_RENAME=1
+ AC_DEFINE([RENAME_HARD_LINK_BUG], [1],
+ [Define if rename fails to leave hard links alone, as on NetBSD 1.6
+ or Cygwin 1.5.])
+ fi
+
+ dnl Cygwin 1.5.x mistakenly allows rename("dir","file").
+ dnl mingw mistakenly forbids rename("dir1","dir2").
+ dnl These bugs require stripping trailing slash to avoid corrupting
+ dnl symlinks with a trailing slash.
+ AC_CACHE_CHECK([whether rename manages existing destinations correctly],
+ [gl_cv_func_rename_dest_works],
+ [rm -rf conftest.f conftest.d1 conftest.d2
+ touch conftest.f && mkdir conftest.d1 conftest.d2 ||
+ AC_MSG_ERROR([cannot create temporary files])
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM([[
+# include <stdio.h>
+# include <stdlib.h>
+ ]],
+ [[int result = 0;
+ if (rename ("conftest.d1", "conftest.d2") != 0)
+ result |= 1;
+ if (rename ("conftest.d2", "conftest.f") == 0)
+ result |= 2;
+ return result;
+ ]])],
+ [gl_cv_func_rename_dest_works=yes],
+ [gl_cv_func_rename_dest_works=no],
+ dnl When crosscompiling, assume rename is broken.
+ [gl_cv_func_rename_dest_works="guessing no"])
+ rm -rf conftest.f conftest.d1 conftest.d2
+ ])
+ if test "x$gl_cv_func_rename_dest_works" != xyes; then
+ REPLACE_RENAME=1
+ AC_DEFINE([RENAME_DEST_EXISTS_BUG], [1],
+ [Define if rename does not work when the destination file exists,
+ as on Cygwin 1.5 or Windows.])
+ fi
+])
diff --git a/m4/rmdir.m4 b/m4/rmdir.m4
new file mode 100644
index 0000000..5284c7e
--- /dev/null
+++ b/m4/rmdir.m4
@@ -0,0 +1,34 @@
+# rmdir.m4 serial 11
+dnl Copyright (C) 2002, 2005, 2009-2011 Free Software Foundation, Inc.
+dnl This file is free software; the Free Software Foundation
+dnl gives unlimited permission to copy and/or distribute it,
+dnl with or without modifications, as long as this notice is preserved.
+
+AC_DEFUN([gl_FUNC_RMDIR],
+[
+ AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
+ dnl Detect cygwin 1.5.x bug.
+ AC_CACHE_CHECK([whether rmdir works], [gl_cv_func_rmdir_works],
+ [mkdir conftest.dir
+ touch conftest.file
+ AC_RUN_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[#include <stdio.h>
+ #include <errno.h>
+ #include <unistd.h>
+]], [[int result = 0;
+ if (!rmdir ("conftest.file/"))
+ result |= 1;
+ else if (errno != ENOTDIR)
+ result |= 2;
+ if (!rmdir ("conftest.dir/./"))
+ result |= 4;
+ return result;
+ ]])],
+ [gl_cv_func_rmdir_works=yes], [gl_cv_func_rmdir_works=no],
+ [gl_cv_func_rmdir_works="guessing no"])
+ rm -rf conftest.dir conftest.file])
+ if test x"$gl_cv_func_rmdir_works" != xyes; then
+ REPLACE_RMDIR=1
+ fi
+])
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index 7c9e3c5..2d965d8 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -3411,7 +3411,7 @@ module '(ice-9 q) '(make-q q-length))}."
(define %auto-compilation-options
;; Default `compile-file' option when auto-compiling.
- '(#:warnings (unbound-variable arity-mismatch)))
+ '(#:warnings (unbound-variable arity-mismatch format)))
(define* (load-in-vicinity dir path #:optional reader)
;; Returns the .go file corresponding to `name'. Does not search load
@@ -3470,8 +3470,14 @@ module '(ice-9 q) '(make-q q-length))}."
(else #f))))))
(lambda (k . args)
(format (current-error-port)
- ";;; WARNING: compilation of ~a failed:\n;;; key ~a,
throw_args ~s\n"
- name k args)
+ ";;; WARNING: compilation of ~a failed:\n" name)
+ (for-each (lambda (s)
+ (if (not (string-null? s))
+ (format (current-error-port) ";;; ~a\n" s)))
+ (string-split
+ (call-with-output-string
+ (lambda (port) (print-exception port #f k args)))
+ #\newline))
#f)))
(define (absolute-path? path)
diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm
index 9270a69..ffd51d3 100644
--- a/module/ice-9/psyntax-pp.scm
+++ b/module/ice-9/psyntax-pp.scm
@@ -106,11496 +106,1364 @@
#{src 837}#
#{name 838}#
#{args 839}#)))
- (#{make-sequence 229}#
- (lambda (#{src 843}# head tail)
+ (#{make-seq 229}#
+ (lambda (#{src 843}# #{head 844}# #{tail 845}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 13)
#{src 843}#
- head tail)))
+ #{head 844}#
+ #{tail 845}#)))
(#{make-lambda 231}#
- (lambda (#{src 847}# #{meta 848}# #{body 849}#)
+ (lambda (#{src 849}# #{meta 850}# #{body 851}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 14)
- #{src 847}#
- #{meta 848}#
- #{body 849}#)))
+ #{src 849}#
+ #{meta 850}#
+ #{body 851}#)))
(#{make-lambda-case 233}#
- (lambda (#{src 853}#
- #{req 854}#
- #{opt 855}#
- #{rest 856}#
- #{kw 857}#
- #{inits 858}#
- #{gensyms 859}#
- #{body 860}#
- #{alternate 861}#)
+ (lambda (#{src 855}#
+ #{req 856}#
+ #{opt 857}#
+ #{rest 858}#
+ #{kw 859}#
+ #{inits 860}#
+ #{gensyms 861}#
+ #{body 862}#
+ #{alternate 863}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 15)
- #{src 853}#
- #{req 854}#
- #{opt 855}#
- #{rest 856}#
- #{kw 857}#
- #{inits 858}#
- #{gensyms 859}#
- #{body 860}#
- #{alternate 861}#)))
+ #{src 855}#
+ #{req 856}#
+ #{opt 857}#
+ #{rest 858}#
+ #{kw 859}#
+ #{inits 860}#
+ #{gensyms 861}#
+ #{body 862}#
+ #{alternate 863}#)))
(#{make-let 235}#
- (lambda (#{src 871}#
- #{names 872}#
- #{gensyms 873}#
- #{vals 874}#
- #{body 875}#)
+ (lambda (#{src 873}#
+ #{names 874}#
+ #{gensyms 875}#
+ #{vals 876}#
+ #{body 877}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 16)
- #{src 871}#
- #{names 872}#
- #{gensyms 873}#
- #{vals 874}#
- #{body 875}#)))
+ #{src 873}#
+ #{names 874}#
+ #{gensyms 875}#
+ #{vals 876}#
+ #{body 877}#)))
(#{make-letrec 237}#
- (lambda (#{src 881}#
- #{in-order? 882}#
- #{names 883}#
- #{gensyms 884}#
- #{vals 885}#
- #{body 886}#)
+ (lambda (#{src 883}#
+ #{in-order? 884}#
+ #{names 885}#
+ #{gensyms 886}#
+ #{vals 887}#
+ #{body 888}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 17)
- #{src 881}#
- #{in-order? 882}#
- #{names 883}#
- #{gensyms 884}#
- #{vals 885}#
- #{body 886}#)))
+ #{src 883}#
+ #{in-order? 884}#
+ #{names 885}#
+ #{gensyms 886}#
+ #{vals 887}#
+ #{body 888}#)))
(#{make-dynlet 239}#
- (lambda (#{src 893}#
- #{fluids 894}#
- #{vals 895}#
- #{body 896}#)
+ (lambda (#{src 895}#
+ #{fluids 896}#
+ #{vals 897}#
+ #{body 898}#)
(make-struct/no-tail
(vector-ref %expanded-vtables 18)
- #{src 893}#
- #{fluids 894}#
- #{vals 895}#
- #{body 896}#)))
+ #{src 895}#
+ #{fluids 896}#
+ #{vals 897}#
+ #{body 898}#)))
(#{lambda? 242}#
- (lambda (#{x 901}#)
- (if (struct? #{x 901}#)
- (eq? (struct-vtable #{x 901}#)
+ (lambda (#{x 903}#)
+ (if (struct? #{x 903}#)
+ (eq? (struct-vtable #{x 903}#)
(vector-ref %expanded-vtables 14))
#f)))
(#{lambda-meta 244}#
- (lambda (#{x 905}#) (struct-ref #{x 905}# 1)))
+ (lambda (#{x 907}#) (struct-ref #{x 907}# 1)))
(#{set-lambda-meta! 246}#
- (lambda (#{x 907}# #{v 908}#)
- (struct-set! #{x 907}# 1 #{v 908}#)))
+ (lambda (#{x 909}# #{v 910}#)
+ (struct-set! #{x 909}# 1 #{v 910}#)))
(#{top-level-eval-hook 252}#
- (lambda (#{x 911}# #{mod 912}#)
- (primitive-eval #{x 911}#)))
+ (lambda (#{x 913}# #{mod 914}#)
+ (primitive-eval #{x 913}#)))
(#{local-eval-hook 254}#
- (lambda (#{x 915}# #{mod 916}#)
- (primitive-eval #{x 915}#)))
+ (lambda (#{x 917}# #{mod 918}#)
+ (primitive-eval #{x 917}#)))
(#{put-global-definition-hook 257}#
- (lambda (#{symbol 919}# #{type 920}# #{val 921}#)
+ (lambda (#{symbol 921}# #{type 922}# #{val 923}#)
(module-define!
(current-module)
- #{symbol 919}#
+ #{symbol 921}#
(make-syntax-transformer
- #{symbol 919}#
- #{type 920}#
- #{val 921}#))))
+ #{symbol 921}#
+ #{type 922}#
+ #{val 923}#))))
(#{get-global-definition-hook 259}#
- (lambda (#{symbol 925}# #{module 926}#)
+ (lambda (#{symbol 927}# #{module 928}#)
(begin
- (if (if (not #{module 926}#) (current-module) #f)
+ (if (if (not #{module 928}#) (current-module) #f)
(warn "module system is booted, we should have a module"
- #{symbol 925}#))
- (begin
- (let ((#{v 932}# (module-variable
- (if #{module 926}#
- (resolve-module (cdr #{module 926}#))
- (current-module))
- #{symbol 925}#)))
- (if #{v 932}#
- (if (variable-bound? #{v 932}#)
- (begin
- (let ((#{val 937}# (variable-ref #{v 932}#)))
- (if (macro? #{val 937}#)
- (if (macro-type #{val 937}#)
- (cons (macro-type #{val 937}#)
- (macro-binding #{val 937}#))
- #f)
- #f)))
- #f)
- #f))))))
+ #{symbol 927}#))
+ (let ((#{v 934}# (module-variable
+ (if #{module 928}#
+ (resolve-module (cdr #{module 928}#))
+ (current-module))
+ #{symbol 927}#)))
+ (if #{v 934}#
+ (if (variable-bound? #{v 934}#)
+ (let ((#{val 939}# (variable-ref #{v 934}#)))
+ (if (macro? #{val 939}#)
+ (if (macro-type #{val 939}#)
+ (cons (macro-type #{val 939}#)
+ (macro-binding #{val 939}#))
+ #f)
+ #f))
+ #f)
+ #f)))))
(#{decorate-source 261}#
- (lambda (#{e 941}# #{s 942}#)
+ (lambda (#{e 943}# #{s 944}#)
(begin
- (if (if (pair? #{e 941}#) #{s 942}# #f)
- (set-source-properties! #{e 941}# #{s 942}#))
- #{e 941}#)))
+ (if (if (pair? #{e 943}#) #{s 944}# #f)
+ (set-source-properties! #{e 943}# #{s 944}#))
+ #{e 943}#)))
(#{maybe-name-value! 263}#
- (lambda (#{name 947}# #{val 948}#)
- (if (#{lambda? 242}# #{val 948}#)
- (begin
- (let ((#{meta 952}# (#{lambda-meta 244}# #{val 948}#)))
- (if (not (assq 'name #{meta 952}#))
- (#{set-lambda-meta! 246}#
- #{val 948}#
- (cons (cons 'name #{name 947}#) #{meta 952}#))))))))
+ (lambda (#{name 949}# #{val 950}#)
+ (if (#{lambda? 242}# #{val 950}#)
+ (let ((#{meta 954}# (#{lambda-meta 244}# #{val 950}#)))
+ (if (not (assq 'name #{meta 954}#))
+ (#{set-lambda-meta! 246}#
+ #{val 950}#
+ (cons (cons 'name #{name 949}#) #{meta 954}#)))))))
(#{build-void 265}#
- (lambda (#{source 953}#)
- (#{make-void 203}# #{source 953}#)))
+ (lambda (#{source 955}#)
+ (#{make-void 203}# #{source 955}#)))
(#{build-call 267}#
- (lambda (#{source 955}# #{fun-exp 956}# #{arg-exps 957}#)
+ (lambda (#{source 957}# #{fun-exp 958}# #{arg-exps 959}#)
(#{make-call 225}#
- #{source 955}#
- #{fun-exp 956}#
- #{arg-exps 957}#)))
+ #{source 957}#
+ #{fun-exp 958}#
+ #{arg-exps 959}#)))
(#{build-conditional 269}#
- (lambda (#{source 961}#
- #{test-exp 962}#
- #{then-exp 963}#
- #{else-exp 964}#)
+ (lambda (#{source 963}#
+ #{test-exp 964}#
+ #{then-exp 965}#
+ #{else-exp 966}#)
(#{make-conditional 223}#
- #{source 961}#
- #{test-exp 962}#
- #{then-exp 963}#
- #{else-exp 964}#)))
+ #{source 963}#
+ #{test-exp 964}#
+ #{then-exp 965}#
+ #{else-exp 966}#)))
(#{build-dynlet 271}#
- (lambda (#{source 969}#
- #{fluids 970}#
- #{vals 971}#
- #{body 972}#)
+ (lambda (#{source 971}#
+ #{fluids 972}#
+ #{vals 973}#
+ #{body 974}#)
(#{make-dynlet 239}#
- #{source 969}#
- #{fluids 970}#
- #{vals 971}#
- #{body 972}#)))
+ #{source 971}#
+ #{fluids 972}#
+ #{vals 973}#
+ #{body 974}#)))
(#{build-lexical-reference 273}#
- (lambda (#{type 977}#
- #{source 978}#
- #{name 979}#
- #{var 980}#)
+ (lambda (#{type 979}#
+ #{source 980}#
+ #{name 981}#
+ #{var 982}#)
(#{make-lexical-ref 209}#
- #{source 978}#
- #{name 979}#
- #{var 980}#)))
+ #{source 980}#
+ #{name 981}#
+ #{var 982}#)))
(#{build-lexical-assignment 275}#
- (lambda (#{source 985}#
- #{name 986}#
- #{var 987}#
- #{exp 988}#)
+ (lambda (#{source 987}#
+ #{name 988}#
+ #{var 989}#
+ #{exp 990}#)
(begin
(#{maybe-name-value! 263}#
- #{name 986}#
- #{exp 988}#)
+ #{name 988}#
+ #{exp 990}#)
(#{make-lexical-set 211}#
- #{source 985}#
- #{name 986}#
- #{var 987}#
- #{exp 988}#))))
+ #{source 987}#
+ #{name 988}#
+ #{var 989}#
+ #{exp 990}#))))
(#{analyze-variable 277}#
- (lambda (#{mod 993}#
- #{var 994}#
- #{modref-cont 995}#
- #{bare-cont 996}#)
- (if (not #{mod 993}#)
- (#{bare-cont 996}# #{var 994}#)
- (begin
- (let ((#{kind 1003}# (car #{mod 993}#))
- (#{mod 1004}# (cdr #{mod 993}#)))
- (if (memv #{kind 1003}# '(public))
- (#{modref-cont 995}# #{mod 1004}# #{var 994}# #t)
- (if (memv #{kind 1003}# '(private))
- (if (not (equal?
- #{mod 1004}#
- (module-name (current-module))))
- (#{modref-cont 995}# #{mod 1004}# #{var 994}# #f)
- (#{bare-cont 996}# #{var 994}#))
- (if (memv #{kind 1003}# '(bare))
- (#{bare-cont 996}# #{var 994}#)
- (if (memv #{kind 1003}# '(hygiene))
- (if (if (not (equal?
- #{mod 1004}#
- (module-name (current-module))))
- (module-variable
- (resolve-module #{mod 1004}#)
- #{var 994}#)
- #f)
- (#{modref-cont 995}# #{mod 1004}# #{var 994}# #f)
- (#{bare-cont 996}# #{var 994}#))
- (syntax-violation
- #f
- "bad module kind"
- #{var 994}#
- #{mod 1004}#))))))))))
+ (lambda (#{mod 995}#
+ #{var 996}#
+ #{modref-cont 997}#
+ #{bare-cont 998}#)
+ (if (not #{mod 995}#)
+ (#{bare-cont 998}# #{var 996}#)
+ (let ((#{kind 1005}# (car #{mod 995}#))
+ (#{mod 1006}# (cdr #{mod 995}#)))
+ (if (memv #{kind 1005}# '(public))
+ (#{modref-cont 997}# #{mod 1006}# #{var 996}# #t)
+ (if (memv #{kind 1005}# '(private))
+ (if (not (equal?
+ #{mod 1006}#
+ (module-name (current-module))))
+ (#{modref-cont 997}# #{mod 1006}# #{var 996}# #f)
+ (#{bare-cont 998}# #{var 996}#))
+ (if (memv #{kind 1005}# '(bare))
+ (#{bare-cont 998}# #{var 996}#)
+ (if (memv #{kind 1005}# '(hygiene))
+ (if (if (not (equal?
+ #{mod 1006}#
+ (module-name (current-module))))
+ (module-variable
+ (resolve-module #{mod 1006}#)
+ #{var 996}#)
+ #f)
+ (#{modref-cont 997}# #{mod 1006}# #{var 996}# #f)
+ (#{bare-cont 998}# #{var 996}#))
+ (syntax-violation
+ #f
+ "bad module kind"
+ #{var 996}#
+ #{mod 1006}#)))))))))
(#{build-global-reference 279}#
- (lambda (#{source 1012}# #{var 1013}# #{mod 1014}#)
+ (lambda (#{source 1014}# #{var 1015}# #{mod 1016}#)
(#{analyze-variable 277}#
- #{mod 1014}#
- #{var 1013}#
- (lambda (#{mod 1018}# #{var 1019}# #{public? 1020}#)
+ #{mod 1016}#
+ #{var 1015}#
+ (lambda (#{mod 1020}# #{var 1021}# #{public? 1022}#)
(#{make-module-ref 213}#
- #{source 1012}#
- #{mod 1018}#
- #{var 1019}#
- #{public? 1020}#))
- (lambda (#{var 1024}#)
+ #{source 1014}#
+ #{mod 1020}#
+ #{var 1021}#
+ #{public? 1022}#))
+ (lambda (#{var 1026}#)
(#{make-toplevel-ref 217}#
- #{source 1012}#
- #{var 1024}#)))))
+ #{source 1014}#
+ #{var 1026}#)))))
(#{build-global-assignment 281}#
- (lambda (#{source 1026}#
- #{var 1027}#
- #{exp 1028}#
- #{mod 1029}#)
+ (lambda (#{source 1028}#
+ #{var 1029}#
+ #{exp 1030}#
+ #{mod 1031}#)
(begin
(#{maybe-name-value! 263}#
- #{var 1027}#
- #{exp 1028}#)
+ #{var 1029}#
+ #{exp 1030}#)
(#{analyze-variable 277}#
- #{mod 1029}#
- #{var 1027}#
- (lambda (#{mod 1034}# #{var 1035}# #{public? 1036}#)
+ #{mod 1031}#
+ #{var 1029}#
+ (lambda (#{mod 1036}# #{var 1037}# #{public? 1038}#)
(#{make-module-set 215}#
- #{source 1026}#
- #{mod 1034}#
- #{var 1035}#
- #{public? 1036}#
- #{exp 1028}#))
- (lambda (#{var 1040}#)
+ #{source 1028}#
+ #{mod 1036}#
+ #{var 1037}#
+ #{public? 1038}#
+ #{exp 1030}#))
+ (lambda (#{var 1042}#)
(#{make-toplevel-set 219}#
- #{source 1026}#
- #{var 1040}#
- #{exp 1028}#))))))
+ #{source 1028}#
+ #{var 1042}#
+ #{exp 1030}#))))))
(#{build-global-definition 283}#
- (lambda (#{source 1042}# #{var 1043}# #{exp 1044}#)
+ (lambda (#{source 1044}# #{var 1045}# #{exp 1046}#)
(begin
(#{maybe-name-value! 263}#
- #{var 1043}#
- #{exp 1044}#)
+ #{var 1045}#
+ #{exp 1046}#)
(#{make-toplevel-define 221}#
- #{source 1042}#
- #{var 1043}#
- #{exp 1044}#))))
+ #{source 1044}#
+ #{var 1045}#
+ #{exp 1046}#))))
(#{build-simple-lambda 285}#
- (lambda (#{src 1048}#
- #{req 1049}#
- #{rest 1050}#
- #{vars 1051}#
- #{meta 1052}#
- #{exp 1053}#)
+ (lambda (#{src 1050}#
+ #{req 1051}#
+ #{rest 1052}#
+ #{vars 1053}#
+ #{meta 1054}#
+ #{exp 1055}#)
(#{make-lambda 231}#
- #{src 1048}#
- #{meta 1052}#
+ #{src 1050}#
+ #{meta 1054}#
(#{make-lambda-case 233}#
- #{src 1048}#
- #{req 1049}#
+ #{src 1050}#
+ #{req 1051}#
#f
- #{rest 1050}#
+ #{rest 1052}#
#f
'()
- #{vars 1051}#
- #{exp 1053}#
+ #{vars 1053}#
+ #{exp 1055}#
#f))))
(#{build-case-lambda 287}#
- (lambda (#{src 1060}# #{meta 1061}# #{body 1062}#)
+ (lambda (#{src 1062}# #{meta 1063}# #{body 1064}#)
(#{make-lambda 231}#
- #{src 1060}#
- #{meta 1061}#
- #{body 1062}#)))
+ #{src 1062}#
+ #{meta 1063}#
+ #{body 1064}#)))
(#{build-lambda-case 289}#
- (lambda (#{src 1066}#
- #{req 1067}#
- #{opt 1068}#
- #{rest 1069}#
- #{kw 1070}#
- #{inits 1071}#
- #{vars 1072}#
- #{body 1073}#
- #{else-case 1074}#)
+ (lambda (#{src 1068}#
+ #{req 1069}#
+ #{opt 1070}#
+ #{rest 1071}#
+ #{kw 1072}#
+ #{inits 1073}#
+ #{vars 1074}#
+ #{body 1075}#
+ #{else-case 1076}#)
(#{make-lambda-case 233}#
- #{src 1066}#
- #{req 1067}#
- #{opt 1068}#
- #{rest 1069}#
- #{kw 1070}#
- #{inits 1071}#
- #{vars 1072}#
- #{body 1073}#
- #{else-case 1074}#)))
+ #{src 1068}#
+ #{req 1069}#
+ #{opt 1070}#
+ #{rest 1071}#
+ #{kw 1072}#
+ #{inits 1073}#
+ #{vars 1074}#
+ #{body 1075}#
+ #{else-case 1076}#)))
(#{build-primcall 291}#
- (lambda (#{src 1084}# #{name 1085}# #{args 1086}#)
+ (lambda (#{src 1086}# #{name 1087}# #{args 1088}#)
(#{make-primcall 227}#
- #{src 1084}#
- #{name 1085}#
- #{args 1086}#)))
+ #{src 1086}#
+ #{name 1087}#
+ #{args 1088}#)))
(#{build-primref 293}#
- (lambda (#{src 1090}# #{name 1091}#)
+ (lambda (#{src 1092}# #{name 1093}#)
(#{make-primitive-ref 207}#
- #{src 1090}#
- #{name 1091}#)))
+ #{src 1092}#
+ #{name 1093}#)))
(#{build-data 295}#
- (lambda (#{src 1094}# #{exp 1095}#)
- (#{make-const 205}# #{src 1094}# #{exp 1095}#)))
+ (lambda (#{src 1096}# #{exp 1097}#)
+ (#{make-const 205}# #{src 1096}# #{exp 1097}#)))
(#{build-sequence 297}#
- (lambda (#{src 1098}# #{exps 1099}#)
- (if (null? (cdr #{exps 1099}#))
- (car #{exps 1099}#)
- (#{make-sequence 229}#
- #f (car #{exps 1099}#)
- (#{build-sequence 297}# #f (cdr #{exps 1099}#))))))
+ (lambda (#{src 1100}# #{exps 1101}#)
+ (if (null? (cdr #{exps 1101}#))
+ (car #{exps 1101}#)
+ (#{make-seq 229}#
+ #{src 1100}#
+ (car #{exps 1101}#)
+ (#{build-sequence 297}# #f (cdr #{exps 1101}#))))))
(#{build-let 299}#
- (lambda (#{src 1102}#
- #{ids 1103}#
- #{vars 1104}#
- #{val-exps 1105}#
- #{body-exp 1106}#)
+ (lambda (#{src 1104}#
+ #{ids 1105}#
+ #{vars 1106}#
+ #{val-exps 1107}#
+ #{body-exp 1108}#)
(begin
(for-each
#{maybe-name-value! 263}#
- #{ids 1103}#
- #{val-exps 1105}#)
- (if (null? #{vars 1104}#)
- #{body-exp 1106}#
+ #{ids 1105}#
+ #{val-exps 1107}#)
+ (if (null? #{vars 1106}#)
+ #{body-exp 1108}#
(#{make-let 235}#
- #{src 1102}#
- #{ids 1103}#
- #{vars 1104}#
- #{val-exps 1105}#
- #{body-exp 1106}#)))))
+ #{src 1104}#
+ #{ids 1105}#
+ #{vars 1106}#
+ #{val-exps 1107}#
+ #{body-exp 1108}#)))))
(#{build-named-let 301}#
- (lambda (#{src 1112}#
- #{ids 1113}#
- #{vars 1114}#
- #{val-exps 1115}#
- #{body-exp 1116}#)
- (begin
- (let ((#{f 1126}# (car #{vars 1114}#))
- (#{f-name 1127}# (car #{ids 1113}#))
- (#{vars 1128}# (cdr #{vars 1114}#))
- (#{ids 1129}# (cdr #{ids 1113}#)))
- (begin
- (let ((#{proc 1131}#
- (#{build-simple-lambda 285}#
- #{src 1112}#
- #{ids 1129}#
- #f
- #{vars 1128}#
- '()
- #{body-exp 1116}#)))
- (begin
- (#{maybe-name-value! 263}#
- #{f-name 1127}#
- #{proc 1131}#)
- (for-each
- #{maybe-name-value! 263}#
- #{ids 1129}#
- #{val-exps 1115}#)
- (#{make-letrec 237}#
- #{src 1112}#
+ (lambda (#{src 1114}#
+ #{ids 1115}#
+ #{vars 1116}#
+ #{val-exps 1117}#
+ #{body-exp 1118}#)
+ (let ((#{f 1128}# (car #{vars 1116}#))
+ (#{f-name 1129}# (car #{ids 1115}#))
+ (#{vars 1130}# (cdr #{vars 1116}#))
+ (#{ids 1131}# (cdr #{ids 1115}#)))
+ (let ((#{proc 1133}#
+ (#{build-simple-lambda 285}#
+ #{src 1114}#
+ #{ids 1131}#
#f
- (list #{f-name 1127}#)
- (list #{f 1126}#)
- (list #{proc 1131}#)
- (#{build-call 267}#
- #{src 1112}#
- (#{build-lexical-reference 273}#
- 'fun
- #{src 1112}#
- #{f-name 1127}#
- #{f 1126}#)
- #{val-exps 1115}#)))))))))
+ #{vars 1130}#
+ '()
+ #{body-exp 1118}#)))
+ (begin
+ (#{maybe-name-value! 263}#
+ #{f-name 1129}#
+ #{proc 1133}#)
+ (for-each
+ #{maybe-name-value! 263}#
+ #{ids 1131}#
+ #{val-exps 1117}#)
+ (#{make-letrec 237}#
+ #{src 1114}#
+ #f
+ (list #{f-name 1129}#)
+ (list #{f 1128}#)
+ (list #{proc 1133}#)
+ (#{build-call 267}#
+ #{src 1114}#
+ (#{build-lexical-reference 273}#
+ 'fun
+ #{src 1114}#
+ #{f-name 1129}#
+ #{f 1128}#)
+ #{val-exps 1117}#)))))))
(#{build-letrec 303}#
- (lambda (#{src 1132}#
- #{in-order? 1133}#
- #{ids 1134}#
- #{vars 1135}#
- #{val-exps 1136}#
- #{body-exp 1137}#)
- (if (null? #{vars 1135}#)
- #{body-exp 1137}#
+ (lambda (#{src 1134}#
+ #{in-order? 1135}#
+ #{ids 1136}#
+ #{vars 1137}#
+ #{val-exps 1138}#
+ #{body-exp 1139}#)
+ (if (null? #{vars 1137}#)
+ #{body-exp 1139}#
(begin
(for-each
#{maybe-name-value! 263}#
- #{ids 1134}#
- #{val-exps 1136}#)
+ #{ids 1136}#
+ #{val-exps 1138}#)
(#{make-letrec 237}#
- #{src 1132}#
- #{in-order? 1133}#
- #{ids 1134}#
- #{vars 1135}#
- #{val-exps 1136}#
- #{body-exp 1137}#)))))
+ #{src 1134}#
+ #{in-order? 1135}#
+ #{ids 1136}#
+ #{vars 1137}#
+ #{val-exps 1138}#
+ #{body-exp 1139}#)))))
(#{make-syntax-object 307}#
- (lambda (#{expression 1144}#
- #{wrap 1145}#
- #{module 1146}#)
+ (lambda (#{expression 1146}#
+ #{wrap 1147}#
+ #{module 1148}#)
(vector
'syntax-object
- #{expression 1144}#
- #{wrap 1145}#
- #{module 1146}#)))
+ #{expression 1146}#
+ #{wrap 1147}#
+ #{module 1148}#)))
(#{syntax-object? 309}#
- (lambda (#{x 1150}#)
- (if (vector? #{x 1150}#)
- (if (= (vector-length #{x 1150}#) 4)
- (eq? (vector-ref #{x 1150}# 0) 'syntax-object)
+ (lambda (#{x 1152}#)
+ (if (vector? #{x 1152}#)
+ (if (= (vector-length #{x 1152}#) 4)
+ (eq? (vector-ref #{x 1152}# 0) 'syntax-object)
#f)
#f)))
(#{syntax-object-expression 311}#
- (lambda (#{x 1155}#) (vector-ref #{x 1155}# 1)))
+ (lambda (#{x 1157}#) (vector-ref #{x 1157}# 1)))
(#{syntax-object-wrap 313}#
- (lambda (#{x 1157}#) (vector-ref #{x 1157}# 2)))
+ (lambda (#{x 1159}#) (vector-ref #{x 1159}# 2)))
(#{syntax-object-module 315}#
- (lambda (#{x 1159}#) (vector-ref #{x 1159}# 3)))
+ (lambda (#{x 1161}#) (vector-ref #{x 1161}# 3)))
(#{source-annotation 324}#
- (lambda (#{x 1173}#)
- (if (#{syntax-object? 309}# #{x 1173}#)
+ (lambda (#{x 1175}#)
+ (if (#{syntax-object? 309}# #{x 1175}#)
(#{source-annotation 324}#
- (#{syntax-object-expression 311}# #{x 1173}#))
- (if (pair? #{x 1173}#)
- (begin
- (let ((#{props 1180}# (source-properties #{x 1173}#)))
- (if (pair? #{props 1180}#) #{props 1180}# #f)))
+ (#{syntax-object-expression 311}# #{x 1175}#))
+ (if (pair? #{x 1175}#)
+ (let ((#{props 1182}# (source-properties #{x 1175}#)))
+ (if (pair? #{props 1182}#) #{props 1182}# #f))
#f))))
(#{extend-env 331}#
- (lambda (#{labels 1182}# #{bindings 1183}# #{r 1184}#)
- (if (null? #{labels 1182}#)
- #{r 1184}#
+ (lambda (#{labels 1184}# #{bindings 1185}# #{r 1186}#)
+ (if (null? #{labels 1184}#)
+ #{r 1186}#
(#{extend-env 331}#
- (cdr #{labels 1182}#)
- (cdr #{bindings 1183}#)
- (cons (cons (car #{labels 1182}#)
- (car #{bindings 1183}#))
- #{r 1184}#)))))
+ (cdr #{labels 1184}#)
+ (cdr #{bindings 1185}#)
+ (cons (cons (car #{labels 1184}#)
+ (car #{bindings 1185}#))
+ #{r 1186}#)))))
(#{extend-var-env 333}#
- (lambda (#{labels 1188}# #{vars 1189}# #{r 1190}#)
- (if (null? #{labels 1188}#)
- #{r 1190}#
+ (lambda (#{labels 1190}# #{vars 1191}# #{r 1192}#)
+ (if (null? #{labels 1190}#)
+ #{r 1192}#
(#{extend-var-env 333}#
- (cdr #{labels 1188}#)
- (cdr #{vars 1189}#)
- (cons (cons (car #{labels 1188}#)
- (cons 'lexical (car #{vars 1189}#)))
- #{r 1190}#)))))
+ (cdr #{labels 1190}#)
+ (cdr #{vars 1191}#)
+ (cons (cons (car #{labels 1190}#)
+ (cons 'lexical (car #{vars 1191}#)))
+ #{r 1192}#)))))
(#{macros-only-env 335}#
- (lambda (#{r 1195}#)
- (if (null? #{r 1195}#)
+ (lambda (#{r 1197}#)
+ (if (null? #{r 1197}#)
'()
- (begin
- (let ((#{a 1198}# (car #{r 1195}#)))
- (if (eq? (car (cdr #{a 1198}#)) 'macro)
- (cons #{a 1198}#
- (#{macros-only-env 335}# (cdr #{r 1195}#)))
- (#{macros-only-env 335}# (cdr #{r 1195}#))))))))
+ (let ((#{a 1200}# (car #{r 1197}#)))
+ (if (eq? (car (cdr #{a 1200}#)) 'macro)
+ (cons #{a 1200}#
+ (#{macros-only-env 335}# (cdr #{r 1197}#)))
+ (#{macros-only-env 335}# (cdr #{r 1197}#)))))))
(#{lookup 337}#
- (lambda (#{x 1199}# #{r 1200}# #{mod 1201}#)
- (begin
- (let ((#{t 1207}# (assq #{x 1199}# #{r 1200}#)))
- (if #{t 1207}#
- (cdr #{t 1207}#)
- (if (symbol? #{x 1199}#)
- (begin
- (let ((#{t 1213}#
- (#{get-global-definition-hook 259}#
- #{x 1199}#
- #{mod 1201}#)))
- (if #{t 1213}# #{t 1213}# '(global))))
- '(displaced-lexical)))))))
+ (lambda (#{x 1201}# #{r 1202}# #{mod 1203}#)
+ (let ((#{t 1209}# (assq #{x 1201}# #{r 1202}#)))
+ (if #{t 1209}#
+ (cdr #{t 1209}#)
+ (if (symbol? #{x 1201}#)
+ (let ((#{t 1215}#
+ (#{get-global-definition-hook 259}#
+ #{x 1201}#
+ #{mod 1203}#)))
+ (if #{t 1215}# #{t 1215}# '(global)))
+ '(displaced-lexical))))))
(#{global-extend 339}#
- (lambda (#{type 1218}# #{sym 1219}# #{val 1220}#)
+ (lambda (#{type 1220}# #{sym 1221}# #{val 1222}#)
(#{put-global-definition-hook 257}#
- #{sym 1219}#
- #{type 1218}#
- #{val 1220}#)))
+ #{sym 1221}#
+ #{type 1220}#
+ #{val 1222}#)))
(#{nonsymbol-id? 341}#
- (lambda (#{x 1224}#)
- (if (#{syntax-object? 309}# #{x 1224}#)
+ (lambda (#{x 1226}#)
+ (if (#{syntax-object? 309}# #{x 1226}#)
(symbol?
- (#{syntax-object-expression 311}# #{x 1224}#))
+ (#{syntax-object-expression 311}# #{x 1226}#))
#f)))
(#{id? 343}#
- (lambda (#{x 1228}#)
- (if (symbol? #{x 1228}#)
+ (lambda (#{x 1230}#)
+ (if (symbol? #{x 1230}#)
#t
- (if (#{syntax-object? 309}# #{x 1228}#)
+ (if (#{syntax-object? 309}# #{x 1230}#)
(symbol?
- (#{syntax-object-expression 311}# #{x 1228}#))
+ (#{syntax-object-expression 311}# #{x 1230}#))
#f))))
(#{id-sym-name&marks 346}#
- (lambda (#{x 1235}# #{w 1236}#)
- (if (#{syntax-object? 309}# #{x 1235}#)
+ (lambda (#{x 1237}# #{w 1238}#)
+ (if (#{syntax-object? 309}# #{x 1237}#)
(values
- (#{syntax-object-expression 311}# #{x 1235}#)
+ (#{syntax-object-expression 311}# #{x 1237}#)
(#{join-marks 393}#
- (car #{w 1236}#)
- (car (#{syntax-object-wrap 313}# #{x 1235}#))))
- (values #{x 1235}# (car #{w 1236}#)))))
+ (car #{w 1238}#)
+ (car (#{syntax-object-wrap 313}# #{x 1237}#))))
+ (values #{x 1237}# (car #{w 1238}#)))))
(#{gen-label 356}#
(lambda () (symbol->string (gensym "i"))))
(#{gen-labels 358}#
- (lambda (#{ls 1242}#)
- (if (null? #{ls 1242}#)
+ (lambda (#{ls 1244}#)
+ (if (null? #{ls 1244}#)
'()
(cons (#{gen-label 356}#)
- (#{gen-labels 358}# (cdr #{ls 1242}#))))))
+ (#{gen-labels 358}# (cdr #{ls 1244}#))))))
(#{make-ribcage 361}#
- (lambda (#{symnames 1244}#
- #{marks 1245}#
- #{labels 1246}#)
+ (lambda (#{symnames 1246}#
+ #{marks 1247}#
+ #{labels 1248}#)
(vector
'ribcage
- #{symnames 1244}#
- #{marks 1245}#
- #{labels 1246}#)))
+ #{symnames 1246}#
+ #{marks 1247}#
+ #{labels 1248}#)))
(#{ribcage-symnames 365}#
- (lambda (#{x 1255}#) (vector-ref #{x 1255}# 1)))
+ (lambda (#{x 1257}#) (vector-ref #{x 1257}# 1)))
(#{ribcage-marks 367}#
- (lambda (#{x 1257}#) (vector-ref #{x 1257}# 2)))
+ (lambda (#{x 1259}#) (vector-ref #{x 1259}# 2)))
(#{ribcage-labels 369}#
- (lambda (#{x 1259}#) (vector-ref #{x 1259}# 3)))
+ (lambda (#{x 1261}#) (vector-ref #{x 1261}# 3)))
(#{set-ribcage-symnames! 371}#
- (lambda (#{x 1261}# #{update 1262}#)
- (vector-set! #{x 1261}# 1 #{update 1262}#)))
+ (lambda (#{x 1263}# #{update 1264}#)
+ (vector-set! #{x 1263}# 1 #{update 1264}#)))
(#{set-ribcage-marks! 373}#
- (lambda (#{x 1265}# #{update 1266}#)
- (vector-set! #{x 1265}# 2 #{update 1266}#)))
+ (lambda (#{x 1267}# #{update 1268}#)
+ (vector-set! #{x 1267}# 2 #{update 1268}#)))
(#{set-ribcage-labels! 375}#
- (lambda (#{x 1269}# #{update 1270}#)
- (vector-set! #{x 1269}# 3 #{update 1270}#)))
+ (lambda (#{x 1271}# #{update 1272}#)
+ (vector-set! #{x 1271}# 3 #{update 1272}#)))
(#{anti-mark 381}#
- (lambda (#{w 1273}#)
- (cons (cons #f (car #{w 1273}#))
- (cons 'shift (cdr #{w 1273}#)))))
+ (lambda (#{w 1275}#)
+ (cons (cons #f (car #{w 1275}#))
+ (cons 'shift (cdr #{w 1275}#)))))
(#{extend-ribcage! 385}#
- (lambda (#{ribcage 1279}# #{id 1280}# #{label 1281}#)
+ (lambda (#{ribcage 1281}# #{id 1282}# #{label 1283}#)
(begin
(#{set-ribcage-symnames! 371}#
- #{ribcage 1279}#
- (cons (#{syntax-object-expression 311}# #{id 1280}#)
- (#{ribcage-symnames 365}# #{ribcage 1279}#)))
+ #{ribcage 1281}#
+ (cons (#{syntax-object-expression 311}# #{id 1282}#)
+ (#{ribcage-symnames 365}# #{ribcage 1281}#)))
(#{set-ribcage-marks! 373}#
- #{ribcage 1279}#
- (cons (car (#{syntax-object-wrap 313}# #{id 1280}#))
- (#{ribcage-marks 367}# #{ribcage 1279}#)))
+ #{ribcage 1281}#
+ (cons (car (#{syntax-object-wrap 313}# #{id 1282}#))
+ (#{ribcage-marks 367}# #{ribcage 1281}#)))
(#{set-ribcage-labels! 375}#
- #{ribcage 1279}#
- (cons #{label 1281}#
- (#{ribcage-labels 369}# #{ribcage 1279}#))))))
+ #{ribcage 1281}#
+ (cons #{label 1283}#
+ (#{ribcage-labels 369}# #{ribcage 1281}#))))))
(#{make-binding-wrap 387}#
- (lambda (#{ids 1286}# #{labels 1287}# #{w 1288}#)
- (if (null? #{ids 1286}#)
- #{w 1288}#
- (cons (car #{w 1288}#)
- (cons (begin
- (let ((#{labelvec 1295}#
- (list->vector #{labels 1287}#)))
- (begin
- (let ((#{n 1297}#
- (vector-length #{labelvec 1295}#)))
- (begin
- (let ((#{symnamevec 1300}#
- (make-vector #{n 1297}#))
- (#{marksvec 1301}#
- (make-vector #{n 1297}#)))
- (begin
- (letrec*
- ((#{f 1305}#
- (lambda (#{ids 1306}# #{i 1307}#)
- (if (not (null? #{ids 1306}#))
- (call-with-values
- (lambda ()
- (#{id-sym-name&marks 346}#
- (car #{ids 1306}#)
- #{w 1288}#))
- (lambda (#{symname 1308}#
- #{marks 1309}#)
- (begin
- (vector-set!
- #{symnamevec 1300}#
- #{i 1307}#
- #{symname 1308}#)
- (vector-set!
- #{marksvec 1301}#
- #{i 1307}#
- #{marks 1309}#)
- (#{f 1305}#
- (cdr #{ids 1306}#)
- (#{1+}# #{i 1307}#)))))))))
- (begin (#{f 1305}# #{ids 1286}# 0)))
- (#{make-ribcage 361}#
- #{symnamevec 1300}#
- #{marksvec 1301}#
- #{labelvec 1295}#))))))))
- (cdr #{w 1288}#))))))
+ (lambda (#{ids 1288}# #{labels 1289}# #{w 1290}#)
+ (if (null? #{ids 1288}#)
+ #{w 1290}#
+ (cons (car #{w 1290}#)
+ (cons (let ((#{labelvec 1297}#
+ (list->vector #{labels 1289}#)))
+ (let ((#{n 1299}# (vector-length #{labelvec 1297}#)))
+ (let ((#{symnamevec 1302}# (make-vector #{n 1299}#))
+ (#{marksvec 1303}# (make-vector #{n 1299}#)))
+ (begin
+ (letrec*
+ ((#{f 1307}#
+ (lambda (#{ids 1308}# #{i 1309}#)
+ (if (not (null? #{ids 1308}#))
+ (call-with-values
+ (lambda ()
+ (#{id-sym-name&marks 346}#
+ (car #{ids 1308}#)
+ #{w 1290}#))
+ (lambda (#{symname 1310}#
+ #{marks 1311}#)
+ (begin
+ (vector-set!
+ #{symnamevec 1302}#
+ #{i 1309}#
+ #{symname 1310}#)
+ (vector-set!
+ #{marksvec 1303}#
+ #{i 1309}#
+ #{marks 1311}#)
+ (#{f 1307}#
+ (cdr #{ids 1308}#)
+ (#{1+}# #{i 1309}#)))))))))
+ (#{f 1307}# #{ids 1288}# 0))
+ (#{make-ribcage 361}#
+ #{symnamevec 1302}#
+ #{marksvec 1303}#
+ #{labelvec 1297}#)))))
+ (cdr #{w 1290}#))))))
(#{smart-append 389}#
- (lambda (#{m1 1314}# #{m2 1315}#)
- (if (null? #{m2 1315}#)
- #{m1 1314}#
- (append #{m1 1314}# #{m2 1315}#))))
+ (lambda (#{m1 1316}# #{m2 1317}#)
+ (if (null? #{m2 1317}#)
+ #{m1 1316}#
+ (append #{m1 1316}# #{m2 1317}#))))
(#{join-wraps 391}#
- (lambda (#{w1 1318}# #{w2 1319}#)
- (begin
- (let ((#{m1 1324}# (car #{w1 1318}#))
- (#{s1 1325}# (cdr #{w1 1318}#)))
- (if (null? #{m1 1324}#)
- (if (null? #{s1 1325}#)
- #{w2 1319}#
- (cons (car #{w2 1319}#)
- (#{smart-append 389}#
- #{s1 1325}#
- (cdr #{w2 1319}#))))
- (cons (#{smart-append 389}#
- #{m1 1324}#
- (car #{w2 1319}#))
+ (lambda (#{w1 1320}# #{w2 1321}#)
+ (let ((#{m1 1326}# (car #{w1 1320}#))
+ (#{s1 1327}# (cdr #{w1 1320}#)))
+ (if (null? #{m1 1326}#)
+ (if (null? #{s1 1327}#)
+ #{w2 1321}#
+ (cons (car #{w2 1321}#)
(#{smart-append 389}#
- #{s1 1325}#
- (cdr #{w2 1319}#))))))))
+ #{s1 1327}#
+ (cdr #{w2 1321}#))))
+ (cons (#{smart-append 389}#
+ #{m1 1326}#
+ (car #{w2 1321}#))
+ (#{smart-append 389}#
+ #{s1 1327}#
+ (cdr #{w2 1321}#)))))))
(#{join-marks 393}#
- (lambda (#{m1 1334}# #{m2 1335}#)
- (#{smart-append 389}# #{m1 1334}# #{m2 1335}#)))
+ (lambda (#{m1 1336}# #{m2 1337}#)
+ (#{smart-append 389}# #{m1 1336}# #{m2 1337}#)))
(#{same-marks? 395}#
- (lambda (#{x 1338}# #{y 1339}#)
- (begin
- (let ((#{t 1344}# (eq? #{x 1338}# #{y 1339}#)))
- (if #{t 1344}#
- #{t 1344}#
- (if (not (null? #{x 1338}#))
- (if (not (null? #{y 1339}#))
- (if (eq? (car #{x 1338}#) (car #{y 1339}#))
- (#{same-marks? 395}#
- (cdr #{x 1338}#)
- (cdr #{y 1339}#))
- #f)
+ (lambda (#{x 1340}# #{y 1341}#)
+ (let ((#{t 1346}# (eq? #{x 1340}# #{y 1341}#)))
+ (if #{t 1346}#
+ #{t 1346}#
+ (if (not (null? #{x 1340}#))
+ (if (not (null? #{y 1341}#))
+ (if (eq? (car #{x 1340}#) (car #{y 1341}#))
+ (#{same-marks? 395}#
+ (cdr #{x 1340}#)
+ (cdr #{y 1341}#))
#f)
- #f))))))
+ #f)
+ #f)))))
(#{id-var-name 397}#
- (lambda (#{id 1350}# #{w 1351}#)
+ (lambda (#{id 1352}# #{w 1353}#)
(letrec*
- ((#{search 1356}#
- (lambda (#{sym 1372}# #{subst 1373}# #{marks 1374}#)
- (if (null? #{subst 1373}#)
- (values #f #{marks 1374}#)
- (begin
- (let ((#{fst 1379}# (car #{subst 1373}#)))
- (if (eq? #{fst 1379}# 'shift)
- (#{search 1356}#
- #{sym 1372}#
- (cdr #{subst 1373}#)
- (cdr #{marks 1374}#))
- (begin
- (let ((#{symnames 1381}#
- (#{ribcage-symnames 365}# #{fst 1379}#)))
- (if (vector? #{symnames 1381}#)
- (#{search-vector-rib 1360}#
- #{sym 1372}#
- #{subst 1373}#
- #{marks 1374}#
- #{symnames 1381}#
- #{fst 1379}#)
- (#{search-list-rib 1358}#
- #{sym 1372}#
- #{subst 1373}#
- #{marks 1374}#
- #{symnames 1381}#
- #{fst 1379}#))))))))))
- (#{search-list-rib 1358}#
- (lambda (#{sym 1382}#
- #{subst 1383}#
- #{marks 1384}#
- #{symnames 1385}#
- #{ribcage 1386}#)
+ ((#{search 1358}#
+ (lambda (#{sym 1374}# #{subst 1375}# #{marks 1376}#)
+ (if (null? #{subst 1375}#)
+ (values #f #{marks 1376}#)
+ (let ((#{fst 1381}# (car #{subst 1375}#)))
+ (if (eq? #{fst 1381}# 'shift)
+ (#{search 1358}#
+ #{sym 1374}#
+ (cdr #{subst 1375}#)
+ (cdr #{marks 1376}#))
+ (let ((#{symnames 1383}#
+ (#{ribcage-symnames 365}# #{fst 1381}#)))
+ (if (vector? #{symnames 1383}#)
+ (#{search-vector-rib 1362}#
+ #{sym 1374}#
+ #{subst 1375}#
+ #{marks 1376}#
+ #{symnames 1383}#
+ #{fst 1381}#)
+ (#{search-list-rib 1360}#
+ #{sym 1374}#
+ #{subst 1375}#
+ #{marks 1376}#
+ #{symnames 1383}#
+ #{fst 1381}#))))))))
+ (#{search-list-rib 1360}#
+ (lambda (#{sym 1384}#
+ #{subst 1385}#
+ #{marks 1386}#
+ #{symnames 1387}#
+ #{ribcage 1388}#)
(letrec*
- ((#{f 1395}#
- (lambda (#{symnames 1396}# #{i 1397}#)
- (if (null? #{symnames 1396}#)
- (#{search 1356}#
- #{sym 1382}#
- (cdr #{subst 1383}#)
- #{marks 1384}#)
- (if (if (eq? (car #{symnames 1396}#) #{sym 1382}#)
+ ((#{f 1397}#
+ (lambda (#{symnames 1398}# #{i 1399}#)
+ (if (null? #{symnames 1398}#)
+ (#{search 1358}#
+ #{sym 1384}#
+ (cdr #{subst 1385}#)
+ #{marks 1386}#)
+ (if (if (eq? (car #{symnames 1398}#) #{sym 1384}#)
(#{same-marks? 395}#
- #{marks 1384}#
+ #{marks 1386}#
(list-ref
- (#{ribcage-marks 367}# #{ribcage 1386}#)
- #{i 1397}#))
+ (#{ribcage-marks 367}# #{ribcage 1388}#)
+ #{i 1399}#))
#f)
(values
(list-ref
- (#{ribcage-labels 369}# #{ribcage 1386}#)
- #{i 1397}#)
- #{marks 1384}#)
- (#{f 1395}#
- (cdr #{symnames 1396}#)
- (#{1+}# #{i 1397}#)))))))
- (begin (#{f 1395}# #{symnames 1385}# 0)))))
- (#{search-vector-rib 1360}#
- (lambda (#{sym 1406}#
- #{subst 1407}#
- #{marks 1408}#
- #{symnames 1409}#
- #{ribcage 1410}#)
- (begin
- (let ((#{n 1417}# (vector-length #{symnames 1409}#)))
- (letrec*
- ((#{f 1420}#
- (lambda (#{i 1421}#)
- (if (= #{i 1421}# #{n 1417}#)
- (#{search 1356}#
- #{sym 1406}#
- (cdr #{subst 1407}#)
- #{marks 1408}#)
- (if (if (eq? (vector-ref
- #{symnames 1409}#
- #{i 1421}#)
- #{sym 1406}#)
- (#{same-marks? 395}#
- #{marks 1408}#
- (vector-ref
- (#{ribcage-marks 367}# #{ribcage 1410}#)
- #{i 1421}#))
- #f)
- (values
- (vector-ref
- (#{ribcage-labels 369}# #{ribcage 1410}#)
- #{i 1421}#)
- #{marks 1408}#)
- (#{f 1420}# (#{1+}# #{i 1421}#)))))))
- (begin (#{f 1420}# 0))))))))
- (begin
- (if (symbol? #{id 1350}#)
- (begin
- (let ((#{t 1433}#
- (#{search 1356}#
- #{id 1350}#
- (cdr #{w 1351}#)
- (car #{w 1351}#))))
- (if #{t 1433}# #{t 1433}# #{id 1350}#)))
- (if (#{syntax-object? 309}# #{id 1350}#)
- (begin
- (let ((#{id 1442}#
- (#{syntax-object-expression 311}# #{id 1350}#))
- (#{w1 1443}#
- (#{syntax-object-wrap 313}# #{id 1350}#)))
- (begin
- (let ((#{marks 1445}#
- (#{join-marks 393}#
- (car #{w 1351}#)
- (car #{w1 1443}#))))
- (call-with-values
- (lambda ()
- (#{search 1356}#
- #{id 1442}#
- (cdr #{w 1351}#)
- #{marks 1445}#))
- (lambda (#{new-id 1449}# #{marks 1450}#)
- (begin
- (let ((#{t 1455}# #{new-id 1449}#))
- (if #{t 1455}#
- #{t 1455}#
- (begin
- (let ((#{t 1458}#
- (#{search 1356}#
- #{id 1442}#
- (cdr #{w1 1443}#)
- #{marks 1450}#)))
- (if #{t 1458}#
- #{t 1458}#
- #{id 1442}#))))))))))))
- (syntax-violation
- 'id-var-name
- "invalid id"
- #{id 1350}#)))))))
+ (#{ribcage-labels 369}# #{ribcage 1388}#)
+ #{i 1399}#)
+ #{marks 1386}#)
+ (#{f 1397}#
+ (cdr #{symnames 1398}#)
+ (#{1+}# #{i 1399}#)))))))
+ (#{f 1397}# #{symnames 1387}# 0))))
+ (#{search-vector-rib 1362}#
+ (lambda (#{sym 1408}#
+ #{subst 1409}#
+ #{marks 1410}#
+ #{symnames 1411}#
+ #{ribcage 1412}#)
+ (let ((#{n 1419}# (vector-length #{symnames 1411}#)))
+ (letrec*
+ ((#{f 1422}#
+ (lambda (#{i 1423}#)
+ (if (= #{i 1423}# #{n 1419}#)
+ (#{search 1358}#
+ #{sym 1408}#
+ (cdr #{subst 1409}#)
+ #{marks 1410}#)
+ (if (if (eq? (vector-ref #{symnames 1411}# #{i 1423}#)
+ #{sym 1408}#)
+ (#{same-marks? 395}#
+ #{marks 1410}#
+ (vector-ref
+ (#{ribcage-marks 367}# #{ribcage 1412}#)
+ #{i 1423}#))
+ #f)
+ (values
+ (vector-ref
+ (#{ribcage-labels 369}# #{ribcage 1412}#)
+ #{i 1423}#)
+ #{marks 1410}#)
+ (#{f 1422}# (#{1+}# #{i 1423}#)))))))
+ (#{f 1422}# 0))))))
+ (if (symbol? #{id 1352}#)
+ (let ((#{t 1435}#
+ (#{search 1358}#
+ #{id 1352}#
+ (cdr #{w 1353}#)
+ (car #{w 1353}#))))
+ (if #{t 1435}# #{t 1435}# #{id 1352}#))
+ (if (#{syntax-object? 309}# #{id 1352}#)
+ (let ((#{id 1444}#
+ (#{syntax-object-expression 311}# #{id 1352}#))
+ (#{w1 1445}#
+ (#{syntax-object-wrap 313}# #{id 1352}#)))
+ (let ((#{marks 1447}#
+ (#{join-marks 393}#
+ (car #{w 1353}#)
+ (car #{w1 1445}#))))
+ (call-with-values
+ (lambda ()
+ (#{search 1358}#
+ #{id 1444}#
+ (cdr #{w 1353}#)
+ #{marks 1447}#))
+ (lambda (#{new-id 1451}# #{marks 1452}#)
+ (let ((#{t 1457}# #{new-id 1451}#))
+ (if #{t 1457}#
+ #{t 1457}#
+ (let ((#{t 1460}#
+ (#{search 1358}#
+ #{id 1444}#
+ (cdr #{w1 1445}#)
+ #{marks 1452}#)))
+ (if #{t 1460}# #{t 1460}# #{id 1444}#))))))))
+ (syntax-violation
+ 'id-var-name
+ "invalid id"
+ #{id 1352}#))))))
(#{free-id=? 399}#
- (lambda (#{i 1463}# #{j 1464}#)
- (if (eq? (begin
- (let ((#{x 1470}# #{i 1463}#))
- (if (#{syntax-object? 309}# #{x 1470}#)
- (#{syntax-object-expression 311}# #{x 1470}#)
- #{x 1470}#)))
- (begin
- (let ((#{x 1473}# #{j 1464}#))
- (if (#{syntax-object? 309}# #{x 1473}#)
- (#{syntax-object-expression 311}# #{x 1473}#)
- #{x 1473}#))))
- (eq? (#{id-var-name 397}# #{i 1463}# '(()))
- (#{id-var-name 397}# #{j 1464}# '(())))
+ (lambda (#{i 1465}# #{j 1466}#)
+ (if (eq? (let ((#{x 1472}# #{i 1465}#))
+ (if (#{syntax-object? 309}# #{x 1472}#)
+ (#{syntax-object-expression 311}# #{x 1472}#)
+ #{x 1472}#))
+ (let ((#{x 1475}# #{j 1466}#))
+ (if (#{syntax-object? 309}# #{x 1475}#)
+ (#{syntax-object-expression 311}# #{x 1475}#)
+ #{x 1475}#)))
+ (eq? (#{id-var-name 397}# #{i 1465}# '(()))
+ (#{id-var-name 397}# #{j 1466}# '(())))
#f)))
(#{bound-id=? 401}#
- (lambda (#{i 1477}# #{j 1478}#)
- (if (if (#{syntax-object? 309}# #{i 1477}#)
- (#{syntax-object? 309}# #{j 1478}#)
+ (lambda (#{i 1479}# #{j 1480}#)
+ (if (if (#{syntax-object? 309}# #{i 1479}#)
+ (#{syntax-object? 309}# #{j 1480}#)
#f)
- (if (eq? (#{syntax-object-expression 311}# #{i 1477}#)
- (#{syntax-object-expression 311}# #{j 1478}#))
+ (if (eq? (#{syntax-object-expression 311}# #{i 1479}#)
+ (#{syntax-object-expression 311}# #{j 1480}#))
(#{same-marks? 395}#
- (car (#{syntax-object-wrap 313}# #{i 1477}#))
- (car (#{syntax-object-wrap 313}# #{j 1478}#)))
+ (car (#{syntax-object-wrap 313}# #{i 1479}#))
+ (car (#{syntax-object-wrap 313}# #{j 1480}#)))
#f)
- (eq? #{i 1477}# #{j 1478}#))))
+ (eq? #{i 1479}# #{j 1480}#))))
(#{valid-bound-ids? 403}#
- (lambda (#{ids 1487}#)
+ (lambda (#{ids 1489}#)
(if (letrec*
- ((#{all-ids? 1492}#
- (lambda (#{ids 1493}#)
- (begin
- (let ((#{t 1496}# (null? #{ids 1493}#)))
- (if #{t 1496}#
- #{t 1496}#
- (if (#{id? 343}# (car #{ids 1493}#))
- (#{all-ids? 1492}# (cdr #{ids 1493}#))
- #f)))))))
- (begin (#{all-ids? 1492}# #{ids 1487}#)))
- (#{distinct-bound-ids? 405}# #{ids 1487}#)
+ ((#{all-ids? 1494}#
+ (lambda (#{ids 1495}#)
+ (let ((#{t 1498}# (null? #{ids 1495}#)))
+ (if #{t 1498}#
+ #{t 1498}#
+ (if (#{id? 343}# (car #{ids 1495}#))
+ (#{all-ids? 1494}# (cdr #{ids 1495}#))
+ #f))))))
+ (#{all-ids? 1494}# #{ids 1489}#))
+ (#{distinct-bound-ids? 405}# #{ids 1489}#)
#f)))
(#{distinct-bound-ids? 405}#
- (lambda (#{ids 1501}#)
+ (lambda (#{ids 1503}#)
(letrec*
- ((#{distinct? 1505}#
- (lambda (#{ids 1506}#)
- (begin
- (let ((#{t 1509}# (null? #{ids 1506}#)))
- (if #{t 1509}#
- #{t 1509}#
- (if (not (#{bound-id-member? 407}#
- (car #{ids 1506}#)
- (cdr #{ids 1506}#)))
- (#{distinct? 1505}# (cdr #{ids 1506}#))
- #f)))))))
- (begin (#{distinct? 1505}# #{ids 1501}#)))))
+ ((#{distinct? 1507}#
+ (lambda (#{ids 1508}#)
+ (let ((#{t 1511}# (null? #{ids 1508}#)))
+ (if #{t 1511}#
+ #{t 1511}#
+ (if (not (#{bound-id-member? 407}#
+ (car #{ids 1508}#)
+ (cdr #{ids 1508}#)))
+ (#{distinct? 1507}# (cdr #{ids 1508}#))
+ #f))))))
+ (#{distinct? 1507}# #{ids 1503}#))))
(#{bound-id-member? 407}#
- (lambda (#{x 1513}# #{list 1514}#)
- (if (not (null? #{list 1514}#))
- (begin
- (let ((#{t 1521}#
- (#{bound-id=? 401}#
- #{x 1513}#
- (car #{list 1514}#))))
- (if #{t 1521}#
- #{t 1521}#
- (#{bound-id-member? 407}#
- #{x 1513}#
- (cdr #{list 1514}#)))))
+ (lambda (#{x 1515}# #{list 1516}#)
+ (if (not (null? #{list 1516}#))
+ (let ((#{t 1523}#
+ (#{bound-id=? 401}#
+ #{x 1515}#
+ (car #{list 1516}#))))
+ (if #{t 1523}#
+ #{t 1523}#
+ (#{bound-id-member? 407}#
+ #{x 1515}#
+ (cdr #{list 1516}#))))
#f)))
(#{wrap 409}#
- (lambda (#{x 1523}# #{w 1524}# #{defmod 1525}#)
- (if (if (null? (car #{w 1524}#))
- (null? (cdr #{w 1524}#))
+ (lambda (#{x 1525}# #{w 1526}# #{defmod 1527}#)
+ (if (if (null? (car #{w 1526}#))
+ (null? (cdr #{w 1526}#))
#f)
- #{x 1523}#
- (if (#{syntax-object? 309}# #{x 1523}#)
+ #{x 1525}#
+ (if (#{syntax-object? 309}# #{x 1525}#)
(#{make-syntax-object 307}#
- (#{syntax-object-expression 311}# #{x 1523}#)
+ (#{syntax-object-expression 311}# #{x 1525}#)
(#{join-wraps 391}#
- #{w 1524}#
- (#{syntax-object-wrap 313}# #{x 1523}#))
- (#{syntax-object-module 315}# #{x 1523}#))
- (if (null? #{x 1523}#)
- #{x 1523}#
+ #{w 1526}#
+ (#{syntax-object-wrap 313}# #{x 1525}#))
+ (#{syntax-object-module 315}# #{x 1525}#))
+ (if (null? #{x 1525}#)
+ #{x 1525}#
(#{make-syntax-object 307}#
- #{x 1523}#
- #{w 1524}#
- #{defmod 1525}#))))))
+ #{x 1525}#
+ #{w 1526}#
+ #{defmod 1527}#))))))
(#{source-wrap 411}#
- (lambda (#{x 1540}#
- #{w 1541}#
- #{s 1542}#
- #{defmod 1543}#)
+ (lambda (#{x 1542}#
+ #{w 1543}#
+ #{s 1544}#
+ #{defmod 1545}#)
(#{wrap 409}#
- (#{decorate-source 261}# #{x 1540}# #{s 1542}#)
- #{w 1541}#
- #{defmod 1543}#)))
+ (#{decorate-source 261}# #{x 1542}# #{s 1544}#)
+ #{w 1543}#
+ #{defmod 1545}#)))
(#{chi-sequence 413}#
- (lambda (#{body 1548}#
- #{r 1549}#
- #{w 1550}#
- #{s 1551}#
- #{mod 1552}#)
+ (lambda (#{body 1550}#
+ #{r 1551}#
+ #{w 1552}#
+ #{s 1553}#
+ #{mod 1554}#)
(#{build-sequence 297}#
- #{s 1551}#
+ #{s 1553}#
(letrec*
- ((#{dobody 1563}#
- (lambda (#{body 1564}#
- #{r 1565}#
- #{w 1566}#
- #{mod 1567}#)
- (if (null? #{body 1564}#)
+ ((#{dobody 1565}#
+ (lambda (#{body 1566}#
+ #{r 1567}#
+ #{w 1568}#
+ #{mod 1569}#)
+ (if (null? #{body 1566}#)
'()
- (begin
- (let ((#{first 1569}#
- (#{chi 423}#
- (car #{body 1564}#)
- #{r 1565}#
- #{w 1566}#
- #{mod 1567}#)))
- (cons #{first 1569}#
- (#{dobody 1563}#
- (cdr #{body 1564}#)
- #{r 1565}#
- #{w 1566}#
- #{mod 1567}#))))))))
- (begin
- (#{dobody 1563}#
- #{body 1548}#
- #{r 1549}#
- #{w 1550}#
- #{mod 1552}#))))))
+ (let ((#{first 1571}#
+ (#{chi 423}#
+ (car #{body 1566}#)
+ #{r 1567}#
+ #{w 1568}#
+ #{mod 1569}#)))
+ (cons #{first 1571}#
+ (#{dobody 1565}#
+ (cdr #{body 1566}#)
+ #{r 1567}#
+ #{w 1568}#
+ #{mod 1569}#)))))))
+ (#{dobody 1565}#
+ #{body 1550}#
+ #{r 1551}#
+ #{w 1552}#
+ #{mod 1554}#)))))
(#{chi-top-sequence 415}#
- (lambda (#{body 1570}#
- #{r 1571}#
- #{w 1572}#
- #{s 1573}#
- #{m 1574}#
- #{esew 1575}#
- #{mod 1576}#)
+ (lambda (#{body 1572}#
+ #{r 1573}#
+ #{w 1574}#
+ #{s 1575}#
+ #{m 1576}#
+ #{esew 1577}#
+ #{mod 1578}#)
(letrec*
- ((#{scan 1585}#
- (lambda (#{body 1586}#
- #{r 1587}#
- #{w 1588}#
- #{s 1589}#
- #{m 1590}#
- #{esew 1591}#
- #{mod 1592}#
- #{exps 1593}#)
- (if (null? #{body 1586}#)
- #{exps 1593}#
+ ((#{scan 1587}#
+ (lambda (#{body 1588}#
+ #{r 1589}#
+ #{w 1590}#
+ #{s 1591}#
+ #{m 1592}#
+ #{esew 1593}#
+ #{mod 1594}#
+ #{exps 1595}#)
+ (if (null? #{body 1588}#)
+ #{exps 1595}#
(call-with-values
(lambda ()
(call-with-values
(lambda ()
- (begin
- (let ((#{e 1606}# (car #{body 1586}#)))
- (#{syntax-type 421}#
- #{e 1606}#
- #{r 1587}#
- #{w 1588}#
- (begin
- (let ((#{t 1609}#
- (#{source-annotation 324}#
- #{e 1606}#)))
- (if #{t 1609}# #{t 1609}# #{s 1589}#)))
- #f
- #{mod 1592}#
- #f))))
- (lambda (#{type 1611}#
- #{value 1612}#
- #{e 1613}#
- #{w 1614}#
- #{s 1615}#
- #{mod 1616}#)
- (if (memv #{type 1611}# '(begin-form))
- (let ((#{tmp 1624}# #{e 1613}#))
- (let ((#{tmp 1625}#
- ($sc-dispatch #{tmp 1624}# '(_))))
- (if #{tmp 1625}#
- (@apply (lambda () #{exps 1593}#) #{tmp 1625}#)
- (let ((#{tmp 1626}#
+ (let ((#{e 1608}# (car #{body 1588}#)))
+ (#{syntax-type 421}#
+ #{e 1608}#
+ #{r 1589}#
+ #{w 1590}#
+ (let ((#{t 1611}#
+ (#{source-annotation 324}# #{e 1608}#)))
+ (if #{t 1611}# #{t 1611}# #{s 1591}#))
+ #f
+ #{mod 1594}#
+ #f)))
+ (lambda (#{type 1613}#
+ #{value 1614}#
+ #{e 1615}#
+ #{w 1616}#
+ #{s 1617}#
+ #{mod 1618}#)
+ (if (memv #{type 1613}# '(begin-form))
+ (let ((#{tmp 1626}# #{e 1615}#))
+ (let ((#{tmp 1627}#
+ ($sc-dispatch #{tmp 1626}# '(_))))
+ (if #{tmp 1627}#
+ (@apply (lambda () #{exps 1595}#) #{tmp 1627}#)
+ (let ((#{tmp 1628}#
($sc-dispatch
- #{tmp 1624}#
+ #{tmp 1626}#
'(_ any . each-any))))
- (if #{tmp 1626}#
+ (if #{tmp 1628}#
(@apply
- (lambda (#{e1 1629}# #{e2 1630}#)
- (#{scan 1585}#
- (cons #{e1 1629}# #{e2 1630}#)
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- #{m 1590}#
- #{esew 1591}#
- #{mod 1616}#
- #{exps 1593}#))
- #{tmp 1626}#)
+ (lambda (#{e1 1631}# #{e2 1632}#)
+ (#{scan 1587}#
+ (cons #{e1 1631}# #{e2 1632}#)
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ #{m 1592}#
+ #{esew 1593}#
+ #{mod 1618}#
+ #{exps 1595}#))
+ #{tmp 1628}#)
(syntax-violation
#f
"source expression failed to match any
pattern"
- #{tmp 1624}#))))))
- (if (memv #{type 1611}# '(local-syntax-form))
+ #{tmp 1626}#))))))
+ (if (memv #{type 1613}# '(local-syntax-form))
(#{chi-local-syntax 433}#
- #{value 1612}#
- #{e 1613}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- #{mod 1616}#
- (lambda (#{body 1633}#
- #{r 1634}#
- #{w 1635}#
- #{s 1636}#
- #{mod 1637}#)
- (#{scan 1585}#
- #{body 1633}#
- #{r 1634}#
- #{w 1635}#
- #{s 1636}#
- #{m 1590}#
- #{esew 1591}#
- #{mod 1637}#
- #{exps 1593}#)))
- (if (memv #{type 1611}# '(eval-when-form))
- (let ((#{tmp 1644}# #{e 1613}#))
- (let ((#{tmp 1645}#
+ #{value 1614}#
+ #{e 1615}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ #{mod 1618}#
+ (lambda (#{body 1635}#
+ #{r 1636}#
+ #{w 1637}#
+ #{s 1638}#
+ #{mod 1639}#)
+ (#{scan 1587}#
+ #{body 1635}#
+ #{r 1636}#
+ #{w 1637}#
+ #{s 1638}#
+ #{m 1592}#
+ #{esew 1593}#
+ #{mod 1639}#
+ #{exps 1595}#)))
+ (if (memv #{type 1613}# '(eval-when-form))
+ (let ((#{tmp 1646}# #{e 1615}#))
+ (let ((#{tmp 1647}#
($sc-dispatch
- #{tmp 1644}#
+ #{tmp 1646}#
'(_ each-any any . each-any))))
- (if #{tmp 1645}#
+ (if #{tmp 1647}#
(@apply
- (lambda (#{x 1649}#
- #{e1 1650}#
- #{e2 1651}#)
- (begin
- (let ((#{when-list 1654}#
- (#{chi-when-list 419}#
- #{e 1613}#
- #{x 1649}#
- #{w 1614}#))
- (#{body 1655}#
- (cons #{e1 1650}#
- #{e2 1651}#)))
- (if (eq? #{m 1590}# 'e)
- (if (memq 'eval
- #{when-list 1654}#)
- (#{scan 1585}#
- #{body 1655}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- (if (memq 'expand
- #{when-list 1654}#)
- 'c&e
- 'e)
- '(eval)
- #{mod 1616}#
- #{exps 1593}#)
+ (lambda (#{x 1651}#
+ #{e1 1652}#
+ #{e2 1653}#)
+ (let ((#{when-list 1656}#
+ (#{chi-when-list 419}#
+ #{e 1615}#
+ #{x 1651}#
+ #{w 1616}#))
+ (#{body 1657}#
+ (cons #{e1 1652}#
+ #{e2 1653}#)))
+ (if (eq? #{m 1592}# 'e)
+ (if (memq 'eval #{when-list 1656}#)
+ (#{scan 1587}#
+ #{body 1657}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ (if (memq 'expand
+ #{when-list 1656}#)
+ 'c&e
+ 'e)
+ '(eval)
+ #{mod 1618}#
+ #{exps 1595}#)
+ (begin
+ (if (memq 'expand
+ #{when-list 1656}#)
+ (#{top-level-eval-hook 252}#
+ (#{chi-top-sequence 415}#
+ #{body 1657}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ 'e
+ '(eval)
+ #{mod 1618}#)
+ #{mod 1618}#))
+ (values #{exps 1595}#)))
+ (if (memq 'load #{when-list 1656}#)
+ (if (let ((#{t 1666}#
+ (memq 'compile
+ #{when-list
1656}#)))
+ (if #{t 1666}#
+ #{t 1666}#
+ (let ((#{t 1669}#
+ (memq 'expand
+
#{when-list 1656}#)))
+ (if #{t 1669}#
+ #{t 1669}#
+ (if (eq? #{m 1592}#
+ 'c&e)
+ (memq 'eval
+ #{when-list
1656}#)
+ #f)))))
+ (#{scan 1587}#
+ #{body 1657}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ 'c&e
+ '(compile load)
+ #{mod 1618}#
+ #{exps 1595}#)
+ (if (memq #{m 1592}# '(c c&e))
+ (#{scan 1587}#
+ #{body 1657}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ 'c
+ '(load)
+ #{mod 1618}#
+ #{exps 1595}#)
+ (values #{exps 1595}#)))
+ (if (let ((#{t 1677}#
+ (memq 'compile
+ #{when-list
1656}#)))
+ (if #{t 1677}#
+ #{t 1677}#
+ (let ((#{t 1680}#
+ (memq 'expand
+
#{when-list 1656}#)))
+ (if #{t 1680}#
+ #{t 1680}#
+ (if (eq? #{m 1592}#
+ 'c&e)
+ (memq 'eval
+ #{when-list
1656}#)
+ #f)))))
(begin
- (if (memq 'expand
- #{when-list 1654}#)
- (#{top-level-eval-hook
252}#
- (#{chi-top-sequence 415}#
- #{body 1655}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- 'e
- '(eval)
- #{mod 1616}#)
- #{mod 1616}#))
- #{exps 1593}#))
- (if (memq 'load
- #{when-list 1654}#)
- (if (begin
- (let ((#{t 1664}#
- (memq 'compile
-
#{when-list 1654}#)))
- (if #{t 1664}#
- #{t 1664}#
- (begin
- (let ((#{t 1667}#
- (memq
'expand
-
#{when-list 1654}#)))
- (if #{t 1667}#
- #{t 1667}#
- (if (eq? #{m
1590}#
- 'c&e)
- (memq 'eval
-
#{when-list 1654}#)
- #f)))))))
- (#{scan 1585}#
- #{body 1655}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- 'c&e
- '(compile load)
- #{mod 1616}#
- #{exps 1593}#)
- (if (memq #{m 1590}#
- '(c c&e))
- (#{scan 1585}#
- #{body 1655}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- 'c
- '(load)
- #{mod 1616}#
- #{exps 1593}#)
- #{exps 1593}#))
- (if (begin
- (let ((#{t 1675}#
- (memq 'compile
-
#{when-list 1654}#)))
- (if #{t 1675}#
- #{t 1675}#
- (begin
- (let ((#{t 1678}#
- (memq
'expand
-
#{when-list 1654}#)))
- (if #{t 1678}#
- #{t 1678}#
- (if (eq? #{m
1590}#
- 'c&e)
- (memq 'eval
-
#{when-list 1654}#)
- #f)))))))
- (begin
- (#{top-level-eval-hook
252}#
- (#{chi-top-sequence 415}#
- #{body 1655}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- 'e
- '(eval)
- #{mod 1616}#)
- #{mod 1616}#)
- #{exps 1593}#)
- #{exps 1593}#))))))
- #{tmp 1645}#)
+ (#{top-level-eval-hook 252}#
+ (#{chi-top-sequence 415}#
+ #{body 1657}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ 'e
+ '(eval)
+ #{mod 1618}#)
+ #{mod 1618}#)
+ (values #{exps 1595}#))
+ (values #{exps 1595}#))))))
+ #{tmp 1647}#)
(syntax-violation
#f
"source expression failed to match any
pattern"
- #{tmp 1644}#))))
- (if (memv #{type 1611}# '(define-syntax-form))
- (begin
- (let ((#{n 1686}#
- (#{id-var-name 397}#
- #{value 1612}#
- #{w 1614}#))
- (#{r 1687}#
- (#{macros-only-env 335}#
- #{r 1587}#)))
- (if (memv #{m 1590}# '(c))
- (if (memq 'compile #{esew 1591}#)
+ #{tmp 1646}#))))
+ (if (memv #{type 1613}# '(define-syntax-form))
+ (let ((#{n 1688}#
+ (#{id-var-name 397}#
+ #{value 1614}#
+ #{w 1616}#))
+ (#{r 1689}#
+ (#{macros-only-env 335}# #{r 1589}#)))
+ (if (memv #{m 1592}# '(c))
+ (if (memq 'compile #{esew 1593}#)
+ (let ((#{e 1692}#
+ (#{chi-install-global 417}#
+ #{n 1688}#
+ (#{chi 423}#
+ #{e 1615}#
+ #{r 1689}#
+ #{w 1616}#
+ #{mod 1618}#))))
(begin
- (let ((#{e 1690}#
- (#{chi-install-global 417}#
- #{n 1686}#
- (#{chi 423}#
- #{e 1613}#
- #{r 1687}#
- #{w 1614}#
- #{mod 1616}#))))
- (begin
- (#{top-level-eval-hook 252}#
- #{e 1690}#
- #{mod 1616}#)
- (if (memq 'load #{esew 1591}#)
- (cons #{e 1690}# #{exps 1593}#)
- #{exps 1593}#))))
- (if (memq 'load #{esew 1591}#)
+ (#{top-level-eval-hook 252}#
+ #{e 1692}#
+ #{mod 1618}#)
+ (if (memq 'load #{esew 1593}#)
+ (values
+ (cons #{e 1692}# #{exps 1595}#))
+ (values #{exps 1595}#))))
+ (if (memq 'load #{esew 1593}#)
+ (values
(cons (#{chi-install-global 417}#
- #{n 1686}#
+ #{n 1688}#
(#{chi 423}#
- #{e 1613}#
- #{r 1687}#
- #{w 1614}#
- #{mod 1616}#))
- #{exps 1593}#)
- #{exps 1593}#))
- (if (memv #{m 1590}# '(c&e))
- (begin
- (let ((#{e 1693}#
- (#{chi-install-global 417}#
- #{n 1686}#
- (#{chi 423}#
- #{e 1613}#
- #{r 1687}#
- #{w 1614}#
- #{mod 1616}#))))
- (begin
- (#{top-level-eval-hook 252}#
- #{e 1693}#
- #{mod 1616}#)
- (cons #{e 1693}#
- #{exps 1593}#))))
- (begin
- (if (memq 'eval #{esew 1591}#)
- (#{top-level-eval-hook 252}#
+ #{e 1615}#
+ #{r 1689}#
+ #{w 1616}#
+ #{mod 1618}#))
+ #{exps 1595}#))
+ (values #{exps 1595}#)))
+ (if (memv #{m 1592}# '(c&e))
+ (let ((#{e 1695}#
(#{chi-install-global 417}#
- #{n 1686}#
+ #{n 1688}#
(#{chi 423}#
- #{e 1613}#
- #{r 1687}#
- #{w 1614}#
- #{mod 1616}#))
- #{mod 1616}#))
- #{exps 1593}#)))))
- (if (memv #{type 1611}# '(define-form))
- (begin
- (let ((#{n 1698}#
- (#{id-var-name 397}#
- #{value 1612}#
- #{w 1614}#)))
+ #{e 1615}#
+ #{r 1689}#
+ #{w 1616}#
+ #{mod 1618}#))))
+ (begin
+ (#{top-level-eval-hook 252}#
+ #{e 1695}#
+ #{mod 1618}#)
+ (values
+ (cons #{e 1695}# #{exps 1595}#))))
(begin
- (let ((#{type 1700}#
- (car (#{lookup 337}#
- #{n 1698}#
- #{r 1587}#
- #{mod 1616}#))))
- (if (memv #{type 1700}#
- '(global
- core
- macro
- module-ref))
- (begin
- (if (if (memq #{m 1590}#
- '(c c&e))
- (if (not
(module-local-variable
- (current-module)
- #{n 1698}#))
+ (if (memq 'eval #{esew 1593}#)
+ (#{top-level-eval-hook 252}#
+ (#{chi-install-global 417}#
+ #{n 1688}#
+ (#{chi 423}#
+ #{e 1615}#
+ #{r 1689}#
+ #{w 1616}#
+ #{mod 1618}#))
+ #{mod 1618}#))
+ (values #{exps 1595}#)))))
+ (if (memv #{type 1613}# '(define-form))
+ (let ((#{n 1700}#
+ (#{id-var-name 397}#
+ #{value 1614}#
+ #{w 1616}#)))
+ (let ((#{type 1702}#
+ (car (#{lookup 337}#
+ #{n 1700}#
+ #{r 1589}#
+ #{mod 1618}#))))
+ (if (memv #{type 1702}#
+ '(global
+ core
+ macro
+ module-ref))
+ (begin
+ (if (if (memq #{m 1592}# '(c c&e))
+ (if (not (module-local-variable
+ (current-module)
+ #{n 1700}#))
+ (current-module)
+ #f)
+ #f)
+ (let ((#{old 1709}#
+ (module-variable
(current-module)
- #f)
+ #{n 1700}#)))
+ (if (if (variable? #{old 1709}#)
+ (variable-bound?
+ #{old 1709}#)
#f)
- (begin
- (let ((#{old 1707}#
- (module-variable
- (current-module)
- #{n 1698}#)))
- (if (if (variable?
- #{old 1707}#)
- (variable-bound?
- #{old 1707}#)
- #f)
- (module-define!
- (current-module)
- #{n 1698}#
- (variable-ref
- #{old 1707}#))
- (module-add!
- (current-module)
- #{n 1698}#
-
(make-undefined-variable))))))
- (cons (if (eq? #{m 1590}# 'c&e)
+ (module-define!
+ (current-module)
+ #{n 1700}#
+ (variable-ref #{old 1709}#))
+ (module-add!
+ (current-module)
+ #{n 1700}#
+ (make-undefined-variable)))))
+ (values
+ (cons (if (eq? #{m 1592}# 'c&e)
+ (let ((#{x 1713}#
+
(#{build-global-definition 283}#
+ #{s 1617}#
+ #{n 1700}#
+ (#{chi 423}#
+ #{e 1615}#
+ #{r 1589}#
+ #{w 1616}#
+ #{mod
1618}#))))
(begin
- (let ((#{x 1711}#
-
(#{build-global-definition 283}#
- #{s 1615}#
- #{n 1698}#
- (#{chi 423}#
- #{e 1613}#
- #{r 1587}#
- #{w 1614}#
- #{mod
1616}#))))
- (begin
-
(#{top-level-eval-hook 252}#
- #{x 1711}#
- #{mod 1616}#)
- #{x 1711}#)))
- (lambda ()
-
(#{build-global-definition 283}#
- #{s 1615}#
- #{n 1698}#
- (#{chi 423}#
- #{e 1613}#
- #{r 1587}#
- #{w 1614}#
- #{mod 1616}#))))
- #{exps 1593}#))
- (if (memv #{type 1700}#
- '(displaced-lexical))
- (syntax-violation
- #f
- "identifier out of context"
- #{e 1613}#
- (#{wrap 409}#
- #{value 1612}#
- #{w 1614}#
- #{mod 1616}#))
- (syntax-violation
- #f
- "cannot define keyword at top
level"
- #{e 1613}#
- (#{wrap 409}#
- #{value 1612}#
- #{w 1614}#
- #{mod 1616}#))))))))
- (cons (if (eq? #{m 1590}# 'c&e)
- (begin
- (let ((#{x 1716}#
+ (#{top-level-eval-hook
252}#
+ #{x 1713}#
+ #{mod 1618}#)
+ #{x 1713}#))
+ (lambda ()
+
(#{build-global-definition 283}#
+ #{s 1617}#
+ #{n 1700}#
+ (#{chi 423}#
+ #{e 1615}#
+ #{r 1589}#
+ #{w 1616}#
+ #{mod 1618}#))))
+ #{exps 1595}#)))
+ (if (memv #{type 1702}#
+ '(displaced-lexical))
+ (syntax-violation
+ #f
+ "identifier out of context"
+ #{e 1615}#
+ (#{wrap 409}#
+ #{value 1614}#
+ #{w 1616}#
+ #{mod 1618}#))
+ (syntax-violation
+ #f
+ "cannot define keyword at top
level"
+ #{e 1615}#
+ (#{wrap 409}#
+ #{value 1614}#
+ #{w 1616}#
+ #{mod 1618}#))))))
+ (values
+ (cons (if (eq? #{m 1592}# 'c&e)
+ (let ((#{x 1718}#
(#{chi-expr 425}#
- #{type 1611}#
- #{value 1612}#
- #{e 1613}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- #{mod 1616}#)))
+ #{type 1613}#
+ #{value 1614}#
+ #{e 1615}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ #{mod 1618}#)))
(begin
(#{top-level-eval-hook 252}#
- #{x 1716}#
- #{mod 1616}#)
- #{x 1716}#)))
- (lambda ()
- (#{chi-expr 425}#
- #{type 1611}#
- #{value 1612}#
- #{e 1613}#
- #{r 1587}#
- #{w 1614}#
- #{s 1615}#
- #{mod 1616}#)))
- #{exps 1593}#)))))))))
- (lambda (#{exps 1717}#)
- (#{scan 1585}#
- (cdr #{body 1586}#)
- #{r 1587}#
- #{w 1588}#
- #{s 1589}#
- #{m 1590}#
- #{esew 1591}#
- #{mod 1592}#
- #{exps 1717}#)))))))
- (begin
- (call-with-values
- (lambda ()
- (#{scan 1585}#
- #{body 1570}#
- #{r 1571}#
- #{w 1572}#
- #{s 1573}#
- #{m 1574}#
- #{esew 1575}#
- #{mod 1576}#
- '()))
- (lambda (#{exps 1719}#)
- (if (null? #{exps 1719}#)
- (#{build-void 265}# #{s 1573}#)
- (#{build-sequence 297}#
- #{s 1573}#
- (letrec*
- ((#{lp 1724}#
- (lambda (#{in 1725}# #{out 1726}#)
- (if (null? #{in 1725}#)
- #{out 1726}#
- (begin
- (let ((#{e 1728}# (car #{in 1725}#)))
- (#{lp 1724}#
- (cdr #{in 1725}#)
- (cons (if (procedure? #{e 1728}#)
- (#{e 1728}#)
- #{e 1728}#)
- #{out 1726}#))))))))
- (begin (#{lp 1724}# #{exps 1719}# '())))))))))))
+ #{x 1718}#
+ #{mod 1618}#)
+ #{x 1718}#))
+ (lambda ()
+ (#{chi-expr 425}#
+ #{type 1613}#
+ #{value 1614}#
+ #{e 1615}#
+ #{r 1589}#
+ #{w 1616}#
+ #{s 1617}#
+ #{mod 1618}#)))
+ #{exps 1595}#))))))))))
+ (lambda (#{exps 1719}#)
+ (#{scan 1587}#
+ (cdr #{body 1588}#)
+ #{r 1589}#
+ #{w 1590}#
+ #{s 1591}#
+ #{m 1592}#
+ #{esew 1593}#
+ #{mod 1594}#
+ #{exps 1719}#)))))))
+ (call-with-values
+ (lambda ()
+ (#{scan 1587}#
+ #{body 1572}#
+ #{r 1573}#
+ #{w 1574}#
+ #{s 1575}#
+ #{m 1576}#
+ #{esew 1577}#
+ #{mod 1578}#
+ '()))
+ (lambda (#{exps 1721}#)
+ (if (null? #{exps 1721}#)
+ (#{build-void 265}# #{s 1575}#)
+ (#{build-sequence 297}#
+ #{s 1575}#
+ (letrec*
+ ((#{lp 1726}#
+ (lambda (#{in 1727}# #{out 1728}#)
+ (if (null? #{in 1727}#)
+ #{out 1728}#
+ (let ((#{e 1730}# (car #{in 1727}#)))
+ (#{lp 1726}#
+ (cdr #{in 1727}#)
+ (cons (if (procedure? #{e 1730}#)
+ (#{e 1730}#)
+ #{e 1730}#)
+ #{out 1728}#)))))))
+ (#{lp 1726}# #{exps 1721}# '())))))))))
(#{chi-install-global 417}#
- (lambda (#{name 1729}# #{e 1730}#)
+ (lambda (#{name 1731}# #{e 1732}#)
(#{build-global-definition 283}#
#f
- #{name 1729}#
+ #{name 1731}#
(#{build-primcall 291}#
#f
'make-syntax-transformer
- (list (#{build-data 295}# #f #{name 1729}#)
+ (list (#{build-data 295}# #f #{name 1731}#)
(#{build-data 295}# #f 'macro)
- #{e 1730}#)))))
+ #{e 1732}#)))))
(#{chi-when-list 419}#
- (lambda (#{e 1737}# #{when-list 1738}# #{w 1739}#)
+ (lambda (#{e 1739}# #{when-list 1740}# #{w 1741}#)
(letrec*
- ((#{f 1746}#
- (lambda (#{when-list 1747}# #{situations 1748}#)
- (if (null? #{when-list 1747}#)
- #{situations 1748}#
- (#{f 1746}#
- (cdr #{when-list 1747}#)
- (cons (begin
- (let ((#{x 1750}# (car #{when-list 1747}#)))
- (if (#{free-id=? 399}#
- #{x 1750}#
- '#(syntax-object
- compile
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i1749"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1743" "i1744" "i1745"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1740" "i1741" "i1742"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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=? 399}#
- #{x 1750}#
- '#(syntax-object
- load
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i1749"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1743" "i1744" "i1745"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1740" "i1741" "i1742"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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)))
- 'load
- (if (#{free-id=? 399}#
- #{x 1750}#
- '#(syntax-object
- eval
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i1749"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1743" "i1744" "i1745"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1740" "i1741" "i1742"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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=? 399}#
- #{x 1750}#
- '#(syntax-object
- expand
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i1749"))
- #(ribcage () () ())
- #(ribcage
- #(f when-list situations)
- #((top) (top) (top))
- #("i1743" "i1744" "i1745"))
- #(ribcage () () ())
- #(ribcage
- #(e when-list w)
- #((top) (top) (top))
- #("i1740" "i1741" "i1742"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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 1737}#
- (#{wrap 409}#
- #{x 1750}#
- #{w 1739}#
- #f))))))))
- #{situations 1748}#))))))
- (begin (#{f 1746}# #{when-list 1738}# '())))))
- (#{syntax-type 421}#
- (lambda (#{e 1760}#
- #{r 1761}#
- #{w 1762}#
- #{s 1763}#
- #{rib 1764}#
- #{mod 1765}#
- #{for-car? 1766}#)
- (if (symbol? #{e 1760}#)
- (begin
- (let ((#{n 1778}#
- (#{id-var-name 397}# #{e 1760}# #{w 1762}#)))
- (begin
- (let ((#{b 1780}#
- (#{lookup 337}#
- #{n 1778}#
- #{r 1761}#
- #{mod 1765}#)))
- (begin
- (let ((#{type 1782}# (car #{b 1780}#)))
- (if (memv #{type 1782}# '(lexical))
- (values
- #{type 1782}#
- (cdr #{b 1780}#)
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{type 1782}# '(global))
- (values
- #{type 1782}#
- #{n 1778}#
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{type 1782}# '(macro))
- (if #{for-car? 1766}#
- (values
- #{type 1782}#
- (cdr #{b 1780}#)
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (#{syntax-type 421}#
- (#{chi-macro 429}#
- (cdr #{b 1780}#)
- #{e 1760}#
- #{r 1761}#
- #{w 1762}#
- #{s 1763}#
- #{rib 1764}#
- #{mod 1765}#)
- #{r 1761}#
- '(())
- #{s 1763}#
- #{rib 1764}#
- #{mod 1765}#
- #f))
- (values
- #{type 1782}#
- (cdr #{b 1780}#)
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#))))))))))
- (if (pair? #{e 1760}#)
- (begin
- (let ((#{first 1796}# (car #{e 1760}#)))
- (call-with-values
- (lambda ()
- (#{syntax-type 421}#
- #{first 1796}#
- #{r 1761}#
- #{w 1762}#
- #{s 1763}#
- #{rib 1764}#
- #{mod 1765}#
- #t))
- (lambda (#{ftype 1797}#
- #{fval 1798}#
- #{fe 1799}#
- #{fw 1800}#
- #{fs 1801}#
- #{fmod 1802}#)
- (if (memv #{ftype 1797}# '(lexical))
- (values
- 'lexical-call
- #{fval 1798}#
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{ftype 1797}# '(global))
- (values
- 'global-call
- (#{make-syntax-object 307}#
- #{fval 1798}#
- #{w 1762}#
- #{fmod 1802}#)
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{ftype 1797}# '(macro))
- (#{syntax-type 421}#
- (#{chi-macro 429}#
- #{fval 1798}#
- #{e 1760}#
- #{r 1761}#
- #{w 1762}#
- #{s 1763}#
- #{rib 1764}#
- #{mod 1765}#)
- #{r 1761}#
- '(())
- #{s 1763}#
- #{rib 1764}#
- #{mod 1765}#
- #{for-car? 1766}#)
- (if (memv #{ftype 1797}# '(module-ref))
- (call-with-values
- (lambda ()
- (#{fval 1798}#
- #{e 1760}#
- #{r 1761}#
- #{w 1762}#))
- (lambda (#{e 1814}#
- #{r 1815}#
- #{w 1816}#
- #{s 1817}#
- #{mod 1818}#)
- (#{syntax-type 421}#
- #{e 1814}#
- #{r 1815}#
- #{w 1816}#
- #{s 1817}#
- #{rib 1764}#
- #{mod 1818}#
- #{for-car? 1766}#)))
- (if (memv #{ftype 1797}# '(core))
- (values
- 'core-form
- #{fval 1798}#
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{ftype 1797}# '(local-syntax))
- (values
- 'local-syntax-form
- #{fval 1798}#
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{ftype 1797}# '(begin))
- (values
- 'begin-form
- #f
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{ftype 1797}# '(eval-when))
- (values
- 'eval-when-form
- #f
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (if (memv #{ftype 1797}# '(define))
- (let ((#{tmp 1829}# #{e 1760}#))
- (let ((#{tmp 1830}#
- ($sc-dispatch
- #{tmp 1829}#
- '(_ any any))))
- (if (if #{tmp 1830}#
- (@apply
- (lambda (#{name 1833}#
- #{val 1834}#)
- (#{id? 343}# #{name 1833}#))
- #{tmp 1830}#)
- #f)
- (@apply
- (lambda (#{name 1837}#
- #{val 1838}#)
- (values
- 'define-form
- #{name 1837}#
- #{val 1838}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#))
- #{tmp 1830}#)
- (let ((#{tmp 1839}#
- ($sc-dispatch
- #{tmp 1829}#
- '(_ (any . any)
- any
- .
- each-any))))
- (if (if #{tmp 1839}#
- (@apply
- (lambda (#{name 1844}#
- #{args 1845}#
- #{e1 1846}#
- #{e2 1847}#)
- (if (#{id? 343}#
- #{name 1844}#)
- (#{valid-bound-ids?
403}#
- (#{lambda-var-list
453}#
- #{args 1845}#))
- #f))
- #{tmp 1839}#)
- #f)
- (@apply
- (lambda (#{name 1854}#
- #{args 1855}#
- #{e1 1856}#
- #{e2 1857}#)
- (values
- 'define-form
- (#{wrap 409}#
- #{name 1854}#
- #{w 1762}#
- #{mod 1765}#)
- (#{decorate-source 261}#
- (cons '#(syntax-object
- lambda
- ((top)
- #(ribcage
- #(name
- args
- e1
- e2)
- #((top)
- (top)
- (top)
- (top))
- #("i1850"
- "i1851"
- "i1852"
- "i1853"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1803"
- "i1804"
- "i1805"
- "i1806"
- "i1807"
- "i1808"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i1795"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1767"
- "i1768"
- "i1769"
- "i1770"
- "i1771"
- "i1772"
- "i1773"))
- #(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-call
- 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-primcall
-
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-call
- 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-primcall
- make-call
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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 409}#
- (cons #{args
1855}#
- (cons
#{e1 1856}#
-
#{e2 1857}#))
- #{w 1762}#
- #{mod 1765}#))
- #{s 1763}#)
- '(())
- #{s 1763}#
- #{mod 1765}#))
- #{tmp 1839}#)
- (let ((#{tmp 1860}#
- ($sc-dispatch
- #{tmp 1829}#
- '(_ any))))
- (if (if #{tmp 1860}#
- (@apply
- (lambda (#{name
1862}#)
- (#{id? 343}#
- #{name 1862}#))
- #{tmp 1860}#)
- #f)
- (@apply
- (lambda (#{name 1864}#)
- (values
- 'define-form
- (#{wrap 409}#
- #{name 1864}#
- #{w 1762}#
- #{mod 1765}#)
- '(#(syntax-object
- if
- ((top)
- #(ribcage
- #(name)
- #((top))
- #("i1863"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1803"
- "i1804"
- "i1805"
- "i1806"
- "i1807"
- "i1808"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i1795"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1767"
- "i1768"
- "i1769"
- "i1770"
- "i1771"
- "i1772"
- "i1773"))
- #(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-call
- 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-primcall
-
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-call
- 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-primcall
- make-call
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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))
- #("i1863"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1803"
- "i1804"
- "i1805"
- "i1806"
- "i1807"
- "i1808"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i1795"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1767"
- "i1768"
- "i1769"
- "i1770"
- "i1771"
- "i1772"
- "i1773"))
- #(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-call
- 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-primcall
-
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-call
- 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-primcall
- make-call
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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))
- #("i1863"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1803"
- "i1804"
- "i1805"
- "i1806"
- "i1807"
- "i1808"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i1795"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i1767"
- "i1768"
- "i1769"
- "i1770"
- "i1771"
- "i1772"
- "i1773"))
- #(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-call
- 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-primcall
-
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-call
- 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-primcall
- make-call
-
make-conditional
-
make-toplevel-define
-
make-toplevel-set
-
make-toplevel-ref
-
make-module-set
-
make-module-ref
-
make-lexical-set
-
make-lexical-ref
-
make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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)))
- '(())
- #{s 1763}#
- #{mod 1765}#))
- #{tmp 1860}#)
- (syntax-violation
- #f
- "source expression failed
to match any pattern"
- #{tmp 1829}#))))))))
- (if (memv #{ftype 1797}# '(define-syntax))
- (let ((#{tmp 1867}# #{e 1760}#))
- (let ((#{tmp 1868}#
- ($sc-dispatch
- #{tmp 1867}#
- '(_ any any))))
- (if (if #{tmp 1868}#
- (@apply
- (lambda (#{name 1871}#
- #{val 1872}#)
- (#{id? 343}#
- #{name 1871}#))
- #{tmp 1868}#)
- #f)
- (@apply
- (lambda (#{name 1875}#
- #{val 1876}#)
- (values
- 'define-syntax-form
- #{name 1875}#
- #{val 1876}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#))
- #{tmp 1868}#)
- (syntax-violation
- #f
- "source expression failed to
match any pattern"
- #{tmp 1867}#))))
- (values
- 'call
- #f
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)))))))))))))))
- (if (#{syntax-object? 309}# #{e 1760}#)
- (#{syntax-type 421}#
- (#{syntax-object-expression 311}# #{e 1760}#)
- #{r 1761}#
- (#{join-wraps 391}#
- #{w 1762}#
- (#{syntax-object-wrap 313}# #{e 1760}#))
- (begin
- (let ((#{t 1882}#
- (#{source-annotation 324}# #{e 1760}#)))
- (if #{t 1882}# #{t 1882}# #{s 1763}#)))
- #{rib 1764}#
- (begin
- (let ((#{t 1886}#
- (#{syntax-object-module 315}# #{e 1760}#)))
- (if #{t 1886}# #{t 1886}# #{mod 1765}#)))
- #{for-car? 1766}#)
- (if (self-evaluating? #{e 1760}#)
- (values
- 'constant
- #f
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)
- (values
- 'other
- #f
- #{e 1760}#
- #{w 1762}#
- #{s 1763}#
- #{mod 1765}#)))))))
- (#{chi 423}#
- (lambda (#{e 1891}# #{r 1892}# #{w 1893}# #{mod 1894}#)
- (call-with-values
- (lambda ()
- (#{syntax-type 421}#
- #{e 1891}#
- #{r 1892}#
- #{w 1893}#
- (#{source-annotation 324}# #{e 1891}#)
- #f
- #{mod 1894}#
- #f))
- (lambda (#{type 1899}#
- #{value 1900}#
- #{e 1901}#
- #{w 1902}#
- #{s 1903}#
- #{mod 1904}#)
- (#{chi-expr 425}#
- #{type 1899}#
- #{value 1900}#
- #{e 1901}#
- #{r 1892}#
- #{w 1902}#
- #{s 1903}#
- #{mod 1904}#)))))
- (#{chi-expr 425}#
- (lambda (#{type 1911}#
- #{value 1912}#
- #{e 1913}#
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#)
- (if (memv #{type 1911}# '(lexical))
- (#{build-lexical-reference 273}#
- 'value
- #{s 1916}#
- #{e 1913}#
- #{value 1912}#)
- (if (memv #{type 1911}# '(core core-form))
- (#{value 1912}#
- #{e 1913}#
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#)
- (if (memv #{type 1911}# '(module-ref))
- (call-with-values
- (lambda ()
- (#{value 1912}# #{e 1913}# #{r 1914}# #{w 1915}#))
- (lambda (#{e 1928}#
- #{r 1929}#
- #{w 1930}#
- #{s 1931}#
- #{mod 1932}#)
- (#{chi 423}#
- #{e 1928}#
- #{r 1929}#
- #{w 1930}#
- #{mod 1932}#)))
- (if (memv #{type 1911}# '(lexical-call))
- (#{chi-call 427}#
- (begin
- (let ((#{id 1940}# (car #{e 1913}#)))
- (#{build-lexical-reference 273}#
- 'fun
- (#{source-annotation 324}# #{id 1940}#)
- (if (#{syntax-object? 309}# #{id 1940}#)
- (syntax->datum #{id 1940}#)
- #{id 1940}#)
- #{value 1912}#)))
- #{e 1913}#
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#)
- (if (memv #{type 1911}# '(global-call))
- (#{chi-call 427}#
- (#{build-global-reference 279}#
- (#{source-annotation 324}# (car #{e 1913}#))
- (if (#{syntax-object? 309}# #{value 1912}#)
- (#{syntax-object-expression 311}# #{value 1912}#)
- #{value 1912}#)
- (if (#{syntax-object? 309}# #{value 1912}#)
- (#{syntax-object-module 315}# #{value 1912}#)
- #{mod 1917}#))
- #{e 1913}#
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#)
- (if (memv #{type 1911}# '(constant))
- (#{build-data 295}#
- #{s 1916}#
- (#{strip 449}#
- (#{source-wrap 411}#
- #{e 1913}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#)
- '(())))
- (if (memv #{type 1911}# '(global))
- (#{build-global-reference 279}#
- #{s 1916}#
- #{value 1912}#
- #{mod 1917}#)
- (if (memv #{type 1911}# '(call))
- (#{chi-call 427}#
- (#{chi 423}#
- (car #{e 1913}#)
- #{r 1914}#
- #{w 1915}#
- #{mod 1917}#)
- #{e 1913}#
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#)
- (if (memv #{type 1911}# '(begin-form))
- (let ((#{tmp 1947}# #{e 1913}#))
- (let ((#{tmp 1948}#
- ($sc-dispatch
- #{tmp 1947}#
- '(_ any . each-any))))
- (if #{tmp 1948}#
- (@apply
- (lambda (#{e1 1951}# #{e2 1952}#)
- (#{chi-sequence 413}#
- (cons #{e1 1951}# #{e2 1952}#)
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#))
- #{tmp 1948}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp 1947}#))))
- (if (memv #{type 1911}# '(local-syntax-form))
- (#{chi-local-syntax 433}#
- #{value 1912}#
- #{e 1913}#
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#
- #{chi-sequence 413}#)
- (if (memv #{type 1911}# '(eval-when-form))
- (let ((#{tmp 1956}# #{e 1913}#))
- (let ((#{tmp 1957}#
- ($sc-dispatch
- #{tmp 1956}#
- '(_ each-any any . each-any))))
- (if #{tmp 1957}#
- (@apply
- (lambda (#{x 1961}#
- #{e1 1962}#
- #{e2 1963}#)
- (begin
- (let ((#{when-list 1965}#
- (#{chi-when-list 419}#
- #{e 1913}#
- #{x 1961}#
- #{w 1915}#)))
- (if (memq 'eval #{when-list 1965}#)
- (#{chi-sequence 413}#
- (cons #{e1 1962}# #{e2 1963}#)
- #{r 1914}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#)
- (#{chi-void 437}#)))))
- #{tmp 1957}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp 1956}#))))
- (if (memv #{type 1911}#
- '(define-form define-syntax-form))
- (syntax-violation
- #f
- "definition in expression context"
- #{e 1913}#
- (#{wrap 409}#
- #{value 1912}#
- #{w 1915}#
- #{mod 1917}#))
- (if (memv #{type 1911}# '(syntax))
- (syntax-violation
- #f
- "reference to pattern variable outside
syntax form"
- (#{source-wrap 411}#
- #{e 1913}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#))
- (if (memv #{type 1911}# '(displaced-lexical))
- (syntax-violation
- #f
- "reference to identifier outside its
scope"
- (#{source-wrap 411}#
- #{e 1913}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#))
- (syntax-violation
- #f
- "unexpected syntax"
- (#{source-wrap 411}#
- #{e 1913}#
- #{w 1915}#
- #{s 1916}#
- #{mod 1917}#))))))))))))))))))
- (#{chi-call 427}#
- (lambda (#{x 1972}#
- #{e 1973}#
- #{r 1974}#
- #{w 1975}#
- #{s 1976}#
- #{mod 1977}#)
- (let ((#{tmp 1984}# #{e 1973}#))
- (let ((#{tmp 1985}#
- ($sc-dispatch #{tmp 1984}# '(any . each-any))))
- (if #{tmp 1985}#
- (@apply
- (lambda (#{e0 1988}# #{e1 1989}#)
- (#{build-call 267}#
- #{s 1976}#
- #{x 1972}#
- (map (lambda (#{e 1990}#)
- (#{chi 423}#
- #{e 1990}#
- #{r 1974}#
- #{w 1975}#
- #{mod 1977}#))
- #{e1 1989}#)))
- #{tmp 1985}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 1984}#))))))
- (#{chi-macro 429}#
- (lambda (#{p 1993}#
- #{e 1994}#
- #{r 1995}#
- #{w 1996}#
- #{s 1997}#
- #{rib 1998}#
- #{mod 1999}#)
- (letrec*
- ((#{rebuild-macro-output 2008}#
- (lambda (#{x 2009}# #{m 2010}#)
- (if (pair? #{x 2009}#)
- (#{decorate-source 261}#
- (cons (#{rebuild-macro-output 2008}#
- (car #{x 2009}#)
- #{m 2010}#)
- (#{rebuild-macro-output 2008}#
- (cdr #{x 2009}#)
- #{m 2010}#))
- #{s 1997}#)
- (if (#{syntax-object? 309}# #{x 2009}#)
- (begin
- (let ((#{w 2018}#
- (#{syntax-object-wrap 313}# #{x 2009}#)))
- (begin
- (let ((#{ms 2021}# (car #{w 2018}#))
- (#{s 2022}# (cdr #{w 2018}#)))
- (if (if (pair? #{ms 2021}#)
- (eq? (car #{ms 2021}#) #f)
- #f)
- (#{make-syntax-object 307}#
- (#{syntax-object-expression 311}# #{x 2009}#)
- (cons (cdr #{ms 2021}#)
- (if #{rib 1998}#
- (cons #{rib 1998}# (cdr #{s 2022}#))
- (cdr #{s 2022}#)))
- (#{syntax-object-module 315}# #{x 2009}#))
- (#{make-syntax-object 307}#
- (#{decorate-source 261}#
- (#{syntax-object-expression 311}# #{x 2009}#)
- #{s 2022}#)
- (cons (cons #{m 2010}# #{ms 2021}#)
- (if #{rib 1998}#
- (cons #{rib 1998}#
- (cons 'shift #{s 2022}#))
- (cons 'shift #{s 2022}#)))
- (#{syntax-object-module 315}# #{x 2009}#)))))))
- (if (vector? #{x 2009}#)
- (begin
- (let ((#{n 2034}# (vector-length #{x 2009}#)))
- (begin
- (let ((#{v 2036}#
- (#{decorate-source 261}#
- (make-vector #{n 2034}#)
- #{x 2009}#)))
- (letrec*
- ((#{loop 2039}#
- (lambda (#{i 2040}#)
- (if (= #{i 2040}# #{n 2034}#)
- (begin (if #f #f) #{v 2036}#)
- (begin
- (vector-set!
- #{v 2036}#
- #{i 2040}#
- (#{rebuild-macro-output 2008}#
- (vector-ref #{x 2009}# #{i 2040}#)
- #{m 2010}#))
- (#{loop 2039}# (#{1+}# #{i 2040}#)))))))
- (begin (#{loop 2039}# 0)))))))
- (if (symbol? #{x 2009}#)
- (syntax-violation
- #f
- "encountered raw symbol in macro output"
- (#{source-wrap 411}#
- #{e 1994}#
- #{w 1996}#
- (cdr #{w 1996}#)
- #{mod 1999}#)
- #{x 2009}#)
- (#{decorate-source 261}# #{x 2009}# #{s 1997}#))))))))
- (begin
- (#{rebuild-macro-output 2008}#
- (#{p 1993}#
- (#{source-wrap 411}#
- #{e 1994}#
- (#{anti-mark 381}# #{w 1996}#)
- #{s 1997}#
- #{mod 1999}#))
- (gensym "m"))))))
- (#{chi-body 431}#
- (lambda (#{body 2050}#
- #{outer-form 2051}#
- #{r 2052}#
- #{w 2053}#
- #{mod 2054}#)
- (begin
- (let ((#{r 2062}#
- (cons '("placeholder" placeholder) #{r 2052}#)))
- (begin
- (let ((#{ribcage 2064}#
- (#{make-ribcage 361}# '() '() '())))
- (begin
- (let ((#{w 2067}#
- (cons (car #{w 2053}#)
- (cons #{ribcage 2064}# (cdr #{w 2053}#)))))
- (letrec*
- ((#{parse 2079}#
- (lambda (#{body 2080}#
- #{ids 2081}#
- #{labels 2082}#
- #{var-ids 2083}#
- #{vars 2084}#
- #{vals 2085}#
- #{bindings 2086}#)
- (if (null? #{body 2080}#)
- (syntax-violation
- #f
- "no expressions in body"
- #{outer-form 2051}#)
- (begin
- (let ((#{e 2091}# (cdr (car #{body 2080}#)))
- (#{er 2092}# (car (car #{body 2080}#))))
- (call-with-values
- (lambda ()
- (#{syntax-type 421}#
- #{e 2091}#
- #{er 2092}#
- '(())
- (#{source-annotation 324}# #{er 2092}#)
- #{ribcage 2064}#
- #{mod 2054}#
- #f))
- (lambda (#{type 2094}#
- #{value 2095}#
- #{e 2096}#
- #{w 2097}#
- #{s 2098}#
- #{mod 2099}#)
- (if (memv #{type 2094}# '(define-form))
- (begin
- (let ((#{id 2109}#
- (#{wrap 409}#
- #{value 2095}#
- #{w 2097}#
- #{mod 2099}#))
- (#{label 2110}#
- (#{gen-label 356}#)))
- (begin
- (let ((#{var 2112}#
- (#{gen-var 451}#
- #{id 2109}#)))
- (begin
- (#{extend-ribcage! 385}#
- #{ribcage 2064}#
- #{id 2109}#
- #{label 2110}#)
- (#{parse 2079}#
- (cdr #{body 2080}#)
- (cons #{id 2109}#
- #{ids 2081}#)
- (cons #{label 2110}#
- #{labels 2082}#)
- (cons #{id 2109}#
- #{var-ids 2083}#)
- (cons #{var 2112}#
- #{vars 2084}#)
- (cons (cons #{er 2092}#
- (#{wrap 409}#
- #{e 2096}#
- #{w 2097}#
- #{mod 2099}#))
- #{vals 2085}#)
- (cons (cons 'lexical
- #{var 2112}#)
- #{bindings
2086}#)))))))
- (if (memv #{type 2094}#
- '(define-syntax-form))
- (begin
- (let ((#{id 2117}#
- (#{wrap 409}#
- #{value 2095}#
- #{w 2097}#
- #{mod 2099}#))
- (#{label 2118}#
- (#{gen-label 356}#)))
- (begin
- (#{extend-ribcage! 385}#
- #{ribcage 2064}#
- #{id 2117}#
- #{label 2118}#)
- (#{parse 2079}#
- (cdr #{body 2080}#)
- (cons #{id 2117}# #{ids 2081}#)
- (cons #{label 2118}#
- #{labels 2082}#)
- #{var-ids 2083}#
- #{vars 2084}#
- #{vals 2085}#
- (cons (cons 'macro
- (cons #{er 2092}#
- (#{wrap 409}#
- #{e 2096}#
- #{w 2097}#
- #{mod
2099}#)))
- #{bindings 2086}#)))))
- (if (memv #{type 2094}# '(begin-form))
- (let ((#{tmp 2121}# #{e 2096}#))
- (let ((#{tmp 2122}#
- ($sc-dispatch
- #{tmp 2121}#
- '(_ . each-any))))
- (if #{tmp 2122}#
- (@apply
- (lambda (#{e1 2124}#)
- (#{parse 2079}#
- (letrec*
- ((#{f 2127}#
- (lambda (#{forms
2128}#)
- (if (null?
#{forms 2128}#)
- (cdr #{body
2080}#)
- (cons (cons
#{er 2092}#
-
(#{wrap 409}#
-
(car #{forms 2128}#)
-
#{w 2097}#
-
#{mod 2099}#))
- (#{f
2127}#
- (cdr
#{forms 2128}#)))))))
- (begin
- (#{f 2127}#
- #{e1 2124}#)))
- #{ids 2081}#
- #{labels 2082}#
- #{var-ids 2083}#
- #{vars 2084}#
- #{vals 2085}#
- #{bindings 2086}#))
- #{tmp 2122}#)
- (syntax-violation
- #f
- "source expression failed to
match any pattern"
- #{tmp 2121}#))))
- (if (memv #{type 2094}#
- '(local-syntax-form))
- (#{chi-local-syntax 433}#
- #{value 2095}#
- #{e 2096}#
- #{er 2092}#
- #{w 2097}#
- #{s 2098}#
- #{mod 2099}#
- (lambda (#{forms 2131}#
- #{er 2132}#
- #{w 2133}#
- #{s 2134}#
- #{mod 2135}#)
- (#{parse 2079}#
- (letrec*
- ((#{f 2143}#
- (lambda (#{forms 2144}#)
- (if (null? #{forms
2144}#)
- (cdr #{body 2080}#)
- (cons (cons #{er
2132}#
- (#{wrap
409}#
- (car
#{forms 2144}#)
- #{w
2133}#
- #{mod
2135}#))
- (#{f 2143}#
- (cdr
#{forms 2144}#)))))))
- (begin
- (#{f 2143}#
- #{forms 2131}#)))
- #{ids 2081}#
- #{labels 2082}#
- #{var-ids 2083}#
- #{vars 2084}#
- #{vals 2085}#
- #{bindings 2086}#)))
- (if (null? #{ids 2081}#)
- (#{build-sequence 297}#
- #f
- (map (lambda (#{x 2147}#)
- (#{chi 423}#
- (cdr #{x 2147}#)
- (car #{x 2147}#)
- '(())
- #{mod 2099}#))
- (cons (cons #{er 2092}#
-
(#{source-wrap 411}#
- #{e 2096}#
- #{w 2097}#
- #{s 2098}#
- #{mod
2099}#))
- (cdr #{body
2080}#))))
- (begin
- (if (not (#{valid-bound-ids?
403}#
- #{ids 2081}#))
- (syntax-violation
- #f
- "invalid or duplicate
identifier in definition"
- #{outer-form 2051}#))
- (letrec*
- ((#{loop 2154}#
- (lambda (#{bs 2155}#
- #{er-cache 2156}#
- #{r-cache 2157}#)
- (if (not (null? #{bs
2155}#))
- (begin
- (let ((#{b 2160}#
- (car #{bs
2155}#)))
- (if (eq? (car #{b
2160}#)
- 'macro)
- (begin
- (let ((#{er
2163}#
- (car
(cdr #{b 2160}#))))
- (begin
- (let
((#{r-cache 2165}#
-
(if (eq? #{er 2163}#
-
#{er-cache 2156}#)
-
#{r-cache 2157}#
-
(#{macros-only-env 335}#
-
#{er 2163}#))))
- (begin
-
(set-cdr!
- #{b
2160}#
-
(#{eval-local-transformer 435}#
-
(#{chi 423}#
-
(cdr (cdr #{b 2160}#))
-
#{r-cache 2165}#
-
'(())
-
#{mod 2099}#)
-
#{mod 2099}#))
-
(#{loop 2154}#
-
(cdr #{bs 2155}#)
-
#{er 2163}#
-
#{r-cache 2165}#))))))
- (#{loop 2154}#
- (cdr #{bs
2155}#)
- #{er-cache
2156}#
- #{r-cache
2157}#))))))))
- (begin
- (#{loop 2154}#
- #{bindings 2086}#
- #f
- #f)))
- (set-cdr!
- #{r 2062}#
- (#{extend-env 331}#
- #{labels 2082}#
- #{bindings 2086}#
- (cdr #{r 2062}#)))
- (#{build-letrec 303}#
- #f
- #t
- (reverse
- (map syntax->datum
- #{var-ids 2083}#))
- (reverse #{vars 2084}#)
- (map (lambda (#{x 2168}#)
- (#{chi 423}#
- (cdr #{x 2168}#)
- (car #{x 2168}#)
- '(())
- #{mod 2099}#))
- (reverse #{vals 2085}#))
- (#{build-sequence 297}#
- #f
- (map (lambda (#{x 2172}#)
- (#{chi 423}#
- (cdr #{x 2172}#)
- (car #{x 2172}#)
- '(())
- #{mod 2099}#))
- (cons (cons #{er
2092}#
-
(#{source-wrap 411}#
- #{e
2096}#
- #{w
2097}#
- #{s
2098}#
- #{mod
2099}#))
- (cdr #{body
2080}#)))))))))))))))))))
- (begin
- (#{parse 2079}#
- (map (lambda (#{x 2087}#)
- (cons #{r 2062}#
- (#{wrap 409}#
- #{x 2087}#
- #{w 2067}#
- #{mod 2054}#)))
- #{body 2050}#)
- '()
- '()
- '()
- '()
- '()
- '())))))))))))
- (#{chi-local-syntax 433}#
- (lambda (#{rec? 2175}#
- #{e 2176}#
- #{r 2177}#
- #{w 2178}#
- #{s 2179}#
- #{mod 2180}#
- #{k 2181}#)
- (let ((#{tmp 2189}# #{e 2176}#))
- (let ((#{tmp 2190}#
- ($sc-dispatch
- #{tmp 2189}#
- '(_ #(each (any any)) any . each-any))))
- (if #{tmp 2190}#
- (@apply
- (lambda (#{id 2195}#
- #{val 2196}#
- #{e1 2197}#
- #{e2 2198}#)
- (begin
- (let ((#{ids 2200}# #{id 2195}#))
- (if (not (#{valid-bound-ids? 403}# #{ids 2200}#))
- (syntax-violation
- #f
- "duplicate bound keyword"
- #{e 2176}#)
- (begin
- (let ((#{labels 2203}#
- (#{gen-labels 358}# #{ids 2200}#)))
- (begin
- (let ((#{new-w 2205}#
- (#{make-binding-wrap 387}#
- #{ids 2200}#
- #{labels 2203}#
- #{w 2178}#)))
- (#{k 2181}#
- (cons #{e1 2197}# #{e2 2198}#)
- (#{extend-env 331}#
- #{labels 2203}#
- (begin
- (let ((#{w 2209}#
- (if #{rec? 2175}#
- #{new-w 2205}#
- #{w 2178}#))
- (#{trans-r 2210}#
- (#{macros-only-env 335}#
- #{r 2177}#)))
- (map (lambda (#{x 2211}#)
- (cons 'macro
- (#{eval-local-transformer
435}#
- (#{chi 423}#
- #{x 2211}#
- #{trans-r 2210}#
- #{w 2209}#
- #{mod 2180}#)
- #{mod 2180}#)))
- #{val 2196}#)))
- #{r 2177}#)
- #{new-w 2205}#
- #{s 2179}#
- #{mod 2180}#)))))))))
- #{tmp 2190}#)
- (let ((#{_ 2216}# #{tmp 2189}#))
- (syntax-violation
- #f
- "bad local syntax definition"
- (#{source-wrap 411}#
- #{e 2176}#
- #{w 2178}#
- #{s 2179}#
- #{mod 2180}#))))))))
- (#{eval-local-transformer 435}#
- (lambda (#{expanded 2217}# #{mod 2218}#)
- (begin
- (let ((#{p 2222}#
- (#{local-eval-hook 254}#
- #{expanded 2217}#
- #{mod 2218}#)))
- (if (procedure? #{p 2222}#)
- #{p 2222}#
- (syntax-violation
- #f
- "nonprocedure transformer"
- #{p 2222}#))))))
- (#{chi-void 437}#
- (lambda () (#{build-void 265}# #f)))
- (#{ellipsis? 439}#
- (lambda (#{x 2224}#)
- (if (#{nonsymbol-id? 341}# #{x 2224}#)
- (#{free-id=? 399}#
- #{x 2224}#
- '#(syntax-object
- ...
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i2225"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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)))
- #f)))
- (#{lambda-formals 441}#
- (lambda (#{orig-args 2228}#)
- (letrec*
- ((#{req 2231}#
- (lambda (#{args 2234}# #{rreq 2235}#)
- (let ((#{tmp 2238}# #{args 2234}#))
- (let ((#{tmp 2239}# ($sc-dispatch #{tmp 2238}# '())))
- (if #{tmp 2239}#
- (@apply
- (lambda ()
- (#{check 2233}# (reverse #{rreq 2235}#) #f))
- #{tmp 2239}#)
- (let ((#{tmp 2240}#
- ($sc-dispatch #{tmp 2238}# '(any . any))))
- (if (if #{tmp 2240}#
- (@apply
- (lambda (#{a 2243}# #{b 2244}#)
- (#{id? 343}# #{a 2243}#))
- #{tmp 2240}#)
- #f)
- (@apply
- (lambda (#{a 2247}# #{b 2248}#)
- (#{req 2231}#
- #{b 2248}#
- (cons #{a 2247}# #{rreq 2235}#)))
- #{tmp 2240}#)
- (let ((#{tmp 2249}# (list #{tmp 2238}#)))
- (if (if #{tmp 2249}#
- (@apply
- (lambda (#{r 2251}#)
- (#{id? 343}# #{r 2251}#))
- #{tmp 2249}#)
- #f)
- (@apply
- (lambda (#{r 2253}#)
- (#{check 2233}#
- (reverse #{rreq 2235}#)
- #{r 2253}#))
- #{tmp 2249}#)
- (let ((#{else 2255}# #{tmp 2238}#))
- (syntax-violation
- 'lambda
- "invalid argument list"
- #{orig-args 2228}#
- #{args 2234}#)))))))))))
- (#{check 2233}#
- (lambda (#{req 2256}# #{rest 2257}#)
- (if (#{distinct-bound-ids? 405}#
- (if #{rest 2257}#
- (cons #{rest 2257}# #{req 2256}#)
- #{req 2256}#))
- (values #{req 2256}# #f #{rest 2257}# #f)
- (syntax-violation
- 'lambda
- "duplicate identifier in argument list"
- #{orig-args 2228}#)))))
- (begin (#{req 2231}# #{orig-args 2228}# '())))))
- (#{chi-simple-lambda 443}#
- (lambda (#{e 2263}#
- #{r 2264}#
- #{w 2265}#
- #{s 2266}#
- #{mod 2267}#
- #{req 2268}#
- #{rest 2269}#
- #{meta 2270}#
- #{body 2271}#)
- (begin
- (let ((#{ids 2283}#
- (if #{rest 2269}#
- (append #{req 2268}# (list #{rest 2269}#))
- #{req 2268}#)))
- (begin
- (let ((#{vars 2285}#
- (map #{gen-var 451}# #{ids 2283}#)))
- (begin
- (let ((#{labels 2287}#
- (#{gen-labels 358}# #{ids 2283}#)))
- (#{build-simple-lambda 285}#
- #{s 2266}#
- (map syntax->datum #{req 2268}#)
- (if #{rest 2269}#
- (syntax->datum #{rest 2269}#)
- #f)
- #{vars 2285}#
- #{meta 2270}#
- (#{chi-body 431}#
- #{body 2271}#
- (#{source-wrap 411}#
- #{e 2263}#
- #{w 2265}#
- #{s 2266}#
- #{mod 2267}#)
- (#{extend-var-env 333}#
- #{labels 2287}#
- #{vars 2285}#
- #{r 2264}#)
- (#{make-binding-wrap 387}#
- #{ids 2283}#
- #{labels 2287}#
- #{w 2265}#)
- #{mod 2267}#))))))))))
- (#{lambda*-formals 445}#
- (lambda (#{orig-args 2290}#)
- (letrec*
- ((#{req 2293}#
- (lambda (#{args 2302}# #{rreq 2303}#)
- (let ((#{tmp 2306}# #{args 2302}#))
- (let ((#{tmp 2307}# ($sc-dispatch #{tmp 2306}# '())))
- (if #{tmp 2307}#
- (@apply
- (lambda ()
- (#{check 2301}#
- (reverse #{rreq 2303}#)
- '()
- #f
- '()))
- #{tmp 2307}#)
- (let ((#{tmp 2308}#
- ($sc-dispatch #{tmp 2306}# '(any . any))))
- (if (if #{tmp 2308}#
- (@apply
- (lambda (#{a 2311}# #{b 2312}#)
- (#{id? 343}# #{a 2311}#))
- #{tmp 2308}#)
- #f)
- (@apply
- (lambda (#{a 2315}# #{b 2316}#)
- (#{req 2293}#
- #{b 2316}#
- (cons #{a 2315}# #{rreq 2303}#)))
- #{tmp 2308}#)
- (let ((#{tmp 2317}#
- ($sc-dispatch #{tmp 2306}# '(any . any))))
- (if (if #{tmp 2317}#
- (@apply
- (lambda (#{a 2320}# #{b 2321}#)
- (eq? (syntax->datum #{a 2320}#)
- #:optional))
- #{tmp 2317}#)
- #f)
- (@apply
- (lambda (#{a 2324}# #{b 2325}#)
- (#{opt 2295}#
- #{b 2325}#
- (reverse #{rreq 2303}#)
- '()))
- #{tmp 2317}#)
- (let ((#{tmp 2326}#
- ($sc-dispatch #{tmp 2306}# '(any . any))))
- (if (if #{tmp 2326}#
- (@apply
- (lambda (#{a 2329}# #{b 2330}#)
- (eq? (syntax->datum #{a 2329}#) #:key))
- #{tmp 2326}#)
- #f)
- (@apply
- (lambda (#{a 2333}# #{b 2334}#)
- (#{key 2297}#
- #{b 2334}#
- (reverse #{rreq 2303}#)
- '()
- '()))
- #{tmp 2326}#)
- (let ((#{tmp 2335}#
- ($sc-dispatch
- #{tmp 2306}#
- '(any any))))
- (if (if #{tmp 2335}#
- (@apply
- (lambda (#{a 2338}# #{b 2339}#)
- (eq? (syntax->datum #{a 2338}#)
- #:rest))
- #{tmp 2335}#)
- #f)
- (@apply
- (lambda (#{a 2342}# #{b 2343}#)
- (#{rest 2299}#
- #{b 2343}#
- (reverse #{rreq 2303}#)
- '()
- '()))
- #{tmp 2335}#)
- (let ((#{tmp 2344}# (list #{tmp 2306}#)))
- (if (if #{tmp 2344}#
- (@apply
- (lambda (#{r 2346}#)
- (#{id? 343}# #{r 2346}#))
- #{tmp 2344}#)
- #f)
- (@apply
- (lambda (#{r 2348}#)
- (#{rest 2299}#
- #{r 2348}#
- (reverse #{rreq 2303}#)
- '()
- '()))
- #{tmp 2344}#)
- (let ((#{else 2350}# #{tmp 2306}#))
- (syntax-violation
- 'lambda*
- "invalid argument list"
- #{orig-args 2290}#
- #{args 2302}#)))))))))))))))))
- (#{opt 2295}#
- (lambda (#{args 2351}# #{req 2352}# #{ropt 2353}#)
- (let ((#{tmp 2357}# #{args 2351}#))
- (let ((#{tmp 2358}# ($sc-dispatch #{tmp 2357}# '())))
- (if #{tmp 2358}#
- (@apply
- (lambda ()
- (#{check 2301}#
- #{req 2352}#
- (reverse #{ropt 2353}#)
- #f
- '()))
- #{tmp 2358}#)
- (let ((#{tmp 2359}#
- ($sc-dispatch #{tmp 2357}# '(any . any))))
- (if (if #{tmp 2359}#
- (@apply
- (lambda (#{a 2362}# #{b 2363}#)
- (#{id? 343}# #{a 2362}#))
- #{tmp 2359}#)
- #f)
- (@apply
- (lambda (#{a 2366}# #{b 2367}#)
- (#{opt 2295}#
- #{b 2367}#
- #{req 2352}#
- (cons (cons #{a 2366}#
- '(#(syntax-object
- #f
- ((top)
- #(ribcage
- #(a b)
- #((top) (top))
- #("i2364" "i2365"))
- #(ribcage () () ())
- #(ribcage
- #(args req ropt)
- #((top) (top) (top))
- #("i2354" "i2355" "i2356"))
- #(ribcage
- (check rest key opt req)
- ((top)
- (top)
- (top)
- (top)
- (top))
- ("i2300"
- "i2298"
- "i2296"
- "i2294"
- "i2292"))
- #(ribcage
- #(orig-args)
- #((top))
- #("i2291"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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))))
- #{ropt 2353}#)))
- #{tmp 2359}#)
- (let ((#{tmp 2368}#
- ($sc-dispatch
- #{tmp 2357}#
- '((any any) . any))))
- (if (if #{tmp 2368}#
- (@apply
- (lambda (#{a 2372}# #{init 2373}# #{b 2374}#)
- (#{id? 343}# #{a 2372}#))
- #{tmp 2368}#)
- #f)
- (@apply
- (lambda (#{a 2378}# #{init 2379}# #{b 2380}#)
- (#{opt 2295}#
- #{b 2380}#
- #{req 2352}#
- (cons (list #{a 2378}# #{init 2379}#)
- #{ropt 2353}#)))
- #{tmp 2368}#)
- (let ((#{tmp 2381}#
- ($sc-dispatch #{tmp 2357}# '(any . any))))
- (if (if #{tmp 2381}#
- (@apply
- (lambda (#{a 2384}# #{b 2385}#)
- (eq? (syntax->datum #{a 2384}#) #:key))
- #{tmp 2381}#)
- #f)
- (@apply
- (lambda (#{a 2388}# #{b 2389}#)
- (#{key 2297}#
- #{b 2389}#
- #{req 2352}#
- (reverse #{ropt 2353}#)
- '()))
- #{tmp 2381}#)
- (let ((#{tmp 2390}#
- ($sc-dispatch
- #{tmp 2357}#
- '(any any))))
- (if (if #{tmp 2390}#
- (@apply
- (lambda (#{a 2393}# #{b 2394}#)
- (eq? (syntax->datum #{a 2393}#)
- #:rest))
- #{tmp 2390}#)
- #f)
- (@apply
- (lambda (#{a 2397}# #{b 2398}#)
- (#{rest 2299}#
- #{b 2398}#
- #{req 2352}#
- (reverse #{ropt 2353}#)
- '()))
- #{tmp 2390}#)
- (let ((#{tmp 2399}# (list #{tmp 2357}#)))
- (if (if #{tmp 2399}#
- (@apply
- (lambda (#{r 2401}#)
- (#{id? 343}# #{r 2401}#))
- #{tmp 2399}#)
- #f)
- (@apply
- (lambda (#{r 2403}#)
- (#{rest 2299}#
- #{r 2403}#
- #{req 2352}#
- (reverse #{ropt 2353}#)
- '()))
- #{tmp 2399}#)
- (let ((#{else 2405}# #{tmp 2357}#))
- (syntax-violation
- 'lambda*
- "invalid optional argument list"
- #{orig-args 2290}#
- #{args 2351}#)))))))))))))))))
- (#{key 2297}#
- (lambda (#{args 2406}#
- #{req 2407}#
- #{opt 2408}#
- #{rkey 2409}#)
- (let ((#{tmp 2414}# #{args 2406}#))
- (let ((#{tmp 2415}# ($sc-dispatch #{tmp 2414}# '())))
- (if #{tmp 2415}#
- (@apply
- (lambda ()
- (#{check 2301}#
- #{req 2407}#
- #{opt 2408}#
- #f
- (cons #f (reverse #{rkey 2409}#))))
- #{tmp 2415}#)
- (let ((#{tmp 2416}#
- ($sc-dispatch #{tmp 2414}# '(any . any))))
- (if (if #{tmp 2416}#
- (@apply
- (lambda (#{a 2419}# #{b 2420}#)
- (#{id? 343}# #{a 2419}#))
- #{tmp 2416}#)
- #f)
- (@apply
- (lambda (#{a 2423}# #{b 2424}#)
- (let ((#{tmp 2426}#
- (symbol->keyword
- (syntax->datum #{a 2423}#))))
- (let ((#{k 2428}# #{tmp 2426}#))
- (#{key 2297}#
- #{b 2424}#
- #{req 2407}#
- #{opt 2408}#
- (cons (cons #{k 2428}#
- (cons #{a 2423}#
- '(#(syntax-object
- #f
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(k)
- #((top))
- #("i2427"))
- #(ribcage
- #(a b)
- #((top) (top))
- #("i2421" "i2422"))
- #(ribcage () () ())
- #(ribcage
- #(args req opt rkey)
- #((top)
- (top)
- (top)
- (top))
- #("i2410"
- "i2411"
- "i2412"
- "i2413"))
- #(ribcage
- (check rest
- key
- opt
- req)
- ((top)
- (top)
- (top)
- (top)
- (top))
- ("i2300"
- "i2298"
- "i2296"
- "i2294"
- "i2292"))
- #(ribcage
- #(orig-args)
- #((top))
- #("i2291"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
-
make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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)))))
- #{rkey 2409}#)))))
- #{tmp 2416}#)
- (let ((#{tmp 2429}#
- ($sc-dispatch
- #{tmp 2414}#
- '((any any) . any))))
- (if (if #{tmp 2429}#
- (@apply
- (lambda (#{a 2433}# #{init 2434}# #{b 2435}#)
- (#{id? 343}# #{a 2433}#))
- #{tmp 2429}#)
- #f)
- (@apply
- (lambda (#{a 2439}# #{init 2440}# #{b 2441}#)
- (let ((#{tmp 2443}#
- (symbol->keyword
- (syntax->datum #{a 2439}#))))
- (let ((#{k 2445}# #{tmp 2443}#))
- (#{key 2297}#
- #{b 2441}#
- #{req 2407}#
- #{opt 2408}#
- (cons (list #{k 2445}#
- #{a 2439}#
- #{init 2440}#)
- #{rkey 2409}#)))))
- #{tmp 2429}#)
- (let ((#{tmp 2446}#
- ($sc-dispatch
- #{tmp 2414}#
- '((any any any) . any))))
- (if (if #{tmp 2446}#
- (@apply
- (lambda (#{a 2451}#
- #{init 2452}#
- #{k 2453}#
- #{b 2454}#)
- (if (#{id? 343}# #{a 2451}#)
- (keyword? (syntax->datum #{k 2453}#))
- #f))
- #{tmp 2446}#)
- #f)
- (@apply
- (lambda (#{a 2461}#
- #{init 2462}#
- #{k 2463}#
- #{b 2464}#)
- (#{key 2297}#
- #{b 2464}#
- #{req 2407}#
- #{opt 2408}#
- (cons (list #{k 2463}#
- #{a 2461}#
- #{init 2462}#)
- #{rkey 2409}#)))
- #{tmp 2446}#)
- (let ((#{tmp 2465}#
- ($sc-dispatch #{tmp 2414}# '(any))))
- (if (if #{tmp 2465}#
- (@apply
- (lambda (#{aok 2467}#)
- (eq? (syntax->datum #{aok 2467}#)
- #:allow-other-keys))
- #{tmp 2465}#)
- #f)
- (@apply
- (lambda (#{aok 2469}#)
- (#{check 2301}#
- #{req 2407}#
- #{opt 2408}#
- #f
- (cons #t (reverse #{rkey 2409}#))))
- #{tmp 2465}#)
- (let ((#{tmp 2470}#
- ($sc-dispatch
- #{tmp 2414}#
- '(any any any))))
- (if (if #{tmp 2470}#
- (@apply
- (lambda (#{aok 2474}#
- #{a 2475}#
- #{b 2476}#)
- (if (eq? (syntax->datum
- #{aok 2474}#)
- #:allow-other-keys)
- (eq? (syntax->datum
- #{a 2475}#)
- #:rest)
- #f))
- #{tmp 2470}#)
- #f)
- (@apply
- (lambda (#{aok 2482}#
- #{a 2483}#
- #{b 2484}#)
- (#{rest 2299}#
- #{b 2484}#
- #{req 2407}#
- #{opt 2408}#
- (cons #t
- (reverse #{rkey 2409}#))))
- #{tmp 2470}#)
- (let ((#{tmp 2485}#
- ($sc-dispatch
- #{tmp 2414}#
- '(any . any))))
- (if (if #{tmp 2485}#
- (@apply
- (lambda (#{aok 2488}#
- #{r 2489}#)
- (if (eq? (syntax->datum
- #{aok 2488}#)
-
#:allow-other-keys)
- (#{id? 343}# #{r 2489}#)
- #f))
- #{tmp 2485}#)
- #f)
- (@apply
- (lambda (#{aok 2494}# #{r 2495}#)
- (#{rest 2299}#
- #{r 2495}#
- #{req 2407}#
- #{opt 2408}#
- (cons #t
- (reverse
- #{rkey 2409}#))))
- #{tmp 2485}#)
- (let ((#{tmp 2496}#
- ($sc-dispatch
- #{tmp 2414}#
- '(any any))))
- (if (if #{tmp 2496}#
- (@apply
- (lambda (#{a 2499}#
- #{b 2500}#)
- (eq? (syntax->datum
- #{a 2499}#)
- #:rest))
- #{tmp 2496}#)
- #f)
- (@apply
- (lambda (#{a 2503}#
- #{b 2504}#)
- (#{rest 2299}#
- #{b 2504}#
- #{req 2407}#
- #{opt 2408}#
- (cons #f
- (reverse
- #{rkey 2409}#))))
- #{tmp 2496}#)
- (let ((#{tmp 2505}#
- (list #{tmp 2414}#)))
- (if (if #{tmp 2505}#
- (@apply
- (lambda (#{r 2507}#)
- (#{id? 343}#
- #{r 2507}#))
- #{tmp 2505}#)
- #f)
- (@apply
- (lambda (#{r 2509}#)
- (#{rest 2299}#
- #{r 2509}#
- #{req 2407}#
- #{opt 2408}#
- (cons #f
- (reverse
- #{rkey
2409}#))))
- #{tmp 2505}#)
- (let ((#{else 2511}#
- #{tmp 2414}#))
- (syntax-violation
- 'lambda*
- "invalid keyword
argument list"
- #{orig-args 2290}#
- #{args
2406}#)))))))))))))))))))))))
- (#{rest 2299}#
- (lambda (#{args 2512}#
- #{req 2513}#
- #{opt 2514}#
- #{kw 2515}#)
- (let ((#{tmp 2520}# #{args 2512}#))
- (let ((#{tmp 2521}# (list #{tmp 2520}#)))
- (if (if #{tmp 2521}#
- (@apply
- (lambda (#{r 2523}#) (#{id? 343}# #{r 2523}#))
- #{tmp 2521}#)
- #f)
- (@apply
- (lambda (#{r 2525}#)
- (#{check 2301}#
- #{req 2513}#
- #{opt 2514}#
- #{r 2525}#
- #{kw 2515}#))
- #{tmp 2521}#)
- (let ((#{else 2527}# #{tmp 2520}#))
- (syntax-violation
- 'lambda*
- "invalid rest argument"
- #{orig-args 2290}#
- #{args 2512}#)))))))
- (#{check 2301}#
- (lambda (#{req 2528}#
- #{opt 2529}#
- #{rest 2530}#
- #{kw 2531}#)
- (if (#{distinct-bound-ids? 405}#
- (append
- #{req 2528}#
- (map car #{opt 2529}#)
- (if #{rest 2530}# (list #{rest 2530}#) '())
- (if (pair? #{kw 2531}#)
- (map cadr (cdr #{kw 2531}#))
- '())))
- (values
- #{req 2528}#
- #{opt 2529}#
- #{rest 2530}#
- #{kw 2531}#)
- (syntax-violation
- 'lambda*
- "duplicate identifier in argument list"
- #{orig-args 2290}#)))))
- (begin (#{req 2293}# #{orig-args 2290}# '())))))
- (#{chi-lambda-case 447}#
- (lambda (#{e 2539}#
- #{r 2540}#
- #{w 2541}#
- #{s 2542}#
- #{mod 2543}#
- #{get-formals 2544}#
- #{clauses 2545}#)
- (letrec*
- ((#{expand-req 2554}#
- (lambda (#{req 2561}#
- #{opt 2562}#
- #{rest 2563}#
- #{kw 2564}#
- #{body 2565}#)
- (begin
- (let ((#{vars 2573}#
- (map #{gen-var 451}# #{req 2561}#))
- (#{labels 2574}#
- (#{gen-labels 358}# #{req 2561}#)))
- (begin
- (let ((#{r* 2577}#
- (#{extend-var-env 333}#
- #{labels 2574}#
- #{vars 2573}#
- #{r 2540}#))
- (#{w* 2578}#
- (#{make-binding-wrap 387}#
- #{req 2561}#
- #{labels 2574}#
- #{w 2541}#)))
- (#{expand-opt 2556}#
- (map syntax->datum #{req 2561}#)
- #{opt 2562}#
- #{rest 2563}#
- #{kw 2564}#
- #{body 2565}#
- (reverse #{vars 2573}#)
- #{r* 2577}#
- #{w* 2578}#
- '()
- '())))))))
- (#{expand-opt 2556}#
- (lambda (#{req 2579}#
- #{opt 2580}#
- #{rest 2581}#
- #{kw 2582}#
- #{body 2583}#
- #{vars 2584}#
- #{r* 2585}#
- #{w* 2586}#
- #{out 2587}#
- #{inits 2588}#)
- (if (pair? #{opt 2580}#)
- (let ((#{tmp 2601}# (car #{opt 2580}#)))
- (let ((#{tmp 2602}#
- ($sc-dispatch #{tmp 2601}# '(any any))))
- (if #{tmp 2602}#
- (@apply
- (lambda (#{id 2605}# #{i 2606}#)
- (begin
- (let ((#{v 2609}# (#{gen-var 451}# #{id 2605}#)))
- (begin
- (let ((#{l 2611}#
- (#{gen-labels 358}#
- (list #{v 2609}#))))
- (begin
- (let ((#{r** 2613}#
- (#{extend-var-env 333}#
- #{l 2611}#
- (list #{v 2609}#)
- #{r* 2585}#)))
- (begin
- (let ((#{w** 2615}#
- (#{make-binding-wrap 387}#
- (list #{id 2605}#)
- #{l 2611}#
- #{w* 2586}#)))
- (#{expand-opt 2556}#
- #{req 2579}#
- (cdr #{opt 2580}#)
- #{rest 2581}#
- #{kw 2582}#
- #{body 2583}#
- (cons #{v 2609}# #{vars 2584}#)
- #{r** 2613}#
- #{w** 2615}#
- (cons (syntax->datum #{id 2605}#)
- #{out 2587}#)
- (cons (#{chi 423}#
- #{i 2606}#
- #{r* 2585}#
- #{w* 2586}#
- #{mod 2543}#)
- #{inits 2588}#)))))))))))
- #{tmp 2602}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2601}#))))
- (if #{rest 2581}#
- (begin
- (let ((#{v 2620}# (#{gen-var 451}# #{rest 2581}#)))
- (begin
- (let ((#{l 2622}#
- (#{gen-labels 358}# (list #{v 2620}#))))
- (begin
- (let ((#{r* 2624}#
- (#{extend-var-env 333}#
- #{l 2622}#
- (list #{v 2620}#)
- #{r* 2585}#)))
- (begin
- (let ((#{w* 2626}#
- (#{make-binding-wrap 387}#
- (list #{rest 2581}#)
- #{l 2622}#
- #{w* 2586}#)))
- (#{expand-kw 2558}#
- #{req 2579}#
- (if (pair? #{out 2587}#)
- (reverse #{out 2587}#)
- #f)
- (syntax->datum #{rest 2581}#)
- (if (pair? #{kw 2582}#)
- (cdr #{kw 2582}#)
- #{kw 2582}#)
- #{body 2583}#
- (cons #{v 2620}# #{vars 2584}#)
- #{r* 2624}#
- #{w* 2626}#
- (if (pair? #{kw 2582}#)
- (car #{kw 2582}#)
- #f)
- '()
- #{inits 2588}#)))))))))
- (#{expand-kw 2558}#
- #{req 2579}#
- (if (pair? #{out 2587}#)
- (reverse #{out 2587}#)
- #f)
- #f
- (if (pair? #{kw 2582}#)
- (cdr #{kw 2582}#)
- #{kw 2582}#)
- #{body 2583}#
- #{vars 2584}#
- #{r* 2585}#
- #{w* 2586}#
- (if (pair? #{kw 2582}#) (car #{kw 2582}#) #f)
- '()
- #{inits 2588}#)))))
- (#{expand-kw 2558}#
- (lambda (#{req 2628}#
- #{opt 2629}#
- #{rest 2630}#
- #{kw 2631}#
- #{body 2632}#
- #{vars 2633}#
- #{r* 2634}#
- #{w* 2635}#
- #{aok 2636}#
- #{out 2637}#
- #{inits 2638}#)
- (if (pair? #{kw 2631}#)
- (let ((#{tmp 2652}# (car #{kw 2631}#)))
- (let ((#{tmp 2653}#
- ($sc-dispatch #{tmp 2652}# '(any any any))))
- (if #{tmp 2653}#
- (@apply
- (lambda (#{k 2657}# #{id 2658}# #{i 2659}#)
- (begin
- (let ((#{v 2662}# (#{gen-var 451}# #{id 2658}#)))
- (begin
- (let ((#{l 2664}#
- (#{gen-labels 358}#
- (list #{v 2662}#))))
- (begin
- (let ((#{r** 2666}#
- (#{extend-var-env 333}#
- #{l 2664}#
- (list #{v 2662}#)
- #{r* 2634}#)))
- (begin
- (let ((#{w** 2668}#
- (#{make-binding-wrap 387}#
- (list #{id 2658}#)
- #{l 2664}#
- #{w* 2635}#)))
- (#{expand-kw 2558}#
- #{req 2628}#
- #{opt 2629}#
- #{rest 2630}#
- (cdr #{kw 2631}#)
- #{body 2632}#
- (cons #{v 2662}# #{vars 2633}#)
- #{r** 2666}#
- #{w** 2668}#
- #{aok 2636}#
- (cons (list (syntax->datum
- #{k 2657}#)
- (syntax->datum
- #{id 2658}#)
- #{v 2662}#)
- #{out 2637}#)
- (cons (#{chi 423}#
- #{i 2659}#
- #{r* 2634}#
- #{w* 2635}#
- #{mod 2543}#)
- #{inits 2638}#)))))))))))
- #{tmp 2653}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2652}#))))
- (#{expand-body 2560}#
- #{req 2628}#
- #{opt 2629}#
- #{rest 2630}#
- (if (begin
- (let ((#{t 2672}# #{aok 2636}#))
- (if #{t 2672}# #{t 2672}# (pair? #{out 2637}#))))
- (cons #{aok 2636}# (reverse #{out 2637}#))
- #f)
- #{body 2632}#
- (reverse #{vars 2633}#)
- #{r* 2634}#
- #{w* 2635}#
- (reverse #{inits 2638}#)
- '()))))
- (#{expand-body 2560}#
- (lambda (#{req 2674}#
- #{opt 2675}#
- #{rest 2676}#
- #{kw 2677}#
- #{body 2678}#
- #{vars 2679}#
- #{r* 2680}#
- #{w* 2681}#
- #{inits 2682}#
- #{meta 2683}#)
- (let ((#{tmp 2694}# #{body 2678}#))
- (let ((#{tmp 2695}#
- ($sc-dispatch #{tmp 2694}# '(any any . each-any))))
- (if (if #{tmp 2695}#
- (@apply
- (lambda (#{docstring 2699}# #{e1 2700}# #{e2 2701}#)
- (string? (syntax->datum #{docstring 2699}#)))
- #{tmp 2695}#)
- #f)
- (@apply
- (lambda (#{docstring 2705}# #{e1 2706}# #{e2 2707}#)
- (#{expand-body 2560}#
- #{req 2674}#
- #{opt 2675}#
- #{rest 2676}#
- #{kw 2677}#
- (cons #{e1 2706}# #{e2 2707}#)
- #{vars 2679}#
- #{r* 2680}#
- #{w* 2681}#
- #{inits 2682}#
- (append
- #{meta 2683}#
- (list (cons 'documentation
- (syntax->datum #{docstring 2705}#))))))
- #{tmp 2695}#)
- (let ((#{tmp 2710}#
- ($sc-dispatch
- #{tmp 2694}#
- '(#(vector #(each (any . any)))
- any
- .
- each-any))))
- (if #{tmp 2710}#
- (@apply
- (lambda (#{k 2715}#
- #{v 2716}#
- #{e1 2717}#
- #{e2 2718}#)
- (#{expand-body 2560}#
- #{req 2674}#
- #{opt 2675}#
- #{rest 2676}#
- #{kw 2677}#
- (cons #{e1 2717}# #{e2 2718}#)
- #{vars 2679}#
- #{r* 2680}#
- #{w* 2681}#
- #{inits 2682}#
- (append
- #{meta 2683}#
- (syntax->datum
- (map cons #{k 2715}# #{v 2716}#)))))
- #{tmp 2710}#)
- (let ((#{tmp 2722}#
- ($sc-dispatch #{tmp 2694}# '(any . each-any))))
- (if #{tmp 2722}#
- (@apply
- (lambda (#{e1 2725}# #{e2 2726}#)
- (values
- #{meta 2683}#
- #{req 2674}#
- #{opt 2675}#
- #{rest 2676}#
- #{kw 2677}#
- #{inits 2682}#
- #{vars 2679}#
- (#{chi-body 431}#
- (cons #{e1 2725}# #{e2 2726}#)
- (#{source-wrap 411}#
- #{e 2539}#
- #{w 2541}#
- #{s 2542}#
- #{mod 2543}#)
- #{r* 2680}#
- #{w* 2681}#
- #{mod 2543}#)))
- #{tmp 2722}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2694}#)))))))))))
- (begin
- (let ((#{tmp 2728}# #{clauses 2545}#))
- (let ((#{tmp 2729}# ($sc-dispatch #{tmp 2728}# '())))
- (if #{tmp 2729}#
- (@apply (lambda () (values '() #f)) #{tmp 2729}#)
- (let ((#{tmp 2730}#
- ($sc-dispatch
- #{tmp 2728}#
- '((any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 2730}#
- (@apply
- (lambda (#{args 2737}#
- #{e1 2738}#
- #{e2 2739}#
- #{args* 2740}#
- #{e1* 2741}#
- #{e2* 2742}#)
- (call-with-values
- (lambda () (#{get-formals 2544}# #{args 2737}#))
- (lambda (#{req 2743}#
- #{opt 2744}#
- #{rest 2745}#
- #{kw 2746}#)
- (call-with-values
- (lambda ()
- (#{expand-req 2554}#
- #{req 2743}#
- #{opt 2744}#
- #{rest 2745}#
- #{kw 2746}#
- (cons #{e1 2738}# #{e2 2739}#)))
- (lambda (#{meta 2752}#
- #{req 2753}#
- #{opt 2754}#
- #{rest 2755}#
- #{kw 2756}#
- #{inits 2757}#
- #{vars 2758}#
- #{body 2759}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 447}#
- #{e 2539}#
- #{r 2540}#
- #{w 2541}#
- #{s 2542}#
- #{mod 2543}#
- #{get-formals 2544}#
- (map (lambda (#{tmp 2770}#
- #{tmp 2769}#
- #{tmp 2768}#)
- (cons #{tmp 2768}#
- (cons #{tmp 2769}#
- #{tmp 2770}#)))
- #{e2* 2742}#
- #{e1* 2741}#
- #{args* 2740}#)))
- (lambda (#{meta* 2772}# #{else* 2773}#)
- (values
- (append #{meta 2752}# #{meta* 2772}#)
- (#{build-lambda-case 289}#
- #{s 2542}#
- #{req 2753}#
- #{opt 2754}#
- #{rest 2755}#
- #{kw 2756}#
- #{inits 2757}#
- #{vars 2758}#
- #{body 2759}#
- #{else* 2773}#)))))))))
- #{tmp 2730}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 2728}#))))))))))
- (#{strip 449}#
- (lambda (#{x 2776}# #{w 2777}#)
- (if (memq 'top (car #{w 2777}#))
- #{x 2776}#
- (letrec*
- ((#{f 2784}#
- (lambda (#{x 2785}#)
- (if (#{syntax-object? 309}# #{x 2785}#)
- (#{strip 449}#
- (#{syntax-object-expression 311}# #{x 2785}#)
- (#{syntax-object-wrap 313}# #{x 2785}#))
- (if (pair? #{x 2785}#)
- (begin
- (let ((#{a 2792}# (#{f 2784}# (car #{x 2785}#)))
- (#{d 2793}# (#{f 2784}# (cdr #{x 2785}#))))
- (if (if (eq? #{a 2792}# (car #{x 2785}#))
- (eq? #{d 2793}# (cdr #{x 2785}#))
- #f)
- #{x 2785}#
- (cons #{a 2792}# #{d 2793}#))))
- (if (vector? #{x 2785}#)
- (begin
- (let ((#{old 2799}# (vector->list #{x 2785}#)))
- (begin
- (let ((#{new 2801}# (map #{f 2784}# #{old 2799}#)))
- (letrec*
- ((#{lp 2805}#
- (lambda (#{l1 2806}# #{l2 2807}#)
- (if (null? #{l1 2806}#)
- #{x 2785}#
- (if (eq? (car #{l1 2806}#)
- (car #{l2 2807}#))
- (#{lp 2805}#
- (cdr #{l1 2806}#)
- (cdr #{l2 2807}#))
- (list->vector #{new 2801}#))))))
- (begin
- (#{lp 2805}# #{old 2799}# #{new 2801}#)))))))
- #{x 2785}#))))))
- (begin (#{f 2784}# #{x 2776}#))))))
- (#{gen-var 451}#
- (lambda (#{id 2809}#)
- (begin
- (let ((#{id 2812}#
- (if (#{syntax-object? 309}# #{id 2809}#)
- (#{syntax-object-expression 311}# #{id 2809}#)
- #{id 2809}#)))
- (gensym
- (string-append (symbol->string #{id 2812}#) " "))))))
- (#{lambda-var-list 453}#
- (lambda (#{vars 2814}#)
- (letrec*
- ((#{lvl 2820}#
- (lambda (#{vars 2821}# #{ls 2822}# #{w 2823}#)
- (if (pair? #{vars 2821}#)
- (#{lvl 2820}#
- (cdr #{vars 2821}#)
- (cons (#{wrap 409}# (car #{vars 2821}#) #{w 2823}# #f)
- #{ls 2822}#)
- #{w 2823}#)
- (if (#{id? 343}# #{vars 2821}#)
- (cons (#{wrap 409}# #{vars 2821}# #{w 2823}# #f)
- #{ls 2822}#)
- (if (null? #{vars 2821}#)
- #{ls 2822}#
- (if (#{syntax-object? 309}# #{vars 2821}#)
- (#{lvl 2820}#
- (#{syntax-object-expression 311}# #{vars 2821}#)
- #{ls 2822}#
- (#{join-wraps 391}#
- #{w 2823}#
- (#{syntax-object-wrap 313}# #{vars 2821}#)))
- (cons #{vars 2821}# #{ls 2822}#))))))))
- (begin (#{lvl 2820}# #{vars 2814}# '() '(())))))))
- (begin
- (lambda (#{x 1161}# #{update 1162}#)
- (vector-set! #{x 1161}# 1 #{update 1162}#))
- (lambda (#{x 1165}# #{update 1166}#)
- (vector-set! #{x 1165}# 2 #{update 1166}#))
- (lambda (#{x 1169}# #{update 1170}#)
- (vector-set! #{x 1169}# 3 #{update 1170}#))
- (lambda (#{x 1250}#)
- (if (vector? #{x 1250}#)
- (if (= (vector-length #{x 1250}#) 4)
- (eq? (vector-ref #{x 1250}# 0) 'ribcage)
- #f)
- #f))
- (begin
- (#{global-extend 339}#
- 'local-syntax
- 'letrec-syntax
- #t)
- (#{global-extend 339}#
- 'local-syntax
- 'let-syntax
- #f)
- (#{global-extend 339}#
- 'core
- 'fluid-let-syntax
- (lambda (#{e 2834}#
- #{r 2835}#
- #{w 2836}#
- #{s 2837}#
- #{mod 2838}#)
- (let ((#{tmp 2844}# #{e 2834}#))
- (let ((#{tmp 2845}#
- ($sc-dispatch
- #{tmp 2844}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 2845}#
- (@apply
- (lambda (#{var 2850}#
- #{val 2851}#
- #{e1 2852}#
- #{e2 2853}#)
- (#{valid-bound-ids? 403}# #{var 2850}#))
- #{tmp 2845}#)
- #f)
- (@apply
- (lambda (#{var 2859}#
- #{val 2860}#
- #{e1 2861}#
- #{e2 2862}#)
- (begin
- (let ((#{names 2864}#
- (map (lambda (#{x 2865}#)
- (#{id-var-name 397}#
- #{x 2865}#
- #{w 2836}#))
- #{var 2859}#)))
- (begin
- (for-each
- (lambda (#{id 2868}# #{n 2869}#)
- (begin
- (let ((#{atom-key 2874}#
- (car (#{lookup 337}#
- #{n 2869}#
- #{r 2835}#
- #{mod 2838}#))))
- (if (memv #{atom-key 2874}#
- '(displaced-lexical))
- (syntax-violation
- 'fluid-let-syntax
- "identifier out of context"
- #{e 2834}#
- (#{source-wrap 411}#
- #{id 2868}#
- #{w 2836}#
- #{s 2837}#
- #{mod 2838}#))))))
- #{var 2859}#
- #{names 2864}#)
- (#{chi-body 431}#
- (cons #{e1 2861}# #{e2 2862}#)
- (#{source-wrap 411}#
- #{e 2834}#
- #{w 2836}#
- #{s 2837}#
- #{mod 2838}#)
- (#{extend-env 331}#
- #{names 2864}#
- (begin
- (let ((#{trans-r 2880}#
- (#{macros-only-env 335}# #{r 2835}#)))
- (map (lambda (#{x 2881}#)
- (cons 'macro
- (#{eval-local-transformer 435}#
- (#{chi 423}#
- #{x 2881}#
- #{trans-r 2880}#
- #{w 2836}#
- #{mod 2838}#)
- #{mod 2838}#)))
- #{val 2860}#)))
- #{r 2835}#)
- #{w 2836}#
- #{mod 2838}#)))))
- #{tmp 2845}#)
- (let ((#{_ 2886}# #{tmp 2844}#))
- (syntax-violation
- 'fluid-let-syntax
- "bad syntax"
- (#{source-wrap 411}#
- #{e 2834}#
- #{w 2836}#
- #{s 2837}#
- #{mod 2838}#))))))))
- (#{global-extend 339}#
- 'core
- 'quote
- (lambda (#{e 2887}#
- #{r 2888}#
- #{w 2889}#
- #{s 2890}#
- #{mod 2891}#)
- (let ((#{tmp 2897}# #{e 2887}#))
- (let ((#{tmp 2898}#
- ($sc-dispatch #{tmp 2897}# '(_ any))))
- (if #{tmp 2898}#
- (@apply
- (lambda (#{e 2900}#)
- (#{build-data 295}#
- #{s 2890}#
- (#{strip 449}# #{e 2900}# #{w 2889}#)))
- #{tmp 2898}#)
- (let ((#{_ 2902}# #{tmp 2897}#))
- (syntax-violation
- 'quote
- "bad syntax"
- (#{source-wrap 411}#
- #{e 2887}#
- #{w 2889}#
- #{s 2890}#
- #{mod 2891}#))))))))
- (#{global-extend 339}#
- 'core
- 'syntax
- (letrec*
- ((#{gen-syntax 2904}#
- (lambda (#{src 2919}#
- #{e 2920}#
- #{r 2921}#
- #{maps 2922}#
- #{ellipsis? 2923}#
- #{mod 2924}#)
- (if (#{id? 343}# #{e 2920}#)
- (begin
- (let ((#{label 2932}#
- (#{id-var-name 397}# #{e 2920}# '(()))))
- (begin
- (let ((#{b 2935}#
- (#{lookup 337}#
- #{label 2932}#
- #{r 2921}#
- #{mod 2924}#)))
- (if (eq? (car #{b 2935}#) 'syntax)
- (call-with-values
- (lambda ()
- (begin
- (let ((#{var.lev 2938}# (cdr #{b 2935}#)))
- (#{gen-ref 2906}#
- #{src 2919}#
- (car #{var.lev 2938}#)
- (cdr #{var.lev 2938}#)
- #{maps 2922}#))))
- (lambda (#{var 2940}# #{maps 2941}#)
- (values
- (list 'ref #{var 2940}#)
- #{maps 2941}#)))
- (if (#{ellipsis? 2923}# #{e 2920}#)
- (syntax-violation
- 'syntax
- "misplaced ellipsis"
- #{src 2919}#)
- (values
- (list 'quote #{e 2920}#)
- #{maps 2922}#)))))))
- (let ((#{tmp 2946}# #{e 2920}#))
- (let ((#{tmp 2947}#
- ($sc-dispatch #{tmp 2946}# '(any any))))
- (if (if #{tmp 2947}#
- (@apply
- (lambda (#{dots 2950}# #{e 2951}#)
- (#{ellipsis? 2923}# #{dots 2950}#))
- #{tmp 2947}#)
- #f)
- (@apply
- (lambda (#{dots 2954}# #{e 2955}#)
- (#{gen-syntax 2904}#
- #{src 2919}#
- #{e 2955}#
- #{r 2921}#
- #{maps 2922}#
- (lambda (#{x 2956}#) #f)
- #{mod 2924}#))
- #{tmp 2947}#)
- (let ((#{tmp 2958}#
- ($sc-dispatch #{tmp 2946}# '(any any . any))))
- (if (if #{tmp 2958}#
- (@apply
- (lambda (#{x 2962}# #{dots 2963}# #{y 2964}#)
- (#{ellipsis? 2923}# #{dots 2963}#))
- #{tmp 2958}#)
- #f)
- (@apply
- (lambda (#{x 2968}# #{dots 2969}# #{y 2970}#)
- (letrec*
- ((#{f 2974}#
- (lambda (#{y 2975}# #{k 2976}#)
- (let ((#{tmp 2983}# #{y 2975}#))
- (let ((#{tmp 2984}#
- ($sc-dispatch
- #{tmp 2983}#
- '(any . any))))
- (if (if #{tmp 2984}#
- (@apply
- (lambda (#{dots 2987}#
- #{y 2988}#)
- (#{ellipsis? 2923}#
- #{dots 2987}#))
- #{tmp 2984}#)
- #f)
- (@apply
- (lambda (#{dots 2991}#
- #{y 2992}#)
- (#{f 2974}#
- #{y 2992}#
- (lambda (#{maps 2993}#)
- (call-with-values
- (lambda ()
- (#{k 2976}#
- (cons '()
- #{maps
2993}#)))
- (lambda (#{x 2995}#
- #{maps 2996}#)
- (if (null? (car #{maps
2996}#))
- (syntax-violation
- 'syntax
- "extra ellipsis"
- #{src 2919}#)
- (values
- (#{gen-mappend
2908}#
- #{x 2995}#
- (car #{maps
2996}#))
- (cdr #{maps
2996}#))))))))
- #{tmp 2984}#)
- (let ((#{_ 3000}# #{tmp 2983}#))
- (call-with-values
- (lambda ()
- (#{gen-syntax 2904}#
- #{src 2919}#
- #{y 2975}#
- #{r 2921}#
- #{maps 2922}#
- #{ellipsis? 2923}#
- #{mod 2924}#))
- (lambda (#{y 3001}#
- #{maps 3002}#)
- (call-with-values
- (lambda ()
- (#{k 2976}#
- #{maps 3002}#))
- (lambda (#{x 3005}#
- #{maps 3006}#)
- (values
- (#{gen-append 2914}#
- #{x 3005}#
- #{y 3001}#)
- #{maps
3006}#))))))))))))
- (begin
- (#{f 2974}#
- #{y 2970}#
- (lambda (#{maps 2977}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2904}#
- #{src 2919}#
- #{x 2968}#
- #{r 2921}#
- (cons '() #{maps 2977}#)
- #{ellipsis? 2923}#
- #{mod 2924}#))
- (lambda (#{x 2979}# #{maps 2980}#)
- (if (null? (car #{maps 2980}#))
- (syntax-violation
- 'syntax
- "extra ellipsis"
- #{src 2919}#)
- (values
- (#{gen-map 2910}#
- #{x 2979}#
- (car #{maps 2980}#))
- (cdr #{maps 2980}#))))))))))
- #{tmp 2958}#)
- (let ((#{tmp 3009}#
- ($sc-dispatch #{tmp 2946}# '(any . any))))
- (if #{tmp 3009}#
- (@apply
- (lambda (#{x 3012}# #{y 3013}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2904}#
- #{src 2919}#
- #{x 3012}#
- #{r 2921}#
- #{maps 2922}#
- #{ellipsis? 2923}#
- #{mod 2924}#))
- (lambda (#{x 3014}# #{maps 3015}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2904}#
- #{src 2919}#
- #{y 3013}#
- #{r 2921}#
- #{maps 3015}#
- #{ellipsis? 2923}#
- #{mod 2924}#))
- (lambda (#{y 3018}# #{maps 3019}#)
- (values
- (#{gen-cons 2912}#
- #{x 3014}#
- #{y 3018}#)
- #{maps 3019}#))))))
- #{tmp 3009}#)
- (let ((#{tmp 3022}#
- ($sc-dispatch
- #{tmp 2946}#
- '#(vector (any . each-any)))))
- (if #{tmp 3022}#
- (@apply
- (lambda (#{e1 3025}# #{e2 3026}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2904}#
- #{src 2919}#
- (cons #{e1 3025}# #{e2 3026}#)
- #{r 2921}#
- #{maps 2922}#
- #{ellipsis? 2923}#
- #{mod 2924}#))
- (lambda (#{e 3028}# #{maps 3029}#)
- (values
- (#{gen-vector 2916}# #{e 3028}#)
- #{maps 3029}#))))
- #{tmp 3022}#)
- (let ((#{_ 3033}# #{tmp 2946}#))
- (values
- (list 'quote #{e 2920}#)
- #{maps 2922}#))))))))))))))
- (#{gen-ref 2906}#
- (lambda (#{src 3035}#
- #{var 3036}#
- #{level 3037}#
- #{maps 3038}#)
- (if (= #{level 3037}# 0)
- (values #{var 3036}# #{maps 3038}#)
- (if (null? #{maps 3038}#)
- (syntax-violation
- 'syntax
- "missing ellipsis"
- #{src 3035}#)
- (call-with-values
- (lambda ()
- (#{gen-ref 2906}#
- #{src 3035}#
- #{var 3036}#
- (#{1-}# #{level 3037}#)
- (cdr #{maps 3038}#)))
- (lambda (#{outer-var 3045}# #{outer-maps 3046}#)
- (begin
- (let ((#{b 3050}#
- (assq #{outer-var 3045}#
- (car #{maps 3038}#))))
- (if #{b 3050}#
- (values (cdr #{b 3050}#) #{maps 3038}#)
- (begin
- (let ((#{inner-var 3052}#
- (#{gen-var 451}# 'tmp)))
- (values
- #{inner-var 3052}#
- (cons (cons (cons #{outer-var 3045}#
- #{inner-var 3052}#)
- (car #{maps 3038}#))
- #{outer-maps 3046}#)))))))))))))
- (#{gen-mappend 2908}#
- (lambda (#{e 3053}# #{map-env 3054}#)
- (list 'apply
- '(primitive append)
- (#{gen-map 2910}# #{e 3053}# #{map-env 3054}#))))
- (#{gen-map 2910}#
- (lambda (#{e 3058}# #{map-env 3059}#)
- (begin
- (let ((#{formals 3064}# (map cdr #{map-env 3059}#))
- (#{actuals 3065}#
- (map (lambda (#{x 3066}#)
- (list 'ref (car #{x 3066}#)))
- #{map-env 3059}#)))
- (if (eq? (car #{e 3058}#) 'ref)
- (car #{actuals 3065}#)
- (if (and-map
- (lambda (#{x 3073}#)
- (if (eq? (car #{x 3073}#) 'ref)
- (memq (car (cdr #{x 3073}#)) #{formals 3064}#)
- #f))
- (cdr #{e 3058}#))
- (cons 'map
- (cons (list 'primitive (car #{e 3058}#))
- (map (begin
- (let ((#{r 3079}#
- (map cons
- #{formals 3064}#
- #{actuals 3065}#)))
- (lambda (#{x 3080}#)
- (cdr (assq (car (cdr #{x 3080}#))
- #{r 3079}#)))))
- (cdr #{e 3058}#))))
- (cons 'map
- (cons (list 'lambda #{formals 3064}# #{e 3058}#)
- #{actuals 3065}#))))))))
- (#{gen-cons 2912}#
- (lambda (#{x 3084}# #{y 3085}#)
- (begin
- (let ((#{atom-key 3090}# (car #{y 3085}#)))
- (if (memv #{atom-key 3090}# '(quote))
- (if (eq? (car #{x 3084}#) 'quote)
- (list 'quote
- (cons (car (cdr #{x 3084}#))
- (car (cdr #{y 3085}#))))
- (if (eq? (car (cdr #{y 3085}#)) '())
- (list 'list #{x 3084}#)
- (list 'cons #{x 3084}# #{y 3085}#)))
- (if (memv #{atom-key 3090}# '(list))
- (cons 'list (cons #{x 3084}# (cdr #{y 3085}#)))
- (list 'cons #{x 3084}# #{y 3085}#)))))))
- (#{gen-append 2914}#
- (lambda (#{x 3099}# #{y 3100}#)
- (if (equal? #{y 3100}# ''())
- #{x 3099}#
- (list 'append #{x 3099}# #{y 3100}#))))
- (#{gen-vector 2916}#
- (lambda (#{x 3104}#)
- (if (eq? (car #{x 3104}#) 'list)
- (cons 'vector (cdr #{x 3104}#))
- (if (eq? (car #{x 3104}#) 'quote)
- (list 'quote
- (list->vector (car (cdr #{x 3104}#))))
- (list 'list->vector #{x 3104}#)))))
- (#{regen 2918}#
- (lambda (#{x 3114}#)
- (begin
- (let ((#{atom-key 3118}# (car #{x 3114}#)))
- (if (memv #{atom-key 3118}# '(ref))
- (#{build-lexical-reference 273}#
- 'value
- #f
- (car (cdr #{x 3114}#))
- (car (cdr #{x 3114}#)))
- (if (memv #{atom-key 3118}# '(primitive))
- (#{build-primref 293}# #f (car (cdr #{x 3114}#)))
- (if (memv #{atom-key 3118}# '(quote))
- (#{build-data 295}# #f (car (cdr #{x 3114}#)))
- (if (memv #{atom-key 3118}# '(lambda))
- (if (list? (car (cdr #{x 3114}#)))
- (#{build-simple-lambda 285}#
- #f
- (car (cdr #{x 3114}#))
- #f
- (car (cdr #{x 3114}#))
- '()
- (#{regen 2918}# (car (cdr (cdr #{x 3114}#)))))
- (error "how did we get here" #{x 3114}#))
- (#{build-primcall 291}#
- #f
- (car #{x 3114}#)
- (map #{regen 2918}# (cdr #{x 3114}#))))))))))))
- (begin
- (lambda (#{e 3129}#
- #{r 3130}#
- #{w 3131}#
- #{s 3132}#
- #{mod 3133}#)
- (begin
- (let ((#{e 3140}#
- (#{source-wrap 411}#
- #{e 3129}#
- #{w 3131}#
- #{s 3132}#
- #{mod 3133}#)))
- (let ((#{tmp 3141}# #{e 3140}#))
- (let ((#{tmp 3142}#
- ($sc-dispatch #{tmp 3141}# '(_ any))))
- (if #{tmp 3142}#
- (@apply
- (lambda (#{x 3144}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 2904}#
- #{e 3140}#
- #{x 3144}#
- #{r 3130}#
- '()
- #{ellipsis? 439}#
- #{mod 3133}#))
- (lambda (#{e 3145}# #{maps 3146}#)
- (#{regen 2918}# #{e 3145}#))))
- #{tmp 3142}#)
- (let ((#{_ 3150}# #{tmp 3141}#))
- (syntax-violation
- 'syntax
- "bad `syntax' form"
- #{e 3140}#)))))))))))
- (#{global-extend 339}#
- 'core
- 'lambda
- (lambda (#{e 3151}#
- #{r 3152}#
- #{w 3153}#
- #{s 3154}#
- #{mod 3155}#)
- (let ((#{tmp 3161}# #{e 3151}#))
- (let ((#{tmp 3162}#
- ($sc-dispatch
- #{tmp 3161}#
- '(_ any any . each-any))))
- (if #{tmp 3162}#
- (@apply
- (lambda (#{args 3166}# #{e1 3167}# #{e2 3168}#)
- (call-with-values
- (lambda ()
- (#{lambda-formals 441}# #{args 3166}#))
- (lambda (#{req 3169}#
- #{opt 3170}#
- #{rest 3171}#
- #{kw 3172}#)
- (letrec*
- ((#{lp 3180}#
- (lambda (#{body 3181}# #{meta 3182}#)
- (let ((#{tmp 3184}# #{body 3181}#))
- (let ((#{tmp 3185}#
- ($sc-dispatch
- #{tmp 3184}#
- '(any any . each-any))))
- (if (if #{tmp 3185}#
- (@apply
- (lambda (#{docstring 3189}#
- #{e1 3190}#
- #{e2 3191}#)
- (string?
- (syntax->datum
- #{docstring 3189}#)))
- #{tmp 3185}#)
- #f)
- (@apply
- (lambda (#{docstring 3195}#
- #{e1 3196}#
- #{e2 3197}#)
- (#{lp 3180}#
- (cons #{e1 3196}# #{e2 3197}#)
- (append
- #{meta 3182}#
- (list (cons 'documentation
- (syntax->datum
- #{docstring
3195}#))))))
- #{tmp 3185}#)
- (let ((#{tmp 3200}#
- ($sc-dispatch
- #{tmp 3184}#
- '(#(vector #(each (any . any)))
- any
- .
- each-any))))
- (if #{tmp 3200}#
- (@apply
- (lambda (#{k 3205}#
- #{v 3206}#
- #{e1 3207}#
- #{e2 3208}#)
- (#{lp 3180}#
- (cons #{e1 3207}# #{e2 3208}#)
- (append
- #{meta 3182}#
- (syntax->datum
- (map cons
- #{k 3205}#
- #{v 3206}#)))))
- #{tmp 3200}#)
- (let ((#{_ 3213}# #{tmp 3184}#))
- (#{chi-simple-lambda 443}#
- #{e 3151}#
- #{r 3152}#
- #{w 3153}#
- #{s 3154}#
- #{mod 3155}#
- #{req 3169}#
- #{rest 3171}#
- #{meta 3182}#
- #{body 3181}#))))))))))
- (begin
- (#{lp 3180}#
- (cons #{e1 3167}# #{e2 3168}#)
- '()))))))
- #{tmp 3162}#)
- (let ((#{_ 3215}# #{tmp 3161}#))
- (syntax-violation
- 'lambda
- "bad lambda"
- #{e 3151}#)))))))
- (#{global-extend 339}#
- 'core
- 'lambda*
- (lambda (#{e 3216}#
- #{r 3217}#
- #{w 3218}#
- #{s 3219}#
- #{mod 3220}#)
- (let ((#{tmp 3226}# #{e 3216}#))
- (let ((#{tmp 3227}#
- ($sc-dispatch
- #{tmp 3226}#
- '(_ any any . each-any))))
- (if #{tmp 3227}#
- (@apply
- (lambda (#{args 3231}# #{e1 3232}# #{e2 3233}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 447}#
- #{e 3216}#
- #{r 3217}#
- #{w 3218}#
- #{s 3219}#
- #{mod 3220}#
- #{lambda*-formals 445}#
- (list (cons #{args 3231}#
- (cons #{e1 3232}# #{e2 3233}#)))))
- (lambda (#{meta 3235}# #{lcase 3236}#)
- (#{build-case-lambda 287}#
- #{s 3219}#
- #{meta 3235}#
- #{lcase 3236}#))))
- #{tmp 3227}#)
- (let ((#{_ 3240}# #{tmp 3226}#))
- (syntax-violation
- 'lambda
- "bad lambda*"
- #{e 3216}#)))))))
- (#{global-extend 339}#
- 'core
- 'case-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)
- .
- #(each (any any . each-any))))))
- (if #{tmp 3252}#
- (@apply
- (lambda (#{args 3259}#
- #{e1 3260}#
- #{e2 3261}#
- #{args* 3262}#
- #{e1* 3263}#
- #{e2* 3264}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 447}#
- #{e 3241}#
- #{r 3242}#
- #{w 3243}#
- #{s 3244}#
- #{mod 3245}#
- #{lambda-formals 441}#
- (cons (cons #{args 3259}#
- (cons #{e1 3260}# #{e2 3261}#))
- (map (lambda (#{tmp 3268}#
- #{tmp 3267}#
- #{tmp 3266}#)
- (cons #{tmp 3266}#
- (cons #{tmp 3267}# #{tmp 3268}#)))
- #{e2* 3264}#
- #{e1* 3263}#
- #{args* 3262}#))))
- (lambda (#{meta 3270}# #{lcase 3271}#)
- (#{build-case-lambda 287}#
- #{s 3244}#
- #{meta 3270}#
- #{lcase 3271}#))))
- #{tmp 3252}#)
- (let ((#{_ 3275}# #{tmp 3251}#))
- (syntax-violation
- 'case-lambda
- "bad case-lambda"
- #{e 3241}#)))))))
- (#{global-extend 339}#
- 'core
- 'case-lambda*
- (lambda (#{e 3276}#
- #{r 3277}#
- #{w 3278}#
- #{s 3279}#
- #{mod 3280}#)
- (let ((#{tmp 3286}# #{e 3276}#))
- (let ((#{tmp 3287}#
- ($sc-dispatch
- #{tmp 3286}#
- '(_ (any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 3287}#
- (@apply
- (lambda (#{args 3294}#
- #{e1 3295}#
- #{e2 3296}#
- #{args* 3297}#
- #{e1* 3298}#
- #{e2* 3299}#)
- (call-with-values
- (lambda ()
- (#{chi-lambda-case 447}#
- #{e 3276}#
- #{r 3277}#
- #{w 3278}#
- #{s 3279}#
- #{mod 3280}#
- #{lambda*-formals 445}#
- (cons (cons #{args 3294}#
- (cons #{e1 3295}# #{e2 3296}#))
- (map (lambda (#{tmp 3303}#
- #{tmp 3302}#
- #{tmp 3301}#)
- (cons #{tmp 3301}#
- (cons #{tmp 3302}# #{tmp 3303}#)))
- #{e2* 3299}#
- #{e1* 3298}#
- #{args* 3297}#))))
- (lambda (#{meta 3305}# #{lcase 3306}#)
- (#{build-case-lambda 287}#
- #{s 3279}#
- #{meta 3305}#
- #{lcase 3306}#))))
- #{tmp 3287}#)
- (let ((#{_ 3310}# #{tmp 3286}#))
- (syntax-violation
- 'case-lambda
- "bad case-lambda*"
- #{e 3276}#)))))))
- (#{global-extend 339}#
- 'core
- 'let
- (letrec*
- ((#{chi-let 3312}#
- (lambda (#{e 3313}#
- #{r 3314}#
- #{w 3315}#
- #{s 3316}#
- #{mod 3317}#
- #{constructor 3318}#
- #{ids 3319}#
- #{vals 3320}#
- #{exps 3321}#)
- (if (not (#{valid-bound-ids? 403}# #{ids 3319}#))
- (syntax-violation
- 'let
- "duplicate bound variable"
- #{e 3313}#)
- (begin
- (let ((#{labels 3333}#
- (#{gen-labels 358}# #{ids 3319}#))
- (#{new-vars 3334}#
- (map #{gen-var 451}# #{ids 3319}#)))
- (begin
- (let ((#{nw 3337}#
- (#{make-binding-wrap 387}#
- #{ids 3319}#
- #{labels 3333}#
- #{w 3315}#))
- (#{nr 3338}#
- (#{extend-var-env 333}#
- #{labels 3333}#
- #{new-vars 3334}#
- #{r 3314}#)))
- (#{constructor 3318}#
- #{s 3316}#
- (map syntax->datum #{ids 3319}#)
- #{new-vars 3334}#
- (map (lambda (#{x 3339}#)
- (#{chi 423}#
- #{x 3339}#
- #{r 3314}#
- #{w 3315}#
- #{mod 3317}#))
- #{vals 3320}#)
- (#{chi-body 431}#
- #{exps 3321}#
- (#{source-wrap 411}#
- #{e 3313}#
- #{nw 3337}#
- #{s 3316}#
- #{mod 3317}#)
- #{nr 3338}#
- #{nw 3337}#
- #{mod 3317}#))))))))))
- (begin
- (lambda (#{e 3341}#
- #{r 3342}#
- #{w 3343}#
- #{s 3344}#
- #{mod 3345}#)
- (let ((#{tmp 3351}# #{e 3341}#))
- (let ((#{tmp 3352}#
- ($sc-dispatch
- #{tmp 3351}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 3352}#
- (@apply
- (lambda (#{id 3357}#
- #{val 3358}#
- #{e1 3359}#
- #{e2 3360}#)
- (and-map #{id? 343}# #{id 3357}#))
- #{tmp 3352}#)
- #f)
- (@apply
- (lambda (#{id 3366}#
- #{val 3367}#
- #{e1 3368}#
- #{e2 3369}#)
- (#{chi-let 3312}#
- #{e 3341}#
- #{r 3342}#
- #{w 3343}#
- #{s 3344}#
- #{mod 3345}#
- #{build-let 299}#
- #{id 3366}#
- #{val 3367}#
- (cons #{e1 3368}# #{e2 3369}#)))
- #{tmp 3352}#)
- (let ((#{tmp 3373}#
- ($sc-dispatch
- #{tmp 3351}#
- '(_ any #(each (any any)) any . each-any))))
- (if (if #{tmp 3373}#
- (@apply
- (lambda (#{f 3379}#
- #{id 3380}#
- #{val 3381}#
- #{e1 3382}#
- #{e2 3383}#)
- (if (#{id? 343}# #{f 3379}#)
- (and-map #{id? 343}# #{id 3380}#)
- #f))
- #{tmp 3373}#)
- #f)
- (@apply
- (lambda (#{f 3392}#
- #{id 3393}#
- #{val 3394}#
- #{e1 3395}#
- #{e2 3396}#)
- (#{chi-let 3312}#
- #{e 3341}#
- #{r 3342}#
- #{w 3343}#
- #{s 3344}#
- #{mod 3345}#
- #{build-named-let 301}#
- (cons #{f 3392}# #{id 3393}#)
- #{val 3394}#
- (cons #{e1 3395}# #{e2 3396}#)))
- #{tmp 3373}#)
- (let ((#{_ 3401}# #{tmp 3351}#))
- (syntax-violation
- 'let
- "bad let"
- (#{source-wrap 411}#
- #{e 3341}#
- #{w 3343}#
- #{s 3344}#
- #{mod 3345}#))))))))))))
- (#{global-extend 339}#
- 'core
- 'letrec
- (lambda (#{e 3402}#
- #{r 3403}#
- #{w 3404}#
- #{s 3405}#
- #{mod 3406}#)
- (let ((#{tmp 3412}# #{e 3402}#))
- (let ((#{tmp 3413}#
- ($sc-dispatch
- #{tmp 3412}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 3413}#
- (@apply
- (lambda (#{id 3418}#
- #{val 3419}#
- #{e1 3420}#
- #{e2 3421}#)
- (and-map #{id? 343}# #{id 3418}#))
- #{tmp 3413}#)
- #f)
- (@apply
- (lambda (#{id 3427}#
- #{val 3428}#
- #{e1 3429}#
- #{e2 3430}#)
- (begin
- (let ((#{ids 3432}# #{id 3427}#))
- (if (not (#{valid-bound-ids? 403}# #{ids 3432}#))
- (syntax-violation
- 'letrec
- "duplicate bound variable"
- #{e 3402}#)
- (begin
- (let ((#{labels 3436}#
- (#{gen-labels 358}# #{ids 3432}#))
- (#{new-vars 3437}#
- (map #{gen-var 451}# #{ids 3432}#)))
- (begin
- (let ((#{w 3440}#
- (#{make-binding-wrap 387}#
- #{ids 3432}#
- #{labels 3436}#
- #{w 3404}#))
- (#{r 3441}#
- (#{extend-var-env 333}#
- #{labels 3436}#
- #{new-vars 3437}#
- #{r 3403}#)))
- (#{build-letrec 303}#
- #{s 3405}#
- #f
- (map syntax->datum #{ids 3432}#)
- #{new-vars 3437}#
- (map (lambda (#{x 3442}#)
- (#{chi 423}#
- #{x 3442}#
- #{r 3441}#
- #{w 3440}#
- #{mod 3406}#))
- #{val 3428}#)
- (#{chi-body 431}#
- (cons #{e1 3429}# #{e2 3430}#)
- (#{source-wrap 411}#
- #{e 3402}#
- #{w 3440}#
- #{s 3405}#
- #{mod 3406}#)
- #{r 3441}#
- #{w 3440}#
- #{mod 3406}#))))))))))
- #{tmp 3413}#)
- (let ((#{_ 3447}# #{tmp 3412}#))
- (syntax-violation
- 'letrec
- "bad letrec"
- (#{source-wrap 411}#
- #{e 3402}#
- #{w 3404}#
- #{s 3405}#
- #{mod 3406}#))))))))
- (#{global-extend 339}#
- 'core
- 'letrec*
- (lambda (#{e 3448}#
- #{r 3449}#
- #{w 3450}#
- #{s 3451}#
- #{mod 3452}#)
- (let ((#{tmp 3458}# #{e 3448}#))
- (let ((#{tmp 3459}#
- ($sc-dispatch
- #{tmp 3458}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 3459}#
- (@apply
- (lambda (#{id 3464}#
- #{val 3465}#
- #{e1 3466}#
- #{e2 3467}#)
- (and-map #{id? 343}# #{id 3464}#))
- #{tmp 3459}#)
- #f)
- (@apply
- (lambda (#{id 3473}#
- #{val 3474}#
- #{e1 3475}#
- #{e2 3476}#)
- (begin
- (let ((#{ids 3478}# #{id 3473}#))
- (if (not (#{valid-bound-ids? 403}# #{ids 3478}#))
- (syntax-violation
- 'letrec*
- "duplicate bound variable"
- #{e 3448}#)
- (begin
- (let ((#{labels 3482}#
- (#{gen-labels 358}# #{ids 3478}#))
- (#{new-vars 3483}#
- (map #{gen-var 451}# #{ids 3478}#)))
- (begin
- (let ((#{w 3486}#
- (#{make-binding-wrap 387}#
- #{ids 3478}#
- #{labels 3482}#
- #{w 3450}#))
- (#{r 3487}#
- (#{extend-var-env 333}#
- #{labels 3482}#
- #{new-vars 3483}#
- #{r 3449}#)))
- (#{build-letrec 303}#
- #{s 3451}#
- #t
- (map syntax->datum #{ids 3478}#)
- #{new-vars 3483}#
- (map (lambda (#{x 3488}#)
- (#{chi 423}#
- #{x 3488}#
- #{r 3487}#
- #{w 3486}#
- #{mod 3452}#))
- #{val 3474}#)
- (#{chi-body 431}#
- (cons #{e1 3475}# #{e2 3476}#)
- (#{source-wrap 411}#
- #{e 3448}#
- #{w 3486}#
- #{s 3451}#
- #{mod 3452}#)
- #{r 3487}#
- #{w 3486}#
- #{mod 3452}#))))))))))
- #{tmp 3459}#)
- (let ((#{_ 3493}# #{tmp 3458}#))
- (syntax-violation
- 'letrec*
- "bad letrec*"
- (#{source-wrap 411}#
- #{e 3448}#
- #{w 3450}#
- #{s 3451}#
- #{mod 3452}#))))))))
- (#{global-extend 339}#
- 'core
- 'set!
- (lambda (#{e 3494}#
- #{r 3495}#
- #{w 3496}#
- #{s 3497}#
- #{mod 3498}#)
- (let ((#{tmp 3504}# #{e 3494}#))
- (let ((#{tmp 3505}#
- ($sc-dispatch #{tmp 3504}# '(_ any any))))
- (if (if #{tmp 3505}#
- (@apply
- (lambda (#{id 3508}# #{val 3509}#)
- (#{id? 343}# #{id 3508}#))
- #{tmp 3505}#)
- #f)
- (@apply
- (lambda (#{id 3512}# #{val 3513}#)
- (begin
- (let ((#{n 3516}#
- (#{id-var-name 397}# #{id 3512}# #{w 3496}#))
- (#{id-mod 3517}#
- (if (#{syntax-object? 309}# #{id 3512}#)
- (#{syntax-object-module 315}# #{id 3512}#)
- #{mod 3498}#)))
- (begin
- (let ((#{b 3519}#
- (#{lookup 337}#
- #{n 3516}#
- #{r 3495}#
- #{id-mod 3517}#)))
- (begin
- (let ((#{atom-key 3522}# (car #{b 3519}#)))
- (if (memv #{atom-key 3522}# '(lexical))
- (#{build-lexical-assignment 275}#
- #{s 3497}#
- (syntax->datum #{id 3512}#)
- (cdr #{b 3519}#)
- (#{chi 423}#
- #{val 3513}#
- #{r 3495}#
- #{w 3496}#
- #{mod 3498}#))
- (if (memv #{atom-key 3522}# '(global))
- (#{build-global-assignment 281}#
- #{s 3497}#
- #{n 3516}#
- (#{chi 423}#
- #{val 3513}#
- #{r 3495}#
- #{w 3496}#
- #{mod 3498}#)
- #{id-mod 3517}#)
- (if (memv #{atom-key 3522}# '(macro))
- (begin
- (let ((#{p 3529}# (cdr #{b 3519}#)))
- (if (procedure-property
- #{p 3529}#
- 'variable-transformer)
- (#{chi 423}#
- (#{chi-macro 429}#
- #{p 3529}#
- #{e 3494}#
- #{r 3495}#
- #{w 3496}#
- #{s 3497}#
- #f
- #{mod 3498}#)
- #{r 3495}#
- '(())
- #{mod 3498}#)
- (syntax-violation
- 'set!
- "not a variable transformer"
- (#{wrap 409}#
- #{e 3494}#
- #{w 3496}#
- #{mod 3498}#)
- (#{wrap 409}#
- #{id 3512}#
- #{w 3496}#
- #{id-mod 3517}#)))))
- (if (memv #{atom-key 3522}#
- '(displaced-lexical))
- (syntax-violation
- 'set!
- "identifier out of context"
- (#{wrap 409}#
- #{id 3512}#
- #{w 3496}#
- #{mod 3498}#))
- (syntax-violation
- 'set!
- "bad set!"
- (#{source-wrap 411}#
- #{e 3494}#
- #{w 3496}#
- #{s 3497}#
- #{mod 3498}#)))))))))))))
- #{tmp 3505}#)
- (let ((#{tmp 3534}#
- ($sc-dispatch
- #{tmp 3504}#
- '(_ (any . each-any) any))))
- (if #{tmp 3534}#
- (@apply
- (lambda (#{head 3538}# #{tail 3539}# #{val 3540}#)
- (call-with-values
- (lambda ()
- (#{syntax-type 421}#
- #{head 3538}#
- #{r 3495}#
- '(())
- #f
- #f
- #{mod 3498}#
- #t))
- (lambda (#{type 3543}#
- #{value 3544}#
- #{ee 3545}#
- #{ww 3546}#
- #{ss 3547}#
- #{modmod 3548}#)
- (if (memv #{type 3543}# '(module-ref))
- (begin
- (let ((#{val 3557}#
- (#{chi 423}#
- #{val 3540}#
- #{r 3495}#
- #{w 3496}#
- #{mod 3498}#)))
- (call-with-values
- (lambda ()
- (#{value 3544}#
- (cons #{head 3538}# #{tail 3539}#)
- #{r 3495}#
- #{w 3496}#))
- (lambda (#{e 3559}#
- #{r 3560}#
- #{w 3561}#
- #{s* 3562}#
- #{mod 3563}#)
- (let ((#{tmp 3569}# #{e 3559}#))
- (let ((#{tmp 3570}#
- (list #{tmp 3569}#)))
- (if (if #{tmp 3570}#
- (@apply
- (lambda (#{e 3572}#)
- (#{id? 343}# #{e 3572}#))
- #{tmp 3570}#)
- #f)
- (@apply
- (lambda (#{e 3574}#)
- (#{build-global-assignment
281}#
- #{s 3497}#
- (syntax->datum #{e 3574}#)
- #{val 3557}#
- #{mod 3563}#))
- #{tmp 3570}#)
- (syntax-violation
- #f
- "source expression failed to
match any pattern"
- #{tmp 3569}#))))))))
- (#{build-call 267}#
- #{s 3497}#
- (#{chi 423}#
- (list '#(syntax-object
- setter
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(type value ee ww ss modmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i3549"
- "i3550"
- "i3551"
- "i3552"
- "i3553"
- "i3554"))
- #(ribcage
- #(head tail val)
- #((top) (top) (top))
- #("i3535" "i3536" "i3537"))
- #(ribcage () () ())
- #(ribcage
- #(e r w s mod)
- #((top) (top) (top) (top) (top))
- #("i3499"
- "i3500"
- "i3501"
- "i3502"
- "i3503"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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))
- #{head 3538}#)
- #{r 3495}#
- #{w 3496}#
- #{mod 3498}#)
- (map (lambda (#{e 3576}#)
- (#{chi 423}#
- #{e 3576}#
- #{r 3495}#
- #{w 3496}#
- #{mod 3498}#))
- (append
- #{tail 3539}#
- (list #{val 3540}#))))))))
- #{tmp 3534}#)
- (let ((#{_ 3580}# #{tmp 3504}#))
- (syntax-violation
- 'set!
- "bad set!"
- (#{source-wrap 411}#
- #{e 3494}#
- #{w 3496}#
- #{s 3497}#
- #{mod 3498}#))))))))))
- (#{global-extend 339}#
- 'module-ref
- '@
- (lambda (#{e 3581}# #{r 3582}# #{w 3583}#)
- (let ((#{tmp 3587}# #{e 3581}#))
- (let ((#{tmp 3588}#
- ($sc-dispatch #{tmp 3587}# '(_ each-any any))))
- (if (if #{tmp 3588}#
- (@apply
- (lambda (#{mod 3591}# #{id 3592}#)
- (if (and-map #{id? 343}# #{mod 3591}#)
- (#{id? 343}# #{id 3592}#)
- #f))
- #{tmp 3588}#)
- #f)
- (@apply
- (lambda (#{mod 3598}# #{id 3599}#)
- (values
- (syntax->datum #{id 3599}#)
- #{r 3582}#
- #{w 3583}#
- #f
- (syntax->datum
- (cons '#(syntax-object
- public
- ((top)
- #(ribcage
- #(mod id)
- #((top) (top))
- #("i3596" "i3597"))
- #(ribcage () () ())
- #(ribcage
- #(e r w)
- #((top) (top) (top))
- #("i3584" "i3585" "i3586"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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))
- #{mod 3598}#))))
- #{tmp 3588}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3587}#))))))
- (#{global-extend 339}#
- 'module-ref
- '@@
- (lambda (#{e 3601}# #{r 3602}# #{w 3603}#)
- (letrec*
- ((#{remodulate 3608}#
- (lambda (#{x 3609}# #{mod 3610}#)
- (if (pair? #{x 3609}#)
- (cons (#{remodulate 3608}#
- (car #{x 3609}#)
- #{mod 3610}#)
- (#{remodulate 3608}#
- (cdr #{x 3609}#)
- #{mod 3610}#))
- (if (#{syntax-object? 309}# #{x 3609}#)
- (#{make-syntax-object 307}#
- (#{remodulate 3608}#
- (#{syntax-object-expression 311}# #{x 3609}#)
- #{mod 3610}#)
- (#{syntax-object-wrap 313}# #{x 3609}#)
- #{mod 3610}#)
- (if (vector? #{x 3609}#)
- (begin
- (let ((#{n 3621}# (vector-length #{x 3609}#)))
- (begin
- (let ((#{v 3623}# (make-vector #{n 3621}#)))
- (letrec*
- ((#{loop 3626}#
- (lambda (#{i 3627}#)
- (if (= #{i 3627}# #{n 3621}#)
- (begin (if #f #f) #{v 3623}#)
- (begin
- (vector-set!
- #{v 3623}#
- #{i 3627}#
- (#{remodulate 3608}#
- (vector-ref
- #{x 3609}#
- #{i 3627}#)
- #{mod 3610}#))
- (#{loop 3626}#
- (#{1+}# #{i 3627}#)))))))
- (begin (#{loop 3626}# 0)))))))
- #{x 3609}#))))))
- (begin
- (let ((#{tmp 3633}# #{e 3601}#))
- (let ((#{tmp 3634}#
- ($sc-dispatch #{tmp 3633}# '(_ each-any any))))
- (if (if #{tmp 3634}#
- (@apply
- (lambda (#{mod 3637}# #{exp 3638}#)
- (and-map #{id? 343}# #{mod 3637}#))
- #{tmp 3634}#)
- #f)
- (@apply
- (lambda (#{mod 3642}# #{exp 3643}#)
- (begin
- (let ((#{mod 3645}#
- (syntax->datum
- (cons '#(syntax-object
- private
- ((top)
- #(ribcage
- #(mod exp)
- #((top) (top))
- #("i3640" "i3641"))
- #(ribcage
- (remodulate)
- ((top))
- ("i3607"))
- #(ribcage
- #(e r w)
- #((top) (top) (top))
- #("i3604" "i3605" "i3606"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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))
- #{mod 3642}#))))
- (values
- (#{remodulate 3608}# #{exp 3643}# #{mod 3645}#)
- #{r 3602}#
- #{w 3603}#
- (#{source-annotation 324}# #{exp 3643}#)
- #{mod 3645}#))))
- #{tmp 3634}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3633}#))))))))
- (#{global-extend 339}#
- 'core
- 'if
- (lambda (#{e 3647}#
- #{r 3648}#
- #{w 3649}#
- #{s 3650}#
- #{mod 3651}#)
- (let ((#{tmp 3657}# #{e 3647}#))
- (let ((#{tmp 3658}#
- ($sc-dispatch #{tmp 3657}# '(_ any any))))
- (if #{tmp 3658}#
- (@apply
- (lambda (#{test 3661}# #{then 3662}#)
- (#{build-conditional 269}#
- #{s 3650}#
- (#{chi 423}#
- #{test 3661}#
- #{r 3648}#
- #{w 3649}#
- #{mod 3651}#)
- (#{chi 423}#
- #{then 3662}#
- #{r 3648}#
- #{w 3649}#
- #{mod 3651}#)
- (#{build-void 265}# #f)))
- #{tmp 3658}#)
- (let ((#{tmp 3664}#
- ($sc-dispatch #{tmp 3657}# '(_ any any any))))
- (if #{tmp 3664}#
- (@apply
- (lambda (#{test 3668}# #{then 3669}# #{else 3670}#)
- (#{build-conditional 269}#
- #{s 3650}#
- (#{chi 423}#
- #{test 3668}#
- #{r 3648}#
- #{w 3649}#
- #{mod 3651}#)
- (#{chi 423}#
- #{then 3669}#
- #{r 3648}#
- #{w 3649}#
- #{mod 3651}#)
- (#{chi 423}#
- #{else 3670}#
- #{r 3648}#
- #{w 3649}#
- #{mod 3651}#)))
- #{tmp 3664}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3657}#))))))))
- (#{global-extend 339}#
- 'core
- 'with-fluids
- (lambda (#{e 3671}#
- #{r 3672}#
- #{w 3673}#
- #{s 3674}#
- #{mod 3675}#)
- (let ((#{tmp 3681}# #{e 3671}#))
- (let ((#{tmp 3682}#
- ($sc-dispatch
- #{tmp 3681}#
- '(_ #(each (any any)) any . each-any))))
- (if #{tmp 3682}#
- (@apply
- (lambda (#{fluid 3687}#
- #{val 3688}#
- #{b 3689}#
- #{b* 3690}#)
- (#{build-dynlet 271}#
- #{s 3674}#
- (map (lambda (#{x 3691}#)
- (#{chi 423}#
- #{x 3691}#
- #{r 3672}#
- #{w 3673}#
- #{mod 3675}#))
- #{fluid 3687}#)
- (map (lambda (#{x 3694}#)
- (#{chi 423}#
- #{x 3694}#
- #{r 3672}#
- #{w 3673}#
- #{mod 3675}#))
- #{val 3688}#)
- (#{chi-body 431}#
- (cons #{b 3689}# #{b* 3690}#)
- (#{source-wrap 411}#
- #{e 3671}#
- #{w 3673}#
- #{s 3674}#
- #{mod 3675}#)
- #{r 3672}#
- #{w 3673}#
- #{mod 3675}#)))
- #{tmp 3682}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3681}#))))))
- (#{global-extend 339}# 'begin 'begin '())
- (#{global-extend 339}# 'define 'define '())
- (#{global-extend 339}#
- 'define-syntax
- 'define-syntax
- '())
- (#{global-extend 339}# 'eval-when 'eval-when '())
- (#{global-extend 339}#
- 'core
- 'syntax-case
- (letrec*
- ((#{convert-pattern 3699}#
- (lambda (#{pattern 3706}# #{keys 3707}#)
- (letrec*
- ((#{cvt* 3711}#
- (lambda (#{p* 3714}# #{n 3715}# #{ids 3716}#)
- (if (null? #{p* 3714}#)
- (values '() #{ids 3716}#)
- (call-with-values
- (lambda ()
- (#{cvt* 3711}#
- (cdr #{p* 3714}#)
- #{n 3715}#
- #{ids 3716}#))
- (lambda (#{y 3720}# #{ids 3721}#)
- (call-with-values
- (lambda ()
- (#{cvt 3713}#
- (car #{p* 3714}#)
- #{n 3715}#
- #{ids 3721}#))
- (lambda (#{x 3724}# #{ids 3725}#)
- (values
- (cons #{x 3724}# #{y 3720}#)
- #{ids 3725}#))))))))
- (#{cvt 3713}#
- (lambda (#{p 3728}# #{n 3729}# #{ids 3730}#)
- (if (#{id? 343}# #{p 3728}#)
- (if (#{bound-id-member? 407}#
- #{p 3728}#
- #{keys 3707}#)
- (values
- (vector 'free-id #{p 3728}#)
- #{ids 3730}#)
+ ((#{f 1748}#
+ (lambda (#{when-list 1749}# #{situations 1750}#)
+ (if (null? #{when-list 1749}#)
+ #{situations 1750}#
+ (#{f 1748}#
+ (cdr #{when-list 1749}#)
+ (cons (let ((#{x 1752}# (car #{when-list 1749}#)))
(if (#{free-id=? 399}#
- #{p 3728}#
+ #{x 1752}#
'#(syntax-object
- _
+ compile
((top)
#(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1751"))
+ #(ribcage () () ())
#(ribcage
- #(p n ids)
+ #(f when-list situations)
#((top) (top) (top))
- #("i3731" "i3732" "i3733"))
- #(ribcage
- (cvt cvt*)
- ((top) (top))
- ("i3712" "i3710"))
- #(ribcage
- #(pattern keys)
- #((top) (top))
- #("i3708" "i3709"))
+ #("i1745" "i1746" "i1747"))
+ #(ribcage () () ())
#(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i3704" "i3702" "i3700" "i3698"))
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1742" "i1743" "i1744"))
#(ribcage
(lambda-var-list
gen-var
@@ -11721,7 +1589,7 @@
make-let
make-lambda-case
make-lambda
- make-sequence
+ make-seq
make-primcall
make-call
make-conditional
@@ -12018,2275 +1886,12123 @@
((top) (top) (top))
("i40" "i39" "i38")))
(hygiene guile)))
- (values '_ #{ids 3730}#)
- (values
- 'any
- (cons (cons #{p 3728}# #{n 3729}#)
- #{ids 3730}#))))
- (let ((#{tmp 3739}# #{p 3728}#))
- (let ((#{tmp 3740}#
- ($sc-dispatch #{tmp 3739}# '(any any))))
- (if (if #{tmp 3740}#
- (@apply
- (lambda (#{x 3743}# #{dots 3744}#)
- (#{ellipsis? 439}# #{dots 3744}#))
- #{tmp 3740}#)
- #f)
- (@apply
- (lambda (#{x 3747}# #{dots 3748}#)
- (call-with-values
- (lambda ()
- (#{cvt 3713}#
- #{x 3747}#
- (#{1+}# #{n 3729}#)
- #{ids 3730}#))
- (lambda (#{p 3750}# #{ids 3751}#)
- (values
- (if (eq? #{p 3750}# 'any)
- 'each-any
- (vector 'each #{p 3750}#))
- #{ids 3751}#))))
- #{tmp 3740}#)
- (let ((#{tmp 3754}#
- ($sc-dispatch
- #{tmp 3739}#
- '(any any . each-any))))
- (if (if #{tmp 3754}#
- (@apply
- (lambda (#{x 3758}#
- #{dots 3759}#
- #{ys 3760}#)
- (#{ellipsis? 439}# #{dots 3759}#))
- #{tmp 3754}#)
- #f)
- (@apply
- (lambda (#{x 3764}#
- #{dots 3765}#
- #{ys 3766}#)
- (call-with-values
- (lambda ()
- (#{cvt* 3711}#
- #{ys 3766}#
- #{n 3729}#
- #{ids 3730}#))
- (lambda (#{ys 3768}# #{ids 3769}#)
- (call-with-values
- (lambda ()
- (#{cvt 3713}#
- #{x 3764}#
- (#{1+}# #{n 3729}#)
- #{ids 3769}#))
- (lambda (#{x 3772}# #{ids 3773}#)
+ 'compile
+ (if (#{free-id=? 399}#
+ #{x 1752}#
+ '#(syntax-object
+ load
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1751"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1745" "i1746" "i1747"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1742" "i1743" "i1744"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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)))
+ 'load
+ (if (#{free-id=? 399}#
+ #{x 1752}#
+ '#(syntax-object
+ eval
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1751"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1745" "i1746" "i1747"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1742" "i1743" "i1744"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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=? 399}#
+ #{x 1752}#
+ '#(syntax-object
+ expand
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i1751"))
+ #(ribcage () () ())
+ #(ribcage
+ #(f when-list situations)
+ #((top) (top) (top))
+ #("i1745" "i1746" "i1747"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e when-list w)
+ #((top) (top) (top))
+ #("i1742" "i1743" "i1744"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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 1739}#
+ (#{wrap 409}#
+ #{x 1752}#
+ #{w 1741}#
+ #f)))))))
+ #{situations 1750}#))))))
+ (#{f 1748}# #{when-list 1740}# '()))))
+ (#{syntax-type 421}#
+ (lambda (#{e 1762}#
+ #{r 1763}#
+ #{w 1764}#
+ #{s 1765}#
+ #{rib 1766}#
+ #{mod 1767}#
+ #{for-car? 1768}#)
+ (if (symbol? #{e 1762}#)
+ (let ((#{n 1780}#
+ (#{id-var-name 397}# #{e 1762}# #{w 1764}#)))
+ (let ((#{b 1782}#
+ (#{lookup 337}#
+ #{n 1780}#
+ #{r 1763}#
+ #{mod 1767}#)))
+ (let ((#{type 1784}# (car #{b 1782}#)))
+ (if (memv #{type 1784}# '(lexical))
+ (values
+ #{type 1784}#
+ (cdr #{b 1782}#)
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{type 1784}# '(global))
+ (values
+ #{type 1784}#
+ #{n 1780}#
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{type 1784}# '(macro))
+ (if #{for-car? 1768}#
+ (values
+ #{type 1784}#
+ (cdr #{b 1782}#)
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (#{syntax-type 421}#
+ (#{chi-macro 429}#
+ (cdr #{b 1782}#)
+ #{e 1762}#
+ #{r 1763}#
+ #{w 1764}#
+ #{s 1765}#
+ #{rib 1766}#
+ #{mod 1767}#)
+ #{r 1763}#
+ '(())
+ #{s 1765}#
+ #{rib 1766}#
+ #{mod 1767}#
+ #f))
+ (values
+ #{type 1784}#
+ (cdr #{b 1782}#)
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)))))))
+ (if (pair? #{e 1762}#)
+ (let ((#{first 1798}# (car #{e 1762}#)))
+ (call-with-values
+ (lambda ()
+ (#{syntax-type 421}#
+ #{first 1798}#
+ #{r 1763}#
+ #{w 1764}#
+ #{s 1765}#
+ #{rib 1766}#
+ #{mod 1767}#
+ #t))
+ (lambda (#{ftype 1799}#
+ #{fval 1800}#
+ #{fe 1801}#
+ #{fw 1802}#
+ #{fs 1803}#
+ #{fmod 1804}#)
+ (if (memv #{ftype 1799}# '(lexical))
+ (values
+ 'lexical-call
+ #{fval 1800}#
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{ftype 1799}# '(global))
+ (values
+ 'global-call
+ (#{make-syntax-object 307}#
+ #{fval 1800}#
+ #{w 1764}#
+ #{fmod 1804}#)
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{ftype 1799}# '(macro))
+ (#{syntax-type 421}#
+ (#{chi-macro 429}#
+ #{fval 1800}#
+ #{e 1762}#
+ #{r 1763}#
+ #{w 1764}#
+ #{s 1765}#
+ #{rib 1766}#
+ #{mod 1767}#)
+ #{r 1763}#
+ '(())
+ #{s 1765}#
+ #{rib 1766}#
+ #{mod 1767}#
+ #{for-car? 1768}#)
+ (if (memv #{ftype 1799}# '(module-ref))
+ (call-with-values
+ (lambda ()
+ (#{fval 1800}# #{e 1762}# #{r 1763}# #{w 1764}#))
+ (lambda (#{e 1816}#
+ #{r 1817}#
+ #{w 1818}#
+ #{s 1819}#
+ #{mod 1820}#)
+ (#{syntax-type 421}#
+ #{e 1816}#
+ #{r 1817}#
+ #{w 1818}#
+ #{s 1819}#
+ #{rib 1766}#
+ #{mod 1820}#
+ #{for-car? 1768}#)))
+ (if (memv #{ftype 1799}# '(core))
+ (values
+ 'core-form
+ #{fval 1800}#
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{ftype 1799}# '(local-syntax))
+ (values
+ 'local-syntax-form
+ #{fval 1800}#
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{ftype 1799}# '(begin))
+ (values
+ 'begin-form
+ #f
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{ftype 1799}# '(eval-when))
+ (values
+ 'eval-when-form
+ #f
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (if (memv #{ftype 1799}# '(define))
+ (let ((#{tmp 1831}# #{e 1762}#))
+ (let ((#{tmp 1832}#
+ ($sc-dispatch
+ #{tmp 1831}#
+ '(_ any any))))
+ (if (if #{tmp 1832}#
+ (@apply
+ (lambda (#{name 1835}#
+ #{val 1836}#)
+ (#{id? 343}# #{name 1835}#))
+ #{tmp 1832}#)
+ #f)
+ (@apply
+ (lambda (#{name 1839}# #{val 1840}#)
+ (values
+ 'define-form
+ #{name 1839}#
+ #{val 1840}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#))
+ #{tmp 1832}#)
+ (let ((#{tmp 1841}#
+ ($sc-dispatch
+ #{tmp 1831}#
+ '(_ (any . any)
+ any
+ .
+ each-any))))
+ (if (if #{tmp 1841}#
+ (@apply
+ (lambda (#{name 1846}#
+ #{args 1847}#
+ #{e1 1848}#
+ #{e2 1849}#)
+ (if (#{id? 343}#
+ #{name 1846}#)
+ (#{valid-bound-ids?
403}#
+ (#{lambda-var-list
453}#
+ #{args 1847}#))
+ #f))
+ #{tmp 1841}#)
+ #f)
+ (@apply
+ (lambda (#{name 1856}#
+ #{args 1857}#
+ #{e1 1858}#
+ #{e2 1859}#)
+ (values
+ 'define-form
+ (#{wrap 409}#
+ #{name 1856}#
+ #{w 1764}#
+ #{mod 1767}#)
+ (#{decorate-source 261}#
+ (cons '#(syntax-object
+ lambda
+ ((top)
+ #(ribcage
+ #(name
+ args
+ e1
+ e2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i1852"
+ "i1853"
+ "i1854"
+ "i1855"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1805"
+ "i1806"
+ "i1807"
+ "i1808"
+ "i1809"
+ "i1810"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1797"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1769"
+ "i1770"
+ "i1771"
+ "i1772"
+ "i1773"
+ "i1774"
+ "i1775"))
+ #(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-call
+ 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-primcall
+
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-call
+ 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-seq
+
make-primcall
+ make-call
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+
make-module-set
+
make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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 409}#
+ (cons #{args
1857}#
+ (cons #{e1
1858}#
+ #{e2
1859}#))
+ #{w 1764}#
+ #{mod 1767}#))
+ #{s 1765}#)
+ '(())
+ #{s 1765}#
+ #{mod 1767}#))
+ #{tmp 1841}#)
+ (let ((#{tmp 1862}#
+ ($sc-dispatch
+ #{tmp 1831}#
+ '(_ any))))
+ (if (if #{tmp 1862}#
+ (@apply
+ (lambda (#{name 1864}#)
+ (#{id? 343}#
+ #{name 1864}#))
+ #{tmp 1862}#)
+ #f)
+ (@apply
+ (lambda (#{name 1866}#)
+ (values
+ 'define-form
+ (#{wrap 409}#
+ #{name 1866}#
+ #{w 1764}#
+ #{mod 1767}#)
+ '(#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(name)
+ #((top))
+ #("i1865"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1805"
+ "i1806"
+ "i1807"
+ "i1808"
+ "i1809"
+ "i1810"))
+ #(ribcage () () ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1797"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1769"
+ "i1770"
+ "i1771"
+ "i1772"
+ "i1773"
+ "i1774"
+ "i1775"))
+ #(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-call
+ 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-primcall
+
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-call
+ 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-seq
+ make-primcall
+ make-call
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+ make-module-set
+ make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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))
+ #("i1865"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1805"
+ "i1806"
+ "i1807"
+ "i1808"
+ "i1809"
+ "i1810"))
+ #(ribcage () () ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1797"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1769"
+ "i1770"
+ "i1771"
+ "i1772"
+ "i1773"
+ "i1774"
+ "i1775"))
+ #(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-call
+ 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-primcall
+
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-call
+ 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-seq
+ make-primcall
+ make-call
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+ make-module-set
+ make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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))
+ #("i1865"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(ftype
+ fval
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1805"
+ "i1806"
+ "i1807"
+ "i1808"
+ "i1809"
+ "i1810"))
+ #(ribcage () () ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("i1797"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i1769"
+ "i1770"
+ "i1771"
+ "i1772"
+ "i1773"
+ "i1774"
+ "i1775"))
+ #(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-call
+ 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-primcall
+
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-call
+ 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-seq
+ make-primcall
+ make-call
+
make-conditional
+
make-toplevel-define
+
make-toplevel-set
+
make-toplevel-ref
+ make-module-set
+ make-module-ref
+
make-lexical-set
+
make-lexical-ref
+
make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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)))
+ '(())
+ #{s 1765}#
+ #{mod 1767}#))
+ #{tmp 1862}#)
+ (syntax-violation
+ #f
+ "source expression failed
to match any pattern"
+ #{tmp 1831}#))))))))
+ (if (memv #{ftype 1799}# '(define-syntax))
+ (let ((#{tmp 1869}# #{e 1762}#))
+ (let ((#{tmp 1870}#
+ ($sc-dispatch
+ #{tmp 1869}#
+ '(_ any any))))
+ (if (if #{tmp 1870}#
+ (@apply
+ (lambda (#{name 1873}#
+ #{val 1874}#)
+ (#{id? 343}# #{name 1873}#))
+ #{tmp 1870}#)
+ #f)
+ (@apply
+ (lambda (#{name 1877}#
+ #{val 1878}#)
+ (values
+ 'define-syntax-form
+ #{name 1877}#
+ #{val 1878}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#))
+ #{tmp 1870}#)
+ (syntax-violation
+ #f
+ "source expression failed to
match any pattern"
+ #{tmp 1869}#))))
+ (values
+ 'call
+ #f
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#))))))))))))))
+ (if (#{syntax-object? 309}# #{e 1762}#)
+ (#{syntax-type 421}#
+ (#{syntax-object-expression 311}# #{e 1762}#)
+ #{r 1763}#
+ (#{join-wraps 391}#
+ #{w 1764}#
+ (#{syntax-object-wrap 313}# #{e 1762}#))
+ (let ((#{t 1884}#
+ (#{source-annotation 324}# #{e 1762}#)))
+ (if #{t 1884}# #{t 1884}# #{s 1765}#))
+ #{rib 1766}#
+ (let ((#{t 1888}#
+ (#{syntax-object-module 315}# #{e 1762}#)))
+ (if #{t 1888}# #{t 1888}# #{mod 1767}#))
+ #{for-car? 1768}#)
+ (if (self-evaluating? #{e 1762}#)
+ (values
+ 'constant
+ #f
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)
+ (values
+ 'other
+ #f
+ #{e 1762}#
+ #{w 1764}#
+ #{s 1765}#
+ #{mod 1767}#)))))))
+ (#{chi 423}#
+ (lambda (#{e 1893}# #{r 1894}# #{w 1895}# #{mod 1896}#)
+ (call-with-values
+ (lambda ()
+ (#{syntax-type 421}#
+ #{e 1893}#
+ #{r 1894}#
+ #{w 1895}#
+ (#{source-annotation 324}# #{e 1893}#)
+ #f
+ #{mod 1896}#
+ #f))
+ (lambda (#{type 1901}#
+ #{value 1902}#
+ #{e 1903}#
+ #{w 1904}#
+ #{s 1905}#
+ #{mod 1906}#)
+ (#{chi-expr 425}#
+ #{type 1901}#
+ #{value 1902}#
+ #{e 1903}#
+ #{r 1894}#
+ #{w 1904}#
+ #{s 1905}#
+ #{mod 1906}#)))))
+ (#{chi-expr 425}#
+ (lambda (#{type 1913}#
+ #{value 1914}#
+ #{e 1915}#
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#)
+ (if (memv #{type 1913}# '(lexical))
+ (#{build-lexical-reference 273}#
+ 'value
+ #{s 1918}#
+ #{e 1915}#
+ #{value 1914}#)
+ (if (memv #{type 1913}# '(core core-form))
+ (#{value 1914}#
+ #{e 1915}#
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#)
+ (if (memv #{type 1913}# '(module-ref))
+ (call-with-values
+ (lambda ()
+ (#{value 1914}# #{e 1915}# #{r 1916}# #{w 1917}#))
+ (lambda (#{e 1930}#
+ #{r 1931}#
+ #{w 1932}#
+ #{s 1933}#
+ #{mod 1934}#)
+ (#{chi 423}#
+ #{e 1930}#
+ #{r 1931}#
+ #{w 1932}#
+ #{mod 1934}#)))
+ (if (memv #{type 1913}# '(lexical-call))
+ (#{chi-call 427}#
+ (let ((#{id 1942}# (car #{e 1915}#)))
+ (#{build-lexical-reference 273}#
+ 'fun
+ (#{source-annotation 324}# #{id 1942}#)
+ (if (#{syntax-object? 309}# #{id 1942}#)
+ (syntax->datum #{id 1942}#)
+ #{id 1942}#)
+ #{value 1914}#))
+ #{e 1915}#
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#)
+ (if (memv #{type 1913}# '(global-call))
+ (#{chi-call 427}#
+ (#{build-global-reference 279}#
+ (#{source-annotation 324}# (car #{e 1915}#))
+ (if (#{syntax-object? 309}# #{value 1914}#)
+ (#{syntax-object-expression 311}# #{value 1914}#)
+ #{value 1914}#)
+ (if (#{syntax-object? 309}# #{value 1914}#)
+ (#{syntax-object-module 315}# #{value 1914}#)
+ #{mod 1919}#))
+ #{e 1915}#
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#)
+ (if (memv #{type 1913}# '(constant))
+ (#{build-data 295}#
+ #{s 1918}#
+ (#{strip 449}#
+ (#{source-wrap 411}#
+ #{e 1915}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#)
+ '(())))
+ (if (memv #{type 1913}# '(global))
+ (#{build-global-reference 279}#
+ #{s 1918}#
+ #{value 1914}#
+ #{mod 1919}#)
+ (if (memv #{type 1913}# '(call))
+ (#{chi-call 427}#
+ (#{chi 423}#
+ (car #{e 1915}#)
+ #{r 1916}#
+ #{w 1917}#
+ #{mod 1919}#)
+ #{e 1915}#
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#)
+ (if (memv #{type 1913}# '(begin-form))
+ (let ((#{tmp 1949}# #{e 1915}#))
+ (let ((#{tmp 1950}#
+ ($sc-dispatch
+ #{tmp 1949}#
+ '(_ any . each-any))))
+ (if #{tmp 1950}#
+ (@apply
+ (lambda (#{e1 1953}# #{e2 1954}#)
+ (#{chi-sequence 413}#
+ (cons #{e1 1953}# #{e2 1954}#)
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#))
+ #{tmp 1950}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp 1949}#))))
+ (if (memv #{type 1913}# '(local-syntax-form))
+ (#{chi-local-syntax 433}#
+ #{value 1914}#
+ #{e 1915}#
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#
+ #{chi-sequence 413}#)
+ (if (memv #{type 1913}# '(eval-when-form))
+ (let ((#{tmp 1958}# #{e 1915}#))
+ (let ((#{tmp 1959}#
+ ($sc-dispatch
+ #{tmp 1958}#
+ '(_ each-any any . each-any))))
+ (if #{tmp 1959}#
+ (@apply
+ (lambda (#{x 1963}#
+ #{e1 1964}#
+ #{e2 1965}#)
+ (let ((#{when-list 1967}#
+ (#{chi-when-list 419}#
+ #{e 1915}#
+ #{x 1963}#
+ #{w 1917}#)))
+ (if (memq 'eval #{when-list 1967}#)
+ (#{chi-sequence 413}#
+ (cons #{e1 1964}# #{e2 1965}#)
+ #{r 1916}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#)
+ (#{chi-void 437}#))))
+ #{tmp 1959}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp 1958}#))))
+ (if (memv #{type 1913}#
+ '(define-form define-syntax-form))
+ (syntax-violation
+ #f
+ "definition in expression context"
+ #{e 1915}#
+ (#{wrap 409}#
+ #{value 1914}#
+ #{w 1917}#
+ #{mod 1919}#))
+ (if (memv #{type 1913}# '(syntax))
+ (syntax-violation
+ #f
+ "reference to pattern variable outside
syntax form"
+ (#{source-wrap 411}#
+ #{e 1915}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#))
+ (if (memv #{type 1913}# '(displaced-lexical))
+ (syntax-violation
+ #f
+ "reference to identifier outside its
scope"
+ (#{source-wrap 411}#
+ #{e 1915}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#))
+ (syntax-violation
+ #f
+ "unexpected syntax"
+ (#{source-wrap 411}#
+ #{e 1915}#
+ #{w 1917}#
+ #{s 1918}#
+ #{mod 1919}#))))))))))))))))))
+ (#{chi-call 427}#
+ (lambda (#{x 1974}#
+ #{e 1975}#
+ #{r 1976}#
+ #{w 1977}#
+ #{s 1978}#
+ #{mod 1979}#)
+ (let ((#{tmp 1986}# #{e 1975}#))
+ (let ((#{tmp 1987}#
+ ($sc-dispatch #{tmp 1986}# '(any . each-any))))
+ (if #{tmp 1987}#
+ (@apply
+ (lambda (#{e0 1990}# #{e1 1991}#)
+ (#{build-call 267}#
+ #{s 1978}#
+ #{x 1974}#
+ (map (lambda (#{e 1992}#)
+ (#{chi 423}#
+ #{e 1992}#
+ #{r 1976}#
+ #{w 1977}#
+ #{mod 1979}#))
+ #{e1 1991}#)))
+ #{tmp 1987}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 1986}#))))))
+ (#{chi-macro 429}#
+ (lambda (#{p 1995}#
+ #{e 1996}#
+ #{r 1997}#
+ #{w 1998}#
+ #{s 1999}#
+ #{rib 2000}#
+ #{mod 2001}#)
+ (letrec*
+ ((#{rebuild-macro-output 2010}#
+ (lambda (#{x 2011}# #{m 2012}#)
+ (if (pair? #{x 2011}#)
+ (#{decorate-source 261}#
+ (cons (#{rebuild-macro-output 2010}#
+ (car #{x 2011}#)
+ #{m 2012}#)
+ (#{rebuild-macro-output 2010}#
+ (cdr #{x 2011}#)
+ #{m 2012}#))
+ #{s 1999}#)
+ (if (#{syntax-object? 309}# #{x 2011}#)
+ (let ((#{w 2020}#
+ (#{syntax-object-wrap 313}# #{x 2011}#)))
+ (let ((#{ms 2023}# (car #{w 2020}#))
+ (#{s 2024}# (cdr #{w 2020}#)))
+ (if (if (pair? #{ms 2023}#)
+ (eq? (car #{ms 2023}#) #f)
+ #f)
+ (#{make-syntax-object 307}#
+ (#{syntax-object-expression 311}# #{x 2011}#)
+ (cons (cdr #{ms 2023}#)
+ (if #{rib 2000}#
+ (cons #{rib 2000}# (cdr #{s 2024}#))
+ (cdr #{s 2024}#)))
+ (#{syntax-object-module 315}# #{x 2011}#))
+ (#{make-syntax-object 307}#
+ (#{decorate-source 261}#
+ (#{syntax-object-expression 311}# #{x 2011}#)
+ #{s 2024}#)
+ (cons (cons #{m 2012}# #{ms 2023}#)
+ (if #{rib 2000}#
+ (cons #{rib 2000}# (cons 'shift #{s 2024}#))
+ (cons 'shift #{s 2024}#)))
+ (#{syntax-object-module 315}# #{x 2011}#)))))
+ (if (vector? #{x 2011}#)
+ (let ((#{n 2036}# (vector-length #{x 2011}#)))
+ (let ((#{v 2038}#
+ (#{decorate-source 261}#
+ (make-vector #{n 2036}#)
+ #{x 2011}#)))
+ (letrec*
+ ((#{loop 2041}#
+ (lambda (#{i 2042}#)
+ (if (= #{i 2042}# #{n 2036}#)
+ (begin (if #f #f) #{v 2038}#)
+ (begin
+ (vector-set!
+ #{v 2038}#
+ #{i 2042}#
+ (#{rebuild-macro-output 2010}#
+ (vector-ref #{x 2011}# #{i 2042}#)
+ #{m 2012}#))
+ (#{loop 2041}# (#{1+}# #{i 2042}#)))))))
+ (#{loop 2041}# 0))))
+ (if (symbol? #{x 2011}#)
+ (syntax-violation
+ #f
+ "encountered raw symbol in macro output"
+ (#{source-wrap 411}#
+ #{e 1996}#
+ #{w 1998}#
+ (cdr #{w 1998}#)
+ #{mod 2001}#)
+ #{x 2011}#)
+ (#{decorate-source 261}# #{x 2011}# #{s 1999}#))))))))
+ (#{rebuild-macro-output 2010}#
+ (#{p 1995}#
+ (#{source-wrap 411}#
+ #{e 1996}#
+ (#{anti-mark 381}# #{w 1998}#)
+ #{s 1999}#
+ #{mod 2001}#))
+ (gensym "m")))))
+ (#{chi-body 431}#
+ (lambda (#{body 2052}#
+ #{outer-form 2053}#
+ #{r 2054}#
+ #{w 2055}#
+ #{mod 2056}#)
+ (let ((#{r 2064}#
+ (cons '("placeholder" placeholder) #{r 2054}#)))
+ (let ((#{ribcage 2066}#
+ (#{make-ribcage 361}# '() '() '())))
+ (let ((#{w 2069}#
+ (cons (car #{w 2055}#)
+ (cons #{ribcage 2066}# (cdr #{w 2055}#)))))
+ (letrec*
+ ((#{parse 2081}#
+ (lambda (#{body 2082}#
+ #{ids 2083}#
+ #{labels 2084}#
+ #{var-ids 2085}#
+ #{vars 2086}#
+ #{vals 2087}#
+ #{bindings 2088}#)
+ (if (null? #{body 2082}#)
+ (syntax-violation
+ #f
+ "no expressions in body"
+ #{outer-form 2053}#)
+ (let ((#{e 2093}# (cdr (car #{body 2082}#)))
+ (#{er 2094}# (car (car #{body 2082}#))))
+ (call-with-values
+ (lambda ()
+ (#{syntax-type 421}#
+ #{e 2093}#
+ #{er 2094}#
+ '(())
+ (#{source-annotation 324}# #{er 2094}#)
+ #{ribcage 2066}#
+ #{mod 2056}#
+ #f))
+ (lambda (#{type 2096}#
+ #{value 2097}#
+ #{e 2098}#
+ #{w 2099}#
+ #{s 2100}#
+ #{mod 2101}#)
+ (if (memv #{type 2096}# '(define-form))
+ (let ((#{id 2111}#
+ (#{wrap 409}#
+ #{value 2097}#
+ #{w 2099}#
+ #{mod 2101}#))
+ (#{label 2112}# (#{gen-label 356}#)))
+ (let ((#{var 2114}#
+ (#{gen-var 451}# #{id 2111}#)))
+ (begin
+ (#{extend-ribcage! 385}#
+ #{ribcage 2066}#
+ #{id 2111}#
+ #{label 2112}#)
+ (#{parse 2081}#
+ (cdr #{body 2082}#)
+ (cons #{id 2111}# #{ids 2083}#)
+ (cons #{label 2112}# #{labels 2084}#)
+ (cons #{id 2111}# #{var-ids 2085}#)
+ (cons #{var 2114}# #{vars 2086}#)
+ (cons (cons #{er 2094}#
+ (#{wrap 409}#
+ #{e 2098}#
+ #{w 2099}#
+ #{mod 2101}#))
+ #{vals 2087}#)
+ (cons (cons 'lexical #{var 2114}#)
+ #{bindings 2088}#)))))
+ (if (memv #{type 2096}# '(define-syntax-form))
+ (let ((#{id 2119}#
+ (#{wrap 409}#
+ #{value 2097}#
+ #{w 2099}#
+ #{mod 2101}#))
+ (#{label 2120}# (#{gen-label 356}#)))
+ (begin
+ (#{extend-ribcage! 385}#
+ #{ribcage 2066}#
+ #{id 2119}#
+ #{label 2120}#)
+ (#{parse 2081}#
+ (cdr #{body 2082}#)
+ (cons #{id 2119}# #{ids 2083}#)
+ (cons #{label 2120}# #{labels 2084}#)
+ #{var-ids 2085}#
+ #{vars 2086}#
+ #{vals 2087}#
+ (cons (cons 'macro
+ (cons #{er 2094}#
+ (#{wrap 409}#
+ #{e 2098}#
+ #{w 2099}#
+ #{mod 2101}#)))
+ #{bindings 2088}#))))
+ (if (memv #{type 2096}# '(begin-form))
+ (let ((#{tmp 2123}# #{e 2098}#))
+ (let ((#{tmp 2124}#
+ ($sc-dispatch
+ #{tmp 2123}#
+ '(_ . each-any))))
+ (if #{tmp 2124}#
+ (@apply
+ (lambda (#{e1 2126}#)
+ (#{parse 2081}#
+ (letrec*
+ ((#{f 2129}#
+ (lambda (#{forms 2130}#)
+ (if (null? #{forms 2130}#)
+ (cdr #{body 2082}#)
+ (cons (cons #{er 2094}#
+ (#{wrap
409}#
+ (car
#{forms 2130}#)
+ #{w 2099}#
+ #{mod
2101}#))
+ (#{f 2129}#
+ (cdr #{forms
2130}#)))))))
+ (#{f 2129}# #{e1 2126}#))
+ #{ids 2083}#
+ #{labels 2084}#
+ #{var-ids 2085}#
+ #{vars 2086}#
+ #{vals 2087}#
+ #{bindings 2088}#))
+ #{tmp 2124}#)
+ (syntax-violation
+ #f
+ "source expression failed to match
any pattern"
+ #{tmp 2123}#))))
+ (if (memv #{type 2096}# '(local-syntax-form))
+ (#{chi-local-syntax 433}#
+ #{value 2097}#
+ #{e 2098}#
+ #{er 2094}#
+ #{w 2099}#
+ #{s 2100}#
+ #{mod 2101}#
+ (lambda (#{forms 2133}#
+ #{er 2134}#
+ #{w 2135}#
+ #{s 2136}#
+ #{mod 2137}#)
+ (#{parse 2081}#
+ (letrec*
+ ((#{f 2145}#
+ (lambda (#{forms 2146}#)
+ (if (null? #{forms 2146}#)
+ (cdr #{body 2082}#)
+ (cons (cons #{er 2134}#
+ (#{wrap 409}#
+ (car #{forms
2146}#)
+ #{w 2135}#
+ #{mod 2137}#))
+ (#{f 2145}#
+ (cdr #{forms
2146}#)))))))
+ (#{f 2145}# #{forms 2133}#))
+ #{ids 2083}#
+ #{labels 2084}#
+ #{var-ids 2085}#
+ #{vars 2086}#
+ #{vals 2087}#
+ #{bindings 2088}#)))
+ (if (null? #{ids 2083}#)
+ (#{build-sequence 297}#
+ #f
+ (map (lambda (#{x 2149}#)
+ (#{chi 423}#
+ (cdr #{x 2149}#)
+ (car #{x 2149}#)
+ '(())
+ #{mod 2101}#))
+ (cons (cons #{er 2094}#
+ (#{source-wrap 411}#
+ #{e 2098}#
+ #{w 2099}#
+ #{s 2100}#
+ #{mod 2101}#))
+ (cdr #{body 2082}#))))
+ (begin
+ (if (not (#{valid-bound-ids? 403}#
+ #{ids 2083}#))
+ (syntax-violation
+ #f
+ "invalid or duplicate identifier
in definition"
+ #{outer-form 2053}#))
+ (letrec*
+ ((#{loop 2156}#
+ (lambda (#{bs 2157}#
+ #{er-cache 2158}#
+ #{r-cache 2159}#)
+ (if (not (null? #{bs 2157}#))
+ (let ((#{b 2162}#
+ (car #{bs 2157}#)))
+ (if (eq? (car #{b 2162}#)
+ 'macro)
+ (let ((#{er 2165}#
+ (car (cdr #{b
2162}#))))
+ (let ((#{r-cache 2167}#
+ (if (eq? #{er
2165}#
+
#{er-cache 2158}#)
+ #{r-cache
2159}#
+
(#{macros-only-env 335}#
+ #{er
2165}#))))
+ (begin
+ (set-cdr!
+ #{b 2162}#
+
(#{eval-local-transformer 435}#
+ (#{chi 423}#
+ (cdr (cdr #{b
2162}#))
+ #{r-cache
2167}#
+ '(())
+ #{mod 2101}#)
+ #{mod 2101}#))
+ (#{loop 2156}#
+ (cdr #{bs 2157}#)
+ #{er 2165}#
+ #{r-cache
2167}#))))
+ (#{loop 2156}#
+ (cdr #{bs 2157}#)
+ #{er-cache 2158}#
+ #{r-cache 2159}#)))))))
+ (#{loop 2156}#
+ #{bindings 2088}#
+ #f
+ #f))
+ (set-cdr!
+ #{r 2064}#
+ (#{extend-env 331}#
+ #{labels 2084}#
+ #{bindings 2088}#
+ (cdr #{r 2064}#)))
+ (#{build-letrec 303}#
+ #f
+ #t
+ (reverse
+ (map syntax->datum
+ #{var-ids 2085}#))
+ (reverse #{vars 2086}#)
+ (map (lambda (#{x 2170}#)
+ (#{chi 423}#
+ (cdr #{x 2170}#)
+ (car #{x 2170}#)
+ '(())
+ #{mod 2101}#))
+ (reverse #{vals 2087}#))
+ (#{build-sequence 297}#
+ #f
+ (map (lambda (#{x 2174}#)
+ (#{chi 423}#
+ (cdr #{x 2174}#)
+ (car #{x 2174}#)
+ '(())
+ #{mod 2101}#))
+ (cons (cons #{er 2094}#
+ (#{source-wrap
411}#
+ #{e 2098}#
+ #{w 2099}#
+ #{s 2100}#
+ #{mod 2101}#))
+ (cdr #{body
2082}#))))))))))))))))))
+ (#{parse 2081}#
+ (map (lambda (#{x 2089}#)
+ (cons #{r 2064}#
+ (#{wrap 409}#
+ #{x 2089}#
+ #{w 2069}#
+ #{mod 2056}#)))
+ #{body 2052}#)
+ '()
+ '()
+ '()
+ '()
+ '()
+ '())))))))
+ (#{chi-local-syntax 433}#
+ (lambda (#{rec? 2177}#
+ #{e 2178}#
+ #{r 2179}#
+ #{w 2180}#
+ #{s 2181}#
+ #{mod 2182}#
+ #{k 2183}#)
+ (let ((#{tmp 2191}# #{e 2178}#))
+ (let ((#{tmp 2192}#
+ ($sc-dispatch
+ #{tmp 2191}#
+ '(_ #(each (any any)) any . each-any))))
+ (if #{tmp 2192}#
+ (@apply
+ (lambda (#{id 2197}#
+ #{val 2198}#
+ #{e1 2199}#
+ #{e2 2200}#)
+ (let ((#{ids 2202}# #{id 2197}#))
+ (if (not (#{valid-bound-ids? 403}# #{ids 2202}#))
+ (syntax-violation
+ #f
+ "duplicate bound keyword"
+ #{e 2178}#)
+ (let ((#{labels 2205}#
+ (#{gen-labels 358}# #{ids 2202}#)))
+ (let ((#{new-w 2207}#
+ (#{make-binding-wrap 387}#
+ #{ids 2202}#
+ #{labels 2205}#
+ #{w 2180}#)))
+ (#{k 2183}#
+ (cons #{e1 2199}# #{e2 2200}#)
+ (#{extend-env 331}#
+ #{labels 2205}#
+ (let ((#{w 2211}#
+ (if #{rec? 2177}#
+ #{new-w 2207}#
+ #{w 2180}#))
+ (#{trans-r 2212}#
+ (#{macros-only-env 335}# #{r 2179}#)))
+ (map (lambda (#{x 2213}#)
+ (cons 'macro
+ (#{eval-local-transformer 435}#
+ (#{chi 423}#
+ #{x 2213}#
+ #{trans-r 2212}#
+ #{w 2211}#
+ #{mod 2182}#)
+ #{mod 2182}#)))
+ #{val 2198}#))
+ #{r 2179}#)
+ #{new-w 2207}#
+ #{s 2181}#
+ #{mod 2182}#))))))
+ #{tmp 2192}#)
+ (let ((#{_ 2218}# #{tmp 2191}#))
+ (syntax-violation
+ #f
+ "bad local syntax definition"
+ (#{source-wrap 411}#
+ #{e 2178}#
+ #{w 2180}#
+ #{s 2181}#
+ #{mod 2182}#))))))))
+ (#{eval-local-transformer 435}#
+ (lambda (#{expanded 2219}# #{mod 2220}#)
+ (let ((#{p 2224}#
+ (#{local-eval-hook 254}#
+ #{expanded 2219}#
+ #{mod 2220}#)))
+ (if (procedure? #{p 2224}#)
+ #{p 2224}#
+ (syntax-violation
+ #f
+ "nonprocedure transformer"
+ #{p 2224}#)))))
+ (#{chi-void 437}#
+ (lambda () (#{build-void 265}# #f)))
+ (#{ellipsis? 439}#
+ (lambda (#{x 2226}#)
+ (if (#{nonsymbol-id? 341}# #{x 2226}#)
+ (#{free-id=? 399}#
+ #{x 2226}#
+ '#(syntax-object
+ ...
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i2227"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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)))
+ #f)))
+ (#{lambda-formals 441}#
+ (lambda (#{orig-args 2230}#)
+ (letrec*
+ ((#{req 2233}#
+ (lambda (#{args 2236}# #{rreq 2237}#)
+ (let ((#{tmp 2240}# #{args 2236}#))
+ (let ((#{tmp 2241}# ($sc-dispatch #{tmp 2240}# '())))
+ (if #{tmp 2241}#
+ (@apply
+ (lambda ()
+ (#{check 2235}# (reverse #{rreq 2237}#) #f))
+ #{tmp 2241}#)
+ (let ((#{tmp 2242}#
+ ($sc-dispatch #{tmp 2240}# '(any . any))))
+ (if (if #{tmp 2242}#
+ (@apply
+ (lambda (#{a 2245}# #{b 2246}#)
+ (#{id? 343}# #{a 2245}#))
+ #{tmp 2242}#)
+ #f)
+ (@apply
+ (lambda (#{a 2249}# #{b 2250}#)
+ (#{req 2233}#
+ #{b 2250}#
+ (cons #{a 2249}# #{rreq 2237}#)))
+ #{tmp 2242}#)
+ (let ((#{tmp 2251}# (list #{tmp 2240}#)))
+ (if (if #{tmp 2251}#
+ (@apply
+ (lambda (#{r 2253}#)
+ (#{id? 343}# #{r 2253}#))
+ #{tmp 2251}#)
+ #f)
+ (@apply
+ (lambda (#{r 2255}#)
+ (#{check 2235}#
+ (reverse #{rreq 2237}#)
+ #{r 2255}#))
+ #{tmp 2251}#)
+ (let ((#{else 2257}# #{tmp 2240}#))
+ (syntax-violation
+ 'lambda
+ "invalid argument list"
+ #{orig-args 2230}#
+ #{args 2236}#)))))))))))
+ (#{check 2235}#
+ (lambda (#{req 2258}# #{rest 2259}#)
+ (if (#{distinct-bound-ids? 405}#
+ (if #{rest 2259}#
+ (cons #{rest 2259}# #{req 2258}#)
+ #{req 2258}#))
+ (values #{req 2258}# #f #{rest 2259}# #f)
+ (syntax-violation
+ 'lambda
+ "duplicate identifier in argument list"
+ #{orig-args 2230}#)))))
+ (#{req 2233}# #{orig-args 2230}# '()))))
+ (#{chi-simple-lambda 443}#
+ (lambda (#{e 2265}#
+ #{r 2266}#
+ #{w 2267}#
+ #{s 2268}#
+ #{mod 2269}#
+ #{req 2270}#
+ #{rest 2271}#
+ #{meta 2272}#
+ #{body 2273}#)
+ (let ((#{ids 2285}#
+ (if #{rest 2271}#
+ (append #{req 2270}# (list #{rest 2271}#))
+ #{req 2270}#)))
+ (let ((#{vars 2287}#
+ (map #{gen-var 451}# #{ids 2285}#)))
+ (let ((#{labels 2289}#
+ (#{gen-labels 358}# #{ids 2285}#)))
+ (#{build-simple-lambda 285}#
+ #{s 2268}#
+ (map syntax->datum #{req 2270}#)
+ (if #{rest 2271}#
+ (syntax->datum #{rest 2271}#)
+ #f)
+ #{vars 2287}#
+ #{meta 2272}#
+ (#{chi-body 431}#
+ #{body 2273}#
+ (#{source-wrap 411}#
+ #{e 2265}#
+ #{w 2267}#
+ #{s 2268}#
+ #{mod 2269}#)
+ (#{extend-var-env 333}#
+ #{labels 2289}#
+ #{vars 2287}#
+ #{r 2266}#)
+ (#{make-binding-wrap 387}#
+ #{ids 2285}#
+ #{labels 2289}#
+ #{w 2267}#)
+ #{mod 2269}#)))))))
+ (#{lambda*-formals 445}#
+ (lambda (#{orig-args 2292}#)
+ (letrec*
+ ((#{req 2295}#
+ (lambda (#{args 2304}# #{rreq 2305}#)
+ (let ((#{tmp 2308}# #{args 2304}#))
+ (let ((#{tmp 2309}# ($sc-dispatch #{tmp 2308}# '())))
+ (if #{tmp 2309}#
+ (@apply
+ (lambda ()
+ (#{check 2303}#
+ (reverse #{rreq 2305}#)
+ '()
+ #f
+ '()))
+ #{tmp 2309}#)
+ (let ((#{tmp 2310}#
+ ($sc-dispatch #{tmp 2308}# '(any . any))))
+ (if (if #{tmp 2310}#
+ (@apply
+ (lambda (#{a 2313}# #{b 2314}#)
+ (#{id? 343}# #{a 2313}#))
+ #{tmp 2310}#)
+ #f)
+ (@apply
+ (lambda (#{a 2317}# #{b 2318}#)
+ (#{req 2295}#
+ #{b 2318}#
+ (cons #{a 2317}# #{rreq 2305}#)))
+ #{tmp 2310}#)
+ (let ((#{tmp 2319}#
+ ($sc-dispatch #{tmp 2308}# '(any . any))))
+ (if (if #{tmp 2319}#
+ (@apply
+ (lambda (#{a 2322}# #{b 2323}#)
+ (eq? (syntax->datum #{a 2322}#)
+ #:optional))
+ #{tmp 2319}#)
+ #f)
+ (@apply
+ (lambda (#{a 2326}# #{b 2327}#)
+ (#{opt 2297}#
+ #{b 2327}#
+ (reverse #{rreq 2305}#)
+ '()))
+ #{tmp 2319}#)
+ (let ((#{tmp 2328}#
+ ($sc-dispatch #{tmp 2308}# '(any . any))))
+ (if (if #{tmp 2328}#
+ (@apply
+ (lambda (#{a 2331}# #{b 2332}#)
+ (eq? (syntax->datum #{a 2331}#) #:key))
+ #{tmp 2328}#)
+ #f)
+ (@apply
+ (lambda (#{a 2335}# #{b 2336}#)
+ (#{key 2299}#
+ #{b 2336}#
+ (reverse #{rreq 2305}#)
+ '()
+ '()))
+ #{tmp 2328}#)
+ (let ((#{tmp 2337}#
+ ($sc-dispatch
+ #{tmp 2308}#
+ '(any any))))
+ (if (if #{tmp 2337}#
+ (@apply
+ (lambda (#{a 2340}# #{b 2341}#)
+ (eq? (syntax->datum #{a 2340}#)
+ #:rest))
+ #{tmp 2337}#)
+ #f)
+ (@apply
+ (lambda (#{a 2344}# #{b 2345}#)
+ (#{rest 2301}#
+ #{b 2345}#
+ (reverse #{rreq 2305}#)
+ '()
+ '()))
+ #{tmp 2337}#)
+ (let ((#{tmp 2346}# (list #{tmp 2308}#)))
+ (if (if #{tmp 2346}#
+ (@apply
+ (lambda (#{r 2348}#)
+ (#{id? 343}# #{r 2348}#))
+ #{tmp 2346}#)
+ #f)
+ (@apply
+ (lambda (#{r 2350}#)
+ (#{rest 2301}#
+ #{r 2350}#
+ (reverse #{rreq 2305}#)
+ '()
+ '()))
+ #{tmp 2346}#)
+ (let ((#{else 2352}# #{tmp 2308}#))
+ (syntax-violation
+ 'lambda*
+ "invalid argument list"
+ #{orig-args 2292}#
+ #{args 2304}#)))))))))))))))))
+ (#{opt 2297}#
+ (lambda (#{args 2353}# #{req 2354}# #{ropt 2355}#)
+ (let ((#{tmp 2359}# #{args 2353}#))
+ (let ((#{tmp 2360}# ($sc-dispatch #{tmp 2359}# '())))
+ (if #{tmp 2360}#
+ (@apply
+ (lambda ()
+ (#{check 2303}#
+ #{req 2354}#
+ (reverse #{ropt 2355}#)
+ #f
+ '()))
+ #{tmp 2360}#)
+ (let ((#{tmp 2361}#
+ ($sc-dispatch #{tmp 2359}# '(any . any))))
+ (if (if #{tmp 2361}#
+ (@apply
+ (lambda (#{a 2364}# #{b 2365}#)
+ (#{id? 343}# #{a 2364}#))
+ #{tmp 2361}#)
+ #f)
+ (@apply
+ (lambda (#{a 2368}# #{b 2369}#)
+ (#{opt 2297}#
+ #{b 2369}#
+ #{req 2354}#
+ (cons (cons #{a 2368}#
+ '(#(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(a b)
+ #((top) (top))
+ #("i2366" "i2367"))
+ #(ribcage () () ())
+ #(ribcage
+ #(args req ropt)
+ #((top) (top) (top))
+ #("i2356" "i2357" "i2358"))
+ #(ribcage
+ (check rest key opt req)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i2302"
+ "i2300"
+ "i2298"
+ "i2296"
+ "i2294"))
+ #(ribcage
+ #(orig-args)
+ #((top))
+ #("i2293"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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))))
+ #{ropt 2355}#)))
+ #{tmp 2361}#)
+ (let ((#{tmp 2370}#
+ ($sc-dispatch
+ #{tmp 2359}#
+ '((any any) . any))))
+ (if (if #{tmp 2370}#
+ (@apply
+ (lambda (#{a 2374}# #{init 2375}# #{b 2376}#)
+ (#{id? 343}# #{a 2374}#))
+ #{tmp 2370}#)
+ #f)
+ (@apply
+ (lambda (#{a 2380}# #{init 2381}# #{b 2382}#)
+ (#{opt 2297}#
+ #{b 2382}#
+ #{req 2354}#
+ (cons (list #{a 2380}# #{init 2381}#)
+ #{ropt 2355}#)))
+ #{tmp 2370}#)
+ (let ((#{tmp 2383}#
+ ($sc-dispatch #{tmp 2359}# '(any . any))))
+ (if (if #{tmp 2383}#
+ (@apply
+ (lambda (#{a 2386}# #{b 2387}#)
+ (eq? (syntax->datum #{a 2386}#) #:key))
+ #{tmp 2383}#)
+ #f)
+ (@apply
+ (lambda (#{a 2390}# #{b 2391}#)
+ (#{key 2299}#
+ #{b 2391}#
+ #{req 2354}#
+ (reverse #{ropt 2355}#)
+ '()))
+ #{tmp 2383}#)
+ (let ((#{tmp 2392}#
+ ($sc-dispatch
+ #{tmp 2359}#
+ '(any any))))
+ (if (if #{tmp 2392}#
+ (@apply
+ (lambda (#{a 2395}# #{b 2396}#)
+ (eq? (syntax->datum #{a 2395}#)
+ #:rest))
+ #{tmp 2392}#)
+ #f)
+ (@apply
+ (lambda (#{a 2399}# #{b 2400}#)
+ (#{rest 2301}#
+ #{b 2400}#
+ #{req 2354}#
+ (reverse #{ropt 2355}#)
+ '()))
+ #{tmp 2392}#)
+ (let ((#{tmp 2401}# (list #{tmp 2359}#)))
+ (if (if #{tmp 2401}#
+ (@apply
+ (lambda (#{r 2403}#)
+ (#{id? 343}# #{r 2403}#))
+ #{tmp 2401}#)
+ #f)
+ (@apply
+ (lambda (#{r 2405}#)
+ (#{rest 2301}#
+ #{r 2405}#
+ #{req 2354}#
+ (reverse #{ropt 2355}#)
+ '()))
+ #{tmp 2401}#)
+ (let ((#{else 2407}# #{tmp 2359}#))
+ (syntax-violation
+ 'lambda*
+ "invalid optional argument list"
+ #{orig-args 2292}#
+ #{args 2353}#)))))))))))))))))
+ (#{key 2299}#
+ (lambda (#{args 2408}#
+ #{req 2409}#
+ #{opt 2410}#
+ #{rkey 2411}#)
+ (let ((#{tmp 2416}# #{args 2408}#))
+ (let ((#{tmp 2417}# ($sc-dispatch #{tmp 2416}# '())))
+ (if #{tmp 2417}#
+ (@apply
+ (lambda ()
+ (#{check 2303}#
+ #{req 2409}#
+ #{opt 2410}#
+ #f
+ (cons #f (reverse #{rkey 2411}#))))
+ #{tmp 2417}#)
+ (let ((#{tmp 2418}#
+ ($sc-dispatch #{tmp 2416}# '(any . any))))
+ (if (if #{tmp 2418}#
+ (@apply
+ (lambda (#{a 2421}# #{b 2422}#)
+ (#{id? 343}# #{a 2421}#))
+ #{tmp 2418}#)
+ #f)
+ (@apply
+ (lambda (#{a 2425}# #{b 2426}#)
+ (let ((#{tmp 2428}#
+ (symbol->keyword
+ (syntax->datum #{a 2425}#))))
+ (let ((#{k 2430}# #{tmp 2428}#))
+ (#{key 2299}#
+ #{b 2426}#
+ #{req 2409}#
+ #{opt 2410}#
+ (cons (cons #{k 2430}#
+ (cons #{a 2425}#
+ '(#(syntax-object
+ #f
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(k)
+ #((top))
+ #("i2429"))
+ #(ribcage
+ #(a b)
+ #((top) (top))
+ #("i2423" "i2424"))
+ #(ribcage () () ())
+ #(ribcage
+ #(args req opt rkey)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("i2412"
+ "i2413"
+ "i2414"
+ "i2415"))
+ #(ribcage
+ (check rest
+ key
+ opt
+ req)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i2302"
+ "i2300"
+ "i2298"
+ "i2296"
+ "i2294"))
+ #(ribcage
+ #(orig-args)
+ #((top))
+ #("i2293"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+
make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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)))))
+ #{rkey 2411}#)))))
+ #{tmp 2418}#)
+ (let ((#{tmp 2431}#
+ ($sc-dispatch
+ #{tmp 2416}#
+ '((any any) . any))))
+ (if (if #{tmp 2431}#
+ (@apply
+ (lambda (#{a 2435}# #{init 2436}# #{b 2437}#)
+ (#{id? 343}# #{a 2435}#))
+ #{tmp 2431}#)
+ #f)
+ (@apply
+ (lambda (#{a 2441}# #{init 2442}# #{b 2443}#)
+ (let ((#{tmp 2445}#
+ (symbol->keyword
+ (syntax->datum #{a 2441}#))))
+ (let ((#{k 2447}# #{tmp 2445}#))
+ (#{key 2299}#
+ #{b 2443}#
+ #{req 2409}#
+ #{opt 2410}#
+ (cons (list #{k 2447}#
+ #{a 2441}#
+ #{init 2442}#)
+ #{rkey 2411}#)))))
+ #{tmp 2431}#)
+ (let ((#{tmp 2448}#
+ ($sc-dispatch
+ #{tmp 2416}#
+ '((any any any) . any))))
+ (if (if #{tmp 2448}#
+ (@apply
+ (lambda (#{a 2453}#
+ #{init 2454}#
+ #{k 2455}#
+ #{b 2456}#)
+ (if (#{id? 343}# #{a 2453}#)
+ (keyword? (syntax->datum #{k 2455}#))
+ #f))
+ #{tmp 2448}#)
+ #f)
+ (@apply
+ (lambda (#{a 2463}#
+ #{init 2464}#
+ #{k 2465}#
+ #{b 2466}#)
+ (#{key 2299}#
+ #{b 2466}#
+ #{req 2409}#
+ #{opt 2410}#
+ (cons (list #{k 2465}#
+ #{a 2463}#
+ #{init 2464}#)
+ #{rkey 2411}#)))
+ #{tmp 2448}#)
+ (let ((#{tmp 2467}#
+ ($sc-dispatch #{tmp 2416}# '(any))))
+ (if (if #{tmp 2467}#
+ (@apply
+ (lambda (#{aok 2469}#)
+ (eq? (syntax->datum #{aok 2469}#)
+ #:allow-other-keys))
+ #{tmp 2467}#)
+ #f)
+ (@apply
+ (lambda (#{aok 2471}#)
+ (#{check 2303}#
+ #{req 2409}#
+ #{opt 2410}#
+ #f
+ (cons #t (reverse #{rkey 2411}#))))
+ #{tmp 2467}#)
+ (let ((#{tmp 2472}#
+ ($sc-dispatch
+ #{tmp 2416}#
+ '(any any any))))
+ (if (if #{tmp 2472}#
+ (@apply
+ (lambda (#{aok 2476}#
+ #{a 2477}#
+ #{b 2478}#)
+ (if (eq? (syntax->datum
+ #{aok 2476}#)
+ #:allow-other-keys)
+ (eq? (syntax->datum
+ #{a 2477}#)
+ #:rest)
+ #f))
+ #{tmp 2472}#)
+ #f)
+ (@apply
+ (lambda (#{aok 2484}#
+ #{a 2485}#
+ #{b 2486}#)
+ (#{rest 2301}#
+ #{b 2486}#
+ #{req 2409}#
+ #{opt 2410}#
+ (cons #t
+ (reverse #{rkey 2411}#))))
+ #{tmp 2472}#)
+ (let ((#{tmp 2487}#
+ ($sc-dispatch
+ #{tmp 2416}#
+ '(any . any))))
+ (if (if #{tmp 2487}#
+ (@apply
+ (lambda (#{aok 2490}#
+ #{r 2491}#)
+ (if (eq? (syntax->datum
+ #{aok 2490}#)
+
#:allow-other-keys)
+ (#{id? 343}# #{r 2491}#)
+ #f))
+ #{tmp 2487}#)
+ #f)
+ (@apply
+ (lambda (#{aok 2496}# #{r 2497}#)
+ (#{rest 2301}#
+ #{r 2497}#
+ #{req 2409}#
+ #{opt 2410}#
+ (cons #t
+ (reverse
+ #{rkey 2411}#))))
+ #{tmp 2487}#)
+ (let ((#{tmp 2498}#
+ ($sc-dispatch
+ #{tmp 2416}#
+ '(any any))))
+ (if (if #{tmp 2498}#
+ (@apply
+ (lambda (#{a 2501}#
+ #{b 2502}#)
+ (eq? (syntax->datum
+ #{a 2501}#)
+ #:rest))
+ #{tmp 2498}#)
+ #f)
+ (@apply
+ (lambda (#{a 2505}#
+ #{b 2506}#)
+ (#{rest 2301}#
+ #{b 2506}#
+ #{req 2409}#
+ #{opt 2410}#
+ (cons #f
+ (reverse
+ #{rkey 2411}#))))
+ #{tmp 2498}#)
+ (let ((#{tmp 2507}#
+ (list #{tmp 2416}#)))
+ (if (if #{tmp 2507}#
+ (@apply
+ (lambda (#{r 2509}#)
+ (#{id? 343}#
+ #{r 2509}#))
+ #{tmp 2507}#)
+ #f)
+ (@apply
+ (lambda (#{r 2511}#)
+ (#{rest 2301}#
+ #{r 2511}#
+ #{req 2409}#
+ #{opt 2410}#
+ (cons #f
+ (reverse
+ #{rkey
2411}#))))
+ #{tmp 2507}#)
+ (let ((#{else 2513}#
+ #{tmp 2416}#))
+ (syntax-violation
+ 'lambda*
+ "invalid keyword
argument list"
+ #{orig-args 2292}#
+ #{args
2408}#)))))))))))))))))))))))
+ (#{rest 2301}#
+ (lambda (#{args 2514}#
+ #{req 2515}#
+ #{opt 2516}#
+ #{kw 2517}#)
+ (let ((#{tmp 2522}# #{args 2514}#))
+ (let ((#{tmp 2523}# (list #{tmp 2522}#)))
+ (if (if #{tmp 2523}#
+ (@apply
+ (lambda (#{r 2525}#) (#{id? 343}# #{r 2525}#))
+ #{tmp 2523}#)
+ #f)
+ (@apply
+ (lambda (#{r 2527}#)
+ (#{check 2303}#
+ #{req 2515}#
+ #{opt 2516}#
+ #{r 2527}#
+ #{kw 2517}#))
+ #{tmp 2523}#)
+ (let ((#{else 2529}# #{tmp 2522}#))
+ (syntax-violation
+ 'lambda*
+ "invalid rest argument"
+ #{orig-args 2292}#
+ #{args 2514}#)))))))
+ (#{check 2303}#
+ (lambda (#{req 2530}#
+ #{opt 2531}#
+ #{rest 2532}#
+ #{kw 2533}#)
+ (if (#{distinct-bound-ids? 405}#
+ (append
+ #{req 2530}#
+ (map car #{opt 2531}#)
+ (if #{rest 2532}# (list #{rest 2532}#) '())
+ (if (pair? #{kw 2533}#)
+ (map cadr (cdr #{kw 2533}#))
+ '())))
+ (values
+ #{req 2530}#
+ #{opt 2531}#
+ #{rest 2532}#
+ #{kw 2533}#)
+ (syntax-violation
+ 'lambda*
+ "duplicate identifier in argument list"
+ #{orig-args 2292}#)))))
+ (#{req 2295}# #{orig-args 2292}# '()))))
+ (#{chi-lambda-case 447}#
+ (lambda (#{e 2541}#
+ #{r 2542}#
+ #{w 2543}#
+ #{s 2544}#
+ #{mod 2545}#
+ #{get-formals 2546}#
+ #{clauses 2547}#)
+ (letrec*
+ ((#{expand-req 2556}#
+ (lambda (#{req 2563}#
+ #{opt 2564}#
+ #{rest 2565}#
+ #{kw 2566}#
+ #{body 2567}#)
+ (let ((#{vars 2575}#
+ (map #{gen-var 451}# #{req 2563}#))
+ (#{labels 2576}#
+ (#{gen-labels 358}# #{req 2563}#)))
+ (let ((#{r* 2579}#
+ (#{extend-var-env 333}#
+ #{labels 2576}#
+ #{vars 2575}#
+ #{r 2542}#))
+ (#{w* 2580}#
+ (#{make-binding-wrap 387}#
+ #{req 2563}#
+ #{labels 2576}#
+ #{w 2543}#)))
+ (#{expand-opt 2558}#
+ (map syntax->datum #{req 2563}#)
+ #{opt 2564}#
+ #{rest 2565}#
+ #{kw 2566}#
+ #{body 2567}#
+ (reverse #{vars 2575}#)
+ #{r* 2579}#
+ #{w* 2580}#
+ '()
+ '())))))
+ (#{expand-opt 2558}#
+ (lambda (#{req 2581}#
+ #{opt 2582}#
+ #{rest 2583}#
+ #{kw 2584}#
+ #{body 2585}#
+ #{vars 2586}#
+ #{r* 2587}#
+ #{w* 2588}#
+ #{out 2589}#
+ #{inits 2590}#)
+ (if (pair? #{opt 2582}#)
+ (let ((#{tmp 2603}# (car #{opt 2582}#)))
+ (let ((#{tmp 2604}#
+ ($sc-dispatch #{tmp 2603}# '(any any))))
+ (if #{tmp 2604}#
+ (@apply
+ (lambda (#{id 2607}# #{i 2608}#)
+ (let ((#{v 2611}# (#{gen-var 451}# #{id 2607}#)))
+ (let ((#{l 2613}#
+ (#{gen-labels 358}# (list #{v 2611}#))))
+ (let ((#{r** 2615}#
+ (#{extend-var-env 333}#
+ #{l 2613}#
+ (list #{v 2611}#)
+ #{r* 2587}#)))
+ (let ((#{w** 2617}#
+ (#{make-binding-wrap 387}#
+ (list #{id 2607}#)
+ #{l 2613}#
+ #{w* 2588}#)))
+ (#{expand-opt 2558}#
+ #{req 2581}#
+ (cdr #{opt 2582}#)
+ #{rest 2583}#
+ #{kw 2584}#
+ #{body 2585}#
+ (cons #{v 2611}# #{vars 2586}#)
+ #{r** 2615}#
+ #{w** 2617}#
+ (cons (syntax->datum #{id 2607}#)
+ #{out 2589}#)
+ (cons (#{chi 423}#
+ #{i 2608}#
+ #{r* 2587}#
+ #{w* 2588}#
+ #{mod 2545}#)
+ #{inits 2590}#)))))))
+ #{tmp 2604}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 2603}#))))
+ (if #{rest 2583}#
+ (let ((#{v 2622}# (#{gen-var 451}# #{rest 2583}#)))
+ (let ((#{l 2624}#
+ (#{gen-labels 358}# (list #{v 2622}#))))
+ (let ((#{r* 2626}#
+ (#{extend-var-env 333}#
+ #{l 2624}#
+ (list #{v 2622}#)
+ #{r* 2587}#)))
+ (let ((#{w* 2628}#
+ (#{make-binding-wrap 387}#
+ (list #{rest 2583}#)
+ #{l 2624}#
+ #{w* 2588}#)))
+ (#{expand-kw 2560}#
+ #{req 2581}#
+ (if (pair? #{out 2589}#)
+ (reverse #{out 2589}#)
+ #f)
+ (syntax->datum #{rest 2583}#)
+ (if (pair? #{kw 2584}#)
+ (cdr #{kw 2584}#)
+ #{kw 2584}#)
+ #{body 2585}#
+ (cons #{v 2622}# #{vars 2586}#)
+ #{r* 2626}#
+ #{w* 2628}#
+ (if (pair? #{kw 2584}#) (car #{kw 2584}#) #f)
+ '()
+ #{inits 2590}#)))))
+ (#{expand-kw 2560}#
+ #{req 2581}#
+ (if (pair? #{out 2589}#)
+ (reverse #{out 2589}#)
+ #f)
+ #f
+ (if (pair? #{kw 2584}#)
+ (cdr #{kw 2584}#)
+ #{kw 2584}#)
+ #{body 2585}#
+ #{vars 2586}#
+ #{r* 2587}#
+ #{w* 2588}#
+ (if (pair? #{kw 2584}#) (car #{kw 2584}#) #f)
+ '()
+ #{inits 2590}#)))))
+ (#{expand-kw 2560}#
+ (lambda (#{req 2630}#
+ #{opt 2631}#
+ #{rest 2632}#
+ #{kw 2633}#
+ #{body 2634}#
+ #{vars 2635}#
+ #{r* 2636}#
+ #{w* 2637}#
+ #{aok 2638}#
+ #{out 2639}#
+ #{inits 2640}#)
+ (if (pair? #{kw 2633}#)
+ (let ((#{tmp 2654}# (car #{kw 2633}#)))
+ (let ((#{tmp 2655}#
+ ($sc-dispatch #{tmp 2654}# '(any any any))))
+ (if #{tmp 2655}#
+ (@apply
+ (lambda (#{k 2659}# #{id 2660}# #{i 2661}#)
+ (let ((#{v 2664}# (#{gen-var 451}# #{id 2660}#)))
+ (let ((#{l 2666}#
+ (#{gen-labels 358}# (list #{v 2664}#))))
+ (let ((#{r** 2668}#
+ (#{extend-var-env 333}#
+ #{l 2666}#
+ (list #{v 2664}#)
+ #{r* 2636}#)))
+ (let ((#{w** 2670}#
+ (#{make-binding-wrap 387}#
+ (list #{id 2660}#)
+ #{l 2666}#
+ #{w* 2637}#)))
+ (#{expand-kw 2560}#
+ #{req 2630}#
+ #{opt 2631}#
+ #{rest 2632}#
+ (cdr #{kw 2633}#)
+ #{body 2634}#
+ (cons #{v 2664}# #{vars 2635}#)
+ #{r** 2668}#
+ #{w** 2670}#
+ #{aok 2638}#
+ (cons (list (syntax->datum #{k 2659}#)
+ (syntax->datum #{id 2660}#)
+ #{v 2664}#)
+ #{out 2639}#)
+ (cons (#{chi 423}#
+ #{i 2661}#
+ #{r* 2636}#
+ #{w* 2637}#
+ #{mod 2545}#)
+ #{inits 2640}#)))))))
+ #{tmp 2655}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 2654}#))))
+ (#{expand-body 2562}#
+ #{req 2630}#
+ #{opt 2631}#
+ #{rest 2632}#
+ (if (let ((#{t 2674}# #{aok 2638}#))
+ (if #{t 2674}# #{t 2674}# (pair? #{out 2639}#)))
+ (cons #{aok 2638}# (reverse #{out 2639}#))
+ #f)
+ #{body 2634}#
+ (reverse #{vars 2635}#)
+ #{r* 2636}#
+ #{w* 2637}#
+ (reverse #{inits 2640}#)
+ '()))))
+ (#{expand-body 2562}#
+ (lambda (#{req 2676}#
+ #{opt 2677}#
+ #{rest 2678}#
+ #{kw 2679}#
+ #{body 2680}#
+ #{vars 2681}#
+ #{r* 2682}#
+ #{w* 2683}#
+ #{inits 2684}#
+ #{meta 2685}#)
+ (let ((#{tmp 2696}# #{body 2680}#))
+ (let ((#{tmp 2697}#
+ ($sc-dispatch #{tmp 2696}# '(any any . each-any))))
+ (if (if #{tmp 2697}#
+ (@apply
+ (lambda (#{docstring 2701}# #{e1 2702}# #{e2 2703}#)
+ (string? (syntax->datum #{docstring 2701}#)))
+ #{tmp 2697}#)
+ #f)
+ (@apply
+ (lambda (#{docstring 2707}# #{e1 2708}# #{e2 2709}#)
+ (#{expand-body 2562}#
+ #{req 2676}#
+ #{opt 2677}#
+ #{rest 2678}#
+ #{kw 2679}#
+ (cons #{e1 2708}# #{e2 2709}#)
+ #{vars 2681}#
+ #{r* 2682}#
+ #{w* 2683}#
+ #{inits 2684}#
+ (append
+ #{meta 2685}#
+ (list (cons 'documentation
+ (syntax->datum #{docstring 2707}#))))))
+ #{tmp 2697}#)
+ (let ((#{tmp 2712}#
+ ($sc-dispatch
+ #{tmp 2696}#
+ '(#(vector #(each (any . any)))
+ any
+ .
+ each-any))))
+ (if #{tmp 2712}#
+ (@apply
+ (lambda (#{k 2717}#
+ #{v 2718}#
+ #{e1 2719}#
+ #{e2 2720}#)
+ (#{expand-body 2562}#
+ #{req 2676}#
+ #{opt 2677}#
+ #{rest 2678}#
+ #{kw 2679}#
+ (cons #{e1 2719}# #{e2 2720}#)
+ #{vars 2681}#
+ #{r* 2682}#
+ #{w* 2683}#
+ #{inits 2684}#
+ (append
+ #{meta 2685}#
+ (syntax->datum
+ (map cons #{k 2717}# #{v 2718}#)))))
+ #{tmp 2712}#)
+ (let ((#{tmp 2724}#
+ ($sc-dispatch #{tmp 2696}# '(any . each-any))))
+ (if #{tmp 2724}#
+ (@apply
+ (lambda (#{e1 2727}# #{e2 2728}#)
+ (values
+ #{meta 2685}#
+ #{req 2676}#
+ #{opt 2677}#
+ #{rest 2678}#
+ #{kw 2679}#
+ #{inits 2684}#
+ #{vars 2681}#
+ (#{chi-body 431}#
+ (cons #{e1 2727}# #{e2 2728}#)
+ (#{source-wrap 411}#
+ #{e 2541}#
+ #{w 2543}#
+ #{s 2544}#
+ #{mod 2545}#)
+ #{r* 2682}#
+ #{w* 2683}#
+ #{mod 2545}#)))
+ #{tmp 2724}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 2696}#)))))))))))
+ (let ((#{tmp 2730}# #{clauses 2547}#))
+ (let ((#{tmp 2731}# ($sc-dispatch #{tmp 2730}# '())))
+ (if #{tmp 2731}#
+ (@apply (lambda () (values '() #f)) #{tmp 2731}#)
+ (let ((#{tmp 2732}#
+ ($sc-dispatch
+ #{tmp 2730}#
+ '((any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if #{tmp 2732}#
+ (@apply
+ (lambda (#{args 2739}#
+ #{e1 2740}#
+ #{e2 2741}#
+ #{args* 2742}#
+ #{e1* 2743}#
+ #{e2* 2744}#)
+ (call-with-values
+ (lambda () (#{get-formals 2546}# #{args 2739}#))
+ (lambda (#{req 2745}#
+ #{opt 2746}#
+ #{rest 2747}#
+ #{kw 2748}#)
+ (call-with-values
+ (lambda ()
+ (#{expand-req 2556}#
+ #{req 2745}#
+ #{opt 2746}#
+ #{rest 2747}#
+ #{kw 2748}#
+ (cons #{e1 2740}# #{e2 2741}#)))
+ (lambda (#{meta 2754}#
+ #{req 2755}#
+ #{opt 2756}#
+ #{rest 2757}#
+ #{kw 2758}#
+ #{inits 2759}#
+ #{vars 2760}#
+ #{body 2761}#)
+ (call-with-values
+ (lambda ()
+ (#{chi-lambda-case 447}#
+ #{e 2541}#
+ #{r 2542}#
+ #{w 2543}#
+ #{s 2544}#
+ #{mod 2545}#
+ #{get-formals 2546}#
+ (map (lambda (#{tmp 2772}#
+ #{tmp 2771}#
+ #{tmp 2770}#)
+ (cons #{tmp 2770}#
+ (cons #{tmp 2771}#
+ #{tmp 2772}#)))
+ #{e2* 2744}#
+ #{e1* 2743}#
+ #{args* 2742}#)))
+ (lambda (#{meta* 2774}# #{else* 2775}#)
+ (values
+ (append #{meta 2754}# #{meta* 2774}#)
+ (#{build-lambda-case 289}#
+ #{s 2544}#
+ #{req 2755}#
+ #{opt 2756}#
+ #{rest 2757}#
+ #{kw 2758}#
+ #{inits 2759}#
+ #{vars 2760}#
+ #{body 2761}#
+ #{else* 2775}#)))))))))
+ #{tmp 2732}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 2730}#)))))))))
+ (#{strip 449}#
+ (lambda (#{x 2778}# #{w 2779}#)
+ (if (memq 'top (car #{w 2779}#))
+ #{x 2778}#
+ (letrec*
+ ((#{f 2786}#
+ (lambda (#{x 2787}#)
+ (if (#{syntax-object? 309}# #{x 2787}#)
+ (#{strip 449}#
+ (#{syntax-object-expression 311}# #{x 2787}#)
+ (#{syntax-object-wrap 313}# #{x 2787}#))
+ (if (pair? #{x 2787}#)
+ (let ((#{a 2794}# (#{f 2786}# (car #{x 2787}#)))
+ (#{d 2795}# (#{f 2786}# (cdr #{x 2787}#))))
+ (if (if (eq? #{a 2794}# (car #{x 2787}#))
+ (eq? #{d 2795}# (cdr #{x 2787}#))
+ #f)
+ #{x 2787}#
+ (cons #{a 2794}# #{d 2795}#)))
+ (if (vector? #{x 2787}#)
+ (let ((#{old 2801}# (vector->list #{x 2787}#)))
+ (let ((#{new 2803}# (map #{f 2786}# #{old 2801}#)))
+ (letrec*
+ ((#{lp 2807}#
+ (lambda (#{l1 2808}# #{l2 2809}#)
+ (if (null? #{l1 2808}#)
+ #{x 2787}#
+ (if (eq? (car #{l1 2808}#)
+ (car #{l2 2809}#))
+ (#{lp 2807}#
+ (cdr #{l1 2808}#)
+ (cdr #{l2 2809}#))
+ (list->vector #{new 2803}#))))))
+ (#{lp 2807}# #{old 2801}# #{new 2803}#))))
+ #{x 2787}#))))))
+ (#{f 2786}# #{x 2778}#)))))
+ (#{gen-var 451}#
+ (lambda (#{id 2811}#)
+ (let ((#{id 2814}#
+ (if (#{syntax-object? 309}# #{id 2811}#)
+ (#{syntax-object-expression 311}# #{id 2811}#)
+ #{id 2811}#)))
+ (gensym
+ (string-append (symbol->string #{id 2814}#) " ")))))
+ (#{lambda-var-list 453}#
+ (lambda (#{vars 2816}#)
+ (letrec*
+ ((#{lvl 2822}#
+ (lambda (#{vars 2823}# #{ls 2824}# #{w 2825}#)
+ (if (pair? #{vars 2823}#)
+ (#{lvl 2822}#
+ (cdr #{vars 2823}#)
+ (cons (#{wrap 409}# (car #{vars 2823}#) #{w 2825}# #f)
+ #{ls 2824}#)
+ #{w 2825}#)
+ (if (#{id? 343}# #{vars 2823}#)
+ (cons (#{wrap 409}# #{vars 2823}# #{w 2825}# #f)
+ #{ls 2824}#)
+ (if (null? #{vars 2823}#)
+ #{ls 2824}#
+ (if (#{syntax-object? 309}# #{vars 2823}#)
+ (#{lvl 2822}#
+ (#{syntax-object-expression 311}# #{vars 2823}#)
+ #{ls 2824}#
+ (#{join-wraps 391}#
+ #{w 2825}#
+ (#{syntax-object-wrap 313}# #{vars 2823}#)))
+ (cons #{vars 2823}# #{ls 2824}#))))))))
+ (#{lvl 2822}# #{vars 2816}# '() '(()))))))
+ (begin
+ (lambda (#{x 1163}# #{update 1164}#)
+ (vector-set! #{x 1163}# 1 #{update 1164}#))
+ (lambda (#{x 1167}# #{update 1168}#)
+ (vector-set! #{x 1167}# 2 #{update 1168}#))
+ (lambda (#{x 1171}# #{update 1172}#)
+ (vector-set! #{x 1171}# 3 #{update 1172}#))
+ (lambda (#{x 1252}#)
+ (if (vector? #{x 1252}#)
+ (if (= (vector-length #{x 1252}#) 4)
+ (eq? (vector-ref #{x 1252}# 0) 'ribcage)
+ #f)
+ #f))
+ (#{global-extend 339}#
+ 'local-syntax
+ 'letrec-syntax
+ #t)
+ (#{global-extend 339}#
+ 'local-syntax
+ 'let-syntax
+ #f)
+ (#{global-extend 339}#
+ 'core
+ 'fluid-let-syntax
+ (lambda (#{e 2836}#
+ #{r 2837}#
+ #{w 2838}#
+ #{s 2839}#
+ #{mod 2840}#)
+ (let ((#{tmp 2846}# #{e 2836}#))
+ (let ((#{tmp 2847}#
+ ($sc-dispatch
+ #{tmp 2846}#
+ '(_ #(each (any any)) any . each-any))))
+ (if (if #{tmp 2847}#
+ (@apply
+ (lambda (#{var 2852}#
+ #{val 2853}#
+ #{e1 2854}#
+ #{e2 2855}#)
+ (#{valid-bound-ids? 403}# #{var 2852}#))
+ #{tmp 2847}#)
+ #f)
+ (@apply
+ (lambda (#{var 2861}#
+ #{val 2862}#
+ #{e1 2863}#
+ #{e2 2864}#)
+ (let ((#{names 2866}#
+ (map (lambda (#{x 2867}#)
+ (#{id-var-name 397}# #{x 2867}# #{w 2838}#))
+ #{var 2861}#)))
+ (begin
+ (for-each
+ (lambda (#{id 2870}# #{n 2871}#)
+ (let ((#{atom-key 2876}#
+ (car (#{lookup 337}#
+ #{n 2871}#
+ #{r 2837}#
+ #{mod 2840}#))))
+ (if (memv #{atom-key 2876}# '(displaced-lexical))
+ (syntax-violation
+ 'fluid-let-syntax
+ "identifier out of context"
+ #{e 2836}#
+ (#{source-wrap 411}#
+ #{id 2870}#
+ #{w 2838}#
+ #{s 2839}#
+ #{mod 2840}#)))))
+ #{var 2861}#
+ #{names 2866}#)
+ (#{chi-body 431}#
+ (cons #{e1 2863}# #{e2 2864}#)
+ (#{source-wrap 411}#
+ #{e 2836}#
+ #{w 2838}#
+ #{s 2839}#
+ #{mod 2840}#)
+ (#{extend-env 331}#
+ #{names 2866}#
+ (let ((#{trans-r 2882}#
+ (#{macros-only-env 335}# #{r 2837}#)))
+ (map (lambda (#{x 2883}#)
+ (cons 'macro
+ (#{eval-local-transformer 435}#
+ (#{chi 423}#
+ #{x 2883}#
+ #{trans-r 2882}#
+ #{w 2838}#
+ #{mod 2840}#)
+ #{mod 2840}#)))
+ #{val 2862}#))
+ #{r 2837}#)
+ #{w 2838}#
+ #{mod 2840}#))))
+ #{tmp 2847}#)
+ (let ((#{_ 2888}# #{tmp 2846}#))
+ (syntax-violation
+ 'fluid-let-syntax
+ "bad syntax"
+ (#{source-wrap 411}#
+ #{e 2836}#
+ #{w 2838}#
+ #{s 2839}#
+ #{mod 2840}#))))))))
+ (#{global-extend 339}#
+ 'core
+ 'quote
+ (lambda (#{e 2889}#
+ #{r 2890}#
+ #{w 2891}#
+ #{s 2892}#
+ #{mod 2893}#)
+ (let ((#{tmp 2899}# #{e 2889}#))
+ (let ((#{tmp 2900}#
+ ($sc-dispatch #{tmp 2899}# '(_ any))))
+ (if #{tmp 2900}#
+ (@apply
+ (lambda (#{e 2902}#)
+ (#{build-data 295}#
+ #{s 2892}#
+ (#{strip 449}# #{e 2902}# #{w 2891}#)))
+ #{tmp 2900}#)
+ (let ((#{_ 2904}# #{tmp 2899}#))
+ (syntax-violation
+ 'quote
+ "bad syntax"
+ (#{source-wrap 411}#
+ #{e 2889}#
+ #{w 2891}#
+ #{s 2892}#
+ #{mod 2893}#))))))))
+ (#{global-extend 339}#
+ 'core
+ 'syntax
+ (letrec*
+ ((#{gen-syntax 2906}#
+ (lambda (#{src 2921}#
+ #{e 2922}#
+ #{r 2923}#
+ #{maps 2924}#
+ #{ellipsis? 2925}#
+ #{mod 2926}#)
+ (if (#{id? 343}# #{e 2922}#)
+ (let ((#{label 2934}#
+ (#{id-var-name 397}# #{e 2922}# '(()))))
+ (let ((#{b 2937}#
+ (#{lookup 337}#
+ #{label 2934}#
+ #{r 2923}#
+ #{mod 2926}#)))
+ (if (eq? (car #{b 2937}#) 'syntax)
+ (call-with-values
+ (lambda ()
+ (let ((#{var.lev 2940}# (cdr #{b 2937}#)))
+ (#{gen-ref 2908}#
+ #{src 2921}#
+ (car #{var.lev 2940}#)
+ (cdr #{var.lev 2940}#)
+ #{maps 2924}#)))
+ (lambda (#{var 2942}# #{maps 2943}#)
+ (values (list 'ref #{var 2942}#) #{maps 2943}#)))
+ (if (#{ellipsis? 2925}# #{e 2922}#)
+ (syntax-violation
+ 'syntax
+ "misplaced ellipsis"
+ #{src 2921}#)
+ (values (list 'quote #{e 2922}#) #{maps 2924}#)))))
+ (let ((#{tmp 2948}# #{e 2922}#))
+ (let ((#{tmp 2949}#
+ ($sc-dispatch #{tmp 2948}# '(any any))))
+ (if (if #{tmp 2949}#
+ (@apply
+ (lambda (#{dots 2952}# #{e 2953}#)
+ (#{ellipsis? 2925}# #{dots 2952}#))
+ #{tmp 2949}#)
+ #f)
+ (@apply
+ (lambda (#{dots 2956}# #{e 2957}#)
+ (#{gen-syntax 2906}#
+ #{src 2921}#
+ #{e 2957}#
+ #{r 2923}#
+ #{maps 2924}#
+ (lambda (#{x 2958}#) #f)
+ #{mod 2926}#))
+ #{tmp 2949}#)
+ (let ((#{tmp 2960}#
+ ($sc-dispatch #{tmp 2948}# '(any any . any))))
+ (if (if #{tmp 2960}#
+ (@apply
+ (lambda (#{x 2964}# #{dots 2965}# #{y 2966}#)
+ (#{ellipsis? 2925}# #{dots 2965}#))
+ #{tmp 2960}#)
+ #f)
+ (@apply
+ (lambda (#{x 2970}# #{dots 2971}# #{y 2972}#)
+ (letrec*
+ ((#{f 2976}#
+ (lambda (#{y 2977}# #{k 2978}#)
+ (let ((#{tmp 2985}# #{y 2977}#))
+ (let ((#{tmp 2986}#
+ ($sc-dispatch
+ #{tmp 2985}#
+ '(any . any))))
+ (if (if #{tmp 2986}#
+ (@apply
+ (lambda (#{dots 2989}#
+ #{y 2990}#)
+ (#{ellipsis? 2925}#
+ #{dots 2989}#))
+ #{tmp 2986}#)
+ #f)
+ (@apply
+ (lambda (#{dots 2993}# #{y 2994}#)
+ (#{f 2976}#
+ #{y 2994}#
+ (lambda (#{maps 2995}#)
+ (call-with-values
+ (lambda ()
+ (#{k 2978}#
+ (cons '()
+ #{maps 2995}#)))
+ (lambda (#{x 2997}#
+ #{maps 2998}#)
+ (if (null? (car #{maps
2998}#))
+ (syntax-violation
+ 'syntax
+ "extra ellipsis"
+ #{src 2921}#)
+ (values
+ (#{gen-mappend 2910}#
+ #{x 2997}#
+ (car #{maps
2998}#))
+ (cdr #{maps
2998}#))))))))
+ #{tmp 2986}#)
+ (let ((#{_ 3002}# #{tmp 2985}#))
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax 2906}#
+ #{src 2921}#
+ #{y 2977}#
+ #{r 2923}#
+ #{maps 2924}#
+ #{ellipsis? 2925}#
+ #{mod 2926}#))
+ (lambda (#{y 3003}#
+ #{maps 3004}#)
+ (call-with-values
+ (lambda ()
+ (#{k 2978}# #{maps 3004}#))
+ (lambda (#{x 3007}#
+ #{maps 3008}#)
+ (values
+ (#{gen-append 2916}#
+ #{x 3007}#
+ #{y 3003}#)
+ #{maps 3008}#))))))))))))
+ (#{f 2976}#
+ #{y 2972}#
+ (lambda (#{maps 2979}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax 2906}#
+ #{src 2921}#
+ #{x 2970}#
+ #{r 2923}#
+ (cons '() #{maps 2979}#)
+ #{ellipsis? 2925}#
+ #{mod 2926}#))
+ (lambda (#{x 2981}# #{maps 2982}#)
+ (if (null? (car #{maps 2982}#))
+ (syntax-violation
+ 'syntax
+ "extra ellipsis"
+ #{src 2921}#)
+ (values
+ (#{gen-map 2912}#
+ #{x 2981}#
+ (car #{maps 2982}#))
+ (cdr #{maps 2982}#)))))))))
+ #{tmp 2960}#)
+ (let ((#{tmp 3011}#
+ ($sc-dispatch #{tmp 2948}# '(any . any))))
+ (if #{tmp 3011}#
+ (@apply
+ (lambda (#{x 3014}# #{y 3015}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax 2906}#
+ #{src 2921}#
+ #{x 3014}#
+ #{r 2923}#
+ #{maps 2924}#
+ #{ellipsis? 2925}#
+ #{mod 2926}#))
+ (lambda (#{x 3016}# #{maps 3017}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax 2906}#
+ #{src 2921}#
+ #{y 3015}#
+ #{r 2923}#
+ #{maps 3017}#
+ #{ellipsis? 2925}#
+ #{mod 2926}#))
+ (lambda (#{y 3020}# #{maps 3021}#)
+ (values
+ (#{gen-cons 2914}#
+ #{x 3016}#
+ #{y 3020}#)
+ #{maps 3021}#))))))
+ #{tmp 3011}#)
+ (let ((#{tmp 3024}#
+ ($sc-dispatch
+ #{tmp 2948}#
+ '#(vector (any . each-any)))))
+ (if #{tmp 3024}#
+ (@apply
+ (lambda (#{e1 3027}# #{e2 3028}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax 2906}#
+ #{src 2921}#
+ (cons #{e1 3027}# #{e2 3028}#)
+ #{r 2923}#
+ #{maps 2924}#
+ #{ellipsis? 2925}#
+ #{mod 2926}#))
+ (lambda (#{e 3030}# #{maps 3031}#)
+ (values
+ (#{gen-vector 2918}# #{e 3030}#)
+ #{maps 3031}#))))
+ #{tmp 3024}#)
+ (let ((#{_ 3035}# #{tmp 2948}#))
+ (values
+ (list 'quote #{e 2922}#)
+ #{maps 2924}#))))))))))))))
+ (#{gen-ref 2908}#
+ (lambda (#{src 3037}#
+ #{var 3038}#
+ #{level 3039}#
+ #{maps 3040}#)
+ (if (= #{level 3039}# 0)
+ (values #{var 3038}# #{maps 3040}#)
+ (if (null? #{maps 3040}#)
+ (syntax-violation
+ 'syntax
+ "missing ellipsis"
+ #{src 3037}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-ref 2908}#
+ #{src 3037}#
+ #{var 3038}#
+ (#{1-}# #{level 3039}#)
+ (cdr #{maps 3040}#)))
+ (lambda (#{outer-var 3047}# #{outer-maps 3048}#)
+ (let ((#{b 3052}#
+ (assq #{outer-var 3047}# (car #{maps 3040}#))))
+ (if #{b 3052}#
+ (values (cdr #{b 3052}#) #{maps 3040}#)
+ (let ((#{inner-var 3054}# (#{gen-var 451}# 'tmp)))
+ (values
+ #{inner-var 3054}#
+ (cons (cons (cons #{outer-var 3047}#
+ #{inner-var 3054}#)
+ (car #{maps 3040}#))
+ #{outer-maps 3048}#)))))))))))
+ (#{gen-mappend 2910}#
+ (lambda (#{e 3055}# #{map-env 3056}#)
+ (list 'apply
+ '(primitive append)
+ (#{gen-map 2912}# #{e 3055}# #{map-env 3056}#))))
+ (#{gen-map 2912}#
+ (lambda (#{e 3060}# #{map-env 3061}#)
+ (let ((#{formals 3066}# (map cdr #{map-env 3061}#))
+ (#{actuals 3067}#
+ (map (lambda (#{x 3068}#)
+ (list 'ref (car #{x 3068}#)))
+ #{map-env 3061}#)))
+ (if (eq? (car #{e 3060}#) 'ref)
+ (car #{actuals 3067}#)
+ (if (and-map
+ (lambda (#{x 3075}#)
+ (if (eq? (car #{x 3075}#) 'ref)
+ (memq (car (cdr #{x 3075}#)) #{formals 3066}#)
+ #f))
+ (cdr #{e 3060}#))
+ (cons 'map
+ (cons (list 'primitive (car #{e 3060}#))
+ (map (let ((#{r 3081}#
+ (map cons
+ #{formals 3066}#
+ #{actuals 3067}#)))
+ (lambda (#{x 3082}#)
+ (cdr (assq (car (cdr #{x 3082}#))
+ #{r 3081}#))))
+ (cdr #{e 3060}#))))
+ (cons 'map
+ (cons (list 'lambda #{formals 3066}# #{e 3060}#)
+ #{actuals 3067}#)))))))
+ (#{gen-cons 2914}#
+ (lambda (#{x 3086}# #{y 3087}#)
+ (let ((#{atom-key 3092}# (car #{y 3087}#)))
+ (if (memv #{atom-key 3092}# '(quote))
+ (if (eq? (car #{x 3086}#) 'quote)
+ (list 'quote
+ (cons (car (cdr #{x 3086}#))
+ (car (cdr #{y 3087}#))))
+ (if (eq? (car (cdr #{y 3087}#)) '())
+ (list 'list #{x 3086}#)
+ (list 'cons #{x 3086}# #{y 3087}#)))
+ (if (memv #{atom-key 3092}# '(list))
+ (cons 'list (cons #{x 3086}# (cdr #{y 3087}#)))
+ (list 'cons #{x 3086}# #{y 3087}#))))))
+ (#{gen-append 2916}#
+ (lambda (#{x 3101}# #{y 3102}#)
+ (if (equal? #{y 3102}# ''())
+ #{x 3101}#
+ (list 'append #{x 3101}# #{y 3102}#))))
+ (#{gen-vector 2918}#
+ (lambda (#{x 3106}#)
+ (if (eq? (car #{x 3106}#) 'list)
+ (cons 'vector (cdr #{x 3106}#))
+ (if (eq? (car #{x 3106}#) 'quote)
+ (list 'quote
+ (list->vector (car (cdr #{x 3106}#))))
+ (list 'list->vector #{x 3106}#)))))
+ (#{regen 2920}#
+ (lambda (#{x 3116}#)
+ (let ((#{atom-key 3120}# (car #{x 3116}#)))
+ (if (memv #{atom-key 3120}# '(ref))
+ (#{build-lexical-reference 273}#
+ 'value
+ #f
+ (car (cdr #{x 3116}#))
+ (car (cdr #{x 3116}#)))
+ (if (memv #{atom-key 3120}# '(primitive))
+ (#{build-primref 293}# #f (car (cdr #{x 3116}#)))
+ (if (memv #{atom-key 3120}# '(quote))
+ (#{build-data 295}# #f (car (cdr #{x 3116}#)))
+ (if (memv #{atom-key 3120}# '(lambda))
+ (if (list? (car (cdr #{x 3116}#)))
+ (#{build-simple-lambda 285}#
+ #f
+ (car (cdr #{x 3116}#))
+ #f
+ (car (cdr #{x 3116}#))
+ '()
+ (#{regen 2920}# (car (cdr (cdr #{x 3116}#)))))
+ (error "how did we get here" #{x 3116}#))
+ (#{build-primcall 291}#
+ #f
+ (car #{x 3116}#)
+ (map #{regen 2920}# (cdr #{x 3116}#)))))))))))
+ (lambda (#{e 3131}#
+ #{r 3132}#
+ #{w 3133}#
+ #{s 3134}#
+ #{mod 3135}#)
+ (let ((#{e 3142}#
+ (#{source-wrap 411}#
+ #{e 3131}#
+ #{w 3133}#
+ #{s 3134}#
+ #{mod 3135}#)))
+ (let ((#{tmp 3143}# #{e 3142}#))
+ (let ((#{tmp 3144}#
+ ($sc-dispatch #{tmp 3143}# '(_ any))))
+ (if #{tmp 3144}#
+ (@apply
+ (lambda (#{x 3146}#)
+ (call-with-values
+ (lambda ()
+ (#{gen-syntax 2906}#
+ #{e 3142}#
+ #{x 3146}#
+ #{r 3132}#
+ '()
+ #{ellipsis? 439}#
+ #{mod 3135}#))
+ (lambda (#{e 3147}# #{maps 3148}#)
+ (#{regen 2920}# #{e 3147}#))))
+ #{tmp 3144}#)
+ (let ((#{_ 3152}# #{tmp 3143}#))
+ (syntax-violation
+ 'syntax
+ "bad `syntax' form"
+ #{e 3142}#)))))))))
+ (#{global-extend 339}#
+ 'core
+ 'lambda
+ (lambda (#{e 3153}#
+ #{r 3154}#
+ #{w 3155}#
+ #{s 3156}#
+ #{mod 3157}#)
+ (let ((#{tmp 3163}# #{e 3153}#))
+ (let ((#{tmp 3164}#
+ ($sc-dispatch
+ #{tmp 3163}#
+ '(_ any any . each-any))))
+ (if #{tmp 3164}#
+ (@apply
+ (lambda (#{args 3168}# #{e1 3169}# #{e2 3170}#)
+ (call-with-values
+ (lambda ()
+ (#{lambda-formals 441}# #{args 3168}#))
+ (lambda (#{req 3171}#
+ #{opt 3172}#
+ #{rest 3173}#
+ #{kw 3174}#)
+ (letrec*
+ ((#{lp 3182}#
+ (lambda (#{body 3183}# #{meta 3184}#)
+ (let ((#{tmp 3186}# #{body 3183}#))
+ (let ((#{tmp 3187}#
+ ($sc-dispatch
+ #{tmp 3186}#
+ '(any any . each-any))))
+ (if (if #{tmp 3187}#
+ (@apply
+ (lambda (#{docstring 3191}#
+ #{e1 3192}#
+ #{e2 3193}#)
+ (string?
+ (syntax->datum
+ #{docstring 3191}#)))
+ #{tmp 3187}#)
+ #f)
+ (@apply
+ (lambda (#{docstring 3197}#
+ #{e1 3198}#
+ #{e2 3199}#)
+ (#{lp 3182}#
+ (cons #{e1 3198}# #{e2 3199}#)
+ (append
+ #{meta 3184}#
+ (list (cons 'documentation
+ (syntax->datum
+ #{docstring
3197}#))))))
+ #{tmp 3187}#)
+ (let ((#{tmp 3202}#
+ ($sc-dispatch
+ #{tmp 3186}#
+ '(#(vector #(each (any . any)))
+ any
+ .
+ each-any))))
+ (if #{tmp 3202}#
+ (@apply
+ (lambda (#{k 3207}#
+ #{v 3208}#
+ #{e1 3209}#
+ #{e2 3210}#)
+ (#{lp 3182}#
+ (cons #{e1 3209}# #{e2 3210}#)
+ (append
+ #{meta 3184}#
+ (syntax->datum
+ (map cons
+ #{k 3207}#
+ #{v 3208}#)))))
+ #{tmp 3202}#)
+ (let ((#{_ 3215}# #{tmp 3186}#))
+ (#{chi-simple-lambda 443}#
+ #{e 3153}#
+ #{r 3154}#
+ #{w 3155}#
+ #{s 3156}#
+ #{mod 3157}#
+ #{req 3171}#
+ #{rest 3173}#
+ #{meta 3184}#
+ #{body 3183}#))))))))))
+ (#{lp 3182}# (cons #{e1 3169}# #{e2 3170}#) '())))))
+ #{tmp 3164}#)
+ (let ((#{_ 3217}# #{tmp 3163}#))
+ (syntax-violation
+ 'lambda
+ "bad lambda"
+ #{e 3153}#)))))))
+ (#{global-extend 339}#
+ 'core
+ 'lambda*
+ (lambda (#{e 3218}#
+ #{r 3219}#
+ #{w 3220}#
+ #{s 3221}#
+ #{mod 3222}#)
+ (let ((#{tmp 3228}# #{e 3218}#))
+ (let ((#{tmp 3229}#
+ ($sc-dispatch
+ #{tmp 3228}#
+ '(_ any any . each-any))))
+ (if #{tmp 3229}#
+ (@apply
+ (lambda (#{args 3233}# #{e1 3234}# #{e2 3235}#)
+ (call-with-values
+ (lambda ()
+ (#{chi-lambda-case 447}#
+ #{e 3218}#
+ #{r 3219}#
+ #{w 3220}#
+ #{s 3221}#
+ #{mod 3222}#
+ #{lambda*-formals 445}#
+ (list (cons #{args 3233}#
+ (cons #{e1 3234}# #{e2 3235}#)))))
+ (lambda (#{meta 3237}# #{lcase 3238}#)
+ (#{build-case-lambda 287}#
+ #{s 3221}#
+ #{meta 3237}#
+ #{lcase 3238}#))))
+ #{tmp 3229}#)
+ (let ((#{_ 3242}# #{tmp 3228}#))
+ (syntax-violation
+ 'lambda
+ "bad lambda*"
+ #{e 3218}#)))))))
+ (#{global-extend 339}#
+ 'core
+ 'case-lambda
+ (lambda (#{e 3243}#
+ #{r 3244}#
+ #{w 3245}#
+ #{s 3246}#
+ #{mod 3247}#)
+ (let ((#{tmp 3253}# #{e 3243}#))
+ (let ((#{tmp 3254}#
+ ($sc-dispatch
+ #{tmp 3253}#
+ '(_ (any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if #{tmp 3254}#
+ (@apply
+ (lambda (#{args 3261}#
+ #{e1 3262}#
+ #{e2 3263}#
+ #{args* 3264}#
+ #{e1* 3265}#
+ #{e2* 3266}#)
+ (call-with-values
+ (lambda ()
+ (#{chi-lambda-case 447}#
+ #{e 3243}#
+ #{r 3244}#
+ #{w 3245}#
+ #{s 3246}#
+ #{mod 3247}#
+ #{lambda-formals 441}#
+ (cons (cons #{args 3261}#
+ (cons #{e1 3262}# #{e2 3263}#))
+ (map (lambda (#{tmp 3270}#
+ #{tmp 3269}#
+ #{tmp 3268}#)
+ (cons #{tmp 3268}#
+ (cons #{tmp 3269}# #{tmp 3270}#)))
+ #{e2* 3266}#
+ #{e1* 3265}#
+ #{args* 3264}#))))
+ (lambda (#{meta 3272}# #{lcase 3273}#)
+ (#{build-case-lambda 287}#
+ #{s 3246}#
+ #{meta 3272}#
+ #{lcase 3273}#))))
+ #{tmp 3254}#)
+ (let ((#{_ 3277}# #{tmp 3253}#))
+ (syntax-violation
+ 'case-lambda
+ "bad case-lambda"
+ #{e 3243}#)))))))
+ (#{global-extend 339}#
+ 'core
+ 'case-lambda*
+ (lambda (#{e 3278}#
+ #{r 3279}#
+ #{w 3280}#
+ #{s 3281}#
+ #{mod 3282}#)
+ (let ((#{tmp 3288}# #{e 3278}#))
+ (let ((#{tmp 3289}#
+ ($sc-dispatch
+ #{tmp 3288}#
+ '(_ (any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if #{tmp 3289}#
+ (@apply
+ (lambda (#{args 3296}#
+ #{e1 3297}#
+ #{e2 3298}#
+ #{args* 3299}#
+ #{e1* 3300}#
+ #{e2* 3301}#)
+ (call-with-values
+ (lambda ()
+ (#{chi-lambda-case 447}#
+ #{e 3278}#
+ #{r 3279}#
+ #{w 3280}#
+ #{s 3281}#
+ #{mod 3282}#
+ #{lambda*-formals 445}#
+ (cons (cons #{args 3296}#
+ (cons #{e1 3297}# #{e2 3298}#))
+ (map (lambda (#{tmp 3305}#
+ #{tmp 3304}#
+ #{tmp 3303}#)
+ (cons #{tmp 3303}#
+ (cons #{tmp 3304}# #{tmp 3305}#)))
+ #{e2* 3301}#
+ #{e1* 3300}#
+ #{args* 3299}#))))
+ (lambda (#{meta 3307}# #{lcase 3308}#)
+ (#{build-case-lambda 287}#
+ #{s 3281}#
+ #{meta 3307}#
+ #{lcase 3308}#))))
+ #{tmp 3289}#)
+ (let ((#{_ 3312}# #{tmp 3288}#))
+ (syntax-violation
+ 'case-lambda
+ "bad case-lambda*"
+ #{e 3278}#)))))))
+ (#{global-extend 339}#
+ 'core
+ 'let
+ (letrec*
+ ((#{chi-let 3314}#
+ (lambda (#{e 3315}#
+ #{r 3316}#
+ #{w 3317}#
+ #{s 3318}#
+ #{mod 3319}#
+ #{constructor 3320}#
+ #{ids 3321}#
+ #{vals 3322}#
+ #{exps 3323}#)
+ (if (not (#{valid-bound-ids? 403}# #{ids 3321}#))
+ (syntax-violation
+ 'let
+ "duplicate bound variable"
+ #{e 3315}#)
+ (let ((#{labels 3335}#
+ (#{gen-labels 358}# #{ids 3321}#))
+ (#{new-vars 3336}#
+ (map #{gen-var 451}# #{ids 3321}#)))
+ (let ((#{nw 3339}#
+ (#{make-binding-wrap 387}#
+ #{ids 3321}#
+ #{labels 3335}#
+ #{w 3317}#))
+ (#{nr 3340}#
+ (#{extend-var-env 333}#
+ #{labels 3335}#
+ #{new-vars 3336}#
+ #{r 3316}#)))
+ (#{constructor 3320}#
+ #{s 3318}#
+ (map syntax->datum #{ids 3321}#)
+ #{new-vars 3336}#
+ (map (lambda (#{x 3341}#)
+ (#{chi 423}#
+ #{x 3341}#
+ #{r 3316}#
+ #{w 3317}#
+ #{mod 3319}#))
+ #{vals 3322}#)
+ (#{chi-body 431}#
+ #{exps 3323}#
+ (#{source-wrap 411}#
+ #{e 3315}#
+ #{nw 3339}#
+ #{s 3318}#
+ #{mod 3319}#)
+ #{nr 3340}#
+ #{nw 3339}#
+ #{mod 3319}#))))))))
+ (lambda (#{e 3343}#
+ #{r 3344}#
+ #{w 3345}#
+ #{s 3346}#
+ #{mod 3347}#)
+ (let ((#{tmp 3353}# #{e 3343}#))
+ (let ((#{tmp 3354}#
+ ($sc-dispatch
+ #{tmp 3353}#
+ '(_ #(each (any any)) any . each-any))))
+ (if (if #{tmp 3354}#
+ (@apply
+ (lambda (#{id 3359}#
+ #{val 3360}#
+ #{e1 3361}#
+ #{e2 3362}#)
+ (and-map #{id? 343}# #{id 3359}#))
+ #{tmp 3354}#)
+ #f)
+ (@apply
+ (lambda (#{id 3368}#
+ #{val 3369}#
+ #{e1 3370}#
+ #{e2 3371}#)
+ (#{chi-let 3314}#
+ #{e 3343}#
+ #{r 3344}#
+ #{w 3345}#
+ #{s 3346}#
+ #{mod 3347}#
+ #{build-let 299}#
+ #{id 3368}#
+ #{val 3369}#
+ (cons #{e1 3370}# #{e2 3371}#)))
+ #{tmp 3354}#)
+ (let ((#{tmp 3375}#
+ ($sc-dispatch
+ #{tmp 3353}#
+ '(_ any #(each (any any)) any . each-any))))
+ (if (if #{tmp 3375}#
+ (@apply
+ (lambda (#{f 3381}#
+ #{id 3382}#
+ #{val 3383}#
+ #{e1 3384}#
+ #{e2 3385}#)
+ (if (#{id? 343}# #{f 3381}#)
+ (and-map #{id? 343}# #{id 3382}#)
+ #f))
+ #{tmp 3375}#)
+ #f)
+ (@apply
+ (lambda (#{f 3394}#
+ #{id 3395}#
+ #{val 3396}#
+ #{e1 3397}#
+ #{e2 3398}#)
+ (#{chi-let 3314}#
+ #{e 3343}#
+ #{r 3344}#
+ #{w 3345}#
+ #{s 3346}#
+ #{mod 3347}#
+ #{build-named-let 301}#
+ (cons #{f 3394}# #{id 3395}#)
+ #{val 3396}#
+ (cons #{e1 3397}# #{e2 3398}#)))
+ #{tmp 3375}#)
+ (let ((#{_ 3403}# #{tmp 3353}#))
+ (syntax-violation
+ 'let
+ "bad let"
+ (#{source-wrap 411}#
+ #{e 3343}#
+ #{w 3345}#
+ #{s 3346}#
+ #{mod 3347}#)))))))))))
+ (#{global-extend 339}#
+ 'core
+ 'letrec
+ (lambda (#{e 3404}#
+ #{r 3405}#
+ #{w 3406}#
+ #{s 3407}#
+ #{mod 3408}#)
+ (let ((#{tmp 3414}# #{e 3404}#))
+ (let ((#{tmp 3415}#
+ ($sc-dispatch
+ #{tmp 3414}#
+ '(_ #(each (any any)) any . each-any))))
+ (if (if #{tmp 3415}#
+ (@apply
+ (lambda (#{id 3420}#
+ #{val 3421}#
+ #{e1 3422}#
+ #{e2 3423}#)
+ (and-map #{id? 343}# #{id 3420}#))
+ #{tmp 3415}#)
+ #f)
+ (@apply
+ (lambda (#{id 3429}#
+ #{val 3430}#
+ #{e1 3431}#
+ #{e2 3432}#)
+ (let ((#{ids 3434}# #{id 3429}#))
+ (if (not (#{valid-bound-ids? 403}# #{ids 3434}#))
+ (syntax-violation
+ 'letrec
+ "duplicate bound variable"
+ #{e 3404}#)
+ (let ((#{labels 3438}#
+ (#{gen-labels 358}# #{ids 3434}#))
+ (#{new-vars 3439}#
+ (map #{gen-var 451}# #{ids 3434}#)))
+ (let ((#{w 3442}#
+ (#{make-binding-wrap 387}#
+ #{ids 3434}#
+ #{labels 3438}#
+ #{w 3406}#))
+ (#{r 3443}#
+ (#{extend-var-env 333}#
+ #{labels 3438}#
+ #{new-vars 3439}#
+ #{r 3405}#)))
+ (#{build-letrec 303}#
+ #{s 3407}#
+ #f
+ (map syntax->datum #{ids 3434}#)
+ #{new-vars 3439}#
+ (map (lambda (#{x 3444}#)
+ (#{chi 423}#
+ #{x 3444}#
+ #{r 3443}#
+ #{w 3442}#
+ #{mod 3408}#))
+ #{val 3430}#)
+ (#{chi-body 431}#
+ (cons #{e1 3431}# #{e2 3432}#)
+ (#{source-wrap 411}#
+ #{e 3404}#
+ #{w 3442}#
+ #{s 3407}#
+ #{mod 3408}#)
+ #{r 3443}#
+ #{w 3442}#
+ #{mod 3408}#)))))))
+ #{tmp 3415}#)
+ (let ((#{_ 3449}# #{tmp 3414}#))
+ (syntax-violation
+ 'letrec
+ "bad letrec"
+ (#{source-wrap 411}#
+ #{e 3404}#
+ #{w 3406}#
+ #{s 3407}#
+ #{mod 3408}#))))))))
+ (#{global-extend 339}#
+ 'core
+ 'letrec*
+ (lambda (#{e 3450}#
+ #{r 3451}#
+ #{w 3452}#
+ #{s 3453}#
+ #{mod 3454}#)
+ (let ((#{tmp 3460}# #{e 3450}#))
+ (let ((#{tmp 3461}#
+ ($sc-dispatch
+ #{tmp 3460}#
+ '(_ #(each (any any)) any . each-any))))
+ (if (if #{tmp 3461}#
+ (@apply
+ (lambda (#{id 3466}#
+ #{val 3467}#
+ #{e1 3468}#
+ #{e2 3469}#)
+ (and-map #{id? 343}# #{id 3466}#))
+ #{tmp 3461}#)
+ #f)
+ (@apply
+ (lambda (#{id 3475}#
+ #{val 3476}#
+ #{e1 3477}#
+ #{e2 3478}#)
+ (let ((#{ids 3480}# #{id 3475}#))
+ (if (not (#{valid-bound-ids? 403}# #{ids 3480}#))
+ (syntax-violation
+ 'letrec*
+ "duplicate bound variable"
+ #{e 3450}#)
+ (let ((#{labels 3484}#
+ (#{gen-labels 358}# #{ids 3480}#))
+ (#{new-vars 3485}#
+ (map #{gen-var 451}# #{ids 3480}#)))
+ (let ((#{w 3488}#
+ (#{make-binding-wrap 387}#
+ #{ids 3480}#
+ #{labels 3484}#
+ #{w 3452}#))
+ (#{r 3489}#
+ (#{extend-var-env 333}#
+ #{labels 3484}#
+ #{new-vars 3485}#
+ #{r 3451}#)))
+ (#{build-letrec 303}#
+ #{s 3453}#
+ #t
+ (map syntax->datum #{ids 3480}#)
+ #{new-vars 3485}#
+ (map (lambda (#{x 3490}#)
+ (#{chi 423}#
+ #{x 3490}#
+ #{r 3489}#
+ #{w 3488}#
+ #{mod 3454}#))
+ #{val 3476}#)
+ (#{chi-body 431}#
+ (cons #{e1 3477}# #{e2 3478}#)
+ (#{source-wrap 411}#
+ #{e 3450}#
+ #{w 3488}#
+ #{s 3453}#
+ #{mod 3454}#)
+ #{r 3489}#
+ #{w 3488}#
+ #{mod 3454}#)))))))
+ #{tmp 3461}#)
+ (let ((#{_ 3495}# #{tmp 3460}#))
+ (syntax-violation
+ 'letrec*
+ "bad letrec*"
+ (#{source-wrap 411}#
+ #{e 3450}#
+ #{w 3452}#
+ #{s 3453}#
+ #{mod 3454}#))))))))
+ (#{global-extend 339}#
+ 'core
+ 'set!
+ (lambda (#{e 3496}#
+ #{r 3497}#
+ #{w 3498}#
+ #{s 3499}#
+ #{mod 3500}#)
+ (let ((#{tmp 3506}# #{e 3496}#))
+ (let ((#{tmp 3507}#
+ ($sc-dispatch #{tmp 3506}# '(_ any any))))
+ (if (if #{tmp 3507}#
+ (@apply
+ (lambda (#{id 3510}# #{val 3511}#)
+ (#{id? 343}# #{id 3510}#))
+ #{tmp 3507}#)
+ #f)
+ (@apply
+ (lambda (#{id 3514}# #{val 3515}#)
+ (let ((#{n 3518}#
+ (#{id-var-name 397}# #{id 3514}# #{w 3498}#))
+ (#{id-mod 3519}#
+ (if (#{syntax-object? 309}# #{id 3514}#)
+ (#{syntax-object-module 315}# #{id 3514}#)
+ #{mod 3500}#)))
+ (let ((#{b 3521}#
+ (#{lookup 337}#
+ #{n 3518}#
+ #{r 3497}#
+ #{id-mod 3519}#)))
+ (let ((#{atom-key 3524}# (car #{b 3521}#)))
+ (if (memv #{atom-key 3524}# '(lexical))
+ (#{build-lexical-assignment 275}#
+ #{s 3499}#
+ (syntax->datum #{id 3514}#)
+ (cdr #{b 3521}#)
+ (#{chi 423}#
+ #{val 3515}#
+ #{r 3497}#
+ #{w 3498}#
+ #{mod 3500}#))
+ (if (memv #{atom-key 3524}# '(global))
+ (#{build-global-assignment 281}#
+ #{s 3499}#
+ #{n 3518}#
+ (#{chi 423}#
+ #{val 3515}#
+ #{r 3497}#
+ #{w 3498}#
+ #{mod 3500}#)
+ #{id-mod 3519}#)
+ (if (memv #{atom-key 3524}# '(macro))
+ (let ((#{p 3531}# (cdr #{b 3521}#)))
+ (if (procedure-property
+ #{p 3531}#
+ 'variable-transformer)
+ (#{chi 423}#
+ (#{chi-macro 429}#
+ #{p 3531}#
+ #{e 3496}#
+ #{r 3497}#
+ #{w 3498}#
+ #{s 3499}#
+ #f
+ #{mod 3500}#)
+ #{r 3497}#
+ '(())
+ #{mod 3500}#)
+ (syntax-violation
+ 'set!
+ "not a variable transformer"
+ (#{wrap 409}#
+ #{e 3496}#
+ #{w 3498}#
+ #{mod 3500}#)
+ (#{wrap 409}#
+ #{id 3514}#
+ #{w 3498}#
+ #{id-mod 3519}#))))
+ (if (memv #{atom-key 3524}# '(displaced-lexical))
+ (syntax-violation
+ 'set!
+ "identifier out of context"
+ (#{wrap 409}#
+ #{id 3514}#
+ #{w 3498}#
+ #{mod 3500}#))
+ (syntax-violation
+ 'set!
+ "bad set!"
+ (#{source-wrap 411}#
+ #{e 3496}#
+ #{w 3498}#
+ #{s 3499}#
+ #{mod 3500}#))))))))))
+ #{tmp 3507}#)
+ (let ((#{tmp 3536}#
+ ($sc-dispatch
+ #{tmp 3506}#
+ '(_ (any . each-any) any))))
+ (if #{tmp 3536}#
+ (@apply
+ (lambda (#{head 3540}# #{tail 3541}# #{val 3542}#)
+ (call-with-values
+ (lambda ()
+ (#{syntax-type 421}#
+ #{head 3540}#
+ #{r 3497}#
+ '(())
+ #f
+ #f
+ #{mod 3500}#
+ #t))
+ (lambda (#{type 3545}#
+ #{value 3546}#
+ #{ee 3547}#
+ #{ww 3548}#
+ #{ss 3549}#
+ #{modmod 3550}#)
+ (if (memv #{type 3545}# '(module-ref))
+ (let ((#{val 3559}#
+ (#{chi 423}#
+ #{val 3542}#
+ #{r 3497}#
+ #{w 3498}#
+ #{mod 3500}#)))
+ (call-with-values
+ (lambda ()
+ (#{value 3546}#
+ (cons #{head 3540}# #{tail 3541}#)
+ #{r 3497}#
+ #{w 3498}#))
+ (lambda (#{e 3561}#
+ #{r 3562}#
+ #{w 3563}#
+ #{s* 3564}#
+ #{mod 3565}#)
+ (let ((#{tmp 3571}# #{e 3561}#))
+ (let ((#{tmp 3572}# (list #{tmp 3571}#)))
+ (if (if #{tmp 3572}#
+ (@apply
+ (lambda (#{e 3574}#)
+ (#{id? 343}# #{e 3574}#))
+ #{tmp 3572}#)
+ #f)
+ (@apply
+ (lambda (#{e 3576}#)
+ (#{build-global-assignment 281}#
+ #{s 3499}#
+ (syntax->datum #{e 3576}#)
+ #{val 3559}#
+ #{mod 3565}#))
+ #{tmp 3572}#)
+ (syntax-violation
+ #f
+ "source expression failed to match
any pattern"
+ #{tmp 3571}#)))))))
+ (#{build-call 267}#
+ #{s 3499}#
+ (#{chi 423}#
+ (list '#(syntax-object
+ setter
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(type value ee ww ss modmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("i3551"
+ "i3552"
+ "i3553"
+ "i3554"
+ "i3555"
+ "i3556"))
+ #(ribcage
+ #(head tail val)
+ #((top) (top) (top))
+ #("i3537" "i3538" "i3539"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e r w s mod)
+ #((top) (top) (top) (top) (top))
+ #("i3501"
+ "i3502"
+ "i3503"
+ "i3504"
+ "i3505"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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))
+ #{head 3540}#)
+ #{r 3497}#
+ #{w 3498}#
+ #{mod 3500}#)
+ (map (lambda (#{e 3578}#)
+ (#{chi 423}#
+ #{e 3578}#
+ #{r 3497}#
+ #{w 3498}#
+ #{mod 3500}#))
+ (append
+ #{tail 3541}#
+ (list #{val 3542}#))))))))
+ #{tmp 3536}#)
+ (let ((#{_ 3582}# #{tmp 3506}#))
+ (syntax-violation
+ 'set!
+ "bad set!"
+ (#{source-wrap 411}#
+ #{e 3496}#
+ #{w 3498}#
+ #{s 3499}#
+ #{mod 3500}#))))))))))
+ (#{global-extend 339}#
+ 'module-ref
+ '@
+ (lambda (#{e 3583}# #{r 3584}# #{w 3585}#)
+ (let ((#{tmp 3589}# #{e 3583}#))
+ (let ((#{tmp 3590}#
+ ($sc-dispatch #{tmp 3589}# '(_ each-any any))))
+ (if (if #{tmp 3590}#
+ (@apply
+ (lambda (#{mod 3593}# #{id 3594}#)
+ (if (and-map #{id? 343}# #{mod 3593}#)
+ (#{id? 343}# #{id 3594}#)
+ #f))
+ #{tmp 3590}#)
+ #f)
+ (@apply
+ (lambda (#{mod 3600}# #{id 3601}#)
+ (values
+ (syntax->datum #{id 3601}#)
+ #{r 3584}#
+ #{w 3585}#
+ #f
+ (syntax->datum
+ (cons '#(syntax-object
+ public
+ ((top)
+ #(ribcage
+ #(mod id)
+ #((top) (top))
+ #("i3598" "i3599"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e r w)
+ #((top) (top) (top))
+ #("i3586" "i3587" "i3588"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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))
+ #{mod 3600}#))))
+ #{tmp 3590}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 3589}#))))))
+ (#{global-extend 339}#
+ 'module-ref
+ '@@
+ (lambda (#{e 3603}# #{r 3604}# #{w 3605}#)
+ (letrec*
+ ((#{remodulate 3610}#
+ (lambda (#{x 3611}# #{mod 3612}#)
+ (if (pair? #{x 3611}#)
+ (cons (#{remodulate 3610}#
+ (car #{x 3611}#)
+ #{mod 3612}#)
+ (#{remodulate 3610}#
+ (cdr #{x 3611}#)
+ #{mod 3612}#))
+ (if (#{syntax-object? 309}# #{x 3611}#)
+ (#{make-syntax-object 307}#
+ (#{remodulate 3610}#
+ (#{syntax-object-expression 311}# #{x 3611}#)
+ #{mod 3612}#)
+ (#{syntax-object-wrap 313}# #{x 3611}#)
+ #{mod 3612}#)
+ (if (vector? #{x 3611}#)
+ (let ((#{n 3623}# (vector-length #{x 3611}#)))
+ (let ((#{v 3625}# (make-vector #{n 3623}#)))
+ (letrec*
+ ((#{loop 3628}#
+ (lambda (#{i 3629}#)
+ (if (= #{i 3629}# #{n 3623}#)
+ (begin (if #f #f) #{v 3625}#)
+ (begin
+ (vector-set!
+ #{v 3625}#
+ #{i 3629}#
+ (#{remodulate 3610}#
+ (vector-ref #{x 3611}# #{i 3629}#)
+ #{mod 3612}#))
+ (#{loop 3628}# (#{1+}# #{i 3629}#)))))))
+ (#{loop 3628}# 0))))
+ #{x 3611}#))))))
+ (let ((#{tmp 3635}# #{e 3603}#))
+ (let ((#{tmp 3636}#
+ ($sc-dispatch #{tmp 3635}# '(_ each-any any))))
+ (if (if #{tmp 3636}#
+ (@apply
+ (lambda (#{mod 3639}# #{exp 3640}#)
+ (and-map #{id? 343}# #{mod 3639}#))
+ #{tmp 3636}#)
+ #f)
+ (@apply
+ (lambda (#{mod 3644}# #{exp 3645}#)
+ (let ((#{mod 3647}#
+ (syntax->datum
+ (cons '#(syntax-object
+ private
+ ((top)
+ #(ribcage
+ #(mod exp)
+ #((top) (top))
+ #("i3642" "i3643"))
+ #(ribcage
+ (remodulate)
+ ((top))
+ ("i3609"))
+ #(ribcage
+ #(e r w)
+ #((top) (top) (top))
+ #("i3606" "i3607" "i3608"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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))
+ #{mod 3644}#))))
+ (values
+ (#{remodulate 3610}# #{exp 3645}# #{mod 3647}#)
+ #{r 3604}#
+ #{w 3605}#
+ (#{source-annotation 324}# #{exp 3645}#)
+ #{mod 3647}#)))
+ #{tmp 3636}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 3635}#)))))))
+ (#{global-extend 339}#
+ 'core
+ 'if
+ (lambda (#{e 3649}#
+ #{r 3650}#
+ #{w 3651}#
+ #{s 3652}#
+ #{mod 3653}#)
+ (let ((#{tmp 3659}# #{e 3649}#))
+ (let ((#{tmp 3660}#
+ ($sc-dispatch #{tmp 3659}# '(_ any any))))
+ (if #{tmp 3660}#
+ (@apply
+ (lambda (#{test 3663}# #{then 3664}#)
+ (#{build-conditional 269}#
+ #{s 3652}#
+ (#{chi 423}#
+ #{test 3663}#
+ #{r 3650}#
+ #{w 3651}#
+ #{mod 3653}#)
+ (#{chi 423}#
+ #{then 3664}#
+ #{r 3650}#
+ #{w 3651}#
+ #{mod 3653}#)
+ (#{build-void 265}# #f)))
+ #{tmp 3660}#)
+ (let ((#{tmp 3666}#
+ ($sc-dispatch #{tmp 3659}# '(_ any any any))))
+ (if #{tmp 3666}#
+ (@apply
+ (lambda (#{test 3670}# #{then 3671}# #{else 3672}#)
+ (#{build-conditional 269}#
+ #{s 3652}#
+ (#{chi 423}#
+ #{test 3670}#
+ #{r 3650}#
+ #{w 3651}#
+ #{mod 3653}#)
+ (#{chi 423}#
+ #{then 3671}#
+ #{r 3650}#
+ #{w 3651}#
+ #{mod 3653}#)
+ (#{chi 423}#
+ #{else 3672}#
+ #{r 3650}#
+ #{w 3651}#
+ #{mod 3653}#)))
+ #{tmp 3666}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 3659}#))))))))
+ (#{global-extend 339}#
+ 'core
+ 'with-fluids
+ (lambda (#{e 3673}#
+ #{r 3674}#
+ #{w 3675}#
+ #{s 3676}#
+ #{mod 3677}#)
+ (let ((#{tmp 3683}# #{e 3673}#))
+ (let ((#{tmp 3684}#
+ ($sc-dispatch
+ #{tmp 3683}#
+ '(_ #(each (any any)) any . each-any))))
+ (if #{tmp 3684}#
+ (@apply
+ (lambda (#{fluid 3689}#
+ #{val 3690}#
+ #{b 3691}#
+ #{b* 3692}#)
+ (#{build-dynlet 271}#
+ #{s 3676}#
+ (map (lambda (#{x 3693}#)
+ (#{chi 423}#
+ #{x 3693}#
+ #{r 3674}#
+ #{w 3675}#
+ #{mod 3677}#))
+ #{fluid 3689}#)
+ (map (lambda (#{x 3696}#)
+ (#{chi 423}#
+ #{x 3696}#
+ #{r 3674}#
+ #{w 3675}#
+ #{mod 3677}#))
+ #{val 3690}#)
+ (#{chi-body 431}#
+ (cons #{b 3691}# #{b* 3692}#)
+ (#{source-wrap 411}#
+ #{e 3673}#
+ #{w 3675}#
+ #{s 3676}#
+ #{mod 3677}#)
+ #{r 3674}#
+ #{w 3675}#
+ #{mod 3677}#)))
+ #{tmp 3684}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 3683}#))))))
+ (#{global-extend 339}# 'begin 'begin '())
+ (#{global-extend 339}# 'define 'define '())
+ (#{global-extend 339}#
+ 'define-syntax
+ 'define-syntax
+ '())
+ (#{global-extend 339}# 'eval-when 'eval-when '())
+ (#{global-extend 339}#
+ 'core
+ 'syntax-case
+ (letrec*
+ ((#{convert-pattern 3701}#
+ (lambda (#{pattern 3708}# #{keys 3709}#)
+ (letrec*
+ ((#{cvt* 3713}#
+ (lambda (#{p* 3716}# #{n 3717}# #{ids 3718}#)
+ (if (null? #{p* 3716}#)
+ (values '() #{ids 3718}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt* 3713}#
+ (cdr #{p* 3716}#)
+ #{n 3717}#
+ #{ids 3718}#))
+ (lambda (#{y 3722}# #{ids 3723}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt 3715}#
+ (car #{p* 3716}#)
+ #{n 3717}#
+ #{ids 3723}#))
+ (lambda (#{x 3726}# #{ids 3727}#)
+ (values
+ (cons #{x 3726}# #{y 3722}#)
+ #{ids 3727}#))))))))
+ (#{cvt 3715}#
+ (lambda (#{p 3730}# #{n 3731}# #{ids 3732}#)
+ (if (#{id? 343}# #{p 3730}#)
+ (if (#{bound-id-member? 407}#
+ #{p 3730}#
+ #{keys 3709}#)
+ (values
+ (vector 'free-id #{p 3730}#)
+ #{ids 3732}#)
+ (if (#{free-id=? 399}#
+ #{p 3730}#
+ '#(syntax-object
+ _
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(p n ids)
+ #((top) (top) (top))
+ #("i3733" "i3734" "i3735"))
+ #(ribcage
+ (cvt cvt*)
+ ((top) (top))
+ ("i3714" "i3712"))
+ #(ribcage
+ #(pattern keys)
+ #((top) (top))
+ #("i3710" "i3711"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("i3706" "i3704" "i3702" "i3700"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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)))
+ (values '_ #{ids 3732}#)
+ (values
+ 'any
+ (cons (cons #{p 3730}# #{n 3731}#) #{ids 3732}#))))
+ (let ((#{tmp 3741}# #{p 3730}#))
+ (let ((#{tmp 3742}#
+ ($sc-dispatch #{tmp 3741}# '(any any))))
+ (if (if #{tmp 3742}#
+ (@apply
+ (lambda (#{x 3745}# #{dots 3746}#)
+ (#{ellipsis? 439}# #{dots 3746}#))
+ #{tmp 3742}#)
+ #f)
+ (@apply
+ (lambda (#{x 3749}# #{dots 3750}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt 3715}#
+ #{x 3749}#
+ (#{1+}# #{n 3731}#)
+ #{ids 3732}#))
+ (lambda (#{p 3752}# #{ids 3753}#)
+ (values
+ (if (eq? #{p 3752}# 'any)
+ 'each-any
+ (vector 'each #{p 3752}#))
+ #{ids 3753}#))))
+ #{tmp 3742}#)
+ (let ((#{tmp 3756}#
+ ($sc-dispatch
+ #{tmp 3741}#
+ '(any any . each-any))))
+ (if (if #{tmp 3756}#
+ (@apply
+ (lambda (#{x 3760}#
+ #{dots 3761}#
+ #{ys 3762}#)
+ (#{ellipsis? 439}# #{dots 3761}#))
+ #{tmp 3756}#)
+ #f)
+ (@apply
+ (lambda (#{x 3766}#
+ #{dots 3767}#
+ #{ys 3768}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt* 3713}#
+ #{ys 3768}#
+ #{n 3731}#
+ #{ids 3732}#))
+ (lambda (#{ys 3770}# #{ids 3771}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt 3715}#
+ #{x 3766}#
+ (#{1+}# #{n 3731}#)
+ #{ids 3771}#))
+ (lambda (#{x 3774}# #{ids 3775}#)
+ (values
+ (vector
+ 'each+
+ #{x 3774}#
+ (reverse #{ys 3770}#)
+ '())
+ #{ids 3775}#))))))
+ #{tmp 3756}#)
+ (let ((#{tmp 3779}#
+ ($sc-dispatch
+ #{tmp 3741}#
+ '(any . any))))
+ (if #{tmp 3779}#
+ (@apply
+ (lambda (#{x 3782}# #{y 3783}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt 3715}#
+ #{y 3783}#
+ #{n 3731}#
+ #{ids 3732}#))
+ (lambda (#{y 3784}# #{ids 3785}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt 3715}#
+ #{x 3782}#
+ #{n 3731}#
+ #{ids 3785}#))
+ (lambda (#{x 3788}# #{ids 3789}#)
+ (values
+ (cons #{x 3788}# #{y 3784}#)
+ #{ids 3789}#))))))
+ #{tmp 3779}#)
+ (let ((#{tmp 3792}#
+ ($sc-dispatch #{tmp 3741}# '())))
+ (if #{tmp 3792}#
+ (@apply
+ (lambda () (values '() #{ids 3732}#))
+ #{tmp 3792}#)
+ (let ((#{tmp 3793}#
+ ($sc-dispatch
+ #{tmp 3741}#
+ '#(vector each-any))))
+ (if #{tmp 3793}#
+ (@apply
+ (lambda (#{x 3795}#)
+ (call-with-values
+ (lambda ()
+ (#{cvt 3715}#
+ #{x 3795}#
+ #{n 3731}#
+ #{ids 3732}#))
+ (lambda (#{p 3797}#
+ #{ids 3798}#)
+ (values
+ (vector
+ 'vector
+ #{p 3797}#)
+ #{ids 3798}#))))
+ #{tmp 3793}#)
+ (let ((#{x 3802}# #{tmp 3741}#))
(values
(vector
- 'each+
- #{x 3772}#
- (reverse #{ys 3768}#)
- '())
- #{ids 3773}#))))))
- #{tmp 3754}#)
- (let ((#{tmp 3777}#
- ($sc-dispatch
- #{tmp 3739}#
- '(any . any))))
- (if #{tmp 3777}#
- (@apply
- (lambda (#{x 3780}# #{y 3781}#)
- (call-with-values
- (lambda ()
- (#{cvt 3713}#
- #{y 3781}#
- #{n 3729}#
- #{ids 3730}#))
- (lambda (#{y 3782}# #{ids 3783}#)
- (call-with-values
- (lambda ()
- (#{cvt 3713}#
- #{x 3780}#
- #{n 3729}#
- #{ids 3783}#))
- (lambda (#{x 3786}#
- #{ids 3787}#)
- (values
- (cons #{x 3786}#
- #{y 3782}#)
- #{ids 3787}#))))))
- #{tmp 3777}#)
- (let ((#{tmp 3790}#
- ($sc-dispatch #{tmp 3739}# '())))
- (if #{tmp 3790}#
- (@apply
- (lambda ()
- (values '() #{ids 3730}#))
- #{tmp 3790}#)
- (let ((#{tmp 3791}#
- ($sc-dispatch
- #{tmp 3739}#
- '#(vector each-any))))
- (if #{tmp 3791}#
- (@apply
- (lambda (#{x 3793}#)
- (call-with-values
- (lambda ()
- (#{cvt 3713}#
- #{x 3793}#
- #{n 3729}#
- #{ids 3730}#))
- (lambda (#{p 3795}#
- #{ids 3796}#)
- (values
- (vector
- 'vector
- #{p 3795}#)
- #{ids 3796}#))))
- #{tmp 3791}#)
- (let ((#{x 3800}# #{tmp 3739}#))
- (values
- (vector
- 'atom
- (#{strip 449}#
- #{p 3728}#
- '(())))
- #{ids 3730}#)))))))))))))))))
- (begin (#{cvt 3713}# #{pattern 3706}# 0 '())))))
- (#{build-dispatch-call 3701}#
- (lambda (#{pvars 3802}#
- #{exp 3803}#
- #{y 3804}#
- #{r 3805}#
- #{mod 3806}#)
- (begin
- (map cdr #{pvars 3802}#)
- (let ((#{ids 3814}# (map car #{pvars 3802}#)))
- (begin
- (let ((#{labels 3818}#
- (#{gen-labels 358}# #{ids 3814}#))
- (#{new-vars 3819}#
- (map #{gen-var 451}# #{ids 3814}#)))
- (#{build-primcall 291}#
- #f
- 'apply
- (list (#{build-simple-lambda 285}#
- #f
- (map syntax->datum #{ids 3814}#)
- #f
- #{new-vars 3819}#
- '()
- (#{chi 423}#
- #{exp 3803}#
- (#{extend-env 331}#
- #{labels 3818}#
- (map (lambda (#{var 3822}# #{level 3823}#)
- (cons 'syntax
- (cons #{var 3822}#
- #{level 3823}#)))
- #{new-vars 3819}#
- (map cdr #{pvars 3802}#))
- #{r 3805}#)
- (#{make-binding-wrap 387}#
- #{ids 3814}#
- #{labels 3818}#
- '(()))
- #{mod 3806}#))
- #{y 3804}#))))))))
- (#{gen-clause 3703}#
- (lambda (#{x 3829}#
- #{keys 3830}#
- #{clauses 3831}#
- #{r 3832}#
- #{pat 3833}#
- #{fender 3834}#
- #{exp 3835}#
- #{mod 3836}#)
- (call-with-values
- (lambda ()
- (#{convert-pattern 3699}#
- #{pat 3833}#
- #{keys 3830}#))
- (lambda (#{p 3845}# #{pvars 3846}#)
- (if (not (#{distinct-bound-ids? 405}#
- (map car #{pvars 3846}#)))
+ 'atom
+ (#{strip 449}#
+ #{p 3730}#
+ '(())))
+ #{ids 3732}#)))))))))))))))))
+ (#{cvt 3715}# #{pattern 3708}# 0 '()))))
+ (#{build-dispatch-call 3703}#
+ (lambda (#{pvars 3804}#
+ #{exp 3805}#
+ #{y 3806}#
+ #{r 3807}#
+ #{mod 3808}#)
+ (begin
+ (map cdr #{pvars 3804}#)
+ (let ((#{ids 3816}# (map car #{pvars 3804}#)))
+ (let ((#{labels 3820}#
+ (#{gen-labels 358}# #{ids 3816}#))
+ (#{new-vars 3821}#
+ (map #{gen-var 451}# #{ids 3816}#)))
+ (#{build-primcall 291}#
+ #f
+ 'apply
+ (list (#{build-simple-lambda 285}#
+ #f
+ (map syntax->datum #{ids 3816}#)
+ #f
+ #{new-vars 3821}#
+ '()
+ (#{chi 423}#
+ #{exp 3805}#
+ (#{extend-env 331}#
+ #{labels 3820}#
+ (map (lambda (#{var 3824}# #{level 3825}#)
+ (cons 'syntax
+ (cons #{var 3824}#
+ #{level 3825}#)))
+ #{new-vars 3821}#
+ (map cdr #{pvars 3804}#))
+ #{r 3807}#)
+ (#{make-binding-wrap 387}#
+ #{ids 3816}#
+ #{labels 3820}#
+ '(()))
+ #{mod 3808}#))
+ #{y 3806}#)))))))
+ (#{gen-clause 3705}#
+ (lambda (#{x 3831}#
+ #{keys 3832}#
+ #{clauses 3833}#
+ #{r 3834}#
+ #{pat 3835}#
+ #{fender 3836}#
+ #{exp 3837}#
+ #{mod 3838}#)
+ (call-with-values
+ (lambda ()
+ (#{convert-pattern 3701}#
+ #{pat 3835}#
+ #{keys 3832}#))
+ (lambda (#{p 3847}# #{pvars 3848}#)
+ (if (not (#{distinct-bound-ids? 405}#
+ (map car #{pvars 3848}#)))
+ (syntax-violation
+ 'syntax-case
+ "duplicate pattern variable"
+ #{pat 3835}#)
+ (if (not (and-map
+ (lambda (#{x 3855}#)
+ (not (#{ellipsis? 439}# (car #{x 3855}#))))
+ #{pvars 3848}#))
(syntax-violation
'syntax-case
- "duplicate pattern variable"
- #{pat 3833}#)
- (if (not (and-map
- (lambda (#{x 3853}#)
- (not (#{ellipsis? 439}# (car #{x 3853}#))))
- #{pvars 3846}#))
- (syntax-violation
- 'syntax-case
- "misplaced ellipsis"
- #{pat 3833}#)
- (begin
- (let ((#{y 3857}# (#{gen-var 451}# 'tmp)))
- (#{build-call 267}#
- #f
- (#{build-simple-lambda 285}#
- #f
- (list 'tmp)
- #f
- (list #{y 3857}#)
- '()
- (begin
- (let ((#{y 3861}#
- (#{build-lexical-reference 273}#
- 'value
- #f
- 'tmp
- #{y 3857}#)))
- (#{build-conditional 269}#
- #f
- (let ((#{tmp 3864}# #{fender 3834}#))
- (let ((#{tmp 3865}#
- ($sc-dispatch
- #{tmp 3864}#
- '#(atom #t))))
- (if #{tmp 3865}#
- (@apply
- (lambda () #{y 3861}#)
- #{tmp 3865}#)
- (let ((#{_ 3867}# #{tmp 3864}#))
- (#{build-conditional 269}#
- #f
- #{y 3861}#
- (#{build-dispatch-call 3701}#
- #{pvars 3846}#
- #{fender 3834}#
- #{y 3861}#
- #{r 3832}#
- #{mod 3836}#)
- (#{build-data 295}# #f #f))))))
- (#{build-dispatch-call 3701}#
- #{pvars 3846}#
- #{exp 3835}#
- #{y 3861}#
- #{r 3832}#
- #{mod 3836}#)
- (#{gen-syntax-case 3705}#
- #{x 3829}#
- #{keys 3830}#
- #{clauses 3831}#
- #{r 3832}#
- #{mod 3836}#)))))
- (list (if (eq? #{p 3845}# 'any)
- (#{build-primcall 291}#
- #f
- 'list
- (list #{x 3829}#))
- (#{build-primcall 291}#
- #f
- '$sc-dispatch
- (list #{x 3829}#
- (#{build-data 295}#
- #f
- #{p 3845}#))))))))))))))
- (#{gen-syntax-case 3705}#
- (lambda (#{x 3873}#
- #{keys 3874}#
- #{clauses 3875}#
- #{r 3876}#
- #{mod 3877}#)
- (if (null? #{clauses 3875}#)
- (#{build-primcall 291}#
- #f
- 'syntax-violation
- (list (#{build-data 295}# #f #f)
- (#{build-data 295}#
+ "misplaced ellipsis"
+ #{pat 3835}#)
+ (let ((#{y 3859}# (#{gen-var 451}# 'tmp)))
+ (#{build-call 267}#
+ #f
+ (#{build-simple-lambda 285}#
#f
- "source expression failed to match any pattern")
- #{x 3873}#))
- (let ((#{tmp 3886}# (car #{clauses 3875}#)))
- (let ((#{tmp 3887}#
- ($sc-dispatch #{tmp 3886}# '(any any))))
- (if #{tmp 3887}#
- (@apply
- (lambda (#{pat 3890}# #{exp 3891}#)
- (if (if (#{id? 343}# #{pat 3890}#)
- (and-map
- (lambda (#{x 3894}#)
- (not (#{free-id=? 399}#
- #{pat 3890}#
- #{x 3894}#)))
- (cons '#(syntax-object
- ...
- ((top)
- #(ribcage
- #(pat exp)
- #((top) (top))
- #("i3888" "i3889"))
- #(ribcage () () ())
- #(ribcage
- #(x keys clauses r mod)
- #((top) (top) (top) (top) (top))
- #("i3878"
- "i3879"
- "i3880"
- "i3881"
- "i3882"))
- #(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i3704"
- "i3702"
- "i3700"
- "i3698"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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))
- #{keys 3874}#))
- #f)
- (if (#{free-id=? 399}#
- '#(syntax-object
- pad
- ((top)
- #(ribcage
- #(pat exp)
- #((top) (top))
- #("i3888" "i3889"))
- #(ribcage () () ())
- #(ribcage
- #(x keys clauses r mod)
- #((top) (top) (top) (top) (top))
- #("i3878"
- "i3879"
- "i3880"
- "i3881"
- "i3882"))
- #(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i3704" "i3702" "i3700" "i3698"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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
- _
- ((top)
- #(ribcage
- #(pat exp)
- #((top) (top))
- #("i3888" "i3889"))
- #(ribcage () () ())
- #(ribcage
- #(x keys clauses r mod)
- #((top) (top) (top) (top) (top))
- #("i3878"
- "i3879"
- "i3880"
- "i3881"
- "i3882"))
- #(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i3704" "i3702" "i3700" "i3698"))
- #(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-call
- 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-primcall
- 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-call
- 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-primcall
- make-call
- make-conditional
- make-toplevel-define
- make-toplevel-set
- make-toplevel-ref
- make-module-set
- make-module-ref
- make-lexical-set
- make-lexical-ref
- make-primitive-ref
- make-const
- make-void)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i452"
- "i450"
- "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"
- "i383"
- "i382"
- "i380"
- "i379"
- "i378"
- "i377"
- "i376"
- "i374"
- "i372"
- "i370"
- "i368"
- "i366"
- "i364"
- "i362"
- "i360"
- "i357"
- "i355"
- "i354"
- "i353"
- "i352"
- "i351"
- "i350"
- "i349"
- "i348"
- "i347"
- "i345"
- "i344"
- "i342"
- "i340"
- "i338"
- "i336"
- "i334"
- "i332"
- "i330"
- "i329"
- "i328"
- "i327"
- "i326"
- "i325"
- "i323"
- "i322"
- "i320"
- "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"
- "i255"
- "i253"
- "i251"
- "i250"
- "i249"
- "i248"
- "i247"
- "i245"
- "i243"
- "i241"
- "i238"
- "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)))
- (#{chi 423}#
- #{exp 3891}#
- #{r 3876}#
- '(())
- #{mod 3877}#)
- (begin
- (let ((#{labels 3899}#
- (list (#{gen-label 356}#)))
- (#{var 3900}#
- (#{gen-var 451}# #{pat 3890}#)))
- (#{build-call 267}#
+ (list 'tmp)
+ #f
+ (list #{y 3859}#)
+ '()
+ (let ((#{y 3863}#
+ (#{build-lexical-reference 273}#
+ 'value
#f
- (#{build-simple-lambda 285}#
- #f
- (list (syntax->datum #{pat 3890}#))
- #f
- (list #{var 3900}#)
- '()
- (#{chi 423}#
- #{exp 3891}#
- (#{extend-env 331}#
- #{labels 3899}#
- (list (cons 'syntax
- (cons #{var 3900}# 0)))
- #{r 3876}#)
- (#{make-binding-wrap 387}#
- (list #{pat 3890}#)
- #{labels 3899}#
- '(()))
- #{mod 3877}#))
- (list #{x 3873}#)))))
- (#{gen-clause 3703}#
- #{x 3873}#
- #{keys 3874}#
- (cdr #{clauses 3875}#)
- #{r 3876}#
- #{pat 3890}#
- #t
- #{exp 3891}#
- #{mod 3877}#)))
- #{tmp 3887}#)
- (let ((#{tmp 3906}#
- ($sc-dispatch #{tmp 3886}# '(any any any))))
- (if #{tmp 3906}#
- (@apply
- (lambda (#{pat 3910}#
- #{fender 3911}#
- #{exp 3912}#)
- (#{gen-clause 3703}#
- #{x 3873}#
- #{keys 3874}#
- (cdr #{clauses 3875}#)
- #{r 3876}#
- #{pat 3910}#
- #{fender 3911}#
- #{exp 3912}#
- #{mod 3877}#))
- #{tmp 3906}#)
- (let ((#{_ 3914}# #{tmp 3886}#))
- (syntax-violation
- 'syntax-case
- "invalid clause"
- (car #{clauses 3875}#))))))))))))
- (begin
- (lambda (#{e 3915}#
- #{r 3916}#
- #{w 3917}#
- #{s 3918}#
- #{mod 3919}#)
- (begin
- (let ((#{e 3926}#
- (#{source-wrap 411}#
- #{e 3915}#
- #{w 3917}#
- #{s 3918}#
- #{mod 3919}#)))
- (let ((#{tmp 3927}# #{e 3926}#))
- (let ((#{tmp 3928}#
- ($sc-dispatch
- #{tmp 3927}#
- '(_ any each-any . each-any))))
- (if #{tmp 3928}#
- (@apply
- (lambda (#{val 3932}# #{key 3933}# #{m 3934}#)
- (if (and-map
- (lambda (#{x 3935}#)
- (if (#{id? 343}# #{x 3935}#)
- (not (#{ellipsis? 439}# #{x 3935}#))
- #f))
- #{key 3933}#)
- (begin
- (let ((#{x 3941}# (#{gen-var 451}# 'tmp)))
- (#{build-call 267}#
- #{s 3918}#
- (#{build-simple-lambda 285}#
- #f
- (list 'tmp)
- #f
- (list #{x 3941}#)
- '()
- (#{gen-syntax-case 3705}#
- (#{build-lexical-reference 273}#
- 'value
- #f
- 'tmp
- #{x 3941}#)
- #{key 3933}#
- #{m 3934}#
- #{r 3916}#
- #{mod 3919}#))
- (list (#{chi 423}#
- #{val 3932}#
- #{r 3916}#
- '(())
- #{mod 3919}#)))))
- (syntax-violation
- 'syntax-case
- "invalid literals list"
- #{e 3926}#)))
- #{tmp 3928}#)
+ 'tmp
+ #{y 3859}#)))
+ (#{build-conditional 269}#
+ #f
+ (let ((#{tmp 3866}# #{fender 3836}#))
+ (let ((#{tmp 3867}#
+ ($sc-dispatch
+ #{tmp 3866}#
+ '#(atom #t))))
+ (if #{tmp 3867}#
+ (@apply
+ (lambda () #{y 3863}#)
+ #{tmp 3867}#)
+ (let ((#{_ 3869}# #{tmp 3866}#))
+ (#{build-conditional 269}#
+ #f
+ #{y 3863}#
+ (#{build-dispatch-call 3703}#
+ #{pvars 3848}#
+ #{fender 3836}#
+ #{y 3863}#
+ #{r 3834}#
+ #{mod 3838}#)
+ (#{build-data 295}# #f #f))))))
+ (#{build-dispatch-call 3703}#
+ #{pvars 3848}#
+ #{exp 3837}#
+ #{y 3863}#
+ #{r 3834}#
+ #{mod 3838}#)
+ (#{gen-syntax-case 3707}#
+ #{x 3831}#
+ #{keys 3832}#
+ #{clauses 3833}#
+ #{r 3834}#
+ #{mod 3838}#))))
+ (list (if (eq? #{p 3847}# 'any)
+ (#{build-primcall 291}#
+ #f
+ 'list
+ (list #{x 3831}#))
+ (#{build-primcall 291}#
+ #f
+ '$sc-dispatch
+ (list #{x 3831}#
+ (#{build-data 295}#
+ #f
+ #{p 3847}#)))))))))))))
+ (#{gen-syntax-case 3707}#
+ (lambda (#{x 3875}#
+ #{keys 3876}#
+ #{clauses 3877}#
+ #{r 3878}#
+ #{mod 3879}#)
+ (if (null? #{clauses 3877}#)
+ (#{build-primcall 291}#
+ #f
+ 'syntax-violation
+ (list (#{build-data 295}# #f #f)
+ (#{build-data 295}#
+ #f
+ "source expression failed to match any pattern")
+ #{x 3875}#))
+ (let ((#{tmp 3888}# (car #{clauses 3877}#)))
+ (let ((#{tmp 3889}#
+ ($sc-dispatch #{tmp 3888}# '(any any))))
+ (if #{tmp 3889}#
+ (@apply
+ (lambda (#{pat 3892}# #{exp 3893}#)
+ (if (if (#{id? 343}# #{pat 3892}#)
+ (and-map
+ (lambda (#{x 3896}#)
+ (not (#{free-id=? 399}#
+ #{pat 3892}#
+ #{x 3896}#)))
+ (cons '#(syntax-object
+ ...
+ ((top)
+ #(ribcage
+ #(pat exp)
+ #((top) (top))
+ #("i3890" "i3891"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x keys clauses r mod)
+ #((top) (top) (top) (top) (top))
+ #("i3880"
+ "i3881"
+ "i3882"
+ "i3883"
+ "i3884"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("i3706" "i3704" "i3702" "i3700"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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))
+ #{keys 3876}#))
+ #f)
+ (if (#{free-id=? 399}#
+ '#(syntax-object
+ pad
+ ((top)
+ #(ribcage
+ #(pat exp)
+ #((top) (top))
+ #("i3890" "i3891"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x keys clauses r mod)
+ #((top) (top) (top) (top) (top))
+ #("i3880"
+ "i3881"
+ "i3882"
+ "i3883"
+ "i3884"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("i3706" "i3704" "i3702" "i3700"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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
+ _
+ ((top)
+ #(ribcage
+ #(pat exp)
+ #((top) (top))
+ #("i3890" "i3891"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x keys clauses r mod)
+ #((top) (top) (top) (top) (top))
+ #("i3880"
+ "i3881"
+ "i3882"
+ "i3883"
+ "i3884"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("i3706" "i3704" "i3702" "i3700"))
+ #(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-call
+ 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-primcall
+ 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-call
+ 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-seq
+ make-primcall
+ make-call
+ make-conditional
+ make-toplevel-define
+ make-toplevel-set
+ make-toplevel-ref
+ make-module-set
+ make-module-ref
+ make-lexical-set
+ make-lexical-ref
+ make-primitive-ref
+ make-const
+ make-void)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i452"
+ "i450"
+ "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"
+ "i383"
+ "i382"
+ "i380"
+ "i379"
+ "i378"
+ "i377"
+ "i376"
+ "i374"
+ "i372"
+ "i370"
+ "i368"
+ "i366"
+ "i364"
+ "i362"
+ "i360"
+ "i357"
+ "i355"
+ "i354"
+ "i353"
+ "i352"
+ "i351"
+ "i350"
+ "i349"
+ "i348"
+ "i347"
+ "i345"
+ "i344"
+ "i342"
+ "i340"
+ "i338"
+ "i336"
+ "i334"
+ "i332"
+ "i330"
+ "i329"
+ "i328"
+ "i327"
+ "i326"
+ "i325"
+ "i323"
+ "i322"
+ "i320"
+ "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"
+ "i255"
+ "i253"
+ "i251"
+ "i250"
+ "i249"
+ "i248"
+ "i247"
+ "i245"
+ "i243"
+ "i241"
+ "i238"
+ "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)))
+ (#{chi 423}#
+ #{exp 3893}#
+ #{r 3878}#
+ '(())
+ #{mod 3879}#)
+ (let ((#{labels 3901}# (list (#{gen-label 356}#)))
+ (#{var 3902}#
+ (#{gen-var 451}# #{pat 3892}#)))
+ (#{build-call 267}#
+ #f
+ (#{build-simple-lambda 285}#
+ #f
+ (list (syntax->datum #{pat 3892}#))
+ #f
+ (list #{var 3902}#)
+ '()
+ (#{chi 423}#
+ #{exp 3893}#
+ (#{extend-env 331}#
+ #{labels 3901}#
+ (list (cons 'syntax
+ (cons #{var 3902}# 0)))
+ #{r 3878}#)
+ (#{make-binding-wrap 387}#
+ (list #{pat 3892}#)
+ #{labels 3901}#
+ '(()))
+ #{mod 3879}#))
+ (list #{x 3875}#))))
+ (#{gen-clause 3705}#
+ #{x 3875}#
+ #{keys 3876}#
+ (cdr #{clauses 3877}#)
+ #{r 3878}#
+ #{pat 3892}#
+ #t
+ #{exp 3893}#
+ #{mod 3879}#)))
+ #{tmp 3889}#)
+ (let ((#{tmp 3908}#
+ ($sc-dispatch #{tmp 3888}# '(any any any))))
+ (if #{tmp 3908}#
+ (@apply
+ (lambda (#{pat 3912}# #{fender 3913}# #{exp 3914}#)
+ (#{gen-clause 3705}#
+ #{x 3875}#
+ #{keys 3876}#
+ (cdr #{clauses 3877}#)
+ #{r 3878}#
+ #{pat 3912}#
+ #{fender 3913}#
+ #{exp 3914}#
+ #{mod 3879}#))
+ #{tmp 3908}#)
+ (let ((#{_ 3916}# #{tmp 3888}#))
+ (syntax-violation
+ 'syntax-case
+ "invalid clause"
+ (car #{clauses 3877}#))))))))))))
+ (lambda (#{e 3917}#
+ #{r 3918}#
+ #{w 3919}#
+ #{s 3920}#
+ #{mod 3921}#)
+ (let ((#{e 3928}#
+ (#{source-wrap 411}#
+ #{e 3917}#
+ #{w 3919}#
+ #{s 3920}#
+ #{mod 3921}#)))
+ (let ((#{tmp 3929}# #{e 3928}#))
+ (let ((#{tmp 3930}#
+ ($sc-dispatch
+ #{tmp 3929}#
+ '(_ any each-any . each-any))))
+ (if #{tmp 3930}#
+ (@apply
+ (lambda (#{val 3934}# #{key 3935}# #{m 3936}#)
+ (if (and-map
+ (lambda (#{x 3937}#)
+ (if (#{id? 343}# #{x 3937}#)
+ (not (#{ellipsis? 439}# #{x 3937}#))
+ #f))
+ #{key 3935}#)
+ (let ((#{x 3943}# (#{gen-var 451}# 'tmp)))
+ (#{build-call 267}#
+ #{s 3920}#
+ (#{build-simple-lambda 285}#
+ #f
+ (list 'tmp)
+ #f
+ (list #{x 3943}#)
+ '()
+ (#{gen-syntax-case 3707}#
+ (#{build-lexical-reference 273}#
+ 'value
+ #f
+ 'tmp
+ #{x 3943}#)
+ #{key 3935}#
+ #{m 3936}#
+ #{r 3918}#
+ #{mod 3921}#))
+ (list (#{chi 423}#
+ #{val 3934}#
+ #{r 3918}#
+ '(())
+ #{mod 3921}#))))
(syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 3927}#))))))))))
- (set! macroexpand
- (lambda*
- (#{x 3947}#
- #:optional
- (#{m 3949}# 'e)
- (#{esew 3951}# '(eval)))
- (#{chi-top-sequence 415}#
- (list #{x 3947}#)
- '()
- '((top))
- #f
- #{m 3949}#
- #{esew 3951}#
- (cons 'hygiene (module-name (current-module))))))
- (set! identifier?
- (lambda (#{x 3955}#)
- (#{nonsymbol-id? 341}# #{x 3955}#)))
- (set! datum->syntax
- (lambda (#{id 3957}# #{datum 3958}#)
- (#{make-syntax-object 307}#
- #{datum 3958}#
- (#{syntax-object-wrap 313}# #{id 3957}#)
- (#{syntax-object-module 315}# #{id 3957}#))))
- (set! syntax->datum
- (lambda (#{x 3961}#)
- (#{strip 449}# #{x 3961}# '(()))))
- (set! syntax-source
- (lambda (#{x 3964}#)
- (#{source-annotation 324}# #{x 3964}#)))
- (set! generate-temporaries
- (lambda (#{ls 3966}#)
- (begin
- (begin
- (let ((#{x 3970}# #{ls 3966}#))
- (if (not (list? #{x 3970}#))
- (syntax-violation
- 'generate-temporaries
- "invalid argument"
- #{x 3970}#))))
- (map (lambda (#{x 3971}#)
- (#{wrap 409}# (gensym) '((top)) #f))
- #{ls 3966}#))))
- (set! free-identifier=?
- (lambda (#{x 3975}# #{y 3976}#)
- (begin
- (begin
- (let ((#{x 3981}# #{x 3975}#))
- (if (not (#{nonsymbol-id? 341}# #{x 3981}#))
- (syntax-violation
- 'free-identifier=?
- "invalid argument"
- #{x 3981}#))))
- (begin
- (let ((#{x 3984}# #{y 3976}#))
- (if (not (#{nonsymbol-id? 341}# #{x 3984}#))
- (syntax-violation
- 'free-identifier=?
- "invalid argument"
- #{x 3984}#))))
- (#{free-id=? 399}# #{x 3975}# #{y 3976}#))))
- (set! bound-identifier=?
- (lambda (#{x 3985}# #{y 3986}#)
- (begin
- (begin
- (let ((#{x 3991}# #{x 3985}#))
- (if (not (#{nonsymbol-id? 341}# #{x 3991}#))
- (syntax-violation
- 'bound-identifier=?
- "invalid argument"
- #{x 3991}#))))
- (begin
- (let ((#{x 3994}# #{y 3986}#))
- (if (not (#{nonsymbol-id? 341}# #{x 3994}#))
- (syntax-violation
- 'bound-identifier=?
- "invalid argument"
- #{x 3994}#))))
- (#{bound-id=? 401}# #{x 3985}# #{y 3986}#))))
- (set! syntax-violation
- (lambda*
- (#{who 3995}#
- #{message 3996}#
- #{form 3997}#
- #:optional
- (#{subform 4001}# #f))
- (begin
- (begin
- (let ((#{x 4005}# #{who 3995}#))
- (if (not (let ((#{x 4006}# #{x 4005}#))
- (begin
- (let ((#{t 4010}# (not #{x 4006}#)))
- (if #{t 4010}#
- #{t 4010}#
- (begin
- (let ((#{t 4013}# (string? #{x 4006}#)))
- (if #{t 4013}#
- #{t 4013}#
- (symbol? #{x 4006}#)))))))))
+ 'syntax-case
+ "invalid literals list"
+ #{e 3928}#)))
+ #{tmp 3930}#)
(syntax-violation
- 'syntax-violation
- "invalid argument"
- #{x 4005}#))))
- (begin
- (let ((#{x 4017}# #{message 3996}#))
- (if (not (string? #{x 4017}#))
- (syntax-violation
- 'syntax-violation
- "invalid argument"
- #{x 4017}#))))
- (throw 'syntax-error
- #{who 3995}#
- #{message 3996}#
- (#{source-annotation 324}#
- (begin
- (let ((#{t 4020}# #{form 3997}#))
- (if #{t 4020}# #{t 4020}# #{subform 4001}#))))
- (#{strip 449}# #{form 3997}# '(()))
- (if #{subform 4001}#
- (#{strip 449}# #{subform 4001}# '(()))
- #f)))))
- (letrec*
- ((#{match-each 4027}#
- (lambda (#{e 4040}# #{p 4041}# #{w 4042}# #{mod 4043}#)
- (if (pair? #{e 4040}#)
- (begin
- (let ((#{first 4051}#
- (#{match 4039}#
- (car #{e 4040}#)
- #{p 4041}#
- #{w 4042}#
- '()
- #{mod 4043}#)))
- (if #{first 4051}#
- (begin
- (let ((#{rest 4055}#
- (#{match-each 4027}#
- (cdr #{e 4040}#)
- #{p 4041}#
- #{w 4042}#
- #{mod 4043}#)))
- (if #{rest 4055}#
- (cons #{first 4051}# #{rest 4055}#)
- #f)))
- #f)))
- (if (null? #{e 4040}#)
- '()
- (if (#{syntax-object? 309}# #{e 4040}#)
- (#{match-each 4027}#
- (#{syntax-object-expression 311}# #{e 4040}#)
- #{p 4041}#
- (#{join-wraps 391}#
- #{w 4042}#
- (#{syntax-object-wrap 313}# #{e 4040}#))
- (#{syntax-object-module 315}# #{e 4040}#))
- #f)))))
- (#{match-each+ 4029}#
- (lambda (#{e 4063}#
- #{x-pat 4064}#
- #{y-pat 4065}#
- #{z-pat 4066}#
- #{w 4067}#
- #{r 4068}#
- #{mod 4069}#)
- (letrec*
- ((#{f 4080}#
- (lambda (#{e 4081}# #{w 4082}#)
- (if (pair? #{e 4081}#)
- (call-with-values
- (lambda ()
- (#{f 4080}# (cdr #{e 4081}#) #{w 4082}#))
- (lambda (#{xr* 4085}# #{y-pat 4086}# #{r 4087}#)
- (if #{r 4087}#
- (if (null? #{y-pat 4086}#)
- (begin
- (let ((#{xr 4092}#
- (#{match 4039}#
- (car #{e 4081}#)
- #{x-pat 4064}#
- #{w 4082}#
- '()
- #{mod 4069}#)))
- (if #{xr 4092}#
- (values
- (cons #{xr 4092}# #{xr* 4085}#)
- #{y-pat 4086}#
- #{r 4087}#)
- (values #f #f #f))))
- (values
- '()
- (cdr #{y-pat 4086}#)
- (#{match 4039}#
- (car #{e 4081}#)
- (car #{y-pat 4086}#)
- #{w 4082}#
- #{r 4087}#
- #{mod 4069}#)))
- (values #f #f #f))))
- (if (#{syntax-object? 309}# #{e 4081}#)
- (#{f 4080}#
- (#{syntax-object-expression 311}# #{e 4081}#)
- (#{join-wraps 391}# #{w 4082}# #{e 4081}#))
- (values
- '()
- #{y-pat 4065}#
- (#{match 4039}#
- #{e 4081}#
- #{z-pat 4066}#
- #{w 4082}#
- #{r 4068}#
- #{mod 4069}#)))))))
- (begin (#{f 4080}# #{e 4063}# #{w 4067}#)))))
- (#{match-each-any 4031}#
- (lambda (#{e 4096}# #{w 4097}# #{mod 4098}#)
- (if (pair? #{e 4096}#)
- (begin
- (let ((#{l 4105}#
- (#{match-each-any 4031}#
- (cdr #{e 4096}#)
- #{w 4097}#
- #{mod 4098}#)))
- (if #{l 4105}#
- (cons (#{wrap 409}#
- (car #{e 4096}#)
- #{w 4097}#
- #{mod 4098}#)
- #{l 4105}#)
- #f)))
- (if (null? #{e 4096}#)
- '()
- (if (#{syntax-object? 309}# #{e 4096}#)
- (#{match-each-any 4031}#
- (#{syntax-object-expression 311}# #{e 4096}#)
- (#{join-wraps 391}#
- #{w 4097}#
- (#{syntax-object-wrap 313}# #{e 4096}#))
- #{mod 4098}#)
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 3929}#))))))))
+ (set! macroexpand
+ (lambda*
+ (#{x 3949}#
+ #:optional
+ (#{m 3951}# 'e)
+ (#{esew 3953}# '(eval)))
+ (#{chi-top-sequence 415}#
+ (list #{x 3949}#)
+ '()
+ '((top))
+ #f
+ #{m 3951}#
+ #{esew 3953}#
+ (cons 'hygiene (module-name (current-module))))))
+ (set! identifier?
+ (lambda (#{x 3957}#)
+ (#{nonsymbol-id? 341}# #{x 3957}#)))
+ (set! datum->syntax
+ (lambda (#{id 3959}# #{datum 3960}#)
+ (#{make-syntax-object 307}#
+ #{datum 3960}#
+ (#{syntax-object-wrap 313}# #{id 3959}#)
+ (#{syntax-object-module 315}# #{id 3959}#))))
+ (set! syntax->datum
+ (lambda (#{x 3963}#)
+ (#{strip 449}# #{x 3963}# '(()))))
+ (set! syntax-source
+ (lambda (#{x 3966}#)
+ (#{source-annotation 324}# #{x 3966}#)))
+ (set! generate-temporaries
+ (lambda (#{ls 3968}#)
+ (begin
+ (let ((#{x 3972}# #{ls 3968}#))
+ (if (not (list? #{x 3972}#))
+ (syntax-violation
+ 'generate-temporaries
+ "invalid argument"
+ #{x 3972}#)))
+ (let ((#{mod 3974}#
+ (cons 'hygiene (module-name (current-module)))))
+ (map (lambda (#{x 3975}#)
+ (#{wrap 409}# (gensym) '((top)) #{mod 3974}#))
+ #{ls 3968}#)))))
+ (set! free-identifier=?
+ (lambda (#{x 3979}# #{y 3980}#)
+ (begin
+ (let ((#{x 3985}# #{x 3979}#))
+ (if (not (#{nonsymbol-id? 341}# #{x 3985}#))
+ (syntax-violation
+ 'free-identifier=?
+ "invalid argument"
+ #{x 3985}#)))
+ (let ((#{x 3988}# #{y 3980}#))
+ (if (not (#{nonsymbol-id? 341}# #{x 3988}#))
+ (syntax-violation
+ 'free-identifier=?
+ "invalid argument"
+ #{x 3988}#)))
+ (#{free-id=? 399}# #{x 3979}# #{y 3980}#))))
+ (set! bound-identifier=?
+ (lambda (#{x 3989}# #{y 3990}#)
+ (begin
+ (let ((#{x 3995}# #{x 3989}#))
+ (if (not (#{nonsymbol-id? 341}# #{x 3995}#))
+ (syntax-violation
+ 'bound-identifier=?
+ "invalid argument"
+ #{x 3995}#)))
+ (let ((#{x 3998}# #{y 3990}#))
+ (if (not (#{nonsymbol-id? 341}# #{x 3998}#))
+ (syntax-violation
+ 'bound-identifier=?
+ "invalid argument"
+ #{x 3998}#)))
+ (#{bound-id=? 401}# #{x 3989}# #{y 3990}#))))
+ (set! syntax-violation
+ (lambda*
+ (#{who 3999}#
+ #{message 4000}#
+ #{form 4001}#
+ #:optional
+ (#{subform 4005}# #f))
+ (begin
+ (let ((#{x 4009}# #{who 3999}#))
+ (if (not (let ((#{x 4010}# #{x 4009}#))
+ (let ((#{t 4014}# (not #{x 4010}#)))
+ (if #{t 4014}#
+ #{t 4014}#
+ (let ((#{t 4017}# (string? #{x 4010}#)))
+ (if #{t 4017}#
+ #{t 4017}#
+ (symbol? #{x 4010}#)))))))
+ (syntax-violation
+ 'syntax-violation
+ "invalid argument"
+ #{x 4009}#)))
+ (let ((#{x 4021}# #{message 4000}#))
+ (if (not (string? #{x 4021}#))
+ (syntax-violation
+ 'syntax-violation
+ "invalid argument"
+ #{x 4021}#)))
+ (throw 'syntax-error
+ #{who 3999}#
+ #{message 4000}#
+ (#{source-annotation 324}#
+ (let ((#{t 4024}# #{form 4001}#))
+ (if #{t 4024}# #{t 4024}# #{subform 4005}#)))
+ (#{strip 449}# #{form 4001}# '(()))
+ (if #{subform 4005}#
+ (#{strip 449}# #{subform 4005}# '(()))
#f)))))
- (#{match-empty 4033}#
- (lambda (#{p 4113}# #{r 4114}#)
- (if (null? #{p 4113}#)
- #{r 4114}#
- (if (eq? #{p 4113}# '_)
- #{r 4114}#
- (if (eq? #{p 4113}# 'any)
- (cons '() #{r 4114}#)
- (if (pair? #{p 4113}#)
- (#{match-empty 4033}#
- (car #{p 4113}#)
- (#{match-empty 4033}#
- (cdr #{p 4113}#)
- #{r 4114}#))
- (if (eq? #{p 4113}# 'each-any)
- (cons '() #{r 4114}#)
- (begin
- (let ((#{atom-key 4130}# (vector-ref #{p 4113}# 0)))
- (if (memv #{atom-key 4130}# '(each))
- (#{match-empty 4033}#
- (vector-ref #{p 4113}# 1)
- #{r 4114}#)
- (if (memv #{atom-key 4130}# '(each+))
- (#{match-empty 4033}#
- (vector-ref #{p 4113}# 1)
- (#{match-empty 4033}#
- (reverse (vector-ref #{p 4113}# 2))
- (#{match-empty 4033}#
- (vector-ref #{p 4113}# 3)
- #{r 4114}#)))
- (if (memv #{atom-key 4130}# '(free-id atom))
- #{r 4114}#
- (if (memv #{atom-key 4130}# '(vector))
- (#{match-empty 4033}#
- (vector-ref #{p 4113}# 1)
- #{r 4114}#))))))))))))))
- (#{combine 4035}#
- (lambda (#{r* 4135}# #{r 4136}#)
- (if (null? (car #{r* 4135}#))
- #{r 4136}#
- (cons (map car #{r* 4135}#)
- (#{combine 4035}#
- (map cdr #{r* 4135}#)
- #{r 4136}#)))))
- (#{match* 4037}#
- (lambda (#{e 4139}#
- #{p 4140}#
- #{w 4141}#
- #{r 4142}#
- #{mod 4143}#)
- (if (null? #{p 4140}#)
- (if (null? #{e 4139}#) #{r 4142}# #f)
- (if (pair? #{p 4140}#)
- (if (pair? #{e 4139}#)
- (#{match 4039}#
- (car #{e 4139}#)
- (car #{p 4140}#)
- #{w 4141}#
- (#{match 4039}#
- (cdr #{e 4139}#)
- (cdr #{p 4140}#)
- #{w 4141}#
- #{r 4142}#
- #{mod 4143}#)
- #{mod 4143}#)
- #f)
- (if (eq? #{p 4140}# 'each-any)
- (begin
- (let ((#{l 4160}#
- (#{match-each-any 4031}#
- #{e 4139}#
- #{w 4141}#
- #{mod 4143}#)))
- (if #{l 4160}# (cons #{l 4160}# #{r 4142}#) #f)))
- (begin
- (let ((#{atom-key 4166}# (vector-ref #{p 4140}# 0)))
- (if (memv #{atom-key 4166}# '(each))
- (if (null? #{e 4139}#)
- (#{match-empty 4033}#
- (vector-ref #{p 4140}# 1)
- #{r 4142}#)
- (begin
- (let ((#{l 4169}#
- (#{match-each 4027}#
- #{e 4139}#
- (vector-ref #{p 4140}# 1)
- #{w 4141}#
- #{mod 4143}#)))
- (if #{l 4169}#
- (letrec*
- ((#{collect 4174}#
- (lambda (#{l 4175}#)
- (if (null? (car #{l 4175}#))
- #{r 4142}#
- (cons (map car #{l 4175}#)
- (#{collect 4174}#
- (map cdr #{l 4175}#)))))))
- (begin (#{collect 4174}# #{l 4169}#)))
- #f))))
- (if (memv #{atom-key 4166}# '(each+))
- (call-with-values
- (lambda ()
- (#{match-each+ 4029}#
- #{e 4139}#
- (vector-ref #{p 4140}# 1)
- (vector-ref #{p 4140}# 2)
- (vector-ref #{p 4140}# 3)
- #{w 4141}#
- #{r 4142}#
- #{mod 4143}#))
- (lambda (#{xr* 4177}# #{y-pat 4178}# #{r 4179}#)
- (if #{r 4179}#
- (if (null? #{y-pat 4178}#)
- (if (null? #{xr* 4177}#)
- (#{match-empty 4033}#
- (vector-ref #{p 4140}# 1)
- #{r 4179}#)
- (#{combine 4035}#
- #{xr* 4177}#
- #{r 4179}#))
- #f)
- #f)))
- (if (memv #{atom-key 4166}# '(free-id))
- (if (#{id? 343}# #{e 4139}#)
- (if (#{free-id=? 399}#
- (#{wrap 409}#
- #{e 4139}#
- #{w 4141}#
- #{mod 4143}#)
- (vector-ref #{p 4140}# 1))
- #{r 4142}#
- #f)
+ (letrec*
+ ((#{match-each 4031}#
+ (lambda (#{e 4044}# #{p 4045}# #{w 4046}# #{mod 4047}#)
+ (if (pair? #{e 4044}#)
+ (let ((#{first 4055}#
+ (#{match 4043}#
+ (car #{e 4044}#)
+ #{p 4045}#
+ #{w 4046}#
+ '()
+ #{mod 4047}#)))
+ (if #{first 4055}#
+ (let ((#{rest 4059}#
+ (#{match-each 4031}#
+ (cdr #{e 4044}#)
+ #{p 4045}#
+ #{w 4046}#
+ #{mod 4047}#)))
+ (if #{rest 4059}#
+ (cons #{first 4055}# #{rest 4059}#)
+ #f))
+ #f))
+ (if (null? #{e 4044}#)
+ '()
+ (if (#{syntax-object? 309}# #{e 4044}#)
+ (#{match-each 4031}#
+ (#{syntax-object-expression 311}# #{e 4044}#)
+ #{p 4045}#
+ (#{join-wraps 391}#
+ #{w 4046}#
+ (#{syntax-object-wrap 313}# #{e 4044}#))
+ (#{syntax-object-module 315}# #{e 4044}#))
+ #f)))))
+ (#{match-each+ 4033}#
+ (lambda (#{e 4067}#
+ #{x-pat 4068}#
+ #{y-pat 4069}#
+ #{z-pat 4070}#
+ #{w 4071}#
+ #{r 4072}#
+ #{mod 4073}#)
+ (letrec*
+ ((#{f 4084}#
+ (lambda (#{e 4085}# #{w 4086}#)
+ (if (pair? #{e 4085}#)
+ (call-with-values
+ (lambda ()
+ (#{f 4084}# (cdr #{e 4085}#) #{w 4086}#))
+ (lambda (#{xr* 4089}# #{y-pat 4090}# #{r 4091}#)
+ (if #{r 4091}#
+ (if (null? #{y-pat 4090}#)
+ (let ((#{xr 4096}#
+ (#{match 4043}#
+ (car #{e 4085}#)
+ #{x-pat 4068}#
+ #{w 4086}#
+ '()
+ #{mod 4073}#)))
+ (if #{xr 4096}#
+ (values
+ (cons #{xr 4096}# #{xr* 4089}#)
+ #{y-pat 4090}#
+ #{r 4091}#)
+ (values #f #f #f)))
+ (values
+ '()
+ (cdr #{y-pat 4090}#)
+ (#{match 4043}#
+ (car #{e 4085}#)
+ (car #{y-pat 4090}#)
+ #{w 4086}#
+ #{r 4091}#
+ #{mod 4073}#)))
+ (values #f #f #f))))
+ (if (#{syntax-object? 309}# #{e 4085}#)
+ (#{f 4084}#
+ (#{syntax-object-expression 311}# #{e 4085}#)
+ (#{join-wraps 391}# #{w 4086}# #{e 4085}#))
+ (values
+ '()
+ #{y-pat 4069}#
+ (#{match 4043}#
+ #{e 4085}#
+ #{z-pat 4070}#
+ #{w 4086}#
+ #{r 4072}#
+ #{mod 4073}#)))))))
+ (#{f 4084}# #{e 4067}# #{w 4071}#))))
+ (#{match-each-any 4035}#
+ (lambda (#{e 4100}# #{w 4101}# #{mod 4102}#)
+ (if (pair? #{e 4100}#)
+ (let ((#{l 4109}#
+ (#{match-each-any 4035}#
+ (cdr #{e 4100}#)
+ #{w 4101}#
+ #{mod 4102}#)))
+ (if #{l 4109}#
+ (cons (#{wrap 409}#
+ (car #{e 4100}#)
+ #{w 4101}#
+ #{mod 4102}#)
+ #{l 4109}#)
+ #f))
+ (if (null? #{e 4100}#)
+ '()
+ (if (#{syntax-object? 309}# #{e 4100}#)
+ (#{match-each-any 4035}#
+ (#{syntax-object-expression 311}# #{e 4100}#)
+ (#{join-wraps 391}#
+ #{w 4101}#
+ (#{syntax-object-wrap 313}# #{e 4100}#))
+ #{mod 4102}#)
+ #f)))))
+ (#{match-empty 4037}#
+ (lambda (#{p 4117}# #{r 4118}#)
+ (if (null? #{p 4117}#)
+ #{r 4118}#
+ (if (eq? #{p 4117}# '_)
+ #{r 4118}#
+ (if (eq? #{p 4117}# 'any)
+ (cons '() #{r 4118}#)
+ (if (pair? #{p 4117}#)
+ (#{match-empty 4037}#
+ (car #{p 4117}#)
+ (#{match-empty 4037}#
+ (cdr #{p 4117}#)
+ #{r 4118}#))
+ (if (eq? #{p 4117}# 'each-any)
+ (cons '() #{r 4118}#)
+ (let ((#{atom-key 4134}# (vector-ref #{p 4117}# 0)))
+ (if (memv #{atom-key 4134}# '(each))
+ (#{match-empty 4037}#
+ (vector-ref #{p 4117}# 1)
+ #{r 4118}#)
+ (if (memv #{atom-key 4134}# '(each+))
+ (#{match-empty 4037}#
+ (vector-ref #{p 4117}# 1)
+ (#{match-empty 4037}#
+ (reverse (vector-ref #{p 4117}# 2))
+ (#{match-empty 4037}#
+ (vector-ref #{p 4117}# 3)
+ #{r 4118}#)))
+ (if (memv #{atom-key 4134}# '(free-id atom))
+ #{r 4118}#
+ (if (memv #{atom-key 4134}# '(vector))
+ (#{match-empty 4037}#
+ (vector-ref #{p 4117}# 1)
+ #{r 4118}#)))))))))))))
+ (#{combine 4039}#
+ (lambda (#{r* 4139}# #{r 4140}#)
+ (if (null? (car #{r* 4139}#))
+ #{r 4140}#
+ (cons (map car #{r* 4139}#)
+ (#{combine 4039}#
+ (map cdr #{r* 4139}#)
+ #{r 4140}#)))))
+ (#{match* 4041}#
+ (lambda (#{e 4143}#
+ #{p 4144}#
+ #{w 4145}#
+ #{r 4146}#
+ #{mod 4147}#)
+ (if (null? #{p 4144}#)
+ (if (null? #{e 4143}#) #{r 4146}# #f)
+ (if (pair? #{p 4144}#)
+ (if (pair? #{e 4143}#)
+ (#{match 4043}#
+ (car #{e 4143}#)
+ (car #{p 4144}#)
+ #{w 4145}#
+ (#{match 4043}#
+ (cdr #{e 4143}#)
+ (cdr #{p 4144}#)
+ #{w 4145}#
+ #{r 4146}#
+ #{mod 4147}#)
+ #{mod 4147}#)
+ #f)
+ (if (eq? #{p 4144}# 'each-any)
+ (let ((#{l 4164}#
+ (#{match-each-any 4035}#
+ #{e 4143}#
+ #{w 4145}#
+ #{mod 4147}#)))
+ (if #{l 4164}# (cons #{l 4164}# #{r 4146}#) #f))
+ (let ((#{atom-key 4170}# (vector-ref #{p 4144}# 0)))
+ (if (memv #{atom-key 4170}# '(each))
+ (if (null? #{e 4143}#)
+ (#{match-empty 4037}#
+ (vector-ref #{p 4144}# 1)
+ #{r 4146}#)
+ (let ((#{l 4173}#
+ (#{match-each 4031}#
+ #{e 4143}#
+ (vector-ref #{p 4144}# 1)
+ #{w 4145}#
+ #{mod 4147}#)))
+ (if #{l 4173}#
+ (letrec*
+ ((#{collect 4178}#
+ (lambda (#{l 4179}#)
+ (if (null? (car #{l 4179}#))
+ #{r 4146}#
+ (cons (map car #{l 4179}#)
+ (#{collect 4178}#
+ (map cdr #{l 4179}#)))))))
+ (#{collect 4178}# #{l 4173}#))
+ #f)))
+ (if (memv #{atom-key 4170}# '(each+))
+ (call-with-values
+ (lambda ()
+ (#{match-each+ 4033}#
+ #{e 4143}#
+ (vector-ref #{p 4144}# 1)
+ (vector-ref #{p 4144}# 2)
+ (vector-ref #{p 4144}# 3)
+ #{w 4145}#
+ #{r 4146}#
+ #{mod 4147}#))
+ (lambda (#{xr* 4181}# #{y-pat 4182}# #{r 4183}#)
+ (if #{r 4183}#
+ (if (null? #{y-pat 4182}#)
+ (if (null? #{xr* 4181}#)
+ (#{match-empty 4037}#
+ (vector-ref #{p 4144}# 1)
+ #{r 4183}#)
+ (#{combine 4039}# #{xr* 4181}# #{r 4183}#))
#f)
- (if (memv #{atom-key 4166}# '(atom))
- (if (equal?
- (vector-ref #{p 4140}# 1)
- (#{strip 449}# #{e 4139}# #{w 4141}#))
- #{r 4142}#
- #f)
- (if (memv #{atom-key 4166}# '(vector))
- (if (vector? #{e 4139}#)
- (#{match 4039}#
- (vector->list #{e 4139}#)
- (vector-ref #{p 4140}# 1)
- #{w 4141}#
- #{r 4142}#
- #{mod 4143}#)
- #f)))))))))))))
- (#{match 4039}#
- (lambda (#{e 4196}#
- #{p 4197}#
- #{w 4198}#
- #{r 4199}#
- #{mod 4200}#)
- (if (not #{r 4199}#)
- #f
- (if (eq? #{p 4197}# '_)
- #{r 4199}#
- (if (eq? #{p 4197}# 'any)
- (cons (#{wrap 409}# #{e 4196}# #{w 4198}# #{mod 4200}#)
- #{r 4199}#)
- (if (#{syntax-object? 309}# #{e 4196}#)
- (#{match* 4037}#
- (#{syntax-object-expression 311}# #{e 4196}#)
- #{p 4197}#
- (#{join-wraps 391}#
- #{w 4198}#
- (#{syntax-object-wrap 313}# #{e 4196}#))
- #{r 4199}#
- (#{syntax-object-module 315}# #{e 4196}#))
- (#{match* 4037}#
- #{e 4196}#
- #{p 4197}#
- #{w 4198}#
- #{r 4199}#
- #{mod 4200}#))))))))
- (begin
- (set! $sc-dispatch
- (lambda (#{e 4215}# #{p 4216}#)
- (if (eq? #{p 4216}# 'any)
- (list #{e 4215}#)
- (if (eq? #{p 4216}# '_)
+ #f)))
+ (if (memv #{atom-key 4170}# '(free-id))
+ (if (#{id? 343}# #{e 4143}#)
+ (if (#{free-id=? 399}#
+ (#{wrap 409}#
+ #{e 4143}#
+ #{w 4145}#
+ #{mod 4147}#)
+ (vector-ref #{p 4144}# 1))
+ #{r 4146}#
+ #f)
+ #f)
+ (if (memv #{atom-key 4170}# '(atom))
+ (if (equal?
+ (vector-ref #{p 4144}# 1)
+ (#{strip 449}# #{e 4143}# #{w 4145}#))
+ #{r 4146}#
+ #f)
+ (if (memv #{atom-key 4170}# '(vector))
+ (if (vector? #{e 4143}#)
+ (#{match 4043}#
+ (vector->list #{e 4143}#)
+ (vector-ref #{p 4144}# 1)
+ #{w 4145}#
+ #{r 4146}#
+ #{mod 4147}#)
+ #f))))))))))))
+ (#{match 4043}#
+ (lambda (#{e 4200}#
+ #{p 4201}#
+ #{w 4202}#
+ #{r 4203}#
+ #{mod 4204}#)
+ (if (not #{r 4203}#)
+ #f
+ (if (eq? #{p 4201}# '_)
+ #{r 4203}#
+ (if (eq? #{p 4201}# 'any)
+ (cons (#{wrap 409}# #{e 4200}# #{w 4202}# #{mod 4204}#)
+ #{r 4203}#)
+ (if (#{syntax-object? 309}# #{e 4200}#)
+ (#{match* 4041}#
+ (#{syntax-object-expression 311}# #{e 4200}#)
+ #{p 4201}#
+ (#{join-wraps 391}#
+ #{w 4202}#
+ (#{syntax-object-wrap 313}# #{e 4200}#))
+ #{r 4203}#
+ (#{syntax-object-module 315}# #{e 4200}#))
+ (#{match* 4041}#
+ #{e 4200}#
+ #{p 4201}#
+ #{w 4202}#
+ #{r 4203}#
+ #{mod 4204}#))))))))
+ (set! $sc-dispatch
+ (lambda (#{e 4219}# #{p 4220}#)
+ (if (eq? #{p 4220}# 'any)
+ (list #{e 4219}#)
+ (if (eq? #{p 4220}# '_)
+ '()
+ (if (#{syntax-object? 309}# #{e 4219}#)
+ (#{match* 4041}#
+ (#{syntax-object-expression 311}# #{e 4219}#)
+ #{p 4220}#
+ (#{syntax-object-wrap 313}# #{e 4219}#)
+ '()
+ (#{syntax-object-module 315}# #{e 4219}#))
+ (#{match* 4041}#
+ #{e 4219}#
+ #{p 4220}#
+ '(())
'()
- (if (#{syntax-object? 309}# #{e 4215}#)
- (#{match* 4037}#
- (#{syntax-object-expression 311}# #{e 4215}#)
- #{p 4216}#
- (#{syntax-object-wrap 313}# #{e 4215}#)
- '()
- (#{syntax-object-module 315}# #{e 4215}#))
- (#{match* 4037}#
- #{e 4215}#
- #{p 4216}#
- '(())
- '()
- #f)))))))))))
+ #f)))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
- (lambda (#{x 4227}#)
- (let ((#{tmp 4229}# #{x 4227}#))
- (let ((#{tmp 4230}#
+ (lambda (#{x 4231}#)
+ (let ((#{tmp 4233}# #{x 4231}#))
+ (let ((#{tmp 4234}#
($sc-dispatch
- #{tmp 4229}#
+ #{tmp 4233}#
'(_ () any . each-any))))
- (if #{tmp 4230}#
+ (if #{tmp 4234}#
(@apply
- (lambda (#{e1 4233}# #{e2 4234}#)
+ (lambda (#{e1 4237}# #{e2 4238}#)
(cons '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i4231" "i4232"))
+ #("i4235" "i4236"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4228")))
+ #(ribcage #(x) #((top)) #("i4232")))
(hygiene guile))
- (cons '() (cons #{e1 4233}# #{e2 4234}#))))
- #{tmp 4230}#)
- (let ((#{tmp 4236}#
+ (cons '() (cons #{e1 4237}# #{e2 4238}#))))
+ #{tmp 4234}#)
+ (let ((#{tmp 4240}#
($sc-dispatch
- #{tmp 4229}#
+ #{tmp 4233}#
'(_ ((any any)) any . each-any))))
- (if #{tmp 4236}#
+ (if #{tmp 4240}#
(@apply
- (lambda (#{out 4241}#
- #{in 4242}#
- #{e1 4243}#
- #{e2 4244}#)
+ (lambda (#{out 4245}#
+ #{in 4246}#
+ #{e1 4247}#
+ #{e2 4248}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i4237" "i4238" "i4239" "i4240"))
+ #("i4241" "i4242" "i4243" "i4244"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4228")))
+ #(ribcage #(x) #((top)) #("i4232")))
(hygiene guile))
- #{in 4242}#
+ #{in 4246}#
'()
- (list #{out 4241}#
+ (list #{out 4245}#
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i4237" "i4238" "i4239" "i4240"))
+ #("i4241" "i4242" "i4243" "i4244"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4228")))
+ #(ribcage #(x) #((top)) #("i4232")))
(hygiene guile))
(cons '()
- (cons #{e1 4243}# #{e2 4244}#))))))
- #{tmp 4236}#)
- (let ((#{tmp 4246}#
+ (cons #{e1 4247}# #{e2 4248}#))))))
+ #{tmp 4240}#)
+ (let ((#{tmp 4250}#
($sc-dispatch
- #{tmp 4229}#
+ #{tmp 4233}#
'(_ #(each (any any)) any . each-any))))
- (if #{tmp 4246}#
+ (if #{tmp 4250}#
(@apply
- (lambda (#{out 4251}#
- #{in 4252}#
- #{e1 4253}#
- #{e2 4254}#)
+ (lambda (#{out 4255}#
+ #{in 4256}#
+ #{e1 4257}#
+ #{e2 4258}#)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i4247" "i4248" "i4249" "i4250"))
+ #("i4251" "i4252" "i4253" "i4254"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4228")))
+ #(ribcage #(x) #((top)) #("i4232")))
(hygiene guile))
(cons '#(syntax-object
list
@@ -14294,63 +14010,63 @@
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i4247" "i4248" "i4249" "i4250"))
+ #("i4251" "i4252" "i4253" "i4254"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4228")))
+ #(ribcage #(x) #((top)) #("i4232")))
(hygiene guile))
- #{in 4252}#)
+ #{in 4256}#)
'()
- (list #{out 4251}#
+ (list #{out 4255}#
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i4247"
- "i4248"
- "i4249"
- "i4250"))
+ #("i4251"
+ "i4252"
+ "i4253"
+ "i4254"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4228")))
+ #("i4232")))
(hygiene guile))
(cons '()
- (cons #{e1 4253}#
- #{e2 4254}#))))))
- #{tmp 4246}#)
+ (cons #{e1 4257}#
+ #{e2 4258}#))))))
+ #{tmp 4250}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4229}#)))))))))))
+ #{tmp 4233}#)))))))))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
- (lambda (#{x 4258}#)
- (let ((#{tmp 4260}# #{x 4258}#))
- (let ((#{tmp 4261}#
+ (lambda (#{x 4262}#)
+ (let ((#{tmp 4264}# #{x 4262}#))
+ (let ((#{tmp 4265}#
($sc-dispatch
- #{tmp 4260}#
+ #{tmp 4264}#
'(_ each-any . #(each ((any . any) any))))))
- (if #{tmp 4261}#
+ (if #{tmp 4265}#
(@apply
- (lambda (#{k 4266}#
- #{keyword 4267}#
- #{pattern 4268}#
- #{template 4269}#)
+ (lambda (#{k 4270}#
+ #{keyword 4271}#
+ #{pattern 4272}#
+ #{template 4273}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i4262" "i4263" "i4264" "i4265"))
+ #("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
'(#(syntax-object
x
@@ -14358,9 +14074,9 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i4262" "i4263" "i4264" "i4265"))
+ #("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile)))
(vector
'(#(syntax-object
@@ -14369,9 +14085,9 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i4262" "i4263" "i4264" "i4265"))
+ #("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
.
#(syntax-object
@@ -14380,9 +14096,9 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i4262" "i4263" "i4264" "i4265"))
+ #("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile)))
(cons '#(syntax-object
patterns
@@ -14390,20 +14106,20 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i4262" "i4263" "i4264" "i4265"))
+ #("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
- #{pattern 4268}#))
+ #{pattern 4272}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i4262" "i4263" "i4264" "i4265"))
+ #("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
(cons '#(syntax-object
x
@@ -14411,13 +14127,13 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i4262" "i4263" "i4264" "i4265"))
+ #("i4266" "i4267" "i4268" "i4269"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
- (cons #{k 4266}#
- (map (lambda (#{tmp 4273}#
- #{tmp 4272}#)
+ (cons #{k 4270}#
+ (map (lambda (#{tmp 4277}#
+ #{tmp 4276}#)
(list (cons '#(syntax-object
dummy
((top)
@@ -14430,10 +14146,10 @@
(top)
(top)
(top))
- #("i4262"
- "i4263"
- "i4264"
- "i4265"))
+ #("i4266"
+ "i4267"
+ "i4268"
+ "i4269"))
#(ribcage
()
()
@@ -14441,9 +14157,9 @@
#(ribcage
#(x)
#((top))
- #("i4259")))
+ #("i4263")))
(hygiene guile))
- #{tmp 4272}#)
+ #{tmp 4276}#)
(list '#(syntax-object
syntax
((top)
@@ -14456,10 +14172,10 @@
(top)
(top)
(top))
- #("i4262"
- "i4263"
- "i4264"
- "i4265"))
+ #("i4266"
+ "i4267"
+ "i4268"
+ "i4269"))
#(ribcage
()
()
@@ -14467,41 +14183,41 @@
#(ribcage
#(x)
#((top))
- #("i4259")))
+ #("i4263")))
(hygiene guile))
- #{tmp 4273}#)))
- #{template 4269}#
- #{pattern 4268}#))))))
- #{tmp 4261}#)
- (let ((#{tmp 4274}#
+ #{tmp 4277}#)))
+ #{template 4273}#
+ #{pattern 4272}#))))))
+ #{tmp 4265}#)
+ (let ((#{tmp 4278}#
($sc-dispatch
- #{tmp 4260}#
+ #{tmp 4264}#
'(_ each-any any . #(each ((any . any) any))))))
- (if (if #{tmp 4274}#
+ (if (if #{tmp 4278}#
(@apply
- (lambda (#{k 4280}#
- #{docstring 4281}#
- #{keyword 4282}#
- #{pattern 4283}#
- #{template 4284}#)
- (string? (syntax->datum #{docstring 4281}#)))
- #{tmp 4274}#)
+ (lambda (#{k 4284}#
+ #{docstring 4285}#
+ #{keyword 4286}#
+ #{pattern 4287}#
+ #{template 4288}#)
+ (string? (syntax->datum #{docstring 4285}#)))
+ #{tmp 4278}#)
#f)
(@apply
- (lambda (#{k 4290}#
- #{docstring 4291}#
- #{keyword 4292}#
- #{pattern 4293}#
- #{template 4294}#)
+ (lambda (#{k 4294}#
+ #{docstring 4295}#
+ #{keyword 4296}#
+ #{pattern 4297}#
+ #{template 4298}#)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i4285" "i4286" "i4287" "i4288" "i4289"))
+ #("i4289" "i4290" "i4291" "i4292" "i4293"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
'(#(syntax-object
x
@@ -14509,11 +14225,11 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i4285" "i4286" "i4287" "i4288" "i4289"))
+ #("i4289" "i4290" "i4291" "i4292" "i4293"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile)))
- #{docstring 4291}#
+ #{docstring 4295}#
(vector
'(#(syntax-object
macro-type
@@ -14521,9 +14237,9 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i4285" "i4286" "i4287" "i4288" "i4289"))
+ #("i4289" "i4290" "i4291" "i4292" "i4293"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
.
#(syntax-object
@@ -14532,9 +14248,9 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i4285" "i4286" "i4287" "i4288" "i4289"))
+ #("i4289" "i4290" "i4291" "i4292" "i4293"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile)))
(cons '#(syntax-object
patterns
@@ -14542,28 +14258,28 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i4285"
- "i4286"
- "i4287"
- "i4288"
- "i4289"))
+ #("i4289"
+ "i4290"
+ "i4291"
+ "i4292"
+ "i4293"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
- #{pattern 4293}#))
+ #{pattern 4297}#))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i4285"
- "i4286"
- "i4287"
- "i4288"
- "i4289"))
+ #("i4289"
+ "i4290"
+ "i4291"
+ "i4292"
+ "i4293"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
(cons '#(syntax-object
x
@@ -14575,17 +14291,17 @@
pattern
template)
#((top) (top) (top) (top) (top))
- #("i4285"
- "i4286"
- "i4287"
- "i4288"
- "i4289"))
+ #("i4289"
+ "i4290"
+ "i4291"
+ "i4292"
+ "i4293"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4259")))
+ #(ribcage #(x) #((top)) #("i4263")))
(hygiene guile))
- (cons #{k 4290}#
- (map (lambda (#{tmp 4298}#
- #{tmp 4297}#)
+ (cons #{k 4294}#
+ (map (lambda (#{tmp 4302}#
+ #{tmp 4301}#)
(list (cons '#(syntax-object
dummy
((top)
@@ -14600,11 +14316,11 @@
(top)
(top)
(top))
- #("i4285"
- "i4286"
- "i4287"
- "i4288"
-
"i4289"))
+ #("i4289"
+ "i4290"
+ "i4291"
+ "i4292"
+
"i4293"))
#(ribcage
()
()
@@ -14612,10 +14328,10 @@
#(ribcage
#(x)
#((top))
-
#("i4259")))
+
#("i4263")))
(hygiene
guile))
- #{tmp 4297}#)
+ #{tmp 4301}#)
(list '#(syntax-object
syntax
((top)
@@ -14630,11 +14346,11 @@
(top)
(top)
(top))
- #("i4285"
- "i4286"
- "i4287"
- "i4288"
-
"i4289"))
+ #("i4289"
+ "i4290"
+ "i4291"
+ "i4292"
+
"i4293"))
#(ribcage
()
()
@@ -14642,48 +14358,48 @@
#(ribcage
#(x)
#((top))
-
#("i4259")))
+
#("i4263")))
(hygiene
guile))
- #{tmp 4298}#)))
- #{template 4294}#
- #{pattern 4293}#))))))
- #{tmp 4274}#)
+ #{tmp 4302}#)))
+ #{template 4298}#
+ #{pattern 4297}#))))))
+ #{tmp 4278}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4260}#)))))))))
+ #{tmp 4264}#)))))))))
(define let*
(make-syntax-transformer
'let*
'macro
- (lambda (#{x 4299}#)
- (let ((#{tmp 4301}# #{x 4299}#))
- (let ((#{tmp 4302}#
+ (lambda (#{x 4303}#)
+ (let ((#{tmp 4305}# #{x 4303}#))
+ (let ((#{tmp 4306}#
($sc-dispatch
- #{tmp 4301}#
+ #{tmp 4305}#
'(any #(each (any any)) any . each-any))))
- (if (if #{tmp 4302}#
+ (if (if #{tmp 4306}#
(@apply
- (lambda (#{let* 4308}#
- #{x 4309}#
- #{v 4310}#
- #{e1 4311}#
- #{e2 4312}#)
- (and-map identifier? #{x 4309}#))
- #{tmp 4302}#)
+ (lambda (#{let* 4312}#
+ #{x 4313}#
+ #{v 4314}#
+ #{e1 4315}#
+ #{e2 4316}#)
+ (and-map identifier? #{x 4313}#))
+ #{tmp 4306}#)
#f)
(@apply
- (lambda (#{let* 4319}#
- #{x 4320}#
- #{v 4321}#
- #{e1 4322}#
- #{e2 4323}#)
+ (lambda (#{let* 4323}#
+ #{x 4324}#
+ #{v 4325}#
+ #{e1 4326}#
+ #{e2 4327}#)
(letrec*
- ((#{f 4326}#
- (lambda (#{bindings 4327}#)
- (if (null? #{bindings 4327}#)
+ ((#{f 4330}#
+ (lambda (#{bindings 4331}#)
+ (if (null? #{bindings 4331}#)
(cons '#(syntax-object
let
((top)
@@ -14691,27 +14407,27 @@
#(ribcage
#(f bindings)
#((top) (top))
- #("i4324" "i4325"))
+ #("i4328" "i4329"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
- #("i4314"
- "i4315"
- "i4316"
- "i4317"
- "i4318"))
+ #("i4318"
+ "i4319"
+ "i4320"
+ "i4321"
+ "i4322"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4300")))
+ #(ribcage #(x) #((top)) #("i4304")))
(hygiene guile))
- (cons '() (cons #{e1 4322}# #{e2 4323}#)))
- (let ((#{tmp 4332}#
- (list (#{f 4326}# (cdr #{bindings 4327}#))
- (car #{bindings 4327}#))))
- (let ((#{tmp 4333}#
- ($sc-dispatch #{tmp 4332}# '(any any))))
- (if #{tmp 4333}#
+ (cons '() (cons #{e1 4326}# #{e2 4327}#)))
+ (let ((#{tmp 4336}#
+ (list (#{f 4330}# (cdr #{bindings 4331}#))
+ (car #{bindings 4331}#))))
+ (let ((#{tmp 4337}#
+ ($sc-dispatch #{tmp 4336}# '(any any))))
+ (if #{tmp 4337}#
(@apply
- (lambda (#{body 4336}# #{binding 4337}#)
+ (lambda (#{body 4340}# #{binding 4341}#)
(list '#(syntax-object
let
((top)
@@ -14719,96 +14435,95 @@
#(ribcage
#(body binding)
#((top) (top))
- #("i4334" "i4335"))
+ #("i4338" "i4339"))
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
- #("i4324" "i4325"))
+ #("i4328" "i4329"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
- #("i4314"
- "i4315"
- "i4316"
- "i4317"
- "i4318"))
+ #("i4318"
+ "i4319"
+ "i4320"
+ "i4321"
+ "i4322"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4300")))
+ #("i4304")))
(hygiene guile))
- (list #{binding 4337}#)
- #{body 4336}#))
- #{tmp 4333}#)
+ (list #{binding 4341}#)
+ #{body 4340}#))
+ #{tmp 4337}#)
(syntax-violation
#f
"source expression failed to match any
pattern"
- #{tmp 4332}#))))))))
- (begin
- (#{f 4326}# (map list #{x 4320}# #{v 4321}#)))))
- #{tmp 4302}#)
+ #{tmp 4336}#))))))))
+ (#{f 4330}# (map list #{x 4324}# #{v 4325}#))))
+ #{tmp 4306}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4301}#)))))))
+ #{tmp 4305}#)))))))
(define do
(make-syntax-transformer
'do
'macro
- (lambda (#{orig-x 4338}#)
- (let ((#{tmp 4340}# #{orig-x 4338}#))
- (let ((#{tmp 4341}#
+ (lambda (#{orig-x 4342}#)
+ (let ((#{tmp 4344}# #{orig-x 4342}#))
+ (let ((#{tmp 4345}#
($sc-dispatch
- #{tmp 4340}#
+ #{tmp 4344}#
'(_ #(each (any any . any))
(any . each-any)
.
each-any))))
- (if #{tmp 4341}#
+ (if #{tmp 4345}#
(@apply
- (lambda (#{var 4348}#
- #{init 4349}#
- #{step 4350}#
- #{e0 4351}#
- #{e1 4352}#
- #{c 4353}#)
- (let ((#{tmp 4355}#
- (map (lambda (#{v 4376}# #{s 4377}#)
- (let ((#{tmp 4380}# #{s 4377}#))
- (let ((#{tmp 4381}#
- ($sc-dispatch #{tmp 4380}# '())))
- (if #{tmp 4381}#
+ (lambda (#{var 4352}#
+ #{init 4353}#
+ #{step 4354}#
+ #{e0 4355}#
+ #{e1 4356}#
+ #{c 4357}#)
+ (let ((#{tmp 4359}#
+ (map (lambda (#{v 4380}# #{s 4381}#)
+ (let ((#{tmp 4384}# #{s 4381}#))
+ (let ((#{tmp 4385}#
+ ($sc-dispatch #{tmp 4384}# '())))
+ (if #{tmp 4385}#
(@apply
- (lambda () #{v 4376}#)
- #{tmp 4381}#)
- (let ((#{tmp 4382}#
+ (lambda () #{v 4380}#)
+ #{tmp 4385}#)
+ (let ((#{tmp 4386}#
($sc-dispatch
- #{tmp 4380}#
+ #{tmp 4384}#
'(any))))
- (if #{tmp 4382}#
+ (if #{tmp 4386}#
(@apply
- (lambda (#{e 4384}#) #{e 4384}#)
- #{tmp 4382}#)
- (let ((#{_ 4386}# #{tmp 4380}#))
+ (lambda (#{e 4388}#) #{e 4388}#)
+ #{tmp 4386}#)
+ (let ((#{_ 4390}# #{tmp 4384}#))
(syntax-violation
'do
"bad step expression"
- #{orig-x 4338}#
- #{s 4377}#))))))))
- #{var 4348}#
- #{step 4350}#)))
- (let ((#{tmp 4356}#
- ($sc-dispatch #{tmp 4355}# 'each-any)))
- (if #{tmp 4356}#
+ #{orig-x 4342}#
+ #{s 4381}#))))))))
+ #{var 4352}#
+ #{step 4354}#)))
+ (let ((#{tmp 4360}#
+ ($sc-dispatch #{tmp 4359}# 'each-any)))
+ (if #{tmp 4360}#
(@apply
- (lambda (#{step 4358}#)
- (let ((#{tmp 4359}# #{e1 4352}#))
- (let ((#{tmp 4360}#
- ($sc-dispatch #{tmp 4359}# '())))
- (if #{tmp 4360}#
+ (lambda (#{step 4362}#)
+ (let ((#{tmp 4363}# #{e1 4356}#))
+ (let ((#{tmp 4364}#
+ ($sc-dispatch #{tmp 4363}# '())))
+ (if #{tmp 4364}#
(@apply
(lambda ()
(list '#(syntax-object
@@ -14818,7 +14533,7 @@
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -14827,17 +14542,17 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
'#(syntax-object
doloop
@@ -14846,7 +14561,7 @@
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -14855,19 +14570,19 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
- (map list #{var 4348}# #{init 4349}#)
+ (map list #{var 4352}# #{init 4353}#)
(list '#(syntax-object
if
((top)
@@ -14875,7 +14590,7 @@
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -14884,17 +14599,17 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
(list '#(syntax-object
not
@@ -14903,7 +14618,7 @@
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var
init
@@ -14917,19 +14632,19 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
- #{e0 4351}#)
+ #{e0 4355}#)
(cons '#(syntax-object
begin
((top)
@@ -14937,7 +14652,7 @@
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var
init
@@ -14951,20 +14666,20 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
(append
- #{c 4353}#
+ #{c 4357}#
(list (cons
'#(syntax-object
doloop
((top)
@@ -14975,7 +14690,7 @@
#(ribcage
#(step)
#((top))
-
#("i4357"))
+
#("i4361"))
#(ribcage
#(var
init
@@ -14989,12 +14704,12 @@
(top)
(top)
(top))
-
#("i4342"
-
"i4343"
-
"i4344"
-
"i4345"
-
"i4346"
-
"i4347"))
+
#("i4346"
+
"i4347"
+
"i4348"
+
"i4349"
+
"i4350"
+
"i4351"))
#(ribcage
()
()
@@ -15002,30 +14717,30 @@
#(ribcage
#(orig-x)
#((top))
-
#("i4339")))
+
#("i4343")))
(hygiene
guile))
- #{step
4358}#)))))))
- #{tmp 4360}#)
- (let ((#{tmp 4365}#
+ #{step
4362}#)))))))
+ #{tmp 4364}#)
+ (let ((#{tmp 4369}#
($sc-dispatch
- #{tmp 4359}#
+ #{tmp 4363}#
'(any . each-any))))
- (if #{tmp 4365}#
+ (if #{tmp 4369}#
(@apply
- (lambda (#{e1 4368}# #{e2 4369}#)
+ (lambda (#{e1 4372}# #{e2 4373}#)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i4366" "i4367"))
+ #("i4370" "i4371"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -15034,17 +14749,17 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
'#(syntax-object
doloop
@@ -15052,12 +14767,12 @@
#(ribcage
#(e1 e2)
#((top) (top))
- #("i4366" "i4367"))
+ #("i4370" "i4371"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -15066,33 +14781,33 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
(map list
- #{var 4348}#
- #{init 4349}#)
+ #{var 4352}#
+ #{init 4353}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i4366" "i4367"))
+ #("i4370" "i4371"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var
init
@@ -15106,27 +14821,27 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
- #{e0 4351}#
+ #{e0 4355}#
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i4366"
- "i4367"))
+ #("i4370"
+ "i4371"))
#(ribcage
()
()
@@ -15134,7 +14849,7 @@
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var
init
@@ -15148,12 +14863,12 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage
()
()
@@ -15161,18 +14876,18 @@
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
- (cons #{e1 4368}#
- #{e2 4369}#))
+ (cons #{e1 4372}#
+ #{e2 4373}#))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i4366"
- "i4367"))
+ #("i4370"
+ "i4371"))
#(ribcage
()
()
@@ -15180,7 +14895,7 @@
#(ribcage
#(step)
#((top))
- #("i4357"))
+ #("i4361"))
#(ribcage
#(var
init
@@ -15194,12 +14909,12 @@
(top)
(top)
(top))
- #("i4342"
- "i4343"
- "i4344"
- "i4345"
- "i4346"
- "i4347"))
+ #("i4346"
+ "i4347"
+ "i4348"
+ "i4349"
+ "i4350"
+ "i4351"))
#(ribcage
()
()
@@ -15207,10 +14922,10 @@
#(ribcage
#(orig-x)
#((top))
- #("i4339")))
+ #("i4343")))
(hygiene guile))
(append
- #{c 4353}#
+ #{c 4357}#
(list (cons
'#(syntax-object
doloop
((top)
@@ -15219,8 +14934,8 @@
e2)
#((top)
(top))
-
#("i4366"
-
"i4367"))
+
#("i4370"
+
"i4371"))
#(ribcage
()
()
@@ -15228,7 +14943,7 @@
#(ribcage
#(step)
#((top))
-
#("i4357"))
+
#("i4361"))
#(ribcage
#(var
init
@@ -15242,12 +14957,12 @@
(top)
(top)
(top))
-
#("i4342"
-
"i4343"
-
"i4344"
-
"i4345"
-
"i4346"
-
"i4347"))
+
#("i4346"
+
"i4347"
+
"i4348"
+
"i4349"
+
"i4350"
+
"i4351"))
#(ribcage
()
()
@@ -15255,37 +14970,37 @@
#(ribcage
#(orig-x)
#((top))
-
#("i4339")))
+
#("i4343")))
(hygiene
guile))
- #{step
4358}#)))))))
- #{tmp 4365}#)
+ #{step
4362}#)))))))
+ #{tmp 4369}#)
(syntax-violation
#f
"source expression failed to match any
pattern"
- #{tmp 4359}#)))))))
- #{tmp 4356}#)
+ #{tmp 4363}#)))))))
+ #{tmp 4360}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4355}#)))))
- #{tmp 4341}#)
+ #{tmp 4359}#)))))
+ #{tmp 4345}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4340}#)))))))
+ #{tmp 4344}#)))))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
(letrec*
- ((#{quasi 4390}#
- (lambda (#{p 4403}# #{lev 4404}#)
- (let ((#{tmp 4407}# #{p 4403}#))
- (let ((#{tmp 4408}#
+ ((#{quasi 4394}#
+ (lambda (#{p 4407}# #{lev 4408}#)
+ (let ((#{tmp 4411}# #{p 4407}#))
+ (let ((#{tmp 4412}#
($sc-dispatch
- #{tmp 4407}#
+ #{tmp 4411}#
'(#(free-id
#(syntax-object
unquote
@@ -15294,7 +15009,7 @@
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15303,28 +15018,28 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
any))))
- (if #{tmp 4408}#
+ (if #{tmp 4412}#
(@apply
- (lambda (#{p 4410}#)
- (if (= #{lev 4404}# 0)
+ (lambda (#{p 4414}#)
+ (if (= #{lev 4408}# 0)
(list '#(syntax-object
"value"
((top)
- #(ribcage #(p) #((top)) #("i4409"))
+ #(ribcage #(p) #((top)) #("i4413"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15333,25 +15048,25 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{p 4410}#)
- (#{quasicons 4394}#
+ #{p 4414}#)
+ (#{quasicons 4398}#
'(#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i4409"))
+ #(ribcage #(p) #((top)) #("i4413"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15360,23 +15075,23 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
#(syntax-object
unquote
((top)
- #(ribcage #(p) #((top)) #("i4409"))
+ #(ribcage #(p) #((top)) #("i4413"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15385,21 +15100,21 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
- (#{quasi 4390}#
- (list #{p 4410}#)
- (#{1-}# #{lev 4404}#)))))
- #{tmp 4408}#)
- (let ((#{tmp 4411}#
+ (#{quasi 4394}#
+ (list #{p 4414}#)
+ (#{1-}# #{lev 4408}#)))))
+ #{tmp 4412}#)
+ (let ((#{tmp 4415}#
($sc-dispatch
- #{tmp 4407}#
+ #{tmp 4411}#
'(#(free-id
#(syntax-object
quasiquote
@@ -15408,7 +15123,7 @@
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15417,28 +15132,28 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
any))))
- (if #{tmp 4411}#
+ (if #{tmp 4415}#
(@apply
- (lambda (#{p 4413}#)
- (#{quasicons 4394}#
+ (lambda (#{p 4417}#)
+ (#{quasicons 4398}#
'(#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i4412"))
+ #(ribcage #(p) #((top)) #("i4416"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15447,23 +15162,23 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
#(syntax-object
quasiquote
((top)
- #(ribcage #(p) #((top)) #("i4412"))
+ #(ribcage #(p) #((top)) #("i4416"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15472,27 +15187,27 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
- (#{quasi 4390}#
- (list #{p 4413}#)
- (#{1+}# #{lev 4404}#))))
- #{tmp 4411}#)
- (let ((#{tmp 4414}#
- ($sc-dispatch #{tmp 4407}# '(any . any))))
- (if #{tmp 4414}#
+ (#{quasi 4394}#
+ (list #{p 4417}#)
+ (#{1+}# #{lev 4408}#))))
+ #{tmp 4415}#)
+ (let ((#{tmp 4418}#
+ ($sc-dispatch #{tmp 4411}# '(any . any))))
+ (if #{tmp 4418}#
(@apply
- (lambda (#{p 4417}# #{q 4418}#)
- (let ((#{tmp 4419}# #{p 4417}#))
- (let ((#{tmp 4420}#
+ (lambda (#{p 4421}# #{q 4422}#)
+ (let ((#{tmp 4423}# #{p 4421}#))
+ (let ((#{tmp 4424}#
($sc-dispatch
- #{tmp 4419}#
+ #{tmp 4423}#
'(#(free-id
#(syntax-object
unquote
@@ -15500,12 +15215,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i4415" "i4416"))
+ #("i4419" "i4420"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15520,40 +15235,40 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
.
each-any))))
- (if #{tmp 4420}#
+ (if #{tmp 4424}#
(@apply
- (lambda (#{p 4422}#)
- (if (= #{lev 4404}# 0)
- (#{quasilist* 4398}#
- (map (lambda (#{tmp 4423}#)
+ (lambda (#{p 4426}#)
+ (if (= #{lev 4408}# 0)
+ (#{quasilist* 4402}#
+ (map (lambda (#{tmp 4427}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i4421"))
+ #("i4425"))
#(ribcage
#(p q)
#((top) (top))
- #("i4415"
- "i4416"))
+ #("i4419"
+ "i4420"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405"
- "i4406"))
+ #("i4409"
+ "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15568,37 +15283,37 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{tmp 4423}#))
- #{p 4422}#)
- (#{quasi 4390}#
- #{q 4418}#
- #{lev 4404}#))
- (#{quasicons 4394}#
- (#{quasicons 4394}#
+ #{tmp 4427}#))
+ #{p 4426}#)
+ (#{quasi 4394}#
+ #{q 4422}#
+ #{lev 4408}#))
+ (#{quasicons 4398}#
+ (#{quasicons 4398}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
- #("i4421"))
+ #("i4425"))
#(ribcage
#(p q)
#((top) (top))
- #("i4415" "i4416"))
+ #("i4419" "i4420"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15613,13 +15328,13 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
#(syntax-object
unquote
@@ -15627,16 +15342,16 @@
#(ribcage
#(p)
#((top))
- #("i4421"))
+ #("i4425"))
#(ribcage
#(p q)
#((top) (top))
- #("i4415" "i4416"))
+ #("i4419" "i4420"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15651,24 +15366,24 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
- (#{quasi 4390}#
- #{p 4422}#
- (#{1-}# #{lev 4404}#)))
- (#{quasi 4390}#
- #{q 4418}#
- #{lev 4404}#))))
- #{tmp 4420}#)
- (let ((#{tmp 4425}#
+ (#{quasi 4394}#
+ #{p 4426}#
+ (#{1-}# #{lev 4408}#)))
+ (#{quasi 4394}#
+ #{q 4422}#
+ #{lev 4408}#))))
+ #{tmp 4424}#)
+ (let ((#{tmp 4429}#
($sc-dispatch
- #{tmp 4419}#
+ #{tmp 4423}#
'(#(free-id
#(syntax-object
unquote-splicing
@@ -15676,12 +15391,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i4415" "i4416"))
+ #("i4419" "i4420"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15696,35 +15411,35 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
.
each-any))))
- (if #{tmp 4425}#
+ (if #{tmp 4429}#
(@apply
- (lambda (#{p 4427}#)
- (if (= #{lev 4404}# 0)
- (#{quasiappend 4396}#
- (map (lambda (#{tmp 4428}#)
+ (lambda (#{p 4431}#)
+ (if (= #{lev 4408}# 0)
+ (#{quasiappend 4400}#
+ (map (lambda (#{tmp 4432}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i4426"))
+ #("i4430"))
#(ribcage
#(p q)
#((top)
(top))
- #("i4415"
- "i4416"))
+ #("i4419"
+ "i4420"))
#(ribcage
()
()
@@ -15733,8 +15448,8 @@
#(p lev)
#((top)
(top))
- #("i4405"
- "i4406"))
+ #("i4409"
+ "i4410"))
#(ribcage
(emit
quasivector
quasilist*
@@ -15749,37 +15464,37 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{tmp 4428}#))
- #{p 4427}#)
- (#{quasi 4390}#
- #{q 4418}#
- #{lev 4404}#))
- (#{quasicons 4394}#
- (#{quasicons 4394}#
+ #{tmp 4432}#))
+ #{p 4431}#)
+ (#{quasi 4394}#
+ #{q 4422}#
+ #{lev 4408}#))
+ (#{quasicons 4398}#
+ (#{quasicons 4398}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
- #("i4426"))
+ #("i4430"))
#(ribcage
#(p q)
#((top) (top))
- #("i4415" "i4416"))
+ #("i4419" "i4420"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15794,13 +15509,13 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
#(syntax-object
unquote-splicing
@@ -15808,16 +15523,16 @@
#(ribcage
#(p)
#((top))
- #("i4426"))
+ #("i4430"))
#(ribcage
#(p q)
#((top) (top))
- #("i4415" "i4416"))
+ #("i4419" "i4420"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15832,50 +15547,50 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
- (#{quasi 4390}#
- #{p 4427}#
- (#{1-}# #{lev 4404}#)))
- (#{quasi 4390}#
- #{q 4418}#
- #{lev 4404}#))))
- #{tmp 4425}#)
- (let ((#{_ 4431}# #{tmp 4419}#))
- (#{quasicons 4394}#
- (#{quasi 4390}#
- #{p 4417}#
- #{lev 4404}#)
- (#{quasi 4390}#
- #{q 4418}#
- #{lev 4404}#)))))))))
- #{tmp 4414}#)
- (let ((#{tmp 4432}#
+ (#{quasi 4394}#
+ #{p 4431}#
+ (#{1-}# #{lev 4408}#)))
+ (#{quasi 4394}#
+ #{q 4422}#
+ #{lev 4408}#))))
+ #{tmp 4429}#)
+ (let ((#{_ 4435}# #{tmp 4423}#))
+ (#{quasicons 4398}#
+ (#{quasi 4394}#
+ #{p 4421}#
+ #{lev 4408}#)
+ (#{quasi 4394}#
+ #{q 4422}#
+ #{lev 4408}#)))))))))
+ #{tmp 4418}#)
+ (let ((#{tmp 4436}#
($sc-dispatch
- #{tmp 4407}#
+ #{tmp 4411}#
'#(vector each-any))))
- (if #{tmp 4432}#
+ (if #{tmp 4436}#
(@apply
- (lambda (#{x 4434}#)
- (#{quasivector 4400}#
- (#{vquasi 4392}# #{x 4434}# #{lev 4404}#)))
- #{tmp 4432}#)
- (let ((#{p 4437}# #{tmp 4407}#))
+ (lambda (#{x 4438}#)
+ (#{quasivector 4404}#
+ (#{vquasi 4396}# #{x 4438}# #{lev 4408}#)))
+ #{tmp 4436}#)
+ (let ((#{p 4441}# #{tmp 4411}#))
(list '#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i4436"))
+ #(ribcage #(p) #((top)) #("i4440"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4405" "i4406"))
+ #("i4409" "i4410"))
#(ribcage
(emit quasivector
quasilist*
@@ -15890,27 +15605,27 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{p 4437}#)))))))))))))
- (#{vquasi 4392}#
- (lambda (#{p 4438}# #{lev 4439}#)
- (let ((#{tmp 4442}# #{p 4438}#))
- (let ((#{tmp 4443}#
- ($sc-dispatch #{tmp 4442}# '(any . any))))
- (if #{tmp 4443}#
+ #{p 4441}#)))))))))))))
+ (#{vquasi 4396}#
+ (lambda (#{p 4442}# #{lev 4443}#)
+ (let ((#{tmp 4446}# #{p 4442}#))
+ (let ((#{tmp 4447}#
+ ($sc-dispatch #{tmp 4446}# '(any . any))))
+ (if #{tmp 4447}#
(@apply
- (lambda (#{p 4446}# #{q 4447}#)
- (let ((#{tmp 4448}# #{p 4446}#))
- (let ((#{tmp 4449}#
+ (lambda (#{p 4450}# #{q 4451}#)
+ (let ((#{tmp 4452}# #{p 4450}#))
+ (let ((#{tmp 4453}#
($sc-dispatch
- #{tmp 4448}#
+ #{tmp 4452}#
'(#(free-id
#(syntax-object
unquote
@@ -15918,12 +15633,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -15938,38 +15653,38 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
.
each-any))))
- (if #{tmp 4449}#
+ (if #{tmp 4453}#
(@apply
- (lambda (#{p 4451}#)
- (if (= #{lev 4439}# 0)
- (#{quasilist* 4398}#
- (map (lambda (#{tmp 4452}#)
+ (lambda (#{p 4455}#)
+ (if (= #{lev 4443}# 0)
+ (#{quasilist* 4402}#
+ (map (lambda (#{tmp 4456}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i4450"))
+ #("i4454"))
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -15984,32 +15699,32 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{tmp 4452}#))
- #{p 4451}#)
- (#{vquasi 4392}# #{q 4447}# #{lev 4439}#))
- (#{quasicons 4394}#
- (#{quasicons 4394}#
+ #{tmp 4456}#))
+ #{p 4455}#)
+ (#{vquasi 4396}# #{q 4451}# #{lev 4443}#))
+ (#{quasicons 4398}#
+ (#{quasicons 4398}#
'(#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i4450"))
+ #(ribcage #(p) #((top)) #("i4454"))
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -16024,27 +15739,27 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
#(syntax-object
unquote
((top)
- #(ribcage #(p) #((top)) #("i4450"))
+ #(ribcage #(p) #((top)) #("i4454"))
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -16059,22 +15774,22 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
- (#{quasi 4390}#
- #{p 4451}#
- (#{1-}# #{lev 4439}#)))
- (#{vquasi 4392}# #{q 4447}# #{lev 4439}#))))
- #{tmp 4449}#)
- (let ((#{tmp 4454}#
+ (#{quasi 4394}#
+ #{p 4455}#
+ (#{1-}# #{lev 4443}#)))
+ (#{vquasi 4396}# #{q 4451}# #{lev 4443}#))))
+ #{tmp 4453}#)
+ (let ((#{tmp 4458}#
($sc-dispatch
- #{tmp 4448}#
+ #{tmp 4452}#
'(#(free-id
#(syntax-object
unquote-splicing
@@ -16082,12 +15797,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -16102,38 +15817,38 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
.
each-any))))
- (if #{tmp 4454}#
+ (if #{tmp 4458}#
(@apply
- (lambda (#{p 4456}#)
- (if (= #{lev 4439}# 0)
- (#{quasiappend 4396}#
- (map (lambda (#{tmp 4457}#)
+ (lambda (#{p 4460}#)
+ (if (= #{lev 4443}# 0)
+ (#{quasiappend 4400}#
+ (map (lambda (#{tmp 4461}#)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i4455"))
+ #("i4459"))
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -16148,37 +15863,37 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{tmp 4457}#))
- #{p 4456}#)
- (#{vquasi 4392}#
- #{q 4447}#
- #{lev 4439}#))
- (#{quasicons 4394}#
- (#{quasicons 4394}#
+ #{tmp 4461}#))
+ #{p 4460}#)
+ (#{vquasi 4396}#
+ #{q 4451}#
+ #{lev 4443}#))
+ (#{quasicons 4398}#
+ (#{quasicons 4398}#
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
- #("i4455"))
+ #("i4459"))
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -16193,13 +15908,13 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
#(syntax-object
unquote-splicing
@@ -16207,16 +15922,16 @@
#(ribcage
#(p)
#((top))
- #("i4455"))
+ #("i4459"))
#(ribcage
#(p q)
#((top) (top))
- #("i4444" "i4445"))
+ #("i4448" "i4449"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -16231,30 +15946,30 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile)))
- (#{quasi 4390}#
- #{p 4456}#
- (#{1-}# #{lev 4439}#)))
- (#{vquasi 4392}#
- #{q 4447}#
- #{lev 4439}#))))
- #{tmp 4454}#)
- (let ((#{_ 4460}# #{tmp 4448}#))
- (#{quasicons 4394}#
- (#{quasi 4390}# #{p 4446}# #{lev 4439}#)
- (#{vquasi 4392}#
- #{q 4447}#
- #{lev 4439}#)))))))))
- #{tmp 4443}#)
- (let ((#{tmp 4461}# ($sc-dispatch #{tmp 4442}# '())))
- (if #{tmp 4461}#
+ (#{quasi 4394}#
+ #{p 4460}#
+ (#{1-}# #{lev 4443}#)))
+ (#{vquasi 4396}#
+ #{q 4451}#
+ #{lev 4443}#))))
+ #{tmp 4458}#)
+ (let ((#{_ 4464}# #{tmp 4452}#))
+ (#{quasicons 4398}#
+ (#{quasi 4394}# #{p 4450}# #{lev 4443}#)
+ (#{vquasi 4396}#
+ #{q 4451}#
+ #{lev 4443}#)))))))))
+ #{tmp 4447}#)
+ (let ((#{tmp 4465}# ($sc-dispatch #{tmp 4446}# '())))
+ (if #{tmp 4465}#
(@apply
(lambda ()
'(#(syntax-object
@@ -16264,7 +15979,7 @@
#(ribcage
#(p lev)
#((top) (top))
- #("i4440" "i4441"))
+ #("i4444" "i4445"))
#(ribcage
(emit quasivector
quasilist*
@@ -16273,66 +15988,66 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
()))
- #{tmp 4461}#)
+ #{tmp 4465}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4442}#))))))))
- (#{quasicons 4394}#
- (lambda (#{x 4462}# #{y 4463}#)
- (let ((#{tmp 4467}# (list #{x 4462}# #{y 4463}#)))
- (let ((#{tmp 4468}#
- ($sc-dispatch #{tmp 4467}# '(any any))))
- (if #{tmp 4468}#
+ #{tmp 4446}#))))))))
+ (#{quasicons 4398}#
+ (lambda (#{x 4466}# #{y 4467}#)
+ (let ((#{tmp 4471}# (list #{x 4466}# #{y 4467}#)))
+ (let ((#{tmp 4472}#
+ ($sc-dispatch #{tmp 4471}# '(any any))))
+ (if #{tmp 4472}#
(@apply
- (lambda (#{x 4471}# #{y 4472}#)
- (let ((#{tmp 4473}# #{y 4472}#))
- (let ((#{tmp 4474}#
+ (lambda (#{x 4475}# #{y 4476}#)
+ (let ((#{tmp 4477}# #{y 4476}#))
+ (let ((#{tmp 4478}#
($sc-dispatch
- #{tmp 4473}#
+ #{tmp 4477}#
'(#(atom "quote") any))))
- (if #{tmp 4474}#
+ (if #{tmp 4478}#
(@apply
- (lambda (#{dy 4476}#)
- (let ((#{tmp 4477}# #{x 4471}#))
- (let ((#{tmp 4478}#
+ (lambda (#{dy 4480}#)
+ (let ((#{tmp 4481}# #{x 4475}#))
+ (let ((#{tmp 4482}#
($sc-dispatch
- #{tmp 4477}#
+ #{tmp 4481}#
'(#(atom "quote") any))))
- (if #{tmp 4478}#
+ (if #{tmp 4482}#
(@apply
- (lambda (#{dx 4480}#)
+ (lambda (#{dx 4484}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(dx)
#((top))
- #("i4479"))
+ #("i4483"))
#(ribcage
#(dy)
#((top))
- #("i4475"))
+ #("i4479"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4469" "i4470"))
+ #("i4473" "i4474"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4464" "i4465"))
+ #("i4468" "i4469"))
#(ribcage
(emit quasivector
quasilist*
@@ -16347,40 +16062,40 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- (cons #{dx 4480}# #{dy 4476}#)))
- #{tmp 4478}#)
- (let ((#{_ 4482}# #{tmp 4477}#))
- (if (null? #{dy 4476}#)
+ (cons #{dx 4484}# #{dy 4480}#)))
+ #{tmp 4482}#)
+ (let ((#{_ 4486}# #{tmp 4481}#))
+ (if (null? #{dy 4480}#)
(list '#(syntax-object
"list"
((top)
#(ribcage
#(_)
#((top))
- #("i4481"))
+ #("i4485"))
#(ribcage
#(dy)
#((top))
- #("i4475"))
+ #("i4479"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4469" "i4470"))
+ #("i4473" "i4474"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4464" "i4465"))
+ #("i4468" "i4469"))
#(ribcage
(emit quasivector
quasilist*
@@ -16395,37 +16110,37 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{x 4471}#)
+ #{x 4475}#)
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
- #("i4481"))
+ #("i4485"))
#(ribcage
#(dy)
#((top))
- #("i4475"))
+ #("i4479"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4469" "i4470"))
+ #("i4473" "i4474"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4464" "i4465"))
+ #("i4468" "i4469"))
#(ribcage
(emit quasivector
quasilist*
@@ -16440,42 +16155,42 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{x 4471}#
- #{y 4472}#)))))))
- #{tmp 4474}#)
- (let ((#{tmp 4483}#
+ #{x 4475}#
+ #{y 4476}#)))))))
+ #{tmp 4478}#)
+ (let ((#{tmp 4487}#
($sc-dispatch
- #{tmp 4473}#
+ #{tmp 4477}#
'(#(atom "list") . any))))
- (if #{tmp 4483}#
+ (if #{tmp 4487}#
(@apply
- (lambda (#{stuff 4485}#)
+ (lambda (#{stuff 4489}#)
(cons '#(syntax-object
"list"
((top)
#(ribcage
#(stuff)
#((top))
- #("i4484"))
+ #("i4488"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4469" "i4470"))
+ #("i4473" "i4474"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4464" "i4465"))
+ #("i4468" "i4469"))
#(ribcage
(emit quasivector
quasilist*
@@ -16490,41 +16205,41 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- (cons #{x 4471}# #{stuff 4485}#)))
- #{tmp 4483}#)
- (let ((#{tmp 4486}#
+ (cons #{x 4475}# #{stuff 4489}#)))
+ #{tmp 4487}#)
+ (let ((#{tmp 4490}#
($sc-dispatch
- #{tmp 4473}#
+ #{tmp 4477}#
'(#(atom "list*") . any))))
- (if #{tmp 4486}#
+ (if #{tmp 4490}#
(@apply
- (lambda (#{stuff 4488}#)
+ (lambda (#{stuff 4492}#)
(cons '#(syntax-object
"list*"
((top)
#(ribcage
#(stuff)
#((top))
- #("i4487"))
+ #("i4491"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4469" "i4470"))
+ #("i4473" "i4474"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4464" "i4465"))
+ #("i4468" "i4469"))
#(ribcage
(emit quasivector
quasilist*
@@ -16539,35 +16254,35 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- (cons #{x 4471}# #{stuff 4488}#)))
- #{tmp 4486}#)
- (let ((#{_ 4490}# #{tmp 4473}#))
+ (cons #{x 4475}# #{stuff 4492}#)))
+ #{tmp 4490}#)
+ (let ((#{_ 4494}# #{tmp 4477}#))
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
- #("i4489"))
+ #("i4493"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4469" "i4470"))
+ #("i4473" "i4474"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4464" "i4465"))
+ #("i4468" "i4469"))
#(ribcage
(emit quasivector
quasilist*
@@ -16582,30 +16297,30 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{x 4471}#
- #{y 4472}#))))))))))
- #{tmp 4468}#)
+ #{x 4475}#
+ #{y 4476}#))))))))))
+ #{tmp 4472}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4467}#))))))
- (#{quasiappend 4396}#
- (lambda (#{x 4491}# #{y 4492}#)
- (let ((#{tmp 4495}# #{y 4492}#))
- (let ((#{tmp 4496}#
- ($sc-dispatch #{tmp 4495}# '(#(atom "quote") ()))))
- (if #{tmp 4496}#
+ #{tmp 4471}#))))))
+ (#{quasiappend 4400}#
+ (lambda (#{x 4495}# #{y 4496}#)
+ (let ((#{tmp 4499}# #{y 4496}#))
+ (let ((#{tmp 4500}#
+ ($sc-dispatch #{tmp 4499}# '(#(atom "quote") ()))))
+ (if #{tmp 4500}#
(@apply
(lambda ()
- (if (null? #{x 4491}#)
+ (if (null? #{x 4495}#)
'(#(syntax-object
"quote"
((top)
@@ -16613,7 +16328,7 @@
#(ribcage
#(x y)
#((top) (top))
- #("i4493" "i4494"))
+ #("i4497" "i4498"))
#(ribcage
(emit quasivector
quasilist*
@@ -16622,23 +16337,23 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
())
- (if (null? (cdr #{x 4491}#))
- (car #{x 4491}#)
- (let ((#{tmp 4503}# #{x 4491}#))
- (let ((#{tmp 4504}#
- ($sc-dispatch #{tmp 4503}# 'each-any)))
- (if #{tmp 4504}#
+ (if (null? (cdr #{x 4495}#))
+ (car #{x 4495}#)
+ (let ((#{tmp 4507}# #{x 4495}#))
+ (let ((#{tmp 4508}#
+ ($sc-dispatch #{tmp 4507}# 'each-any)))
+ (if #{tmp 4508}#
(@apply
- (lambda (#{p 4506}#)
+ (lambda (#{p 4510}#)
(cons '#(syntax-object
"append"
((top)
@@ -16646,12 +16361,12 @@
#(ribcage
#(p)
#((top))
- #("i4505"))
+ #("i4509"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4493" "i4494"))
+ #("i4497" "i4498"))
#(ribcage
(emit quasivector
quasilist*
@@ -16666,30 +16381,30 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{p 4506}#))
- #{tmp 4504}#)
+ #{p 4510}#))
+ #{tmp 4508}#)
(syntax-violation
#f
"source expression failed to match any
pattern"
- #{tmp 4503}#)))))))
- #{tmp 4496}#)
- (let ((#{_ 4509}# #{tmp 4495}#))
- (if (null? #{x 4491}#)
- #{y 4492}#
- (let ((#{tmp 4514}# (list #{x 4491}# #{y 4492}#)))
- (let ((#{tmp 4515}#
- ($sc-dispatch #{tmp 4514}# '(each-any any))))
- (if #{tmp 4515}#
+ #{tmp 4507}#)))))))
+ #{tmp 4500}#)
+ (let ((#{_ 4513}# #{tmp 4499}#))
+ (if (null? #{x 4495}#)
+ #{y 4496}#
+ (let ((#{tmp 4518}# (list #{x 4495}# #{y 4496}#)))
+ (let ((#{tmp 4519}#
+ ($sc-dispatch #{tmp 4518}# '(each-any any))))
+ (if #{tmp 4519}#
(@apply
- (lambda (#{p 4518}# #{y 4519}#)
+ (lambda (#{p 4522}# #{y 4523}#)
(cons '#(syntax-object
"append"
((top)
@@ -16697,13 +16412,13 @@
#(ribcage
#(p y)
#((top) (top))
- #("i4516" "i4517"))
- #(ribcage #(_) #((top)) #("i4508"))
+ #("i4520" "i4521"))
+ #(ribcage #(_) #((top)) #("i4512"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i4493" "i4494"))
+ #("i4497" "i4498"))
#(ribcage
(emit quasivector
quasilist*
@@ -16718,47 +16433,47 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- (append #{p 4518}# (list #{y 4519}#))))
- #{tmp 4515}#)
+ (append #{p 4522}# (list #{y 4523}#))))
+ #{tmp 4519}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4514}#)))))))))))
- (#{quasilist* 4398}#
- (lambda (#{x 4521}# #{y 4522}#)
+ #{tmp 4518}#)))))))))))
+ (#{quasilist* 4402}#
+ (lambda (#{x 4525}# #{y 4526}#)
(letrec*
- ((#{f 4527}#
- (lambda (#{x 4528}#)
- (if (null? #{x 4528}#)
- #{y 4522}#
- (#{quasicons 4394}#
- (car #{x 4528}#)
- (#{f 4527}# (cdr #{x 4528}#)))))))
- (begin (#{f 4527}# #{x 4521}#)))))
- (#{quasivector 4400}#
- (lambda (#{x 4529}#)
- (let ((#{tmp 4531}# #{x 4529}#))
- (let ((#{tmp 4532}#
+ ((#{f 4531}#
+ (lambda (#{x 4532}#)
+ (if (null? #{x 4532}#)
+ #{y 4526}#
+ (#{quasicons 4398}#
+ (car #{x 4532}#)
+ (#{f 4531}# (cdr #{x 4532}#)))))))
+ (#{f 4531}# #{x 4525}#))))
+ (#{quasivector 4404}#
+ (lambda (#{x 4533}#)
+ (let ((#{tmp 4535}# #{x 4533}#))
+ (let ((#{tmp 4536}#
($sc-dispatch
- #{tmp 4531}#
+ #{tmp 4535}#
'(#(atom "quote") each-any))))
- (if #{tmp 4532}#
+ (if #{tmp 4536}#
(@apply
- (lambda (#{x 4534}#)
+ (lambda (#{x 4538}#)
(list '#(syntax-object
"quote"
((top)
- #(ribcage #(x) #((top)) #("i4533"))
+ #(ribcage #(x) #((top)) #("i4537"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4530"))
+ #(ribcage #(x) #((top)) #("i4534"))
#(ribcage
(emit quasivector
quasilist*
@@ -16767,53 +16482,53 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- (list->vector #{x 4534}#)))
- #{tmp 4532}#)
- (let ((#{_ 4537}# #{tmp 4531}#))
+ (list->vector #{x 4538}#)))
+ #{tmp 4536}#)
+ (let ((#{_ 4541}# #{tmp 4535}#))
(letrec*
- ((#{f 4541}#
- (lambda (#{y 4542}# #{k 4543}#)
- (let ((#{tmp 4554}# #{y 4542}#))
- (let ((#{tmp 4555}#
+ ((#{f 4545}#
+ (lambda (#{y 4546}# #{k 4547}#)
+ (let ((#{tmp 4558}# #{y 4546}#))
+ (let ((#{tmp 4559}#
($sc-dispatch
- #{tmp 4554}#
+ #{tmp 4558}#
'(#(atom "quote") each-any))))
- (if #{tmp 4555}#
+ (if #{tmp 4559}#
(@apply
- (lambda (#{y 4557}#)
- (#{k 4543}#
- (map (lambda (#{tmp 4558}#)
+ (lambda (#{y 4561}#)
+ (#{k 4547}#
+ (map (lambda (#{tmp 4562}#)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(y)
#((top))
- #("i4556"))
+ #("i4560"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
- #("i4538"
- "i4539"
- "i4540"))
+ #("i4542"
+ "i4543"
+ "i4544"))
#(ribcage
#(_)
#((top))
- #("i4536"))
+ #("i4540"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4530"))
+ #("i4534"))
#(ribcage
(emit quasivector
quasilist*
@@ -16828,75 +16543,75 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{tmp 4558}#))
- #{y 4557}#)))
- #{tmp 4555}#)
- (let ((#{tmp 4559}#
+ #{tmp 4562}#))
+ #{y 4561}#)))
+ #{tmp 4559}#)
+ (let ((#{tmp 4563}#
($sc-dispatch
- #{tmp 4554}#
+ #{tmp 4558}#
'(#(atom "list") . each-any))))
- (if #{tmp 4559}#
+ (if #{tmp 4563}#
(@apply
- (lambda (#{y 4561}#)
- (#{k 4543}# #{y 4561}#))
- #{tmp 4559}#)
- (let ((#{tmp 4563}#
+ (lambda (#{y 4565}#)
+ (#{k 4547}# #{y 4565}#))
+ #{tmp 4563}#)
+ (let ((#{tmp 4567}#
($sc-dispatch
- #{tmp 4554}#
+ #{tmp 4558}#
'(#(atom "list*")
.
#(each+ any (any) ())))))
- (if #{tmp 4563}#
+ (if #{tmp 4567}#
(@apply
- (lambda (#{y 4566}# #{z 4567}#)
- (#{f 4541}#
- #{z 4567}#
- (lambda (#{ls 4568}#)
- (#{k 4543}#
+ (lambda (#{y 4570}# #{z 4571}#)
+ (#{f 4545}#
+ #{z 4571}#
+ (lambda (#{ls 4572}#)
+ (#{k 4547}#
(append
- #{y 4566}#
- #{ls 4568}#)))))
- #{tmp 4563}#)
- (let ((#{else 4572}# #{tmp 4554}#))
- (let ((#{tmp 4576}# #{x 4529}#))
- (let ((#{ g4573 4578}#
- #{tmp 4576}#))
+ #{y 4570}#
+ #{ls 4572}#)))))
+ #{tmp 4567}#)
+ (let ((#{else 4576}# #{tmp 4558}#))
+ (let ((#{tmp 4580}# #{x 4533}#))
+ (let ((#{ g4577 4582}#
+ #{tmp 4580}#))
(list '#(syntax-object
"list->vector"
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g4573}#)
- #((m4574 top))
- #("i4577"))
+ #(#{ g4577}#)
+ #((m4578 top))
+ #("i4581"))
#(ribcage
#(else)
#((top))
- #("i4571"))
+ #("i4575"))
#(ribcage () () ())
#(ribcage
#(f y k)
#((top) (top) (top))
- #("i4538"
- "i4539"
- "i4540"))
+ #("i4542"
+ "i4543"
+ "i4544"))
#(ribcage
#(_)
#((top))
- #("i4536"))
+ #("i4540"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4530"))
+ #("i4534"))
#(ribcage
(emit quasivector
quasilist*
@@ -16911,93 +16626,92 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{ g4573
4578}#))))))))))))))
- (begin
- (#{f 4541}#
- #{x 4529}#
- (lambda (#{ls 4544}#)
- (let ((#{tmp 4549}# #{ls 4544}#))
- (let ((#{tmp 4550}#
- ($sc-dispatch #{tmp 4549}# 'each-any)))
- (if #{tmp 4550}#
- (@apply
- (lambda (#{ g4546 4552}#)
- (cons '#(syntax-object
- "vector"
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(#{ g4546}#)
- #((m4547 top))
- #("i4551"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(ls)
- #((top))
- #("i4545"))
- #(ribcage
- #(_)
- #((top))
- #("i4536"))
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i4530"))
- #(ribcage
- (emit quasivector
- quasilist*
- quasiappend
- quasicons
- vquasi
- quasi)
- ((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- ("i4401"
- "i4399"
- "i4397"
- "i4395"
- "i4393"
- "i4391"
- "i4389")))
- (hygiene guile))
- #{ g4546 4552}#))
- #{tmp 4550}#)
- (syntax-violation
- #f
- "source expression failed to match any
pattern"
- #{tmp 4549}#))))))))))))))
- (#{emit 4402}#
- (lambda (#{x 4579}#)
- (let ((#{tmp 4581}# #{x 4579}#))
- (let ((#{tmp 4582}#
+ #{ g4577
4582}#))))))))))))))
+ (#{f 4545}#
+ #{x 4533}#
+ (lambda (#{ls 4548}#)
+ (let ((#{tmp 4553}# #{ls 4548}#))
+ (let ((#{tmp 4554}#
+ ($sc-dispatch #{tmp 4553}# 'each-any)))
+ (if #{tmp 4554}#
+ (@apply
+ (lambda (#{ g4550 4556}#)
+ (cons '#(syntax-object
+ "vector"
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(#{ g4550}#)
+ #((m4551 top))
+ #("i4555"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(ls)
+ #((top))
+ #("i4549"))
+ #(ribcage
+ #(_)
+ #((top))
+ #("i4540"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("i4534"))
+ #(ribcage
+ (emit quasivector
+ quasilist*
+ quasiappend
+ quasicons
+ vquasi
+ quasi)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("i4405"
+ "i4403"
+ "i4401"
+ "i4399"
+ "i4397"
+ "i4395"
+ "i4393")))
+ (hygiene guile))
+ #{ g4550 4556}#))
+ #{tmp 4554}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any
pattern"
+ #{tmp 4553}#)))))))))))))
+ (#{emit 4406}#
+ (lambda (#{x 4583}#)
+ (let ((#{tmp 4585}# #{x 4583}#))
+ (let ((#{tmp 4586}#
($sc-dispatch
- #{tmp 4581}#
+ #{tmp 4585}#
'(#(atom "quote") any))))
- (if #{tmp 4582}#
+ (if #{tmp 4586}#
(@apply
- (lambda (#{x 4584}#)
+ (lambda (#{x 4588}#)
(list '#(syntax-object
quote
((top)
- #(ribcage #(x) #((top)) #("i4583"))
+ #(ribcage #(x) #((top)) #("i4587"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4580"))
+ #(ribcage #(x) #((top)) #("i4584"))
#(ribcage
(emit quasivector
quasilist*
@@ -17006,46 +16720,46 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{x 4584}#))
- #{tmp 4582}#)
- (let ((#{tmp 4585}#
+ #{x 4588}#))
+ #{tmp 4586}#)
+ (let ((#{tmp 4589}#
($sc-dispatch
- #{tmp 4581}#
+ #{tmp 4585}#
'(#(atom "list") . each-any))))
- (if #{tmp 4585}#
+ (if #{tmp 4589}#
(@apply
- (lambda (#{x 4587}#)
- (let ((#{tmp 4591}# (map #{emit 4402}# #{x 4587}#)))
- (let ((#{tmp 4592}#
- ($sc-dispatch #{tmp 4591}# 'each-any)))
- (if #{tmp 4592}#
+ (lambda (#{x 4591}#)
+ (let ((#{tmp 4595}# (map #{emit 4406}# #{x 4591}#)))
+ (let ((#{tmp 4596}#
+ ($sc-dispatch #{tmp 4595}# 'each-any)))
+ (if #{tmp 4596}#
(@apply
- (lambda (#{ g4588 4594}#)
+ (lambda (#{ g4592 4598}#)
(cons '#(syntax-object
list
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g4588}#)
- #((m4589 top))
- #("i4593"))
+ #(#{ g4592}#)
+ #((m4593 top))
+ #("i4597"))
#(ribcage
#(x)
#((top))
- #("i4586"))
+ #("i4590"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4580"))
+ #("i4584"))
#(ribcage
(emit quasivector
quasilist*
@@ -17060,70 +16774,70 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{ g4588 4594}#))
- #{tmp 4592}#)
+ #{ g4592 4598}#))
+ #{tmp 4596}#)
(syntax-violation
#f
"source expression failed to match any
pattern"
- #{tmp 4591}#)))))
- #{tmp 4585}#)
- (let ((#{tmp 4597}#
+ #{tmp 4595}#)))))
+ #{tmp 4589}#)
+ (let ((#{tmp 4601}#
($sc-dispatch
- #{tmp 4581}#
+ #{tmp 4585}#
'(#(atom "list*") . #(each+ any (any) ())))))
- (if #{tmp 4597}#
+ (if #{tmp 4601}#
(@apply
- (lambda (#{x 4600}# #{y 4601}#)
+ (lambda (#{x 4604}# #{y 4605}#)
(letrec*
- ((#{f 4604}#
- (lambda (#{x* 4605}#)
- (if (null? #{x* 4605}#)
- (#{emit 4402}# #{y 4601}#)
- (let ((#{tmp 4611}#
- (list (#{emit 4402}#
- (car #{x* 4605}#))
- (#{f 4604}#
- (cdr #{x* 4605}#)))))
- (let ((#{tmp 4612}#
+ ((#{f 4608}#
+ (lambda (#{x* 4609}#)
+ (if (null? #{x* 4609}#)
+ (#{emit 4406}# #{y 4605}#)
+ (let ((#{tmp 4615}#
+ (list (#{emit 4406}#
+ (car #{x* 4609}#))
+ (#{f 4608}#
+ (cdr #{x* 4609}#)))))
+ (let ((#{tmp 4616}#
($sc-dispatch
- #{tmp 4611}#
+ #{tmp 4615}#
'(any any))))
- (if #{tmp 4612}#
+ (if #{tmp 4616}#
(@apply
- (lambda (#{ g4608 4615}#
- #{ g4607 4616}#)
+ (lambda (#{ g4612 4619}#
+ #{ g4611 4620}#)
(list '#(syntax-object
cons
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g4608}#
- #{ g4607}#)
- #((m4609 top)
- (m4609 top))
- #("i4613" "i4614"))
+ #(#{ g4612}#
+ #{ g4611}#)
+ #((m4613 top)
+ (m4613 top))
+ #("i4617" "i4618"))
#(ribcage () () ())
#(ribcage
#(f x*)
#((top) (top))
- #("i4602" "i4603"))
+ #("i4606" "i4607"))
#(ribcage
#(x y)
#((top) (top))
- #("i4598" "i4599"))
+ #("i4602" "i4603"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4580"))
+ #("i4584"))
#(ribcage
(emit quasivector
quasilist*
@@ -17138,56 +16852,56 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{ g4608 4615}#
- #{ g4607 4616}#))
- #{tmp 4612}#)
+ #{ g4612 4619}#
+ #{ g4611 4620}#))
+ #{tmp 4616}#)
(syntax-violation
#f
"source expression failed to
match any pattern"
- #{tmp 4611}#))))))))
- (begin (#{f 4604}# #{x 4600}#))))
- #{tmp 4597}#)
- (let ((#{tmp 4617}#
+ #{tmp 4615}#))))))))
+ (#{f 4608}# #{x 4604}#)))
+ #{tmp 4601}#)
+ (let ((#{tmp 4621}#
($sc-dispatch
- #{tmp 4581}#
+ #{tmp 4585}#
'(#(atom "append") . each-any))))
- (if #{tmp 4617}#
+ (if #{tmp 4621}#
(@apply
- (lambda (#{x 4619}#)
- (let ((#{tmp 4623}#
- (map #{emit 4402}# #{x 4619}#)))
- (let ((#{tmp 4624}#
+ (lambda (#{x 4623}#)
+ (let ((#{tmp 4627}#
+ (map #{emit 4406}# #{x 4623}#)))
+ (let ((#{tmp 4628}#
($sc-dispatch
- #{tmp 4623}#
+ #{tmp 4627}#
'each-any)))
- (if #{tmp 4624}#
+ (if #{tmp 4628}#
(@apply
- (lambda (#{ g4620 4626}#)
+ (lambda (#{ g4624 4630}#)
(cons '#(syntax-object
append
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g4620}#)
- #((m4621 top))
- #("i4625"))
+ #(#{ g4624}#)
+ #((m4625 top))
+ #("i4629"))
#(ribcage
#(x)
#((top))
- #("i4618"))
+ #("i4622"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4580"))
+ #("i4584"))
#(ribcage
(emit quasivector
quasilist*
@@ -17202,54 +16916,54 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{ g4620 4626}#))
- #{tmp 4624}#)
+ #{ g4624 4630}#))
+ #{tmp 4628}#)
(syntax-violation
#f
"source expression failed to match
any pattern"
- #{tmp 4623}#)))))
- #{tmp 4617}#)
- (let ((#{tmp 4629}#
+ #{tmp 4627}#)))))
+ #{tmp 4621}#)
+ (let ((#{tmp 4633}#
($sc-dispatch
- #{tmp 4581}#
+ #{tmp 4585}#
'(#(atom "vector") . each-any))))
- (if #{tmp 4629}#
+ (if #{tmp 4633}#
(@apply
- (lambda (#{x 4631}#)
- (let ((#{tmp 4635}#
- (map #{emit 4402}# #{x 4631}#)))
- (let ((#{tmp 4636}#
+ (lambda (#{x 4635}#)
+ (let ((#{tmp 4639}#
+ (map #{emit 4406}# #{x 4635}#)))
+ (let ((#{tmp 4640}#
($sc-dispatch
- #{tmp 4635}#
+ #{tmp 4639}#
'each-any)))
- (if #{tmp 4636}#
+ (if #{tmp 4640}#
(@apply
- (lambda (#{ g4632 4638}#)
+ (lambda (#{ g4636 4642}#)
(cons '#(syntax-object
vector
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g4632}#)
- #((m4633 top))
- #("i4637"))
+ #(#{ g4636}#)
+ #((m4637 top))
+ #("i4641"))
#(ribcage
#(x)
#((top))
- #("i4630"))
+ #("i4634"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4580"))
+ #("i4584"))
#(ribcage
(emit quasivector
quasilist*
@@ -17264,49 +16978,49 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{ g4632 4638}#))
- #{tmp 4636}#)
+ #{ g4636 4642}#))
+ #{tmp 4640}#)
(syntax-violation
#f
"source expression failed to
match any pattern"
- #{tmp 4635}#)))))
- #{tmp 4629}#)
- (let ((#{tmp 4641}#
+ #{tmp 4639}#)))))
+ #{tmp 4633}#)
+ (let ((#{tmp 4645}#
($sc-dispatch
- #{tmp 4581}#
+ #{tmp 4585}#
'(#(atom "list->vector") any))))
- (if #{tmp 4641}#
+ (if #{tmp 4645}#
(@apply
- (lambda (#{x 4643}#)
- (let ((#{tmp 4647}#
- (#{emit 4402}# #{x 4643}#)))
- (let ((#{ g4644 4649}#
- #{tmp 4647}#))
+ (lambda (#{x 4647}#)
+ (let ((#{tmp 4651}#
+ (#{emit 4406}# #{x 4647}#)))
+ (let ((#{ g4648 4653}#
+ #{tmp 4651}#))
(list '#(syntax-object
list->vector
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g4644}#)
- #((m4645 top))
- #("i4648"))
+ #(#{ g4648}#)
+ #((m4649 top))
+ #("i4652"))
#(ribcage
#(x)
#((top))
- #("i4642"))
+ #("i4646"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4580"))
+ #("i4584"))
#(ribcage
(emit quasivector
quasilist*
@@ -17321,213 +17035,197 @@
(top)
(top)
(top))
- ("i4401"
+ ("i4405"
+ "i4403"
+ "i4401"
"i4399"
"i4397"
"i4395"
- "i4393"
- "i4391"
- "i4389")))
+ "i4393")))
(hygiene guile))
- #{ g4644 4649}#))))
- #{tmp 4641}#)
- (let ((#{tmp 4650}#
+ #{ g4648 4653}#))))
+ #{tmp 4645}#)
+ (let ((#{tmp 4654}#
($sc-dispatch
- #{tmp 4581}#
+ #{tmp 4585}#
'(#(atom "value") any))))
- (if #{tmp 4650}#
+ (if #{tmp 4654}#
(@apply
- (lambda (#{x 4652}#) #{x 4652}#)
- #{tmp 4650}#)
+ (lambda (#{x 4656}#) #{x 4656}#)
+ #{tmp 4654}#)
(syntax-violation
#f
"source expression failed to match
any pattern"
- #{tmp 4581}#)))))))))))))))))))
- (begin
- (lambda (#{x 4653}#)
- (let ((#{tmp 4655}# #{x 4653}#))
- (let ((#{tmp 4656}#
- ($sc-dispatch #{tmp 4655}# '(_ any))))
- (if #{tmp 4656}#
- (@apply
- (lambda (#{e 4658}#)
- (#{emit 4402}# (#{quasi 4390}# #{e 4658}# 0)))
- #{tmp 4656}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 4655}#)))))))))
+ #{tmp 4585}#)))))))))))))))))))
+ (lambda (#{x 4657}#)
+ (let ((#{tmp 4659}# #{x 4657}#))
+ (let ((#{tmp 4660}#
+ ($sc-dispatch #{tmp 4659}# '(_ any))))
+ (if #{tmp 4660}#
+ (@apply
+ (lambda (#{e 4662}#)
+ (#{emit 4406}# (#{quasi 4394}# #{e 4662}# 0)))
+ #{tmp 4660}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 4659}#))))))))
(define include
(make-syntax-transformer
'include
'macro
- (lambda (#{x 4659}#)
+ (lambda (#{x 4663}#)
(letrec*
- ((#{read-file 4662}#
- (lambda (#{fn 4663}# #{k 4664}#)
- (begin
- (let ((#{p 4668}# (open-input-file #{fn 4663}#)))
- (letrec*
- ((#{f 4672}#
- (lambda (#{x 4673}# #{result 4674}#)
- (if (eof-object? #{x 4673}#)
- (begin
- (close-input-port #{p 4668}#)
- (reverse #{result 4674}#))
- (#{f 4672}#
- (read #{p 4668}#)
- (cons (datum->syntax #{k 4664}# #{x 4673}#)
- #{result 4674}#))))))
- (begin (#{f 4672}# (read #{p 4668}#) '()))))))))
- (begin
- (let ((#{tmp 4675}# #{x 4659}#))
- (let ((#{tmp 4676}#
- ($sc-dispatch #{tmp 4675}# '(any any))))
- (if #{tmp 4676}#
- (@apply
- (lambda (#{k 4679}# #{filename 4680}#)
- (begin
- (let ((#{fn 4682}# (syntax->datum #{filename 4680}#)))
- (let ((#{tmp 4684}#
- (#{read-file 4662}#
- #{fn 4682}#
- #{filename 4680}#)))
- (let ((#{tmp 4685}#
- ($sc-dispatch #{tmp 4684}# 'each-any)))
- (if #{tmp 4685}#
- (@apply
- (lambda (#{exp 4687}#)
- (cons '#(syntax-object
- begin
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(exp)
- #((top))
- #("i4686"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(fn)
- #((top))
- #("i4681"))
- #(ribcage
- #(k filename)
- #((top) (top))
- #("i4677" "i4678"))
- #(ribcage
- (read-file)
- ((top))
- ("i4661"))
- #(ribcage
- #(x)
- #((top))
- #("i4660")))
- (hygiene guile))
- #{exp 4687}#))
- #{tmp 4685}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 4684}#)))))))
- #{tmp 4676}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 4675}#)))))))))
+ ((#{read-file 4666}#
+ (lambda (#{fn 4667}# #{k 4668}#)
+ (let ((#{p 4672}# (open-input-file #{fn 4667}#)))
+ (letrec*
+ ((#{f 4676}#
+ (lambda (#{x 4677}# #{result 4678}#)
+ (if (eof-object? #{x 4677}#)
+ (begin
+ (close-input-port #{p 4672}#)
+ (reverse #{result 4678}#))
+ (#{f 4676}#
+ (read #{p 4672}#)
+ (cons (datum->syntax #{k 4668}# #{x 4677}#)
+ #{result 4678}#))))))
+ (#{f 4676}# (read #{p 4672}#) '()))))))
+ (let ((#{tmp 4679}# #{x 4663}#))
+ (let ((#{tmp 4680}#
+ ($sc-dispatch #{tmp 4679}# '(any any))))
+ (if #{tmp 4680}#
+ (@apply
+ (lambda (#{k 4683}# #{filename 4684}#)
+ (let ((#{fn 4686}# (syntax->datum #{filename 4684}#)))
+ (let ((#{tmp 4688}#
+ (#{read-file 4666}#
+ #{fn 4686}#
+ #{filename 4684}#)))
+ (let ((#{tmp 4689}#
+ ($sc-dispatch #{tmp 4688}# 'each-any)))
+ (if #{tmp 4689}#
+ (@apply
+ (lambda (#{exp 4691}#)
+ (cons '#(syntax-object
+ begin
+ ((top)
+ #(ribcage () () ())
+ #(ribcage #(exp) #((top)) #("i4690"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(fn) #((top)) #("i4685"))
+ #(ribcage
+ #(k filename)
+ #((top) (top))
+ #("i4681" "i4682"))
+ #(ribcage
+ (read-file)
+ ((top))
+ ("i4665"))
+ #(ribcage #(x) #((top)) #("i4664")))
+ (hygiene guile))
+ #{exp 4691}#))
+ #{tmp 4689}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 4688}#))))))
+ #{tmp 4680}#)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ #{tmp 4679}#))))))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
- (lambda (#{x 4689}#)
- (let ((#{tmp 4691}# #{x 4689}#))
- (let ((#{tmp 4692}#
- ($sc-dispatch #{tmp 4691}# '(any any))))
- (if #{tmp 4692}#
+ (lambda (#{x 4693}#)
+ (let ((#{tmp 4695}# #{x 4693}#))
+ (let ((#{tmp 4696}#
+ ($sc-dispatch #{tmp 4695}# '(any any))))
+ (if #{tmp 4696}#
(@apply
- (lambda (#{k 4695}# #{filename 4696}#)
- (begin
- (let ((#{fn 4698}# (syntax->datum #{filename 4696}#)))
- (let ((#{tmp 4700}#
- (datum->syntax
- #{filename 4696}#
- (begin
- (let ((#{t 4705}#
- (%search-load-path #{fn 4698}#)))
- (if #{t 4705}#
- #{t 4705}#
- (syntax-violation
- 'include-from-path
- "file not found in path"
- #{x 4689}#
- #{filename 4696}#)))))))
- (let ((#{fn 4702}# #{tmp 4700}#))
- (list '#(syntax-object
- include
- ((top)
- #(ribcage () () ())
- #(ribcage #(fn) #((top)) #("i4701"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(fn) #((top)) #("i4697"))
- #(ribcage
- #(k filename)
- #((top) (top))
- #("i4693" "i4694"))
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4690")))
- (hygiene guile))
- #{fn 4702}#))))))
- #{tmp 4692}#)
+ (lambda (#{k 4699}# #{filename 4700}#)
+ (let ((#{fn 4702}# (syntax->datum #{filename 4700}#)))
+ (let ((#{tmp 4704}#
+ (datum->syntax
+ #{filename 4700}#
+ (let ((#{t 4709}# (%search-load-path #{fn 4702}#)))
+ (if #{t 4709}#
+ #{t 4709}#
+ (syntax-violation
+ 'include-from-path
+ "file not found in path"
+ #{x 4693}#
+ #{filename 4700}#))))))
+ (let ((#{fn 4706}# #{tmp 4704}#))
+ (list '#(syntax-object
+ include
+ ((top)
+ #(ribcage () () ())
+ #(ribcage #(fn) #((top)) #("i4705"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(fn) #((top)) #("i4701"))
+ #(ribcage
+ #(k filename)
+ #((top) (top))
+ #("i4697" "i4698"))
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("i4694")))
+ (hygiene guile))
+ #{fn 4706}#)))))
+ #{tmp 4696}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4691}#)))))))
+ #{tmp 4695}#)))))))
(define unquote
(make-syntax-transformer
'unquote
'macro
- (lambda (#{x 4707}#)
+ (lambda (#{x 4711}#)
(syntax-violation
'unquote
"expression not valid outside of quasiquote"
- #{x 4707}#))))
+ #{x 4711}#))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
- (lambda (#{x 4709}#)
+ (lambda (#{x 4713}#)
(syntax-violation
'unquote-splicing
"expression not valid outside of quasiquote"
- #{x 4709}#))))
+ #{x 4713}#))))
(define case
(make-syntax-transformer
'case
'macro
- (lambda (#{x 4711}#)
- (let ((#{tmp 4713}# #{x 4711}#))
- (let ((#{tmp 4714}#
+ (lambda (#{x 4715}#)
+ (let ((#{tmp 4717}# #{x 4715}#))
+ (let ((#{tmp 4718}#
($sc-dispatch
- #{tmp 4713}#
+ #{tmp 4717}#
'(_ any any . each-any))))
- (if #{tmp 4714}#
+ (if #{tmp 4718}#
(@apply
- (lambda (#{e 4718}# #{m1 4719}# #{m2 4720}#)
- (let ((#{tmp 4722}#
+ (lambda (#{e 4722}# #{m1 4723}# #{m2 4724}#)
+ (let ((#{tmp 4726}#
(letrec*
- ((#{f 4728}#
- (lambda (#{clause 4729}# #{clauses 4730}#)
- (if (null? #{clauses 4730}#)
- (let ((#{tmp 4732}# #{clause 4729}#))
- (let ((#{tmp 4733}#
+ ((#{f 4732}#
+ (lambda (#{clause 4733}# #{clauses 4734}#)
+ (if (null? #{clauses 4734}#)
+ (let ((#{tmp 4736}# #{clause 4733}#))
+ (let ((#{tmp 4737}#
($sc-dispatch
- #{tmp 4732}#
+ #{tmp 4736}#
'(#(free-id
#(syntax-object
else
@@ -17536,92 +17234,92 @@
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile)))
any
.
each-any))))
- (if #{tmp 4733}#
+ (if #{tmp 4737}#
(@apply
- (lambda (#{e1 4736}# #{e2 4737}#)
+ (lambda (#{e1 4740}# #{e2 4741}#)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i4734" "i4735"))
+ #("i4738" "i4739"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
- (cons #{e1 4736}#
- #{e2 4737}#)))
- #{tmp 4733}#)
- (let ((#{tmp 4739}#
+ (cons #{e1 4740}#
+ #{e2 4741}#)))
+ #{tmp 4737}#)
+ (let ((#{tmp 4743}#
($sc-dispatch
- #{tmp 4732}#
+ #{tmp 4736}#
'(each-any any . each-any))))
- (if #{tmp 4739}#
+ (if #{tmp 4743}#
(@apply
- (lambda (#{k 4743}#
- #{e1 4744}#
- #{e2 4745}#)
+ (lambda (#{k 4747}#
+ #{e1 4748}#
+ #{e2 4749}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
- #("i4740"
- "i4741"
- "i4742"))
+ #("i4744"
+ "i4745"
+ "i4746"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
(list '#(syntax-object
memv
@@ -17631,9 +17329,9 @@
#((top)
(top)
(top))
- #("i4740"
- "i4741"
- "i4742"))
+ #("i4744"
+ "i4745"
+ "i4746"))
#(ribcage
()
()
@@ -17645,17 +17343,17 @@
#((top)
(top)
(top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage
()
()
@@ -17663,7 +17361,7 @@
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
'#(syntax-object
t
@@ -17673,9 +17371,9 @@
#((top)
(top)
(top))
- #("i4740"
- "i4741"
- "i4742"))
+ #("i4744"
+ "i4745"
+ "i4746"))
#(ribcage
()
()
@@ -17687,17 +17385,17 @@
#((top)
(top)
(top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage
()
()
@@ -17705,7 +17403,7 @@
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
(list
'#(syntax-object
quote
@@ -17717,9 +17415,9 @@
#((top)
(top)
(top))
-
#("i4740"
-
"i4741"
-
"i4742"))
+
#("i4744"
+
"i4745"
+
"i4746"))
#(ribcage
()
()
@@ -17731,9 +17429,9 @@
#((top)
(top)
(top))
-
#("i4725"
-
"i4726"
-
"i4727"))
+
#("i4729"
+
"i4730"
+
"i4731"))
#(ribcage
#(e
m1
@@ -17741,9 +17439,9 @@
#((top)
(top)
(top))
-
#("i4715"
-
"i4716"
-
"i4717"))
+
#("i4719"
+
"i4720"
+
"i4721"))
#(ribcage
()
()
@@ -17751,10 +17449,10 @@
#(ribcage
#(x)
#((top))
-
#("i4712")))
+
#("i4716")))
(hygiene
guile))
- #{k 4743}#))
+ #{k 4747}#))
(cons '#(syntax-object
begin
((top)
@@ -17763,9 +17461,9 @@
#((top)
(top)
(top))
- #("i4740"
- "i4741"
- "i4742"))
+ #("i4744"
+ "i4745"
+ "i4746"))
#(ribcage
()
()
@@ -17777,17 +17475,17 @@
#((top)
(top)
(top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage
()
()
@@ -17795,64 +17493,64 @@
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
- (cons #{e1 4744}#
- #{e2
4745}#))))
- #{tmp 4739}#)
- (let ((#{_ 4749}# #{tmp 4732}#))
+ (cons #{e1 4748}#
+ #{e2
4749}#))))
+ #{tmp 4743}#)
+ (let ((#{_ 4753}# #{tmp 4736}#))
(syntax-violation
'case
"bad clause"
- #{x 4711}#
- #{clause 4729}#)))))))
- (let ((#{tmp 4751}#
- (#{f 4728}#
- (car #{clauses 4730}#)
- (cdr #{clauses 4730}#))))
- (let ((#{rest 4753}# #{tmp 4751}#))
- (let ((#{tmp 4754}# #{clause 4729}#))
- (let ((#{tmp 4755}#
+ #{x 4715}#
+ #{clause 4733}#)))))))
+ (let ((#{tmp 4755}#
+ (#{f 4732}#
+ (car #{clauses 4734}#)
+ (cdr #{clauses 4734}#))))
+ (let ((#{rest 4757}# #{tmp 4755}#))
+ (let ((#{tmp 4758}# #{clause 4733}#))
+ (let ((#{tmp 4759}#
($sc-dispatch
- #{tmp 4754}#
+ #{tmp 4758}#
'(each-any any . each-any))))
- (if #{tmp 4755}#
+ (if #{tmp 4759}#
(@apply
- (lambda (#{k 4759}#
- #{e1 4760}#
- #{e2 4761}#)
+ (lambda (#{k 4763}#
+ #{e1 4764}#
+ #{e2 4765}#)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
- #("i4756"
- "i4757"
- "i4758"))
+ #("i4760"
+ "i4761"
+ "i4762"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
- #("i4752"))
+ #("i4756"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
(list '#(syntax-object
memv
@@ -17862,9 +17560,9 @@
#((top)
(top)
(top))
- #("i4756"
- "i4757"
- "i4758"))
+ #("i4760"
+ "i4761"
+ "i4762"))
#(ribcage
()
()
@@ -17872,7 +17570,7 @@
#(ribcage
#(rest)
#((top))
- #("i4752"))
+ #("i4756"))
#(ribcage
()
()
@@ -17884,17 +17582,17 @@
#((top)
(top)
(top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage
()
()
@@ -17902,7 +17600,7 @@
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
'#(syntax-object
t
@@ -17912,9 +17610,9 @@
#((top)
(top)
(top))
- #("i4756"
- "i4757"
- "i4758"))
+ #("i4760"
+ "i4761"
+ "i4762"))
#(ribcage
()
()
@@ -17922,7 +17620,7 @@
#(ribcage
#(rest)
#((top))
- #("i4752"))
+ #("i4756"))
#(ribcage
()
()
@@ -17934,17 +17632,17 @@
#((top)
(top)
(top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage
()
()
@@ -17952,7 +17650,7 @@
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
(list
'#(syntax-object
quote
@@ -17964,9 +17662,9 @@
#((top)
(top)
(top))
-
#("i4756"
-
"i4757"
-
"i4758"))
+
#("i4760"
+
"i4761"
+
"i4762"))
#(ribcage
()
()
@@ -17974,7 +17672,7 @@
#(ribcage
#(rest)
#((top))
-
#("i4752"))
+
#("i4756"))
#(ribcage
()
()
@@ -17986,9 +17684,9 @@
#((top)
(top)
(top))
-
#("i4725"
-
"i4726"
-
"i4727"))
+
#("i4729"
+
"i4730"
+
"i4731"))
#(ribcage
#(e
m1
@@ -17996,9 +17694,9 @@
#((top)
(top)
(top))
-
#("i4715"
-
"i4716"
-
"i4717"))
+
#("i4719"
+
"i4720"
+
"i4721"))
#(ribcage
()
()
@@ -18006,10 +17704,10 @@
#(ribcage
#(x)
#((top))
-
#("i4712")))
+
#("i4716")))
(hygiene
guile))
- #{k 4759}#))
+ #{k 4763}#))
(cons '#(syntax-object
begin
((top)
@@ -18018,9 +17716,9 @@
#((top)
(top)
(top))
- #("i4756"
- "i4757"
- "i4758"))
+ #("i4760"
+ "i4761"
+ "i4762"))
#(ribcage
()
()
@@ -18028,7 +17726,7 @@
#(ribcage
#(rest)
#((top))
- #("i4752"))
+ #("i4756"))
#(ribcage
()
()
@@ -18040,17 +17738,17 @@
#((top)
(top)
(top))
- #("i4725"
- "i4726"
- "i4727"))
+ #("i4729"
+ "i4730"
+ "i4731"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i4715"
- "i4716"
- "i4717"))
+ #("i4719"
+ "i4720"
+ "i4721"))
#(ribcage
()
()
@@ -18058,31 +17756,31 @@
#(ribcage
#(x)
#((top))
- #("i4712")))
+ #("i4716")))
(hygiene guile))
- (cons #{e1 4760}#
- #{e2 4761}#))
- #{rest 4753}#))
- #{tmp 4755}#)
- (let ((#{_ 4765}# #{tmp 4754}#))
+ (cons #{e1 4764}#
+ #{e2 4765}#))
+ #{rest 4757}#))
+ #{tmp 4759}#)
+ (let ((#{_ 4769}# #{tmp 4758}#))
(syntax-violation
'case
"bad clause"
- #{x 4711}#
- #{clause 4729}#)))))))))))
- (begin (#{f 4728}# #{m1 4719}# #{m2 4720}#)))))
- (let ((#{body 4724}# #{tmp 4722}#))
+ #{x 4715}#
+ #{clause 4733}#)))))))))))
+ (#{f 4732}# #{m1 4723}# #{m2 4724}#))))
+ (let ((#{body 4728}# #{tmp 4726}#))
(list '#(syntax-object
let
((top)
#(ribcage () () ())
- #(ribcage #(body) #((top)) #("i4723"))
+ #(ribcage #(body) #((top)) #("i4727"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i4715" "i4716" "i4717"))
+ #("i4719" "i4720" "i4721"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4712")))
+ #(ribcage #(x) #((top)) #("i4716")))
(hygiene guile))
(list (list '#(syntax-object
t
@@ -18091,176 +17789,175 @@
#(ribcage
#(body)
#((top))
- #("i4723"))
+ #("i4727"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i4715" "i4716" "i4717"))
+ #("i4719" "i4720" "i4721"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4712")))
+ #(ribcage #(x) #((top)) #("i4716")))
(hygiene guile))
- #{e 4718}#))
- #{body 4724}#))))
- #{tmp 4714}#)
+ #{e 4722}#))
+ #{body 4728}#))))
+ #{tmp 4718}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4713}#)))))))
+ #{tmp 4717}#)))))))
(define make-variable-transformer
- (lambda (#{proc 4766}#)
- (if (procedure? #{proc 4766}#)
- (begin
- (letrec*
- ((#{trans 4769}#
- (lambda (#{x 4770}#) (#{proc 4766}# #{x 4770}#))))
- (begin
- (set-procedure-property!
- #{trans 4769}#
- 'variable-transformer
- #t)
- #{trans 4769}#)))
+ (lambda (#{proc 4770}#)
+ (if (procedure? #{proc 4770}#)
+ (letrec*
+ ((#{trans 4773}#
+ (lambda (#{x 4774}#) (#{proc 4770}# #{x 4774}#))))
+ (begin
+ (set-procedure-property!
+ #{trans 4773}#
+ 'variable-transformer
+ #t)
+ #{trans 4773}#))
(error "variable transformer not a procedure"
- #{proc 4766}#))))
+ #{proc 4770}#))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
- (lambda (#{x 4772}#)
- (let ((#{tmp 4774}# #{x 4772}#))
- (let ((#{tmp 4775}#
- ($sc-dispatch #{tmp 4774}# '(_ any))))
- (if #{tmp 4775}#
+ (lambda (#{x 4776}#)
+ (let ((#{tmp 4778}# #{x 4776}#))
+ (let ((#{tmp 4779}#
+ ($sc-dispatch #{tmp 4778}# '(_ any))))
+ (if #{tmp 4779}#
(@apply
- (lambda (#{e 4777}#)
+ (lambda (#{e 4781}#)
(list '#(syntax-object
lambda
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
'(#(syntax-object
x
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile)))
'#((#(syntax-object
macro-type
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
.
#(syntax-object
identifier-syntax
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
'#(syntax-object
x
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
'()
(list '#(syntax-object
id
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
'(#(syntax-object
identifier?
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
(#(syntax-object
syntax
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
#(syntax-object
id
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))))
(list '#(syntax-object
syntax
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
- #{e 4777}#))
+ #{e 4781}#))
(list '(#(syntax-object
_
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
#(syntax-object
x
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
#(syntax-object
...
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile)))
(list '#(syntax-object
syntax
((top)
- #(ribcage #(e) #((top)) #("i4776"))
+ #(ribcage #(e) #((top)) #("i4780"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
- (cons #{e 4777}#
+ (cons #{e 4781}#
'(#(syntax-object
x
((top)
#(ribcage
#(e)
#((top))
- #("i4776"))
+ #("i4780"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
#(syntax-object
...
@@ -18268,55 +17965,55 @@
#(ribcage
#(e)
#((top))
- #("i4776"))
+ #("i4780"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile)))))))))
- #{tmp 4775}#)
- (let ((#{tmp 4778}#
+ #{tmp 4779}#)
+ (let ((#{tmp 4782}#
($sc-dispatch
- #{tmp 4774}#
+ #{tmp 4778}#
'(_ (any any)
((#(free-id
#(syntax-object
set!
((top)
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile)))
any
any)
any)))))
- (if (if #{tmp 4778}#
+ (if (if #{tmp 4782}#
(@apply
- (lambda (#{id 4784}#
- #{exp1 4785}#
- #{var 4786}#
- #{val 4787}#
- #{exp2 4788}#)
- (if (identifier? #{id 4784}#)
- (identifier? #{var 4786}#)
+ (lambda (#{id 4788}#
+ #{exp1 4789}#
+ #{var 4790}#
+ #{val 4791}#
+ #{exp2 4792}#)
+ (if (identifier? #{id 4788}#)
+ (identifier? #{var 4790}#)
#f))
- #{tmp 4778}#)
+ #{tmp 4782}#)
#f)
(@apply
- (lambda (#{id 4796}#
- #{exp1 4797}#
- #{var 4798}#
- #{val 4799}#
- #{exp2 4800}#)
+ (lambda (#{id 4800}#
+ #{exp1 4801}#
+ #{var 4802}#
+ #{val 4803}#
+ #{exp2 4804}#)
(list '#(syntax-object
make-variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791" "i4792" "i4793" "i4794" "i4795"))
+ #("i4795" "i4796" "i4797" "i4798" "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
(list '#(syntax-object
lambda
@@ -18324,13 +18021,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
'(#(syntax-object
x
@@ -18338,13 +18035,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile)))
'#((#(syntax-object
macro-type
@@ -18352,13 +18049,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
.
#(syntax-object
@@ -18367,13 +18064,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))))
(list '#(syntax-object
syntax-case
@@ -18381,13 +18078,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
'#(syntax-object
x
@@ -18395,13 +18092,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile))
'(#(syntax-object
set!
@@ -18409,13 +18106,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4773")))
+ #(ribcage #(x) #((top)) #("i4777")))
(hygiene guile)))
(list (list '#(syntax-object
set!
@@ -18427,19 +18124,19 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
- #{var 4798}#
- #{val 4799}#)
+ #{var 4802}#
+ #{val 4803}#)
(list '#(syntax-object
syntax
((top)
@@ -18450,19 +18147,19 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
- #{exp2 4800}#))
- (list (cons #{id 4796}#
+ #{exp2 4804}#))
+ (list (cons #{id 4800}#
'(#(syntax-object
x
((top)
@@ -18477,16 +18174,16 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
#(syntax-object
...
@@ -18502,16 +18199,16 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))))
(list '#(syntax-object
syntax
@@ -18523,18 +18220,18 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
- (cons #{exp1 4797}#
+ (cons #{exp1 4801}#
'(#(syntax-object
x
((top)
@@ -18549,11 +18246,11 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage
()
()
@@ -18561,7 +18258,7 @@
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
#(syntax-object
...
@@ -18577,11 +18274,11 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage
()
()
@@ -18589,10 +18286,10 @@
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene
guile))))))
- (list #{id 4796}#
+ (list #{id 4800}#
(list '#(syntax-object
identifier?
((top)
@@ -18603,16 +18300,16 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
(list '#(syntax-object
syntax
@@ -18628,18 +18325,18 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
- #{id 4796}#))
+ #{id 4800}#))
(list '#(syntax-object
syntax
((top)
@@ -18650,69 +18347,69 @@
(top)
(top)
(top))
- #("i4791"
- "i4792"
- "i4793"
- "i4794"
- "i4795"))
+ #("i4795"
+ "i4796"
+ "i4797"
+ "i4798"
+ "i4799"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i4773")))
+ #("i4777")))
(hygiene guile))
- #{exp1 4797}#))))))
- #{tmp 4778}#)
+ #{exp1 4801}#))))))
+ #{tmp 4782}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4774}#)))))))))
+ #{tmp 4778}#)))))))))
(define define*
(make-syntax-transformer
'define*
'macro
- (lambda (#{x 4801}#)
- (let ((#{tmp 4803}# #{x 4801}#))
- (let ((#{tmp 4804}#
+ (lambda (#{x 4805}#)
+ (let ((#{tmp 4807}# #{x 4805}#))
+ (let ((#{tmp 4808}#
($sc-dispatch
- #{tmp 4803}#
+ #{tmp 4807}#
'(_ (any . any) any . each-any))))
- (if #{tmp 4804}#
+ (if #{tmp 4808}#
(@apply
- (lambda (#{id 4809}#
- #{args 4810}#
- #{b0 4811}#
- #{b1 4812}#)
+ (lambda (#{id 4813}#
+ #{args 4814}#
+ #{b0 4815}#
+ #{b1 4816}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
- #("i4805" "i4806" "i4807" "i4808"))
+ #("i4809" "i4810" "i4811" "i4812"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4802")))
+ #(ribcage #(x) #((top)) #("i4806")))
(hygiene guile))
- #{id 4809}#
+ #{id 4813}#
(cons '#(syntax-object
lambda*
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
- #("i4805" "i4806" "i4807" "i4808"))
+ #("i4809" "i4810" "i4811" "i4812"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4802")))
+ #(ribcage #(x) #((top)) #("i4806")))
(hygiene guile))
- (cons #{args 4810}#
- (cons #{b0 4811}# #{b1 4812}#)))))
- #{tmp 4804}#)
- (let ((#{tmp 4814}#
- ($sc-dispatch #{tmp 4803}# '(_ any any))))
- (if (if #{tmp 4814}#
+ (cons #{args 4814}#
+ (cons #{b0 4815}# #{b1 4816}#)))))
+ #{tmp 4808}#)
+ (let ((#{tmp 4818}#
+ ($sc-dispatch #{tmp 4807}# '(_ any any))))
+ (if (if #{tmp 4818}#
(@apply
- (lambda (#{id 4817}# #{val 4818}#)
+ (lambda (#{id 4821}# #{val 4822}#)
(identifier?
'#(syntax-object
x
@@ -18720,29 +18417,29 @@
#(ribcage
#(id val)
#((top) (top))
- #("i4815" "i4816"))
+ #("i4819" "i4820"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4802")))
+ #(ribcage #(x) #((top)) #("i4806")))
(hygiene guile))))
- #{tmp 4814}#)
+ #{tmp 4818}#)
#f)
(@apply
- (lambda (#{id 4821}# #{val 4822}#)
+ (lambda (#{id 4825}# #{val 4826}#)
(list '#(syntax-object
define
((top)
#(ribcage
#(id val)
#((top) (top))
- #("i4819" "i4820"))
+ #("i4823" "i4824"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i4802")))
+ #(ribcage #(x) #((top)) #("i4806")))
(hygiene guile))
- #{id 4821}#
- #{val 4822}#))
- #{tmp 4814}#)
+ #{id 4825}#
+ #{val 4826}#))
+ #{tmp 4818}#)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 4803}#)))))))))
+ #{tmp 4807}#)))))))))
diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm
index ae9c273..4d67408 100644
--- a/module/ice-9/psyntax.scm
+++ b/module/ice-9/psyntax.scm
@@ -2425,7 +2425,8 @@
(set! generate-temporaries
(lambda (ls)
(arg-check list? ls 'generate-temporaries)
- (map (lambda (x) (wrap (gensym-hook) top-wrap #f)) ls)))
+ (let ((mod (cons 'hygiene (module-name (current-module)))))
+ (map (lambda (x) (wrap (gensym-hook) top-wrap mod)) ls))))
(set! free-identifier=?
(lambda (x y)
diff --git a/module/language/tree-il.scm b/module/language/tree-il.scm
index ec3c502..d919f9a 100644
--- a/module/language/tree-il.scm
+++ b/module/language/tree-il.scm
@@ -464,7 +464,8 @@
(lambda (x) (tree-il->scheme (seq-head x)))
seq-tail
tail
- tree-il->scheme)))
+ (lambda (x)
+ (list (tree-il->scheme x))))))
((<let> gensyms vals body)
`(let ,(map list gensyms (map tree-il->scheme vals)) ,(tree-il->scheme
body)))
diff --git a/module/language/tree-il/compile-glil.scm
b/module/language/tree-il/compile-glil.scm
index 2cb0806..a22063b 100644
--- a/module/language/tree-il/compile-glil.scm
+++ b/module/language/tree-il/compile-glil.scm
@@ -207,10 +207,12 @@
;; write source info for proc
(if src (emit-code #f (make-glil-source src)))
;; compile the body, yo
- (flatten body allocation x self-label (car (hashq-ref allocation x))
- emit-code)))))))
+ (flatten-lambda-case body allocation x self-label
+ (car (hashq-ref allocation x))
+ emit-code)))))))
-(define (flatten x allocation self self-label fix-labels emit-code)
+(define (flatten-lambda-case lcase allocation self self-label fix-labels
+ emit-code)
(define (emit-label label)
(emit-code #f (make-glil-label label)))
(define (emit-branch src inst label)
@@ -218,7 +220,7 @@
;; RA: "return address"; #f unless we're in a non-tail fix with labels
;; MVRA: "multiple-values return address"; #f unless we're in a let-values
- (let comp ((x x) (context 'tail) (RA #f) (MVRA #f))
+ (let comp ((x lcase) (context 'tail) (RA #f) (MVRA #f))
(define (comp-tail tree) (comp tree context RA MVRA))
(define (comp-push tree) (comp tree 'push #f #f))
(define (comp-drop tree) (comp tree 'drop #f #f))
@@ -252,41 +254,26 @@
((<call> src proc args)
(cond
- ;; self-call in tail position
+ ;; call to the same lambda-case in tail position
((and (lexical-ref? proc)
self-label (eq? (lexical-ref-gensym proc) self-label)
- (eq? context 'tail))
- (let lp ((lcase (lambda-body self)))
- (cond
- ((and (lambda-case? lcase)
- (not (lambda-case-kw lcase))
- (not (lambda-case-rest lcase))
- (= (length args)
- (+ (length (lambda-case-req lcase))
- (or (and=> (lambda-case-opt lcase) length) 0))))
- ;; we have a case that matches the args; evaluate new
- ;; values, rename variables and goto the case label
- (for-each comp-push args)
- (for-each (lambda (sym)
- (pmatch (hashq-ref (hashq-ref allocation sym) self)
- ((#t #f . ,index) ; unboxed
- (emit-code #f (make-glil-lexical #t #f 'set
index)))
- ((#t #t . ,index) ; boxed
- ;; new box
- (emit-code #f (make-glil-lexical #t #t 'box
index)))
- (,x (error "bad lambda-case arg allocation" x))))
- (reverse (lambda-case-gensyms lcase)))
- (emit-branch src 'br (car (hashq-ref allocation lcase))))
- ((lambda-case? lcase)
- ;; no match, try next case
- (lp (lambda-case-alternate lcase)))
- (else
- ;; no cases left -- use the normal tail call mechanism. we
- ;; can't just shuffle the args down and jump back to the
- ;; self label, because we don't have space.
- (comp-push proc)
- (for-each comp-push args)
- (emit-code src (make-glil-call 'tail-call (length args)))))))
+ (eq? context 'tail)
+ (not (lambda-case-kw lcase))
+ (not (lambda-case-rest lcase))
+ (= (length args)
+ (+ (length (lambda-case-req lcase))
+ (or (and=> (lambda-case-opt lcase) length) 0))))
+ (for-each comp-push args)
+ (for-each (lambda (sym)
+ (pmatch (hashq-ref (hashq-ref allocation sym) self)
+ ((#t #f . ,index) ; unboxed
+ (emit-code #f (make-glil-lexical #t #f 'set index)))
+ ((#t #t . ,index) ; boxed
+ ;; new box
+ (emit-code #f (make-glil-lexical #t #t 'box index)))
+ (,x (error "bad lambda-case arg allocation" x))))
+ (reverse (lambda-case-gensyms lcase)))
+ (emit-branch src 'br (car (hashq-ref allocation lcase))))
;; lambda, the ultimate goto
((and (lexical-ref? proc)
@@ -378,20 +365,37 @@
(else
(comp-tail (make-primcall src 'apply (cons proc args))))))))
- ((values . _) (guard (not (eq? context 'push)))
+ ((values . _)
;; tail: (lambda () (values '(1 2)))
;; drop: (lambda () (values '(1 2)) 3)
;; push: (lambda () (list (values '(10 12)) 1))
;; vals: (let-values (((a b ...) (values 1 2 ...))) ...)
(case context
((drop) (for-each comp-drop args) (maybe-emit-return))
+ ((push)
+ (case (length args)
+ ((0)
+ ;; FIXME: This is surely an error. We need to add a
+ ;; values-mismatch warning pass.
+ (comp-push (make-call src (make-primitive-ref #f 'values)
+ '())))
+ ((1)
+ (comp-push (car args)))
+ (else
+ ;; Taking advantage of unspecified order of evaluation of
+ ;; arguments.
+ (for-each comp-drop (cdr args))
+ (comp-push (car args)))))
((vals)
(for-each comp-push args)
(emit-code #f (make-glil-const (length args)))
(emit-branch src 'br MVRA))
((tail)
(for-each comp-push args)
- (emit-code src (make-glil-call 'return/values (length args))))))
+ (emit-code src (let ((len (length args)))
+ (if (= len 1)
+ (make-glil-call 'return 1)
+ (make-glil-call 'return/values len)))))))
((@call-with-values ,producer ,consumer)
;; CONSUMER
@@ -724,7 +728,8 @@
(if alternate-label
(begin
(emit-label alternate-label)
- (comp-tail alternate)))))
+ (flatten-lambda-case alternate allocation self self-label
+ fix-labels emit-code)))))
((<let> src names gensyms vals body)
(for-each comp-push vals)
diff --git a/module/language/tree-il/primitives.scm
b/module/language/tree-il/primitives.scm
index 40fc194..74c465f 100644
--- a/module/language/tree-il/primitives.scm
+++ b/module/language/tree-il/primitives.scm
@@ -249,7 +249,7 @@
(define-primitive-expander +
() 0
- (x) x
+ (x) (values x)
(x y) (if (and (const? y)
(let ((y (const-exp y)))
(and (number? y) (exact? y) (= y 1))))
@@ -267,7 +267,7 @@
(define-primitive-expander *
() 1
- (x) x
+ (x) (values x)
(x y z . rest) (* x (* y z . rest)))
(define-primitive-expander -
@@ -313,7 +313,7 @@
(define-primitive-expander cddddr (x) (cdr (cdr (cdr (cdr x)))))
(define-primitive-expander cons*
- (x) x
+ (x) (values x)
(x y) (cons x y)
(x y . rest) (cons x (cons* y . rest)))
@@ -332,8 +332,6 @@
(define-primitive-expander call/cc (proc)
(@call-with-current-continuation proc))
-(define-primitive-expander values (x) x)
-
(define-primitive-expander make-struct (vtable tail-size . args)
(if (and (const? tail-size)
(let ((n (const-exp tail-size)))
diff --git a/module/system/base/language.scm b/module/system/base/language.scm
index 31e7708..10d2d74 100644
--- a/module/system/base/language.scm
+++ b/module/system/base/language.scm
@@ -1,6 +1,6 @@
;;; Multi-language support
-;; Copyright (C) 2001, 2009, 2010 Free Software Foundation, Inc.
+;; Copyright (C) 2001, 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
@@ -112,7 +112,6 @@
;;;
(define *current-language* (make-fluid))
-(fluid-set! *current-language* 'scheme)
(define (current-language)
- (fluid-ref *current-language*))
+ (or (fluid-ref *current-language*) 'scheme))
diff --git a/test-suite/tests/compiler.test b/test-suite/tests/compiler.test
index 6b47086..ee688c0 100644
--- a/test-suite/tests/compiler.test
+++ b/test-suite/tests/compiler.test
@@ -1,5 +1,5 @@
;;;; compiler.test --- tests for the compiler -*- scheme -*-
-;;;; Copyright (C) 2008, 2009, 2010 Free Software Foundation, Inc.
+;;;; Copyright (C) 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
@@ -149,3 +149,18 @@
((y) y)
((y z) (list y z)))))))
(not (not (memv 0 (map source:addr s))))))))
+
+(with-test-prefix "case-lambda"
+ (pass-if "self recursion to different clause"
+ (equal? (with-output-to-string
+ (lambda ()
+ (let ()
+ (define t
+ (case-lambda
+ ((x)
+ (t x 'y))
+ ((x y)
+ (display (list x y))
+ (list x y))))
+ (display (t 'x)))))
+ "(x y)(x y)")))
diff --git a/test-suite/tests/tree-il.test b/test-suite/tests/tree-il.test
index a59835e..3dacb72 100644
--- a/test-suite/tests/tree-il.test
+++ b/test-suite/tests/tree-il.test
@@ -474,6 +474,26 @@
(program () (std-prelude 0 0 #f) (label _)
(const 2) (call null? 1) (call return 1))))
+(with-test-prefix "values"
+ (assert-tree-il->glil
+ (primcall values
+ (primcall values (const 1) (const 2)))
+ (program () (std-prelude 0 0 #f) (label _)
+ (const 1) (call return 1)))
+
+ (assert-tree-il->glil
+ (primcall values
+ (primcall values (const 1) (const 2))
+ (const 3))
+ (program () (std-prelude 0 0 #f) (label _)
+ (const 1) (const 3) (call return/values 2)))
+
+ (assert-tree-il->glil
+ (primcall +
+ (primcall values (const 1) (const 2)))
+ (program () (std-prelude 0 0 #f) (label _)
+ (const 1) (call return 1))))
+
;; FIXME: binding info for or-hacked locals might bork the disassembler,
;; and could be tightened in any case
(with-test-prefix "the or hack"
hooks/post-receive
--
GNU Guile
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Guile-commits] GNU Guile branch, master, updated. v2.1.0-120-g78f0ef2,
Andy Wingo <=