summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2012-01-30 19:59:08 +0100
committerAndy Wingo <wingo@pobox.com>2012-01-30 20:27:35 +0100
commitdfadcf85cb3ae9133dece6bc39ed03dd25323d6e (patch)
tree93c918a793ee86c8406fd1bac521ea2b870361cf
parent252acfe8e70ac4c7d325588ffea1905fcf6f86b2 (diff)
parente1fbe716e8596b7027af57623ebc72a0c6393187 (diff)
downloadguile-dfadcf85cb3ae9133dece6bc39ed03dd25323d6e.tar.gz
Merge remote-tracking branch 'origin/stable-2.0'
Conflicts: libguile/debug.h module/ice-9/psyntax-pp.scm module/ice-9/psyntax.scm module/language/tree-il/peval.scm module/language/tree-il/primitives.scm
-rw-r--r--NEWS114
-rw-r--r--configure.ac7
-rw-r--r--doc/ref/api-evaluation.texi214
-rw-r--r--doc/ref/api-foreign.texi10
-rw-r--r--doc/ref/api-macros.texi17
-rw-r--r--doc/ref/api-modules.texi6
-rw-r--r--doc/ref/api-options.texi50
-rw-r--r--doc/ref/guile.texi2
-rw-r--r--doc/ref/scheme-using.texi5
-rw-r--r--lib/Makefile.am11
-rw-r--r--lib/setenv.c390
-rw-r--r--libguile/debug.c13
-rw-r--r--libguile/debug.h4
-rw-r--r--libguile/eval.c46
-rw-r--r--libguile/eval.h7
-rw-r--r--libguile/gc.c4
-rw-r--r--libguile/i18n.c3
-rw-r--r--libguile/macros.c34
-rw-r--r--libguile/symbols.c50
-rw-r--r--libguile/threads.c1
-rw-r--r--libguile/threads.h4
-rw-r--r--libguile/vm-i-system.c25
-rw-r--r--m4/gnulib-cache.m43
-rw-r--r--m4/gnulib-comp.m48
-rw-r--r--m4/setenv.m4140
-rw-r--r--meta/guile-2.2.pc.in5
-rw-r--r--module/Makefile.am5
-rw-r--r--module/ice-9/boot-9.scm36
-rw-r--r--module/ice-9/compile-psyntax.scm9
-rw-r--r--module/ice-9/eval.scm3
-rw-r--r--module/ice-9/local-eval.scm251
-rw-r--r--module/ice-9/psyntax-pp.scm36956
-rw-r--r--module/ice-9/psyntax.scm172
-rw-r--r--module/language/scheme/spec.scm9
-rw-r--r--module/language/tree-il/analyze.scm49
-rw-r--r--module/language/tree-il/peval.scm2
-rw-r--r--module/language/tree-il/primitives.scm6
-rw-r--r--module/scripts/list.scm3
-rw-r--r--module/system/base/message.scm6
-rw-r--r--module/system/repl/common.scm2
-rw-r--r--module/system/repl/error-handling.scm3
-rw-r--r--test-suite/standalone/test-loose-ends.c36
-rw-r--r--test-suite/tests/eval.test101
-rw-r--r--test-suite/tests/gc.test34
-rw-r--r--test-suite/tests/tree-il.test93
45 files changed, 20211 insertions, 18738 deletions
diff --git a/NEWS b/NEWS
index 9d546f0f8..0edcef75c 100644
--- a/NEWS
+++ b/NEWS
@@ -25,6 +25,14 @@ different architecture. See the documentation for `--target' in the
cross-compiler. See the "Cross building Guile" section of the README,
for more on how to cross-compile Guile itself.
+** The return of `local-eval'.
+
+Back by popular demand, `the-environment' and `local-eval' allow the
+user to capture a lexical environment, and then evaluate arbitrary
+expressions in that context. There is also a new `local-compile'
+command. See "Local Evaluation" in the manual, for more. Special
+thanks to Mark Weaver for an initial implementation of this feature.
+
** Fluids can now have default values.
Fluids are used for dynamic and thread-local binding. They have always
@@ -77,7 +85,7 @@ default environment. See "Parameters" in the manual, for more
information. `current-input-port', `current-output-port', and
`current-error-port' are now parameters.
-** Add `current-warning-port'
+** Add `current-warning-port'.
Guile now outputs warnings on a separate port, `current-warning-port',
initialized to the value that `current-error-port' has on startup.
@@ -97,51 +105,101 @@ locale. However for backwards compatibility with other 2.0.x releases,
it does so without actually calling `setlocale'. Please report any bugs
in this facility to bug-guile@gnu.org.
+** One-armed conditionals: `when' and `unless'
+
+Guile finally has `when' and `unless' in the default environment. Use
+them whenever you would use an `if' with only one branch. See
+"Conditionals" in the manual, for more.
+
+** `current-filename', `add-to-load-path'
+
+There is a new form, `(current-filename)', which expands out to the
+source file in which it occurs. Combined with the new
+`add-to-load-path', this allows simple scripts to easily add nearby
+directories to the load path. See "Load Paths" in the manual, for more.
+
+** `random-state-from-platform'
+
+This procedure initializes a random seed using good random sources
+available on your platform, such as /dev/urandom. See "Random Number
+Generation" in the manual, for more.
+
+** Manual updates
+
+Besides the sections already mentioned, the following manual sections
+are new in this release: "Modules and the File System", "Module System
+Reflection", "Syntax Transformer Helpers", and "Local Inclusion".
+
* New interfaces
** (ice-9 session): `apropos-hook'
** New print option: `escape-newlines', defaults to #t.
** (ice-9 ftw): `file-system-fold', `file-system-tree', `scandir'
+** `scm_c_value_ref': access to multiple returned values from C
+** scm_call (a varargs version), scm_call_7, scm_call_8, scm_call_9
+** Some new syntax helpers in (system syntax)
+
+Search the manual for these identifiers and modules, for more.
+
+* Build fixes
+
+** FreeBSD build fixes.
+** OpenBSD compilation fixes.
+** Solaris 2.10 test suite fixes.
+** IA64 compilation fix.
+** MinGW build fixes.
+** Work around instruction reordering on SPARC and HPPA in the VM.
+** Gnulib updates: added `dirfd', `setenv' modules.
* Bug fixes
-** Fix R6RS `fold-left' so the accumulator is the first argument.
-** fix <dynwind> serialization.
-** Fix bugs in the new `peval' optimizer.
-** Allow values bound in non-tail let expressions to be collected.
-** Fix bit-set*! bug from 2005.
-** Fix bug in `make-repl' when `lang' is actually a language.
-** Hack the port-column of current-output-port after printing a prompt.
+** Add a deprecated alias for $expt.
+** Add an exception printer for `getaddrinfo-error'.
+** Add deprecated shim for `scm_display_error' with stack as first argument.
+** Add warnings for unsupported `simple-format' options.
+** Allow overlapping regions to be passed to `bytevector-copy!'.
+** Avoid calling `u32_conv_from_encoding' on the null string.
+** Better function prologue disassembly
+** Compiler: fix miscompilation of (values foo ...) in some contexts.
+** Compiler: fix serialization of #nil-terminated lists.
+** Compiler: allow values bound in non-tail let expressions to be collected.
+** Deprecate SCM_ASRTGO.
+** Document invalidity of (begin) as expression; add back-compat shim.
+** Don't leak file descriptors when mmaping objcode.
+** Empty substrings no longer reference the original stringbuf.
+** FFI: Fix `set-pointer-finalizer!' to leave the type cell unchanged.
+** FFI: Fix signed/unsigned pointer mismatches in implementation.
** FFI: Hold a weak reference to the CIF made by `procedure->pointer'.
** FFI: Hold a weak reference to the procedure passed to `procedure->pointer'.
** FFI: Properly unpack small integer return values in closure call.
-** Allow overlapping regions to be passed to `bytevector-copy!'.
+** Fix R6RS `fold-left' so the accumulator is the first argument.
** Fix `validate-target' in (system base target).
-** `,language' at REPL sets the current-language fluid.
-** `primitive-load' returns the value(s) of the last expression.
-** Add an exception printer for `getaddrinfo-error'.
-** Add a deprecated alias for $expt.
-** Document invalidity of (begin) as expression; add back-compat shim.
-** Web: Allow URIs with empty authorities, like "file:///etc/hosts".
-** HTTP: Fix validators for various list-style headers.
+** Fix bit-set*! bug from 2005.
+** Fix bug in `make-repl' when `lang' is actually a <language>.
+** Fix bugs related to mutation, the null string, and shared substrings.
+** Fix <dynwind> serialization.
+** Fix erroneous check in `set-procedure-properties!'.
+** Fix generalized-vector-{ref,set!} for slices.
+** Fix error messages involving definition forms.
+** Fix primitive-eval to return #<unspecified> for definitions.
** HTTP: Extend handling of "Cache-Control" header.
** HTTP: Fix qstring writing of cache-extension values
-** HTTP: `write-request-line' writes absolute paths, not absolute URIs.
+** HTTP: Fix validators for various list-style headers.
** HTTP: Permit non-date values for Expires header.
-** FreeBSD build fixes.
-** Fix generalized-vector-{ref,set!} for slices.
-** Fix erroneous check in `set-procedure-properties!'.
-** Don't leak file descriptors when mmaping objcode.
-** Fix bugs related to mutation, the null string, and shared substrings.
-** Deprecate SCM_ASRTGO.
-** Add deprecated shim for `scm_display_error' with stack as first argument.
-** i18n: Fix gc_malloc/free mismatch on non-GNU systems.
-** Make sure `regexp-quote' tests use Unicode-capable string ports.
+** HTTP: `write-request-line' writes absolute paths, not absolute URIs.
+** Hack the port-column of current-output-port after printing a prompt.
** Have `cpu-word-size' error out on unknown CPUs; add support for MIPSEL.
+** Make sure `regexp-quote' tests use Unicode-capable string ports.
+** Peval: Fix bugs in the new optimizer.
+** Peval: fold (values FOO) to FOO in more cases
+** Statistically unique marks and labels, for robust hygiene across sessions.
+** Web: Allow URIs with empty authorities, like "file:///etc/hosts".
+** `,language' at REPL sets the current-language fluid.
+** `primitive-load' returns the value(s) of the last expression.
** `scm_from_stringn' always returns unique strings.
-** Empty substrings no longer reference the original stringbuf.
** `scm_i_substring_copy' tries to narrow the substring.
-** Avoid calling `u32_conv_from_encoding' on the null string.
+** guile-readline: Clean `.go' files.
+** i18n: Fix gc_malloc/free mismatch on non-GNU systems.
Changes in 2.0.3 (since 2.0.2):
diff --git a/configure.ac b/configure.ac
index 5f9ead1e0..697761fc8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1527,9 +1527,14 @@ case "$GCC" in
## and it became equally exasperating (gcc 2.95 and/or glibc 2.1.2).
## -Wundef was removed because Gnulib prevented it (see
## <http://thread.gmane.org/gmane.lisp.guile.bugs/5329>.)
+
+ ## Build with `-fno-strict-aliasing' to prevent miscompilation on
+ ## some platforms. See
+ ## <http://lists.gnu.org/archive/html/guile-devel/2012-01/msg00487.html>.
+
POTENTIAL_GCC_CFLAGS="-Wall -Wmissing-prototypes \
-Wdeclaration-after-statement \
- -Wswitch-enum"
+ -Wswitch-enum -fno-strict-aliasing"
# Do this here so we don't screw up any of the tests above that might
# not be "warning free"
if test "${GUILE_ERROR_ON_WARNING}" = yes
diff --git a/doc/ref/api-evaluation.texi b/doc/ref/api-evaluation.texi
index ef3e602bb..8c41d1efd 100644
--- a/doc/ref/api-evaluation.texi
+++ b/doc/ref/api-evaluation.texi
@@ -20,6 +20,8 @@ loading, evaluating, and compiling Scheme code at run time.
* Load Paths:: Where Guile looks for code.
* Character Encoding of Source Files:: Loading non-ASCII Scheme code from file.
* Delayed Evaluation:: Postponing evaluation until it is needed.
+* Local Evaluation:: Evaluation in a local lexical environment.
+* Local Inclusion:: Compile-time inclusion of one file in another.
@end menu
@@ -531,9 +533,24 @@ then there's no @var{arg1}@dots{}@var{argN} and @var{arg} is the
@deffnx {C Function} scm_call_4 (proc, arg1, arg2, arg3, arg4)
@deffnx {C Function} scm_call_5 (proc, arg1, arg2, arg3, arg4, arg5)
@deffnx {C Function} scm_call_6 (proc, arg1, arg2, arg3, arg4, arg5, arg6)
+@deffnx {C Function} scm_call_7 (proc, arg1, arg2, arg3, arg4, arg5, arg6, arg7)
+@deffnx {C Function} scm_call_8 (proc, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8)
+@deffnx {C Function} scm_call_9 (proc, arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9)
Call @var{proc} with the given arguments.
@end deffn
+@deffn {C Function} scm_call (proc, ...)
+Call @var{proc} with any number of arguments. The argument list must be
+terminated by @code{SCM_UNDEFINED}. For example:
+
+@example
+scm_call (scm_c_public_ref ("guile", "+"),
+ scm_from_int (1),
+ scm_from_int (2),
+ SCM_UNDEFINED);
+@end example
+@end deffn
+
@deffn {C Function} scm_call_n (proc, argv, nargs)
Call @var{proc} with the array of arguments @var{argv}, as a
@code{SCM*}. The length of the arguments should be passed in
@@ -807,7 +824,15 @@ The procedure in the previous section look for Scheme code in the file
system at specific location. Guile also has some procedures to search
the load path for code.
-For more on the @code{%load-path} variable, @xref{Build Config}.
+@cindex @env{GUILE_LOAD_PATH}
+@defvar %load-path
+List of directories which should be searched for Scheme modules and
+libraries. @code{%load-path} is initialized when Guile starts up to
+@code{(list (%site-dir) (%library-dir) (%package-data-dir))}, prepended
+with the contents of the @env{GUILE_LOAD_PATH} environment variable, if
+it is set. @xref{Build Config}, for more on @code{%site-dir} and
+related procedures.
+@end defvar
@deffn {Scheme Procedure} load-from-path filename
Similar to @code{load}, but searches for @var{filename} in the load
@@ -819,6 +844,7 @@ A user can extend the load path by calling @code{add-to-load-path}.
@deffn {Scheme Syntax} add-to-load-path dir
Add @var{dir} to the load path.
+@end deffn
For example, a script might include this form to add the directory that
it is in to the load path:
@@ -826,7 +852,6 @@ it is in to the load path:
@example
(add-to-load-path (dirname (current-filename)))
@end example
-@end deffn
It's better to use @code{add-to-load-path} than to modify
@code{%load-path} directly, because @code{add-to-load-path} takes care
@@ -850,12 +875,11 @@ the C function takes only one argument, which can be either a string
@deffn {Scheme Procedure} %search-load-path filename
@deffnx {C Function} scm_sys_search_load_path (filename)
-Search @code{%load-path} for the file named @var{filename},
-which must be readable by the current user. If @var{filename}
-is found in the list of paths to search or is an absolute
-pathname, return its full pathname. Otherwise, return
-@code{#f}. Filenames may have any of the optional extensions
-in the @code{%load-extensions} list; @code{%search-load-path}
+Search @code{%load-path} for the file named @var{filename}, which must
+be readable by the current user. If @var{filename} is found in the list
+of paths to search or is an absolute pathname, return its full pathname.
+Otherwise, return @code{#f}. Filenames may have any of the optional
+extensions in the @code{%load-extensions} list; @code{%search-load-path}
will try each extension automatically.
@end deffn
@@ -866,6 +890,61 @@ a file to load. By default, @code{%load-extensions} is bound to the
list @code{("" ".scm")}.
@end defvar
+As mentioned above, when Guile searches the @code{%load-path} for a
+source file, it will also search the @code{%load-compiled-path} for a
+corresponding compiled file. If the compiled file is as new or newer
+than the source file, it will be loaded instead of the source file,
+using @code{load-compiled}.
+
+@defvar %load-compiled-path
+Like @code{%load-path}, but for compiled files. By default, this path
+has two entries: one for compiled files from Guile itself, and one for
+site packages.
+@end defvar
+
+When @code{primitive-load-path} searches the @code{%load-compiled-path}
+for a corresponding compiled file for a relative path it does so by
+appending @code{.go} to the relative path. For example, searching for
+@code{ice-9/popen} could find
+@code{/usr/lib/guile/2.0/ccache/ice-9/popen.go}, and use it instead of
+@code{/usr/share/guile/2.0/ice-9/popen.scm}.
+
+If @code{primitive-load-path} does not find a corresponding @code{.go}
+file in the @code{%load-compiled-path}, or the @code{.go} file is out of
+date, it will search for a corresponding auto-compiled file in the
+fallback path, possibly creating one if one does not exist.
+
+@xref{Installing Site Packages}, for more on how to correctly install
+site packages. @xref{Modules and the File System}, for more on the
+relationship between load paths and modules. @xref{Compilation}, for
+more on the fallback path and auto-compilation.
+
+Finally, there are a couple of helper procedures for general path
+manipulation.
+
+@deffn {Scheme Procedure} parse-path path [tail]
+@deffnx {C Function} scm_parse_path (path, tail)
+Parse @var{path}, which is expected to be a colon-separated string, into
+a list and return the resulting list with @var{tail} appended. If
+@var{path} is @code{#f}, @var{tail} is returned.
+@end deffn
+
+@deffn {Scheme Procedure} search-path path filename [extensions [require-exts?]]
+@deffnx {C Function} scm_search_path (path, filename, rest)
+Search @var{path} for a directory containing a file named
+@var{filename}. The file must be readable, and not a directory. If we
+find one, return its full filename; otherwise, return @code{#f}. If
+@var{filename} is absolute, return it unchanged. If given,
+@var{extensions} is a list of strings; for each directory in @var{path},
+we search for @var{filename} concatenated with each @var{extension}. If
+@var{require-exts?} is true, require that the returned file name have
+one of the given extensions; if @var{require-exts?} is not given, it
+defaults to @code{#f}.
+
+For compatibility with Guile 1.8 and earlier, the C function takes only
+three arguments.
+@end deffn
+
@node Character Encoding of Source Files
@subsection Character Encoding of Source Files
@@ -980,6 +1059,125 @@ value.
@end deffn
+@node Local Evaluation
+@subsection Local Evaluation
+
+Guile includes a facility to capture a lexical environment, and later
+evaluate a new expression within that environment. This code is
+implemented in a module.
+
+@example
+(use-modules (ice-9 local-eval))
+@end example
+
+@deffn syntax the-environment
+Captures and returns a lexical environment for use with
+@code{local-eval} or @code{local-compile}.
+@end deffn
+
+@deffn {Scheme Procedure} local-eval exp env
+@deffnx {C Function} scm_local_eval (exp, env)
+@deffnx {Scheme Procedure} local-compile exp env [opts=()]
+Evaluate or compile the expression @var{exp} in the lexical environment
+@var{env}.
+@end deffn
+
+Here is a simple example, illustrating that it is the variable
+that gets captured, not just its value at one point in time.
+
+@example
+(define e (let ((x 100)) (the-environment)))
+(define fetch-x (local-eval '(lambda () x) e))
+(fetch-x)
+@result{} 100
+(local-eval '(set! x 42) e)
+(fetch-x)
+@result{} 42
+@end example
+
+While @var{exp} is evaluated within the lexical environment of
+@code{(the-environment)}, it has the dynamic environment of the call to
+@code{local-eval}.
+
+@code{local-eval} and @code{local-compile} can only evaluate
+expressions, not definitions.
+
+@example
+(local-eval '(define foo 42)
+ (let ((x 100)) (the-environment)))
+@result{} syntax error: definition in expression context
+@end example
+
+Note that the current implementation of @code{(the-environment)} only
+captures ``normal'' lexical bindings, and pattern variables bound by
+@code{syntax-case}. It does not currently capture local syntax
+transformers bound by @code{let-syntax}, @code{letrec-syntax} or
+non-top-level @code{define-syntax} forms. Any attempt to reference such
+captured syntactic keywords via @code{local-eval} or
+@code{local-compile} produces an error.
+
+
+@node Local Inclusion
+@subsection Local Inclusion
+
+This section has discussed various means of linking Scheme code
+together: fundamentally, loading up files at run-time using @code{load}
+and @code{load-compiled}. Guile provides another option to compose
+parts of programs together at expansion-time instead of at run-time.
+
+@deffn {Scheme Syntax} include file-name
+Open @var{file-name}, at expansion-time, and read the Scheme forms that
+it contains, splicing them into the location of the @code{include},
+within a @code{begin}.
+@end deffn
+
+If you are a C programmer, if @code{load} in Scheme is like
+@code{dlopen} in C, consider @code{include} to be like the C
+preprocessor's @code{#include}. When you use @code{include}, it is as
+if the contents of the included file were typed in instead of the
+@code{include} form.
+
+Because the code is included at compile-time, it is available to the
+macroexpander. Syntax definitions in the included file are available to
+later code in the form in which the @code{include} appears, without the
+need for @code{eval-when}. (@xref{Eval When}.)
+
+For the same reason, compiling a form that uses @code{include} results
+in one compilation unit, composed of multiple files. Loading the
+compiled file is one @code{stat} operation for the compilation unit,
+instead of @code{2*@var{n}} in the case of @code{load} (once for each
+loaded source file, and once each corresponding compiled file, in the
+best case).
+
+Unlike @code{load}, @code{include} also works within nested lexical
+contexts. It so happens that the optimizer works best within a lexical
+context, because all of the uses of bindings in a lexical context are
+visible, so composing files by including them within a @code{(let ()
+...)} can sometimes lead to important speed improvements.
+
+On the other hand, @code{include} does have all the disadvantages of
+early binding: once the code with the @code{include} is compiled, no
+change to the included file is reflected in the future behavior of the
+including form.
+
+Also, the particular form of @code{include}, which requires an absolute
+path, or a path relative to the current directory at compile-time, is
+not very amenable to compiling the source in one place, but then
+installing the source to another place. For this reason, Guile provides
+another form, @code{include-from-path}, which looks for the source file
+to include within a load path.
+
+@deffn {Scheme Syntax} include-from-path file-name
+Like @code{include}, but instead of expecting @code{file-name} to be an
+absolute file name, it is expected to be a relative path to search in
+the @code{%load-path}.
+@end deffn
+
+@code{include-from-path} is more useful when you want to install all of
+the source files for a package (as you should!). It makes it possible
+to evaluate an installed file from source, instead of relying on the
+@code{.go} file being up to date.
+
@c Local Variables:
@c TeX-master: "guile.texi"
@c End:
diff --git a/doc/ref/api-foreign.texi b/doc/ref/api-foreign.texi
index 82925e68d..6ece7f8ed 100644
--- a/doc/ref/api-foreign.texi
+++ b/doc/ref/api-foreign.texi
@@ -425,11 +425,11 @@ its own @code{gettext} message catalogue
(@pxref{Internationalization}).
It will be noted all of the above requires that the Scheme code to be
-found in @code{%load-path} (@pxref{Build Config}). Presently it's
-left up to the system administrator or each user to augment that path
-when installing Guile modules in non-default locations. But having
-reached the Scheme code, that code should take care of hitting any of
-its own private files etc.
+found in @code{%load-path} (@pxref{Load Paths}). Presently it's left up
+to the system administrator or each user to augment that path when
+installing Guile modules in non-default locations. But having reached
+the Scheme code, that code should take care of hitting any of its own
+private files etc.
@node Foreign Pointers
diff --git a/doc/ref/api-macros.texi b/doc/ref/api-macros.texi
index 02b5d5c8a..f6a03bc32 100644
--- a/doc/ref/api-macros.texi
+++ b/doc/ref/api-macros.texi
@@ -706,6 +706,23 @@ Return the source properties that correspond to the syntax object
@var{x}. @xref{Source Properties}, for more information.
@end deffn
+Guile also offers some more experimental interfaces in a separate
+module. As was the case with the Large Hadron Collider, it is unclear
+to our senior macrologists whether adding these interfaces will result
+in awesomeness or in the destruction of Guile via the creation of a
+singularity. We will preserve their functionality through the 2.0
+series, but we reserve the right to modify them in a future stable
+series, to a more than usual degree.
+
+@example
+(use-modules (system syntax))
+@end example
+
+@deffn {Scheme Procedure} syntax-module id
+Return the name of the module whose source contains the identifier
+@var{id}.
+@end deffn
+
@deffn {Scheme Procedure} syntax-local-binding id
Resolve the identifer @var{id}, a syntax object, within the current
lexical environment, and return two values, the binding type and a
diff --git a/doc/ref/api-modules.texi b/doc/ref/api-modules.texi
index 3c96c2a55..b9f975864 100644
--- a/doc/ref/api-modules.texi
+++ b/doc/ref/api-modules.texi
@@ -98,8 +98,8 @@ types of access are handled by the syntactic form @code{use-modules},
which accepts one or more interface specifications and, upon evaluation,
arranges for those interfaces to be available to the current module.
This process may include locating and loading code for a given module if
-that code has not yet been loaded, following @code{%load-path} (@pxref{Build
-Config}).
+that code has not yet been loaded, following @code{%load-path}
+(@pxref{Modules and the File System}).
An @dfn{interface specification} has one of two forms. The first
variation is simply to name the module, in which case its public
@@ -464,7 +464,7 @@ from in the @dfn{load path}.
In this case, loading @code{(ice-9 popen)} will eventually cause Guile
to run @code{(primitive-load-path "ice-9/popen")}.
@code{primitive-load-path} will search for a file @file{ice-9/popen} in
-the @code{%load-path} (@pxref{Build Config}). For each directory in
+the @code{%load-path} (@pxref{Load Paths}). For each directory in
@code{%load-path}, Guile will try to find the file name, concatenated
with the extensions from @code{%load-extensions}. By default, this will
cause Guile to @code{stat} @file{ice-9/popen.scm}, and then
diff --git a/doc/ref/api-options.texi b/doc/ref/api-options.texi
index 6f7568bee..f63597824 100644
--- a/doc/ref/api-options.texi
+++ b/doc/ref/api-options.texi
@@ -1,6 +1,6 @@
@c -*-texinfo-*-
@c This is part of the GNU Guile Reference Manual.
-@c Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2008, 2009, 2010, 2011
+@c Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2008, 2009, 2010, 2011, 2012
@c Free Software Foundation, Inc.
@c See the file guile.texi for copying conditions.
@@ -59,14 +59,14 @@ The @code{effective-version} function returns the version name that
should remain unchanged during a stable series. Currently that means
that it omits the micro version. The effective version should be used
for items like the versioned share directory name
-i.e.@: @file{/usr/share/guile/1.6/}
+i.e.@: @file{/usr/share/guile/2.0/}
@lisp
-(version) @result{} "1.6.0"
-(effective-version) @result{} "1.6"
-(major-version) @result{} "1"
-(minor-version) @result{} "6"
-(micro-version) @result{} "0"
+(version) @result{} "2.0.4"
+(effective-version) @result{} "2.0"
+(major-version) @result{} "2"
+(minor-version) @result{} "0"
+(micro-version) @result{} "4"
@end lisp
@end deffn
@@ -86,7 +86,7 @@ party package) are installed. On Unix-like systems this is usually
@file{/usr/share/guile/@var{GUILE_EFFECTIVE_VERSION}};
@noindent
-for example @file{/usr/local/share/guile/1.6}.
+for example @file{/usr/local/share/guile/2.0}.
@end deffn
@deffn {Scheme Procedure} %site-dir
@@ -96,40 +96,6 @@ your site should be installed. On Unix-like systems, this is usually
@file{/usr/local/share/guile/site} or @file{/usr/share/guile/site}.
@end deffn
-@cindex @env{GUILE_LOAD_PATH}
-@defvar %load-path
-List of directories which should be searched for Scheme modules and
-libraries. @code{%load-path} is initialized when Guile starts up to
-@code{(list (%site-dir) (%library-dir) (%package-data-dir))},
-prepended with the contents of the @env{GUILE_LOAD_PATH} environment variable,
-if it is set.
-@end defvar
-
-@deffn {Scheme Procedure} parse-path path [tail]
-@deffnx {C Function} scm_parse_path (path, tail)
-Parse @var{path}, which is expected to be a colon-separated
-string, into a list and return the resulting list with
-@var{tail} appended. If @var{path} is @code{#f}, @var{tail}
-is returned.
-@end deffn
-
-@deffn {Scheme Procedure} search-path path filename [extensions [require-exts?]]
-@deffnx {C Function} scm_search_path (path, filename, rest)
-Search @var{path} for a directory containing a file named
-@var{filename}. The file must be readable, and not a directory.
-If we find one, return its full filename; otherwise, return
-@code{#f}. If @var{filename} is absolute, return it unchanged.
-If given, @var{extensions} is a list of strings; for each
-directory in @var{path}, we search for @var{filename}
-concatenated with each @var{extension}. If @var{require-exts?}
-is true, require that the returned file name have one of the
-given extensions; if @var{require-exts?} is not given, it
-defaults to @code{#f}.
-
-For compatibility with Guile 1.8 and earlier, the C function takes only
-three arguments
-@end deffn
-
@defvar %guile-build-info
Alist of information collected during the building of a particular
Guile. Entries can be grouped into one of several categories:
diff --git a/doc/ref/guile.texi b/doc/ref/guile.texi
index 9c6deb667..c3da0c36d 100644
--- a/doc/ref/guile.texi
+++ b/doc/ref/guile.texi
@@ -14,7 +14,7 @@
This manual documents Guile version @value{VERSION}.
Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005, 2009,
-2010, 2011 Free Software Foundation.
+2010, 2011, 2012 Free Software Foundation.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
diff --git a/doc/ref/scheme-using.texi b/doc/ref/scheme-using.texi
index 07096bb41..ae608d70a 100644
--- a/doc/ref/scheme-using.texi
+++ b/doc/ref/scheme-using.texi
@@ -1,6 +1,6 @@
@c -*-texinfo-*-
@c This is part of the GNU Guile Reference Manual.
-@c Copyright (C) 2006, 2010, 2011
+@c Copyright (C) 2006, 2010, 2011, 2012
@c Free Software Foundation, Inc.
@c See the file guile.texi for copying conditions.
@@ -780,7 +780,8 @@ site packages will be
Note that a @code{.go} file will only be loaded in preference to a
@code{.scm} file if it is newer. For that reason, you should install
-your Scheme files first, and your compiled files second.
+your Scheme files first, and your compiled files second. @code{Load
+Paths}, for more on the loading process.
Finally, although this section is only about Scheme, sometimes you need
to install C extensions too. Shared libraries should be installed in
diff --git a/lib/Makefile.am b/lib/Makefile.am
index 3b9c07e1f..a4a996039 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -21,7 +21,7 @@
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
-# Reproduce by: gnulib-tool --import --dir=. --local-dir=gnulib-local --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 dirfd 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 localcharset 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
+# Reproduce by: gnulib-tool --import --dir=. --local-dir=gnulib-local --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 dirfd 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 localcharset locale log1p maintainer-makefile malloc-gnu malloca nproc open pipe2 putenv recv recvfrom rename send sendto setenv setsockopt shutdown socket stat-time stdlib strftime striconveh string sys_stat trunc verify vsnprintf warnings wchar
AUTOMAKE_OPTIONS = 1.5 gnits subdir-objects
@@ -1343,6 +1343,15 @@ EXTRA_libgnu_la_SOURCES += sendto.c
## end gnulib module sendto
+## begin gnulib module setenv
+
+
+EXTRA_DIST += setenv.c
+
+EXTRA_libgnu_la_SOURCES += setenv.c
+
+## end gnulib module setenv
+
## begin gnulib module setsockopt
diff --git a/lib/setenv.c b/lib/setenv.c
new file mode 100644
index 000000000..75f423f49
--- /dev/null
+++ b/lib/setenv.c
@@ -0,0 +1,390 @@
+/* Copyright (C) 1992, 1995-2003, 2005-2012 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ 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/>. */
+
+#if !_LIBC
+# define _GL_USE_STDLIB_ALLOC 1
+# include <config.h>
+#endif
+
+/* Don't use __attribute__ __nonnull__ in this compilation unit. Otherwise gcc
+ optimizes away the name == NULL test below. */
+#define _GL_ARG_NONNULL(params)
+
+#include <alloca.h>
+
+/* Specification. */
+#include <stdlib.h>
+
+#include <errno.h>
+#ifndef __set_errno
+# define __set_errno(ev) ((errno) = (ev))
+#endif
+
+#include <string.h>
+#if _LIBC || HAVE_UNISTD_H
+# include <unistd.h>
+#endif
+
+#if !_LIBC
+# include "malloca.h"
+#endif
+
+#if _LIBC || !HAVE_SETENV
+
+#if !_LIBC
+# define __environ environ
+#endif
+
+#if _LIBC
+/* This lock protects against simultaneous modifications of 'environ'. */
+# include <bits/libc-lock.h>
+__libc_lock_define_initialized (static, envlock)
+# define LOCK __libc_lock_lock (envlock)
+# define UNLOCK __libc_lock_unlock (envlock)
+#else
+# define LOCK
+# define UNLOCK
+#endif
+
+/* In the GNU C library we must keep the namespace clean. */
+#ifdef _LIBC
+# define setenv __setenv
+# define clearenv __clearenv
+# define tfind __tfind
+# define tsearch __tsearch
+#endif
+
+/* In the GNU C library implementation we try to be more clever and
+ allow arbitrarily many changes of the environment given that the used
+ values are from a small set. Outside glibc this will eat up all
+ memory after a while. */
+#if defined _LIBC || (defined HAVE_SEARCH_H && defined HAVE_TSEARCH \
+ && defined __GNUC__)
+# define USE_TSEARCH 1
+# include <search.h>
+typedef int (*compar_fn_t) (const void *, const void *);
+
+/* This is a pointer to the root of the search tree with the known
+ values. */
+static void *known_values;
+
+# define KNOWN_VALUE(Str) \
+ ({ \
+ void *value = tfind (Str, &known_values, (compar_fn_t) strcmp); \
+ value != NULL ? *(char **) value : NULL; \
+ })
+# define STORE_VALUE(Str) \
+ tsearch (Str, &known_values, (compar_fn_t) strcmp)
+
+#else
+# undef USE_TSEARCH
+
+# define KNOWN_VALUE(Str) NULL
+# define STORE_VALUE(Str) do { } while (0)
+
+#endif
+
+
+/* If this variable is not a null pointer we allocated the current
+ environment. */
+static char **last_environ;
+
+
+/* This function is used by 'setenv' and 'putenv'. The difference between
+ the two functions is that for the former must create a new string which
+ is then placed in the environment, while the argument of 'putenv'
+ must be used directly. This is all complicated by the fact that we try
+ to reuse values once generated for a 'setenv' call since we can never
+ free the strings. */
+int
+__add_to_environ (const char *name, const char *value, const char *combined,
+ int replace)
+{
+ char **ep;
+ size_t size;
+ const size_t namelen = strlen (name);
+ const size_t vallen = value != NULL ? strlen (value) + 1 : 0;
+
+ LOCK;
+
+ /* We have to get the pointer now that we have the lock and not earlier
+ since another thread might have created a new environment. */
+ ep = __environ;
+
+ size = 0;
+ if (ep != NULL)
+ {
+ for (; *ep != NULL; ++ep)
+ if (!strncmp (*ep, name, namelen) && (*ep)[namelen] == '=')
+ break;
+ else
+ ++size;
+ }
+
+ if (ep == NULL || *ep == NULL)
+ {
+ char **new_environ;
+#ifdef USE_TSEARCH
+ char *new_value;
+#endif
+
+ /* We allocated this space; we can extend it. */
+ new_environ =
+ (char **) (last_environ == NULL
+ ? malloc ((size + 2) * sizeof (char *))
+ : realloc (last_environ, (size + 2) * sizeof (char *)));
+ if (new_environ == NULL)
+ {
+ /* It's easier to set errno to ENOMEM than to rely on the
+ 'malloc-posix' and 'realloc-posix' gnulib modules. */
+ __set_errno (ENOMEM);
+ UNLOCK;
+ return -1;
+ }
+
+ /* If the whole entry is given add it. */
+ if (combined != NULL)
+ /* We must not add the string to the search tree since it belongs
+ to the user. */
+ new_environ[size] = (char *) combined;
+ else
+ {
+ /* See whether the value is already known. */
+#ifdef USE_TSEARCH
+# ifdef _LIBC
+ new_value = (char *) alloca (namelen + 1 + vallen);
+ __mempcpy (__mempcpy (__mempcpy (new_value, name, namelen), "=", 1),
+ value, vallen);
+# else
+ new_value = (char *) malloca (namelen + 1 + vallen);
+ if (new_value == NULL)
+ {
+ __set_errno (ENOMEM);
+ UNLOCK;
+ return -1;
+ }
+ memcpy (new_value, name, namelen);
+ new_value[namelen] = '=';
+ memcpy (&new_value[namelen + 1], value, vallen);
+# endif
+
+ new_environ[size] = KNOWN_VALUE (new_value);
+ if (new_environ[size] == NULL)
+#endif
+ {
+ new_environ[size] = (char *) malloc (namelen + 1 + vallen);
+ if (new_environ[size] == NULL)
+ {
+#if defined USE_TSEARCH && !defined _LIBC
+ freea (new_value);
+#endif
+ __set_errno (ENOMEM);
+ UNLOCK;
+ return -1;
+ }
+
+#ifdef USE_TSEARCH
+ memcpy (new_environ[size], new_value, namelen + 1 + vallen);
+#else
+ memcpy (new_environ[size], name, namelen);
+ new_environ[size][namelen] = '=';
+ memcpy (&new_environ[size][namelen + 1], value, vallen);
+#endif
+ /* And save the value now. We cannot do this when we remove
+ the string since then we cannot decide whether it is a
+ user string or not. */
+ STORE_VALUE (new_environ[size]);
+ }
+#if defined USE_TSEARCH && !defined _LIBC
+ freea (new_value);
+#endif
+ }
+
+ if (__environ != last_environ)
+ memcpy ((char *) new_environ, (char *) __environ,
+ size * sizeof (char *));
+
+ new_environ[size + 1] = NULL;
+
+ last_environ = __environ = new_environ;
+ }
+ else if (replace)
+ {
+ char *np;
+
+ /* Use the user string if given. */
+ if (combined != NULL)
+ np = (char *) combined;
+ else
+ {
+#ifdef USE_TSEARCH
+ char *new_value;
+# ifdef _LIBC
+ new_value = alloca (namelen + 1 + vallen);
+ __mempcpy (__mempcpy (__mempcpy (new_value, name, namelen), "=", 1),
+ value, vallen);
+# else
+ new_value = malloca (namelen + 1 + vallen);
+ if (new_value == NULL)
+ {
+ __set_errno (ENOMEM);
+ UNLOCK;
+ return -1;
+ }
+ memcpy (new_value, name, namelen);
+ new_value[namelen] = '=';
+ memcpy (&new_value[namelen + 1], value, vallen);
+# endif
+
+ np = KNOWN_VALUE (new_value);
+ if (np == NULL)
+#endif
+ {
+ np = (char *) malloc (namelen + 1 + vallen);
+ if (np == NULL)
+ {
+#if defined USE_TSEARCH && !defined _LIBC
+ freea (new_value);
+#endif
+ __set_errno (ENOMEM);
+ UNLOCK;
+ return -1;
+ }
+
+#ifdef USE_TSEARCH
+ memcpy (np, new_value, namelen + 1 + vallen);
+#else
+ memcpy (np, name, namelen);
+ np[namelen] = '=';
+ memcpy (&np[namelen + 1], value, vallen);
+#endif
+ /* And remember the value. */
+ STORE_VALUE (np);
+ }
+#if defined USE_TSEARCH && !defined _LIBC
+ freea (new_value);
+#endif
+ }
+
+ *ep = np;
+ }
+
+ UNLOCK;
+
+ return 0;
+}
+
+int
+setenv (const char *name, const char *value, int replace)
+{
+ if (name == NULL || *name == '\0' || strchr (name, '=') != NULL)
+ {
+ __set_errno (EINVAL);
+ return -1;
+ }
+
+ return __add_to_environ (name, value, NULL, replace);
+}
+
+/* The 'clearenv' was planned to be added to POSIX.1 but probably
+ never made it. Nevertheless the POSIX.9 standard (POSIX bindings
+ for Fortran 77) requires this function. */
+int
+clearenv (void)
+{
+ LOCK;
+
+ if (__environ == last_environ && __environ != NULL)
+ {
+ /* We allocated this environment so we can free it. */
+ free (__environ);
+ last_environ = NULL;
+ }
+
+ /* Clear the environment pointer removes the whole environment. */
+ __environ = NULL;
+
+ UNLOCK;
+
+ return 0;
+}
+
+#ifdef _LIBC
+static void
+free_mem (void)
+{
+ /* Remove all traces. */
+ clearenv ();
+
+ /* Now remove the search tree. */
+ __tdestroy (known_values, free);
+ known_values = NULL;
+}
+text_set_element (__libc_subfreeres, free_mem);
+
+
+# undef setenv
+# undef clearenv
+weak_alias (__setenv, setenv)
+weak_alias (__clearenv, clearenv)
+#endif
+
+#endif /* _LIBC || !HAVE_SETENV */
+
+/* The rest of this file is called into use when replacing an existing
+ but buggy setenv. Known bugs include failure to diagnose invalid
+ name, and consuming a leading '=' from value. */
+#if HAVE_SETENV
+
+# undef setenv
+# if !HAVE_DECL_SETENV
+extern int setenv (const char *, const char *, int);
+# endif
+# define STREQ(a, b) (strcmp (a, b) == 0)
+
+int
+rpl_setenv (const char *name, const char *value, int replace)
+{
+ int result;
+ if (!name || !*name || strchr (name, '='))
+ {
+ errno = EINVAL;
+ return -1;
+ }
+ /* Call the real setenv even if replace is 0, in case implementation
+ has underlying data to update, such as when environ changes. */
+ result = setenv (name, value, replace);
+ if (result == 0 && replace && *value == '=')
+ {
+ char *tmp = getenv (name);
+ if (!STREQ (tmp, value))
+ {
+ int saved_errno;
+ size_t len = strlen (value);
+ tmp = malloca (len + 2);
+ /* Since leading '=' is eaten, double it up. */
+ *tmp = '=';
+ memcpy (tmp + 1, value, len + 1);
+ result = setenv (name, tmp, replace);
+ saved_errno = errno;
+ freea (tmp);
+ errno = saved_errno;
+ }
+ }
+ return result;
+}
+
+#endif /* HAVE_SETENV */
diff --git a/libguile/debug.c b/libguile/debug.c
index c6ce99e7c..87513bf48 100644
--- a/libguile/debug.c
+++ b/libguile/debug.c
@@ -1,5 +1,5 @@
/* Debugging extensions for Guile
- * Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2003, 2006, 2008, 2009, 2010, 2011 Free Software Foundation
+ * Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2002, 2003, 2006, 2008, 2009, 2010, 2011, 2012 Free Software Foundation
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
@@ -199,6 +199,17 @@ SCM_DEFINE (scm_debug_hang, "debug-hang", 0, 1, 0,
#undef FUNC_NAME
#endif
+SCM
+scm_local_eval (SCM exp, SCM env)
+{
+ static SCM local_eval_var = SCM_BOOL_F;
+
+ if (scm_is_false (local_eval_var))
+ local_eval_var = scm_c_public_variable ("ice-9 local-eval", "local-eval");
+
+ return scm_call_2 (SCM_VARIABLE_REF (local_eval_var), exp, env);
+}
+
static void
init_stack_limit (void)
{
diff --git a/libguile/debug.h b/libguile/debug.h
index 0749d283c..362d9b7e2 100644
--- a/libguile/debug.h
+++ b/libguile/debug.h
@@ -3,7 +3,7 @@
#ifndef SCM_DEBUG_H
#define SCM_DEBUG_H
-/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2004,2008,2009,2010,2011
+/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2004,2008,2009,2010,2011,2012
* Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
@@ -41,6 +41,8 @@ typedef union scm_t_debug_info
+SCM_API SCM scm_local_eval (SCM exp, SCM env);
+
SCM_API SCM scm_reverse_lookup (SCM env, SCM data);
SCM_API SCM scm_procedure_source (SCM proc);
SCM_API SCM scm_procedure_name (SCM proc);
diff --git a/libguile/eval.c b/libguile/eval.c
index ad0a84a58..5a42b1ead 100644
--- a/libguile/eval.c
+++ b/libguile/eval.c
@@ -24,6 +24,7 @@
#endif
#include <alloca.h>
+#include <stdarg.h>
#include "libguile/__scm.h"
@@ -521,11 +522,56 @@ scm_call_6 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, SCM arg5,
}
SCM
+scm_call_7 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, SCM arg5,
+ SCM arg6, SCM arg7)
+{
+ SCM args[] = { arg1, arg2, arg3, arg4, arg5, arg6, arg7 };
+ return scm_c_vm_run (scm_the_vm (), proc, args, 7);
+}
+
+SCM
+scm_call_8 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, SCM arg5,
+ SCM arg6, SCM arg7, SCM arg8)
+{
+ SCM args[] = { arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8 };
+ return scm_c_vm_run (scm_the_vm (), proc, args, 8);
+}
+
+SCM
+scm_call_9 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4, SCM arg5,
+ SCM arg6, SCM arg7, SCM arg8, SCM arg9)
+{
+ SCM args[] = { arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9 };
+ return scm_c_vm_run (scm_the_vm (), proc, args, 9);
+}
+
+SCM
scm_call_n (SCM proc, SCM *argv, size_t nargs)
{
return scm_c_vm_run (scm_the_vm (), proc, argv, nargs);
}
+SCM
+scm_call (SCM proc, ...)
+{
+ va_list argp;
+ SCM *argv = NULL;
+ size_t i, nargs = 0;
+
+ va_start (argp, proc);
+ while (!SCM_UNBNDP (va_arg (argp, SCM)))
+ nargs++;
+ va_end (argp);
+
+ argv = alloca (nargs * sizeof (SCM));
+ va_start (argp, proc);
+ for (i = 0; i < nargs; i++)
+ argv[i] = va_arg (argp, SCM);
+ va_end (argp);
+
+ return scm_c_vm_run (scm_the_vm (), proc, argv, nargs);
+}
+
/* Simple procedure applies
*/
diff --git a/libguile/eval.h b/libguile/eval.h
index f193ad64e..014f0dec5 100644
--- a/libguile/eval.h
+++ b/libguile/eval.h
@@ -72,7 +72,14 @@ SCM_API SCM scm_call_5 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4,
SCM arg5);
SCM_API SCM scm_call_6 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4,
SCM arg5, SCM arg6);
+SCM_API SCM scm_call_7 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4,
+ SCM arg5, SCM arg6, SCM arg7);
+SCM_API SCM scm_call_8 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4,
+ SCM arg5, SCM arg6, SCM arg7, SCM arg8);
+SCM_API SCM scm_call_9 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM arg4,
+ SCM arg5, SCM arg6, SCM arg7, SCM arg8, SCM arg9);
SCM_API SCM scm_call_n (SCM proc, SCM *argv, size_t nargs);
+SCM_API SCM scm_call (SCM proc, ...);
SCM_API SCM scm_apply_0 (SCM proc, SCM args);
SCM_API SCM scm_apply_1 (SCM proc, SCM arg1, SCM args);
SCM_API SCM scm_apply_2 (SCM proc, SCM arg1, SCM arg2, SCM args);
diff --git a/libguile/gc.c b/libguile/gc.c
index 5f61a1de8..6d44f5e38 100644
--- a/libguile/gc.c
+++ b/libguile/gc.c
@@ -227,6 +227,10 @@ scm_t_c_hook scm_after_gc_c_hook;
static void
run_before_gc_c_hook (void)
{
+ if (!SCM_I_CURRENT_THREAD)
+ /* GC while a thread is spinning up; punt. */
+ return;
+
scm_c_hook_run (&scm_before_gc_c_hook, NULL);
}
diff --git a/libguile/i18n.c b/libguile/i18n.c
index 4bb9e2137..5a53bfae5 100644
--- a/libguile/i18n.c
+++ b/libguile/i18n.c
@@ -645,6 +645,7 @@ SCM_DEFINE (scm_make_locale, "make-locale", 2, 1, 0,
c_locale = newlocale (c_category_mask, c_locale_name, c_base_locale);
free (c_locale_name);
+ c_locale_name = NULL;
if (c_locale == (locale_t) 0)
{
@@ -662,6 +663,7 @@ SCM_DEFINE (scm_make_locale, "make-locale", 2, 1, 0,
c_locale->category_mask = c_category_mask;
c_locale->locale_name = scm_gc_strdup (c_locale_name, "locale");
free (c_locale_name);
+ c_locale_name = NULL;
if (scm_is_eq (base_locale, SCM_VARIABLE_REF (scm_global_locale)))
{
@@ -1652,6 +1654,7 @@ SCM_DEFINE (scm_nl_langinfo, "nl-langinfo", 1, 1, 0,
default:
result = scm_from_latin1_symbol ("unspecified");
}
+ free (c_result);
break;
#endif
diff --git a/libguile/macros.c b/libguile/macros.c
index 7423e9758..34aa60c83 100644
--- a/libguile/macros.c
+++ b/libguile/macros.c
@@ -177,12 +177,46 @@ SCM_DEFINE (scm_macro_binding, "macro-binding", 1, 0, 0,
#undef FUNC_NAME
+static SCM syntax_session_id;
+
+#define SESSION_ID_LENGTH 22 /* bytes */
+#define BASE64_RADIX_BITS 6
+#define BASE64_RADIX (1 << (BASE64_RADIX_BITS))
+#define BASE64_MASK (BASE64_RADIX - 1)
+
+static SCM
+fresh_syntax_session_id (void)
+{
+ static const char base64[BASE64_RADIX] =
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789$@";
+
+ unsigned char digit_buf[SESSION_ID_LENGTH];
+ char char_buf[SESSION_ID_LENGTH];
+ size_t i;
+
+ scm_i_random_bytes_from_platform (digit_buf, SESSION_ID_LENGTH);
+ for (i = 0; i < SESSION_ID_LENGTH; ++i)
+ char_buf[i] = base64[digit_buf[i] & BASE64_MASK];
+
+ return scm_from_latin1_stringn (char_buf, SESSION_ID_LENGTH);
+}
+
+static SCM
+scm_syntax_session_id (void)
+{
+ return syntax_session_id;
+}
+
+
void
scm_init_macros ()
{
scm_tc16_macro = scm_make_smob_type ("macro", 0);
scm_set_smob_print (scm_tc16_macro, macro_print);
#include "libguile/macros.x"
+
+ syntax_session_id = fresh_syntax_session_id();
+ scm_c_define_gsubr ("syntax-session-id", 0, 0, 0, scm_syntax_session_id);
}
/*
diff --git a/libguile/symbols.c b/libguile/symbols.c
index 9dd204478..9cb300ab0 100644
--- a/libguile/symbols.c
+++ b/libguile/symbols.c
@@ -33,7 +33,6 @@
#include "libguile/variable.h"
#include "libguile/alist.h"
#include "libguile/fluids.h"
-#include "libguile/threads.h"
#include "libguile/strings.h"
#include "libguile/vectors.h"
#include "libguile/weak-set.h"
@@ -379,9 +378,7 @@ SCM_DEFINE (scm_string_ci_to_symbol, "string-ci->symbol", 1, 0, 0,
/* The default prefix for `gensym'd symbols. */
static SCM default_gensym_prefix;
-#define GENSYM_LENGTH 22 /* bytes */
-#define GENSYM_RADIX_BITS 6
-#define GENSYM_RADIX (1 << (GENSYM_RADIX_BITS))
+#define MAX_PREFIX_LENGTH 30
SCM_DEFINE (scm_gensym, "gensym", 0, 1, 0,
(SCM prefix),
@@ -392,47 +389,22 @@ SCM_DEFINE (scm_gensym, "gensym", 0, 1, 0,
"resetting the counter.")
#define FUNC_NAME s_scm_gensym
{
- static const char base64[GENSYM_RADIX] =
- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789$@";
- static const char base4[4] = "_.-~";
-
- unsigned char *digit_buf = SCM_I_CURRENT_THREAD->gensym_counter;
- char char_buf[GENSYM_LENGTH];
+ static int gensym_counter = 0;
+
SCM suffix, name;
- int i;
+ int n, n_digits;
+ char buf[SCM_INTBUFLEN];
if (SCM_UNBNDP (prefix))
prefix = default_gensym_prefix;
- if (SCM_UNLIKELY (digit_buf == NULL))
- {
- /* This is the first time gensym has been called in this thread.
- Allocate and randomize our new thread-local gensym counter */
- digit_buf = (unsigned char *)
- scm_gc_malloc_pointerless (GENSYM_LENGTH, "gensym-counter");
- scm_i_random_bytes_from_platform (digit_buf, GENSYM_LENGTH);
- for (i = (GENSYM_LENGTH - 1); i >= 0; --i)
- digit_buf[i] &= (GENSYM_RADIX - 1);
- SCM_I_CURRENT_THREAD->gensym_counter = digit_buf;
- }
-
- /* Increment our thread-local gensym_counter. */
- for (i = (GENSYM_LENGTH - 1); i >= 0; --i)
- {
- if (SCM_LIKELY (++(digit_buf[i]) < GENSYM_RADIX))
- break;
- else
- digit_buf[i] = 0;
- }
-
- /* Encode digit_buf as base64, except for the first character where we
- use the sparse glyphs "_.-~" (base 4) to provide some visual
- separation between the prefix and the dense base64 block. */
- for (i = (GENSYM_LENGTH - 1); i > 0; --i)
- char_buf[i] = base64[digit_buf[i]];
- char_buf[0] = base4[digit_buf[0] & 3];
+ /* mutex in case another thread looks and incs at the exact same moment */
+ scm_i_scm_pthread_mutex_lock (&scm_i_misc_mutex);
+ n = gensym_counter++;
+ scm_i_pthread_mutex_unlock (&scm_i_misc_mutex);
- suffix = scm_from_latin1_stringn (char_buf, GENSYM_LENGTH);
+ n_digits = scm_iint2str (n, 10, buf);
+ suffix = scm_from_latin1_stringn (buf, n_digits);
name = scm_string_append (scm_list_2 (prefix, suffix));
return scm_string_to_symbol (name);
}
diff --git a/libguile/threads.c b/libguile/threads.c
index df287b1ac..463414f4a 100644
--- a/libguile/threads.c
+++ b/libguile/threads.c
@@ -544,7 +544,6 @@ guilify_self_1 (struct GC_stack_base *base)
t.join_queue = SCM_EOL;
t.dynamic_state = SCM_BOOL_F;
t.dynwinds = SCM_EOL;
- t.gensym_counter = NULL;
t.active_asyncs = SCM_EOL;
t.block_asyncs = 1;
t.pending_asyncs = 1;
diff --git a/libguile/threads.h b/libguile/threads.h
index 2d2348bde..54d64141b 100644
--- a/libguile/threads.h
+++ b/libguile/threads.h
@@ -81,10 +81,6 @@ typedef struct scm_i_thread {
SCM dynamic_state;
SCM dynwinds;
- /* Thread-local gensym counter.
- */
- unsigned char *gensym_counter;
-
/* For system asyncs.
*/
SCM active_asyncs; /* The thunks to be run at the next
diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c
index 0804bad5d..8981042f8 100644
--- a/libguile/vm-i-system.c
+++ b/libguile/vm-i-system.c
@@ -1,6 +1,5 @@
-/* Copyright (C) 2001, 2008, 2009, 2010, 2011,
- * 2012 Free Software Foundation, Inc.
- *
+/* Copyright (C) 2001,2008,2009,2010,2011 Free Software Foundation, Inc.
+ *
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
* as published by the Free Software Foundation; either version 3 of
@@ -20,17 +19,6 @@
/* This file is included in vm_engine.c */
-/* Compiler barrier, to prevent instruction reordering, apparently due
- to a bug in GCC 4.3.2 on sparc-linux-gnu and on hppa2.0-linux-gnu.
- See <http://bugs.gnu.org/10520>, for details. */
-
-#ifdef __GNUC__
-# define COMPILER_BARRIER __asm__ __volatile__ ("")
-#else
-# define COMPILER_BARRIER do { } while (0)
-#endif
-
-
/*
* Basic operations
@@ -67,7 +55,6 @@ VM_DEFINE_INSTRUCTION (1, halt, "halt", 0, 0, 0)
stack */
ip = SCM_FRAME_RETURN_ADDRESS (fp);
fp = SCM_FRAME_DYNAMIC_LINK (fp);
- COMPILER_BARRIER;
NULLSTACK (old_sp - sp);
}
@@ -1280,7 +1267,6 @@ VM_DEFINE_INSTRUCTION (67, return, "return", 0, 1, 1)
sp = SCM_FRAME_LOWER_ADDRESS (fp);
ip = SCM_FRAME_RETURN_ADDRESS (fp);
fp = SCM_FRAME_DYNAMIC_LINK (fp);
- COMPILER_BARRIER;
#ifdef VM_ENABLE_STACK_NULLING
NULLSTACK (old_sp - sp);
@@ -1316,8 +1302,7 @@ VM_DEFINE_INSTRUCTION (68, return_values, "return/values", 1, -1, -1)
sp = SCM_FRAME_LOWER_ADDRESS (fp) - 1;
ip = SCM_FRAME_MV_RETURN_ADDRESS (fp);
fp = SCM_FRAME_DYNAMIC_LINK (fp);
- COMPILER_BARRIER;
-
+
/* Push return values, and the number of values */
for (i = 0; i < nvalues; i++)
*++sp = vals[i+1];
@@ -1337,8 +1322,7 @@ VM_DEFINE_INSTRUCTION (68, return_values, "return/values", 1, -1, -1)
sp = SCM_FRAME_LOWER_ADDRESS (fp) - 1;
ip = SCM_FRAME_RETURN_ADDRESS (fp);
fp = SCM_FRAME_DYNAMIC_LINK (fp);
- COMPILER_BARRIER;
-
+
/* Push first value */
*++sp = vals[1];
@@ -1729,7 +1713,6 @@ VM_DEFINE_INSTRUCTION (93, assert_nargs_ee_locals, "assert-nargs-ee/locals", 1,
NEXT;
}
-#undef COMPILER_BARRIER
/*
(defun renumber-ops ()
diff --git a/m4/gnulib-cache.m4 b/m4/gnulib-cache.m4
index ea7feade6..8065a0553 100644
--- a/m4/gnulib-cache.m4
+++ b/m4/gnulib-cache.m4
@@ -27,7 +27,7 @@
# Specification in the form of a command-line invocation:
-# gnulib-tool --import --dir=. --local-dir=gnulib-local --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 dirfd 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 localcharset 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
+# gnulib-tool --import --dir=. --local-dir=gnulib-local --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 dirfd 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 localcharset locale log1p maintainer-makefile malloc-gnu malloca nproc open pipe2 putenv recv recvfrom rename send sendto setenv 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([gnulib-local])
@@ -90,6 +90,7 @@ gl_MODULES([
rename
send
sendto
+ setenv
setsockopt
shutdown
socket
diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4
index 07f2ac3cf..9ec19f03d 100644
--- a/m4/gnulib-comp.m4
+++ b/m4/gnulib-comp.m4
@@ -149,6 +149,7 @@ AC_DEFUN([gl_EARLY],
# Code from module send:
# Code from module sendto:
# Code from module servent:
+ # Code from module setenv:
# Code from module setsockopt:
# Code from module shutdown:
# Code from module signal-h:
@@ -523,6 +524,11 @@ if test "$ac_cv_header_winsock2_h" = yes; then
fi
gl_SYS_SOCKET_MODULE_INDICATOR([sendto])
gl_SERVENT
+gl_FUNC_SETENV
+if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then
+ AC_LIBOBJ([setenv])
+fi
+gl_STDLIB_MODULE_INDICATOR([setenv])
AC_REQUIRE([gl_HEADER_SYS_SOCKET])
if test "$ac_cv_header_winsock2_h" = yes; then
AC_LIBOBJ([setsockopt])
@@ -886,6 +892,7 @@ AC_DEFUN([gl_FILE_LIST], [
lib/same-inode.h
lib/send.c
lib/sendto.c
+ lib/setenv.c
lib/setsockopt.c
lib/shutdown.c
lib/signal.in.h
@@ -1027,6 +1034,7 @@ AC_DEFUN([gl_FILE_LIST], [
m4/safe-read.m4
m4/safe-write.m4
m4/servent.m4
+ m4/setenv.m4
m4/signal_h.m4
m4/size_max.m4
m4/snprintf.m4
diff --git a/m4/setenv.m4 b/m4/setenv.m4
new file mode 100644
index 000000000..a1f30bc47
--- /dev/null
+++ b/m4/setenv.m4
@@ -0,0 +1,140 @@
+# setenv.m4 serial 25
+dnl Copyright (C) 2001-2004, 2006-2012 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_SETENV],
+[
+ AC_REQUIRE([gl_FUNC_SETENV_SEPARATE])
+ if test $ac_cv_func_setenv = no; then
+ HAVE_SETENV=0
+ else
+ AC_CACHE_CHECK([whether setenv validates arguments],
+ [gl_cv_func_setenv_works],
+ [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+ #include <stdlib.h>
+ #include <errno.h>
+ #include <string.h>
+ ]], [[
+ int result = 0;
+ {
+ if (setenv ("", "", 0) != -1)
+ result |= 1;
+ else if (errno != EINVAL)
+ result |= 2;
+ }
+ {
+ if (setenv ("a", "=", 1) != 0)
+ result |= 4;
+ else if (strcmp (getenv ("a"), "=") != 0)
+ result |= 8;
+ }
+ return result;
+ ]])],
+ [gl_cv_func_setenv_works=yes], [gl_cv_func_setenv_works=no],
+ [gl_cv_func_setenv_works="guessing no"])])
+ if test "$gl_cv_func_setenv_works" != yes; then
+ REPLACE_SETENV=1
+ fi
+ fi
+])
+
+# Like gl_FUNC_SETENV, except prepare for separate compilation
+# (no REPLACE_SETENV, no AC_LIBOBJ).
+AC_DEFUN([gl_FUNC_SETENV_SEPARATE],
+[
+ AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
+ AC_CHECK_DECLS_ONCE([setenv])
+ if test $ac_cv_have_decl_setenv = no; then
+ HAVE_DECL_SETENV=0
+ fi
+ AC_CHECK_FUNCS_ONCE([setenv])
+ gl_PREREQ_SETENV
+])
+
+AC_DEFUN([gl_FUNC_UNSETENV],
+[
+ AC_REQUIRE([gl_STDLIB_H_DEFAULTS])
+ AC_CHECK_DECLS_ONCE([unsetenv])
+ if test $ac_cv_have_decl_unsetenv = no; then
+ HAVE_DECL_UNSETENV=0
+ fi
+ AC_CHECK_FUNCS([unsetenv])
+ if test $ac_cv_func_unsetenv = no; then
+ HAVE_UNSETENV=0
+ else
+ HAVE_UNSETENV=1
+ dnl Some BSDs return void, failing to do error checking.
+ AC_CACHE_CHECK([for unsetenv() return type], [gt_cv_func_unsetenv_ret],
+ [AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [[
+#undef _BSD
+#define _BSD 1 /* unhide unsetenv declaration in OSF/1 5.1 <stdlib.h> */
+#include <stdlib.h>
+extern
+#ifdef __cplusplus
+"C"
+#endif
+int unsetenv (const char *name);
+ ]],
+ [[]])],
+ [gt_cv_func_unsetenv_ret='int'],
+ [gt_cv_func_unsetenv_ret='void'])])
+ if test $gt_cv_func_unsetenv_ret = 'void'; then
+ AC_DEFINE([VOID_UNSETENV], [1], [Define to 1 if unsetenv returns void
+ instead of int.])
+ REPLACE_UNSETENV=1
+ fi
+
+ dnl Solaris 10 unsetenv does not remove all copies of a name.
+ dnl Haiku alpha 2 unsetenv gets confused by assignment to environ.
+ dnl OpenBSD 4.7 unsetenv("") does not fail.
+ AC_CACHE_CHECK([whether unsetenv obeys POSIX],
+ [gl_cv_func_unsetenv_works],
+ [AC_RUN_IFELSE([AC_LANG_PROGRAM([[
+ #include <stdlib.h>
+ #include <errno.h>
+ extern char **environ;
+ ]], [[
+ char entry1[] = "a=1";
+ char entry2[] = "b=2";
+ char *env[] = { entry1, entry2, NULL };
+ if (putenv ((char *) "a=1")) return 1;
+ if (putenv (entry2)) return 2;
+ entry2[0] = 'a';
+ unsetenv ("a");
+ if (getenv ("a")) return 3;
+ if (!unsetenv ("") || errno != EINVAL) return 4;
+ entry2[0] = 'b';
+ environ = env;
+ if (!getenv ("a")) return 5;
+ entry2[0] = 'a';
+ unsetenv ("a");
+ if (getenv ("a")) return 6;
+ ]])],
+ [gl_cv_func_unsetenv_works=yes], [gl_cv_func_unsetenv_works=no],
+ [gl_cv_func_unsetenv_works="guessing no"])])
+ if test "$gl_cv_func_unsetenv_works" != yes; then
+ REPLACE_UNSETENV=1
+ fi
+ fi
+])
+
+# Prerequisites of lib/setenv.c.
+AC_DEFUN([gl_PREREQ_SETENV],
+[
+ AC_REQUIRE([AC_FUNC_ALLOCA])
+ AC_REQUIRE([gl_ENVIRON])
+ AC_CHECK_HEADERS_ONCE([unistd.h])
+ AC_CHECK_HEADERS([search.h])
+ AC_CHECK_FUNCS([tsearch])
+])
+
+# Prerequisites of lib/unsetenv.c.
+AC_DEFUN([gl_PREREQ_UNSETENV],
+[
+ AC_REQUIRE([gl_ENVIRON])
+ AC_CHECK_HEADERS_ONCE([unistd.h])
+])
diff --git a/meta/guile-2.2.pc.in b/meta/guile-2.2.pc.in
index ecca778e1..1bda73449 100644
--- a/meta/guile-2.2.pc.in
+++ b/meta/guile-2.2.pc.in
@@ -15,5 +15,8 @@ Name: GNU Guile
Description: GNU's Ubiquitous Intelligent Language for Extension
Version: @GUILE_VERSION@
Libs: -L${libdir} -lguile-@GUILE_EFFECTIVE_VERSION@ @BDW_GC_LIBS@
-Libs.private: @LIB_CLOCK_GETTIME@ @LIBGMP@ @LIBLTDL@ @LIBFFI_LIBS@ @GUILE_LIBS@
+Libs.private: @LIB_CLOCK_GETTIME@ @LIBGMP@ @LIBLTDL@ @LIBFFI_LIBS@ \
+ @LIBUNISTRING@ @GUILE_LIBS@ @LIBICONV@ @LIBINTL@ @LIBSOCKET@ \
+ @SERVENT_LIB@ @HOSTENT_LIB@ @GETADDRINFO_LIB@ @INET_NTOP_LIB@ \
+ @INET_PTON_LIB@
Cflags: -I${pkgincludedir}/@GUILE_EFFECTIVE_VERSION@ @GUILE_CFLAGS@ @BDW_GC_CFLAGS@
diff --git a/module/Makefile.am b/module/Makefile.am
index 56fa48d99..9c9d8ed36 100644
--- a/module/Makefile.am
+++ b/module/Makefile.am
@@ -1,6 +1,6 @@
## Process this file with automake to produce Makefile.in.
##
-## Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
+## Copyright (C) 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
##
## This file is part of GUILE.
##
@@ -243,7 +243,8 @@ ICE_9_SOURCES = \
ice-9/weak-vector.scm \
ice-9/list.scm \
ice-9/serialize.scm \
- ice-9/vlist.scm
+ ice-9/vlist.scm \
+ ice-9/local-eval.scm
SRFI_SOURCES = \
srfi/srfi-1.scm \
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index fb030b993..1780b843c 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -389,8 +389,6 @@ If there is no handler at all, Guile prints an error and then exits."
(define generate-temporaries #f)
(define bound-identifier=? #f)
(define free-identifier=? #f)
-(define syntax-local-binding #f)
-(define syntax-locally-bound-identifiers #f)
;; $sc-dispatch is an implementation detail of psyntax. It is used by
;; expanded macros, to dispatch an input against a set of patterns.
@@ -3821,12 +3819,44 @@ module '(ice-9 q) '(make-q q-length))}."
-;;; Place the user in the guile-user module.
+;;; SRFI-4 in the default environment. FIXME: we should figure out how
+;;; to deprecate this.
;;;
;; FIXME:
(module-use! the-scm-module (resolve-interface '(srfi srfi-4)))
+
+
+;;; A few identifiers that need to be defined in this file are really
+;;; internal implementation details. We shove them off into internal
+;;; modules, removing them from the (guile) module.
+;;;
+
+(define-module (system syntax))
+
+(let ()
+ (define (steal-bindings! from to ids)
+ (for-each
+ (lambda (sym)
+ (let ((v (module-local-variable from sym)))
+ (module-remove! from sym)
+ (module-add! to sym v)))
+ ids)
+ (module-export! to ids))
+
+ (steal-bindings! the-root-module (resolve-module '(system syntax))
+ '(syntax-local-binding
+ syntax-module
+ syntax-locally-bound-identifiers
+ syntax-session-id)))
+
+
+
+
+;;; Place the user in the guile-user module.
+;;;
+
;; Set filename to #f to prevent reload.
(define-module (guile-user)
#:autoload (system base compile) (compile compile-file)
diff --git a/module/ice-9/compile-psyntax.scm b/module/ice-9/compile-psyntax.scm
index 48bab9236..3d803e9c7 100644
--- a/module/ice-9/compile-psyntax.scm
+++ b/module/ice-9/compile-psyntax.scm
@@ -1,6 +1,6 @@
;;; -*- mode: scheme; coding: utf-8; -*-
;;;
-;;; Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
+;;; Copyright (C) 2009, 2010, 2011, 2012 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
@@ -19,7 +19,12 @@
(use-modules (language tree-il)
(language tree-il optimize)
(language tree-il canonicalize)
- (ice-9 pretty-print))
+ (ice-9 pretty-print)
+ (system syntax))
+
+;; Avoid gratuitous churn in psyntax-pp.scm due to the marks and labels
+;; changing session identifiers.
+(set! syntax-session-id (lambda () "*"))
(let ((source (list-ref (command-line) 1))
(target (list-ref (command-line) 2)))
diff --git a/module/ice-9/eval.scm b/module/ice-9/eval.scm
index 5b2937147..d993db0c7 100644
--- a/module/ice-9/eval.scm
+++ b/module/ice-9/eval.scm
@@ -425,7 +425,8 @@
(let ((x (eval x env)))
(if (and (procedure? x) (not (procedure-property x 'name)))
(set-procedure-property! x 'name name))
- (define! name x)))
+ (define! name x)
+ (if #f #f)))
(('toplevel-set! (var-or-sym . x))
(variable-set!
diff --git a/module/ice-9/local-eval.scm b/module/ice-9/local-eval.scm
new file mode 100644
index 000000000..28f30b991
--- /dev/null
+++ b/module/ice-9/local-eval.scm
@@ -0,0 +1,251 @@
+;;; -*- mode: scheme; coding: utf-8; -*-
+;;;
+;;; Copyright (C) 2012 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
+
+(define-module (ice-9 local-eval)
+ #:use-module (ice-9 format)
+ #:use-module (srfi srfi-9)
+ #:use-module (srfi srfi-9 gnu)
+ #:use-module (system base compile)
+ #:use-module (system syntax)
+ #:export (the-environment local-eval local-compile))
+
+(define-record-type lexical-environment-type
+ (make-lexical-environment scope wrapper boxes patterns)
+ lexical-environment?
+ (scope lexenv-scope)
+ (wrapper lexenv-wrapper)
+ (boxes lexenv-boxes)
+ (patterns lexenv-patterns))
+
+(set-record-type-printer!
+ lexical-environment-type
+ (lambda (e port)
+ (format port "#<lexical-environment ~S (~S bindings)>"
+ (syntax-module (lexenv-scope e))
+ (+ (length (lexenv-boxes e)) (length (lexenv-patterns e))))))
+
+(define-syntax syntax-object-of
+ (lambda (form)
+ (syntax-case form ()
+ ((_ x) #`(quote #,(datum->syntax #'x #'x))))))
+
+(define-syntax-rule (make-box v)
+ (case-lambda
+ (() v)
+ ((x) (set! v x))))
+
+(define (make-transformer-from-box id trans)
+ (set-procedure-property! trans 'identifier-syntax-box id)
+ trans)
+
+(define-syntax-rule (identifier-syntax-from-box box)
+ (make-transformer-from-box
+ (syntax-object-of box)
+ (identifier-syntax (id (box))
+ ((set! id x) (box x)))))
+
+(define (unsupported-binding name)
+ (make-variable-transformer
+ (lambda (x)
+ (syntax-violation
+ 'local-eval
+ "unsupported binding captured by (the-environment)"
+ x))))
+
+(define (within-nested-ellipses id lvl)
+ (let loop ((s id) (n lvl))
+ (if (zero? n)
+ s
+ (loop #`(#,s (... ...)) (- n 1)))))
+
+;; Analyze the set of bound identifiers IDS. Return four values:
+;;
+;; capture: A list of forms that will be emitted in the expansion of
+;; `the-environment' to capture lexical variables.
+;;
+;; formals: Corresponding formal parameters for use in the lambda that
+;; re-introduces those variables. These are temporary identifiers, and
+;; as such if we have a nested `the-environment', there is no need to
+;; capture them. (See the notes on nested `the-environment' and
+;; proxies, below.)
+;;
+;; wrappers: A list of procedures of type SYNTAX -> SYNTAX, used to wrap
+;; the expression to be evaluated in forms that re-introduce the
+;; variable. The forms will be nested so that the variable shadowing
+;; semantics of the original form are maintained.
+;;
+;; patterns: A terrible hack. The issue is that for pattern variables,
+;; we can't emit lexically nested with-syntax forms, like:
+;;
+;; (with-syntax ((foo 1)) (the-environment))
+;; => (with-syntax ((foo 1))
+;; ... #'(with-syntax ((foo ...)) ... exp) ...)
+;;
+;; The reason is that the outer "foo" substitutes into the inner "foo",
+;; yielding something like:
+;;
+;; (with-syntax ((foo 1))
+;; ... (with-syntax ((1 ...)) ...)
+;;
+;; Which ain't what we want. So we hide the information needed to
+;; re-make the inner pattern binding form in the lexical environment
+;; object, and then introduce those identifiers via another with-syntax.
+;;
+;;
+;; There are four different kinds of lexical bindings: normal lexicals,
+;; macros, displaced lexicals, and pattern variables. See the
+;; documentation of syntax-local-binding for more info on these.
+;;
+;; We capture normal lexicals via `make-box', which creates a
+;; case-lambda that can reference or set a variable. These get
+;; re-introduced with an identifier-syntax.
+;;
+;; We can't capture macros currently. However we do recognize our own
+;; macros that are actually proxying lexicals, so that nested
+;; `the-environment' forms are possible. In that case we drill down to
+;; the identifier for the already-existing box, and just capture that
+;; box.
+;;
+;; And that's it: we skip displaced lexicals, and the pattern variables
+;; are discussed above.
+;;
+(define (analyze-identifiers ids)
+ (define (mktmp)
+ (datum->syntax #'here (gensym "t ")))
+ (let lp ((ids ids) (capture '()) (formals '()) (wrappers '()) (patterns '()))
+ (cond
+ ((null? ids)
+ (values capture formals wrappers patterns))
+ (else
+ (let ((id (car ids)) (ids (cdr ids)))
+ (call-with-values (lambda () (syntax-local-binding id))
+ (lambda (type val)
+ (case type
+ ((lexical)
+ (if (or-map (lambda (x) (bound-identifier=? x id)) formals)
+ (lp ids capture formals wrappers patterns)
+ (let ((t (mktmp)))
+ (lp ids
+ (cons #`(make-box #,id) capture)
+ (cons t formals)
+ (cons (lambda (x)
+ #`(let-syntax ((#,id (identifier-syntax-from-box #,t)))
+ #,x))
+ wrappers)
+ patterns))))
+ ((displaced-lexical)
+ (lp ids capture formals wrappers patterns))
+ ((macro)
+ (let ((b (procedure-property val 'identifier-syntax-box)))
+ (if b
+ (lp ids (cons b capture) (cons b formals)
+ (cons (lambda (x)
+ #`(let-syntax ((#,id (identifier-syntax-from-box #,b)))
+ #,x))
+ wrappers)
+ patterns)
+ (lp ids capture formals
+ (cons (lambda (x)
+ #`(let-syntax ((#,id (unsupported-binding '#,id)))
+ #,x))
+ wrappers)
+ patterns))))
+ ((pattern-variable)
+ (let ((t (datum->syntax id (gensym "p ")))
+ (nested (within-nested-ellipses id (cdr val))))
+ (lp ids capture formals
+ (cons (lambda (x)
+ #`(with-syntax ((#,t '#,nested))
+ #,x))
+ wrappers)
+ ;; This dance is to hide these pattern variables
+ ;; from the expander.
+ (cons (list (datum->syntax #'here (syntax->datum id))
+ (cdr val)
+ t)
+ patterns))))
+ (else
+ (error "what" type val))))))))))
+
+(define-syntax the-environment
+ (lambda (x)
+ (syntax-case x ()
+ ((the-environment)
+ #'(the-environment the-environment))
+ ((the-environment scope)
+ (call-with-values (lambda ()
+ (analyze-identifiers
+ (syntax-locally-bound-identifiers #'scope)))
+ (lambda (capture formals wrappers patterns)
+ (define (wrap-expression x)
+ (let lp ((x x) (wrappers wrappers))
+ (if (null? wrappers)
+ x
+ (lp ((car wrappers) x) (cdr wrappers)))))
+ (with-syntax (((f ...) formals)
+ ((c ...) capture)
+ (((pname plvl pformal) ...) patterns)
+ (wrapped (wrap-expression #'(begin #f exp))))
+ #'(make-lexical-environment
+ #'scope
+ (lambda (exp pformal ...)
+ (with-syntax ((exp exp)
+ (pformal pformal)
+ ...)
+ #'(lambda (f ...)
+ wrapped)))
+ (list c ...)
+ (list (list 'pname plvl #'pformal) ...)))))))))
+
+(define (env-module e)
+ (cond
+ ((lexical-environment? e) (resolve-module (syntax-module (lexenv-scope e))))
+ ((module? e) e)
+ (else (error "invalid lexical environment" e))))
+
+(define (env-boxes e)
+ (cond
+ ((lexical-environment? e) (lexenv-boxes e))
+ ((module? e) '())
+ (else (error "invalid lexical environment" e))))
+
+(define (local-wrap x e)
+ (cond
+ ((lexical-environment? e)
+ (apply (lexenv-wrapper e)
+ (datum->syntax (lexenv-scope e) x)
+ (map (lambda (l)
+ (let ((name (car l))
+ (lvl (cadr l))
+ (scope (caddr l)))
+ (within-nested-ellipses (datum->syntax scope name) lvl)))
+ (lexenv-patterns e))))
+ ((module? e) #`(lambda () #f #,x))
+ (else (error "invalid lexical environment" e))))
+
+(define (local-eval x e)
+ "Evaluate the expression @var{x} within the lexical environment @var{e}."
+ (apply (eval (local-wrap x e) (env-module e))
+ (env-boxes e)))
+
+(define* (local-compile x e #:key (opts '()))
+ "Compile and evaluate the expression @var{x} within the lexical
+environment @var{e}."
+ (apply (compile (local-wrap x e) #:env (env-module e)
+ #:from 'scheme #:opts opts)
+ (env-boxes e)))
diff --git a/module/ice-9/psyntax-pp.scm b/module/ice-9/psyntax-pp.scm
index 43a2cf567..847a25b3f 100644
--- a/module/ice-9/psyntax-pp.scm
+++ b/module/ice-9/psyntax-pp.scm
@@ -1,11177 +1,12234 @@
(eval-when (compile) (set-current-module (resolve-module (quote (guile)))))
(if #f #f)
-(letrec*
- ((#{top-level-eval-hook 28198}#
- (lambda (#{x 58998}# #{mod 58999}#)
- (primitive-eval #{x 58998}#)))
- (#{maybe-name-value! 28203}#
- (lambda (#{name 42551}# #{val 42552}#)
- (if (if (struct? #{val 42552}#)
- (eq? (struct-vtable #{val 42552}#)
- (vector-ref %expanded-vtables 14))
- #f)
- (let ((#{meta 42559}# (struct-ref #{val 42552}# 1)))
- (if (not (assq 'name #{meta 42559}#))
- (let ((#{v 42564}#
- (cons (cons 'name #{name 42551}#) #{meta 42559}#)))
- (struct-set! #{val 42552}# 1 #{v 42564}#)))))))
- (#{build-call 28205}#
- (lambda (#{source 42296}#
- #{fun-exp 42297}#
- #{arg-exps 42298}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 11)
- #{source 42296}#
- #{fun-exp 42297}#
- #{arg-exps 42298}#)))
- (#{build-conditional 28206}#
- (lambda (#{source 42304}#
- #{test-exp 42305}#
- #{then-exp 42306}#
- #{else-exp 42307}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 10)
- #{source 42304}#
- #{test-exp 42305}#
- #{then-exp 42306}#
- #{else-exp 42307}#)))
- (#{build-dynlet 28207}#
- (lambda (#{source 42314}#
- #{fluids 42315}#
- #{vals 42316}#
- #{body 42317}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 18)
- #{source 42314}#
- #{fluids 42315}#
- #{vals 42316}#
- #{body 42317}#)))
- (#{build-lexical-reference 28208}#
- (lambda (#{type 59000}#
- #{source 59001}#
- #{name 59002}#
- #{var 59003}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 3)
- #{source 59001}#
- #{name 59002}#
- #{var 59003}#)))
- (#{build-lexical-assignment 28209}#
- (lambda (#{source 42324}#
- #{name 42325}#
- #{var 42326}#
- #{exp 42327}#)
- (begin
- (if (if (struct? #{exp 42327}#)
- (eq? (struct-vtable #{exp 42327}#)
+(let ((session-id-4511 (if #f #f))
+ (transformer-environment-4572 (if #f #f)))
+ (letrec*
+ ((top-level-eval-hook-4509
+ (lambda (x-36254 mod-36255)
+ (primitive-eval x-36254)))
+ (maybe-name-value!-4515
+ (lambda (name-19069 val-19070)
+ (if (if (struct? val-19070)
+ (eq? (struct-vtable val-19070)
(vector-ref %expanded-vtables 14))
#f)
- (let ((#{meta 42343}# (struct-ref #{exp 42327}# 1)))
- (if (not (assq 'name #{meta 42343}#))
- (let ((#{v 42350}#
- (cons (cons 'name #{name 42325}#) #{meta 42343}#)))
- (struct-set! #{exp 42327}# 1 #{v 42350}#)))))
+ (let ((meta-19077 (struct-ref val-19070 1)))
+ (if (not (assq 'name meta-19077))
+ (let ((v-19082
+ (cons (cons 'name name-19069) meta-19077)))
+ (struct-set! val-19070 1 v-19082)))))))
+ (build-call-4517
+ (lambda (source-18814 fun-exp-18815 arg-exps-18816)
(make-struct/no-tail
- (vector-ref %expanded-vtables 4)
- #{source 42324}#
- #{name 42325}#
- #{var 42326}#
- #{exp 42327}#))))
- (#{analyze-variable 28210}#
- (lambda (#{mod 59009}#
- #{var 59010}#
- #{modref-cont 59011}#
- #{bare-cont 59012}#)
- (if (not #{mod 59009}#)
- (#{bare-cont 59012}# #{var 59010}#)
- (let ((#{kind 59013}# (car #{mod 59009}#))
- (#{mod 59014}# (cdr #{mod 59009}#)))
- (if (eqv? #{kind 59013}# 'public)
- (#{modref-cont 59011}#
- #{mod 59014}#
- #{var 59010}#
- #t)
- (if (eqv? #{kind 59013}# 'private)
- (if (not (equal?
- #{mod 59014}#
- (module-name (current-module))))
- (#{modref-cont 59011}#
- #{mod 59014}#
- #{var 59010}#
- #f)
- (#{bare-cont 59012}# #{var 59010}#))
- (if (eqv? #{kind 59013}# 'bare)
- (#{bare-cont 59012}# #{var 59010}#)
- (if (eqv? #{kind 59013}# 'hygiene)
- (if (if (not (equal?
- #{mod 59014}#
- (module-name (current-module))))
- (module-variable
- (resolve-module #{mod 59014}#)
- #{var 59010}#)
- #f)
- (#{modref-cont 59011}#
- #{mod 59014}#
- #{var 59010}#
- #f)
- (#{bare-cont 59012}# #{var 59010}#))
- (syntax-violation
- #f
- "bad module kind"
- #{var 59010}#
- #{mod 59014}#)))))))))
- (#{build-global-reference 28211}#
- (lambda (#{source 59029}# #{var 59030}# #{mod 59031}#)
- (#{analyze-variable 28210}#
- #{mod 59031}#
- #{var 59030}#
- (lambda (#{mod 59034}# #{var 59035}# #{public? 59036}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 5)
- #{source 59029}#
- #{mod 59034}#
- #{var 59035}#
- #{public? 59036}#))
- (lambda (#{var 59043}#)
+ (vector-ref %expanded-vtables 11)
+ source-18814
+ fun-exp-18815
+ arg-exps-18816)))
+ (build-conditional-4518
+ (lambda (source-18822
+ test-exp-18823
+ then-exp-18824
+ else-exp-18825)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 10)
+ source-18822
+ test-exp-18823
+ then-exp-18824
+ else-exp-18825)))
+ (build-dynlet-4519
+ (lambda (source-18832 fluids-18833 vals-18834 body-18835)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 18)
+ source-18832
+ fluids-18833
+ vals-18834
+ body-18835)))
+ (build-lexical-reference-4520
+ (lambda (type-36256 source-36257 name-36258 var-36259)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 3)
+ source-36257
+ name-36258
+ var-36259)))
+ (build-lexical-assignment-4521
+ (lambda (source-18842 name-18843 var-18844 exp-18845)
+ (begin
+ (if (if (struct? exp-18845)
+ (eq? (struct-vtable exp-18845)
+ (vector-ref %expanded-vtables 14))
+ #f)
+ (let ((meta-18861 (struct-ref exp-18845 1)))
+ (if (not (assq 'name meta-18861))
+ (let ((v-18868
+ (cons (cons 'name name-18843) meta-18861)))
+ (struct-set! exp-18845 1 v-18868)))))
(make-struct/no-tail
- (vector-ref %expanded-vtables 7)
- #{source 59029}#
- #{var 59043}#)))))
- (#{build-global-assignment 28212}#
- (lambda (#{source 42359}#
- #{var 42360}#
- #{exp 42361}#
- #{mod 42362}#)
- (begin
- (if (if (struct? #{exp 42361}#)
- (eq? (struct-vtable #{exp 42361}#)
- (vector-ref %expanded-vtables 14))
- #f)
- (let ((#{meta 42378}# (struct-ref #{exp 42361}# 1)))
- (if (not (assq 'name #{meta 42378}#))
- (let ((#{v 42385}#
- (cons (cons 'name #{var 42360}#) #{meta 42378}#)))
- (struct-set! #{exp 42361}# 1 #{v 42385}#)))))
- (#{analyze-variable 28210}#
- #{mod 42362}#
- #{var 42360}#
- (lambda (#{mod 42390}# #{var 42391}# #{public? 42392}#)
+ (vector-ref %expanded-vtables 4)
+ source-18842
+ name-18843
+ var-18844
+ exp-18845))))
+ (analyze-variable-4522
+ (lambda (mod-36265
+ var-36266
+ modref-cont-36267
+ bare-cont-36268)
+ (if (not mod-36265)
+ (bare-cont-36268 var-36266)
+ (let ((kind-36269 (car mod-36265))
+ (mod-36270 (cdr mod-36265)))
+ (if (eqv? kind-36269 'public)
+ (modref-cont-36267 mod-36270 var-36266 #t)
+ (if (eqv? kind-36269 'private)
+ (if (not (equal? mod-36270 (module-name (current-module))))
+ (modref-cont-36267 mod-36270 var-36266 #f)
+ (bare-cont-36268 var-36266))
+ (if (eqv? kind-36269 'bare)
+ (bare-cont-36268 var-36266)
+ (if (eqv? kind-36269 'hygiene)
+ (if (if (not (equal?
+ mod-36270
+ (module-name (current-module))))
+ (module-variable
+ (resolve-module mod-36270)
+ var-36266)
+ #f)
+ (modref-cont-36267 mod-36270 var-36266 #f)
+ (bare-cont-36268 var-36266))
+ (syntax-violation
+ #f
+ "bad module kind"
+ var-36266
+ mod-36270)))))))))
+ (build-global-reference-4523
+ (lambda (source-36285 var-36286 mod-36287)
+ (analyze-variable-4522
+ mod-36287
+ var-36286
+ (lambda (mod-36290 var-36291 public?-36292)
(make-struct/no-tail
- (vector-ref %expanded-vtables 6)
- #{source 42359}#
- #{mod 42390}#
- #{var 42391}#
- #{public? 42392}#
- #{exp 42361}#))
- (lambda (#{var 42400}#)
+ (vector-ref %expanded-vtables 5)
+ source-36285
+ mod-36290
+ var-36291
+ public?-36292))
+ (lambda (var-36299)
(make-struct/no-tail
- (vector-ref %expanded-vtables 8)
- #{source 42359}#
- #{var 42400}#
- #{exp 42361}#))))))
- (#{build-global-definition 28213}#
- (lambda (#{source 59048}# #{var 59049}# #{exp 59050}#)
- (begin
- (if (if (struct? #{exp 59050}#)
- (eq? (struct-vtable #{exp 59050}#)
- (vector-ref %expanded-vtables 14))
- #f)
- (let ((#{meta 59066}# (struct-ref #{exp 59050}# 1)))
- (if (not (assq 'name #{meta 59066}#))
- (let ((#{v 59073}#
- (cons (cons 'name #{var 59049}#) #{meta 59066}#)))
- (struct-set! #{exp 59050}# 1 #{v 59073}#)))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 9)
- #{source 59048}#
- #{var 59049}#
- #{exp 59050}#))))
- (#{build-simple-lambda 28214}#
- (lambda (#{src 42406}#
- #{req 42407}#
- #{rest 42408}#
- #{vars 42409}#
- #{meta 42410}#
- #{exp 42411}#)
- (let ((#{body 42417}#
+ (vector-ref %expanded-vtables 7)
+ source-36285
+ var-36299)))))
+ (build-global-assignment-4524
+ (lambda (source-18877 var-18878 exp-18879 mod-18880)
+ (begin
+ (if (if (struct? exp-18879)
+ (eq? (struct-vtable exp-18879)
+ (vector-ref %expanded-vtables 14))
+ #f)
+ (let ((meta-18896 (struct-ref exp-18879 1)))
+ (if (not (assq 'name meta-18896))
+ (let ((v-18903
+ (cons (cons 'name var-18878) meta-18896)))
+ (struct-set! exp-18879 1 v-18903)))))
+ (analyze-variable-4522
+ mod-18880
+ var-18878
+ (lambda (mod-18908 var-18909 public?-18910)
(make-struct/no-tail
- (vector-ref %expanded-vtables 15)
- #{src 42406}#
- #{req 42407}#
- #f
- #{rest 42408}#
- #f
- '()
- #{vars 42409}#
- #{exp 42411}#
- #f)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #{src 42406}#
- #{meta 42410}#
- #{body 42417}#))))
- (#{build-primcall 28217}#
- (lambda (#{src 42429}# #{name 42430}# #{args 42431}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 12)
- #{src 42429}#
- #{name 42430}#
- #{args 42431}#)))
- (#{build-sequence 28220}#
- (lambda (#{src 59081}# #{exps 59082}#)
- (if (null? (cdr #{exps 59082}#))
- (car #{exps 59082}#)
- (let ((#{head 59086}# (car #{exps 59082}#))
- (#{tail 59087}#
- (#{build-sequence 28220}#
+ (vector-ref %expanded-vtables 6)
+ source-18877
+ mod-18908
+ var-18909
+ public?-18910
+ exp-18879))
+ (lambda (var-18918)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 8)
+ source-18877
+ var-18918
+ exp-18879))))))
+ (build-global-definition-4525
+ (lambda (source-36304 var-36305 exp-36306)
+ (begin
+ (if (if (struct? exp-36306)
+ (eq? (struct-vtable exp-36306)
+ (vector-ref %expanded-vtables 14))
+ #f)
+ (let ((meta-36322 (struct-ref exp-36306 1)))
+ (if (not (assq 'name meta-36322))
+ (let ((v-36329
+ (cons (cons 'name var-36305) meta-36322)))
+ (struct-set! exp-36306 1 v-36329)))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 9)
+ source-36304
+ var-36305
+ exp-36306))))
+ (build-simple-lambda-4526
+ (lambda (src-18924
+ req-18925
+ rest-18926
+ vars-18927
+ meta-18928
+ exp-18929)
+ (let ((body-18935
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ src-18924
+ req-18925
+ #f
+ rest-18926
#f
- (cdr #{exps 59082}#))))
+ '()
+ vars-18927
+ exp-18929
+ #f)))
(make-struct/no-tail
- (vector-ref %expanded-vtables 13)
- #{src 59081}#
- #{head 59086}#
- #{tail 59087}#)))))
- (#{build-named-let 28222}#
- (lambda (#{src 42437}#
- #{ids 42438}#
- #{vars 42439}#
- #{val-exps 42440}#
- #{body-exp 42441}#)
- (let ((#{f 42442}# (car #{vars 42439}#))
- (#{f-name 42443}# (car #{ids 42438}#))
- (#{vars 42444}# (cdr #{vars 42439}#))
- (#{ids 42445}# (cdr #{ids 42438}#)))
- (let ((#{proc 42446}#
- (let ((#{body 42466}#
+ (vector-ref %expanded-vtables 14)
+ src-18924
+ meta-18928
+ body-18935))))
+ (build-primcall-4529
+ (lambda (src-18947 name-18948 args-18949)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ src-18947
+ name-18948
+ args-18949)))
+ (build-sequence-4532
+ (lambda (src-36337 exps-36338)
+ (if (null? (cdr exps-36338))
+ (car exps-36338)
+ (let ((head-36342 (car exps-36338))
+ (tail-36343
+ (build-sequence-4532 #f (cdr exps-36338))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 13)
+ src-36337
+ head-36342
+ tail-36343)))))
+ (build-named-let-4534
+ (lambda (src-18955
+ ids-18956
+ vars-18957
+ val-exps-18958
+ body-exp-18959)
+ (let ((f-18960 (car vars-18957))
+ (f-name-18961 (car ids-18956))
+ (vars-18962 (cdr vars-18957))
+ (ids-18963 (cdr ids-18956)))
+ (let ((proc-18964
+ (let ((body-18984
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ src-18955
+ ids-18963
+ #f
+ #f
+ #f
+ '()
+ vars-18962
+ body-exp-18959
+ #f)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ src-18955
+ '()
+ body-18984))))
+ (begin
+ (if (if (struct? proc-18964)
+ (eq? (struct-vtable proc-18964)
+ (vector-ref %expanded-vtables 14))
+ #f)
+ (let ((meta-19008 (struct-ref proc-18964 1)))
+ (if (not (assq 'name meta-19008))
+ (let ((v-19015
+ (cons (cons 'name f-name-18961) meta-19008)))
+ (struct-set! proc-18964 1 v-19015)))))
+ (for-each
+ maybe-name-value!-4515
+ ids-18963
+ val-exps-18958)
+ (let ((names-19039 (list f-name-18961))
+ (gensyms-19040 (list f-18960))
+ (vals-19041 (list proc-18964))
+ (body-19042
+ (let ((fun-exp-19046
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 3)
+ src-18955
+ f-name-18961
+ f-18960)))
(make-struct/no-tail
- (vector-ref %expanded-vtables 15)
- #{src 42437}#
- #{ids 42445}#
- #f
- #f
- #f
- '()
- #{vars 42444}#
- #{body-exp 42441}#
- #f)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #{src 42437}#
- '()
- #{body 42466}#))))
+ (vector-ref %expanded-vtables 11)
+ src-18955
+ fun-exp-19046
+ val-exps-18958))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 17)
+ src-18955
+ #f
+ names-19039
+ gensyms-19040
+ vals-19041
+ body-19042)))))))
+ (build-letrec-4535
+ (lambda (src-19062
+ in-order?-19063
+ ids-19064
+ vars-19065
+ val-exps-19066
+ body-exp-19067)
+ (if (null? vars-19065)
+ body-exp-19067
(begin
- (if (if (struct? #{proc 42446}#)
- (eq? (struct-vtable #{proc 42446}#)
- (vector-ref %expanded-vtables 14))
- #f)
- (let ((#{meta 42490}# (struct-ref #{proc 42446}# 1)))
- (if (not (assq 'name #{meta 42490}#))
- (let ((#{v 42497}#
- (cons (cons 'name #{f-name 42443}#)
- #{meta 42490}#)))
- (struct-set! #{proc 42446}# 1 #{v 42497}#)))))
(for-each
- #{maybe-name-value! 28203}#
- #{ids 42445}#
- #{val-exps 42440}#)
- (let ((#{names 42521}# (list #{f-name 42443}#))
- (#{gensyms 42522}# (list #{f 42442}#))
- (#{vals 42523}# (list #{proc 42446}#))
- (#{body 42524}#
- (let ((#{fun-exp 42528}#
- (make-struct/no-tail
- (vector-ref %expanded-vtables 3)
- #{src 42437}#
- #{f-name 42443}#
- #{f 42442}#)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 11)
- #{src 42437}#
- #{fun-exp 42528}#
- #{val-exps 42440}#))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 17)
- #{src 42437}#
- #f
- #{names 42521}#
- #{gensyms 42522}#
- #{vals 42523}#
- #{body 42524}#)))))))
- (#{build-letrec 28223}#
- (lambda (#{src 42544}#
- #{in-order? 42545}#
- #{ids 42546}#
- #{vars 42547}#
- #{val-exps 42548}#
- #{body-exp 42549}#)
- (if (null? #{vars 42547}#)
- #{body-exp 42549}#
- (begin
- (for-each
- #{maybe-name-value! 28203}#
- #{ids 42546}#
- #{val-exps 42548}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 17)
- #{src 42544}#
- #{in-order? 42545}#
- #{ids 42546}#
- #{vars 42547}#
- #{val-exps 42548}#
- #{body-exp 42549}#)))))
- (#{source-annotation 28232}#
- (lambda (#{x 42575}#)
- (if (if (vector? #{x 42575}#)
- (if (= (vector-length #{x 42575}#) 4)
- (eq? (vector-ref #{x 42575}# 0) 'syntax-object)
- #f)
- #f)
- (#{source-annotation 28232}#
- (vector-ref #{x 42575}# 1))
- (if (pair? #{x 42575}#)
- (let ((#{props 42590}# (source-properties #{x 42575}#)))
- (if (pair? #{props 42590}#) #{props 42590}# #f))
- #f))))
- (#{extend-env 28233}#
- (lambda (#{labels 42592}# #{bindings 42593}# #{r 42594}#)
- (if (null? #{labels 42592}#)
- #{r 42594}#
- (#{extend-env 28233}#
- (cdr #{labels 42592}#)
- (cdr #{bindings 42593}#)
- (cons (cons (car #{labels 42592}#)
- (car #{bindings 42593}#))
- #{r 42594}#)))))
- (#{extend-var-env 28234}#
- (lambda (#{labels 42595}# #{vars 42596}# #{r 42597}#)
- (if (null? #{labels 42595}#)
- #{r 42597}#
- (#{extend-var-env 28234}#
- (cdr #{labels 42595}#)
- (cdr #{vars 42596}#)
- (cons (cons (car #{labels 42595}#)
- (cons 'lexical (car #{vars 42596}#)))
- #{r 42597}#)))))
- (#{macros-only-env 28235}#
- (lambda (#{r 42598}#)
- (if (null? #{r 42598}#)
- '()
- (let ((#{a 42599}# (car #{r 42598}#)))
- (if (let ((#{t 42602}# (car (cdr #{a 42599}#))))
- (if (eq? #{t 42602}# 'macro)
- #t
- (eq? #{t 42602}# 'syntax-parameter)))
- (cons #{a 42599}#
- (#{macros-only-env 28235}# (cdr #{r 42598}#)))
- (#{macros-only-env 28235}# (cdr #{r 42598}#)))))))
- (#{global-extend 28236}#
- (lambda (#{type 42604}# #{sym 42605}# #{val 42606}#)
- (module-define!
- (current-module)
- #{sym 42605}#
- (make-syntax-transformer
- #{sym 42605}#
- #{type 42604}#
- #{val 42606}#))))
- (#{id? 28238}#
- (lambda (#{x 35679}#)
- (if (symbol? #{x 35679}#)
- #t
- (if (if (vector? #{x 35679}#)
- (if (= (vector-length #{x 35679}#) 4)
- (eq? (vector-ref #{x 35679}# 0) 'syntax-object)
+ maybe-name-value!-4515
+ ids-19064
+ val-exps-19066)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 17)
+ src-19062
+ in-order?-19063
+ ids-19064
+ vars-19065
+ val-exps-19066
+ body-exp-19067)))))
+ (source-annotation-4544
+ (lambda (x-19093)
+ (if (if (vector? x-19093)
+ (if (= (vector-length x-19093) 4)
+ (eq? (vector-ref x-19093 0) 'syntax-object)
#f)
#f)
- (symbol? (vector-ref #{x 35679}# 1))
- #f))))
- (#{gen-labels 28241}#
- (lambda (#{ls 42616}#)
- (if (null? #{ls 42616}#)
- '()
- (cons (symbol->string (gensym "i"))
- (#{gen-labels 28241}# (cdr #{ls 42616}#))))))
- (#{make-binding-wrap 28252}#
- (lambda (#{ids 42620}# #{labels 42621}# #{w 42622}#)
- (if (null? #{ids 42620}#)
- #{w 42622}#
- (cons (car #{w 42622}#)
- (cons (let ((#{labelvec 42623}#
- (list->vector #{labels 42621}#)))
- (let ((#{n 42624}# (vector-length #{labelvec 42623}#)))
- (let ((#{symnamevec 42625}# (make-vector #{n 42624}#))
- (#{marksvec 42626}# (make-vector #{n 42624}#)))
- (begin
- (letrec*
- ((#{f 42627}#
- (lambda (#{ids 42824}# #{i 42825}#)
- (if (not (null? #{ids 42824}#))
- (call-with-values
- (lambda ()
- (let ((#{x 42828}#
- (car #{ids 42824}#)))
- (if (if (vector? #{x 42828}#)
- (if (= (vector-length
- #{x 42828}#)
- 4)
- (eq? (vector-ref
- #{x 42828}#
- 0)
- 'syntax-object)
+ (source-annotation-4544 (vector-ref x-19093 1))
+ (if (pair? x-19093)
+ (let ((props-19108 (source-properties x-19093)))
+ (if (pair? props-19108) props-19108 #f))
+ #f))))
+ (extend-env-4545
+ (lambda (labels-19110 bindings-19111 r-19112)
+ (if (null? labels-19110)
+ r-19112
+ (extend-env-4545
+ (cdr labels-19110)
+ (cdr bindings-19111)
+ (cons (cons (car labels-19110) (car bindings-19111))
+ r-19112)))))
+ (extend-var-env-4546
+ (lambda (labels-19113 vars-19114 r-19115)
+ (if (null? labels-19113)
+ r-19115
+ (extend-var-env-4546
+ (cdr labels-19113)
+ (cdr vars-19114)
+ (cons (cons (car labels-19113)
+ (cons 'lexical (car vars-19114)))
+ r-19115)))))
+ (macros-only-env-4547
+ (lambda (r-19116)
+ (if (null? r-19116)
+ '()
+ (let ((a-19117 (car r-19116)))
+ (if (let ((t-19120 (car (cdr a-19117))))
+ (if (eq? t-19120 'macro)
+ #t
+ (eq? t-19120 'syntax-parameter)))
+ (cons a-19117
+ (macros-only-env-4547 (cdr r-19116)))
+ (macros-only-env-4547 (cdr r-19116)))))))
+ (global-extend-4548
+ (lambda (type-19122 sym-19123 val-19124)
+ (module-define!
+ (current-module)
+ sym-19123
+ (make-syntax-transformer
+ sym-19123
+ type-19122
+ val-19124))))
+ (id?-4550
+ (lambda (x-11889)
+ (if (symbol? x-11889)
+ #t
+ (if (if (vector? x-11889)
+ (if (= (vector-length x-11889) 4)
+ (eq? (vector-ref x-11889 0) 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref x-11889 1))
+ #f))))
+ (gen-labels-4553
+ (lambda (ls-19134)
+ (if (null? ls-19134)
+ '()
+ (cons (string-append
+ "l-"
+ (session-id-4511)
+ (symbol->string (gensym "-")))
+ (gen-labels-4553 (cdr ls-19134))))))
+ (make-binding-wrap-4564
+ (lambda (ids-19138 labels-19139 w-19140)
+ (if (null? ids-19138)
+ w-19140
+ (cons (car w-19140)
+ (cons (let ((labelvec-19141 (list->vector labels-19139)))
+ (let ((n-19142 (vector-length labelvec-19141)))
+ (let ((symnamevec-19143 (make-vector n-19142))
+ (marksvec-19144 (make-vector n-19142)))
+ (begin
+ (letrec*
+ ((f-19145
+ (lambda (ids-19342 i-19343)
+ (if (not (null? ids-19342))
+ (call-with-values
+ (lambda ()
+ (let ((x-19346 (car ids-19342)))
+ (if (if (vector? x-19346)
+ (if (= (vector-length
+ x-19346)
+ 4)
+ (eq? (vector-ref
+ x-19346
+ 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (values
- (vector-ref #{x 42828}# 1)
- (let ((#{m1 42844}#
- (car #{w 42622}#))
- (#{m2 42845}#
- (car (vector-ref
- #{x 42828}#
- 2))))
- (if (null? #{m2 42845}#)
- #{m1 42844}#
- (append
- #{m1 42844}#
- #{m2 42845}#))))
- (values
- #{x 42828}#
- (car #{w 42622}#)))))
- (lambda (#{symname 42865}#
- #{marks 42866}#)
- (begin
- (vector-set!
- #{symnamevec 42625}#
- #{i 42825}#
- #{symname 42865}#)
- (vector-set!
- #{marksvec 42626}#
- #{i 42825}#
- #{marks 42866}#)
- (#{f 42627}#
- (cdr #{ids 42824}#)
- (#{1+}# #{i 42825}#)))))))))
- (#{f 42627}# #{ids 42620}# 0))
- (vector
- 'ribcage
- #{symnamevec 42625}#
- #{marksvec 42626}#
- #{labelvec 42623}#)))))
- (cdr #{w 42622}#))))))
- (#{same-marks? 28256}#
- (lambda (#{x 59088}# #{y 59089}#)
- (if (eq? #{x 59088}# #{y 59089}#)
- (eq? #{x 59088}# #{y 59089}#)
- (if (not (null? #{x 59088}#))
- (if (not (null? #{y 59089}#))
- (if (eq? (car #{x 59088}#) (car #{y 59089}#))
- (#{same-marks? 28256}#
- (cdr #{x 59088}#)
- (cdr #{y 59089}#))
+ (values
+ (vector-ref x-19346 1)
+ (let ((m1-19362
+ (car w-19140))
+ (m2-19363
+ (car (vector-ref
+ x-19346
+ 2))))
+ (if (null? m2-19363)
+ m1-19362
+ (append
+ m1-19362
+ m2-19363))))
+ (values
+ x-19346
+ (car w-19140)))))
+ (lambda (symname-19383 marks-19384)
+ (begin
+ (vector-set!
+ symnamevec-19143
+ i-19343
+ symname-19383)
+ (vector-set!
+ marksvec-19144
+ i-19343
+ marks-19384)
+ (f-19145
+ (cdr ids-19342)
+ (#{1+}# i-19343)))))))))
+ (f-19145 ids-19138 0))
+ (vector
+ 'ribcage
+ symnamevec-19143
+ marksvec-19144
+ labelvec-19141)))))
+ (cdr w-19140))))))
+ (same-marks?-4568
+ (lambda (x-36344 y-36345)
+ (if (eq? x-36344 y-36345)
+ (eq? x-36344 y-36345)
+ (if (not (null? x-36344))
+ (if (not (null? y-36345))
+ (if (eq? (car x-36344) (car y-36345))
+ (same-marks?-4568 (cdr x-36344) (cdr y-36345))
+ #f)
#f)
- #f)
- #f))))
- (#{id-var-name 28257}#
- (lambda (#{id 59097}# #{w 59098}# #{mod 59099}#)
- (letrec*
- ((#{search 59100}#
- (lambda (#{sym 59166}#
- #{subst 59167}#
- #{marks 59168}#
- #{mod 59169}#)
- (if (null? #{subst 59167}#)
- (values #f #{marks 59168}#)
- (let ((#{fst 59170}# (car #{subst 59167}#)))
- (if (eq? #{fst 59170}# 'shift)
- (#{search 59100}#
- #{sym 59166}#
- (cdr #{subst 59167}#)
- (cdr #{marks 59168}#)
- #{mod 59169}#)
- (let ((#{symnames 59172}# (vector-ref #{fst 59170}# 1)))
- (if (vector? #{symnames 59172}#)
- (#{search-vector-rib 59102}#
- #{sym 59166}#
- #{subst 59167}#
- #{marks 59168}#
- #{symnames 59172}#
- #{fst 59170}#
- #{mod 59169}#)
- (#{search-list-rib 59101}#
- #{sym 59166}#
- #{subst 59167}#
- #{marks 59168}#
- #{symnames 59172}#
- #{fst 59170}#
- #{mod 59169}#))))))))
- (#{search-list-rib 59101}#
- (lambda (#{sym 59347}#
- #{subst 59348}#
- #{marks 59349}#
- #{symnames 59350}#
- #{ribcage 59351}#
- #{mod 59352}#)
- (letrec*
- ((#{f 59353}#
- (lambda (#{symnames 59356}# #{i 59357}#)
- (if (null? #{symnames 59356}#)
- (#{search 59100}#
- #{sym 59347}#
- (cdr #{subst 59348}#)
- #{marks 59349}#
- #{mod 59352}#)
- (if (if (eq? (car #{symnames 59356}#) #{sym 59347}#)
- (#{same-marks? 28256}#
- #{marks 59349}#
- (list-ref
- (vector-ref #{ribcage 59351}# 2)
- #{i 59357}#))
- #f)
- (let ((#{n 59503}#
- (list-ref
- (vector-ref #{ribcage 59351}# 3)
- #{i 59357}#)))
- (if (pair? #{n 59503}#)
- (if (equal? #{mod 59352}# (car #{n 59503}#))
- (values (cdr #{n 59503}#) #{marks 59349}#)
- (#{f 59353}#
- (cdr #{symnames 59356}#)
- (#{1+}# #{i 59357}#)))
- (values #{n 59503}# #{marks 59349}#)))
- (#{f 59353}#
- (cdr #{symnames 59356}#)
- (#{1+}# #{i 59357}#)))))))
- (#{f 59353}# #{symnames 59350}# 0))))
- (#{search-vector-rib 59102}#
- (lambda (#{sym 59508}#
- #{subst 59509}#
- #{marks 59510}#
- #{symnames 59511}#
- #{ribcage 59512}#
- #{mod 59513}#)
- (let ((#{n 59514}# (vector-length #{symnames 59511}#)))
+ #f))))
+ (id-var-name-4569
+ (lambda (id-36353 w-36354 mod-36355)
+ (letrec*
+ ((search-36356
+ (lambda (sym-36422 subst-36423 marks-36424 mod-36425)
+ (if (null? subst-36423)
+ (values #f marks-36424)
+ (let ((fst-36426 (car subst-36423)))
+ (if (eq? fst-36426 'shift)
+ (search-36356
+ sym-36422
+ (cdr subst-36423)
+ (cdr marks-36424)
+ mod-36425)
+ (let ((symnames-36428 (vector-ref fst-36426 1)))
+ (if (vector? symnames-36428)
+ (search-vector-rib-36358
+ sym-36422
+ subst-36423
+ marks-36424
+ symnames-36428
+ fst-36426
+ mod-36425)
+ (search-list-rib-36357
+ sym-36422
+ subst-36423
+ marks-36424
+ symnames-36428
+ fst-36426
+ mod-36425))))))))
+ (search-list-rib-36357
+ (lambda (sym-36603
+ subst-36604
+ marks-36605
+ symnames-36606
+ ribcage-36607
+ mod-36608)
(letrec*
- ((#{f 59515}#
- (lambda (#{i 59518}#)
- (if (= #{i 59518}# #{n 59514}#)
- (#{search 59100}#
- #{sym 59508}#
- (cdr #{subst 59509}#)
- #{marks 59510}#
- #{mod 59513}#)
- (if (if (eq? (vector-ref
- #{symnames 59511}#
- #{i 59518}#)
- #{sym 59508}#)
- (#{same-marks? 28256}#
- #{marks 59510}#
- (vector-ref
- (vector-ref #{ribcage 59512}# 2)
- #{i 59518}#))
+ ((f-36609
+ (lambda (symnames-36612 i-36613)
+ (if (null? symnames-36612)
+ (search-36356
+ sym-36603
+ (cdr subst-36604)
+ marks-36605
+ mod-36608)
+ (if (if (eq? (car symnames-36612) sym-36603)
+ (same-marks?-4568
+ marks-36605
+ (list-ref
+ (vector-ref ribcage-36607 2)
+ i-36613))
#f)
- (let ((#{n 59665}#
+ (let ((n-36759
+ (list-ref
+ (vector-ref ribcage-36607 3)
+ i-36613)))
+ (if (pair? n-36759)
+ (if (equal? mod-36608 (car n-36759))
+ (values (cdr n-36759) marks-36605)
+ (f-36609
+ (cdr symnames-36612)
+ (#{1+}# i-36613)))
+ (values n-36759 marks-36605)))
+ (f-36609 (cdr symnames-36612) (#{1+}# i-36613)))))))
+ (f-36609 symnames-36606 0))))
+ (search-vector-rib-36358
+ (lambda (sym-36764
+ subst-36765
+ marks-36766
+ symnames-36767
+ ribcage-36768
+ mod-36769)
+ (let ((n-36770 (vector-length symnames-36767)))
+ (letrec*
+ ((f-36771
+ (lambda (i-36774)
+ (if (= i-36774 n-36770)
+ (search-36356
+ sym-36764
+ (cdr subst-36765)
+ marks-36766
+ mod-36769)
+ (if (if (eq? (vector-ref symnames-36767 i-36774)
+ sym-36764)
+ (same-marks?-4568
+ marks-36766
(vector-ref
- (vector-ref #{ribcage 59512}# 3)
- #{i 59518}#)))
- (if (pair? #{n 59665}#)
- (if (equal? #{mod 59513}# (car #{n 59665}#))
- (values (cdr #{n 59665}#) #{marks 59510}#)
- (#{f 59515}# (#{1+}# #{i 59518}#)))
- (values #{n 59665}# #{marks 59510}#)))
- (#{f 59515}# (#{1+}# #{i 59518}#)))))))
- (#{f 59515}# 0))))))
- (if (symbol? #{id 59097}#)
- (let ((#{t 59103}#
- (#{search 59100}#
- #{id 59097}#
- (cdr #{w 59098}#)
- (car #{w 59098}#)
- #{mod 59099}#)))
- (if #{t 59103}# #{t 59103}# #{id 59097}#))
- (if (if (vector? #{id 59097}#)
- (if (= (vector-length #{id 59097}#) 4)
- (eq? (vector-ref #{id 59097}# 0) 'syntax-object)
+ (vector-ref ribcage-36768 2)
+ i-36774))
+ #f)
+ (let ((n-36921
+ (vector-ref
+ (vector-ref ribcage-36768 3)
+ i-36774)))
+ (if (pair? n-36921)
+ (if (equal? mod-36769 (car n-36921))
+ (values (cdr n-36921) marks-36766)
+ (f-36771 (#{1+}# i-36774)))
+ (values n-36921 marks-36766)))
+ (f-36771 (#{1+}# i-36774)))))))
+ (f-36771 0))))))
+ (if (symbol? id-36353)
+ (let ((t-36359
+ (search-36356
+ id-36353
+ (cdr w-36354)
+ (car w-36354)
+ mod-36355)))
+ (if t-36359 t-36359 id-36353))
+ (if (if (vector? id-36353)
+ (if (= (vector-length id-36353) 4)
+ (eq? (vector-ref id-36353 0) 'syntax-object)
+ #f)
#f)
- #f)
- (let ((#{id 59118}# (vector-ref #{id 59097}# 1))
- (#{w1 59119}# (vector-ref #{id 59097}# 2))
- (#{mod 59120}# (vector-ref #{id 59097}# 3)))
- (let ((#{marks 59121}#
- (let ((#{m1 59131}# (car #{w 59098}#))
- (#{m2 59132}# (car #{w1 59119}#)))
- (if (null? #{m2 59132}#)
- #{m1 59131}#
- (append #{m1 59131}# #{m2 59132}#)))))
- (call-with-values
- (lambda ()
- (#{search 59100}#
- #{id 59118}#
- (cdr #{w 59098}#)
- #{marks 59121}#
- #{mod 59120}#))
- (lambda (#{new-id 59152}# #{marks 59153}#)
- (if #{new-id 59152}#
- #{new-id 59152}#
- (let ((#{t 59161}#
- (#{search 59100}#
- #{id 59118}#
- (cdr #{w1 59119}#)
- #{marks 59153}#
- #{mod 59120}#)))
- (if #{t 59161}# #{t 59161}# #{id 59118}#)))))))
- (syntax-violation
- 'id-var-name
- "invalid id"
- #{id 59097}#))))))
- (#{resolve-identifier 28258}#
- (lambda (#{id 42873}#
- #{w 42874}#
- #{r 42875}#
- #{mod 42876}#
- #{resolve-syntax-parameters? 42877}#)
- (let ((#{n 42881}#
- (#{id-var-name 28257}#
- #{id 42873}#
- #{w 42874}#
- #{mod 42876}#)))
- (if (if (vector? #{n 42881}#)
- (if (= (vector-length #{n 42881}#) 4)
- (eq? (vector-ref #{n 42881}# 0) 'syntax-object)
- #f)
- #f)
- (#{resolve-identifier 28258}#
- #{n 42881}#
- #{w 42874}#
- #{r 42875}#
- #{mod 42876}#
- #{resolve-syntax-parameters? 42877}#)
- (if (symbol? #{n 42881}#)
- (let ((#{mod 42896}#
- (if (if (vector? #{id 42873}#)
- (if (= (vector-length #{id 42873}#) 4)
- (eq? (vector-ref #{id 42873}# 0) 'syntax-object)
- #f)
- #f)
- (vector-ref #{id 42873}# 3)
- #{mod 42876}#)))
- (let ((#{b 42897}#
- (let ((#{b 42900}#
- (let ((#{t 42901}#
- (begin
- (if (if (not #{mod 42896}#)
- (current-module)
- #f)
- (warn "module system is booted, we should have a module"
- #{n 42881}#))
- (let ((#{v 42950}#
- (module-variable
- (if #{mod 42896}#
- (resolve-module
- (cdr #{mod 42896}#))
- (current-module))
- #{n 42881}#)))
- (if #{v 42950}#
- (if (variable-bound? #{v 42950}#)
- (let ((#{val 42959}#
- (variable-ref
- #{v 42950}#)))
- (if (macro? #{val 42959}#)
- (if (macro-type
- #{val 42959}#)
- (cons (macro-type
- #{val 42959}#)
- (macro-binding
- #{val 42959}#))
- #f)
- #f))
+ (let ((id-36374 (vector-ref id-36353 1))
+ (w1-36375 (vector-ref id-36353 2))
+ (mod-36376 (vector-ref id-36353 3)))
+ (let ((marks-36377
+ (let ((m1-36387 (car w-36354))
+ (m2-36388 (car w1-36375)))
+ (if (null? m2-36388)
+ m1-36387
+ (append m1-36387 m2-36388)))))
+ (call-with-values
+ (lambda ()
+ (search-36356
+ id-36374
+ (cdr w-36354)
+ marks-36377
+ mod-36376))
+ (lambda (new-id-36408 marks-36409)
+ (if new-id-36408
+ new-id-36408
+ (let ((t-36417
+ (search-36356
+ id-36374
+ (cdr w1-36375)
+ marks-36409
+ mod-36376)))
+ (if t-36417 t-36417 id-36374)))))))
+ (syntax-violation
+ 'id-var-name
+ "invalid id"
+ id-36353))))))
+ (locally-bound-identifiers-4570
+ (lambda (w-19391 mod-19392)
+ (letrec*
+ ((scan-19393
+ (lambda (subst-19398 results-19399)
+ (if (null? subst-19398)
+ results-19399
+ (let ((fst-19400 (car subst-19398)))
+ (if (eq? fst-19400 'shift)
+ (scan-19393 (cdr subst-19398) results-19399)
+ (let ((symnames-19402 (vector-ref fst-19400 1))
+ (marks-19403 (vector-ref fst-19400 2)))
+ (if (vector? symnames-19402)
+ (scan-vector-rib-19395
+ subst-19398
+ symnames-19402
+ marks-19403
+ results-19399)
+ (scan-list-rib-19394
+ subst-19398
+ symnames-19402
+ marks-19403
+ results-19399))))))))
+ (scan-list-rib-19394
+ (lambda (subst-19520
+ symnames-19521
+ marks-19522
+ results-19523)
+ (letrec*
+ ((f-19524
+ (lambda (symnames-19709 marks-19710 results-19711)
+ (if (null? symnames-19709)
+ (scan-19393 (cdr subst-19520) results-19711)
+ (f-19524
+ (cdr symnames-19709)
+ (cdr marks-19710)
+ (cons (let ((x-19717 (car symnames-19709))
+ (w-19718
+ (let ((w-19722
+ (cons (car marks-19710)
+ subst-19520)))
+ (cons (cons #f (car w-19722))
+ (cons 'shift
+ (cdr w-19722))))))
+ (if (if (null? (car w-19718))
+ (null? (cdr w-19718))
+ #f)
+ x-19717
+ (if (if (vector? x-19717)
+ (if (= (vector-length x-19717) 4)
+ (eq? (vector-ref x-19717 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-19734
+ (vector-ref x-19717 1))
+ (wrap-19735
+ (let ((w2-19743
+ (vector-ref x-19717 2)))
+ (let ((m1-19744 (car w-19718))
+ (s1-19745
+ (cdr w-19718)))
+ (if (null? m1-19744)
+ (if (null? s1-19745)
+ w2-19743
+ (cons (car w2-19743)
+ (let ((m2-19756
+ (cdr w2-19743)))
+ (if (null? m2-19756)
+ s1-19745
+ (append
+ s1-19745
+ m2-19756)))))
+ (cons (let ((m2-19764
+ (car w2-19743)))
+ (if (null? m2-19764)
+ m1-19744
+ (append
+ m1-19744
+ m2-19764)))
+ (let ((m2-19772
+ (cdr w2-19743)))
+ (if (null? m2-19772)
+ s1-19745
+ (append
+ s1-19745
+ m2-19772))))))))
+ (module-19736
+ (vector-ref x-19717 3)))
+ (vector
+ 'syntax-object
+ expression-19734
+ wrap-19735
+ module-19736))
+ (if (null? x-19717)
+ x-19717
+ (vector
+ 'syntax-object
+ x-19717
+ w-19718
+ mod-19392)))))
+ results-19711))))))
+ (f-19524
+ symnames-19521
+ marks-19522
+ results-19523))))
+ (scan-vector-rib-19395
+ (lambda (subst-19785
+ symnames-19786
+ marks-19787
+ results-19788)
+ (let ((n-19789 (vector-length symnames-19786)))
+ (letrec*
+ ((f-19790
+ (lambda (i-19961 results-19962)
+ (if (= i-19961 n-19789)
+ (scan-19393 (cdr subst-19785) results-19962)
+ (f-19790
+ (#{1+}# i-19961)
+ (cons (let ((x-19968
+ (vector-ref symnames-19786 i-19961))
+ (w-19969
+ (let ((w-19973
+ (cons (vector-ref
+ marks-19787
+ i-19961)
+ subst-19785)))
+ (cons (cons #f (car w-19973))
+ (cons 'shift
+ (cdr w-19973))))))
+ (if (if (null? (car w-19969))
+ (null? (cdr w-19969))
+ #f)
+ x-19968
+ (if (if (vector? x-19968)
+ (if (= (vector-length x-19968) 4)
+ (eq? (vector-ref x-19968 0)
+ 'syntax-object)
#f)
- #f)))))
- (if #{t 42901}# #{t 42901}# '(global)))))
- (if (if #{resolve-syntax-parameters? 42877}#
- (eq? (car #{b 42900}#) 'syntax-parameter)
- #f)
- (let ((#{t 42968}#
- (assq-ref #{r 42875}# (cdr #{b 42900}#))))
- (if #{t 42968}#
- #{t 42968}#
- (cons 'macro (car (cdr #{b 42900}#)))))
- #{b 42900}#))))
- (if (eq? (car #{b 42897}#) 'global)
- (values 'global #{n 42881}# #{mod 42896}#)
- (values
- (car #{b 42897}#)
- (cdr #{b 42897}#)
- #{mod 42896}#))))
- (if (string? #{n 42881}#)
- (let ((#{mod 42974}#
- (if (if (vector? #{id 42873}#)
- (if (= (vector-length #{id 42873}#) 4)
- (eq? (vector-ref #{id 42873}# 0) 'syntax-object)
+ #f)
+ (let ((expression-19985
+ (vector-ref x-19968 1))
+ (wrap-19986
+ (let ((w2-19994
+ (vector-ref
+ x-19968
+ 2)))
+ (let ((m1-19995
+ (car w-19969))
+ (s1-19996
+ (cdr w-19969)))
+ (if (null? m1-19995)
+ (if (null? s1-19996)
+ w2-19994
+ (cons (car w2-19994)
+ (let ((m2-20007
+ (cdr w2-19994)))
+ (if (null? m2-20007)
+ s1-19996
+ (append
+ s1-19996
+ m2-20007)))))
+ (cons (let ((m2-20015
+ (car w2-19994)))
+ (if (null? m2-20015)
+ m1-19995
+ (append
+ m1-19995
+ m2-20015)))
+ (let ((m2-20023
+ (cdr w2-19994)))
+ (if (null? m2-20023)
+ s1-19996
+ (append
+ s1-19996
+ m2-20023))))))))
+ (module-19987
+ (vector-ref x-19968 3)))
+ (vector
+ 'syntax-object
+ expression-19985
+ wrap-19986
+ module-19987))
+ (if (null? x-19968)
+ x-19968
+ (vector
+ 'syntax-object
+ x-19968
+ w-19969
+ mod-19392)))))
+ results-19962))))))
+ (f-19790 0 results-19788))))))
+ (scan-19393 (cdr w-19391) '()))))
+ (resolve-identifier-4571
+ (lambda (id-20036
+ w-20037
+ r-20038
+ mod-20039
+ resolve-syntax-parameters?-20040)
+ (let ((n-20044
+ (id-var-name-4569 id-20036 w-20037 mod-20039)))
+ (if (if (vector? n-20044)
+ (if (= (vector-length n-20044) 4)
+ (eq? (vector-ref n-20044 0) 'syntax-object)
+ #f)
+ #f)
+ (resolve-identifier-4571
+ n-20044
+ w-20037
+ r-20038
+ mod-20039
+ resolve-syntax-parameters?-20040)
+ (if (symbol? n-20044)
+ (let ((mod-20059
+ (if (if (vector? id-20036)
+ (if (= (vector-length id-20036) 4)
+ (eq? (vector-ref id-20036 0) 'syntax-object)
#f)
#f)
- (vector-ref #{id 42873}# 3)
- #{mod 42876}#)))
- (let ((#{b 42975}#
- (let ((#{b 42978}#
- (let ((#{t 42979}#
- (assq-ref #{r 42875}# #{n 42881}#)))
- (if #{t 42979}#
- #{t 42979}#
- '(displaced-lexical)))))
- (if (if #{resolve-syntax-parameters? 42877}#
- (eq? (car #{b 42978}#) 'syntax-parameter)
+ (vector-ref id-20036 3)
+ mod-20039)))
+ (let ((b-20060
+ (let ((b-20063
+ (let ((t-20064
+ (begin
+ (if (if (not mod-20059)
+ (current-module)
+ #f)
+ (warn "module system is booted, we should have a module"
+ n-20044))
+ (let ((v-20113
+ (module-variable
+ (if mod-20059
+ (resolve-module
+ (cdr mod-20059))
+ (current-module))
+ n-20044)))
+ (if v-20113
+ (if (variable-bound? v-20113)
+ (let ((val-20122
+ (variable-ref
+ v-20113)))
+ (if (macro? val-20122)
+ (if (macro-type val-20122)
+ (cons (macro-type
+ val-20122)
+ (macro-binding
+ val-20122))
+ #f)
+ #f))
+ #f)
+ #f)))))
+ (if t-20064 t-20064 '(global)))))
+ (if (if resolve-syntax-parameters?-20040
+ (eq? (car b-20063) 'syntax-parameter)
#f)
- (let ((#{t 42980}#
- (assq-ref #{r 42875}# (cdr #{b 42978}#))))
- (if #{t 42980}#
- #{t 42980}#
- (cons 'macro (car (cdr #{b 42978}#)))))
- #{b 42978}#))))
- (values
- (car #{b 42975}#)
- (cdr #{b 42975}#)
- #{mod 42974}#)))
- (error "unexpected id-var-name"
- #{id 42873}#
- #{w 42874}#
- #{n 42881}#)))))))
- (#{free-id=? 28259}#
- (lambda (#{i 42993}# #{j 42994}#)
- (let ((#{mi 42995}#
- (if (if (vector? #{i 42993}#)
- (if (= (vector-length #{i 42993}#) 4)
- (eq? (vector-ref #{i 42993}# 0) 'syntax-object)
- #f)
- #f)
- (vector-ref #{i 42993}# 3)
- #f)))
- (let ((#{mj 42996}#
- (if (if (vector? #{j 42994}#)
- (if (= (vector-length #{j 42994}#) 4)
- (eq? (vector-ref #{j 42994}# 0) 'syntax-object)
+ (let ((t-20131 (assq-ref r-20038 (cdr b-20063))))
+ (if t-20131
+ t-20131
+ (cons 'macro (car (cdr b-20063)))))
+ b-20063))))
+ (if (eq? (car b-20060) 'global)
+ (values 'global n-20044 mod-20059)
+ (values (car b-20060) (cdr b-20060) mod-20059))))
+ (if (string? n-20044)
+ (let ((mod-20137
+ (if (if (vector? id-20036)
+ (if (= (vector-length id-20036) 4)
+ (eq? (vector-ref id-20036 0) 'syntax-object)
+ #f)
+ #f)
+ (vector-ref id-20036 3)
+ mod-20039)))
+ (let ((b-20138
+ (let ((b-20141
+ (let ((t-20142 (assq-ref r-20038 n-20044)))
+ (if t-20142
+ t-20142
+ '(displaced-lexical)))))
+ (if (if resolve-syntax-parameters?-20040
+ (eq? (car b-20141) 'syntax-parameter)
+ #f)
+ (let ((t-20143
+ (assq-ref r-20038 (cdr b-20141))))
+ (if t-20143
+ t-20143
+ (cons 'macro (car (cdr b-20141)))))
+ b-20141))))
+ (values (car b-20138) (cdr b-20138) mod-20137)))
+ (error "unexpected id-var-name"
+ id-20036
+ w-20037
+ n-20044)))))))
+ (free-id=?-4574
+ (lambda (i-20156 j-20157)
+ (let ((mi-20158
+ (if (if (vector? i-20156)
+ (if (= (vector-length i-20156) 4)
+ (eq? (vector-ref i-20156 0) 'syntax-object)
#f)
#f)
- (vector-ref #{j 42994}# 3)
+ (vector-ref i-20156 3)
#f)))
- (let ((#{ni 42997}#
- (#{id-var-name 28257}#
- #{i 42993}#
- '(())
- #{mi 42995}#)))
- (let ((#{nj 42998}#
- (#{id-var-name 28257}#
- #{j 42994}#
- '(())
- #{mj 42996}#)))
- (if (if (vector? #{ni 42997}#)
- (if (= (vector-length #{ni 42997}#) 4)
- (eq? (vector-ref #{ni 42997}# 0) 'syntax-object)
- #f)
- #f)
- (#{free-id=? 28259}# #{ni 42997}# #{j 42994}#)
- (if (if (vector? #{nj 42998}#)
- (if (= (vector-length #{nj 42998}#) 4)
- (eq? (vector-ref #{nj 42998}# 0) 'syntax-object)
+ (let ((mj-20159
+ (if (if (vector? j-20157)
+ (if (= (vector-length j-20157) 4)
+ (eq? (vector-ref j-20157 0) 'syntax-object)
+ #f)
+ #f)
+ (vector-ref j-20157 3)
+ #f)))
+ (let ((ni-20160
+ (id-var-name-4569 i-20156 '(()) mi-20158)))
+ (let ((nj-20161
+ (id-var-name-4569 j-20157 '(()) mj-20159)))
+ (if (if (vector? ni-20160)
+ (if (= (vector-length ni-20160) 4)
+ (eq? (vector-ref ni-20160 0) 'syntax-object)
#f)
#f)
- (#{free-id=? 28259}# #{i 42993}# #{nj 42998}#)
- (if (symbol? #{ni 42997}#)
- (if (eq? #{nj 42998}#
- (if (if (vector? #{j 42994}#)
- (if (= (vector-length #{j 42994}#) 4)
- (eq? (vector-ref #{j 42994}# 0)
- 'syntax-object)
+ (free-id=?-4574 ni-20160 j-20157)
+ (if (if (vector? nj-20161)
+ (if (= (vector-length nj-20161) 4)
+ (eq? (vector-ref nj-20161 0) 'syntax-object)
+ #f)
+ #f)
+ (free-id=?-4574 i-20156 nj-20161)
+ (if (symbol? ni-20160)
+ (if (eq? nj-20161
+ (if (if (vector? j-20157)
+ (if (= (vector-length j-20157) 4)
+ (eq? (vector-ref j-20157 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{j 42994}# 1)
- #{j 42994}#))
- (if (let ((#{bi 43070}#
- (module-variable
- (if #{mi 42995}#
- (resolve-module (cdr #{mi 42995}#))
- (current-module))
- (if (if (vector? #{i 42993}#)
- (if (= (vector-length #{i 42993}#)
- 4)
- (eq? (vector-ref #{i 42993}# 0)
- 'syntax-object)
+ (vector-ref j-20157 1)
+ j-20157))
+ (if (let ((bi-20233
+ (module-variable
+ (if mi-20158
+ (resolve-module (cdr mi-20158))
+ (current-module))
+ (if (if (vector? i-20156)
+ (if (= (vector-length i-20156) 4)
+ (eq? (vector-ref i-20156 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{i 42993}# 1)
- #{i 42993}#))))
- (if #{bi 43070}#
- (eq? #{bi 43070}#
- (module-variable
- (if #{mj 42996}#
- (resolve-module (cdr #{mj 42996}#))
- (current-module))
- (if (if (vector? #{j 42994}#)
- (if (= (vector-length #{j 42994}#)
- 4)
- (eq? (vector-ref #{j 42994}# 0)
- 'syntax-object)
+ (vector-ref i-20156 1)
+ i-20156))))
+ (if bi-20233
+ (eq? bi-20233
+ (module-variable
+ (if mj-20159
+ (resolve-module (cdr mj-20159))
+ (current-module))
+ (if (if (vector? j-20157)
+ (if (= (vector-length j-20157) 4)
+ (eq? (vector-ref j-20157 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{j 42994}# 1)
- #{j 42994}#)))
- (if (not (module-variable
- (if #{mj 42996}#
- (resolve-module (cdr #{mj 42996}#))
- (current-module))
- (if (if (vector? #{j 42994}#)
- (if (= (vector-length
- #{j 42994}#)
- 4)
- (eq? (vector-ref
- #{j 42994}#
- 0)
- 'syntax-object)
+ (vector-ref j-20157 1)
+ j-20157)))
+ (if (not (module-variable
+ (if mj-20159
+ (resolve-module (cdr mj-20159))
+ (current-module))
+ (if (if (vector? j-20157)
+ (if (= (vector-length
+ j-20157)
+ 4)
+ (eq? (vector-ref j-20157 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{j 42994}# 1)
- #{j 42994}#)))
- (eq? #{ni 42997}# #{nj 42998}#)
- #f)))
- (eq? (module-variable
- (if #{mi 42995}#
- (resolve-module (cdr #{mi 42995}#))
- (current-module))
- (if (if (vector? #{i 42993}#)
- (if (= (vector-length #{i 42993}#) 4)
- (eq? (vector-ref #{i 42993}# 0)
- 'syntax-object)
+ (vector-ref j-20157 1)
+ j-20157)))
+ (eq? ni-20160 nj-20161)
+ #f)))
+ (eq? (module-variable
+ (if mi-20158
+ (resolve-module (cdr mi-20158))
+ (current-module))
+ (if (if (vector? i-20156)
+ (if (= (vector-length i-20156) 4)
+ (eq? (vector-ref i-20156 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{i 42993}# 1)
- #{i 42993}#))
- (module-variable
- (if #{mj 42996}#
- (resolve-module (cdr #{mj 42996}#))
- (current-module))
- (if (if (vector? #{j 42994}#)
- (if (= (vector-length #{j 42994}#) 4)
- (eq? (vector-ref #{j 42994}# 0)
- 'syntax-object)
+ (vector-ref i-20156 1)
+ i-20156))
+ (module-variable
+ (if mj-20159
+ (resolve-module (cdr mj-20159))
+ (current-module))
+ (if (if (vector? j-20157)
+ (if (= (vector-length j-20157) 4)
+ (eq? (vector-ref j-20157 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{j 42994}# 1)
- #{j 42994}#)))
+ (vector-ref j-20157 1)
+ j-20157)))
+ #f)
#f)
- #f)
- (equal? #{ni 42997}# #{nj 42998}#))))))))))
- (#{bound-id=? 28260}#
- (lambda (#{i 43263}# #{j 43264}#)
- (if (if (if (vector? #{i 43263}#)
- (if (= (vector-length #{i 43263}#) 4)
- (eq? (vector-ref #{i 43263}# 0) 'syntax-object)
+ (equal? ni-20160 nj-20161))))))))))
+ (bound-id=?-4575
+ (lambda (i-20426 j-20427)
+ (if (if (if (vector? i-20426)
+ (if (= (vector-length i-20426) 4)
+ (eq? (vector-ref i-20426 0) 'syntax-object)
+ #f)
+ #f)
+ (if (vector? j-20427)
+ (if (= (vector-length j-20427) 4)
+ (eq? (vector-ref j-20427 0) 'syntax-object)
#f)
- #f)
- (if (vector? #{j 43264}#)
- (if (= (vector-length #{j 43264}#) 4)
- (eq? (vector-ref #{j 43264}# 0) 'syntax-object)
#f)
#f)
+ (if (eq? (vector-ref i-20426 1)
+ (vector-ref j-20427 1))
+ (same-marks?-4568
+ (car (vector-ref i-20426 2))
+ (car (vector-ref j-20427 2)))
#f)
- (if (eq? (vector-ref #{i 43263}# 1)
- (vector-ref #{j 43264}# 1))
- (#{same-marks? 28256}#
- (car (vector-ref #{i 43263}# 2))
- (car (vector-ref #{j 43264}# 2)))
- #f)
- (eq? #{i 43263}# #{j 43264}#))))
- (#{valid-bound-ids? 28261}#
- (lambda (#{ids 43433}#)
- (if (letrec*
- ((#{all-ids? 43434}#
- (lambda (#{ids 43631}#)
- (if (null? #{ids 43631}#)
- (null? #{ids 43631}#)
- (if (let ((#{x 43642}# (car #{ids 43631}#)))
- (if (symbol? #{x 43642}#)
- #t
- (if (if (vector? #{x 43642}#)
- (if (= (vector-length #{x 43642}#) 4)
- (eq? (vector-ref #{x 43642}# 0)
- 'syntax-object)
+ (eq? i-20426 j-20427))))
+ (valid-bound-ids?-4576
+ (lambda (ids-20596)
+ (if (letrec*
+ ((all-ids?-20597
+ (lambda (ids-20794)
+ (if (null? ids-20794)
+ (null? ids-20794)
+ (if (let ((x-20805 (car ids-20794)))
+ (if (symbol? x-20805)
+ #t
+ (if (if (vector? x-20805)
+ (if (= (vector-length x-20805) 4)
+ (eq? (vector-ref x-20805 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{x 43642}# 1))
- #f)))
- (#{all-ids? 43434}# (cdr #{ids 43631}#))
- #f)))))
- (#{all-ids? 43434}# #{ids 43433}#))
- (#{distinct-bound-ids? 28262}# #{ids 43433}#)
- #f)))
- (#{distinct-bound-ids? 28262}#
- (lambda (#{ids 43763}#)
- (letrec*
- ((#{distinct? 43764}#
- (lambda (#{ids 43869}#)
- (if (null? #{ids 43869}#)
- (null? #{ids 43869}#)
- (if (not (#{bound-id-member? 28263}#
- (car #{ids 43869}#)
- (cdr #{ids 43869}#)))
- (#{distinct? 43764}# (cdr #{ids 43869}#))
- #f)))))
- (#{distinct? 43764}# #{ids 43763}#))))
- (#{bound-id-member? 28263}#
- (lambda (#{x 43965}# #{list 43966}#)
- (if (not (null? #{list 43966}#))
- (let ((#{t 43967}#
- (#{bound-id=? 28260}#
- #{x 43965}#
- (car #{list 43966}#))))
- (if #{t 43967}#
- #{t 43967}#
- (#{bound-id-member? 28263}#
- #{x 43965}#
- (cdr #{list 43966}#))))
- #f)))
- (#{source-wrap 28265}#
- (lambda (#{x 44145}#
- #{w 44146}#
- #{s 44147}#
- #{defmod 44148}#)
- (let ((#{x 44152}#
- (begin
- (if (if (pair? #{x 44145}#) #{s 44147}# #f)
- (set-source-properties! #{x 44145}# #{s 44147}#))
- #{x 44145}#)))
- (if (if (null? (car #{w 44146}#))
- (null? (cdr #{w 44146}#))
- #f)
- #{x 44152}#
- (if (if (vector? #{x 44152}#)
- (if (= (vector-length #{x 44152}#) 4)
- (eq? (vector-ref #{x 44152}# 0) 'syntax-object)
- #f)
- #f)
- (let ((#{expression 44184}# (vector-ref #{x 44152}# 1))
- (#{wrap 44185}#
- (let ((#{w2 44193}# (vector-ref #{x 44152}# 2)))
- (let ((#{m1 44194}# (car #{w 44146}#))
- (#{s1 44195}# (cdr #{w 44146}#)))
- (if (null? #{m1 44194}#)
- (if (null? #{s1 44195}#)
- #{w2 44193}#
- (cons (car #{w2 44193}#)
- (let ((#{m2 44210}# (cdr #{w2 44193}#)))
- (if (null? #{m2 44210}#)
- #{s1 44195}#
- (append #{s1 44195}# #{m2 44210}#)))))
- (cons (let ((#{m2 44218}# (car #{w2 44193}#)))
- (if (null? #{m2 44218}#)
- #{m1 44194}#
- (append #{m1 44194}# #{m2 44218}#)))
- (let ((#{m2 44226}# (cdr #{w2 44193}#)))
- (if (null? #{m2 44226}#)
- #{s1 44195}#
- (append #{s1 44195}# #{m2 44226}#))))))))
- (#{module 44186}# (vector-ref #{x 44152}# 3)))
- (vector
- 'syntax-object
- #{expression 44184}#
- #{wrap 44185}#
- #{module 44186}#))
- (if (null? #{x 44152}#)
- #{x 44152}#
- (vector
- 'syntax-object
- #{x 44152}#
- #{w 44146}#
- #{defmod 44148}#)))))))
- (#{expand-sequence 28266}#
- (lambda (#{body 59670}#
- #{r 59671}#
- #{w 59672}#
- #{s 59673}#
- #{mod 59674}#)
- (#{build-sequence 28220}#
- #{s 59673}#
+ (symbol? (vector-ref x-20805 1))
+ #f)))
+ (all-ids?-20597 (cdr ids-20794))
+ #f)))))
+ (all-ids?-20597 ids-20596))
+ (distinct-bound-ids?-4577 ids-20596)
+ #f)))
+ (distinct-bound-ids?-4577
+ (lambda (ids-20926)
(letrec*
- ((#{dobody 59762}#
- (lambda (#{body 59845}#
- #{r 59846}#
- #{w 59847}#
- #{mod 59848}#)
- (if (null? #{body 59845}#)
- '()
- (let ((#{first 59849}#
- (#{expand 28271}#
- (car #{body 59845}#)
- #{r 59846}#
- #{w 59847}#
- #{mod 59848}#)))
- (cons #{first 59849}#
- (#{dobody 59762}#
- (cdr #{body 59845}#)
- #{r 59846}#
- #{w 59847}#
- #{mod 59848}#)))))))
- (#{dobody 59762}#
- #{body 59670}#
- #{r 59671}#
- #{w 59672}#
- #{mod 59674}#)))))
- (#{expand-top-sequence 28267}#
- (lambda (#{body 44255}#
- #{r 44256}#
- #{w 44257}#
- #{s 44258}#
- #{m 44259}#
- #{esew 44260}#
- #{mod 44261}#)
- (let ((#{r 44262}#
- (cons '("placeholder" placeholder) #{r 44256}#)))
- (let ((#{ribcage 44263}# (vector 'ribcage '() '() '())))
- (let ((#{w 44264}#
- (cons (car #{w 44257}#)
- (cons #{ribcage 44263}# (cdr #{w 44257}#)))))
- (letrec*
- ((#{record-definition! 44265}#
- (lambda (#{id 47641}# #{var 47642}#)
- (let ((#{mod 47643}#
- (cons 'hygiene (module-name (current-module)))))
- (let ((#{label 47649}#
- (cons (vector-ref #{id 47641}# 3)
- (if (if (vector? #{var 47642}#)
- (if (= (vector-length #{var 47642}#)
- 4)
- (eq? (vector-ref #{var 47642}# 0)
- 'syntax-object)
+ ((distinct?-20927
+ (lambda (ids-21032)
+ (if (null? ids-21032)
+ (null? ids-21032)
+ (if (not (bound-id-member?-4578
+ (car ids-21032)
+ (cdr ids-21032)))
+ (distinct?-20927 (cdr ids-21032))
+ #f)))))
+ (distinct?-20927 ids-20926))))
+ (bound-id-member?-4578
+ (lambda (x-21128 list-21129)
+ (if (not (null? list-21129))
+ (let ((t-21130
+ (bound-id=?-4575 x-21128 (car list-21129))))
+ (if t-21130
+ t-21130
+ (bound-id-member?-4578 x-21128 (cdr list-21129))))
+ #f)))
+ (source-wrap-4580
+ (lambda (x-21308 w-21309 s-21310 defmod-21311)
+ (let ((x-21315
+ (begin
+ (if (if (pair? x-21308) s-21310 #f)
+ (set-source-properties! x-21308 s-21310))
+ x-21308)))
+ (if (if (null? (car w-21309))
+ (null? (cdr w-21309))
+ #f)
+ x-21315
+ (if (if (vector? x-21315)
+ (if (= (vector-length x-21315) 4)
+ (eq? (vector-ref x-21315 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-21347 (vector-ref x-21315 1))
+ (wrap-21348
+ (let ((w2-21356 (vector-ref x-21315 2)))
+ (let ((m1-21357 (car w-21309))
+ (s1-21358 (cdr w-21309)))
+ (if (null? m1-21357)
+ (if (null? s1-21358)
+ w2-21356
+ (cons (car w2-21356)
+ (let ((m2-21373 (cdr w2-21356)))
+ (if (null? m2-21373)
+ s1-21358
+ (append s1-21358 m2-21373)))))
+ (cons (let ((m2-21381 (car w2-21356)))
+ (if (null? m2-21381)
+ m1-21357
+ (append m1-21357 m2-21381)))
+ (let ((m2-21389 (cdr w2-21356)))
+ (if (null? m2-21389)
+ s1-21358
+ (append s1-21358 m2-21389))))))))
+ (module-21349 (vector-ref x-21315 3)))
+ (vector
+ 'syntax-object
+ expression-21347
+ wrap-21348
+ module-21349))
+ (if (null? x-21315)
+ x-21315
+ (vector
+ 'syntax-object
+ x-21315
+ w-21309
+ defmod-21311)))))))
+ (expand-sequence-4581
+ (lambda (body-36926 r-36927 w-36928 s-36929 mod-36930)
+ (build-sequence-4532
+ s-36929
+ (letrec*
+ ((dobody-37018
+ (lambda (body-37101 r-37102 w-37103 mod-37104)
+ (if (null? body-37101)
+ '()
+ (let ((first-37105
+ (expand-4586
+ (car body-37101)
+ r-37102
+ w-37103
+ mod-37104)))
+ (cons first-37105
+ (dobody-37018
+ (cdr body-37101)
+ r-37102
+ w-37103
+ mod-37104)))))))
+ (dobody-37018
+ body-36926
+ r-36927
+ w-36928
+ mod-36930)))))
+ (expand-top-sequence-4582
+ (lambda (body-21418
+ r-21419
+ w-21420
+ s-21421
+ m-21422
+ esew-21423
+ mod-21424)
+ (let ((r-21425
+ (cons '("placeholder" placeholder) r-21419)))
+ (let ((ribcage-21426 (vector 'ribcage '() '() '())))
+ (let ((w-21427
+ (cons (car w-21420)
+ (cons ribcage-21426 (cdr w-21420)))))
+ (letrec*
+ ((record-definition!-21428
+ (lambda (id-24805 var-24806)
+ (let ((mod-24807
+ (cons 'hygiene (module-name (current-module)))))
+ (let ((label-24813
+ (cons (vector-ref id-24805 3)
+ (if (if (vector? var-24806)
+ (if (= (vector-length var-24806) 4)
+ (eq? (vector-ref var-24806 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (let ((#{expression 47711}#
- (vector-ref #{var 47642}# 1))
- (#{wrap 47712}#
- (let ((#{w2 47722}#
- (vector-ref
- #{var 47642}#
- 2)))
- (cons (let ((#{m2 47729}#
- (car #{w2 47722}#)))
- (if (null? #{m2 47729}#)
- '(top)
- (append
+ (let ((expression-24875
+ (vector-ref var-24806 1))
+ (wrap-24876
+ (let ((w2-24886
+ (vector-ref
+ var-24806
+ 2)))
+ (cons (let ((m2-24893
+ (car w2-24886)))
+ (if (null? m2-24893)
'(top)
- #{m2 47729}#)))
- (let ((#{m2 47738}#
- (cdr #{w2 47722}#)))
- (if (null? #{m2 47738}#)
- '()
- (append
+ (append
+ '(top)
+ m2-24893)))
+ (let ((m2-24902
+ (cdr w2-24886)))
+ (if (null? m2-24902)
'()
- #{m2 47738}#))))))
- (#{module 47713}#
- (vector-ref #{var 47642}# 3)))
- (vector
- 'syntax-object
- #{expression 47711}#
- #{wrap 47712}#
- #{module 47713}#))
- (if (null? #{var 47642}#)
- #{var 47642}#
- (vector
- 'syntax-object
- #{var 47642}#
- '((top))
- #{mod 47643}#))))))
- (begin
- (let ((#{update 47652}#
- (cons (vector-ref #{id 47641}# 1)
- (vector-ref #{ribcage 44263}# 1))))
- (vector-set!
- #{ribcage 44263}#
- 1
- #{update 47652}#))
- (let ((#{update 47667}#
- (cons (car (vector-ref #{id 47641}# 2))
- (vector-ref #{ribcage 44263}# 2))))
- (vector-set!
- #{ribcage 44263}#
- 2
- #{update 47667}#))
- (let ((#{update 47682}#
- (cons #{label 47649}#
- (vector-ref #{ribcage 44263}# 3))))
- (vector-set!
- #{ribcage 44263}#
- 3
- #{update 47682}#)))))))
- (#{parse 44268}#
- (lambda (#{body 44463}#
- #{r 44464}#
- #{w 44465}#
- #{s 44466}#
- #{m 44467}#
- #{esew 44468}#
- #{mod 44469}#)
- (letrec*
- ((#{lp 44470}#
- (lambda (#{body 44553}# #{exps 44554}#)
- (if (null? #{body 44553}#)
- #{exps 44554}#
- (#{lp 44470}#
- (cdr #{body 44553}#)
- (append
- (#{parse1 44269}#
- (car #{body 44553}#)
- #{r 44464}#
- #{w 44465}#
- #{s 44466}#
- #{m 44467}#
- #{esew 44468}#
- #{mod 44469}#)
- #{exps 44554}#))))))
- (#{lp 44470}# #{body 44463}# '()))))
- (#{parse1 44269}#
- (lambda (#{x 44624}#
- #{r 44625}#
- #{w 44626}#
- #{s 44627}#
- #{m 44628}#
- #{esew 44629}#
- #{mod 44630}#)
- (call-with-values
- (lambda ()
- (#{syntax-type 28270}#
- #{x 44624}#
- #{r 44625}#
- #{w 44626}#
- (#{source-annotation 28232}# #{x 44624}#)
- #{ribcage 44263}#
- #{mod 44630}#
- #f))
- (lambda (#{type 44816}#
- #{value 44817}#
- #{e 44818}#
- #{w 44819}#
- #{s 44820}#
- #{mod 44821}#)
- (if (eqv? #{type 44816}# 'define-form)
- (let ((#{id 44825}#
- (if (if (null? (car #{w 44819}#))
- (null? (cdr #{w 44819}#))
- #f)
- #{value 44817}#
- (if (if (vector? #{value 44817}#)
- (if (= (vector-length
- #{value 44817}#)
- 4)
- (eq? (vector-ref #{value 44817}# 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 44875}#
- (vector-ref #{value 44817}# 1))
- (#{wrap 44876}#
- (let ((#{w2 44886}#
- (vector-ref
- #{value 44817}#
- 2)))
- (let ((#{m1 44887}#
- (car #{w 44819}#))
- (#{s1 44888}#
- (cdr #{w 44819}#)))
- (if (null? #{m1 44887}#)
- (if (null? #{s1 44888}#)
- #{w2 44886}#
- (cons (car #{w2 44886}#)
- (let ((#{m2 44905}#
- (cdr #{w2 44886}#)))
- (if (null? #{m2 44905}#)
- #{s1 44888}#
- (append
- #{s1 44888}#
- #{m2 44905}#)))))
- (cons (let ((#{m2 44913}#
- (car #{w2 44886}#)))
- (if (null? #{m2 44913}#)
- #{m1 44887}#
- (append
- #{m1 44887}#
- #{m2 44913}#)))
- (let ((#{m2 44921}#
- (cdr #{w2 44886}#)))
- (if (null? #{m2 44921}#)
- #{s1 44888}#
- (append
- #{s1 44888}#
- #{m2 44921}#))))))))
- (#{module 44877}#
- (vector-ref #{value 44817}# 3)))
- (vector
- 'syntax-object
- #{expression 44875}#
- #{wrap 44876}#
- #{module 44877}#))
- (if (null? #{value 44817}#)
- #{value 44817}#
- (vector
- 'syntax-object
- #{value 44817}#
- #{w 44819}#
- #{mod 44821}#))))))
- (begin
- (symbol->string (gensym "i"))
- (let ((#{var 44827}#
- (if (not (equal?
- (car (vector-ref
- #{id 44825}#
- 2))
- '(top)))
- (symbol-append
- (vector-ref #{id 44825}# 1)
- '-
- (string->symbol
- (number->string
- (hash (syntax->datum #{x 44624}#)
- most-positive-fixnum)
- 16)))
- (vector-ref #{id 44825}# 1))))
- (begin
- (#{record-definition! 44265}#
- #{id 44825}#
- #{var 44827}#)
- (list (if (eq? #{m 44628}# 'c&e)
- (let ((#{x 45047}#
- (#{build-global-definition 28213}#
- #{s 44820}#
- #{var 44827}#
- (#{expand 28271}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{mod 44821}#))))
- (begin
- (#{top-level-eval-hook 28198}#
- #{x 45047}#
- #{mod 44821}#)
- (lambda () #{x 45047}#)))
- (lambda ()
- (#{build-global-definition 28213}#
- #{s 44820}#
- #{var 44827}#
- (#{expand 28271}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{mod 44821}#)))))))))
- (if (if (eqv? #{type 44816}# 'define-syntax-form)
- #t
- (eqv? #{type 44816}#
- 'define-syntax-parameter-form))
- (let ((#{id 45541}#
- (if (if (null? (car #{w 44819}#))
- (null? (cdr #{w 44819}#))
+ (append
+ '()
+ m2-24902))))))
+ (module-24877
+ (vector-ref var-24806 3)))
+ (vector
+ 'syntax-object
+ expression-24875
+ wrap-24876
+ module-24877))
+ (if (null? var-24806)
+ var-24806
+ (vector
+ 'syntax-object
+ var-24806
+ '((top))
+ mod-24807))))))
+ (begin
+ (let ((update-24816
+ (cons (vector-ref id-24805 1)
+ (vector-ref ribcage-21426 1))))
+ (vector-set! ribcage-21426 1 update-24816))
+ (let ((update-24831
+ (cons (car (vector-ref id-24805 2))
+ (vector-ref ribcage-21426 2))))
+ (vector-set! ribcage-21426 2 update-24831))
+ (let ((update-24846
+ (cons label-24813
+ (vector-ref ribcage-21426 3))))
+ (vector-set! ribcage-21426 3 update-24846)))))))
+ (parse-21431
+ (lambda (body-21626
+ r-21627
+ w-21628
+ s-21629
+ m-21630
+ esew-21631
+ mod-21632)
+ (letrec*
+ ((lp-21633
+ (lambda (body-21716 exps-21717)
+ (if (null? body-21716)
+ exps-21717
+ (lp-21633
+ (cdr body-21716)
+ (append
+ (parse1-21432
+ (car body-21716)
+ r-21627
+ w-21628
+ s-21629
+ m-21630
+ esew-21631
+ mod-21632)
+ exps-21717))))))
+ (lp-21633 body-21626 '()))))
+ (parse1-21432
+ (lambda (x-21787
+ r-21788
+ w-21789
+ s-21790
+ m-21791
+ esew-21792
+ mod-21793)
+ (call-with-values
+ (lambda ()
+ (syntax-type-4585
+ x-21787
+ r-21788
+ w-21789
+ (source-annotation-4544 x-21787)
+ ribcage-21426
+ mod-21793
+ #f))
+ (lambda (type-21979
+ value-21980
+ form-21981
+ e-21982
+ w-21983
+ s-21984
+ mod-21985)
+ (if (eqv? type-21979 'define-form)
+ (let ((id-21989
+ (if (if (null? (car w-21983))
+ (null? (cdr w-21983))
#f)
- #{value 44817}#
- (if (if (vector? #{value 44817}#)
- (if (= (vector-length
- #{value 44817}#)
+ value-21980
+ (if (if (vector? value-21980)
+ (if (= (vector-length value-21980)
4)
- (eq? (vector-ref
- #{value 44817}#
- 0)
+ (eq? (vector-ref value-21980 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 45591}#
- (vector-ref #{value 44817}# 1))
- (#{wrap 45592}#
- (let ((#{w2 45602}#
+ (let ((expression-22039
+ (vector-ref value-21980 1))
+ (wrap-22040
+ (let ((w2-22050
(vector-ref
- #{value 44817}#
+ value-21980
2)))
- (let ((#{m1 45603}#
- (car #{w 44819}#))
- (#{s1 45604}#
- (cdr #{w 44819}#)))
- (if (null? #{m1 45603}#)
- (if (null? #{s1 45604}#)
- #{w2 45602}#
- (cons (car #{w2 45602}#)
- (let ((#{m2 45621}#
- (cdr #{w2 45602}#)))
- (if (null? #{m2 45621}#)
- #{s1 45604}#
+ (let ((m1-22051
+ (car w-21983))
+ (s1-22052
+ (cdr w-21983)))
+ (if (null? m1-22051)
+ (if (null? s1-22052)
+ w2-22050
+ (cons (car w2-22050)
+ (let ((m2-22069
+ (cdr w2-22050)))
+ (if (null? m2-22069)
+ s1-22052
(append
- #{s1 45604}#
- #{m2 45621}#)))))
- (cons (let ((#{m2 45629}#
- (car #{w2 45602}#)))
- (if (null? #{m2 45629}#)
- #{m1 45603}#
+ s1-22052
+ m2-22069)))))
+ (cons (let ((m2-22077
+ (car w2-22050)))
+ (if (null? m2-22077)
+ m1-22051
(append
- #{m1 45603}#
- #{m2 45629}#)))
- (let ((#{m2 45637}#
- (cdr #{w2 45602}#)))
- (if (null? #{m2 45637}#)
- #{s1 45604}#
+ m1-22051
+ m2-22077)))
+ (let ((m2-22085
+ (cdr w2-22050)))
+ (if (null? m2-22085)
+ s1-22052
(append
- #{s1 45604}#
- #{m2 45637}#))))))))
- (#{module 45593}#
- (vector-ref
- #{value 44817}#
- 3)))
+ s1-22052
+ m2-22085))))))))
+ (module-22041
+ (vector-ref value-21980 3)))
(vector
'syntax-object
- #{expression 45591}#
- #{wrap 45592}#
- #{module 45593}#))
- (if (null? #{value 44817}#)
- #{value 44817}#
+ expression-22039
+ wrap-22040
+ module-22041))
+ (if (null? value-21980)
+ value-21980
(vector
'syntax-object
- #{value 44817}#
- #{w 44819}#
- #{mod 44821}#))))))
+ value-21980
+ w-21983
+ mod-21985))))))
(begin
- (symbol->string (gensym "i"))
- (let ((#{var 45543}#
+ (string-append
+ "l-"
+ (session-id-4511)
+ (symbol->string (gensym "-")))
+ (let ((var-21991
(if (not (equal?
(car (vector-ref
- #{id 45541}#
+ id-21989
2))
'(top)))
(symbol-append
- (vector-ref #{id 45541}# 1)
+ (vector-ref id-21989 1)
'-
(string->symbol
(number->string
- (hash (syntax->datum
- #{x 44624}#)
+ (hash (syntax->datum x-21787)
most-positive-fixnum)
16)))
- (vector-ref #{id 45541}# 1))))
+ (vector-ref id-21989 1))))
(begin
- (#{record-definition! 44265}#
- #{id 45541}#
- #{var 45543}#)
- (if (eqv? #{m 44628}# 'c)
- (if (memq 'compile #{esew 44629}#)
- (let ((#{e 45766}#
- (#{expand-install-global 28268}#
- #{var 45543}#
- #{type 44816}#
- (#{expand 28271}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{mod 44821}#))))
- (begin
- (#{top-level-eval-hook 28198}#
- #{e 45766}#
- #{mod 44821}#)
- (if (memq 'load #{esew 44629}#)
- (list (lambda () #{e 45766}#))
- '())))
- (if (memq 'load #{esew 44629}#)
- (list (lambda ()
- (#{expand-install-global 28268}#
- #{var 45543}#
- #{type 44816}#
- (#{expand 28271}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{mod 44821}#))))
- '()))
- (if (eqv? #{m 44628}# 'c&e)
- (let ((#{e 46269}#
- (#{expand-install-global 28268}#
- #{var 45543}#
- #{type 44816}#
- (#{expand 28271}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{mod 44821}#))))
+ (record-definition!-21428
+ id-21989
+ var-21991)
+ (list (if (eq? m-21791 'c&e)
+ (let ((x-22211
+ (build-global-definition-4525
+ s-21984
+ var-21991
+ (expand-4586
+ e-21982
+ r-21788
+ w-21983
+ mod-21985))))
+ (begin
+ (top-level-eval-hook-4509
+ x-22211
+ mod-21985)
+ (lambda () x-22211)))
+ (lambda ()
+ (build-global-definition-4525
+ s-21984
+ var-21991
+ (expand-4586
+ e-21982
+ r-21788
+ w-21983
+ mod-21985)))))))))
+ (if (if (eqv? type-21979 'define-syntax-form)
+ #t
+ (eqv? type-21979
+ 'define-syntax-parameter-form))
+ (let ((id-22705
+ (if (if (null? (car w-21983))
+ (null? (cdr w-21983))
+ #f)
+ value-21980
+ (if (if (vector? value-21980)
+ (if (= (vector-length
+ value-21980)
+ 4)
+ (eq? (vector-ref value-21980 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-22755
+ (vector-ref value-21980 1))
+ (wrap-22756
+ (let ((w2-22766
+ (vector-ref
+ value-21980
+ 2)))
+ (let ((m1-22767
+ (car w-21983))
+ (s1-22768
+ (cdr w-21983)))
+ (if (null? m1-22767)
+ (if (null? s1-22768)
+ w2-22766
+ (cons (car w2-22766)
+ (let ((m2-22785
+ (cdr w2-22766)))
+ (if (null? m2-22785)
+ s1-22768
+ (append
+ s1-22768
+ m2-22785)))))
+ (cons (let ((m2-22793
+ (car w2-22766)))
+ (if (null? m2-22793)
+ m1-22767
+ (append
+ m1-22767
+ m2-22793)))
+ (let ((m2-22801
+ (cdr w2-22766)))
+ (if (null? m2-22801)
+ s1-22768
+ (append
+ s1-22768
+ m2-22801))))))))
+ (module-22757
+ (vector-ref value-21980 3)))
+ (vector
+ 'syntax-object
+ expression-22755
+ wrap-22756
+ module-22757))
+ (if (null? value-21980)
+ value-21980
+ (vector
+ 'syntax-object
+ value-21980
+ w-21983
+ mod-21985))))))
+ (begin
+ (string-append
+ "l-"
+ (session-id-4511)
+ (symbol->string (gensym "-")))
+ (let ((var-22707
+ (if (not (equal?
+ (car (vector-ref
+ id-22705
+ 2))
+ '(top)))
+ (symbol-append
+ (vector-ref id-22705 1)
+ '-
+ (string->symbol
+ (number->string
+ (hash (syntax->datum x-21787)
+ most-positive-fixnum)
+ 16)))
+ (vector-ref id-22705 1))))
+ (begin
+ (record-definition!-21428
+ id-22705
+ var-22707)
+ (if (eqv? m-21791 'c)
+ (if (memq 'compile esew-21792)
+ (let ((e-22930
+ (expand-install-global-4583
+ var-22707
+ type-21979
+ (expand-4586
+ e-21982
+ r-21788
+ w-21983
+ mod-21985))))
+ (begin
+ (top-level-eval-hook-4509
+ e-22930
+ mod-21985)
+ (if (memq 'load esew-21792)
+ (list (lambda () e-22930))
+ '())))
+ (if (memq 'load esew-21792)
+ (list (lambda ()
+ (expand-install-global-4583
+ var-22707
+ type-21979
+ (expand-4586
+ e-21982
+ r-21788
+ w-21983
+ mod-21985))))
+ '()))
+ (if (eqv? m-21791 'c&e)
+ (let ((e-23433
+ (expand-install-global-4583
+ var-22707
+ type-21979
+ (expand-4586
+ e-21982
+ r-21788
+ w-21983
+ mod-21985))))
+ (begin
+ (top-level-eval-hook-4509
+ e-23433
+ mod-21985)
+ (list (lambda () e-23433))))
(begin
- (#{top-level-eval-hook 28198}#
- #{e 46269}#
- #{mod 44821}#)
- (list (lambda () #{e 46269}#))))
- (begin
- (if (memq 'eval #{esew 44629}#)
- (#{top-level-eval-hook 28198}#
- (#{expand-install-global 28268}#
- #{var 45543}#
- #{type 44816}#
- (#{expand 28271}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{mod 44821}#))
- #{mod 44821}#))
- '())))))))
- (if (eqv? #{type 44816}# 'begin-form)
- (let ((#{tmp 46879}#
- ($sc-dispatch
- #{e 44818}#
- '(_ . each-any))))
- (if #{tmp 46879}#
- (@apply
- (lambda (#{e1 46883}#)
- (#{parse 44268}#
- #{e1 46883}#
- #{r 44625}#
- #{w 44819}#
- #{s 44820}#
- #{m 44628}#
- #{esew 44629}#
- #{mod 44821}#))
- #{tmp 46879}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 44818}#)))
- (if (eqv? #{type 44816}# 'local-syntax-form)
- (#{expand-local-syntax 28276}#
- #{value 44817}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{s 44820}#
- #{mod 44821}#
- (lambda (#{forms 46926}#
- #{r 46927}#
- #{w 46928}#
- #{s 46929}#
- #{mod 46930}#)
- (#{parse 44268}#
- #{forms 46926}#
- #{r 46927}#
- #{w 46928}#
- #{s 46929}#
- #{m 44628}#
- #{esew 44629}#
- #{mod 46930}#)))
- (if (eqv? #{type 44816}# 'eval-when-form)
- (let ((#{tmp 46966}#
- ($sc-dispatch
- #{e 44818}#
- '(_ each-any any . each-any))))
- (if #{tmp 46966}#
- (@apply
- (lambda (#{x 46970}#
- #{e1 46971}#
- #{e2 46972}#)
- (let ((#{when-list 46973}#
- (#{parse-when-list 28269}#
- #{e 44818}#
- #{x 46970}#))
- (#{body 46974}#
- (cons #{e1 46971}#
- #{e2 46972}#)))
- (letrec*
- ((#{recurse 46975}#
- (lambda (#{m 47561}#
- #{esew 47562}#)
- (#{parse 44268}#
- #{body 46974}#
- #{r 44625}#
- #{w 44819}#
- #{s 44820}#
- #{m 47561}#
- #{esew 47562}#
- #{mod 44821}#))))
- (if (eq? #{m 44628}# 'e)
- (if (memq 'eval
- #{when-list 46973}#)
- (#{recurse 46975}#
- (if (memq 'expand
- #{when-list 46973}#)
- 'c&e
- 'e)
- '(eval))
- (begin
- (if (memq 'expand
- #{when-list 46973}#)
- (let ((#{x 47082}#
- (#{expand-top-sequence 28267}#
- #{body 46974}#
- #{r 44625}#
- #{w 44819}#
- #{s 44820}#
- 'e
- '(eval)
- #{mod 44821}#)))
- (primitive-eval
- #{x 47082}#)))
- '()))
- (if (memq 'load
- #{when-list 46973}#)
- (if (let ((#{t 47110}#
- (memq 'compile
- #{when-list 46973}#)))
- (if #{t 47110}#
- #{t 47110}#
- (let ((#{t 47163}#
- (memq 'expand
- #{when-list 46973}#)))
- (if #{t 47163}#
- #{t 47163}#
- (if (eq? #{m 44628}#
- 'c&e)
- (memq 'eval
- #{when-list 46973}#)
- #f)))))
- (#{recurse 46975}#
- 'c&e
- '(compile load))
- (if (if (eq? #{m 44628}#
- 'c)
- #t
- (eq? #{m 44628}#
- 'c&e))
- (#{recurse 46975}#
- 'c
- '(load))
- '()))
- (if (let ((#{t 47372}#
- (memq 'compile
- #{when-list 46973}#)))
- (if #{t 47372}#
- #{t 47372}#
- (let ((#{t 47425}#
- (memq 'expand
- #{when-list 46973}#)))
- (if #{t 47425}#
- #{t 47425}#
- (if (eq? #{m 44628}#
- 'c&e)
- (memq 'eval
- #{when-list 46973}#)
- #f)))))
+ (if (memq 'eval esew-21792)
+ (top-level-eval-hook-4509
+ (expand-install-global-4583
+ var-22707
+ type-21979
+ (expand-4586
+ e-21982
+ r-21788
+ w-21983
+ mod-21985))
+ mod-21985))
+ '())))))))
+ (if (eqv? type-21979 'begin-form)
+ (let ((tmp-24043
+ ($sc-dispatch
+ e-21982
+ '(_ . each-any))))
+ (if tmp-24043
+ (@apply
+ (lambda (e1-24047)
+ (parse-21431
+ e1-24047
+ r-21788
+ w-21983
+ s-21984
+ m-21791
+ esew-21792
+ mod-21985))
+ tmp-24043)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-21982)))
+ (if (eqv? type-21979 'local-syntax-form)
+ (expand-local-syntax-4591
+ value-21980
+ e-21982
+ r-21788
+ w-21983
+ s-21984
+ mod-21985
+ (lambda (forms-24090
+ r-24091
+ w-24092
+ s-24093
+ mod-24094)
+ (parse-21431
+ forms-24090
+ r-24091
+ w-24092
+ s-24093
+ m-21791
+ esew-21792
+ mod-24094)))
+ (if (eqv? type-21979 'eval-when-form)
+ (let ((tmp-24130
+ ($sc-dispatch
+ e-21982
+ '(_ each-any any . each-any))))
+ (if tmp-24130
+ (@apply
+ (lambda (x-24134 e1-24135 e2-24136)
+ (let ((when-list-24137
+ (parse-when-list-4584
+ e-21982
+ x-24134))
+ (body-24138
+ (cons e1-24135 e2-24136)))
+ (letrec*
+ ((recurse-24139
+ (lambda (m-24725 esew-24726)
+ (parse-21431
+ body-24138
+ r-21788
+ w-21983
+ s-21984
+ m-24725
+ esew-24726
+ mod-21985))))
+ (if (eq? m-21791 'e)
+ (if (memq 'eval
+ when-list-24137)
+ (recurse-24139
+ (if (memq 'expand
+ when-list-24137)
+ 'c&e
+ 'e)
+ '(eval))
(begin
- (let ((#{x 47559}#
- (#{expand-top-sequence 28267}#
- #{body 46974}#
- #{r 44625}#
- #{w 44819}#
- #{s 44820}#
- 'e
- '(eval)
- #{mod 44821}#)))
- (primitive-eval
- #{x 47559}#))
- '())
- '()))))))
- #{tmp 46966}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 44818}#)))
- (list (if (eq? #{m 44628}# 'c&e)
- (let ((#{x 47632}#
- (#{expand-expr 28272}#
- #{type 44816}#
- #{value 44817}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{s 44820}#
- #{mod 44821}#)))
- (begin
- (primitive-eval #{x 47632}#)
- (lambda () #{x 47632}#)))
- (lambda ()
- (#{expand-expr 28272}#
- #{type 44816}#
- #{value 44817}#
- #{e 44818}#
- #{r 44625}#
- #{w 44819}#
- #{s 44820}#
- #{mod 44821}#))))))))))))))
- (let ((#{exps 44270}#
- (map (lambda (#{x 44393}#) (#{x 44393}#))
- (reverse
- (#{parse 44268}#
- #{body 44255}#
- #{r 44262}#
- #{w 44264}#
- #{s 44258}#
- #{m 44259}#
- #{esew 44260}#
- #{mod 44261}#)))))
- (if (null? #{exps 44270}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 0)
- #{s 44258}#)
- (#{build-sequence 28220}#
- #{s 44258}#
- #{exps 44270}#)))))))))
- (#{expand-install-global 28268}#
- (lambda (#{name 47760}# #{type 47761}# #{e 47762}#)
- (let ((#{exp 47768}#
- (let ((#{args 47779}#
- (if (eq? #{type 47761}#
- 'define-syntax-parameter-form)
- (list (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #f
- #{name 47760}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #f
- 'syntax-parameter)
- (let ((#{args 47802}# (list #{e 47762}#)))
+ (if (memq 'expand
+ when-list-24137)
+ (let ((x-24246
+ (expand-top-sequence-4582
+ body-24138
+ r-21788
+ w-21983
+ s-21984
+ 'e
+ '(eval)
+ mod-21985)))
+ (primitive-eval
+ x-24246)))
+ '()))
+ (if (memq 'load
+ when-list-24137)
+ (if (let ((t-24274
+ (memq 'compile
+ when-list-24137)))
+ (if t-24274
+ t-24274
+ (let ((t-24327
+ (memq 'expand
+ when-list-24137)))
+ (if t-24327
+ t-24327
+ (if (eq? m-21791
+ 'c&e)
+ (memq 'eval
+ when-list-24137)
+ #f)))))
+ (recurse-24139
+ 'c&e
+ '(compile load))
+ (if (if (eq? m-21791 'c)
+ #t
+ (eq? m-21791 'c&e))
+ (recurse-24139
+ 'c
+ '(load))
+ '()))
+ (if (let ((t-24536
+ (memq 'compile
+ when-list-24137)))
+ (if t-24536
+ t-24536
+ (let ((t-24589
+ (memq 'expand
+ when-list-24137)))
+ (if t-24589
+ t-24589
+ (if (eq? m-21791
+ 'c&e)
+ (memq 'eval
+ when-list-24137)
+ #f)))))
+ (begin
+ (let ((x-24723
+ (expand-top-sequence-4582
+ body-24138
+ r-21788
+ w-21983
+ s-21984
+ 'e
+ '(eval)
+ mod-21985)))
+ (primitive-eval
+ x-24723))
+ '())
+ '()))))))
+ tmp-24130)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-21982)))
+ (list (if (eq? m-21791 'c&e)
+ (let ((x-24796
+ (expand-expr-4587
+ type-21979
+ value-21980
+ form-21981
+ e-21982
+ r-21788
+ w-21983
+ s-21984
+ mod-21985)))
+ (begin
+ (primitive-eval x-24796)
+ (lambda () x-24796)))
+ (lambda ()
+ (expand-expr-4587
+ type-21979
+ value-21980
+ form-21981
+ e-21982
+ r-21788
+ w-21983
+ s-21984
+ mod-21985))))))))))))))
+ (let ((exps-21433
+ (map (lambda (x-21556) (x-21556))
+ (reverse
+ (parse-21431
+ body-21418
+ r-21425
+ w-21427
+ s-21421
+ m-21422
+ esew-21423
+ mod-21424)))))
+ (if (null? exps-21433)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 0)
+ s-21421)
+ (build-sequence-4532 s-21421 exps-21433)))))))))
+ (expand-install-global-4583
+ (lambda (name-24924 type-24925 e-24926)
+ (let ((exp-24932
+ (let ((args-24943
+ (if (eq? type-24925 'define-syntax-parameter-form)
+ (list (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ #f
+ name-24924)
(make-struct/no-tail
- (vector-ref %expanded-vtables 12)
+ (vector-ref %expanded-vtables 1)
#f
- 'list
- #{args 47802}#)))
- (list (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #f
- #{name 47760}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #f
- 'macro)
- #{e 47762}#))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 12)
- #f
- 'make-syntax-transformer
- #{args 47779}#))))
- (begin
- (if (if (struct? #{exp 47768}#)
- (eq? (struct-vtable #{exp 47768}#)
- (vector-ref %expanded-vtables 14))
- #f)
- (let ((#{meta 47829}# (struct-ref #{exp 47768}# 1)))
- (if (not (assq 'name #{meta 47829}#))
- (let ((#{v 47836}#
- (cons (cons 'name #{name 47760}#) #{meta 47829}#)))
- (struct-set! #{exp 47768}# 1 #{v 47836}#)))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 9)
- #f
- #{name 47760}#
- #{exp 47768}#)))))
- (#{parse-when-list 28269}#
- (lambda (#{e 47847}# #{when-list 47848}#)
- (let ((#{result 47849}#
- (#{strip 28284}# #{when-list 47848}# '(()))))
- (letrec*
- ((#{lp 47850}#
- (lambda (#{l 47916}#)
- (if (null? #{l 47916}#)
- #{result 47849}#
- (if (let ((#{t 47918}# (car #{l 47916}#)))
- (if (eq? #{t 47918}# 'compile)
- #t
- (if (eq? #{t 47918}# 'load)
+ 'syntax-parameter)
+ (let ((args-24966 (list e-24926)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #f
+ 'list
+ args-24966)))
+ (list (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ #f
+ name-24924)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ #f
+ 'macro)
+ e-24926))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #f
+ 'make-syntax-transformer
+ args-24943))))
+ (begin
+ (if (if (struct? exp-24932)
+ (eq? (struct-vtable exp-24932)
+ (vector-ref %expanded-vtables 14))
+ #f)
+ (let ((meta-24993 (struct-ref exp-24932 1)))
+ (if (not (assq 'name meta-24993))
+ (let ((v-25000
+ (cons (cons 'name name-24924) meta-24993)))
+ (struct-set! exp-24932 1 v-25000)))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 9)
+ #f
+ name-24924
+ exp-24932)))))
+ (parse-when-list-4584
+ (lambda (e-25011 when-list-25012)
+ (let ((result-25013 (strip-4599 when-list-25012 '(()))))
+ (letrec*
+ ((lp-25014
+ (lambda (l-25080)
+ (if (null? l-25080)
+ result-25013
+ (if (let ((t-25082 (car l-25080)))
+ (if (eq? t-25082 'compile)
#t
- (if (eq? #{t 47918}# 'eval)
+ (if (eq? t-25082 'load)
#t
- (eq? #{t 47918}# 'expand)))))
- (#{lp 47850}# (cdr #{l 47916}#))
- (syntax-violation
- 'eval-when
- "invalid situation"
- #{e 47847}#
- (car #{l 47916}#)))))))
- (#{lp 47850}# #{result 47849}#)))))
- (#{syntax-type 28270}#
- (lambda (#{e 47920}#
- #{r 47921}#
- #{w 47922}#
- #{s 47923}#
- #{rib 47924}#
- #{mod 47925}#
- #{for-car? 47926}#)
- (if (symbol? #{e 47920}#)
- (call-with-values
- (lambda ()
- (#{resolve-identifier 28258}#
- #{e 47920}#
- #{w 47922}#
- #{r 47921}#
- #{mod 47925}#
- #t))
- (lambda (#{type 47929}# #{value 47930}# #{mod* 47931}#)
- (if (eqv? #{type 47929}# 'macro)
- (if #{for-car? 47926}#
- (values
- #{type 47929}#
- #{value 47930}#
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (#{syntax-type 28270}#
- (#{expand-macro 28274}#
- #{value 47930}#
- #{e 47920}#
- #{r 47921}#
- #{w 47922}#
- #{s 47923}#
- #{rib 47924}#
- #{mod 47925}#)
- #{r 47921}#
- '(())
- #{s 47923}#
- #{rib 47924}#
- #{mod 47925}#
- #f))
- (if (eqv? #{type 47929}# 'global)
- (values
- #{type 47929}#
- #{value 47930}#
- #{value 47930}#
- #{w 47922}#
- #{s 47923}#
- #{mod* 47931}#)
- (values
- #{type 47929}#
- #{value 47930}#
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)))))
- (if (pair? #{e 47920}#)
- (let ((#{first 47940}# (car #{e 47920}#)))
- (call-with-values
- (lambda ()
- (#{syntax-type 28270}#
- #{first 47940}#
- #{r 47921}#
- #{w 47922}#
- #{s 47923}#
- #{rib 47924}#
- #{mod 47925}#
- #t))
- (lambda (#{ftype 47942}#
- #{fval 47943}#
- #{fe 47944}#
- #{fw 47945}#
- #{fs 47946}#
- #{fmod 47947}#)
- (if (eqv? #{ftype 47942}# 'lexical)
+ (if (eq? t-25082 'eval)
+ #t
+ (eq? t-25082 'expand)))))
+ (lp-25014 (cdr l-25080))
+ (syntax-violation
+ 'eval-when
+ "invalid situation"
+ e-25011
+ (car l-25080)))))))
+ (lp-25014 result-25013)))))
+ (syntax-type-4585
+ (lambda (e-25084
+ r-25085
+ w-25086
+ s-25087
+ rib-25088
+ mod-25089
+ for-car?-25090)
+ (if (symbol? e-25084)
+ (call-with-values
+ (lambda ()
+ (resolve-identifier-4571
+ e-25084
+ w-25086
+ r-25085
+ mod-25089
+ #t))
+ (lambda (type-25093 value-25094 mod*-25095)
+ (if (eqv? type-25093 'macro)
+ (if for-car?-25090
+ (values
+ type-25093
+ value-25094
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (syntax-type-4585
+ (expand-macro-4589
+ value-25094
+ e-25084
+ r-25085
+ w-25086
+ s-25087
+ rib-25088
+ mod-25089)
+ r-25085
+ '(())
+ s-25087
+ rib-25088
+ mod-25089
+ #f))
+ (if (eqv? type-25093 'global)
(values
- 'lexical-call
- #{fval 47943}#
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (if (eqv? #{ftype 47942}# 'global)
+ type-25093
+ value-25094
+ e-25084
+ value-25094
+ w-25086
+ s-25087
+ mod*-25095)
+ (values
+ type-25093
+ value-25094
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)))))
+ (if (pair? e-25084)
+ (let ((first-25104 (car e-25084)))
+ (call-with-values
+ (lambda ()
+ (syntax-type-4585
+ first-25104
+ r-25085
+ w-25086
+ s-25087
+ rib-25088
+ mod-25089
+ #t))
+ (lambda (ftype-25106
+ fval-25107
+ fform-25108
+ fe-25109
+ fw-25110
+ fs-25111
+ fmod-25112)
+ (if (eqv? ftype-25106 'lexical)
(values
- 'global-call
- (vector
- 'syntax-object
- #{fval 47943}#
- #{w 47922}#
- #{fmod 47947}#)
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (if (eqv? #{ftype 47942}# 'macro)
- (#{syntax-type 28270}#
- (#{expand-macro 28274}#
- #{fval 47943}#
- #{e 47920}#
- #{r 47921}#
- #{w 47922}#
- #{s 47923}#
- #{rib 47924}#
- #{mod 47925}#)
- #{r 47921}#
- '(())
- #{s 47923}#
- #{rib 47924}#
- #{mod 47925}#
- #{for-car? 47926}#)
- (if (eqv? #{ftype 47942}# 'module-ref)
- (call-with-values
- (lambda ()
- (#{fval 47943}#
- #{e 47920}#
- #{r 47921}#
- #{w 47922}#))
- (lambda (#{e 47968}#
- #{r 47969}#
- #{w 47970}#
- #{s 47971}#
- #{mod 47972}#)
- (#{syntax-type 28270}#
- #{e 47968}#
- #{r 47969}#
- #{w 47970}#
- #{s 47971}#
- #{rib 47924}#
- #{mod 47972}#
- #{for-car? 47926}#)))
- (if (eqv? #{ftype 47942}# 'core)
- (values
- 'core-form
- #{fval 47943}#
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (if (eqv? #{ftype 47942}# 'local-syntax)
+ 'lexical-call
+ fval-25107
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (if (eqv? ftype-25106 'global)
+ (values
+ 'global-call
+ (vector
+ 'syntax-object
+ fval-25107
+ w-25086
+ fmod-25112)
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (if (eqv? ftype-25106 'macro)
+ (syntax-type-4585
+ (expand-macro-4589
+ fval-25107
+ e-25084
+ r-25085
+ w-25086
+ s-25087
+ rib-25088
+ mod-25089)
+ r-25085
+ '(())
+ s-25087
+ rib-25088
+ mod-25089
+ for-car?-25090)
+ (if (eqv? ftype-25106 'module-ref)
+ (call-with-values
+ (lambda () (fval-25107 e-25084 r-25085 w-25086))
+ (lambda (e-25133
+ r-25134
+ w-25135
+ s-25136
+ mod-25137)
+ (syntax-type-4585
+ e-25133
+ r-25134
+ w-25135
+ s-25136
+ rib-25088
+ mod-25137
+ for-car?-25090)))
+ (if (eqv? ftype-25106 'core)
(values
- 'local-syntax-form
- #{fval 47943}#
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (if (eqv? #{ftype 47942}# 'begin)
+ 'core-form
+ fval-25107
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (if (eqv? ftype-25106 'local-syntax)
(values
- 'begin-form
- #f
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (if (eqv? #{ftype 47942}# 'eval-when)
+ 'local-syntax-form
+ fval-25107
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (if (eqv? ftype-25106 'begin)
(values
- 'eval-when-form
+ 'begin-form
#f
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (if (eqv? #{ftype 47942}# 'define)
- (let ((#{tmp 47989}#
- ($sc-dispatch
- #{e 47920}#
- '(_ any any))))
- (if (if #{tmp 47989}#
- (@apply
- (lambda (#{name 47993}#
- #{val 47994}#)
- (if (symbol? #{name 47993}#)
- #t
- (if (if (vector?
- #{name 47993}#)
- (if (= (vector-length
- #{name 47993}#)
- 4)
- (eq? (vector-ref
- #{name 47993}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (symbol?
- (vector-ref
- #{name 47993}#
- 1))
- #f)))
- #{tmp 47989}#)
- #f)
- (@apply
- (lambda (#{name 48021}# #{val 48022}#)
- (values
- 'define-form
- #{name 48021}#
- #{val 48022}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#))
- #{tmp 47989}#)
- (let ((#{tmp 48023}#
- ($sc-dispatch
- #{e 47920}#
- '(_ (any . any)
- any
- .
- each-any))))
- (if (if #{tmp 48023}#
- (@apply
- (lambda (#{name 48027}#
- #{args 48028}#
- #{e1 48029}#
- #{e2 48030}#)
- (if (if (symbol?
- #{name 48027}#)
- #t
- (if (if (vector?
- #{name 48027}#)
- (if (= (vector-length
- #{name 48027}#)
- 4)
- (eq? (vector-ref
- #{name 48027}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (symbol?
- (vector-ref
- #{name 48027}#
- 1))
- #f))
- (#{valid-bound-ids? 28261}#
- (#{lambda-var-list 28286}#
- #{args 48028}#))
- #f))
- #{tmp 48023}#)
- #f)
- (@apply
- (lambda (#{name 48493}#
- #{args 48494}#
- #{e1 48495}#
- #{e2 48496}#)
- (values
- 'define-form
- (if (if (null? (car #{w 47922}#))
- (null? (cdr #{w 47922}#))
- #f)
- #{name 48493}#
- (if (if (vector?
- #{name 48493}#)
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (if (eqv? ftype-25106 'eval-when)
+ (values
+ 'eval-when-form
+ #f
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (if (eqv? ftype-25106 'define)
+ (let ((tmp-25154
+ ($sc-dispatch
+ e-25084
+ '(_ any any))))
+ (if (if tmp-25154
+ (@apply
+ (lambda (name-25158 val-25159)
+ (if (symbol? name-25158)
+ #t
+ (if (if (vector? name-25158)
(if (= (vector-length
- #{name 48493}#)
+ name-25158)
4)
(eq? (vector-ref
- #{name 48493}#
+ name-25158
0)
'syntax-object)
#f)
#f)
- (let ((#{expression 48526}#
- (vector-ref
- #{name 48493}#
- 1))
- (#{wrap 48527}#
- (let ((#{w2 48537}#
- (vector-ref
- #{name 48493}#
- 2)))
- (let ((#{m1 48538}#
- (car #{w 47922}#))
- (#{s1 48539}#
- (cdr #{w 47922}#)))
- (if (null? #{m1 48538}#)
- (if (null? #{s1 48539}#)
- #{w2 48537}#
- (cons (car #{w2 48537}#)
- (let ((#{m2 48556}#
- (cdr #{w2 48537}#)))
- (if (null? #{m2 48556}#)
- #{s1 48539}#
+ (symbol?
+ (vector-ref
+ name-25158
+ 1))
+ #f)))
+ tmp-25154)
+ #f)
+ (@apply
+ (lambda (name-25186 val-25187)
+ (values
+ 'define-form
+ name-25186
+ e-25084
+ val-25187
+ w-25086
+ s-25087
+ mod-25089))
+ tmp-25154)
+ (let ((tmp-25188
+ ($sc-dispatch
+ e-25084
+ '(_ (any . any)
+ any
+ .
+ each-any))))
+ (if (if tmp-25188
+ (@apply
+ (lambda (name-25192
+ args-25193
+ e1-25194
+ e2-25195)
+ (if (if (symbol?
+ name-25192)
+ #t
+ (if (if (vector?
+ name-25192)
+ (if (= (vector-length
+ name-25192)
+ 4)
+ (eq? (vector-ref
+ name-25192
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol?
+ (vector-ref
+ name-25192
+ 1))
+ #f))
+ (valid-bound-ids?-4576
+ (lambda-var-list-4601
+ args-25193))
+ #f))
+ tmp-25188)
+ #f)
+ (@apply
+ (lambda (name-25658
+ args-25659
+ e1-25660
+ e2-25661)
+ (values
+ 'define-form
+ (if (if (null? (car w-25086))
+ (null? (cdr w-25086))
+ #f)
+ name-25658
+ (if (if (vector?
+ name-25658)
+ (if (= (vector-length
+ name-25658)
+ 4)
+ (eq? (vector-ref
+ name-25658
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-25691
+ (vector-ref
+ name-25658
+ 1))
+ (wrap-25692
+ (let ((w2-25702
+ (vector-ref
+ name-25658
+ 2)))
+ (let ((m1-25703
+ (car w-25086))
+ (s1-25704
+ (cdr w-25086)))
+ (if (null? m1-25703)
+ (if (null? s1-25704)
+ w2-25702
+ (cons (car w2-25702)
+ (let ((m2-25721
+ (cdr w2-25702)))
+ (if (null? m2-25721)
+ s1-25704
+ (append
+ s1-25704
+ m2-25721)))))
+ (cons (let ((m2-25729
+ (car w2-25702)))
+ (if (null? m2-25729)
+ m1-25703
(append
- #{s1 48539}#
- #{m2 48556}#)))))
- (cons (let ((#{m2 48564}#
- (car #{w2 48537}#)))
- (if (null? #{m2 48564}#)
- #{m1 48538}#
- (append
- #{m1 48538}#
- #{m2 48564}#)))
- (let ((#{m2 48572}#
- (cdr #{w2 48537}#)))
- (if (null? #{m2 48572}#)
- #{s1 48539}#
- (append
- #{s1 48539}#
- #{m2 48572}#))))))))
- (#{module 48528}#
- (vector-ref
- #{name 48493}#
- 3)))
- (vector
- 'syntax-object
- #{expression 48526}#
- #{wrap 48527}#
- #{module 48528}#))
- (if (null? #{name 48493}#)
- #{name 48493}#
- (vector
- 'syntax-object
- #{name 48493}#
- #{w 47922}#
- #{mod 47925}#))))
- (let ((#{e 48598}#
- (cons '#(syntax-object
- lambda
- ((top)
- #(ribcage
- #(name
- args
- e1
- e2)
- #((top)
- (top)
- (top)
- (top))
- #("i25779"
- "i25780"
- "i25781"
- "i25782"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25732"
- "i25733"
- "i25734"
- "i25735"
- "i25736"
- "i25737"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(first)
- #((top))
- #("i25724"))
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- ()
- ()
- ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25703"
- "i25704"
- "i25705"
- "i25706"
- "i25707"
- "i25708"
- "i25709"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top)
- (top)
- (top))
- ("i23873"
- "i23872"
- "i23871"))
- #(ribcage
- ()
- ()
- ()))
- (hygiene
- guile))
- (let ((#{x 48602}#
- (cons #{args 48494}#
- (cons #{e1 48495}#
- #{e2 48496}#))))
- (if (if (null? (car #{w 47922}#))
- (null? (cdr #{w 47922}#))
- #f)
- #{x 48602}#
- (if (if (vector?
- #{x 48602}#)
- (if (= (vector-length
- #{x 48602}#)
- 4)
- (eq? (vector-ref
- #{x 48602}#
- 0)
- 'syntax-object)
- #f)
+ m1-25703
+ m2-25729)))
+ (let ((m2-25737
+ (cdr w2-25702)))
+ (if (null? m2-25737)
+ s1-25704
+ (append
+ s1-25704
+ m2-25737))))))))
+ (module-25693
+ (vector-ref
+ name-25658
+ 3)))
+ (vector
+ 'syntax-object
+ expression-25691
+ wrap-25692
+ module-25693))
+ (if (null? name-25658)
+ name-25658
+ (vector
+ 'syntax-object
+ name-25658
+ w-25086
+ mod-25089))))
+ (if (if (null? (car w-25086))
+ (null? (cdr w-25086))
+ #f)
+ e-25084
+ (if (if (vector? e-25084)
+ (if (= (vector-length
+ e-25084)
+ 4)
+ (eq? (vector-ref
+ e-25084
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-25789
+ (vector-ref
+ e-25084
+ 1))
+ (wrap-25790
+ (let ((w2-25800
+ (vector-ref
+ e-25084
+ 2)))
+ (let ((m1-25801
+ (car w-25086))
+ (s1-25802
+ (cdr w-25086)))
+ (if (null? m1-25801)
+ (if (null? s1-25802)
+ w2-25800
+ (cons (car w2-25800)
+ (let ((m2-25819
+ (cdr w2-25800)))
+ (if (null? m2-25819)
+ s1-25802
+ (append
+ s1-25802
+ m2-25819)))))
+ (cons (let ((m2-25827
+ (car w2-25800)))
+ (if (null? m2-25827)
+ m1-25801
+ (append
+ m1-25801
+ m2-25827)))
+ (let ((m2-25835
+ (cdr w2-25800)))
+ (if (null? m2-25835)
+ s1-25802
+ (append
+ s1-25802
+ m2-25835))))))))
+ (module-25791
+ (vector-ref
+ e-25084
+ 3)))
+ (vector
+ 'syntax-object
+ expression-25789
+ wrap-25790
+ module-25791))
+ (if (null? e-25084)
+ e-25084
+ (vector
+ 'syntax-object
+ e-25084
+ w-25086
+ mod-25089))))
+ (let ((e-25861
+ (cons '#(syntax-object
+ lambda
+ ((top)
+ #(ribcage
+ #(name
+ args
+ e1
+ e2)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("l-*-2021"
+ "l-*-2022"
+ "l-*-2023"
+ "l-*-2024"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(ftype
+ fval
+ fform
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1973"
+ "l-*-1974"
+ "l-*-1975"
+ "l-*-1976"
+ "l-*-1977"
+ "l-*-1978"
+ "l-*-1979"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("l-*-1964"))
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ ()
+ ()
+ ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1943"
+ "l-*-1944"
+ "l-*-1945"
+ "l-*-1946"
+ "l-*-1947"
+ "l-*-1948"
+ "l-*-1949"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top)
+ (top)
+ (top))
+ ("l-*-47"
+ "l-*-46"
+ "l-*-45"))
+ #(ribcage
+ ()
+ ()
+ ()))
+ (hygiene
+ guile))
+ (let ((x-25865
+ (cons args-25659
+ (cons e1-25660
+ e2-25661))))
+ (if (if (null? (car w-25086))
+ (null? (cdr w-25086))
#f)
- (let ((#{expression 48620}#
- (vector-ref
- #{x 48602}#
- 1))
- (#{wrap 48621}#
- (let ((#{w2 48629}#
- (vector-ref
- #{x 48602}#
- 2)))
- (let ((#{m1 48630}#
- (car #{w 47922}#))
- (#{s1 48631}#
- (cdr #{w 47922}#)))
- (if (null? #{m1 48630}#)
- (if (null? #{s1 48631}#)
- #{w2 48629}#
- (cons (car #{w2 48629}#)
- (let ((#{m2 48646}#
- (cdr #{w2 48629}#)))
- (if (null? #{m2 48646}#)
- #{s1 48631}#
+ x-25865
+ (if (if (vector?
+ x-25865)
+ (if (= (vector-length
+ x-25865)
+ 4)
+ (eq? (vector-ref
+ x-25865
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-25883
+ (vector-ref
+ x-25865
+ 1))
+ (wrap-25884
+ (let ((w2-25892
+ (vector-ref
+ x-25865
+ 2)))
+ (let ((m1-25893
+ (car w-25086))
+ (s1-25894
+ (cdr w-25086)))
+ (if (null? m1-25893)
+ (if (null? s1-25894)
+ w2-25892
+ (cons (car w2-25892)
+ (let ((m2-25909
+ (cdr w2-25892)))
+ (if (null? m2-25909)
+ s1-25894
+ (append
+ s1-25894
+ m2-25909)))))
+ (cons (let ((m2-25917
+ (car w2-25892)))
+ (if (null? m2-25917)
+ m1-25893
(append
- #{s1 48631}#
- #{m2 48646}#)))))
- (cons (let ((#{m2 48654}#
- (car #{w2 48629}#)))
- (if (null? #{m2 48654}#)
- #{m1 48630}#
- (append
- #{m1 48630}#
- #{m2 48654}#)))
- (let ((#{m2 48662}#
- (cdr #{w2 48629}#)))
- (if (null? #{m2 48662}#)
- #{s1 48631}#
- (append
- #{s1 48631}#
- #{m2 48662}#))))))))
- (#{module 48622}#
- (vector-ref
- #{x 48602}#
- 3)))
- (vector
- 'syntax-object
- #{expression 48620}#
- #{wrap 48621}#
- #{module 48622}#))
- (if (null? #{x 48602}#)
- #{x 48602}#
- (vector
- 'syntax-object
- #{x 48602}#
- #{w 47922}#
- #{mod 47925}#))))))))
- (begin
- (if (if (pair? #{e 48598}#)
- #{s 47923}#
- #f)
- (set-source-properties!
- #{e 48598}#
- #{s 47923}#))
- #{e 48598}#))
- '(())
- #{s 47923}#
- #{mod 47925}#))
- #{tmp 48023}#)
- (let ((#{tmp 48681}#
- ($sc-dispatch
- #{e 47920}#
- '(_ any))))
- (if (if #{tmp 48681}#
- (@apply
- (lambda (#{name 48685}#)
- (if (symbol?
- #{name 48685}#)
- #t
+ m1-25893
+ m2-25917)))
+ (let ((m2-25925
+ (cdr w2-25892)))
+ (if (null? m2-25925)
+ s1-25894
+ (append
+ s1-25894
+ m2-25925))))))))
+ (module-25885
+ (vector-ref
+ x-25865
+ 3)))
+ (vector
+ 'syntax-object
+ expression-25883
+ wrap-25884
+ module-25885))
+ (if (null? x-25865)
+ x-25865
+ (vector
+ 'syntax-object
+ x-25865
+ w-25086
+ mod-25089))))))))
+ (begin
+ (if (if (pair? e-25861)
+ s-25087
+ #f)
+ (set-source-properties!
+ e-25861
+ s-25087))
+ e-25861))
+ '(())
+ s-25087
+ mod-25089))
+ tmp-25188)
+ (let ((tmp-25944
+ ($sc-dispatch
+ e-25084
+ '(_ any))))
+ (if (if tmp-25944
+ (@apply
+ (lambda (name-25948)
+ (if (symbol?
+ name-25948)
+ #t
+ (if (if (vector?
+ name-25948)
+ (if (= (vector-length
+ name-25948)
+ 4)
+ (eq? (vector-ref
+ name-25948
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol?
+ (vector-ref
+ name-25948
+ 1))
+ #f)))
+ tmp-25944)
+ #f)
+ (@apply
+ (lambda (name-25975)
+ (values
+ 'define-form
+ (if (if (null? (car w-25086))
+ (null? (cdr w-25086))
+ #f)
+ name-25975
(if (if (vector?
- #{name 48685}#)
+ name-25975)
(if (= (vector-length
- #{name 48685}#)
+ name-25975)
4)
(eq? (vector-ref
- #{name 48685}#
+ name-25975
0)
'syntax-object)
#f)
#f)
- (symbol?
- (vector-ref
- #{name 48685}#
- 1))
- #f)))
- #{tmp 48681}#)
- #f)
- (@apply
- (lambda (#{name 48712}#)
- (values
- 'define-form
- (if (if (null? (car #{w 47922}#))
- (null? (cdr #{w 47922}#))
- #f)
- #{name 48712}#
- (if (if (vector?
- #{name 48712}#)
- (if (= (vector-length
- #{name 48712}#)
- 4)
- (eq? (vector-ref
- #{name 48712}#
- 0)
- 'syntax-object)
- #f)
+ (let ((expression-26005
+ (vector-ref
+ name-25975
+ 1))
+ (wrap-26006
+ (let ((w2-26016
+ (vector-ref
+ name-25975
+ 2)))
+ (let ((m1-26017
+ (car w-25086))
+ (s1-26018
+ (cdr w-25086)))
+ (if (null? m1-26017)
+ (if (null? s1-26018)
+ w2-26016
+ (cons (car w2-26016)
+ (let ((m2-26035
+ (cdr w2-26016)))
+ (if (null? m2-26035)
+ s1-26018
+ (append
+ s1-26018
+ m2-26035)))))
+ (cons (let ((m2-26043
+ (car w2-26016)))
+ (if (null? m2-26043)
+ m1-26017
+ (append
+ m1-26017
+ m2-26043)))
+ (let ((m2-26051
+ (cdr w2-26016)))
+ (if (null? m2-26051)
+ s1-26018
+ (append
+ s1-26018
+ m2-26051))))))))
+ (module-26007
+ (vector-ref
+ name-25975
+ 3)))
+ (vector
+ 'syntax-object
+ expression-26005
+ wrap-26006
+ module-26007))
+ (if (null? name-25975)
+ name-25975
+ (vector
+ 'syntax-object
+ name-25975
+ w-25086
+ mod-25089))))
+ (if (if (null? (car w-25086))
+ (null? (cdr w-25086))
#f)
- (let ((#{expression 48742}#
- (vector-ref
- #{name 48712}#
- 1))
- (#{wrap 48743}#
- (let ((#{w2 48753}#
- (vector-ref
- #{name 48712}#
- 2)))
- (let ((#{m1 48754}#
- (car #{w 47922}#))
- (#{s1 48755}#
- (cdr #{w 47922}#)))
- (if (null? #{m1 48754}#)
- (if (null? #{s1 48755}#)
- #{w2 48753}#
- (cons (car #{w2 48753}#)
- (let ((#{m2 48772}#
- (cdr #{w2 48753}#)))
- (if (null? #{m2 48772}#)
- #{s1 48755}#
+ e-25084
+ (if (if (vector?
+ e-25084)
+ (if (= (vector-length
+ e-25084)
+ 4)
+ (eq? (vector-ref
+ e-25084
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-26103
+ (vector-ref
+ e-25084
+ 1))
+ (wrap-26104
+ (let ((w2-26114
+ (vector-ref
+ e-25084
+ 2)))
+ (let ((m1-26115
+ (car w-25086))
+ (s1-26116
+ (cdr w-25086)))
+ (if (null? m1-26115)
+ (if (null? s1-26116)
+ w2-26114
+ (cons (car w2-26114)
+ (let ((m2-26133
+ (cdr w2-26114)))
+ (if (null? m2-26133)
+ s1-26116
+ (append
+ s1-26116
+ m2-26133)))))
+ (cons (let ((m2-26141
+ (car w2-26114)))
+ (if (null? m2-26141)
+ m1-26115
(append
- #{s1 48755}#
- #{m2 48772}#)))))
- (cons (let ((#{m2 48780}#
- (car #{w2 48753}#)))
- (if (null? #{m2 48780}#)
- #{m1 48754}#
- (append
- #{m1 48754}#
- #{m2 48780}#)))
- (let ((#{m2 48788}#
- (cdr #{w2 48753}#)))
- (if (null? #{m2 48788}#)
- #{s1 48755}#
- (append
- #{s1 48755}#
- #{m2 48788}#))))))))
- (#{module 48744}#
- (vector-ref
- #{name 48712}#
- 3)))
- (vector
- 'syntax-object
- #{expression 48742}#
- #{wrap 48743}#
- #{module 48744}#))
- (if (null? #{name 48712}#)
- #{name 48712}#
- (vector
- 'syntax-object
- #{name 48712}#
- #{w 47922}#
- #{mod 47925}#))))
- '(#(syntax-object
- if
- ((top)
- #(ribcage
- #(name)
- #((top))
- #("i25792"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25732"
- "i25733"
- "i25734"
- "i25735"
- "i25736"
- "i25737"))
- #(ribcage () () ())
- #(ribcage
- #(first)
- #((top))
- #("i25724"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25703"
- "i25704"
- "i25705"
- "i25706"
- "i25707"
- "i25708"
- "i25709"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873"
- "i23872"
- "i23871"))
- #(ribcage () () ()))
- (hygiene guile))
- #(syntax-object
- #f
- ((top)
- #(ribcage
- #(name)
- #((top))
- #("i25792"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25732"
- "i25733"
- "i25734"
- "i25735"
- "i25736"
- "i25737"))
- #(ribcage () () ())
- #(ribcage
- #(first)
- #((top))
- #("i25724"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25703"
- "i25704"
- "i25705"
- "i25706"
- "i25707"
- "i25708"
- "i25709"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873"
- "i23872"
- "i23871"))
- #(ribcage () () ()))
- (hygiene guile))
- #(syntax-object
- #f
- ((top)
- #(ribcage
- #(name)
- #((top))
- #("i25792"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(ftype
- fval
- fe
- fw
- fs
- fmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25732"
- "i25733"
- "i25734"
- "i25735"
- "i25736"
- "i25737"))
- #(ribcage () () ())
- #(ribcage
- #(first)
- #((top))
- #("i25724"))
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(e
- r
- w
- s
- rib
- mod
- for-car?)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i25703"
- "i25704"
- "i25705"
- "i25706"
- "i25707"
- "i25708"
- "i25709"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873"
- "i23872"
- "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))
- '(())
- #{s 47923}#
- #{mod 47925}#))
- #{tmp 48681}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 47920}#)))))))
- (if (eqv? #{ftype 47942}# 'define-syntax)
- (let ((#{tmp 48827}#
- ($sc-dispatch
- #{e 47920}#
- '(_ any any))))
- (if (if #{tmp 48827}#
- (@apply
- (lambda (#{name 48831}#
- #{val 48832}#)
- (if (symbol? #{name 48831}#)
- #t
- (if (if (vector?
- #{name 48831}#)
- (if (= (vector-length
- #{name 48831}#)
- 4)
- (eq? (vector-ref
- #{name 48831}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (symbol?
- (vector-ref
- #{name 48831}#
- 1))
- #f)))
- #{tmp 48827}#)
- #f)
- (@apply
- (lambda (#{name 48859}#
- #{val 48860}#)
- (values
- 'define-syntax-form
- #{name 48859}#
- #{val 48860}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#))
- #{tmp 48827}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 47920}#)))
- (if (eqv? #{ftype 47942}#
- 'define-syntax-parameter)
- (let ((#{tmp 48871}#
+ m1-26115
+ m2-26141)))
+ (let ((m2-26149
+ (cdr w2-26114)))
+ (if (null? m2-26149)
+ s1-26116
+ (append
+ s1-26116
+ m2-26149))))))))
+ (module-26105
+ (vector-ref
+ e-25084
+ 3)))
+ (vector
+ 'syntax-object
+ expression-26103
+ wrap-26104
+ module-26105))
+ (if (null? e-25084)
+ e-25084
+ (vector
+ 'syntax-object
+ e-25084
+ w-25086
+ mod-25089))))
+ '(#(syntax-object
+ if
+ ((top)
+ #(ribcage
+ #(name)
+ #((top))
+ #("l-*-2034"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(ftype
+ fval
+ fform
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1973"
+ "l-*-1974"
+ "l-*-1975"
+ "l-*-1976"
+ "l-*-1977"
+ "l-*-1978"
+ "l-*-1979"))
+ #(ribcage () () ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("l-*-1964"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1943"
+ "l-*-1944"
+ "l-*-1945"
+ "l-*-1946"
+ "l-*-1947"
+ "l-*-1948"
+ "l-*-1949"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top)
+ (top)
+ (top))
+ ("l-*-47"
+ "l-*-46"
+ "l-*-45"))
+ #(ribcage
+ ()
+ ()
+ ()))
+ (hygiene guile))
+ #(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(name)
+ #((top))
+ #("l-*-2034"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(ftype
+ fval
+ fform
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1973"
+ "l-*-1974"
+ "l-*-1975"
+ "l-*-1976"
+ "l-*-1977"
+ "l-*-1978"
+ "l-*-1979"))
+ #(ribcage () () ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("l-*-1964"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1943"
+ "l-*-1944"
+ "l-*-1945"
+ "l-*-1946"
+ "l-*-1947"
+ "l-*-1948"
+ "l-*-1949"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top)
+ (top)
+ (top))
+ ("l-*-47"
+ "l-*-46"
+ "l-*-45"))
+ #(ribcage
+ ()
+ ()
+ ()))
+ (hygiene guile))
+ #(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(name)
+ #((top))
+ #("l-*-2034"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(ftype
+ fval
+ fform
+ fe
+ fw
+ fs
+ fmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1973"
+ "l-*-1974"
+ "l-*-1975"
+ "l-*-1976"
+ "l-*-1977"
+ "l-*-1978"
+ "l-*-1979"))
+ #(ribcage () () ())
+ #(ribcage
+ #(first)
+ #((top))
+ #("l-*-1964"))
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(e
+ r
+ w
+ s
+ rib
+ mod
+ for-car?)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-1943"
+ "l-*-1944"
+ "l-*-1945"
+ "l-*-1946"
+ "l-*-1947"
+ "l-*-1948"
+ "l-*-1949"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top)
+ (top)
+ (top))
+ ("l-*-47"
+ "l-*-46"
+ "l-*-45"))
+ #(ribcage
+ ()
+ ()
+ ()))
+ (hygiene guile)))
+ '(())
+ s-25087
+ mod-25089))
+ tmp-25944)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-25084)))))))
+ (if (eqv? ftype-25106 'define-syntax)
+ (let ((tmp-26188
($sc-dispatch
- #{e 47920}#
+ e-25084
'(_ any any))))
- (if (if #{tmp 48871}#
+ (if (if tmp-26188
(@apply
- (lambda (#{name 48875}#
- #{val 48876}#)
- (if (symbol? #{name 48875}#)
+ (lambda (name-26192 val-26193)
+ (if (symbol? name-26192)
#t
(if (if (vector?
- #{name 48875}#)
+ name-26192)
(if (= (vector-length
- #{name 48875}#)
+ name-26192)
4)
(eq? (vector-ref
- #{name 48875}#
+ name-26192
0)
'syntax-object)
#f)
#f)
(symbol?
(vector-ref
- #{name 48875}#
+ name-26192
1))
#f)))
- #{tmp 48871}#)
+ tmp-26188)
#f)
(@apply
- (lambda (#{name 48903}#
- #{val 48904}#)
+ (lambda (name-26220 val-26221)
(values
- 'define-syntax-parameter-form
- #{name 48903}#
- #{val 48904}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#))
- #{tmp 48871}#)
+ 'define-syntax-form
+ name-26220
+ e-25084
+ val-26221
+ w-25086
+ s-25087
+ mod-25089))
+ tmp-26188)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{e 47920}#)))
- (values
- 'call
- #f
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)))))))))))))))
- (if (if (vector? #{e 47920}#)
- (if (= (vector-length #{e 47920}#) 4)
- (eq? (vector-ref #{e 47920}# 0) 'syntax-object)
+ e-25084)))
+ (if (eqv? ftype-25106
+ 'define-syntax-parameter)
+ (let ((tmp-26232
+ ($sc-dispatch
+ e-25084
+ '(_ any any))))
+ (if (if tmp-26232
+ (@apply
+ (lambda (name-26236
+ val-26237)
+ (if (symbol? name-26236)
+ #t
+ (if (if (vector?
+ name-26236)
+ (if (= (vector-length
+ name-26236)
+ 4)
+ (eq? (vector-ref
+ name-26236
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol?
+ (vector-ref
+ name-26236
+ 1))
+ #f)))
+ tmp-26232)
+ #f)
+ (@apply
+ (lambda (name-26264 val-26265)
+ (values
+ 'define-syntax-parameter-form
+ name-26264
+ e-25084
+ val-26265
+ w-25086
+ s-25087
+ mod-25089))
+ tmp-26232)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-25084)))
+ (values
+ 'call
+ #f
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)))))))))))))))
+ (if (if (vector? e-25084)
+ (if (= (vector-length e-25084) 4)
+ (eq? (vector-ref e-25084 0) 'syntax-object)
+ #f)
#f)
- #f)
- (#{syntax-type 28270}#
- (vector-ref #{e 47920}# 1)
- #{r 47921}#
- (let ((#{w2 48929}# (vector-ref #{e 47920}# 2)))
- (let ((#{m1 48930}# (car #{w 47922}#))
- (#{s1 48931}# (cdr #{w 47922}#)))
- (if (null? #{m1 48930}#)
- (if (null? #{s1 48931}#)
- #{w2 48929}#
- (cons (car #{w2 48929}#)
- (let ((#{m2 48942}# (cdr #{w2 48929}#)))
- (if (null? #{m2 48942}#)
- #{s1 48931}#
- (append #{s1 48931}# #{m2 48942}#)))))
- (cons (let ((#{m2 48950}# (car #{w2 48929}#)))
- (if (null? #{m2 48950}#)
- #{m1 48930}#
- (append #{m1 48930}# #{m2 48950}#)))
- (let ((#{m2 48958}# (cdr #{w2 48929}#)))
- (if (null? #{m2 48958}#)
- #{s1 48931}#
- (append #{s1 48931}# #{m2 48958}#)))))))
- (let ((#{t 48963}#
- (#{source-annotation 28232}# #{e 47920}#)))
- (if #{t 48963}# #{t 48963}# #{s 47923}#))
- #{rib 47924}#
- (let ((#{t 49239}# (vector-ref #{e 47920}# 3)))
- (if #{t 49239}# #{t 49239}# #{mod 47925}#))
- #{for-car? 47926}#)
- (if (self-evaluating? #{e 47920}#)
- (values
- 'constant
- #f
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)
- (values
- 'other
- #f
- #{e 47920}#
- #{w 47922}#
- #{s 47923}#
- #{mod 47925}#)))))))
- (#{expand 28271}#
- (lambda (#{e 49248}#
- #{r 49249}#
- #{w 49250}#
- #{mod 49251}#)
- (call-with-values
- (lambda ()
- (#{syntax-type 28270}#
- #{e 49248}#
- #{r 49249}#
- #{w 49250}#
- (#{source-annotation 28232}# #{e 49248}#)
- #f
- #{mod 49251}#
- #f))
- (lambda (#{type 49437}#
- #{value 49438}#
- #{e 49439}#
- #{w 49440}#
- #{s 49441}#
- #{mod 49442}#)
- (#{expand-expr 28272}#
- #{type 49437}#
- #{value 49438}#
- #{e 49439}#
- #{r 49249}#
- #{w 49440}#
- #{s 49441}#
- #{mod 49442}#)))))
- (#{expand-expr 28272}#
- (lambda (#{type 49445}#
- #{value 49446}#
- #{e 49447}#
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#)
- (if (eqv? #{type 49445}# 'lexical)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 3)
- #{s 49450}#
- #{e 49447}#
- #{value 49446}#)
- (if (if (eqv? #{type 49445}# 'core)
- #t
- (eqv? #{type 49445}# 'core-form))
- (#{value 49446}#
- #{e 49447}#
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#)
- (if (eqv? #{type 49445}# 'module-ref)
- (call-with-values
- (lambda ()
- (#{value 49446}#
- #{e 49447}#
- #{r 49448}#
- #{w 49449}#))
- (lambda (#{e 49477}#
- #{r 49478}#
- #{w 49479}#
- #{s 49480}#
- #{mod 49481}#)
- (#{expand 28271}#
- #{e 49477}#
- #{r 49478}#
- #{w 49479}#
- #{mod 49481}#)))
- (if (eqv? #{type 49445}# 'lexical-call)
- (#{expand-call 28273}#
- (let ((#{id 49654}# (car #{e 49447}#)))
- (#{build-lexical-reference 28208}#
- 'fun
- (#{source-annotation 28232}# #{id 49654}#)
- (if (if (vector? #{id 49654}#)
- (if (= (vector-length #{id 49654}#) 4)
- (eq? (vector-ref #{id 49654}# 0) 'syntax-object)
+ (syntax-type-4585
+ (vector-ref e-25084 1)
+ r-25085
+ (let ((w2-26290 (vector-ref e-25084 2)))
+ (let ((m1-26291 (car w-25086))
+ (s1-26292 (cdr w-25086)))
+ (if (null? m1-26291)
+ (if (null? s1-26292)
+ w2-26290
+ (cons (car w2-26290)
+ (let ((m2-26303 (cdr w2-26290)))
+ (if (null? m2-26303)
+ s1-26292
+ (append s1-26292 m2-26303)))))
+ (cons (let ((m2-26311 (car w2-26290)))
+ (if (null? m2-26311)
+ m1-26291
+ (append m1-26291 m2-26311)))
+ (let ((m2-26319 (cdr w2-26290)))
+ (if (null? m2-26319)
+ s1-26292
+ (append s1-26292 m2-26319)))))))
+ (let ((t-26324 (source-annotation-4544 e-25084)))
+ (if t-26324 t-26324 s-25087))
+ rib-25088
+ (let ((t-26600 (vector-ref e-25084 3)))
+ (if t-26600 t-26600 mod-25089))
+ for-car?-25090)
+ (if (self-evaluating? e-25084)
+ (values
+ 'constant
+ #f
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)
+ (values
+ 'other
+ #f
+ e-25084
+ e-25084
+ w-25086
+ s-25087
+ mod-25089)))))))
+ (expand-4586
+ (lambda (e-26609 r-26610 w-26611 mod-26612)
+ (call-with-values
+ (lambda ()
+ (syntax-type-4585
+ e-26609
+ r-26610
+ w-26611
+ (source-annotation-4544 e-26609)
+ #f
+ mod-26612
+ #f))
+ (lambda (type-26798
+ value-26799
+ form-26800
+ e-26801
+ w-26802
+ s-26803
+ mod-26804)
+ (expand-expr-4587
+ type-26798
+ value-26799
+ form-26800
+ e-26801
+ r-26610
+ w-26802
+ s-26803
+ mod-26804)))))
+ (expand-expr-4587
+ (lambda (type-26807
+ value-26808
+ form-26809
+ e-26810
+ r-26811
+ w-26812
+ s-26813
+ mod-26814)
+ (if (eqv? type-26807 'lexical)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 3)
+ s-26813
+ e-26810
+ value-26808)
+ (if (if (eqv? type-26807 'core)
+ #t
+ (eqv? type-26807 'core-form))
+ (value-26808
+ e-26810
+ r-26811
+ w-26812
+ s-26813
+ mod-26814)
+ (if (eqv? type-26807 'module-ref)
+ (call-with-values
+ (lambda () (value-26808 e-26810 r-26811 w-26812))
+ (lambda (e-26840 r-26841 w-26842 s-26843 mod-26844)
+ (expand-4586 e-26840 r-26841 w-26842 mod-26844)))
+ (if (eqv? type-26807 'lexical-call)
+ (expand-call-4588
+ (let ((id-27017 (car e-26810)))
+ (build-lexical-reference-4520
+ 'fun
+ (source-annotation-4544 id-27017)
+ (if (if (vector? id-27017)
+ (if (= (vector-length id-27017) 4)
+ (eq? (vector-ref id-27017 0) 'syntax-object)
+ #f)
#f)
- #f)
- (syntax->datum #{id 49654}#)
- #{id 49654}#)
- #{value 49446}#))
- #{e 49447}#
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#)
- (if (eqv? #{type 49445}# 'global-call)
- (#{expand-call 28273}#
- (#{build-global-reference 28211}#
- (#{source-annotation 28232}# (car #{e 49447}#))
- (if (if (vector? #{value 49446}#)
- (if (= (vector-length #{value 49446}#) 4)
- (eq? (vector-ref #{value 49446}# 0)
- 'syntax-object)
+ (syntax->datum id-27017)
+ id-27017)
+ value-26808))
+ e-26810
+ r-26811
+ w-26812
+ s-26813
+ mod-26814)
+ (if (eqv? type-26807 'global-call)
+ (expand-call-4588
+ (build-global-reference-4523
+ (source-annotation-4544 (car e-26810))
+ (if (if (vector? value-26808)
+ (if (= (vector-length value-26808) 4)
+ (eq? (vector-ref value-26808 0) 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{value 49446}# 1)
- #{value 49446}#)
- (if (if (vector? #{value 49446}#)
- (if (= (vector-length #{value 49446}#) 4)
- (eq? (vector-ref #{value 49446}# 0)
- 'syntax-object)
+ (vector-ref value-26808 1)
+ value-26808)
+ (if (if (vector? value-26808)
+ (if (= (vector-length value-26808) 4)
+ (eq? (vector-ref value-26808 0) 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{value 49446}# 3)
- #{mod 49451}#))
- #{e 49447}#
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#)
- (if (eqv? #{type 49445}# 'constant)
- (let ((#{exp 50328}#
- (#{strip 28284}#
- (let ((#{x 50341}#
- (begin
- (if (if (pair? #{e 49447}#)
- #{s 49450}#
- #f)
- (set-source-properties!
- #{e 49447}#
- #{s 49450}#))
- #{e 49447}#)))
- (if (if (null? (car #{w 49449}#))
- (null? (cdr #{w 49449}#))
- #f)
- #{x 50341}#
- (if (if (vector? #{x 50341}#)
- (if (= (vector-length #{x 50341}#) 4)
- (eq? (vector-ref #{x 50341}# 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 50373}#
- (vector-ref #{x 50341}# 1))
- (#{wrap 50374}#
- (let ((#{w2 50382}#
- (vector-ref #{x 50341}# 2)))
- (let ((#{m1 50383}#
- (car #{w 49449}#))
- (#{s1 50384}#
- (cdr #{w 49449}#)))
- (if (null? #{m1 50383}#)
- (if (null? #{s1 50384}#)
- #{w2 50382}#
- (cons (car #{w2 50382}#)
- (let ((#{m2 50399}#
- (cdr #{w2 50382}#)))
- (if (null? #{m2 50399}#)
- #{s1 50384}#
- (append
- #{s1 50384}#
- #{m2 50399}#)))))
- (cons (let ((#{m2 50407}#
- (car #{w2 50382}#)))
- (if (null? #{m2 50407}#)
- #{m1 50383}#
- (append
- #{m1 50383}#
- #{m2 50407}#)))
- (let ((#{m2 50415}#
- (cdr #{w2 50382}#)))
- (if (null? #{m2 50415}#)
- #{s1 50384}#
- (append
- #{s1 50384}#
- #{m2 50415}#))))))))
- (#{module 50375}#
- (vector-ref #{x 50341}# 3)))
- (vector
- 'syntax-object
- #{expression 50373}#
- #{wrap 50374}#
- #{module 50375}#))
- (if (null? #{x 50341}#)
- #{x 50341}#
- (vector
- 'syntax-object
- #{x 50341}#
- #{w 49449}#
- #{mod 49451}#)))))
- '(()))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #{s 49450}#
- #{exp 50328}#))
- (if (eqv? #{type 49445}# 'global)
- (#{analyze-variable 28210}#
- #{mod 49451}#
- #{value 49446}#
- (lambda (#{mod 50440}# #{var 50441}# #{public? 50442}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 5)
- #{s 49450}#
- #{mod 50440}#
- #{var 50441}#
- #{public? 50442}#))
- (lambda (#{var 50450}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 7)
- #{s 49450}#
- #{var 50450}#)))
- (if (eqv? #{type 49445}# 'call)
- (#{expand-call 28273}#
- (#{expand 28271}#
- (car #{e 49447}#)
- #{r 49448}#
- #{w 49449}#
- #{mod 49451}#)
- #{e 49447}#
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#)
- (if (eqv? #{type 49445}# 'begin-form)
- (let ((#{tmp 50620}#
- ($sc-dispatch
- #{e 49447}#
- '(_ any . each-any))))
- (if #{tmp 50620}#
- (@apply
- (lambda (#{e1 50624}# #{e2 50625}#)
- (#{expand-sequence 28266}#
- (cons #{e1 50624}# #{e2 50625}#)
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#))
- #{tmp 50620}#)
- (let ((#{tmp 50720}#
- ($sc-dispatch #{e 49447}# '(_))))
- (if #{tmp 50720}#
- (@apply
- (lambda ()
- (begin
- (issue-deprecation-warning
- "Sequences of zero expressions are deprecated. Use *unspecified*.")
- (make-struct/no-tail
- (vector-ref %expanded-vtables 0)
- #f)))
- #{tmp 50720}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 49447}#)))))
- (if (eqv? #{type 49445}# 'local-syntax-form)
- (#{expand-local-syntax 28276}#
- #{value 49446}#
- #{e 49447}#
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#
- #{expand-sequence 28266}#)
- (if (eqv? #{type 49445}# 'eval-when-form)
- (let ((#{tmp 50812}#
- ($sc-dispatch
- #{e 49447}#
- '(_ each-any any . each-any))))
- (if #{tmp 50812}#
- (@apply
- (lambda (#{x 50816}#
- #{e1 50817}#
- #{e2 50818}#)
- (let ((#{when-list 50819}#
- (#{parse-when-list 28269}#
- #{e 49447}#
- #{x 50816}#)))
- (if (memq 'eval #{when-list 50819}#)
- (#{expand-sequence 28266}#
- (cons #{e1 50817}# #{e2 50818}#)
- #{r 49448}#
- #{w 49449}#
- #{s 49450}#
- #{mod 49451}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 0)
- #f))))
- #{tmp 50812}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 49447}#)))
- (if (if (eqv? #{type 49445}# 'define-form)
- #t
- (if (eqv? #{type 49445}#
- 'define-syntax-form)
- #t
- (eqv? #{type 49445}#
- 'define-syntax-parameter-form)))
- (syntax-violation
- #f
- "definition in expression context"
- #{e 49447}#
- (if (if (null? (car #{w 49449}#))
- (null? (cdr #{w 49449}#))
+ (vector-ref value-26808 3)
+ mod-26814))
+ e-26810
+ r-26811
+ w-26812
+ s-26813
+ mod-26814)
+ (if (eqv? type-26807 'constant)
+ (let ((exp-27691
+ (strip-4599
+ (let ((x-27704
+ (begin
+ (if (if (pair? e-26810) s-26813 #f)
+ (set-source-properties!
+ e-26810
+ s-26813))
+ e-26810)))
+ (if (if (null? (car w-26812))
+ (null? (cdr w-26812))
#f)
- #{value 49446}#
- (if (if (vector? #{value 49446}#)
- (if (= (vector-length #{value 49446}#)
- 4)
- (eq? (vector-ref #{value 49446}# 0)
+ x-27704
+ (if (if (vector? x-27704)
+ (if (= (vector-length x-27704) 4)
+ (eq? (vector-ref x-27704 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 51026}#
- (vector-ref #{value 49446}# 1))
- (#{wrap 51027}#
- (let ((#{w2 51037}#
- (vector-ref
- #{value 49446}#
- 2)))
- (let ((#{m1 51038}#
- (car #{w 49449}#))
- (#{s1 51039}#
- (cdr #{w 49449}#)))
- (if (null? #{m1 51038}#)
- (if (null? #{s1 51039}#)
- #{w2 51037}#
- (cons (car #{w2 51037}#)
- (let ((#{m2 51056}#
- (cdr #{w2 51037}#)))
- (if (null? #{m2 51056}#)
- #{s1 51039}#
+ (let ((expression-27736
+ (vector-ref x-27704 1))
+ (wrap-27737
+ (let ((w2-27745
+ (vector-ref x-27704 2)))
+ (let ((m1-27746 (car w-26812))
+ (s1-27747 (cdr w-26812)))
+ (if (null? m1-27746)
+ (if (null? s1-27747)
+ w2-27745
+ (cons (car w2-27745)
+ (let ((m2-27762
+ (cdr w2-27745)))
+ (if (null? m2-27762)
+ s1-27747
(append
- #{s1 51039}#
- #{m2 51056}#)))))
- (cons (let ((#{m2 51064}#
- (car #{w2 51037}#)))
- (if (null? #{m2 51064}#)
- #{m1 51038}#
+ s1-27747
+ m2-27762)))))
+ (cons (let ((m2-27770
+ (car w2-27745)))
+ (if (null? m2-27770)
+ m1-27746
(append
- #{m1 51038}#
- #{m2 51064}#)))
- (let ((#{m2 51072}#
- (cdr #{w2 51037}#)))
- (if (null? #{m2 51072}#)
- #{s1 51039}#
+ m1-27746
+ m2-27770)))
+ (let ((m2-27778
+ (cdr w2-27745)))
+ (if (null? m2-27778)
+ s1-27747
(append
- #{s1 51039}#
- #{m2 51072}#))))))))
- (#{module 51028}#
- (vector-ref #{value 49446}# 3)))
+ s1-27747
+ m2-27778))))))))
+ (module-27738
+ (vector-ref x-27704 3)))
(vector
'syntax-object
- #{expression 51026}#
- #{wrap 51027}#
- #{module 51028}#))
- (if (null? #{value 49446}#)
- #{value 49446}#
+ expression-27736
+ wrap-27737
+ module-27738))
+ (if (null? x-27704)
+ x-27704
(vector
'syntax-object
- #{value 49446}#
- #{w 49449}#
- #{mod 49451}#)))))
- (if (eqv? #{type 49445}# 'syntax)
+ x-27704
+ w-26812
+ mod-26814)))))
+ '(()))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ s-26813
+ exp-27691))
+ (if (eqv? type-26807 'global)
+ (analyze-variable-4522
+ mod-26814
+ value-26808
+ (lambda (mod-27803 var-27804 public?-27805)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 5)
+ s-26813
+ mod-27803
+ var-27804
+ public?-27805))
+ (lambda (var-27813)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 7)
+ s-26813
+ var-27813)))
+ (if (eqv? type-26807 'call)
+ (expand-call-4588
+ (expand-4586
+ (car e-26810)
+ r-26811
+ w-26812
+ mod-26814)
+ e-26810
+ r-26811
+ w-26812
+ s-26813
+ mod-26814)
+ (if (eqv? type-26807 'begin-form)
+ (let ((tmp-27983
+ ($sc-dispatch e-26810 '(_ any . each-any))))
+ (if tmp-27983
+ (@apply
+ (lambda (e1-27987 e2-27988)
+ (expand-sequence-4581
+ (cons e1-27987 e2-27988)
+ r-26811
+ w-26812
+ s-26813
+ mod-26814))
+ tmp-27983)
+ (let ((tmp-28083 ($sc-dispatch e-26810 '(_))))
+ (if tmp-28083
+ (@apply
+ (lambda ()
+ (syntax-violation
+ #f
+ "sequence of zero expressions"
+ (let ((x-28096
+ (begin
+ (if (if (pair? e-26810)
+ s-26813
+ #f)
+ (set-source-properties!
+ e-26810
+ s-26813))
+ e-26810)))
+ (if (if (null? (car w-26812))
+ (null? (cdr w-26812))
+ #f)
+ x-28096
+ (if (if (vector? x-28096)
+ (if (= (vector-length
+ x-28096)
+ 4)
+ (eq? (vector-ref
+ x-28096
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-28128
+ (vector-ref x-28096 1))
+ (wrap-28129
+ (let ((w2-28137
+ (vector-ref
+ x-28096
+ 2)))
+ (let ((m1-28138
+ (car w-26812))
+ (s1-28139
+ (cdr w-26812)))
+ (if (null? m1-28138)
+ (if (null? s1-28139)
+ w2-28137
+ (cons (car w2-28137)
+ (let ((m2-28154
+ (cdr w2-28137)))
+ (if (null? m2-28154)
+ s1-28139
+ (append
+ s1-28139
+ m2-28154)))))
+ (cons (let ((m2-28162
+ (car w2-28137)))
+ (if (null? m2-28162)
+ m1-28138
+ (append
+ m1-28138
+ m2-28162)))
+ (let ((m2-28170
+ (cdr w2-28137)))
+ (if (null? m2-28170)
+ s1-28139
+ (append
+ s1-28139
+ m2-28170))))))))
+ (module-28130
+ (vector-ref x-28096 3)))
+ (vector
+ 'syntax-object
+ expression-28128
+ wrap-28129
+ module-28130))
+ (if (null? x-28096)
+ x-28096
+ (vector
+ 'syntax-object
+ x-28096
+ w-26812
+ mod-26814)))))))
+ tmp-28083)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-26810)))))
+ (if (eqv? type-26807 'local-syntax-form)
+ (expand-local-syntax-4591
+ value-26808
+ e-26810
+ r-26811
+ w-26812
+ s-26813
+ mod-26814
+ expand-sequence-4581)
+ (if (eqv? type-26807 'eval-when-form)
+ (let ((tmp-28265
+ ($sc-dispatch
+ e-26810
+ '(_ each-any any . each-any))))
+ (if tmp-28265
+ (@apply
+ (lambda (x-28269 e1-28270 e2-28271)
+ (let ((when-list-28272
+ (parse-when-list-4584
+ e-26810
+ x-28269)))
+ (if (memq 'eval when-list-28272)
+ (expand-sequence-4581
+ (cons e1-28270 e2-28271)
+ r-26811
+ w-26812
+ s-26813
+ mod-26814)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 0)
+ #f))))
+ tmp-28265)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-26810)))
+ (if (if (eqv? type-26807 'define-form)
+ #t
+ (if (eqv? type-26807 'define-syntax-form)
+ #t
+ (eqv? type-26807
+ 'define-syntax-parameter-form)))
(syntax-violation
#f
- "reference to pattern variable outside syntax form"
- (let ((#{x 51107}#
+ "definition in expression context, where definitions are not allowed,"
+ (let ((x-28458
(begin
- (if (if (pair? #{e 49447}#)
- #{s 49450}#
+ (if (if (pair? form-26809)
+ s-26813
#f)
(set-source-properties!
- #{e 49447}#
- #{s 49450}#))
- #{e 49447}#)))
- (if (if (null? (car #{w 49449}#))
- (null? (cdr #{w 49449}#))
+ form-26809
+ s-26813))
+ form-26809)))
+ (if (if (null? (car w-26812))
+ (null? (cdr w-26812))
#f)
- #{x 51107}#
- (if (if (vector? #{x 51107}#)
- (if (= (vector-length #{x 51107}#)
- 4)
- (eq? (vector-ref #{x 51107}# 0)
+ x-28458
+ (if (if (vector? x-28458)
+ (if (= (vector-length x-28458) 4)
+ (eq? (vector-ref x-28458 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 51139}#
- (vector-ref #{x 51107}# 1))
- (#{wrap 51140}#
- (let ((#{w2 51148}#
+ (let ((expression-28490
+ (vector-ref x-28458 1))
+ (wrap-28491
+ (let ((w2-28499
(vector-ref
- #{x 51107}#
+ x-28458
2)))
- (let ((#{m1 51149}#
- (car #{w 49449}#))
- (#{s1 51150}#
- (cdr #{w 49449}#)))
- (if (null? #{m1 51149}#)
- (if (null? #{s1 51150}#)
- #{w2 51148}#
- (cons (car #{w2 51148}#)
- (let ((#{m2 51165}#
- (cdr #{w2 51148}#)))
- (if (null? #{m2 51165}#)
- #{s1 51150}#
+ (let ((m1-28500
+ (car w-26812))
+ (s1-28501
+ (cdr w-26812)))
+ (if (null? m1-28500)
+ (if (null? s1-28501)
+ w2-28499
+ (cons (car w2-28499)
+ (let ((m2-28516
+ (cdr w2-28499)))
+ (if (null? m2-28516)
+ s1-28501
(append
- #{s1 51150}#
- #{m2 51165}#)))))
- (cons (let ((#{m2 51173}#
- (car #{w2 51148}#)))
- (if (null? #{m2 51173}#)
- #{m1 51149}#
+ s1-28501
+ m2-28516)))))
+ (cons (let ((m2-28524
+ (car w2-28499)))
+ (if (null? m2-28524)
+ m1-28500
(append
- #{m1 51149}#
- #{m2 51173}#)))
- (let ((#{m2 51181}#
- (cdr #{w2 51148}#)))
- (if (null? #{m2 51181}#)
- #{s1 51150}#
+ m1-28500
+ m2-28524)))
+ (let ((m2-28532
+ (cdr w2-28499)))
+ (if (null? m2-28532)
+ s1-28501
(append
- #{s1 51150}#
- #{m2 51181}#))))))))
- (#{module 51141}#
- (vector-ref #{x 51107}# 3)))
+ s1-28501
+ m2-28532))))))))
+ (module-28492
+ (vector-ref x-28458 3)))
(vector
'syntax-object
- #{expression 51139}#
- #{wrap 51140}#
- #{module 51141}#))
- (if (null? #{x 51107}#)
- #{x 51107}#
+ expression-28490
+ wrap-28491
+ module-28492))
+ (if (null? x-28458)
+ x-28458
(vector
'syntax-object
- #{x 51107}#
- #{w 49449}#
- #{mod 49451}#))))))
- (if (eqv? #{type 49445}# 'displaced-lexical)
+ x-28458
+ w-26812
+ mod-26814))))))
+ (if (eqv? type-26807 'syntax)
(syntax-violation
#f
- "reference to identifier outside its scope"
- (let ((#{x 51208}#
+ "reference to pattern variable outside syntax form"
+ (let ((x-28559
(begin
- (if (if (pair? #{e 49447}#)
- #{s 49450}#
+ (if (if (pair? e-26810)
+ s-26813
#f)
(set-source-properties!
- #{e 49447}#
- #{s 49450}#))
- #{e 49447}#)))
- (if (if (null? (car #{w 49449}#))
- (null? (cdr #{w 49449}#))
+ e-26810
+ s-26813))
+ e-26810)))
+ (if (if (null? (car w-26812))
+ (null? (cdr w-26812))
#f)
- #{x 51208}#
- (if (if (vector? #{x 51208}#)
- (if (= (vector-length
- #{x 51208}#)
+ x-28559
+ (if (if (vector? x-28559)
+ (if (= (vector-length x-28559)
4)
- (eq? (vector-ref
- #{x 51208}#
- 0)
+ (eq? (vector-ref x-28559 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 51240}#
- (vector-ref #{x 51208}# 1))
- (#{wrap 51241}#
- (let ((#{w2 51249}#
+ (let ((expression-28591
+ (vector-ref x-28559 1))
+ (wrap-28592
+ (let ((w2-28600
(vector-ref
- #{x 51208}#
+ x-28559
2)))
- (let ((#{m1 51250}#
- (car #{w 49449}#))
- (#{s1 51251}#
- (cdr #{w 49449}#)))
- (if (null? #{m1 51250}#)
- (if (null? #{s1 51251}#)
- #{w2 51249}#
- (cons (car #{w2 51249}#)
- (let ((#{m2 51266}#
- (cdr #{w2 51249}#)))
- (if (null? #{m2 51266}#)
- #{s1 51251}#
+ (let ((m1-28601
+ (car w-26812))
+ (s1-28602
+ (cdr w-26812)))
+ (if (null? m1-28601)
+ (if (null? s1-28602)
+ w2-28600
+ (cons (car w2-28600)
+ (let ((m2-28617
+ (cdr w2-28600)))
+ (if (null? m2-28617)
+ s1-28602
(append
- #{s1 51251}#
- #{m2 51266}#)))))
- (cons (let ((#{m2 51274}#
- (car #{w2 51249}#)))
- (if (null? #{m2 51274}#)
- #{m1 51250}#
+ s1-28602
+ m2-28617)))))
+ (cons (let ((m2-28625
+ (car w2-28600)))
+ (if (null? m2-28625)
+ m1-28601
(append
- #{m1 51250}#
- #{m2 51274}#)))
- (let ((#{m2 51282}#
- (cdr #{w2 51249}#)))
- (if (null? #{m2 51282}#)
- #{s1 51251}#
+ m1-28601
+ m2-28625)))
+ (let ((m2-28633
+ (cdr w2-28600)))
+ (if (null? m2-28633)
+ s1-28602
(append
- #{s1 51251}#
- #{m2 51282}#))))))))
- (#{module 51242}#
- (vector-ref #{x 51208}# 3)))
+ s1-28602
+ m2-28633))))))))
+ (module-28593
+ (vector-ref x-28559 3)))
(vector
'syntax-object
- #{expression 51240}#
- #{wrap 51241}#
- #{module 51242}#))
- (if (null? #{x 51208}#)
- #{x 51208}#
+ expression-28591
+ wrap-28592
+ module-28593))
+ (if (null? x-28559)
+ x-28559
(vector
'syntax-object
- #{x 51208}#
- #{w 49449}#
- #{mod 49451}#))))))
- (syntax-violation
- #f
- "unexpected syntax"
- (let ((#{x 51306}#
- (begin
- (if (if (pair? #{e 49447}#)
- #{s 49450}#
- #f)
- (set-source-properties!
- #{e 49447}#
- #{s 49450}#))
- #{e 49447}#)))
- (if (if (null? (car #{w 49449}#))
- (null? (cdr #{w 49449}#))
- #f)
- #{x 51306}#
- (if (if (vector? #{x 51306}#)
- (if (= (vector-length
- #{x 51306}#)
- 4)
- (eq? (vector-ref
- #{x 51306}#
- 0)
- 'syntax-object)
+ x-28559
+ w-26812
+ mod-26814))))))
+ (if (eqv? type-26807 'displaced-lexical)
+ (syntax-violation
+ #f
+ "reference to identifier outside its scope"
+ (let ((x-28660
+ (begin
+ (if (if (pair? e-26810)
+ s-26813
+ #f)
+ (set-source-properties!
+ e-26810
+ s-26813))
+ e-26810)))
+ (if (if (null? (car w-26812))
+ (null? (cdr w-26812))
+ #f)
+ x-28660
+ (if (if (vector? x-28660)
+ (if (= (vector-length x-28660)
+ 4)
+ (eq? (vector-ref x-28660 0)
+ 'syntax-object)
+ #f)
#f)
+ (let ((expression-28692
+ (vector-ref x-28660 1))
+ (wrap-28693
+ (let ((w2-28701
+ (vector-ref
+ x-28660
+ 2)))
+ (let ((m1-28702
+ (car w-26812))
+ (s1-28703
+ (cdr w-26812)))
+ (if (null? m1-28702)
+ (if (null? s1-28703)
+ w2-28701
+ (cons (car w2-28701)
+ (let ((m2-28718
+ (cdr w2-28701)))
+ (if (null? m2-28718)
+ s1-28703
+ (append
+ s1-28703
+ m2-28718)))))
+ (cons (let ((m2-28726
+ (car w2-28701)))
+ (if (null? m2-28726)
+ m1-28702
+ (append
+ m1-28702
+ m2-28726)))
+ (let ((m2-28734
+ (cdr w2-28701)))
+ (if (null? m2-28734)
+ s1-28703
+ (append
+ s1-28703
+ m2-28734))))))))
+ (module-28694
+ (vector-ref x-28660 3)))
+ (vector
+ 'syntax-object
+ expression-28692
+ wrap-28693
+ module-28694))
+ (if (null? x-28660)
+ x-28660
+ (vector
+ 'syntax-object
+ x-28660
+ w-26812
+ mod-26814))))))
+ (syntax-violation
+ #f
+ "unexpected syntax"
+ (let ((x-28758
+ (begin
+ (if (if (pair? e-26810)
+ s-26813
+ #f)
+ (set-source-properties!
+ e-26810
+ s-26813))
+ e-26810)))
+ (if (if (null? (car w-26812))
+ (null? (cdr w-26812))
#f)
- (let ((#{expression 51338}#
- (vector-ref #{x 51306}# 1))
- (#{wrap 51339}#
- (let ((#{w2 51347}#
- (vector-ref
- #{x 51306}#
- 2)))
- (let ((#{m1 51348}#
- (car #{w 49449}#))
- (#{s1 51349}#
- (cdr #{w 49449}#)))
- (if (null? #{m1 51348}#)
- (if (null? #{s1 51349}#)
- #{w2 51347}#
- (cons (car #{w2 51347}#)
- (let ((#{m2 51364}#
- (cdr #{w2 51347}#)))
- (if (null? #{m2 51364}#)
- #{s1 51349}#
+ x-28758
+ (if (if (vector? x-28758)
+ (if (= (vector-length x-28758)
+ 4)
+ (eq? (vector-ref x-28758 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-28790
+ (vector-ref x-28758 1))
+ (wrap-28791
+ (let ((w2-28799
+ (vector-ref
+ x-28758
+ 2)))
+ (let ((m1-28800
+ (car w-26812))
+ (s1-28801
+ (cdr w-26812)))
+ (if (null? m1-28800)
+ (if (null? s1-28801)
+ w2-28799
+ (cons (car w2-28799)
+ (let ((m2-28816
+ (cdr w2-28799)))
+ (if (null? m2-28816)
+ s1-28801
+ (append
+ s1-28801
+ m2-28816)))))
+ (cons (let ((m2-28824
+ (car w2-28799)))
+ (if (null? m2-28824)
+ m1-28800
(append
- #{s1 51349}#
- #{m2 51364}#)))))
- (cons (let ((#{m2 51372}#
- (car #{w2 51347}#)))
- (if (null? #{m2 51372}#)
- #{m1 51348}#
- (append
- #{m1 51348}#
- #{m2 51372}#)))
- (let ((#{m2 51380}#
- (cdr #{w2 51347}#)))
- (if (null? #{m2 51380}#)
- #{s1 51349}#
- (append
- #{s1 51349}#
- #{m2 51380}#))))))))
- (#{module 51340}#
- (vector-ref #{x 51306}# 3)))
- (vector
- 'syntax-object
- #{expression 51338}#
- #{wrap 51339}#
- #{module 51340}#))
- (if (null? #{x 51306}#)
- #{x 51306}#
- (vector
- 'syntax-object
- #{x 51306}#
- #{w 49449}#
- #{mod 49451}#))))))))))))))))))))))
- (#{expand-call 28273}#
- (lambda (#{x 51395}#
- #{e 51396}#
- #{r 51397}#
- #{w 51398}#
- #{s 51399}#
- #{mod 51400}#)
- (let ((#{tmp 51402}#
- ($sc-dispatch #{e 51396}# '(any . each-any))))
- (if #{tmp 51402}#
- (@apply
- (lambda (#{e0 51406}# #{e1 51407}#)
- (#{build-call 28205}#
- #{s 51399}#
- #{x 51395}#
- (map (lambda (#{e 51495}#)
- (#{expand 28271}#
- #{e 51495}#
- #{r 51397}#
- #{w 51398}#
- #{mod 51400}#))
- #{e1 51407}#)))
- #{tmp 51402}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 51396}#)))))
- (#{expand-macro 28274}#
- (lambda (#{p 51579}#
- #{e 51580}#
- #{r 51581}#
- #{w 51582}#
- #{s 51583}#
- #{rib 51584}#
- #{mod 51585}#)
- (letrec*
- ((#{rebuild-macro-output 51586}#
- (lambda (#{x 51693}# #{m 51694}#)
- (if (pair? #{x 51693}#)
- (let ((#{e 51698}#
- (cons (#{rebuild-macro-output 51586}#
- (car #{x 51693}#)
- #{m 51694}#)
- (#{rebuild-macro-output 51586}#
- (cdr #{x 51693}#)
- #{m 51694}#))))
- (begin
- (if (if (pair? #{e 51698}#) #{s 51583}# #f)
- (set-source-properties! #{e 51698}# #{s 51583}#))
- #{e 51698}#))
- (if (if (vector? #{x 51693}#)
- (if (= (vector-length #{x 51693}#) 4)
- (eq? (vector-ref #{x 51693}# 0) 'syntax-object)
+ m1-28800
+ m2-28824)))
+ (let ((m2-28832
+ (cdr w2-28799)))
+ (if (null? m2-28832)
+ s1-28801
+ (append
+ s1-28801
+ m2-28832))))))))
+ (module-28792
+ (vector-ref x-28758 3)))
+ (vector
+ 'syntax-object
+ expression-28790
+ wrap-28791
+ module-28792))
+ (if (null? x-28758)
+ x-28758
+ (vector
+ 'syntax-object
+ x-28758
+ w-26812
+ mod-26814))))))))))))))))))))))
+ (expand-call-4588
+ (lambda (x-28847
+ e-28848
+ r-28849
+ w-28850
+ s-28851
+ mod-28852)
+ (let ((tmp-28854
+ ($sc-dispatch e-28848 '(any . each-any))))
+ (if tmp-28854
+ (@apply
+ (lambda (e0-28858 e1-28859)
+ (build-call-4517
+ s-28851
+ x-28847
+ (map (lambda (e-28947)
+ (expand-4586 e-28947 r-28849 w-28850 mod-28852))
+ e1-28859)))
+ tmp-28854)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-28848)))))
+ (expand-macro-4589
+ (lambda (p-29031
+ e-29032
+ r-29033
+ w-29034
+ s-29035
+ rib-29036
+ mod-29037)
+ (letrec*
+ ((rebuild-macro-output-29038
+ (lambda (x-29147 m-29148)
+ (if (pair? x-29147)
+ (let ((e-29152
+ (cons (rebuild-macro-output-29038
+ (car x-29147)
+ m-29148)
+ (rebuild-macro-output-29038
+ (cdr x-29147)
+ m-29148))))
+ (begin
+ (if (if (pair? e-29152) s-29035 #f)
+ (set-source-properties! e-29152 s-29035))
+ e-29152))
+ (if (if (vector? x-29147)
+ (if (= (vector-length x-29147) 4)
+ (eq? (vector-ref x-29147 0) 'syntax-object)
+ #f)
#f)
- #f)
- (let ((#{w 51714}# (vector-ref #{x 51693}# 2)))
- (let ((#{ms 51715}# (car #{w 51714}#))
- (#{s 51716}# (cdr #{w 51714}#)))
- (if (if (pair? #{ms 51715}#)
- (eq? (car #{ms 51715}#) #f)
- #f)
- (let ((#{expression 51724}# (vector-ref #{x 51693}# 1))
- (#{wrap 51725}#
- (cons (cdr #{ms 51715}#)
- (if #{rib 51584}#
- (cons #{rib 51584}# (cdr #{s 51716}#))
- (cdr #{s 51716}#))))
- (#{module 51726}# (vector-ref #{x 51693}# 3)))
- (vector
- 'syntax-object
- #{expression 51724}#
- #{wrap 51725}#
- #{module 51726}#))
- (let ((#{expression 51736}#
- (let ((#{e 51741}# (vector-ref #{x 51693}# 1)))
- (begin
- (if (if (pair? #{e 51741}#) #{s 51716}# #f)
- (set-source-properties!
- #{e 51741}#
- #{s 51716}#))
- #{e 51741}#)))
- (#{wrap 51737}#
- (cons (cons #{m 51694}# #{ms 51715}#)
- (if #{rib 51584}#
- (cons #{rib 51584}#
- (cons 'shift #{s 51716}#))
- (cons 'shift #{s 51716}#))))
- (#{module 51738}# (vector-ref #{x 51693}# 3)))
- (vector
- 'syntax-object
- #{expression 51736}#
- #{wrap 51737}#
- #{module 51738}#)))))
- (if (vector? #{x 51693}#)
- (let ((#{n 51753}# (vector-length #{x 51693}#)))
- (let ((#{v 51754}#
- (let ((#{e 51820}# (make-vector #{n 51753}#)))
- (begin
- (if (if (pair? #{e 51820}#) #{x 51693}# #f)
- (set-source-properties!
- #{e 51820}#
- #{x 51693}#))
- #{e 51820}#))))
- (letrec*
- ((#{loop 51755}#
- (lambda (#{i 51816}#)
- (if (= #{i 51816}# #{n 51753}#)
- #{v 51754}#
- (begin
- (vector-set!
- #{v 51754}#
- #{i 51816}#
- (#{rebuild-macro-output 51586}#
- (vector-ref #{x 51693}# #{i 51816}#)
- #{m 51694}#))
- (#{loop 51755}# (#{1+}# #{i 51816}#)))))))
- (#{loop 51755}# 0))))
- (if (symbol? #{x 51693}#)
- (syntax-violation
- #f
- "encountered raw symbol in macro output"
- (let ((#{s 51831}# (cdr #{w 51582}#)))
- (let ((#{x 51835}#
+ (let ((w-29168 (vector-ref x-29147 2)))
+ (let ((ms-29169 (car w-29168))
+ (s-29170 (cdr w-29168)))
+ (if (if (pair? ms-29169) (eq? (car ms-29169) #f) #f)
+ (let ((expression-29178 (vector-ref x-29147 1))
+ (wrap-29179
+ (cons (cdr ms-29169)
+ (if rib-29036
+ (cons rib-29036 (cdr s-29170))
+ (cdr s-29170))))
+ (module-29180 (vector-ref x-29147 3)))
+ (vector
+ 'syntax-object
+ expression-29178
+ wrap-29179
+ module-29180))
+ (let ((expression-29190
+ (let ((e-29195 (vector-ref x-29147 1)))
+ (begin
+ (if (if (pair? e-29195) s-29170 #f)
+ (set-source-properties!
+ e-29195
+ s-29170))
+ e-29195)))
+ (wrap-29191
+ (cons (cons m-29148 ms-29169)
+ (if rib-29036
+ (cons rib-29036
+ (cons 'shift s-29170))
+ (cons 'shift s-29170))))
+ (module-29192 (vector-ref x-29147 3)))
+ (vector
+ 'syntax-object
+ expression-29190
+ wrap-29191
+ module-29192)))))
+ (if (vector? x-29147)
+ (let ((n-29207 (vector-length x-29147)))
+ (let ((v-29208
+ (let ((e-29274 (make-vector n-29207)))
(begin
- (if (if (pair? #{e 51580}#) #{s 51831}# #f)
- (set-source-properties!
- #{e 51580}#
- #{s 51831}#))
- #{e 51580}#)))
- (if (if (null? (car #{w 51582}#))
- (null? (cdr #{w 51582}#))
- #f)
- #{x 51835}#
- (if (if (vector? #{x 51835}#)
- (if (= (vector-length #{x 51835}#) 4)
- (eq? (vector-ref #{x 51835}# 0)
- 'syntax-object)
- #f)
+ (if (if (pair? e-29274) x-29147 #f)
+ (set-source-properties! e-29274 x-29147))
+ e-29274))))
+ (letrec*
+ ((loop-29209
+ (lambda (i-29270)
+ (if (= i-29270 n-29207)
+ v-29208
+ (begin
+ (vector-set!
+ v-29208
+ i-29270
+ (rebuild-macro-output-29038
+ (vector-ref x-29147 i-29270)
+ m-29148))
+ (loop-29209 (#{1+}# i-29270)))))))
+ (loop-29209 0))))
+ (if (symbol? x-29147)
+ (syntax-violation
+ #f
+ "encountered raw symbol in macro output"
+ (let ((s-29285 (cdr w-29034)))
+ (let ((x-29289
+ (begin
+ (if (if (pair? e-29032) s-29285 #f)
+ (set-source-properties!
+ e-29032
+ s-29285))
+ e-29032)))
+ (if (if (null? (car w-29034))
+ (null? (cdr w-29034))
#f)
- (let ((#{expression 51867}#
- (vector-ref #{x 51835}# 1))
- (#{wrap 51868}#
- (let ((#{w2 51876}#
- (vector-ref #{x 51835}# 2)))
- (let ((#{m1 51877}#
- (car #{w 51582}#))
- (#{s1 51878}#
- (cdr #{w 51582}#)))
- (if (null? #{m1 51877}#)
- (if (null? #{s1 51878}#)
- #{w2 51876}#
- (cons (car #{w2 51876}#)
- (let ((#{m2 51893}#
- (cdr #{w2 51876}#)))
- (if (null? #{m2 51893}#)
- #{s1 51878}#
+ x-29289
+ (if (if (vector? x-29289)
+ (if (= (vector-length x-29289) 4)
+ (eq? (vector-ref x-29289 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-29321
+ (vector-ref x-29289 1))
+ (wrap-29322
+ (let ((w2-29330
+ (vector-ref x-29289 2)))
+ (let ((m1-29331 (car w-29034))
+ (s1-29332 (cdr w-29034)))
+ (if (null? m1-29331)
+ (if (null? s1-29332)
+ w2-29330
+ (cons (car w2-29330)
+ (let ((m2-29347
+ (cdr w2-29330)))
+ (if (null? m2-29347)
+ s1-29332
+ (append
+ s1-29332
+ m2-29347)))))
+ (cons (let ((m2-29355
+ (car w2-29330)))
+ (if (null? m2-29355)
+ m1-29331
(append
- #{s1 51878}#
- #{m2 51893}#)))))
- (cons (let ((#{m2 51901}#
- (car #{w2 51876}#)))
- (if (null? #{m2 51901}#)
- #{m1 51877}#
- (append
- #{m1 51877}#
- #{m2 51901}#)))
- (let ((#{m2 51909}#
- (cdr #{w2 51876}#)))
- (if (null? #{m2 51909}#)
- #{s1 51878}#
- (append
- #{s1 51878}#
- #{m2 51909}#))))))))
- (#{module 51869}#
- (vector-ref #{x 51835}# 3)))
- (vector
- 'syntax-object
- #{expression 51867}#
- #{wrap 51868}#
- #{module 51869}#))
- (if (null? #{x 51835}#)
- #{x 51835}#
- (vector
- 'syntax-object
- #{x 51835}#
- #{w 51582}#
- #{mod 51585}#))))))
- #{x 51693}#)
- (begin
- (if (if (pair? #{x 51693}#) #{s 51583}# #f)
- (set-source-properties! #{x 51693}# #{s 51583}#))
- #{x 51693}#))))))))
- (#{rebuild-macro-output 51586}#
- (#{p 51579}#
- (let ((#{w 51593}#
- (cons (cons #f (car #{w 51582}#))
- (cons 'shift (cdr #{w 51582}#)))))
- (let ((#{x 51598}#
- (begin
- (if (if (pair? #{e 51580}#) #{s 51583}# #f)
- (set-source-properties! #{e 51580}# #{s 51583}#))
- #{e 51580}#)))
- (if (if (null? (car #{w 51593}#))
- (null? (cdr #{w 51593}#))
- #f)
- #{x 51598}#
- (if (if (vector? #{x 51598}#)
- (if (= (vector-length #{x 51598}#) 4)
- (eq? (vector-ref #{x 51598}# 0) 'syntax-object)
+ m1-29331
+ m2-29355)))
+ (let ((m2-29363
+ (cdr w2-29330)))
+ (if (null? m2-29363)
+ s1-29332
+ (append
+ s1-29332
+ m2-29363))))))))
+ (module-29323 (vector-ref x-29289 3)))
+ (vector
+ 'syntax-object
+ expression-29321
+ wrap-29322
+ module-29323))
+ (if (null? x-29289)
+ x-29289
+ (vector
+ 'syntax-object
+ x-29289
+ w-29034
+ mod-29037))))))
+ x-29147)
+ (begin
+ (if (if (pair? x-29147) s-29035 #f)
+ (set-source-properties! x-29147 s-29035))
+ x-29147))))))))
+ (with-fluids
+ ((transformer-environment-4572
+ (lambda (k-29039)
+ (k-29039
+ e-29032
+ r-29033
+ w-29034
+ s-29035
+ rib-29036
+ mod-29037))))
+ (rebuild-macro-output-29038
+ (p-29031
+ (let ((w-29046
+ (cons (cons #f (car w-29034))
+ (cons 'shift (cdr w-29034)))))
+ (let ((x-29051
+ (begin
+ (if (if (pair? e-29032) s-29035 #f)
+ (set-source-properties! e-29032 s-29035))
+ e-29032)))
+ (if (if (null? (car w-29046))
+ (null? (cdr w-29046))
#f)
- #f)
- (let ((#{expression 51636}# (vector-ref #{x 51598}# 1))
- (#{wrap 51637}#
- (let ((#{w2 51645}# (vector-ref #{x 51598}# 2)))
- (let ((#{m1 51646}# (car #{w 51593}#))
- (#{s1 51647}# (cdr #{w 51593}#)))
- (if (null? #{m1 51646}#)
- (if (null? #{s1 51647}#)
- #{w2 51645}#
- (cons (car #{w2 51645}#)
- (let ((#{m2 51662}#
- (cdr #{w2 51645}#)))
- (if (null? #{m2 51662}#)
- #{s1 51647}#
- (append
- #{s1 51647}#
- #{m2 51662}#)))))
- (cons (let ((#{m2 51670}#
- (car #{w2 51645}#)))
- (if (null? #{m2 51670}#)
- #{m1 51646}#
- (append
- #{m1 51646}#
- #{m2 51670}#)))
- (let ((#{m2 51678}#
- (cdr #{w2 51645}#)))
- (if (null? #{m2 51678}#)
- #{s1 51647}#
- (append
- #{s1 51647}#
- #{m2 51678}#))))))))
- (#{module 51638}# (vector-ref #{x 51598}# 3)))
- (vector
- 'syntax-object
- #{expression 51636}#
- #{wrap 51637}#
- #{module 51638}#))
- (if (null? #{x 51598}#)
- #{x 51598}#
- (vector
- 'syntax-object
- #{x 51598}#
- #{w 51593}#
- #{mod 51585}#)))))))
- (gensym "m")))))
- (#{expand-body 28275}#
- (lambda (#{body 51939}#
- #{outer-form 51940}#
- #{r 51941}#
- #{w 51942}#
- #{mod 51943}#)
- (let ((#{r 51944}#
- (cons '("placeholder" placeholder) #{r 51941}#)))
- (let ((#{ribcage 51945}# (vector 'ribcage '() '() '())))
- (let ((#{w 51946}#
- (cons (car #{w 51942}#)
- (cons #{ribcage 51945}# (cdr #{w 51942}#)))))
- (letrec*
- ((#{parse 51947}#
- (lambda (#{body 52055}#
- #{ids 52056}#
- #{labels 52057}#
- #{var-ids 52058}#
- #{vars 52059}#
- #{vals 52060}#
- #{bindings 52061}#)
- (if (null? #{body 52055}#)
- (syntax-violation
- #f
- "no expressions in body"
- #{outer-form 51940}#)
- (let ((#{e 52062}# (cdr (car #{body 52055}#)))
- (#{er 52063}# (car (car #{body 52055}#))))
- (call-with-values
- (lambda ()
- (#{syntax-type 28270}#
- #{e 52062}#
- #{er 52063}#
- '(())
- (#{source-annotation 28232}# #{er 52063}#)
- #{ribcage 51945}#
- #{mod 51943}#
- #f))
- (lambda (#{type 52251}#
- #{value 52252}#
- #{e 52253}#
- #{w 52254}#
- #{s 52255}#
- #{mod 52256}#)
- (if (eqv? #{type 52251}# 'define-form)
- (let ((#{id 52260}#
- (if (if (null? (car #{w 52254}#))
- (null? (cdr #{w 52254}#))
- #f)
- #{value 52252}#
- (if (if (vector? #{value 52252}#)
- (if (= (vector-length
- #{value 52252}#)
- 4)
- (eq? (vector-ref
- #{value 52252}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 52305}#
- (vector-ref
- #{value 52252}#
- 1))
- (#{wrap 52306}#
- (let ((#{w2 52316}#
- (vector-ref
- #{value 52252}#
- 2)))
- (let ((#{m1 52317}#
- (car #{w 52254}#))
- (#{s1 52318}#
- (cdr #{w 52254}#)))
- (if (null? #{m1 52317}#)
- (if (null? #{s1 52318}#)
- #{w2 52316}#
- (cons (car #{w2 52316}#)
- (let ((#{m2 52335}#
- (cdr #{w2 52316}#)))
- (if (null? #{m2 52335}#)
- #{s1 52318}#
- (append
- #{s1 52318}#
- #{m2 52335}#)))))
- (cons (let ((#{m2 52343}#
- (car #{w2 52316}#)))
- (if (null? #{m2 52343}#)
- #{m1 52317}#
- (append
- #{m1 52317}#
- #{m2 52343}#)))
- (let ((#{m2 52351}#
- (cdr #{w2 52316}#)))
- (if (null? #{m2 52351}#)
- #{s1 52318}#
- (append
- #{s1 52318}#
- #{m2 52351}#))))))))
- (#{module 52307}#
- (vector-ref
- #{value 52252}#
- 3)))
- (vector
- 'syntax-object
- #{expression 52305}#
- #{wrap 52306}#
- #{module 52307}#))
- (if (null? #{value 52252}#)
- #{value 52252}#
- (vector
- 'syntax-object
- #{value 52252}#
- #{w 52254}#
- #{mod 52256}#)))))
- (#{label 52261}#
- (symbol->string (gensym "i"))))
- (let ((#{var 52262}#
- (let ((#{id 52412}#
- (if (if (vector? #{id 52260}#)
- (if (= (vector-length
- #{id 52260}#)
- 4)
- (eq? (vector-ref
- #{id 52260}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (vector-ref #{id 52260}# 1)
- #{id 52260}#)))
- (gensym
- (string-append
- (symbol->string #{id 52412}#)
- " ")))))
- (begin
- (begin
- (let ((#{update 52271}#
- (cons (vector-ref #{id 52260}# 1)
- (vector-ref
- #{ribcage 51945}#
- 1))))
- (vector-set!
- #{ribcage 51945}#
- 1
- #{update 52271}#))
- (let ((#{update 52383}#
- (cons (car (vector-ref
- #{id 52260}#
- 2))
- (vector-ref
- #{ribcage 51945}#
- 2))))
- (vector-set!
- #{ribcage 51945}#
- 2
- #{update 52383}#))
- (let ((#{update 52398}#
- (cons #{label 52261}#
- (vector-ref
- #{ribcage 51945}#
- 3))))
- (vector-set!
- #{ribcage 51945}#
- 3
- #{update 52398}#)))
- (#{parse 51947}#
- (cdr #{body 52055}#)
- (cons #{id 52260}# #{ids 52056}#)
- (cons #{label 52261}# #{labels 52057}#)
- (cons #{id 52260}# #{var-ids 52058}#)
- (cons #{var 52262}# #{vars 52059}#)
- (cons (cons #{er 52063}#
- (if (if (null? (car #{w 52254}#))
- (null? (cdr #{w 52254}#))
- #f)
- #{e 52253}#
- (if (if (vector?
- #{e 52253}#)
- (if (= (vector-length
- #{e 52253}#)
- 4)
- (eq? (vector-ref
- #{e 52253}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 52464}#
- (vector-ref
- #{e 52253}#
- 1))
- (#{wrap 52465}#
- (let ((#{w2 52475}#
- (vector-ref
- #{e 52253}#
- 2)))
- (let ((#{m1 52476}#
- (car #{w 52254}#))
- (#{s1 52477}#
- (cdr #{w 52254}#)))
- (if (null? #{m1 52476}#)
- (if (null? #{s1 52477}#)
- #{w2 52475}#
- (cons (car #{w2 52475}#)
- (let ((#{m2 52494}#
- (cdr #{w2 52475}#)))
- (if (null? #{m2 52494}#)
- #{s1 52477}#
- (append
- #{s1 52477}#
- #{m2 52494}#)))))
- (cons (let ((#{m2 52502}#
- (car #{w2 52475}#)))
- (if (null? #{m2 52502}#)
- #{m1 52476}#
- (append
- #{m1 52476}#
- #{m2 52502}#)))
- (let ((#{m2 52510}#
- (cdr #{w2 52475}#)))
- (if (null? #{m2 52510}#)
- #{s1 52477}#
- (append
- #{s1 52477}#
- #{m2 52510}#))))))))
- (#{module 52466}#
- (vector-ref
- #{e 52253}#
- 3)))
- (vector
- 'syntax-object
- #{expression 52464}#
- #{wrap 52465}#
- #{module 52466}#))
- (if (null? #{e 52253}#)
- #{e 52253}#
- (vector
- 'syntax-object
- #{e 52253}#
- #{w 52254}#
- #{mod 52256}#)))))
- #{vals 52060}#)
- (cons (cons 'lexical #{var 52262}#)
- #{bindings 52061}#)))))
- (if (if (eqv? #{type 52251}# 'define-syntax-form)
- #t
- (eqv? #{type 52251}#
- 'define-syntax-parameter-form))
- (let ((#{id 52541}#
- (if (if (null? (car #{w 52254}#))
- (null? (cdr #{w 52254}#))
+ x-29051
+ (if (if (vector? x-29051)
+ (if (= (vector-length x-29051) 4)
+ (eq? (vector-ref x-29051 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-29090 (vector-ref x-29051 1))
+ (wrap-29091
+ (let ((w2-29099 (vector-ref x-29051 2)))
+ (let ((m1-29100 (car w-29046))
+ (s1-29101 (cdr w-29046)))
+ (if (null? m1-29100)
+ (if (null? s1-29101)
+ w2-29099
+ (cons (car w2-29099)
+ (let ((m2-29116 (cdr w2-29099)))
+ (if (null? m2-29116)
+ s1-29101
+ (append
+ s1-29101
+ m2-29116)))))
+ (cons (let ((m2-29124 (car w2-29099)))
+ (if (null? m2-29124)
+ m1-29100
+ (append m1-29100 m2-29124)))
+ (let ((m2-29132 (cdr w2-29099)))
+ (if (null? m2-29132)
+ s1-29101
+ (append
+ s1-29101
+ m2-29132))))))))
+ (module-29092 (vector-ref x-29051 3)))
+ (vector
+ 'syntax-object
+ expression-29090
+ wrap-29091
+ module-29092))
+ (if (null? x-29051)
+ x-29051
+ (vector
+ 'syntax-object
+ x-29051
+ w-29046
+ mod-29037)))))))
+ (gensym
+ (string-append "m-" (session-id-4511) "-")))))))
+ (expand-body-4590
+ (lambda (body-29393
+ outer-form-29394
+ r-29395
+ w-29396
+ mod-29397)
+ (let ((r-29398
+ (cons '("placeholder" placeholder) r-29395)))
+ (let ((ribcage-29399 (vector 'ribcage '() '() '())))
+ (let ((w-29400
+ (cons (car w-29396)
+ (cons ribcage-29399 (cdr w-29396)))))
+ (letrec*
+ ((parse-29401
+ (lambda (body-29509
+ ids-29510
+ labels-29511
+ var-ids-29512
+ vars-29513
+ vals-29514
+ bindings-29515)
+ (if (null? body-29509)
+ (syntax-violation
+ #f
+ "no expressions in body"
+ outer-form-29394)
+ (let ((e-29516 (cdr (car body-29509)))
+ (er-29517 (car (car body-29509))))
+ (call-with-values
+ (lambda ()
+ (syntax-type-4585
+ e-29516
+ er-29517
+ '(())
+ (source-annotation-4544 er-29517)
+ ribcage-29399
+ mod-29397
+ #f))
+ (lambda (type-29705
+ value-29706
+ form-29707
+ e-29708
+ w-29709
+ s-29710
+ mod-29711)
+ (if (eqv? type-29705 'define-form)
+ (let ((id-29715
+ (if (if (null? (car w-29709))
+ (null? (cdr w-29709))
#f)
- #{value 52252}#
- (if (if (vector? #{value 52252}#)
+ value-29706
+ (if (if (vector? value-29706)
(if (= (vector-length
- #{value 52252}#)
+ value-29706)
4)
(eq? (vector-ref
- #{value 52252}#
+ value-29706
0)
'syntax-object)
#f)
#f)
- (let ((#{expression 52585}#
- (vector-ref
- #{value 52252}#
- 1))
- (#{wrap 52586}#
- (let ((#{w2 52596}#
+ (let ((expression-29760
+ (vector-ref value-29706 1))
+ (wrap-29761
+ (let ((w2-29771
(vector-ref
- #{value 52252}#
+ value-29706
2)))
- (let ((#{m1 52597}#
- (car #{w 52254}#))
- (#{s1 52598}#
- (cdr #{w 52254}#)))
- (if (null? #{m1 52597}#)
- (if (null? #{s1 52598}#)
- #{w2 52596}#
- (cons (car #{w2 52596}#)
- (let ((#{m2 52615}#
- (cdr #{w2 52596}#)))
- (if (null? #{m2 52615}#)
- #{s1 52598}#
+ (let ((m1-29772
+ (car w-29709))
+ (s1-29773
+ (cdr w-29709)))
+ (if (null? m1-29772)
+ (if (null? s1-29773)
+ w2-29771
+ (cons (car w2-29771)
+ (let ((m2-29790
+ (cdr w2-29771)))
+ (if (null? m2-29790)
+ s1-29773
(append
- #{s1 52598}#
- #{m2 52615}#)))))
- (cons (let ((#{m2 52623}#
- (car #{w2 52596}#)))
- (if (null? #{m2 52623}#)
- #{m1 52597}#
+ s1-29773
+ m2-29790)))))
+ (cons (let ((m2-29798
+ (car w2-29771)))
+ (if (null? m2-29798)
+ m1-29772
(append
- #{m1 52597}#
- #{m2 52623}#)))
- (let ((#{m2 52631}#
- (cdr #{w2 52596}#)))
- (if (null? #{m2 52631}#)
- #{s1 52598}#
+ m1-29772
+ m2-29798)))
+ (let ((m2-29806
+ (cdr w2-29771)))
+ (if (null? m2-29806)
+ s1-29773
(append
- #{s1 52598}#
- #{m2 52631}#))))))))
- (#{module 52587}#
+ s1-29773
+ m2-29806))))))))
+ (module-29762
(vector-ref
- #{value 52252}#
+ value-29706
3)))
(vector
'syntax-object
- #{expression 52585}#
- #{wrap 52586}#
- #{module 52587}#))
- (if (null? #{value 52252}#)
- #{value 52252}#
+ expression-29760
+ wrap-29761
+ module-29762))
+ (if (null? value-29706)
+ value-29706
(vector
'syntax-object
- #{value 52252}#
- #{w 52254}#
- #{mod 52256}#)))))
- (#{label 52542}#
- (symbol->string (gensym "i"))))
- (begin
+ value-29706
+ w-29709
+ mod-29711)))))
+ (label-29716
+ (string-append
+ "l-"
+ (session-id-4511)
+ (symbol->string (gensym "-")))))
+ (let ((var-29717
+ (let ((id-29867
+ (if (if (vector? id-29715)
+ (if (= (vector-length
+ id-29715)
+ 4)
+ (eq? (vector-ref
+ id-29715
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (vector-ref id-29715 1)
+ id-29715)))
+ (gensym
+ (string-append
+ (symbol->string id-29867)
+ "-")))))
(begin
- (let ((#{update 52551}#
- (cons (vector-ref #{id 52541}# 1)
- (vector-ref
- #{ribcage 51945}#
- 1))))
- (vector-set!
- #{ribcage 51945}#
- 1
- #{update 52551}#))
- (let ((#{update 52663}#
- (cons (car (vector-ref
- #{id 52541}#
- 2))
- (vector-ref
- #{ribcage 51945}#
- 2))))
- (vector-set!
- #{ribcage 51945}#
- 2
- #{update 52663}#))
- (let ((#{update 52678}#
- (cons #{label 52542}#
- (vector-ref
- #{ribcage 51945}#
- 3))))
- (vector-set!
- #{ribcage 51945}#
- 3
- #{update 52678}#)))
- (#{parse 51947}#
- (cdr #{body 52055}#)
- (cons #{id 52541}# #{ids 52056}#)
- (cons #{label 52542}# #{labels 52057}#)
- #{var-ids 52058}#
- #{vars 52059}#
- #{vals 52060}#
- (cons (cons (if (eq? #{type 52251}#
- 'define-syntax-parameter-form)
- 'syntax-parameter
- 'macro)
- (cons #{er 52063}#
- (if (if (null? (car #{w 52254}#))
- (null? (cdr #{w 52254}#))
+ (begin
+ (let ((update-29726
+ (cons (vector-ref id-29715 1)
+ (vector-ref
+ ribcage-29399
+ 1))))
+ (vector-set!
+ ribcage-29399
+ 1
+ update-29726))
+ (let ((update-29838
+ (cons (car (vector-ref
+ id-29715
+ 2))
+ (vector-ref
+ ribcage-29399
+ 2))))
+ (vector-set!
+ ribcage-29399
+ 2
+ update-29838))
+ (let ((update-29853
+ (cons label-29716
+ (vector-ref
+ ribcage-29399
+ 3))))
+ (vector-set!
+ ribcage-29399
+ 3
+ update-29853)))
+ (parse-29401
+ (cdr body-29509)
+ (cons id-29715 ids-29510)
+ (cons label-29716 labels-29511)
+ (cons id-29715 var-ids-29512)
+ (cons var-29717 vars-29513)
+ (cons (cons er-29517
+ (if (if (null? (car w-29709))
+ (null? (cdr w-29709))
+ #f)
+ e-29708
+ (if (if (vector? e-29708)
+ (if (= (vector-length
+ e-29708)
+ 4)
+ (eq? (vector-ref
+ e-29708
+ 0)
+ 'syntax-object)
#f)
- #{e 52253}#
- (if (if (vector?
- #{e 52253}#)
- (if (= (vector-length
- #{e 52253}#)
- 4)
- (eq? (vector-ref
- #{e 52253}#
- 0)
- 'syntax-object)
- #f)
+ #f)
+ (let ((expression-29919
+ (vector-ref
+ e-29708
+ 1))
+ (wrap-29920
+ (let ((w2-29930
+ (vector-ref
+ e-29708
+ 2)))
+ (let ((m1-29931
+ (car w-29709))
+ (s1-29932
+ (cdr w-29709)))
+ (if (null? m1-29931)
+ (if (null? s1-29932)
+ w2-29930
+ (cons (car w2-29930)
+ (let ((m2-29949
+ (cdr w2-29930)))
+ (if (null? m2-29949)
+ s1-29932
+ (append
+ s1-29932
+ m2-29949)))))
+ (cons (let ((m2-29957
+ (car w2-29930)))
+ (if (null? m2-29957)
+ m1-29931
+ (append
+ m1-29931
+ m2-29957)))
+ (let ((m2-29965
+ (cdr w2-29930)))
+ (if (null? m2-29965)
+ s1-29932
+ (append
+ s1-29932
+ m2-29965))))))))
+ (module-29921
+ (vector-ref
+ e-29708
+ 3)))
+ (vector
+ 'syntax-object
+ expression-29919
+ wrap-29920
+ module-29921))
+ (if (null? e-29708)
+ e-29708
+ (vector
+ 'syntax-object
+ e-29708
+ w-29709
+ mod-29711)))))
+ vals-29514)
+ (cons (cons 'lexical var-29717)
+ bindings-29515)))))
+ (if (if (eqv? type-29705 'define-syntax-form)
+ #t
+ (eqv? type-29705
+ 'define-syntax-parameter-form))
+ (let ((id-29996
+ (if (if (null? (car w-29709))
+ (null? (cdr w-29709))
+ #f)
+ value-29706
+ (if (if (vector? value-29706)
+ (if (= (vector-length
+ value-29706)
+ 4)
+ (eq? (vector-ref
+ value-29706
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-30040
+ (vector-ref
+ value-29706
+ 1))
+ (wrap-30041
+ (let ((w2-30051
+ (vector-ref
+ value-29706
+ 2)))
+ (let ((m1-30052
+ (car w-29709))
+ (s1-30053
+ (cdr w-29709)))
+ (if (null? m1-30052)
+ (if (null? s1-30053)
+ w2-30051
+ (cons (car w2-30051)
+ (let ((m2-30070
+ (cdr w2-30051)))
+ (if (null? m2-30070)
+ s1-30053
+ (append
+ s1-30053
+ m2-30070)))))
+ (cons (let ((m2-30078
+ (car w2-30051)))
+ (if (null? m2-30078)
+ m1-30052
+ (append
+ m1-30052
+ m2-30078)))
+ (let ((m2-30086
+ (cdr w2-30051)))
+ (if (null? m2-30086)
+ s1-30053
+ (append
+ s1-30053
+ m2-30086))))))))
+ (module-30042
+ (vector-ref
+ value-29706
+ 3)))
+ (vector
+ 'syntax-object
+ expression-30040
+ wrap-30041
+ module-30042))
+ (if (null? value-29706)
+ value-29706
+ (vector
+ 'syntax-object
+ value-29706
+ w-29709
+ mod-29711)))))
+ (label-29997
+ (string-append
+ "l-"
+ (session-id-4511)
+ (symbol->string (gensym "-")))))
+ (begin
+ (begin
+ (let ((update-30006
+ (cons (vector-ref id-29996 1)
+ (vector-ref
+ ribcage-29399
+ 1))))
+ (vector-set!
+ ribcage-29399
+ 1
+ update-30006))
+ (let ((update-30118
+ (cons (car (vector-ref
+ id-29996
+ 2))
+ (vector-ref
+ ribcage-29399
+ 2))))
+ (vector-set!
+ ribcage-29399
+ 2
+ update-30118))
+ (let ((update-30133
+ (cons label-29997
+ (vector-ref
+ ribcage-29399
+ 3))))
+ (vector-set!
+ ribcage-29399
+ 3
+ update-30133)))
+ (parse-29401
+ (cdr body-29509)
+ (cons id-29996 ids-29510)
+ (cons label-29997 labels-29511)
+ var-ids-29512
+ vars-29513
+ vals-29514
+ (cons (cons (if (eq? type-29705
+ 'define-syntax-parameter-form)
+ 'syntax-parameter
+ 'macro)
+ (cons er-29517
+ (if (if (null? (car w-29709))
+ (null? (cdr w-29709))
#f)
- (let ((#{expression 52717}#
- (vector-ref
- #{e 52253}#
- 1))
- (#{wrap 52718}#
- (let ((#{w2 52728}#
- (vector-ref
- #{e 52253}#
- 2)))
- (let ((#{m1 52729}#
- (car #{w 52254}#))
- (#{s1 52730}#
- (cdr #{w 52254}#)))
- (if (null? #{m1 52729}#)
- (if (null? #{s1 52730}#)
- #{w2 52728}#
- (cons (car #{w2 52728}#)
- (let ((#{m2 52747}#
- (cdr #{w2 52728}#)))
- (if (null? #{m2 52747}#)
- #{s1 52730}#
+ e-29708
+ (if (if (vector?
+ e-29708)
+ (if (= (vector-length
+ e-29708)
+ 4)
+ (eq? (vector-ref
+ e-29708
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-30172
+ (vector-ref
+ e-29708
+ 1))
+ (wrap-30173
+ (let ((w2-30183
+ (vector-ref
+ e-29708
+ 2)))
+ (let ((m1-30184
+ (car w-29709))
+ (s1-30185
+ (cdr w-29709)))
+ (if (null? m1-30184)
+ (if (null? s1-30185)
+ w2-30183
+ (cons (car w2-30183)
+ (let ((m2-30202
+ (cdr w2-30183)))
+ (if (null? m2-30202)
+ s1-30185
+ (append
+ s1-30185
+ m2-30202)))))
+ (cons (let ((m2-30210
+ (car w2-30183)))
+ (if (null? m2-30210)
+ m1-30184
(append
- #{s1 52730}#
- #{m2 52747}#)))))
- (cons (let ((#{m2 52755}#
- (car #{w2 52728}#)))
- (if (null? #{m2 52755}#)
- #{m1 52729}#
- (append
- #{m1 52729}#
- #{m2 52755}#)))
- (let ((#{m2 52763}#
- (cdr #{w2 52728}#)))
- (if (null? #{m2 52763}#)
- #{s1 52730}#
- (append
- #{s1 52730}#
- #{m2 52763}#))))))))
- (#{module 52719}#
- (vector-ref
- #{e 52253}#
- 3)))
- (vector
- 'syntax-object
- #{expression 52717}#
- #{wrap 52718}#
- #{module 52719}#))
- (if (null? #{e 52253}#)
- #{e 52253}#
- (vector
- 'syntax-object
- #{e 52253}#
- #{w 52254}#
- #{mod 52256}#))))))
- #{bindings 52061}#))))
- (if (eqv? #{type 52251}# 'begin-form)
- (let ((#{tmp 52790}#
- ($sc-dispatch
- #{e 52253}#
- '(_ . each-any))))
- (if #{tmp 52790}#
- (@apply
- (lambda (#{e1 52794}#)
- (#{parse 51947}#
+ m1-30184
+ m2-30210)))
+ (let ((m2-30218
+ (cdr w2-30183)))
+ (if (null? m2-30218)
+ s1-30185
+ (append
+ s1-30185
+ m2-30218))))))))
+ (module-30174
+ (vector-ref
+ e-29708
+ 3)))
+ (vector
+ 'syntax-object
+ expression-30172
+ wrap-30173
+ module-30174))
+ (if (null? e-29708)
+ e-29708
+ (vector
+ 'syntax-object
+ e-29708
+ w-29709
+ mod-29711))))))
+ bindings-29515))))
+ (if (eqv? type-29705 'begin-form)
+ (let ((tmp-30245
+ ($sc-dispatch
+ e-29708
+ '(_ . each-any))))
+ (if tmp-30245
+ (@apply
+ (lambda (e1-30249)
+ (parse-29401
+ (letrec*
+ ((f-30250
+ (lambda (forms-30451)
+ (if (null? forms-30451)
+ (cdr body-29509)
+ (cons (cons er-29517
+ (let ((x-30455
+ (car forms-30451)))
+ (if (if (null? (car w-29709))
+ (null? (cdr w-29709))
+ #f)
+ x-30455
+ (if (if (vector?
+ x-30455)
+ (if (= (vector-length
+ x-30455)
+ 4)
+ (eq? (vector-ref
+ x-30455
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-30473
+ (vector-ref
+ x-30455
+ 1))
+ (wrap-30474
+ (let ((w2-30482
+ (vector-ref
+ x-30455
+ 2)))
+ (let ((m1-30483
+ (car w-29709))
+ (s1-30484
+ (cdr w-29709)))
+ (if (null? m1-30483)
+ (if (null? s1-30484)
+ w2-30482
+ (cons (car w2-30482)
+ (let ((m2-30499
+ (cdr w2-30482)))
+ (if (null? m2-30499)
+ s1-30484
+ (append
+ s1-30484
+ m2-30499)))))
+ (cons (let ((m2-30507
+ (car w2-30482)))
+ (if (null? m2-30507)
+ m1-30483
+ (append
+ m1-30483
+ m2-30507)))
+ (let ((m2-30515
+ (cdr w2-30482)))
+ (if (null? m2-30515)
+ s1-30484
+ (append
+ s1-30484
+ m2-30515))))))))
+ (module-30475
+ (vector-ref
+ x-30455
+ 3)))
+ (vector
+ 'syntax-object
+ expression-30473
+ wrap-30474
+ module-30475))
+ (if (null? x-30455)
+ x-30455
+ (vector
+ 'syntax-object
+ x-30455
+ w-29709
+ mod-29711))))))
+ (f-30250
+ (cdr forms-30451)))))))
+ (f-30250 e1-30249))
+ ids-29510
+ labels-29511
+ var-ids-29512
+ vars-29513
+ vals-29514
+ bindings-29515))
+ tmp-30245)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-29708)))
+ (if (eqv? type-29705 'local-syntax-form)
+ (expand-local-syntax-4591
+ value-29706
+ e-29708
+ er-29517
+ w-29709
+ s-29710
+ mod-29711
+ (lambda (forms-30541
+ er-30542
+ w-30543
+ s-30544
+ mod-30545)
+ (parse-29401
(letrec*
- ((#{f 52795}#
- (lambda (#{forms 52996}#)
- (if (null? #{forms 52996}#)
- (cdr #{body 52055}#)
- (cons (cons #{er 52063}#
- (let ((#{x 53000}#
- (car #{forms 52996}#)))
- (if (if (null? (car #{w 52254}#))
- (null? (cdr #{w 52254}#))
+ ((f-30546
+ (lambda (forms-30747)
+ (if (null? forms-30747)
+ (cdr body-29509)
+ (cons (cons er-30542
+ (let ((x-30751
+ (car forms-30747)))
+ (if (if (null? (car w-30543))
+ (null? (cdr w-30543))
#f)
- #{x 53000}#
+ x-30751
(if (if (vector?
- #{x 53000}#)
+ x-30751)
(if (= (vector-length
- #{x 53000}#)
+ x-30751)
4)
(eq? (vector-ref
- #{x 53000}#
+ x-30751
0)
'syntax-object)
#f)
#f)
- (let ((#{expression 53018}#
+ (let ((expression-30769
(vector-ref
- #{x 53000}#
+ x-30751
1))
- (#{wrap 53019}#
- (let ((#{w2 53027}#
+ (wrap-30770
+ (let ((w2-30778
(vector-ref
- #{x 53000}#
+ x-30751
2)))
- (let ((#{m1 53028}#
- (car #{w 52254}#))
- (#{s1 53029}#
- (cdr #{w 52254}#)))
- (if (null? #{m1 53028}#)
- (if (null? #{s1 53029}#)
- #{w2 53027}#
- (cons (car #{w2 53027}#)
- (let ((#{m2 53044}#
- (cdr #{w2 53027}#)))
- (if (null? #{m2 53044}#)
- #{s1 53029}#
+ (let ((m1-30779
+ (car w-30543))
+ (s1-30780
+ (cdr w-30543)))
+ (if (null? m1-30779)
+ (if (null? s1-30780)
+ w2-30778
+ (cons (car w2-30778)
+ (let ((m2-30795
+ (cdr w2-30778)))
+ (if (null? m2-30795)
+ s1-30780
(append
- #{s1 53029}#
- #{m2 53044}#)))))
- (cons (let ((#{m2 53052}#
- (car #{w2 53027}#)))
- (if (null? #{m2 53052}#)
- #{m1 53028}#
+ s1-30780
+ m2-30795)))))
+ (cons (let ((m2-30803
+ (car w2-30778)))
+ (if (null? m2-30803)
+ m1-30779
(append
- #{m1 53028}#
- #{m2 53052}#)))
- (let ((#{m2 53060}#
- (cdr #{w2 53027}#)))
- (if (null? #{m2 53060}#)
- #{s1 53029}#
+ m1-30779
+ m2-30803)))
+ (let ((m2-30811
+ (cdr w2-30778)))
+ (if (null? m2-30811)
+ s1-30780
(append
- #{s1 53029}#
- #{m2 53060}#))))))))
- (#{module 53020}#
+ s1-30780
+ m2-30811))))))))
+ (module-30771
(vector-ref
- #{x 53000}#
+ x-30751
3)))
(vector
'syntax-object
- #{expression 53018}#
- #{wrap 53019}#
- #{module 53020}#))
- (if (null? #{x 53000}#)
- #{x 53000}#
+ expression-30769
+ wrap-30770
+ module-30771))
+ (if (null? x-30751)
+ x-30751
(vector
'syntax-object
- #{x 53000}#
- #{w 52254}#
- #{mod 52256}#))))))
- (#{f 52795}#
- (cdr #{forms 52996}#)))))))
- (#{f 52795}# #{e1 52794}#))
- #{ids 52056}#
- #{labels 52057}#
- #{var-ids 52058}#
- #{vars 52059}#
- #{vals 52060}#
- #{bindings 52061}#))
- #{tmp 52790}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 52253}#)))
- (if (eqv? #{type 52251}# 'local-syntax-form)
- (#{expand-local-syntax 28276}#
- #{value 52252}#
- #{e 52253}#
- #{er 52063}#
- #{w 52254}#
- #{s 52255}#
- #{mod 52256}#
- (lambda (#{forms 53086}#
- #{er 53087}#
- #{w 53088}#
- #{s 53089}#
- #{mod 53090}#)
- (#{parse 51947}#
+ x-30751
+ w-30543
+ mod-30545))))))
+ (f-30546
+ (cdr forms-30747)))))))
+ (f-30546 forms-30541))
+ ids-29510
+ labels-29511
+ var-ids-29512
+ vars-29513
+ vals-29514
+ bindings-29515)))
+ (if (null? ids-29510)
+ (build-sequence-4532
+ #f
+ (map (lambda (x-30896)
+ (expand-4586
+ (cdr x-30896)
+ (car x-30896)
+ '(())
+ mod-29711))
+ (cons (cons er-29517
+ (let ((x-30971
+ (begin
+ (if (if (pair? e-29708)
+ s-29710
+ #f)
+ (set-source-properties!
+ e-29708
+ s-29710))
+ e-29708)))
+ (if (if (null? (car w-29709))
+ (null? (cdr w-29709))
+ #f)
+ x-30971
+ (if (if (vector?
+ x-30971)
+ (if (= (vector-length
+ x-30971)
+ 4)
+ (eq? (vector-ref
+ x-30971
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-31003
+ (vector-ref
+ x-30971
+ 1))
+ (wrap-31004
+ (let ((w2-31012
+ (vector-ref
+ x-30971
+ 2)))
+ (let ((m1-31013
+ (car w-29709))
+ (s1-31014
+ (cdr w-29709)))
+ (if (null? m1-31013)
+ (if (null? s1-31014)
+ w2-31012
+ (cons (car w2-31012)
+ (let ((m2-31029
+ (cdr w2-31012)))
+ (if (null? m2-31029)
+ s1-31014
+ (append
+ s1-31014
+ m2-31029)))))
+ (cons (let ((m2-31037
+ (car w2-31012)))
+ (if (null? m2-31037)
+ m1-31013
+ (append
+ m1-31013
+ m2-31037)))
+ (let ((m2-31045
+ (cdr w2-31012)))
+ (if (null? m2-31045)
+ s1-31014
+ (append
+ s1-31014
+ m2-31045))))))))
+ (module-31005
+ (vector-ref
+ x-30971
+ 3)))
+ (vector
+ 'syntax-object
+ expression-31003
+ wrap-31004
+ module-31005))
+ (if (null? x-30971)
+ x-30971
+ (vector
+ 'syntax-object
+ x-30971
+ w-29709
+ mod-29711))))))
+ (cdr body-29509))))
+ (begin
+ (if (not (valid-bound-ids?-4576
+ ids-29510))
+ (syntax-violation
+ #f
+ "invalid or duplicate identifier in definition"
+ outer-form-29394))
(letrec*
- ((#{f 53091}#
- (lambda (#{forms 53292}#)
- (if (null? #{forms 53292}#)
- (cdr #{body 52055}#)
- (cons (cons #{er 53087}#
- (let ((#{x 53296}#
- (car #{forms 53292}#)))
- (if (if (null? (car #{w 53088}#))
- (null? (cdr #{w 53088}#))
+ ((loop-31144
+ (lambda (bs-31147
+ er-cache-31148
+ r-cache-31149)
+ (if (not (null? bs-31147))
+ (let ((b-31150
+ (car bs-31147)))
+ (if (let ((t-31153
+ (car b-31150)))
+ (if (eq? t-31153
+ 'macro)
+ #t
+ (eq? t-31153
+ 'syntax-parameter)))
+ (let ((er-31155
+ (car (cdr b-31150))))
+ (let ((r-cache-31156
+ (if (eq? er-31155
+ er-cache-31148)
+ r-cache-31149
+ (macros-only-env-4547
+ er-31155))))
+ (begin
+ (set-cdr!
+ b-31150
+ (eval-local-transformer-4592
+ (expand-4586
+ (cdr (cdr b-31150))
+ r-cache-31156
+ '(())
+ mod-29711)
+ mod-29711))
+ (if (eq? (car b-31150)
+ 'syntax-parameter)
+ (set-cdr!
+ b-31150
+ (list (cdr b-31150))))
+ (loop-31144
+ (cdr bs-31147)
+ er-31155
+ r-cache-31156))))
+ (loop-31144
+ (cdr bs-31147)
+ er-cache-31148
+ r-cache-31149)))))))
+ (loop-31144 bindings-29515 #f #f))
+ (set-cdr!
+ r-29398
+ (extend-env-4545
+ labels-29511
+ bindings-29515
+ (cdr r-29398)))
+ (build-letrec-4535
+ #f
+ #t
+ (reverse
+ (map syntax->datum
+ var-ids-29512))
+ (reverse vars-29513)
+ (map (lambda (x-31576)
+ (expand-4586
+ (cdr x-31576)
+ (car x-31576)
+ '(())
+ mod-29711))
+ (reverse vals-29514))
+ (build-sequence-4532
+ #f
+ (map (lambda (x-31712)
+ (expand-4586
+ (cdr x-31712)
+ (car x-31712)
+ '(())
+ mod-29711))
+ (cons (cons er-29517
+ (let ((x-31787
+ (begin
+ (if (if (pair? e-29708)
+ s-29710
+ #f)
+ (set-source-properties!
+ e-29708
+ s-29710))
+ e-29708)))
+ (if (if (null? (car w-29709))
+ (null? (cdr w-29709))
#f)
- #{x 53296}#
+ x-31787
(if (if (vector?
- #{x 53296}#)
+ x-31787)
(if (= (vector-length
- #{x 53296}#)
+ x-31787)
4)
(eq? (vector-ref
- #{x 53296}#
+ x-31787
0)
'syntax-object)
#f)
#f)
- (let ((#{expression 53314}#
+ (let ((expression-31819
(vector-ref
- #{x 53296}#
+ x-31787
1))
- (#{wrap 53315}#
- (let ((#{w2 53323}#
+ (wrap-31820
+ (let ((w2-31828
(vector-ref
- #{x 53296}#
+ x-31787
2)))
- (let ((#{m1 53324}#
- (car #{w 53088}#))
- (#{s1 53325}#
- (cdr #{w 53088}#)))
- (if (null? #{m1 53324}#)
- (if (null? #{s1 53325}#)
- #{w2 53323}#
- (cons (car #{w2 53323}#)
- (let ((#{m2 53340}#
- (cdr #{w2 53323}#)))
- (if (null? #{m2 53340}#)
- #{s1 53325}#
+ (let ((m1-31829
+ (car w-29709))
+ (s1-31830
+ (cdr w-29709)))
+ (if (null? m1-31829)
+ (if (null? s1-31830)
+ w2-31828
+ (cons (car w2-31828)
+ (let ((m2-31845
+ (cdr w2-31828)))
+ (if (null? m2-31845)
+ s1-31830
(append
- #{s1 53325}#
- #{m2 53340}#)))))
- (cons (let ((#{m2 53348}#
- (car #{w2 53323}#)))
- (if (null? #{m2 53348}#)
- #{m1 53324}#
+ s1-31830
+ m2-31845)))))
+ (cons (let ((m2-31853
+ (car w2-31828)))
+ (if (null? m2-31853)
+ m1-31829
(append
- #{m1 53324}#
- #{m2 53348}#)))
- (let ((#{m2 53356}#
- (cdr #{w2 53323}#)))
- (if (null? #{m2 53356}#)
- #{s1 53325}#
+ m1-31829
+ m2-31853)))
+ (let ((m2-31861
+ (cdr w2-31828)))
+ (if (null? m2-31861)
+ s1-31830
(append
- #{s1 53325}#
- #{m2 53356}#))))))))
- (#{module 53316}#
+ s1-31830
+ m2-31861))))))))
+ (module-31821
(vector-ref
- #{x 53296}#
+ x-31787
3)))
(vector
'syntax-object
- #{expression 53314}#
- #{wrap 53315}#
- #{module 53316}#))
- (if (null? #{x 53296}#)
- #{x 53296}#
+ expression-31819
+ wrap-31820
+ module-31821))
+ (if (null? x-31787)
+ x-31787
(vector
'syntax-object
- #{x 53296}#
- #{w 53088}#
- #{mod 53090}#))))))
- (#{f 53091}#
- (cdr #{forms 53292}#)))))))
- (#{f 53091}# #{forms 53086}#))
- #{ids 52056}#
- #{labels 52057}#
- #{var-ids 52058}#
- #{vars 52059}#
- #{vals 52060}#
- #{bindings 52061}#)))
- (if (null? #{ids 52056}#)
- (#{build-sequence 28220}#
- #f
- (map (lambda (#{x 53441}#)
- (#{expand 28271}#
- (cdr #{x 53441}#)
- (car #{x 53441}#)
- '(())
- #{mod 52256}#))
- (cons (cons #{er 52063}#
- (let ((#{x 53516}#
- (begin
- (if (if (pair? #{e 52253}#)
- #{s 52255}#
- #f)
- (set-source-properties!
- #{e 52253}#
- #{s 52255}#))
- #{e 52253}#)))
- (if (if (null? (car #{w 52254}#))
- (null? (cdr #{w 52254}#))
- #f)
- #{x 53516}#
- (if (if (vector?
- #{x 53516}#)
- (if (= (vector-length
- #{x 53516}#)
- 4)
- (eq? (vector-ref
- #{x 53516}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 53548}#
- (vector-ref
- #{x 53516}#
- 1))
- (#{wrap 53549}#
- (let ((#{w2 53557}#
- (vector-ref
- #{x 53516}#
- 2)))
- (let ((#{m1 53558}#
- (car #{w 52254}#))
- (#{s1 53559}#
- (cdr #{w 52254}#)))
- (if (null? #{m1 53558}#)
- (if (null? #{s1 53559}#)
- #{w2 53557}#
- (cons (car #{w2 53557}#)
- (let ((#{m2 53574}#
- (cdr #{w2 53557}#)))
- (if (null? #{m2 53574}#)
- #{s1 53559}#
- (append
- #{s1 53559}#
- #{m2 53574}#)))))
- (cons (let ((#{m2 53582}#
- (car #{w2 53557}#)))
- (if (null? #{m2 53582}#)
- #{m1 53558}#
- (append
- #{m1 53558}#
- #{m2 53582}#)))
- (let ((#{m2 53590}#
- (cdr #{w2 53557}#)))
- (if (null? #{m2 53590}#)
- #{s1 53559}#
- (append
- #{s1 53559}#
- #{m2 53590}#))))))))
- (#{module 53550}#
- (vector-ref
- #{x 53516}#
- 3)))
- (vector
- 'syntax-object
- #{expression 53548}#
- #{wrap 53549}#
- #{module 53550}#))
- (if (null? #{x 53516}#)
- #{x 53516}#
- (vector
- 'syntax-object
- #{x 53516}#
- #{w 52254}#
- #{mod 52256}#))))))
- (cdr #{body 52055}#))))
- (begin
- (if (not (#{valid-bound-ids? 28261}#
- #{ids 52056}#))
- (syntax-violation
- #f
- "invalid or duplicate identifier in definition"
- #{outer-form 51940}#))
- (letrec*
- ((#{loop 53689}#
- (lambda (#{bs 53692}#
- #{er-cache 53693}#
- #{r-cache 53694}#)
- (if (not (null? #{bs 53692}#))
- (let ((#{b 53695}#
- (car #{bs 53692}#)))
- (if (let ((#{t 53698}#
- (car #{b 53695}#)))
- (if (eq? #{t 53698}#
- 'macro)
- #t
- (eq? #{t 53698}#
- 'syntax-parameter)))
- (let ((#{er 53700}#
- (car (cdr #{b 53695}#))))
- (let ((#{r-cache 53701}#
- (if (eq? #{er 53700}#
- #{er-cache 53693}#)
- #{r-cache 53694}#
- (#{macros-only-env 28235}#
- #{er 53700}#))))
- (begin
- (set-cdr!
- #{b 53695}#
- (#{eval-local-transformer 28277}#
- (#{expand 28271}#
- (cdr (cdr #{b 53695}#))
- #{r-cache 53701}#
- '(())
- #{mod 52256}#)
- #{mod 52256}#))
- (if (eq? (car #{b 53695}#)
- 'syntax-parameter)
- (set-cdr!
- #{b 53695}#
- (list (cdr #{b 53695}#))))
- (#{loop 53689}#
- (cdr #{bs 53692}#)
- #{er 53700}#
- #{r-cache 53701}#))))
- (#{loop 53689}#
- (cdr #{bs 53692}#)
- #{er-cache 53693}#
- #{r-cache 53694}#)))))))
- (#{loop 53689}#
- #{bindings 52061}#
- #f
- #f))
- (set-cdr!
- #{r 51944}#
- (#{extend-env 28233}#
- #{labels 52057}#
- #{bindings 52061}#
- (cdr #{r 51944}#)))
- (#{build-letrec 28223}#
- #f
- #t
- (reverse
- (map syntax->datum
- #{var-ids 52058}#))
- (reverse #{vars 52059}#)
- (map (lambda (#{x 54121}#)
- (#{expand 28271}#
- (cdr #{x 54121}#)
- (car #{x 54121}#)
- '(())
- #{mod 52256}#))
- (reverse #{vals 52060}#))
- (#{build-sequence 28220}#
- #f
- (map (lambda (#{x 54257}#)
- (#{expand 28271}#
- (cdr #{x 54257}#)
- (car #{x 54257}#)
- '(())
- #{mod 52256}#))
- (cons (cons #{er 52063}#
- (let ((#{x 54332}#
- (begin
- (if (if (pair? #{e 52253}#)
- #{s 52255}#
- #f)
- (set-source-properties!
- #{e 52253}#
- #{s 52255}#))
- #{e 52253}#)))
- (if (if (null? (car #{w 52254}#))
- (null? (cdr #{w 52254}#))
- #f)
- #{x 54332}#
- (if (if (vector?
- #{x 54332}#)
- (if (= (vector-length
- #{x 54332}#)
- 4)
- (eq? (vector-ref
- #{x 54332}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 54364}#
- (vector-ref
- #{x 54332}#
- 1))
- (#{wrap 54365}#
- (let ((#{w2 54373}#
- (vector-ref
- #{x 54332}#
- 2)))
- (let ((#{m1 54374}#
- (car #{w 52254}#))
- (#{s1 54375}#
- (cdr #{w 52254}#)))
- (if (null? #{m1 54374}#)
- (if (null? #{s1 54375}#)
- #{w2 54373}#
- (cons (car #{w2 54373}#)
- (let ((#{m2 54390}#
- (cdr #{w2 54373}#)))
- (if (null? #{m2 54390}#)
- #{s1 54375}#
- (append
- #{s1 54375}#
- #{m2 54390}#)))))
- (cons (let ((#{m2 54398}#
- (car #{w2 54373}#)))
- (if (null? #{m2 54398}#)
- #{m1 54374}#
- (append
- #{m1 54374}#
- #{m2 54398}#)))
- (let ((#{m2 54406}#
- (cdr #{w2 54373}#)))
- (if (null? #{m2 54406}#)
- #{s1 54375}#
- (append
- #{s1 54375}#
- #{m2 54406}#))))))))
- (#{module 54366}#
- (vector-ref
- #{x 54332}#
- 3)))
- (vector
- 'syntax-object
- #{expression 54364}#
- #{wrap 54365}#
- #{module 54366}#))
- (if (null? #{x 54332}#)
- #{x 54332}#
- (vector
- 'syntax-object
- #{x 54332}#
- #{w 52254}#
- #{mod 52256}#))))))
- (cdr #{body 52055}#))))))))))))))))))
- (#{parse 51947}#
- (map (lambda (#{x 51950}#)
- (cons #{r 51944}#
- (if (if (null? (car #{w 51946}#))
- (null? (cdr #{w 51946}#))
- #f)
- #{x 51950}#
- (if (if (vector? #{x 51950}#)
- (if (= (vector-length #{x 51950}#) 4)
- (eq? (vector-ref #{x 51950}# 0)
- 'syntax-object)
- #f)
+ x-31787
+ w-29709
+ mod-29711))))))
+ (cdr body-29509))))))))))))))))))
+ (parse-29401
+ (map (lambda (x-29404)
+ (cons r-29398
+ (if (if (null? (car w-29400))
+ (null? (cdr w-29400))
#f)
- (let ((#{expression 51986}#
- (vector-ref #{x 51950}# 1))
- (#{wrap 51987}#
- (let ((#{w2 51997}#
- (vector-ref #{x 51950}# 2)))
- (let ((#{m1 51998}#
- (car #{w 51946}#))
- (#{s1 51999}#
- (cdr #{w 51946}#)))
- (if (null? #{m1 51998}#)
- (if (null? #{s1 51999}#)
- #{w2 51997}#
- (cons (car #{w2 51997}#)
- (let ((#{m2 52016}#
- (cdr #{w2 51997}#)))
- (if (null? #{m2 52016}#)
- #{s1 51999}#
+ x-29404
+ (if (if (vector? x-29404)
+ (if (= (vector-length x-29404) 4)
+ (eq? (vector-ref x-29404 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-29440
+ (vector-ref x-29404 1))
+ (wrap-29441
+ (let ((w2-29451
+ (vector-ref x-29404 2)))
+ (let ((m1-29452 (car w-29400))
+ (s1-29453 (cdr w-29400)))
+ (if (null? m1-29452)
+ (if (null? s1-29453)
+ w2-29451
+ (cons (car w2-29451)
+ (let ((m2-29470
+ (cdr w2-29451)))
+ (if (null? m2-29470)
+ s1-29453
+ (append
+ s1-29453
+ m2-29470)))))
+ (cons (let ((m2-29478
+ (car w2-29451)))
+ (if (null? m2-29478)
+ m1-29452
(append
- #{s1 51999}#
- #{m2 52016}#)))))
- (cons (let ((#{m2 52024}#
- (car #{w2 51997}#)))
- (if (null? #{m2 52024}#)
- #{m1 51998}#
- (append
- #{m1 51998}#
- #{m2 52024}#)))
- (let ((#{m2 52032}#
- (cdr #{w2 51997}#)))
- (if (null? #{m2 52032}#)
- #{s1 51999}#
- (append
- #{s1 51999}#
- #{m2 52032}#))))))))
- (#{module 51988}#
- (vector-ref #{x 51950}# 3)))
- (vector
- 'syntax-object
- #{expression 51986}#
- #{wrap 51987}#
- #{module 51988}#))
- (if (null? #{x 51950}#)
- #{x 51950}#
- (vector
- 'syntax-object
- #{x 51950}#
- #{w 51946}#
- #{mod 51943}#))))))
- #{body 51939}#)
- '()
- '()
- '()
- '()
- '()
- '())))))))
- (#{expand-local-syntax 28276}#
- (lambda (#{rec? 54421}#
- #{e 54422}#
- #{r 54423}#
- #{w 54424}#
- #{s 54425}#
- #{mod 54426}#
- #{k 54427}#)
- (let ((#{tmp 54429}#
- ($sc-dispatch
- #{e 54422}#
- '(_ #(each (any any)) any . each-any))))
- (if #{tmp 54429}#
- (@apply
- (lambda (#{id 54433}#
- #{val 54434}#
- #{e1 54435}#
- #{e2 54436}#)
- (if (not (#{valid-bound-ids? 28261}# #{id 54433}#))
- (syntax-violation
- #f
- "duplicate bound keyword"
- #{e 54422}#)
- (let ((#{labels 54533}#
- (#{gen-labels 28241}# #{id 54433}#)))
- (let ((#{new-w 54534}#
- (#{make-binding-wrap 28252}#
- #{id 54433}#
- #{labels 54533}#
- #{w 54424}#)))
- (#{k 54427}#
- (cons #{e1 54435}# #{e2 54436}#)
- (#{extend-env 28233}#
- #{labels 54533}#
- (let ((#{trans-r 54574}#
- (#{macros-only-env 28235}# #{r 54423}#)))
- (begin
- (if #{rec? 54421}# #{new-w 54534}# #{w 54424}#)
- (map (lambda (#{x 54575}#)
- (cons 'macro
- (#{eval-local-transformer 28277}#
- (#{expand 28271}#
- #{x 54575}#
- #{trans-r 54574}#
- (values
- (if #{rec? 54421}#
- #{new-w 54534}#
- #{w 54424}#))
- #{mod 54426}#)
- #{mod 54426}#)))
- #{val 54434}#)))
- #{r 54423}#)
- #{new-w 54534}#
- #{s 54425}#
- #{mod 54426}#)))))
- #{tmp 54429}#)
- (syntax-violation
- #f
- "bad local syntax definition"
- (let ((#{x 54904}#
- (begin
- (if (if (pair? #{e 54422}#) #{s 54425}# #f)
- (set-source-properties! #{e 54422}# #{s 54425}#))
- #{e 54422}#)))
- (if (if (null? (car #{w 54424}#))
- (null? (cdr #{w 54424}#))
- #f)
- #{x 54904}#
- (if (if (vector? #{x 54904}#)
- (if (= (vector-length #{x 54904}#) 4)
- (eq? (vector-ref #{x 54904}# 0) 'syntax-object)
- #f)
+ m1-29452
+ m2-29478)))
+ (let ((m2-29486
+ (cdr w2-29451)))
+ (if (null? m2-29486)
+ s1-29453
+ (append
+ s1-29453
+ m2-29486))))))))
+ (module-29442
+ (vector-ref x-29404 3)))
+ (vector
+ 'syntax-object
+ expression-29440
+ wrap-29441
+ module-29442))
+ (if (null? x-29404)
+ x-29404
+ (vector
+ 'syntax-object
+ x-29404
+ w-29400
+ mod-29397))))))
+ body-29393)
+ '()
+ '()
+ '()
+ '()
+ '()
+ '())))))))
+ (expand-local-syntax-4591
+ (lambda (rec?-31876
+ e-31877
+ r-31878
+ w-31879
+ s-31880
+ mod-31881
+ k-31882)
+ (let ((tmp-31884
+ ($sc-dispatch
+ e-31877
+ '(_ #(each (any any)) any . each-any))))
+ (if tmp-31884
+ (@apply
+ (lambda (id-31888 val-31889 e1-31890 e2-31891)
+ (if (not (valid-bound-ids?-4576 id-31888))
+ (syntax-violation
+ #f
+ "duplicate bound keyword"
+ e-31877)
+ (let ((labels-31988 (gen-labels-4553 id-31888)))
+ (let ((new-w-31989
+ (make-binding-wrap-4564
+ id-31888
+ labels-31988
+ w-31879)))
+ (k-31882
+ (cons e1-31890 e2-31891)
+ (extend-env-4545
+ labels-31988
+ (let ((trans-r-32027
+ (macros-only-env-4547 r-31878)))
+ (begin
+ (if rec?-31876 new-w-31989 w-31879)
+ (map (lambda (x-32028)
+ (cons 'macro
+ (eval-local-transformer-4592
+ (expand-4586
+ x-32028
+ trans-r-32027
+ (values
+ (if rec?-31876
+ new-w-31989
+ w-31879))
+ mod-31881)
+ mod-31881)))
+ val-31889)))
+ r-31878)
+ new-w-31989
+ s-31880
+ mod-31881)))))
+ tmp-31884)
+ (syntax-violation
+ #f
+ "bad local syntax definition"
+ (let ((x-32335
+ (begin
+ (if (if (pair? e-31877) s-31880 #f)
+ (set-source-properties! e-31877 s-31880))
+ e-31877)))
+ (if (if (null? (car w-31879))
+ (null? (cdr w-31879))
#f)
- (let ((#{expression 54936}# (vector-ref #{x 54904}# 1))
- (#{wrap 54937}#
- (let ((#{w2 54945}# (vector-ref #{x 54904}# 2)))
- (let ((#{m1 54946}# (car #{w 54424}#))
- (#{s1 54947}# (cdr #{w 54424}#)))
- (if (null? #{m1 54946}#)
- (if (null? #{s1 54947}#)
- #{w2 54945}#
- (cons (car #{w2 54945}#)
- (let ((#{m2 54962}#
- (cdr #{w2 54945}#)))
- (if (null? #{m2 54962}#)
- #{s1 54947}#
- (append
- #{s1 54947}#
- #{m2 54962}#)))))
- (cons (let ((#{m2 54970}# (car #{w2 54945}#)))
- (if (null? #{m2 54970}#)
- #{m1 54946}#
- (append #{m1 54946}# #{m2 54970}#)))
- (let ((#{m2 54978}# (cdr #{w2 54945}#)))
- (if (null? #{m2 54978}#)
- #{s1 54947}#
- (append
- #{s1 54947}#
- #{m2 54978}#))))))))
- (#{module 54938}# (vector-ref #{x 54904}# 3)))
- (vector
- 'syntax-object
- #{expression 54936}#
- #{wrap 54937}#
- #{module 54938}#))
- (if (null? #{x 54904}#)
- #{x 54904}#
- (vector
- 'syntax-object
- #{x 54904}#
- #{w 54424}#
- #{mod 54426}#))))))))))
- (#{eval-local-transformer 28277}#
- (lambda (#{expanded 54996}# #{mod 54997}#)
- (let ((#{p 54998}# (primitive-eval #{expanded 54996}#)))
- (if (procedure? #{p 54998}#)
- #{p 54998}#
- (syntax-violation
- #f
- "nonprocedure transformer"
- #{p 54998}#)))))
- (#{ellipsis? 28279}#
- (lambda (#{x 29819}#)
- (if (if (if (vector? #{x 29819}#)
- (if (= (vector-length #{x 29819}#) 4)
- (eq? (vector-ref #{x 29819}# 0) 'syntax-object)
+ x-32335
+ (if (if (vector? x-32335)
+ (if (= (vector-length x-32335) 4)
+ (eq? (vector-ref x-32335 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-32367 (vector-ref x-32335 1))
+ (wrap-32368
+ (let ((w2-32376 (vector-ref x-32335 2)))
+ (let ((m1-32377 (car w-31879))
+ (s1-32378 (cdr w-31879)))
+ (if (null? m1-32377)
+ (if (null? s1-32378)
+ w2-32376
+ (cons (car w2-32376)
+ (let ((m2-32393 (cdr w2-32376)))
+ (if (null? m2-32393)
+ s1-32378
+ (append s1-32378 m2-32393)))))
+ (cons (let ((m2-32401 (car w2-32376)))
+ (if (null? m2-32401)
+ m1-32377
+ (append m1-32377 m2-32401)))
+ (let ((m2-32409 (cdr w2-32376)))
+ (if (null? m2-32409)
+ s1-32378
+ (append s1-32378 m2-32409))))))))
+ (module-32369 (vector-ref x-32335 3)))
+ (vector
+ 'syntax-object
+ expression-32367
+ wrap-32368
+ module-32369))
+ (if (null? x-32335)
+ x-32335
+ (vector
+ 'syntax-object
+ x-32335
+ w-31879
+ mod-31881))))))))))
+ (eval-local-transformer-4592
+ (lambda (expanded-32427 mod-32428)
+ (let ((p-32429 (primitive-eval expanded-32427)))
+ (if (procedure? p-32429)
+ p-32429
+ (syntax-violation
+ #f
+ "nonprocedure transformer"
+ p-32429)))))
+ (ellipsis?-4594
+ (lambda (x-6134)
+ (if (if (if (vector? x-6134)
+ (if (= (vector-length x-6134) 4)
+ (eq? (vector-ref x-6134 0) 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{x 29819}# 1))
- #f)
- (#{free-id=? 28259}#
- #{x 29819}#
- '#(syntax-object
- ...
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i26166"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))
- #f)))
- (#{lambda-formals 28280}#
- (lambda (#{orig-args 55003}#)
- (letrec*
- ((#{req 55004}#
- (lambda (#{args 55008}# #{rreq 55009}#)
- (let ((#{tmp 55011}# ($sc-dispatch #{args 55008}# '())))
- (if #{tmp 55011}#
- (@apply
- (lambda ()
- (#{check 55005}# (reverse #{rreq 55009}#) #f))
- #{tmp 55011}#)
- (let ((#{tmp 55127}#
- ($sc-dispatch #{args 55008}# '(any . any))))
- (if (if #{tmp 55127}#
- (@apply
- (lambda (#{a 55131}# #{b 55132}#)
- (if (symbol? #{a 55131}#)
- #t
- (if (if (vector? #{a 55131}#)
- (if (= (vector-length #{a 55131}#) 4)
- (eq? (vector-ref #{a 55131}# 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{a 55131}# 1))
- #f)))
- #{tmp 55127}#)
- #f)
- (@apply
- (lambda (#{a 55159}# #{b 55160}#)
- (#{req 55004}#
- #{b 55160}#
- (cons #{a 55159}# #{rreq 55009}#)))
- #{tmp 55127}#)
- (let ((#{tmp 55161}# (list #{args 55008}#)))
- (if (@apply
- (lambda (#{r 55163}#)
- (if (symbol? #{r 55163}#)
+ (symbol? (vector-ref x-6134 1))
+ #f)
+ (free-id=?-4574
+ x-6134
+ '#(syntax-object
+ ...
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage #(x) #((top)) #("l-*-2416"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile)))
+ #f)))
+ (lambda-formals-4595
+ (lambda (orig-args-32434)
+ (letrec*
+ ((req-32435
+ (lambda (args-32439 rreq-32440)
+ (let ((tmp-32442 ($sc-dispatch args-32439 '())))
+ (if tmp-32442
+ (@apply
+ (lambda () (check-32436 (reverse rreq-32440) #f))
+ tmp-32442)
+ (let ((tmp-32558
+ ($sc-dispatch args-32439 '(any . any))))
+ (if (if tmp-32558
+ (@apply
+ (lambda (a-32562 b-32563)
+ (if (symbol? a-32562)
#t
- (if (if (vector? #{r 55163}#)
- (if (= (vector-length #{r 55163}#) 4)
- (eq? (vector-ref #{r 55163}# 0)
+ (if (if (vector? a-32562)
+ (if (= (vector-length a-32562) 4)
+ (eq? (vector-ref a-32562 0)
'syntax-object)
#f)
#f)
- (symbol? (vector-ref #{r 55163}# 1))
+ (symbol? (vector-ref a-32562 1))
#f)))
- #{tmp 55161}#)
- (@apply
- (lambda (#{r 55193}#)
- (#{check 55005}#
- (reverse #{rreq 55009}#)
- #{r 55193}#))
- #{tmp 55161}#)
- (syntax-violation
- 'lambda
- "invalid argument list"
- #{orig-args 55003}#
- #{args 55008}#)))))))))
- (#{check 55005}#
- (lambda (#{req 55317}# #{rest 55318}#)
- (if (#{distinct-bound-ids? 28262}#
- (if #{rest 55318}#
- (cons #{rest 55318}# #{req 55317}#)
- #{req 55317}#))
- (values #{req 55317}# #f #{rest 55318}# #f)
- (syntax-violation
- 'lambda
- "duplicate identifier in argument list"
- #{orig-args 55003}#)))))
- (#{req 55004}# #{orig-args 55003}# '()))))
- (#{expand-simple-lambda 28281}#
- (lambda (#{e 55427}#
- #{r 55428}#
- #{w 55429}#
- #{s 55430}#
- #{mod 55431}#
- #{req 55432}#
- #{rest 55433}#
- #{meta 55434}#
- #{body 55435}#)
- (let ((#{ids 55436}#
- (if #{rest 55433}#
- (append #{req 55432}# (list #{rest 55433}#))
- #{req 55432}#)))
- (let ((#{vars 55437}#
- (map #{gen-var 28285}# #{ids 55436}#)))
- (let ((#{labels 55438}#
- (#{gen-labels 28241}# #{ids 55436}#)))
- (#{build-simple-lambda 28214}#
- #{s 55430}#
- (map syntax->datum #{req 55432}#)
- (if #{rest 55433}#
- (syntax->datum #{rest 55433}#)
- #f)
- #{vars 55437}#
- #{meta 55434}#
- (#{expand-body 28275}#
- #{body 55435}#
- (let ((#{x 55627}#
- (begin
- (if (if (pair? #{e 55427}#) #{s 55430}# #f)
- (set-source-properties! #{e 55427}# #{s 55430}#))
- #{e 55427}#)))
- (if (if (null? (car #{w 55429}#))
- (null? (cdr #{w 55429}#))
- #f)
- #{x 55627}#
- (if (if (vector? #{x 55627}#)
- (if (= (vector-length #{x 55627}#) 4)
- (eq? (vector-ref #{x 55627}# 0) 'syntax-object)
- #f)
+ tmp-32558)
+ #f)
+ (@apply
+ (lambda (a-32590 b-32591)
+ (req-32435 b-32591 (cons a-32590 rreq-32440)))
+ tmp-32558)
+ (let ((tmp-32592 (list args-32439)))
+ (if (@apply
+ (lambda (r-32594)
+ (if (symbol? r-32594)
+ #t
+ (if (if (vector? r-32594)
+ (if (= (vector-length r-32594) 4)
+ (eq? (vector-ref r-32594 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref r-32594 1))
+ #f)))
+ tmp-32592)
+ (@apply
+ (lambda (r-32624)
+ (check-32436 (reverse rreq-32440) r-32624))
+ tmp-32592)
+ (syntax-violation
+ 'lambda
+ "invalid argument list"
+ orig-args-32434
+ args-32439)))))))))
+ (check-32436
+ (lambda (req-32748 rest-32749)
+ (if (distinct-bound-ids?-4577
+ (if rest-32749
+ (cons rest-32749 req-32748)
+ req-32748))
+ (values req-32748 #f rest-32749 #f)
+ (syntax-violation
+ 'lambda
+ "duplicate identifier in argument list"
+ orig-args-32434)))))
+ (req-32435 orig-args-32434 '()))))
+ (expand-simple-lambda-4596
+ (lambda (e-32858
+ r-32859
+ w-32860
+ s-32861
+ mod-32862
+ req-32863
+ rest-32864
+ meta-32865
+ body-32866)
+ (let ((ids-32867
+ (if rest-32864
+ (append req-32863 (list rest-32864))
+ req-32863)))
+ (let ((vars-32868 (map gen-var-4600 ids-32867)))
+ (let ((labels-32869 (gen-labels-4553 ids-32867)))
+ (build-simple-lambda-4526
+ s-32861
+ (map syntax->datum req-32863)
+ (if rest-32864 (syntax->datum rest-32864) #f)
+ vars-32868
+ meta-32865
+ (expand-body-4590
+ body-32866
+ (let ((x-33052
+ (begin
+ (if (if (pair? e-32858) s-32861 #f)
+ (set-source-properties! e-32858 s-32861))
+ e-32858)))
+ (if (if (null? (car w-32860))
+ (null? (cdr w-32860))
#f)
- (let ((#{expression 55659}# (vector-ref #{x 55627}# 1))
- (#{wrap 55660}#
- (let ((#{w2 55668}# (vector-ref #{x 55627}# 2)))
- (let ((#{m1 55669}# (car #{w 55429}#))
- (#{s1 55670}# (cdr #{w 55429}#)))
- (if (null? #{m1 55669}#)
- (if (null? #{s1 55670}#)
- #{w2 55668}#
- (cons (car #{w2 55668}#)
- (let ((#{m2 55685}#
- (cdr #{w2 55668}#)))
- (if (null? #{m2 55685}#)
- #{s1 55670}#
+ x-33052
+ (if (if (vector? x-33052)
+ (if (= (vector-length x-33052) 4)
+ (eq? (vector-ref x-33052 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-33084 (vector-ref x-33052 1))
+ (wrap-33085
+ (let ((w2-33093 (vector-ref x-33052 2)))
+ (let ((m1-33094 (car w-32860))
+ (s1-33095 (cdr w-32860)))
+ (if (null? m1-33094)
+ (if (null? s1-33095)
+ w2-33093
+ (cons (car w2-33093)
+ (let ((m2-33110 (cdr w2-33093)))
+ (if (null? m2-33110)
+ s1-33095
+ (append
+ s1-33095
+ m2-33110)))))
+ (cons (let ((m2-33118 (car w2-33093)))
+ (if (null? m2-33118)
+ m1-33094
+ (append m1-33094 m2-33118)))
+ (let ((m2-33126 (cdr w2-33093)))
+ (if (null? m2-33126)
+ s1-33095
(append
- #{s1 55670}#
- #{m2 55685}#)))))
- (cons (let ((#{m2 55693}#
- (car #{w2 55668}#)))
- (if (null? #{m2 55693}#)
- #{m1 55669}#
- (append
- #{m1 55669}#
- #{m2 55693}#)))
- (let ((#{m2 55701}#
- (cdr #{w2 55668}#)))
- (if (null? #{m2 55701}#)
- #{s1 55670}#
- (append
- #{s1 55670}#
- #{m2 55701}#))))))))
- (#{module 55661}# (vector-ref #{x 55627}# 3)))
- (vector
- 'syntax-object
- #{expression 55659}#
- #{wrap 55660}#
- #{module 55661}#))
- (if (null? #{x 55627}#)
- #{x 55627}#
- (vector
- 'syntax-object
- #{x 55627}#
- #{w 55429}#
- #{mod 55431}#)))))
- (#{extend-var-env 28234}#
- #{labels 55438}#
- #{vars 55437}#
- #{r 55428}#)
- (#{make-binding-wrap 28252}#
- #{ids 55436}#
- #{labels 55438}#
- #{w 55429}#)
- #{mod 55431}#)))))))
- (#{lambda*-formals 28282}#
- (lambda (#{orig-args 55932}#)
- (letrec*
- ((#{req 55933}#
- (lambda (#{args 55940}# #{rreq 55941}#)
- (let ((#{tmp 55943}# ($sc-dispatch #{args 55940}# '())))
- (if #{tmp 55943}#
- (@apply
- (lambda ()
- (#{check 55937}#
- (reverse #{rreq 55941}#)
- '()
- #f
- '()))
- #{tmp 55943}#)
- (let ((#{tmp 56062}#
- ($sc-dispatch #{args 55940}# '(any . any))))
- (if (if #{tmp 56062}#
- (@apply
- (lambda (#{a 56066}# #{b 56067}#)
- (if (symbol? #{a 56066}#)
- #t
- (if (if (vector? #{a 56066}#)
- (if (= (vector-length #{a 56066}#) 4)
- (eq? (vector-ref #{a 56066}# 0)
- 'syntax-object)
+ s1-33095
+ m2-33126))))))))
+ (module-33086 (vector-ref x-33052 3)))
+ (vector
+ 'syntax-object
+ expression-33084
+ wrap-33085
+ module-33086))
+ (if (null? x-33052)
+ x-33052
+ (vector
+ 'syntax-object
+ x-33052
+ w-32860
+ mod-32862)))))
+ (extend-var-env-4546
+ labels-32869
+ vars-32868
+ r-32859)
+ (make-binding-wrap-4564
+ ids-32867
+ labels-32869
+ w-32860)
+ mod-32862)))))))
+ (lambda*-formals-4597
+ (lambda (orig-args-33335)
+ (letrec*
+ ((req-33336
+ (lambda (args-33343 rreq-33344)
+ (let ((tmp-33346 ($sc-dispatch args-33343 '())))
+ (if tmp-33346
+ (@apply
+ (lambda ()
+ (check-33340 (reverse rreq-33344) '() #f '()))
+ tmp-33346)
+ (let ((tmp-33465
+ ($sc-dispatch args-33343 '(any . any))))
+ (if (if tmp-33465
+ (@apply
+ (lambda (a-33469 b-33470)
+ (if (symbol? a-33469)
+ #t
+ (if (if (vector? a-33469)
+ (if (= (vector-length a-33469) 4)
+ (eq? (vector-ref a-33469 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{a 56066}# 1))
- #f)))
- #{tmp 56062}#)
- #f)
- (@apply
- (lambda (#{a 56094}# #{b 56095}#)
- (#{req 55933}#
- #{b 56095}#
- (cons #{a 56094}# #{rreq 55941}#)))
- #{tmp 56062}#)
- (let ((#{tmp 56096}#
- ($sc-dispatch #{args 55940}# '(any . any))))
- (if (if #{tmp 56096}#
- (@apply
- (lambda (#{a 56100}# #{b 56101}#)
- (eq? (syntax->datum #{a 56100}#) #:optional))
- #{tmp 56096}#)
- #f)
- (@apply
- (lambda (#{a 56102}# #{b 56103}#)
- (#{opt 55934}#
- #{b 56103}#
- (reverse #{rreq 55941}#)
- '()))
- #{tmp 56096}#)
- (let ((#{tmp 56106}#
- ($sc-dispatch #{args 55940}# '(any . any))))
- (if (if #{tmp 56106}#
- (@apply
- (lambda (#{a 56110}# #{b 56111}#)
- (eq? (syntax->datum #{a 56110}#) #:key))
- #{tmp 56106}#)
- #f)
- (@apply
- (lambda (#{a 56112}# #{b 56113}#)
- (#{key 55935}#
- #{b 56113}#
- (reverse #{rreq 55941}#)
- '()
- '()))
- #{tmp 56106}#)
- (let ((#{tmp 56116}#
- ($sc-dispatch
- #{args 55940}#
- '(any any))))
- (if (if #{tmp 56116}#
- (@apply
- (lambda (#{a 56120}# #{b 56121}#)
- (eq? (syntax->datum #{a 56120}#)
- #:rest))
- #{tmp 56116}#)
- #f)
- (@apply
- (lambda (#{a 56122}# #{b 56123}#)
- (#{rest 55936}#
- #{b 56123}#
- (reverse #{rreq 55941}#)
- '()
- '()))
- #{tmp 56116}#)
- (let ((#{tmp 56126}# (list #{args 55940}#)))
- (if (@apply
- (lambda (#{r 56128}#)
- (if (symbol? #{r 56128}#)
- #t
- (if (if (vector? #{r 56128}#)
- (if (= (vector-length
- #{r 56128}#)
- 4)
- (eq? (vector-ref
- #{r 56128}#
- 0)
- 'syntax-object)
+ (symbol? (vector-ref a-33469 1))
+ #f)))
+ tmp-33465)
+ #f)
+ (@apply
+ (lambda (a-33497 b-33498)
+ (req-33336 b-33498 (cons a-33497 rreq-33344)))
+ tmp-33465)
+ (let ((tmp-33499
+ ($sc-dispatch args-33343 '(any . any))))
+ (if (if tmp-33499
+ (@apply
+ (lambda (a-33503 b-33504)
+ (eq? (syntax->datum a-33503) #:optional))
+ tmp-33499)
+ #f)
+ (@apply
+ (lambda (a-33505 b-33506)
+ (opt-33337 b-33506 (reverse rreq-33344) '()))
+ tmp-33499)
+ (let ((tmp-33509
+ ($sc-dispatch args-33343 '(any . any))))
+ (if (if tmp-33509
+ (@apply
+ (lambda (a-33513 b-33514)
+ (eq? (syntax->datum a-33513) #:key))
+ tmp-33509)
+ #f)
+ (@apply
+ (lambda (a-33515 b-33516)
+ (key-33338
+ b-33516
+ (reverse rreq-33344)
+ '()
+ '()))
+ tmp-33509)
+ (let ((tmp-33519
+ ($sc-dispatch args-33343 '(any any))))
+ (if (if tmp-33519
+ (@apply
+ (lambda (a-33523 b-33524)
+ (eq? (syntax->datum a-33523)
+ #:rest))
+ tmp-33519)
+ #f)
+ (@apply
+ (lambda (a-33525 b-33526)
+ (rest-33339
+ b-33526
+ (reverse rreq-33344)
+ '()
+ '()))
+ tmp-33519)
+ (let ((tmp-33529 (list args-33343)))
+ (if (@apply
+ (lambda (r-33531)
+ (if (symbol? r-33531)
+ #t
+ (if (if (vector? r-33531)
+ (if (= (vector-length
+ r-33531)
+ 4)
+ (eq? (vector-ref
+ r-33531
+ 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (symbol?
- (vector-ref #{r 56128}# 1))
- #f)))
- #{tmp 56126}#)
- (@apply
- (lambda (#{r 56158}#)
- (#{rest 55936}#
- #{r 56158}#
- (reverse #{rreq 55941}#)
- '()
- '()))
- #{tmp 56126}#)
- (syntax-violation
- 'lambda*
- "invalid argument list"
- #{orig-args 55932}#
- #{args 55940}#)))))))))))))))
- (#{opt 55934}#
- (lambda (#{args 56177}# #{req 56178}# #{ropt 56179}#)
- (let ((#{tmp 56181}# ($sc-dispatch #{args 56177}# '())))
- (if #{tmp 56181}#
- (@apply
- (lambda ()
- (#{check 55937}#
- #{req 56178}#
- (reverse #{ropt 56179}#)
- #f
- '()))
- #{tmp 56181}#)
- (let ((#{tmp 56302}#
- ($sc-dispatch #{args 56177}# '(any . any))))
- (if (if #{tmp 56302}#
- (@apply
- (lambda (#{a 56306}# #{b 56307}#)
- (if (symbol? #{a 56306}#)
- #t
- (if (if (vector? #{a 56306}#)
- (if (= (vector-length #{a 56306}#) 4)
- (eq? (vector-ref #{a 56306}# 0)
- 'syntax-object)
+ (symbol?
+ (vector-ref r-33531 1))
+ #f)))
+ tmp-33529)
+ (@apply
+ (lambda (r-33561)
+ (rest-33339
+ r-33561
+ (reverse rreq-33344)
+ '()
+ '()))
+ tmp-33529)
+ (syntax-violation
+ 'lambda*
+ "invalid argument list"
+ orig-args-33335
+ args-33343)))))))))))))))
+ (opt-33337
+ (lambda (args-33580 req-33581 ropt-33582)
+ (let ((tmp-33584 ($sc-dispatch args-33580 '())))
+ (if tmp-33584
+ (@apply
+ (lambda ()
+ (check-33340
+ req-33581
+ (reverse ropt-33582)
+ #f
+ '()))
+ tmp-33584)
+ (let ((tmp-33705
+ ($sc-dispatch args-33580 '(any . any))))
+ (if (if tmp-33705
+ (@apply
+ (lambda (a-33709 b-33710)
+ (if (symbol? a-33709)
+ #t
+ (if (if (vector? a-33709)
+ (if (= (vector-length a-33709) 4)
+ (eq? (vector-ref a-33709 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{a 56306}# 1))
- #f)))
- #{tmp 56302}#)
- #f)
- (@apply
- (lambda (#{a 56334}# #{b 56335}#)
- (#{opt 55934}#
- #{b 56335}#
- #{req 56178}#
- (cons (cons #{a 56334}#
- '(#(syntax-object
- #f
- ((top)
- #(ribcage
- #(a b)
- #((top) (top))
- #("i26305" "i26306"))
- #(ribcage () () ())
- #(ribcage
- #(args req ropt)
- #((top) (top) (top))
- #("i26295" "i26296" "i26297"))
- #(ribcage
- (check rest key opt req)
- ((top) (top) (top) (top) (top))
- ("i26241"
- "i26239"
- "i26237"
- "i26235"
- "i26233"))
- #(ribcage
- #(orig-args)
- #((top))
- #("i26232"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile))))
- #{ropt 56179}#)))
- #{tmp 56302}#)
- (let ((#{tmp 56336}#
- ($sc-dispatch
- #{args 56177}#
- '((any any) . any))))
- (if (if #{tmp 56336}#
- (@apply
- (lambda (#{a 56340}#
- #{init 56341}#
- #{b 56342}#)
- (if (symbol? #{a 56340}#)
- #t
- (if (if (vector? #{a 56340}#)
- (if (= (vector-length #{a 56340}#) 4)
- (eq? (vector-ref #{a 56340}# 0)
- 'syntax-object)
+ (symbol? (vector-ref a-33709 1))
+ #f)))
+ tmp-33705)
+ #f)
+ (@apply
+ (lambda (a-33737 b-33738)
+ (opt-33337
+ b-33738
+ req-33581
+ (cons (cons a-33737
+ '(#(syntax-object
+ #f
+ ((top)
+ #(ribcage
+ #(a b)
+ #((top) (top))
+ #("l-*-2555" "l-*-2556"))
+ #(ribcage () () ())
+ #(ribcage
+ #(args req ropt)
+ #((top) (top) (top))
+ #("l-*-2545"
+ "l-*-2546"
+ "l-*-2547"))
+ #(ribcage
+ (check rest key opt req)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("l-*-2491"
+ "l-*-2489"
+ "l-*-2487"
+ "l-*-2485"
+ "l-*-2483"))
+ #(ribcage
+ #(orig-args)
+ #((top))
+ #("l-*-2482"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile))))
+ ropt-33582)))
+ tmp-33705)
+ (let ((tmp-33739
+ ($sc-dispatch args-33580 '((any any) . any))))
+ (if (if tmp-33739
+ (@apply
+ (lambda (a-33743 init-33744 b-33745)
+ (if (symbol? a-33743)
+ #t
+ (if (if (vector? a-33743)
+ (if (= (vector-length a-33743) 4)
+ (eq? (vector-ref a-33743 0)
+ 'syntax-object)
+ #f)
#f)
+ (symbol? (vector-ref a-33743 1))
+ #f)))
+ tmp-33739)
+ #f)
+ (@apply
+ (lambda (a-33772 init-33773 b-33774)
+ (opt-33337
+ b-33774
+ req-33581
+ (cons (list a-33772 init-33773) ropt-33582)))
+ tmp-33739)
+ (let ((tmp-33775
+ ($sc-dispatch args-33580 '(any . any))))
+ (if (if tmp-33775
+ (@apply
+ (lambda (a-33779 b-33780)
+ (eq? (syntax->datum a-33779) #:key))
+ tmp-33775)
+ #f)
+ (@apply
+ (lambda (a-33781 b-33782)
+ (key-33338
+ b-33782
+ req-33581
+ (reverse ropt-33582)
+ '()))
+ tmp-33775)
+ (let ((tmp-33785
+ ($sc-dispatch args-33580 '(any any))))
+ (if (if tmp-33785
+ (@apply
+ (lambda (a-33789 b-33790)
+ (eq? (syntax->datum a-33789)
+ #:rest))
+ tmp-33785)
+ #f)
+ (@apply
+ (lambda (a-33791 b-33792)
+ (rest-33339
+ b-33792
+ req-33581
+ (reverse ropt-33582)
+ '()))
+ tmp-33785)
+ (let ((tmp-33795 (list args-33580)))
+ (if (@apply
+ (lambda (r-33797)
+ (if (symbol? r-33797)
+ #t
+ (if (if (vector? r-33797)
+ (if (= (vector-length
+ r-33797)
+ 4)
+ (eq? (vector-ref
+ r-33797
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol?
+ (vector-ref r-33797 1))
+ #f)))
+ tmp-33795)
+ (@apply
+ (lambda (r-33827)
+ (rest-33339
+ r-33827
+ req-33581
+ (reverse ropt-33582)
+ '()))
+ tmp-33795)
+ (syntax-violation
+ 'lambda*
+ "invalid optional argument list"
+ orig-args-33335
+ args-33580)))))))))))))))
+ (key-33338
+ (lambda (args-33846 req-33847 opt-33848 rkey-33849)
+ (let ((tmp-33851 ($sc-dispatch args-33846 '())))
+ (if tmp-33851
+ (@apply
+ (lambda ()
+ (check-33340
+ req-33847
+ opt-33848
+ #f
+ (cons #f (reverse rkey-33849))))
+ tmp-33851)
+ (let ((tmp-33973
+ ($sc-dispatch args-33846 '(any . any))))
+ (if (if tmp-33973
+ (@apply
+ (lambda (a-33977 b-33978)
+ (if (symbol? a-33977)
+ #t
+ (if (if (vector? a-33977)
+ (if (= (vector-length a-33977) 4)
+ (eq? (vector-ref a-33977 0)
+ 'syntax-object)
#f)
- (symbol? (vector-ref #{a 56340}# 1))
- #f)))
- #{tmp 56336}#)
- #f)
- (@apply
- (lambda (#{a 56369}# #{init 56370}# #{b 56371}#)
- (#{opt 55934}#
- #{b 56371}#
- #{req 56178}#
- (cons (list #{a 56369}# #{init 56370}#)
- #{ropt 56179}#)))
- #{tmp 56336}#)
- (let ((#{tmp 56372}#
- ($sc-dispatch #{args 56177}# '(any . any))))
- (if (if #{tmp 56372}#
- (@apply
- (lambda (#{a 56376}# #{b 56377}#)
- (eq? (syntax->datum #{a 56376}#) #:key))
- #{tmp 56372}#)
- #f)
- (@apply
- (lambda (#{a 56378}# #{b 56379}#)
- (#{key 55935}#
- #{b 56379}#
- #{req 56178}#
- (reverse #{ropt 56179}#)
- '()))
- #{tmp 56372}#)
- (let ((#{tmp 56382}#
- ($sc-dispatch
- #{args 56177}#
- '(any any))))
- (if (if #{tmp 56382}#
- (@apply
- (lambda (#{a 56386}# #{b 56387}#)
- (eq? (syntax->datum #{a 56386}#)
- #:rest))
- #{tmp 56382}#)
- #f)
- (@apply
- (lambda (#{a 56388}# #{b 56389}#)
- (#{rest 55936}#
- #{b 56389}#
- #{req 56178}#
- (reverse #{ropt 56179}#)
- '()))
- #{tmp 56382}#)
- (let ((#{tmp 56392}# (list #{args 56177}#)))
- (if (@apply
- (lambda (#{r 56394}#)
- (if (symbol? #{r 56394}#)
+ #f)
+ (symbol? (vector-ref a-33977 1))
+ #f)))
+ tmp-33973)
+ #f)
+ (@apply
+ (lambda (a-34005 b-34006)
+ (let ((tmp-34007
+ (symbol->keyword (syntax->datum a-34005))))
+ (key-33338
+ b-34006
+ req-33847
+ opt-33848
+ (cons (cons tmp-34007
+ (cons a-34005
+ '(#(syntax-object
+ #f
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(k)
+ #((top))
+ #("l-*-2618"))
+ #(ribcage
+ #(a b)
+ #((top) (top))
+ #("l-*-2612"
+ "l-*-2613"))
+ #(ribcage () () ())
+ #(ribcage
+ #(args req opt rkey)
+ #((top)
+ (top)
+ (top)
+ (top))
+ #("l-*-2601"
+ "l-*-2602"
+ "l-*-2603"
+ "l-*-2604"))
+ #(ribcage
+ (check rest
+ key
+ opt
+ req)
+ ((top)
+ (top)
+ (top)
+ (top)
+ (top))
+ ("l-*-2491"
+ "l-*-2489"
+ "l-*-2487"
+ "l-*-2485"
+ "l-*-2483"))
+ #(ribcage
+ #(orig-args)
+ #((top))
+ #("l-*-2482"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47"
+ "l-*-46"
+ "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile)))))
+ rkey-33849))))
+ tmp-33973)
+ (let ((tmp-34010
+ ($sc-dispatch args-33846 '((any any) . any))))
+ (if (if tmp-34010
+ (@apply
+ (lambda (a-34014 init-34015 b-34016)
+ (if (symbol? a-34014)
+ #t
+ (if (if (vector? a-34014)
+ (if (= (vector-length a-34014) 4)
+ (eq? (vector-ref a-34014 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref a-34014 1))
+ #f)))
+ tmp-34010)
+ #f)
+ (@apply
+ (lambda (a-34043 init-34044 b-34045)
+ (let ((tmp-34046
+ (symbol->keyword
+ (syntax->datum a-34043))))
+ (key-33338
+ b-34045
+ req-33847
+ opt-33848
+ (cons (list tmp-34046 a-34043 init-34044)
+ rkey-33849))))
+ tmp-34010)
+ (let ((tmp-34049
+ ($sc-dispatch
+ args-33846
+ '((any any any) . any))))
+ (if (if tmp-34049
+ (@apply
+ (lambda (a-34053
+ init-34054
+ k-34055
+ b-34056)
+ (if (if (symbol? a-34053)
#t
- (if (if (vector? #{r 56394}#)
+ (if (if (vector? a-34053)
(if (= (vector-length
- #{r 56394}#)
+ a-34053)
4)
(eq? (vector-ref
- #{r 56394}#
+ a-34053
0)
'syntax-object)
#f)
#f)
(symbol?
- (vector-ref #{r 56394}# 1))
- #f)))
- #{tmp 56392}#)
- (@apply
- (lambda (#{r 56424}#)
- (#{rest 55936}#
- #{r 56424}#
- #{req 56178}#
- (reverse #{ropt 56179}#)
- '()))
- #{tmp 56392}#)
- (syntax-violation
- 'lambda*
- "invalid optional argument list"
- #{orig-args 55932}#
- #{args 56177}#)))))))))))))))
- (#{key 55935}#
- (lambda (#{args 56443}#
- #{req 56444}#
- #{opt 56445}#
- #{rkey 56446}#)
- (let ((#{tmp 56448}# ($sc-dispatch #{args 56443}# '())))
- (if #{tmp 56448}#
- (@apply
- (lambda ()
- (#{check 55937}#
- #{req 56444}#
- #{opt 56445}#
- #f
- (cons #f (reverse #{rkey 56446}#))))
- #{tmp 56448}#)
- (let ((#{tmp 56570}#
- ($sc-dispatch #{args 56443}# '(any . any))))
- (if (if #{tmp 56570}#
- (@apply
- (lambda (#{a 56574}# #{b 56575}#)
- (if (symbol? #{a 56574}#)
- #t
- (if (if (vector? #{a 56574}#)
- (if (= (vector-length #{a 56574}#) 4)
- (eq? (vector-ref #{a 56574}# 0)
- 'syntax-object)
+ (vector-ref a-34053 1))
+ #f))
+ (keyword? (syntax->datum k-34055))
+ #f))
+ tmp-34049)
+ #f)
+ (@apply
+ (lambda (a-34083 init-34084 k-34085 b-34086)
+ (key-33338
+ b-34086
+ req-33847
+ opt-33848
+ (cons (list k-34085 a-34083 init-34084)
+ rkey-33849)))
+ tmp-34049)
+ (let ((tmp-34087
+ ($sc-dispatch args-33846 '(any))))
+ (if (if tmp-34087
+ (@apply
+ (lambda (aok-34091)
+ (eq? (syntax->datum aok-34091)
+ #:allow-other-keys))
+ tmp-34087)
#f)
- #f)
- (symbol? (vector-ref #{a 56574}# 1))
- #f)))
- #{tmp 56570}#)
- #f)
- (@apply
- (lambda (#{a 56602}# #{b 56603}#)
- (let ((#{tmp 56604}#
- (symbol->keyword
- (syntax->datum #{a 56602}#))))
- (#{key 55935}#
- #{b 56603}#
- #{req 56444}#
- #{opt 56445}#
- (cons (cons #{tmp 56604}#
- (cons #{a 56602}#
- '(#(syntax-object
- #f
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(k)
- #((top))
- #("i26368"))
- #(ribcage
- #(a b)
- #((top) (top))
- #("i26362" "i26363"))
- #(ribcage () () ())
- #(ribcage
- #(args req opt rkey)
- #((top)
- (top)
- (top)
- (top))
- #("i26351"
- "i26352"
- "i26353"
- "i26354"))
- #(ribcage
- (check rest key opt req)
- ((top)
- (top)
- (top)
- (top)
- (top))
- ("i26241"
- "i26239"
- "i26237"
- "i26235"
- "i26233"))
- #(ribcage
- #(orig-args)
- #((top))
- #("i26232"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873"
- "i23872"
- "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))))
- #{rkey 56446}#))))
- #{tmp 56570}#)
- (let ((#{tmp 56607}#
- ($sc-dispatch
- #{args 56443}#
- '((any any) . any))))
- (if (if #{tmp 56607}#
- (@apply
- (lambda (#{a 56611}#
- #{init 56612}#
- #{b 56613}#)
- (if (symbol? #{a 56611}#)
- #t
- (if (if (vector? #{a 56611}#)
- (if (= (vector-length #{a 56611}#) 4)
- (eq? (vector-ref #{a 56611}# 0)
- 'syntax-object)
+ (@apply
+ (lambda (aok-34092)
+ (check-33340
+ req-33847
+ opt-33848
+ #f
+ (cons #t (reverse rkey-33849))))
+ tmp-34087)
+ (let ((tmp-34211
+ ($sc-dispatch
+ args-33846
+ '(any any any))))
+ (if (if tmp-34211
+ (@apply
+ (lambda (aok-34215
+ a-34216
+ b-34217)
+ (if (eq? (syntax->datum
+ aok-34215)
+ #:allow-other-keys)
+ (eq? (syntax->datum a-34216)
+ #:rest)
+ #f))
+ tmp-34211)
#f)
- #f)
- (symbol? (vector-ref #{a 56611}# 1))
- #f)))
- #{tmp 56607}#)
- #f)
- (@apply
- (lambda (#{a 56640}# #{init 56641}# #{b 56642}#)
- (let ((#{tmp 56643}#
- (symbol->keyword
- (syntax->datum #{a 56640}#))))
- (#{key 55935}#
- #{b 56642}#
- #{req 56444}#
- #{opt 56445}#
- (cons (list #{tmp 56643}#
- #{a 56640}#
- #{init 56641}#)
- #{rkey 56446}#))))
- #{tmp 56607}#)
- (let ((#{tmp 56646}#
- ($sc-dispatch
- #{args 56443}#
- '((any any any) . any))))
- (if (if #{tmp 56646}#
- (@apply
- (lambda (#{a 56650}#
- #{init 56651}#
- #{k 56652}#
- #{b 56653}#)
- (if (if (symbol? #{a 56650}#)
- #t
- (if (if (vector? #{a 56650}#)
+ (@apply
+ (lambda (aok-34218 a-34219 b-34220)
+ (rest-33339
+ b-34220
+ req-33847
+ opt-33848
+ (cons #t (reverse rkey-33849))))
+ tmp-34211)
+ (let ((tmp-34223
+ ($sc-dispatch
+ args-33846
+ '(any . any))))
+ (if (if tmp-34223
+ (@apply
+ (lambda (aok-34227 r-34228)
+ (if (eq? (syntax->datum
+ aok-34227)
+ #:allow-other-keys)
+ (if (symbol? r-34228)
+ #t
+ (if (if (vector?
+ r-34228)
+ (if (= (vector-length
+ r-34228)
+ 4)
+ (eq? (vector-ref
+ r-34228
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol?
+ (vector-ref
+ r-34228
+ 1))
+ #f))
+ #f))
+ tmp-34223)
+ #f)
+ (@apply
+ (lambda (aok-34255 r-34256)
+ (rest-33339
+ r-34256
+ req-33847
+ opt-33848
+ (cons #t
+ (reverse rkey-33849))))
+ tmp-34223)
+ (let ((tmp-34259
+ ($sc-dispatch
+ args-33846
+ '(any any))))
+ (if (if tmp-34259
+ (@apply
+ (lambda (a-34263 b-34264)
+ (eq? (syntax->datum
+ a-34263)
+ #:rest))
+ tmp-34259)
+ #f)
+ (@apply
+ (lambda (a-34265 b-34266)
+ (rest-33339
+ b-34266
+ req-33847
+ opt-33848
+ (cons #f
+ (reverse
+ rkey-33849))))
+ tmp-34259)
+ (let ((tmp-34269
+ (list args-33846)))
+ (if (@apply
+ (lambda (r-34271)
+ (if (symbol? r-34271)
+ #t
+ (if (if (vector?
+ r-34271)
+ (if (= (vector-length
+ r-34271)
+ 4)
+ (eq? (vector-ref
+ r-34271
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol?
+ (vector-ref
+ r-34271
+ 1))
+ #f)))
+ tmp-34269)
+ (@apply
+ (lambda (r-34301)
+ (rest-33339
+ r-34301
+ req-33847
+ opt-33848
+ (cons #f
+ (reverse
+ rkey-33849))))
+ tmp-34269)
+ (syntax-violation
+ 'lambda*
+ "invalid keyword argument list"
+ orig-args-33335
+ args-33846)))))))))))))))))))))
+ (rest-33339
+ (lambda (args-34329 req-34330 opt-34331 kw-34332)
+ (let ((tmp-34334 (list args-34329)))
+ (if (@apply
+ (lambda (r-34336)
+ (if (symbol? r-34336)
+ #t
+ (if (if (vector? r-34336)
+ (if (= (vector-length r-34336) 4)
+ (eq? (vector-ref r-34336 0) 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref r-34336 1))
+ #f)))
+ tmp-34334)
+ (@apply
+ (lambda (r-34366)
+ (check-33340
+ req-34330
+ opt-34331
+ r-34366
+ kw-34332))
+ tmp-34334)
+ (syntax-violation
+ 'lambda*
+ "invalid rest argument"
+ orig-args-33335
+ args-34329)))))
+ (check-33340
+ (lambda (req-34494 opt-34495 rest-34496 kw-34497)
+ (if (distinct-bound-ids?-4577
+ (append
+ req-34494
+ (map car opt-34495)
+ (if rest-34496 (list rest-34496) '())
+ (if (pair? kw-34497)
+ (map cadr (cdr kw-34497))
+ '())))
+ (values req-34494 opt-34495 rest-34496 kw-34497)
+ (syntax-violation
+ 'lambda*
+ "duplicate identifier in argument list"
+ orig-args-33335)))))
+ (req-33336 orig-args-33335 '()))))
+ (expand-lambda-case-4598
+ (lambda (e-34606
+ r-34607
+ w-34608
+ s-34609
+ mod-34610
+ get-formals-34611
+ clauses-34612)
+ (letrec*
+ ((parse-req-34613
+ (lambda (req-34746
+ opt-34747
+ rest-34748
+ kw-34749
+ body-34750)
+ (let ((vars-34751 (map gen-var-4600 req-34746))
+ (labels-34752 (gen-labels-4553 req-34746)))
+ (let ((r*-34753
+ (extend-var-env-4546
+ labels-34752
+ vars-34751
+ r-34607))
+ (w*-34754
+ (make-binding-wrap-4564
+ req-34746
+ labels-34752
+ w-34608)))
+ (parse-opt-34614
+ (map syntax->datum req-34746)
+ opt-34747
+ rest-34748
+ kw-34749
+ body-34750
+ (reverse vars-34751)
+ r*-34753
+ w*-34754
+ '()
+ '())))))
+ (parse-opt-34614
+ (lambda (req-34951
+ opt-34952
+ rest-34953
+ kw-34954
+ body-34955
+ vars-34956
+ r*-34957
+ w*-34958
+ out-34959
+ inits-34960)
+ (if (pair? opt-34952)
+ (let ((tmp-34961 (car opt-34952)))
+ (let ((tmp-34962 ($sc-dispatch tmp-34961 '(any any))))
+ (if tmp-34962
+ (@apply
+ (lambda (id-34964 i-34965)
+ (let ((v-34966
+ (let ((id-34974
+ (if (if (vector? id-34964)
(if (= (vector-length
- #{a 56650}#)
+ id-34964)
4)
(eq? (vector-ref
- #{a 56650}#
+ id-34964
0)
'syntax-object)
#f)
#f)
- (symbol?
- (vector-ref #{a 56650}# 1))
- #f))
- (keyword? (syntax->datum #{k 56652}#))
- #f))
- #{tmp 56646}#)
- #f)
- (@apply
- (lambda (#{a 56680}#
- #{init 56681}#
- #{k 56682}#
- #{b 56683}#)
- (#{key 55935}#
- #{b 56683}#
- #{req 56444}#
- #{opt 56445}#
- (cons (list #{k 56682}#
- #{a 56680}#
- #{init 56681}#)
- #{rkey 56446}#)))
- #{tmp 56646}#)
- (let ((#{tmp 56684}#
- ($sc-dispatch #{args 56443}# '(any))))
- (if (if #{tmp 56684}#
- (@apply
- (lambda (#{aok 56688}#)
- (eq? (syntax->datum #{aok 56688}#)
- #:allow-other-keys))
- #{tmp 56684}#)
- #f)
- (@apply
- (lambda (#{aok 56689}#)
- (#{check 55937}#
- #{req 56444}#
- #{opt 56445}#
- #f
- (cons #t (reverse #{rkey 56446}#))))
- #{tmp 56684}#)
- (let ((#{tmp 56808}#
- ($sc-dispatch
- #{args 56443}#
- '(any any any))))
- (if (if #{tmp 56808}#
- (@apply
- (lambda (#{aok 56812}#
- #{a 56813}#
- #{b 56814}#)
- (if (eq? (syntax->datum
- #{aok 56812}#)
- #:allow-other-keys)
- (eq? (syntax->datum
- #{a 56813}#)
- #:rest)
- #f))
- #{tmp 56808}#)
+ (vector-ref id-34964 1)
+ id-34964)))
+ (gensym
+ (string-append
+ (symbol->string id-34974)
+ "-")))))
+ (let ((l-34967 (gen-labels-4553 (list v-34966))))
+ (let ((r**-34968
+ (extend-var-env-4546
+ l-34967
+ (list v-34966)
+ r*-34957)))
+ (let ((w**-34969
+ (make-binding-wrap-4564
+ (list id-34964)
+ l-34967
+ w*-34958)))
+ (parse-opt-34614
+ req-34951
+ (cdr opt-34952)
+ rest-34953
+ kw-34954
+ body-34955
+ (cons v-34966 vars-34956)
+ r**-34968
+ w**-34969
+ (cons (syntax->datum id-34964) out-34959)
+ (cons (expand-4586
+ i-34965
+ r*-34957
+ w*-34958
+ mod-34610)
+ inits-34960)))))))
+ tmp-34962)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ tmp-34961))))
+ (if rest-34953
+ (let ((v-35232
+ (let ((id-35242
+ (if (if (vector? rest-34953)
+ (if (= (vector-length rest-34953) 4)
+ (eq? (vector-ref rest-34953 0)
+ 'syntax-object)
+ #f)
#f)
- (@apply
- (lambda (#{aok 56815}#
- #{a 56816}#
- #{b 56817}#)
- (#{rest 55936}#
- #{b 56817}#
- #{req 56444}#
- #{opt 56445}#
- (cons #t
- (reverse #{rkey 56446}#))))
- #{tmp 56808}#)
- (let ((#{tmp 56820}#
- ($sc-dispatch
- #{args 56443}#
- '(any . any))))
- (if (if #{tmp 56820}#
- (@apply
- (lambda (#{aok 56824}#
- #{r 56825}#)
- (if (eq? (syntax->datum
- #{aok 56824}#)
- #:allow-other-keys)
- (if (symbol? #{r 56825}#)
- #t
- (if (if (vector?
- #{r 56825}#)
- (if (= (vector-length
- #{r 56825}#)
- 4)
- (eq? (vector-ref
- #{r 56825}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (symbol?
- (vector-ref
- #{r 56825}#
- 1))
- #f))
- #f))
- #{tmp 56820}#)
- #f)
- (@apply
- (lambda (#{aok 56852}# #{r 56853}#)
- (#{rest 55936}#
- #{r 56853}#
- #{req 56444}#
- #{opt 56445}#
- (cons #t
- (reverse
- #{rkey 56446}#))))
- #{tmp 56820}#)
- (let ((#{tmp 56856}#
- ($sc-dispatch
- #{args 56443}#
- '(any any))))
- (if (if #{tmp 56856}#
- (@apply
- (lambda (#{a 56860}#
- #{b 56861}#)
- (eq? (syntax->datum
- #{a 56860}#)
- #:rest))
- #{tmp 56856}#)
- #f)
- (@apply
- (lambda (#{a 56862}#
- #{b 56863}#)
- (#{rest 55936}#
- #{b 56863}#
- #{req 56444}#
- #{opt 56445}#
- (cons #f
- (reverse
- #{rkey 56446}#))))
- #{tmp 56856}#)
- (let ((#{tmp 56866}#
- (list #{args 56443}#)))
- (if (@apply
- (lambda (#{r 56868}#)
- (if (symbol?
- #{r 56868}#)
- #t
- (if (if (vector?
- #{r 56868}#)
- (if (= (vector-length
- #{r 56868}#)
- 4)
- (eq? (vector-ref
- #{r 56868}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (symbol?
- (vector-ref
- #{r 56868}#
- 1))
- #f)))
- #{tmp 56866}#)
- (@apply
- (lambda (#{r 56898}#)
- (#{rest 55936}#
- #{r 56898}#
- #{req 56444}#
- #{opt 56445}#
- (cons #f
- (reverse
- #{rkey 56446}#))))
- #{tmp 56866}#)
- (syntax-violation
- 'lambda*
- "invalid keyword argument list"
- #{orig-args 55932}#
- #{args 56443}#)))))))))))))))))))))
- (#{rest 55936}#
- (lambda (#{args 56926}#
- #{req 56927}#
- #{opt 56928}#
- #{kw 56929}#)
- (let ((#{tmp 56931}# (list #{args 56926}#)))
- (if (@apply
- (lambda (#{r 56933}#)
- (if (symbol? #{r 56933}#)
- #t
- (if (if (vector? #{r 56933}#)
- (if (= (vector-length #{r 56933}#) 4)
- (eq? (vector-ref #{r 56933}# 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{r 56933}# 1))
- #f)))
- #{tmp 56931}#)
- (@apply
- (lambda (#{r 56963}#)
- (#{check 55937}#
- #{req 56927}#
- #{opt 56928}#
- #{r 56963}#
- #{kw 56929}#))
- #{tmp 56931}#)
- (syntax-violation
- 'lambda*
- "invalid rest argument"
- #{orig-args 55932}#
- #{args 56926}#)))))
- (#{check 55937}#
- (lambda (#{req 57091}#
- #{opt 57092}#
- #{rest 57093}#
- #{kw 57094}#)
- (if (#{distinct-bound-ids? 28262}#
- (append
- #{req 57091}#
- (map car #{opt 57092}#)
- (if #{rest 57093}# (list #{rest 57093}#) '())
- (if (pair? #{kw 57094}#)
- (map cadr (cdr #{kw 57094}#))
- '())))
- (values
- #{req 57091}#
- #{opt 57092}#
- #{rest 57093}#
- #{kw 57094}#)
- (syntax-violation
- 'lambda*
- "duplicate identifier in argument list"
- #{orig-args 55932}#)))))
- (#{req 55933}# #{orig-args 55932}# '()))))
- (#{expand-lambda-case 28283}#
- (lambda (#{e 57203}#
- #{r 57204}#
- #{w 57205}#
- #{s 57206}#
- #{mod 57207}#
- #{get-formals 57208}#
- #{clauses 57209}#)
- (letrec*
- ((#{parse-req 57210}#
- (lambda (#{req 57345}#
- #{opt 57346}#
- #{rest 57347}#
- #{kw 57348}#
- #{body 57349}#)
- (let ((#{vars 57350}#
- (map #{gen-var 28285}# #{req 57345}#))
- (#{labels 57351}#
- (#{gen-labels 28241}# #{req 57345}#)))
- (let ((#{r* 57352}#
- (#{extend-var-env 28234}#
- #{labels 57351}#
- #{vars 57350}#
- #{r 57204}#))
- (#{w* 57353}#
- (#{make-binding-wrap 28252}#
- #{req 57345}#
- #{labels 57351}#
- #{w 57205}#)))
- (#{parse-opt 57211}#
- (map syntax->datum #{req 57345}#)
- #{opt 57346}#
- #{rest 57347}#
- #{kw 57348}#
- #{body 57349}#
- (reverse #{vars 57350}#)
- #{r* 57352}#
- #{w* 57353}#
- '()
- '())))))
- (#{parse-opt 57211}#
- (lambda (#{req 57587}#
- #{opt 57588}#
- #{rest 57589}#
- #{kw 57590}#
- #{body 57591}#
- #{vars 57592}#
- #{r* 57593}#
- #{w* 57594}#
- #{out 57595}#
- #{inits 57596}#)
- (if (pair? #{opt 57588}#)
- (let ((#{tmp 57597}# (car #{opt 57588}#)))
- (let ((#{tmp 57598}#
- ($sc-dispatch #{tmp 57597}# '(any any))))
- (if #{tmp 57598}#
- (@apply
- (lambda (#{id 57600}# #{i 57601}#)
- (let ((#{v 57602}#
- (let ((#{id 57610}#
- (if (if (vector? #{id 57600}#)
- (if (= (vector-length
- #{id 57600}#)
- 4)
- (eq? (vector-ref
- #{id 57600}#
- 0)
- 'syntax-object)
+ (vector-ref rest-34953 1)
+ rest-34953)))
+ (gensym
+ (string-append
+ (symbol->string id-35242)
+ "-")))))
+ (let ((l-35233 (gen-labels-4553 (list v-35232))))
+ (let ((r*-35234
+ (extend-var-env-4546
+ l-35233
+ (list v-35232)
+ r*-34957)))
+ (let ((w*-35235
+ (make-binding-wrap-4564
+ (list rest-34953)
+ l-35233
+ w*-34958)))
+ (parse-kw-34615
+ req-34951
+ (if (pair? out-34959) (reverse out-34959) #f)
+ (syntax->datum rest-34953)
+ (if (pair? kw-34954) (cdr kw-34954) kw-34954)
+ body-34955
+ (cons v-35232 vars-34956)
+ r*-35234
+ w*-35235
+ (if (pair? kw-34954) (car kw-34954) #f)
+ '()
+ inits-34960)))))
+ (parse-kw-34615
+ req-34951
+ (if (pair? out-34959) (reverse out-34959) #f)
+ #f
+ (if (pair? kw-34954) (cdr kw-34954) kw-34954)
+ body-34955
+ vars-34956
+ r*-34957
+ w*-34958
+ (if (pair? kw-34954) (car kw-34954) #f)
+ '()
+ inits-34960)))))
+ (parse-kw-34615
+ (lambda (req-35425
+ opt-35426
+ rest-35427
+ kw-35428
+ body-35429
+ vars-35430
+ r*-35431
+ w*-35432
+ aok-35433
+ out-35434
+ inits-35435)
+ (if (pair? kw-35428)
+ (let ((tmp-35436 (car kw-35428)))
+ (let ((tmp-35437
+ ($sc-dispatch tmp-35436 '(any any any))))
+ (if tmp-35437
+ (@apply
+ (lambda (k-35439 id-35440 i-35441)
+ (let ((v-35442
+ (let ((id-35450
+ (if (if (vector? id-35440)
+ (if (= (vector-length
+ id-35440)
+ 4)
+ (eq? (vector-ref
+ id-35440
+ 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{id 57600}# 1)
- #{id 57600}#)))
- (gensym
- (string-append
- (symbol->string #{id 57610}#)
- " ")))))
- (let ((#{l 57603}#
- (#{gen-labels 28241}# (list #{v 57602}#))))
- (let ((#{r** 57604}#
- (#{extend-var-env 28234}#
- #{l 57603}#
- (list #{v 57602}#)
- #{r* 57593}#)))
- (let ((#{w** 57605}#
- (#{make-binding-wrap 28252}#
- (list #{id 57600}#)
- #{l 57603}#
- #{w* 57594}#)))
- (#{parse-opt 57211}#
- #{req 57587}#
- (cdr #{opt 57588}#)
- #{rest 57589}#
- #{kw 57590}#
- #{body 57591}#
- (cons #{v 57602}# #{vars 57592}#)
- #{r** 57604}#
- #{w** 57605}#
- (cons (syntax->datum #{id 57600}#)
- #{out 57595}#)
- (cons (#{expand 28271}#
- #{i 57601}#
- #{r* 57593}#
- #{w* 57594}#
- #{mod 57207}#)
- #{inits 57596}#)))))))
- #{tmp 57598}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 57597}#))))
- (if #{rest 57589}#
- (let ((#{v 57904}#
- (let ((#{id 57914}#
- (if (if (vector? #{rest 57589}#)
- (if (= (vector-length #{rest 57589}#)
- 4)
- (eq? (vector-ref #{rest 57589}# 0)
- 'syntax-object)
- #f)
- #f)
- (vector-ref #{rest 57589}# 1)
- #{rest 57589}#)))
- (gensym
- (string-append
- (symbol->string #{id 57914}#)
- " ")))))
- (let ((#{l 57905}#
- (#{gen-labels 28241}# (list #{v 57904}#))))
- (let ((#{r* 57906}#
- (#{extend-var-env 28234}#
- #{l 57905}#
- (list #{v 57904}#)
- #{r* 57593}#)))
- (let ((#{w* 57907}#
- (#{make-binding-wrap 28252}#
- (list #{rest 57589}#)
- #{l 57905}#
- #{w* 57594}#)))
- (#{parse-kw 57212}#
- #{req 57587}#
- (if (pair? #{out 57595}#)
- (reverse #{out 57595}#)
- #f)
- (syntax->datum #{rest 57589}#)
- (if (pair? #{kw 57590}#)
- (cdr #{kw 57590}#)
- #{kw 57590}#)
- #{body 57591}#
- (cons #{v 57904}# #{vars 57592}#)
- #{r* 57906}#
- #{w* 57907}#
- (if (pair? #{kw 57590}#) (car #{kw 57590}#) #f)
- '()
- #{inits 57596}#)))))
- (#{parse-kw 57212}#
- #{req 57587}#
- (if (pair? #{out 57595}#)
- (reverse #{out 57595}#)
+ (vector-ref id-35440 1)
+ id-35440)))
+ (gensym
+ (string-append
+ (symbol->string id-35450)
+ "-")))))
+ (let ((l-35443 (gen-labels-4553 (list v-35442))))
+ (let ((r**-35444
+ (extend-var-env-4546
+ l-35443
+ (list v-35442)
+ r*-35431)))
+ (let ((w**-35445
+ (make-binding-wrap-4564
+ (list id-35440)
+ l-35443
+ w*-35432)))
+ (parse-kw-34615
+ req-35425
+ opt-35426
+ rest-35427
+ (cdr kw-35428)
+ body-35429
+ (cons v-35442 vars-35430)
+ r**-35444
+ w**-35445
+ aok-35433
+ (cons (list (syntax->datum k-35439)
+ (syntax->datum id-35440)
+ v-35442)
+ out-35434)
+ (cons (expand-4586
+ i-35441
+ r*-35431
+ w*-35432
+ mod-34610)
+ inits-35435)))))))
+ tmp-35437)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ tmp-35436))))
+ (parse-body-34616
+ req-35425
+ opt-35426
+ rest-35427
+ (if (if aok-35433 aok-35433 (pair? out-35434))
+ (cons aok-35433 (reverse out-35434))
#f)
- #f
- (if (pair? #{kw 57590}#)
- (cdr #{kw 57590}#)
- #{kw 57590}#)
- #{body 57591}#
- #{vars 57592}#
- #{r* 57593}#
- #{w* 57594}#
- (if (pair? #{kw 57590}#) (car #{kw 57590}#) #f)
- '()
- #{inits 57596}#)))))
- (#{parse-kw 57212}#
- (lambda (#{req 58133}#
- #{opt 58134}#
- #{rest 58135}#
- #{kw 58136}#
- #{body 58137}#
- #{vars 58138}#
- #{r* 58139}#
- #{w* 58140}#
- #{aok 58141}#
- #{out 58142}#
- #{inits 58143}#)
- (if (pair? #{kw 58136}#)
- (let ((#{tmp 58144}# (car #{kw 58136}#)))
- (let ((#{tmp 58145}#
- ($sc-dispatch #{tmp 58144}# '(any any any))))
- (if #{tmp 58145}#
- (@apply
- (lambda (#{k 58147}# #{id 58148}# #{i 58149}#)
- (let ((#{v 58150}#
- (let ((#{id 58158}#
- (if (if (vector? #{id 58148}#)
- (if (= (vector-length
- #{id 58148}#)
- 4)
- (eq? (vector-ref
- #{id 58148}#
- 0)
- 'syntax-object)
- #f)
+ body-35429
+ (reverse vars-35430)
+ r*-35431
+ w*-35432
+ (reverse inits-35435)
+ '()))))
+ (parse-body-34616
+ (lambda (req-35717
+ opt-35718
+ rest-35719
+ kw-35720
+ body-35721
+ vars-35722
+ r*-35723
+ w*-35724
+ inits-35725
+ meta-35726)
+ (let ((tmp-35728
+ ($sc-dispatch body-35721 '(any any . each-any))))
+ (if (if tmp-35728
+ (@apply
+ (lambda (docstring-35732 e1-35733 e2-35734)
+ (string? (syntax->datum docstring-35732)))
+ tmp-35728)
+ #f)
+ (@apply
+ (lambda (docstring-35735 e1-35736 e2-35737)
+ (parse-body-34616
+ req-35717
+ opt-35718
+ rest-35719
+ kw-35720
+ (cons e1-35736 e2-35737)
+ vars-35722
+ r*-35723
+ w*-35724
+ inits-35725
+ (append
+ meta-35726
+ (list (cons 'documentation
+ (syntax->datum docstring-35735))))))
+ tmp-35728)
+ (let ((tmp-35738
+ ($sc-dispatch
+ body-35721
+ '(#(vector #(each (any . any)))
+ any
+ .
+ each-any))))
+ (if tmp-35738
+ (@apply
+ (lambda (k-35742 v-35743 e1-35744 e2-35745)
+ (parse-body-34616
+ req-35717
+ opt-35718
+ rest-35719
+ kw-35720
+ (cons e1-35744 e2-35745)
+ vars-35722
+ r*-35723
+ w*-35724
+ inits-35725
+ (append
+ meta-35726
+ (syntax->datum (map cons k-35742 v-35743)))))
+ tmp-35738)
+ (let ((tmp-35746
+ ($sc-dispatch body-35721 '(any . each-any))))
+ (if tmp-35746
+ (@apply
+ (lambda (e1-35750 e2-35751)
+ (values
+ meta-35726
+ req-35717
+ opt-35718
+ rest-35719
+ kw-35720
+ inits-35725
+ vars-35722
+ (expand-body-4590
+ (cons e1-35750 e2-35751)
+ (let ((x-35763
+ (begin
+ (if (if (pair? e-34606)
+ s-34609
+ #f)
+ (set-source-properties!
+ e-34606
+ s-34609))
+ e-34606)))
+ (if (if (null? (car w-34608))
+ (null? (cdr w-34608))
+ #f)
+ x-35763
+ (if (if (vector? x-35763)
+ (if (= (vector-length x-35763) 4)
+ (eq? (vector-ref x-35763 0)
+ 'syntax-object)
#f)
- (vector-ref #{id 58148}# 1)
- #{id 58148}#)))
- (gensym
- (string-append
- (symbol->string #{id 58158}#)
- " ")))))
- (let ((#{l 58151}#
- (#{gen-labels 28241}# (list #{v 58150}#))))
- (let ((#{r** 58152}#
- (#{extend-var-env 28234}#
- #{l 58151}#
- (list #{v 58150}#)
- #{r* 58139}#)))
- (let ((#{w** 58153}#
- (#{make-binding-wrap 28252}#
- (list #{id 58148}#)
- #{l 58151}#
- #{w* 58140}#)))
- (#{parse-kw 57212}#
- #{req 58133}#
- #{opt 58134}#
- #{rest 58135}#
- (cdr #{kw 58136}#)
- #{body 58137}#
- (cons #{v 58150}# #{vars 58138}#)
- #{r** 58152}#
- #{w** 58153}#
- #{aok 58141}#
- (cons (list (syntax->datum #{k 58147}#)
- (syntax->datum #{id 58148}#)
- #{v 58150}#)
- #{out 58142}#)
- (cons (#{expand 28271}#
- #{i 58149}#
- #{r* 58139}#
- #{w* 58140}#
- #{mod 57207}#)
- #{inits 58143}#)))))))
- #{tmp 58145}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 58144}#))))
- (#{parse-body 57213}#
- #{req 58133}#
- #{opt 58134}#
- #{rest 58135}#
- (if (if #{aok 58141}#
- #{aok 58141}#
- (pair? #{out 58142}#))
- (cons #{aok 58141}# (reverse #{out 58142}#))
- #f)
- #{body 58137}#
- (reverse #{vars 58138}#)
- #{r* 58139}#
- #{w* 58140}#
- (reverse #{inits 58143}#)
- '()))))
- (#{parse-body 57213}#
- (lambda (#{req 58461}#
- #{opt 58462}#
- #{rest 58463}#
- #{kw 58464}#
- #{body 58465}#
- #{vars 58466}#
- #{r* 58467}#
- #{w* 58468}#
- #{inits 58469}#
- #{meta 58470}#)
- (let ((#{tmp 58472}#
- ($sc-dispatch
- #{body 58465}#
- '(any any . each-any))))
- (if (if #{tmp 58472}#
- (@apply
- (lambda (#{docstring 58476}# #{e1 58477}# #{e2 58478}#)
- (string? (syntax->datum #{docstring 58476}#)))
- #{tmp 58472}#)
- #f)
- (@apply
- (lambda (#{docstring 58479}# #{e1 58480}# #{e2 58481}#)
- (#{parse-body 57213}#
- #{req 58461}#
- #{opt 58462}#
- #{rest 58463}#
- #{kw 58464}#
- (cons #{e1 58480}# #{e2 58481}#)
- #{vars 58466}#
- #{r* 58467}#
- #{w* 58468}#
- #{inits 58469}#
- (append
- #{meta 58470}#
- (list (cons 'documentation
- (syntax->datum #{docstring 58479}#))))))
- #{tmp 58472}#)
- (let ((#{tmp 58482}#
- ($sc-dispatch
- #{body 58465}#
- '(#(vector #(each (any . any))) any . each-any))))
- (if #{tmp 58482}#
- (@apply
- (lambda (#{k 58486}#
- #{v 58487}#
- #{e1 58488}#
- #{e2 58489}#)
- (#{parse-body 57213}#
- #{req 58461}#
- #{opt 58462}#
- #{rest 58463}#
- #{kw 58464}#
- (cons #{e1 58488}# #{e2 58489}#)
- #{vars 58466}#
- #{r* 58467}#
- #{w* 58468}#
- #{inits 58469}#
- (append
- #{meta 58470}#
- (syntax->datum
- (map cons #{k 58486}# #{v 58487}#)))))
- #{tmp 58482}#)
- (let ((#{tmp 58490}#
- ($sc-dispatch #{body 58465}# '(any . each-any))))
- (if #{tmp 58490}#
- (@apply
- (lambda (#{e1 58494}# #{e2 58495}#)
- (values
- #{meta 58470}#
- #{req 58461}#
- #{opt 58462}#
- #{rest 58463}#
- #{kw 58464}#
- #{inits 58469}#
- #{vars 58466}#
- (#{expand-body 28275}#
- (cons #{e1 58494}# #{e2 58495}#)
- (let ((#{x 58507}#
- (begin
- (if (if (pair? #{e 57203}#)
- #{s 57206}#
- #f)
- (set-source-properties!
- #{e 57203}#
- #{s 57206}#))
- #{e 57203}#)))
- (if (if (null? (car #{w 57205}#))
- (null? (cdr #{w 57205}#))
- #f)
- #{x 58507}#
- (if (if (vector? #{x 58507}#)
- (if (= (vector-length #{x 58507}#)
- 4)
- (eq? (vector-ref #{x 58507}# 0)
- 'syntax-object)
#f)
- #f)
- (let ((#{expression 58539}#
- (vector-ref #{x 58507}# 1))
- (#{wrap 58540}#
- (let ((#{w2 58548}#
- (vector-ref
- #{x 58507}#
- 2)))
- (let ((#{m1 58549}#
- (car #{w 57205}#))
- (#{s1 58550}#
- (cdr #{w 57205}#)))
- (if (null? #{m1 58549}#)
- (if (null? #{s1 58550}#)
- #{w2 58548}#
- (cons (car #{w2 58548}#)
- (let ((#{m2 58565}#
- (cdr #{w2 58548}#)))
- (if (null? #{m2 58565}#)
- #{s1 58550}#
+ (let ((expression-35795
+ (vector-ref x-35763 1))
+ (wrap-35796
+ (let ((w2-35804
+ (vector-ref
+ x-35763
+ 2)))
+ (let ((m1-35805
+ (car w-34608))
+ (s1-35806
+ (cdr w-34608)))
+ (if (null? m1-35805)
+ (if (null? s1-35806)
+ w2-35804
+ (cons (car w2-35804)
+ (let ((m2-35821
+ (cdr w2-35804)))
+ (if (null? m2-35821)
+ s1-35806
+ (append
+ s1-35806
+ m2-35821)))))
+ (cons (let ((m2-35829
+ (car w2-35804)))
+ (if (null? m2-35829)
+ m1-35805
(append
- #{s1 58550}#
- #{m2 58565}#)))))
- (cons (let ((#{m2 58573}#
- (car #{w2 58548}#)))
- (if (null? #{m2 58573}#)
- #{m1 58549}#
- (append
- #{m1 58549}#
- #{m2 58573}#)))
- (let ((#{m2 58581}#
- (cdr #{w2 58548}#)))
- (if (null? #{m2 58581}#)
- #{s1 58550}#
- (append
- #{s1 58550}#
- #{m2 58581}#))))))))
- (#{module 58541}#
- (vector-ref #{x 58507}# 3)))
- (vector
- 'syntax-object
- #{expression 58539}#
- #{wrap 58540}#
- #{module 58541}#))
- (if (null? #{x 58507}#)
- #{x 58507}#
- (vector
- 'syntax-object
- #{x 58507}#
- #{w 57205}#
- #{mod 57207}#)))))
- #{r* 58467}#
- #{w* 58468}#
- #{mod 57207}#)))
- #{tmp 58490}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{body 58465}#))))))))))
- (let ((#{tmp 57215}#
- ($sc-dispatch #{clauses 57209}# '())))
- (if #{tmp 57215}#
- (@apply
- (lambda () (values '() #f))
- #{tmp 57215}#)
- (let ((#{tmp 57219}#
- ($sc-dispatch
- #{clauses 57209}#
- '((any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 57219}#
- (@apply
- (lambda (#{args 57223}#
- #{e1 57224}#
- #{e2 57225}#
- #{args* 57226}#
- #{e1* 57227}#
- #{e2* 57228}#)
- (call-with-values
- (lambda ()
- (#{get-formals 57208}# #{args 57223}#))
- (lambda (#{req 57229}#
- #{opt 57230}#
- #{rest 57231}#
- #{kw 57232}#)
- (call-with-values
- (lambda ()
- (#{parse-req 57210}#
- #{req 57229}#
- #{opt 57230}#
- #{rest 57231}#
- #{kw 57232}#
- (cons #{e1 57224}# #{e2 57225}#)))
- (lambda (#{meta 57301}#
- #{req 57302}#
- #{opt 57303}#
- #{rest 57304}#
- #{kw 57305}#
- #{inits 57306}#
- #{vars 57307}#
- #{body 57308}#)
- (call-with-values
- (lambda ()
- (#{expand-lambda-case 28283}#
- #{e 57203}#
- #{r 57204}#
- #{w 57205}#
- #{s 57206}#
- #{mod 57207}#
- #{get-formals 57208}#
- (map (lambda (#{tmp 26711 57309}#
- #{tmp 26710 57310}#
- #{tmp 26709 57311}#)
- (cons #{tmp 26709 57311}#
- (cons #{tmp 26710 57310}#
- #{tmp 26711 57309}#)))
- #{e2* 57228}#
- #{e1* 57227}#
- #{args* 57226}#)))
- (lambda (#{meta* 57312}# #{else* 57313}#)
- (values
- (append #{meta 57301}# #{meta* 57312}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 15)
- #{s 57206}#
- #{req 57302}#
- #{opt 57303}#
- #{rest 57304}#
- #{kw 57305}#
- #{inits 57306}#
- #{vars 57307}#
- #{body 57308}#
- #{else* 57313}#)))))))))
- #{tmp 57219}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{clauses 57209}#))))))))
- (#{strip 28284}#
- (lambda (#{x 58608}# #{w 58609}#)
- (if (memq 'top (car #{w 58609}#))
- #{x 58608}#
- (letrec*
- ((#{f 58610}#
- (lambda (#{x 58613}#)
- (if (if (vector? #{x 58613}#)
- (if (= (vector-length #{x 58613}#) 4)
- (eq? (vector-ref #{x 58613}# 0) 'syntax-object)
+ m1-35805
+ m2-35829)))
+ (let ((m2-35837
+ (cdr w2-35804)))
+ (if (null? m2-35837)
+ s1-35806
+ (append
+ s1-35806
+ m2-35837))))))))
+ (module-35797
+ (vector-ref x-35763 3)))
+ (vector
+ 'syntax-object
+ expression-35795
+ wrap-35796
+ module-35797))
+ (if (null? x-35763)
+ x-35763
+ (vector
+ 'syntax-object
+ x-35763
+ w-34608
+ mod-34610)))))
+ r*-35723
+ w*-35724
+ mod-34610)))
+ tmp-35746)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ body-35721))))))))))
+ (let ((tmp-34618 ($sc-dispatch clauses-34612 '())))
+ (if tmp-34618
+ (@apply (lambda () (values '() #f)) tmp-34618)
+ (let ((tmp-34622
+ ($sc-dispatch
+ clauses-34612
+ '((any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if tmp-34622
+ (@apply
+ (lambda (args-34626
+ e1-34627
+ e2-34628
+ args*-34629
+ e1*-34630
+ e2*-34631)
+ (call-with-values
+ (lambda () (get-formals-34611 args-34626))
+ (lambda (req-34632 opt-34633 rest-34634 kw-34635)
+ (call-with-values
+ (lambda ()
+ (parse-req-34613
+ req-34632
+ opt-34633
+ rest-34634
+ kw-34635
+ (cons e1-34627 e2-34628)))
+ (lambda (meta-34702
+ req-34703
+ opt-34704
+ rest-34705
+ kw-34706
+ inits-34707
+ vars-34708
+ body-34709)
+ (call-with-values
+ (lambda ()
+ (expand-lambda-case-4598
+ e-34606
+ r-34607
+ w-34608
+ s-34609
+ mod-34610
+ get-formals-34611
+ (map (lambda (tmp-2961-34710
+ tmp-2960-34711
+ tmp-2959-34712)
+ (cons tmp-2959-34712
+ (cons tmp-2960-34711
+ tmp-2961-34710)))
+ e2*-34631
+ e1*-34630
+ args*-34629)))
+ (lambda (meta*-34713 else*-34714)
+ (values
+ (append meta-34702 meta*-34713)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ s-34609
+ req-34703
+ opt-34704
+ rest-34705
+ kw-34706
+ inits-34707
+ vars-34708
+ body-34709
+ else*-34714)))))))))
+ tmp-34622)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ clauses-34612))))))))
+ (strip-4599
+ (lambda (x-35864 w-35865)
+ (if (memq 'top (car w-35865))
+ x-35864
+ (letrec*
+ ((f-35866
+ (lambda (x-35869)
+ (if (if (vector? x-35869)
+ (if (= (vector-length x-35869) 4)
+ (eq? (vector-ref x-35869 0) 'syntax-object)
+ #f)
#f)
- #f)
- (#{strip 28284}#
- (vector-ref #{x 58613}# 1)
- (vector-ref #{x 58613}# 2))
- (if (pair? #{x 58613}#)
- (let ((#{a 58632}# (#{f 58610}# (car #{x 58613}#)))
- (#{d 58633}# (#{f 58610}# (cdr #{x 58613}#))))
- (if (if (eq? #{a 58632}# (car #{x 58613}#))
- (eq? #{d 58633}# (cdr #{x 58613}#))
- #f)
- #{x 58613}#
- (cons #{a 58632}# #{d 58633}#)))
- (if (vector? #{x 58613}#)
- (let ((#{old 58636}# (vector->list #{x 58613}#)))
- (let ((#{new 58637}# (map #{f 58610}# #{old 58636}#)))
- (letrec*
- ((#{lp 58638}#
- (lambda (#{l1 58735}# #{l2 58736}#)
- (if (null? #{l1 58735}#)
- #{x 58613}#
- (if (eq? (car #{l1 58735}#)
- (car #{l2 58736}#))
- (#{lp 58638}#
- (cdr #{l1 58735}#)
- (cdr #{l2 58736}#))
- (list->vector #{new 58637}#))))))
- (#{lp 58638}# #{old 58636}# #{new 58637}#))))
- #{x 58613}#))))))
- (#{f 58610}# #{x 58608}#)))))
- (#{gen-var 28285}#
- (lambda (#{id 57357}#)
- (let ((#{id 57358}#
- (if (if (vector? #{id 57357}#)
- (if (= (vector-length #{id 57357}#) 4)
- (eq? (vector-ref #{id 57357}# 0) 'syntax-object)
+ (strip-4599
+ (vector-ref x-35869 1)
+ (vector-ref x-35869 2))
+ (if (pair? x-35869)
+ (let ((a-35888 (f-35866 (car x-35869)))
+ (d-35889 (f-35866 (cdr x-35869))))
+ (if (if (eq? a-35888 (car x-35869))
+ (eq? d-35889 (cdr x-35869))
+ #f)
+ x-35869
+ (cons a-35888 d-35889)))
+ (if (vector? x-35869)
+ (let ((old-35892 (vector->list x-35869)))
+ (let ((new-35893 (map f-35866 old-35892)))
+ (letrec*
+ ((lp-35894
+ (lambda (l1-35991 l2-35992)
+ (if (null? l1-35991)
+ x-35869
+ (if (eq? (car l1-35991) (car l2-35992))
+ (lp-35894 (cdr l1-35991) (cdr l2-35992))
+ (list->vector new-35893))))))
+ (lp-35894 old-35892 new-35893))))
+ x-35869))))))
+ (f-35866 x-35864)))))
+ (gen-var-4600
+ (lambda (id-34758)
+ (let ((id-34759
+ (if (if (vector? id-34758)
+ (if (= (vector-length id-34758) 4)
+ (eq? (vector-ref id-34758 0) 'syntax-object)
+ #f)
#f)
- #f)
- (vector-ref #{id 57357}# 1)
- #{id 57357}#)))
- (gensym
- (string-append (symbol->string #{id 57358}#) " ")))))
- (#{lambda-var-list 28286}#
- (lambda (#{vars 58737}#)
- (letrec*
- ((#{lvl 58738}#
- (lambda (#{vars 58741}# #{ls 58742}# #{w 58743}#)
- (if (pair? #{vars 58741}#)
- (#{lvl 58738}#
- (cdr #{vars 58741}#)
- (cons (let ((#{x 58747}# (car #{vars 58741}#)))
- (if (if (null? (car #{w 58743}#))
- (null? (cdr #{w 58743}#))
+ (vector-ref id-34758 1)
+ id-34758)))
+ (gensym
+ (string-append (symbol->string id-34759) "-")))))
+ (lambda-var-list-4601
+ (lambda (vars-35993)
+ (letrec*
+ ((lvl-35994
+ (lambda (vars-35997 ls-35998 w-35999)
+ (if (pair? vars-35997)
+ (lvl-35994
+ (cdr vars-35997)
+ (cons (let ((x-36003 (car vars-35997)))
+ (if (if (null? (car w-35999))
+ (null? (cdr w-35999))
+ #f)
+ x-36003
+ (if (if (vector? x-36003)
+ (if (= (vector-length x-36003) 4)
+ (eq? (vector-ref x-36003 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-36021 (vector-ref x-36003 1))
+ (wrap-36022
+ (let ((w2-36030
+ (vector-ref x-36003 2)))
+ (let ((m1-36031 (car w-35999))
+ (s1-36032 (cdr w-35999)))
+ (if (null? m1-36031)
+ (if (null? s1-36032)
+ w2-36030
+ (cons (car w2-36030)
+ (let ((m2-36047
+ (cdr w2-36030)))
+ (if (null? m2-36047)
+ s1-36032
+ (append
+ s1-36032
+ m2-36047)))))
+ (cons (let ((m2-36055
+ (car w2-36030)))
+ (if (null? m2-36055)
+ m1-36031
+ (append
+ m1-36031
+ m2-36055)))
+ (let ((m2-36063
+ (cdr w2-36030)))
+ (if (null? m2-36063)
+ s1-36032
+ (append
+ s1-36032
+ m2-36063))))))))
+ (module-36023 (vector-ref x-36003 3)))
+ (vector
+ 'syntax-object
+ expression-36021
+ wrap-36022
+ module-36023))
+ (if (null? x-36003)
+ x-36003
+ (vector
+ 'syntax-object
+ x-36003
+ w-35999
+ #f)))))
+ ls-35998)
+ w-35999)
+ (if (if (symbol? vars-35997)
+ #t
+ (if (if (vector? vars-35997)
+ (if (= (vector-length vars-35997) 4)
+ (eq? (vector-ref vars-35997 0) 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref vars-35997 1))
+ #f))
+ (cons (if (if (null? (car w-35999))
+ (null? (cdr w-35999))
#f)
- #{x 58747}#
- (if (if (vector? #{x 58747}#)
- (if (= (vector-length #{x 58747}#) 4)
- (eq? (vector-ref #{x 58747}# 0)
+ vars-35997
+ (if (if (vector? vars-35997)
+ (if (= (vector-length vars-35997) 4)
+ (eq? (vector-ref vars-35997 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 58765}#
- (vector-ref #{x 58747}# 1))
- (#{wrap 58766}#
- (let ((#{w2 58774}#
- (vector-ref #{x 58747}# 2)))
- (let ((#{m1 58775}# (car #{w 58743}#))
- (#{s1 58776}# (cdr #{w 58743}#)))
- (if (null? #{m1 58775}#)
- (if (null? #{s1 58776}#)
- #{w2 58774}#
- (cons (car #{w2 58774}#)
- (let ((#{m2 58791}#
- (cdr #{w2 58774}#)))
- (if (null? #{m2 58791}#)
- #{s1 58776}#
+ (let ((expression-36133
+ (vector-ref vars-35997 1))
+ (wrap-36134
+ (let ((w2-36144
+ (vector-ref vars-35997 2)))
+ (let ((m1-36145 (car w-35999))
+ (s1-36146 (cdr w-35999)))
+ (if (null? m1-36145)
+ (if (null? s1-36146)
+ w2-36144
+ (cons (car w2-36144)
+ (let ((m2-36163
+ (cdr w2-36144)))
+ (if (null? m2-36163)
+ s1-36146
(append
- #{s1 58776}#
- #{m2 58791}#)))))
- (cons (let ((#{m2 58799}#
- (car #{w2 58774}#)))
- (if (null? #{m2 58799}#)
- #{m1 58775}#
+ s1-36146
+ m2-36163)))))
+ (cons (let ((m2-36171
+ (car w2-36144)))
+ (if (null? m2-36171)
+ m1-36145
(append
- #{m1 58775}#
- #{m2 58799}#)))
- (let ((#{m2 58807}#
- (cdr #{w2 58774}#)))
- (if (null? #{m2 58807}#)
- #{s1 58776}#
+ m1-36145
+ m2-36171)))
+ (let ((m2-36179
+ (cdr w2-36144)))
+ (if (null? m2-36179)
+ s1-36146
(append
- #{s1 58776}#
- #{m2 58807}#))))))))
- (#{module 58767}#
- (vector-ref #{x 58747}# 3)))
+ s1-36146
+ m2-36179))))))))
+ (module-36135 (vector-ref vars-35997 3)))
(vector
'syntax-object
- #{expression 58765}#
- #{wrap 58766}#
- #{module 58767}#))
- (if (null? #{x 58747}#)
- #{x 58747}#
+ expression-36133
+ wrap-36134
+ module-36135))
+ (if (null? vars-35997)
+ vars-35997
(vector
'syntax-object
- #{x 58747}#
- #{w 58743}#
- #f)))))
- #{ls 58742}#)
- #{w 58743}#)
- (if (if (symbol? #{vars 58741}#)
- #t
- (if (if (vector? #{vars 58741}#)
- (if (= (vector-length #{vars 58741}#) 4)
- (eq? (vector-ref #{vars 58741}# 0)
- 'syntax-object)
+ vars-35997
+ w-35999
+ #f))))
+ ls-35998)
+ (if (null? vars-35997)
+ ls-35998
+ (if (if (vector? vars-35997)
+ (if (= (vector-length vars-35997) 4)
+ (eq? (vector-ref vars-35997 0) 'syntax-object)
#f)
#f)
- (symbol? (vector-ref #{vars 58741}# 1))
- #f))
- (cons (if (if (null? (car #{w 58743}#))
- (null? (cdr #{w 58743}#))
- #f)
- #{vars 58741}#
- (if (if (vector? #{vars 58741}#)
- (if (= (vector-length #{vars 58741}#) 4)
- (eq? (vector-ref #{vars 58741}# 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 58877}#
- (vector-ref #{vars 58741}# 1))
- (#{wrap 58878}#
- (let ((#{w2 58888}#
- (vector-ref #{vars 58741}# 2)))
- (let ((#{m1 58889}# (car #{w 58743}#))
- (#{s1 58890}# (cdr #{w 58743}#)))
- (if (null? #{m1 58889}#)
- (if (null? #{s1 58890}#)
- #{w2 58888}#
- (cons (car #{w2 58888}#)
- (let ((#{m2 58907}#
- (cdr #{w2 58888}#)))
- (if (null? #{m2 58907}#)
- #{s1 58890}#
- (append
- #{s1 58890}#
- #{m2 58907}#)))))
- (cons (let ((#{m2 58915}#
- (car #{w2 58888}#)))
- (if (null? #{m2 58915}#)
- #{m1 58889}#
- (append
- #{m1 58889}#
- #{m2 58915}#)))
- (let ((#{m2 58923}#
- (cdr #{w2 58888}#)))
- (if (null? #{m2 58923}#)
- #{s1 58890}#
- (append
- #{s1 58890}#
- #{m2 58923}#))))))))
- (#{module 58879}#
- (vector-ref #{vars 58741}# 3)))
- (vector
- 'syntax-object
- #{expression 58877}#
- #{wrap 58878}#
- #{module 58879}#))
- (if (null? #{vars 58741}#)
- #{vars 58741}#
- (vector
- 'syntax-object
- #{vars 58741}#
- #{w 58743}#
- #f))))
- #{ls 58742}#)
- (if (null? #{vars 58741}#)
- #{ls 58742}#
- (if (if (vector? #{vars 58741}#)
- (if (= (vector-length #{vars 58741}#) 4)
- (eq? (vector-ref #{vars 58741}# 0)
- 'syntax-object)
- #f)
- #f)
- (#{lvl 58738}#
- (vector-ref #{vars 58741}# 1)
- #{ls 58742}#
- (let ((#{w2 58964}# (vector-ref #{vars 58741}# 2)))
- (let ((#{m1 58965}# (car #{w 58743}#))
- (#{s1 58966}# (cdr #{w 58743}#)))
- (if (null? #{m1 58965}#)
- (if (null? #{s1 58966}#)
- #{w2 58964}#
- (cons (car #{w2 58964}#)
- (let ((#{m2 58977}# (cdr #{w2 58964}#)))
- (if (null? #{m2 58977}#)
- #{s1 58966}#
- (append
- #{s1 58966}#
- #{m2 58977}#)))))
- (cons (let ((#{m2 58985}# (car #{w2 58964}#)))
- (if (null? #{m2 58985}#)
- #{m1 58965}#
- (append #{m1 58965}# #{m2 58985}#)))
- (let ((#{m2 58993}# (cdr #{w2 58964}#)))
- (if (null? #{m2 58993}#)
- #{s1 58966}#
- (append
- #{s1 58966}#
- #{m2 58993}#))))))))
- (cons #{vars 58741}# #{ls 58742}#))))))))
- (#{lvl 58738}# #{vars 58737}# '() '(()))))))
- (begin
- (module-define!
- (current-module)
- 'letrec-syntax
- (make-syntax-transformer
+ (lvl-35994
+ (vector-ref vars-35997 1)
+ ls-35998
+ (let ((w2-36220 (vector-ref vars-35997 2)))
+ (let ((m1-36221 (car w-35999))
+ (s1-36222 (cdr w-35999)))
+ (if (null? m1-36221)
+ (if (null? s1-36222)
+ w2-36220
+ (cons (car w2-36220)
+ (let ((m2-36233 (cdr w2-36220)))
+ (if (null? m2-36233)
+ s1-36222
+ (append s1-36222 m2-36233)))))
+ (cons (let ((m2-36241 (car w2-36220)))
+ (if (null? m2-36241)
+ m1-36221
+ (append m1-36221 m2-36241)))
+ (let ((m2-36249 (cdr w2-36220)))
+ (if (null? m2-36249)
+ s1-36222
+ (append s1-36222 m2-36249))))))))
+ (cons vars-35997 ls-35998))))))))
+ (lvl-35994 vars-35993 '() '(()))))))
+ (begin
+ (set! session-id-4511
+ (let ((v-18812
+ (module-variable
+ (current-module)
+ 'syntax-session-id)))
+ (lambda () ((variable-ref v-18812)))))
+ (set! transformer-environment-4572
+ (make-fluid
+ (lambda (k-17456)
+ (error "called outside the dynamic extent of a syntax transformer"))))
+ (module-define!
+ (current-module)
'letrec-syntax
- 'local-syntax
- #t))
- (module-define!
- (current-module)
- 'let-syntax
- (make-syntax-transformer
+ (make-syntax-transformer
+ 'letrec-syntax
+ 'local-syntax
+ #t))
+ (module-define!
+ (current-module)
'let-syntax
- 'local-syntax
- #f))
- (#{global-extend 28236}#
- 'core
- 'syntax-parameterize
- (lambda (#{e 28413}#
- #{r 28414}#
- #{w 28415}#
- #{s 28416}#
- #{mod 28417}#)
- (let ((#{tmp 28419}#
- ($sc-dispatch
- #{e 28413}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 28419}#
- (@apply
- (lambda (#{var 28423}#
- #{val 28424}#
- #{e1 28425}#
- #{e2 28426}#)
- (#{valid-bound-ids? 28261}# #{var 28423}#))
- #{tmp 28419}#)
- #f)
- (@apply
- (lambda (#{var 28511}#
- #{val 28512}#
- #{e1 28513}#
- #{e2 28514}#)
- (let ((#{names 28515}#
- (map (lambda (#{x 28855}#)
- (call-with-values
- (lambda ()
- (#{resolve-identifier 28258}#
- #{x 28855}#
- #{w 28415}#
- #{r 28414}#
- #{mod 28417}#
- #f))
- (lambda (#{type 28858}#
- #{value 28859}#
- #{mod 28860}#)
- (if (eqv? #{type 28858}# 'displaced-lexical)
- (syntax-violation
- 'syntax-parameterize
- "identifier out of context"
- #{e 28413}#
- (let ((#{x 28873}#
- (begin
- (if (if (pair? #{x 28855}#)
- #{s 28416}#
- #f)
- (set-source-properties!
- #{x 28855}#
- #{s 28416}#))
- #{x 28855}#)))
- (if (if (null? (car #{w 28415}#))
- (null? (cdr #{w 28415}#))
- #f)
- #{x 28873}#
- (if (if (vector? #{x 28873}#)
- (if (= (vector-length
- #{x 28873}#)
- 4)
- (eq? (vector-ref
- #{x 28873}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 28905}#
- (vector-ref
- #{x 28873}#
- 1))
- (#{wrap 28906}#
- (let ((#{w2 28914}#
- (vector-ref
- #{x 28873}#
- 2)))
- (let ((#{m1 28915}#
- (car #{w 28415}#))
- (#{s1 28916}#
- (cdr #{w 28415}#)))
- (if (null? #{m1 28915}#)
- (if (null? #{s1 28916}#)
- #{w2 28914}#
- (cons (car #{w2 28914}#)
- (let ((#{m2 28931}#
- (cdr #{w2 28914}#)))
- (if (null? #{m2 28931}#)
- #{s1 28916}#
- (append
- #{s1 28916}#
- #{m2 28931}#)))))
- (cons (let ((#{m2 28939}#
- (car #{w2 28914}#)))
- (if (null? #{m2 28939}#)
- #{m1 28915}#
- (append
- #{m1 28915}#
- #{m2 28939}#)))
- (let ((#{m2 28947}#
- (cdr #{w2 28914}#)))
- (if (null? #{m2 28947}#)
- #{s1 28916}#
- (append
- #{s1 28916}#
- #{m2 28947}#))))))))
- (#{module 28907}#
- (vector-ref
- #{x 28873}#
- 3)))
- (vector
- 'syntax-object
- #{expression 28905}#
- #{wrap 28906}#
- #{module 28907}#))
- (if (null? #{x 28873}#)
- #{x 28873}#
- (vector
- 'syntax-object
- #{x 28873}#
- #{w 28415}#
- #{mod 28860}#))))))
- (if (eqv? #{type 28858}#
- 'syntax-parameter)
- #{value 28859}#
+ (make-syntax-transformer
+ 'let-syntax
+ 'local-syntax
+ #f))
+ (global-extend-4548
+ 'core
+ 'syntax-parameterize
+ (lambda (e-4728 r-4729 w-4730 s-4731 mod-4732)
+ (let ((tmp-4734
+ ($sc-dispatch
+ e-4728
+ '(_ #(each (any any)) any . each-any))))
+ (if (if tmp-4734
+ (@apply
+ (lambda (var-4738 val-4739 e1-4740 e2-4741)
+ (valid-bound-ids?-4576 var-4738))
+ tmp-4734)
+ #f)
+ (@apply
+ (lambda (var-4826 val-4827 e1-4828 e2-4829)
+ (let ((names-4830
+ (map (lambda (x-5170)
+ (call-with-values
+ (lambda ()
+ (resolve-identifier-4571
+ x-5170
+ w-4730
+ r-4729
+ mod-4732
+ #f))
+ (lambda (type-5173 value-5174 mod-5175)
+ (if (eqv? type-5173 'displaced-lexical)
(syntax-violation
'syntax-parameterize
- "invalid syntax parameter"
- #{e 28413}#
- (let ((#{x 28974}#
+ "identifier out of context"
+ e-4728
+ (let ((x-5188
(begin
- (if (if (pair? #{x 28855}#)
- #{s 28416}#
+ (if (if (pair? x-5170)
+ s-4731
#f)
(set-source-properties!
- #{x 28855}#
- #{s 28416}#))
- #{x 28855}#)))
- (if (if (null? (car #{w 28415}#))
- (null? (cdr #{w 28415}#))
+ x-5170
+ s-4731))
+ x-5170)))
+ (if (if (null? (car w-4730))
+ (null? (cdr w-4730))
#f)
- #{x 28974}#
- (if (if (vector? #{x 28974}#)
+ x-5188
+ (if (if (vector? x-5188)
(if (= (vector-length
- #{x 28974}#)
+ x-5188)
4)
- (eq? (vector-ref
- #{x 28974}#
- 0)
+ (eq? (vector-ref x-5188 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 29006}#
- (vector-ref
- #{x 28974}#
- 1))
- (#{wrap 29007}#
- (let ((#{w2 29015}#
+ (let ((expression-5220
+ (vector-ref x-5188 1))
+ (wrap-5221
+ (let ((w2-5229
(vector-ref
- #{x 28974}#
+ x-5188
2)))
- (let ((#{m1 29016}#
- (car #{w 28415}#))
- (#{s1 29017}#
- (cdr #{w 28415}#)))
- (if (null? #{m1 29016}#)
- (if (null? #{s1 29017}#)
- #{w2 29015}#
- (cons (car #{w2 29015}#)
- (let ((#{m2 29032}#
- (cdr #{w2 29015}#)))
- (if (null? #{m2 29032}#)
- #{s1 29017}#
+ (let ((m1-5230
+ (car w-4730))
+ (s1-5231
+ (cdr w-4730)))
+ (if (null? m1-5230)
+ (if (null? s1-5231)
+ w2-5229
+ (cons (car w2-5229)
+ (let ((m2-5246
+ (cdr w2-5229)))
+ (if (null? m2-5246)
+ s1-5231
(append
- #{s1 29017}#
- #{m2 29032}#)))))
- (cons (let ((#{m2 29040}#
- (car #{w2 29015}#)))
- (if (null? #{m2 29040}#)
- #{m1 29016}#
+ s1-5231
+ m2-5246)))))
+ (cons (let ((m2-5254
+ (car w2-5229)))
+ (if (null? m2-5254)
+ m1-5230
(append
- #{m1 29016}#
- #{m2 29040}#)))
- (let ((#{m2 29048}#
- (cdr #{w2 29015}#)))
- (if (null? #{m2 29048}#)
- #{s1 29017}#
+ m1-5230
+ m2-5254)))
+ (let ((m2-5262
+ (cdr w2-5229)))
+ (if (null? m2-5262)
+ s1-5231
(append
- #{s1 29017}#
- #{m2 29048}#))))))))
- (#{module 29008}#
- (vector-ref
- #{x 28974}#
- 3)))
+ s1-5231
+ m2-5262))))))))
+ (module-5222
+ (vector-ref x-5188 3)))
(vector
'syntax-object
- #{expression 29006}#
- #{wrap 29007}#
- #{module 29008}#))
- (if (null? #{x 28974}#)
- #{x 28974}#
+ expression-5220
+ wrap-5221
+ module-5222))
+ (if (null? x-5188)
+ x-5188
(vector
'syntax-object
- #{x 28974}#
- #{w 28415}#
- #{mod 28860}#)))))))))))
- #{var 28511}#))
- (#{bindings 28516}#
- (let ((#{trans-r 29063}#
- (#{macros-only-env 28235}# #{r 28414}#)))
- (map (lambda (#{x 29064}#)
- (cons 'macro
- (#{eval-local-transformer 28277}#
- (#{expand 28271}#
- #{x 29064}#
- #{trans-r 29063}#
- #{w 28415}#
- #{mod 28417}#)
- #{mod 28417}#)))
- #{val 28512}#))))
- (#{expand-body 28275}#
- (cons #{e1 28513}# #{e2 28514}#)
- (let ((#{x 28528}#
- (begin
- (if (if (pair? #{e 28413}#) #{s 28416}# #f)
- (set-source-properties!
- #{e 28413}#
- #{s 28416}#))
- #{e 28413}#)))
- (if (if (null? (car #{w 28415}#))
- (null? (cdr #{w 28415}#))
- #f)
- #{x 28528}#
- (if (if (vector? #{x 28528}#)
- (if (= (vector-length #{x 28528}#) 4)
- (eq? (vector-ref #{x 28528}# 0) 'syntax-object)
+ x-5188
+ w-4730
+ mod-5175))))))
+ (if (eqv? type-5173 'syntax-parameter)
+ value-5174
+ (syntax-violation
+ 'syntax-parameterize
+ "invalid syntax parameter"
+ e-4728
+ (let ((x-5289
+ (begin
+ (if (if (pair? x-5170)
+ s-4731
+ #f)
+ (set-source-properties!
+ x-5170
+ s-4731))
+ x-5170)))
+ (if (if (null? (car w-4730))
+ (null? (cdr w-4730))
+ #f)
+ x-5289
+ (if (if (vector? x-5289)
+ (if (= (vector-length
+ x-5289)
+ 4)
+ (eq? (vector-ref
+ x-5289
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-5321
+ (vector-ref x-5289 1))
+ (wrap-5322
+ (let ((w2-5330
+ (vector-ref
+ x-5289
+ 2)))
+ (let ((m1-5331
+ (car w-4730))
+ (s1-5332
+ (cdr w-4730)))
+ (if (null? m1-5331)
+ (if (null? s1-5332)
+ w2-5330
+ (cons (car w2-5330)
+ (let ((m2-5347
+ (cdr w2-5330)))
+ (if (null? m2-5347)
+ s1-5332
+ (append
+ s1-5332
+ m2-5347)))))
+ (cons (let ((m2-5355
+ (car w2-5330)))
+ (if (null? m2-5355)
+ m1-5331
+ (append
+ m1-5331
+ m2-5355)))
+ (let ((m2-5363
+ (cdr w2-5330)))
+ (if (null? m2-5363)
+ s1-5332
+ (append
+ s1-5332
+ m2-5363))))))))
+ (module-5323
+ (vector-ref
+ x-5289
+ 3)))
+ (vector
+ 'syntax-object
+ expression-5321
+ wrap-5322
+ module-5323))
+ (if (null? x-5289)
+ x-5289
+ (vector
+ 'syntax-object
+ x-5289
+ w-4730
+ mod-5175)))))))))))
+ var-4826))
+ (bindings-4831
+ (let ((trans-r-5378 (macros-only-env-4547 r-4729)))
+ (map (lambda (x-5379)
+ (cons 'macro
+ (eval-local-transformer-4592
+ (expand-4586
+ x-5379
+ trans-r-5378
+ w-4730
+ mod-4732)
+ mod-4732)))
+ val-4827))))
+ (expand-body-4590
+ (cons e1-4828 e2-4829)
+ (let ((x-4843
+ (begin
+ (if (if (pair? e-4728) s-4731 #f)
+ (set-source-properties! e-4728 s-4731))
+ e-4728)))
+ (if (if (null? (car w-4730)) (null? (cdr w-4730)) #f)
+ x-4843
+ (if (if (vector? x-4843)
+ (if (= (vector-length x-4843) 4)
+ (eq? (vector-ref x-4843 0) 'syntax-object)
+ #f)
#f)
- #f)
- (let ((#{expression 28560}#
- (vector-ref #{x 28528}# 1))
- (#{wrap 28561}#
- (let ((#{w2 28569}#
- (vector-ref #{x 28528}# 2)))
- (let ((#{m1 28570}# (car #{w 28415}#))
- (#{s1 28571}# (cdr #{w 28415}#)))
- (if (null? #{m1 28570}#)
- (if (null? #{s1 28571}#)
- #{w2 28569}#
- (cons (car #{w2 28569}#)
- (let ((#{m2 28586}#
- (cdr #{w2 28569}#)))
- (if (null? #{m2 28586}#)
- #{s1 28571}#
+ (let ((expression-4875 (vector-ref x-4843 1))
+ (wrap-4876
+ (let ((w2-4884 (vector-ref x-4843 2)))
+ (let ((m1-4885 (car w-4730))
+ (s1-4886 (cdr w-4730)))
+ (if (null? m1-4885)
+ (if (null? s1-4886)
+ w2-4884
+ (cons (car w2-4884)
+ (let ((m2-4901
+ (cdr w2-4884)))
+ (if (null? m2-4901)
+ s1-4886
+ (append
+ s1-4886
+ m2-4901)))))
+ (cons (let ((m2-4909 (car w2-4884)))
+ (if (null? m2-4909)
+ m1-4885
+ (append m1-4885 m2-4909)))
+ (let ((m2-4917 (cdr w2-4884)))
+ (if (null? m2-4917)
+ s1-4886
(append
- #{s1 28571}#
- #{m2 28586}#)))))
- (cons (let ((#{m2 28594}#
- (car #{w2 28569}#)))
- (if (null? #{m2 28594}#)
- #{m1 28570}#
- (append
- #{m1 28570}#
- #{m2 28594}#)))
- (let ((#{m2 28602}#
- (cdr #{w2 28569}#)))
- (if (null? #{m2 28602}#)
- #{s1 28571}#
- (append
- #{s1 28571}#
- #{m2 28602}#))))))))
- (#{module 28562}# (vector-ref #{x 28528}# 3)))
- (vector
- 'syntax-object
- #{expression 28560}#
- #{wrap 28561}#
- #{module 28562}#))
- (if (null? #{x 28528}#)
- #{x 28528}#
- (vector
- 'syntax-object
- #{x 28528}#
- #{w 28415}#
- #{mod 28417}#)))))
- (#{extend-env 28233}#
- #{names 28515}#
- #{bindings 28516}#
- #{r 28414}#)
- #{w 28415}#
- #{mod 28417}#)))
- #{tmp 28419}#)
- (syntax-violation
- 'syntax-parameterize
- "bad syntax"
- (let ((#{x 29284}#
- (begin
- (if (if (pair? #{e 28413}#) #{s 28416}# #f)
- (set-source-properties! #{e 28413}# #{s 28416}#))
- #{e 28413}#)))
- (if (if (null? (car #{w 28415}#))
- (null? (cdr #{w 28415}#))
- #f)
- #{x 29284}#
- (if (if (vector? #{x 29284}#)
- (if (= (vector-length #{x 29284}#) 4)
- (eq? (vector-ref #{x 29284}# 0) 'syntax-object)
- #f)
- #f)
- (let ((#{expression 29316}# (vector-ref #{x 29284}# 1))
- (#{wrap 29317}#
- (let ((#{w2 29325}# (vector-ref #{x 29284}# 2)))
- (let ((#{m1 29326}# (car #{w 28415}#))
- (#{s1 29327}# (cdr #{w 28415}#)))
- (if (null? #{m1 29326}#)
- (if (null? #{s1 29327}#)
- #{w2 29325}#
- (cons (car #{w2 29325}#)
- (let ((#{m2 29342}#
- (cdr #{w2 29325}#)))
- (if (null? #{m2 29342}#)
- #{s1 29327}#
- (append
- #{s1 29327}#
- #{m2 29342}#)))))
- (cons (let ((#{m2 29350}#
- (car #{w2 29325}#)))
- (if (null? #{m2 29350}#)
- #{m1 29326}#
- (append
- #{m1 29326}#
- #{m2 29350}#)))
- (let ((#{m2 29358}#
- (cdr #{w2 29325}#)))
- (if (null? #{m2 29358}#)
- #{s1 29327}#
- (append
- #{s1 29327}#
- #{m2 29358}#))))))))
- (#{module 29318}# (vector-ref #{x 29284}# 3)))
- (vector
- 'syntax-object
- #{expression 29316}#
- #{wrap 29317}#
- #{module 29318}#))
- (if (null? #{x 29284}#)
- #{x 29284}#
- (vector
- 'syntax-object
- #{x 29284}#
- #{w 28415}#
- #{mod 28417}#))))))))))
- (module-define!
- (current-module)
- 'quote
- (make-syntax-transformer
- 'quote
- 'core
- (lambda (#{e 29386}#
- #{r 29387}#
- #{w 29388}#
- #{s 29389}#
- #{mod 29390}#)
- (let ((#{tmp 29392}#
- ($sc-dispatch #{e 29386}# '(_ any))))
- (if #{tmp 29392}#
- (@apply
- (lambda (#{e 29395}#)
- (let ((#{exp 29399}#
- (#{strip 28284}# #{e 29395}# #{w 29388}#)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #{s 29389}#
- #{exp 29399}#)))
- #{tmp 29392}#)
+ s1-4886
+ m2-4917))))))))
+ (module-4877 (vector-ref x-4843 3)))
+ (vector
+ 'syntax-object
+ expression-4875
+ wrap-4876
+ module-4877))
+ (if (null? x-4843)
+ x-4843
+ (vector
+ 'syntax-object
+ x-4843
+ w-4730
+ mod-4732)))))
+ (extend-env-4545 names-4830 bindings-4831 r-4729)
+ w-4730
+ mod-4732)))
+ tmp-4734)
(syntax-violation
- 'quote
+ 'syntax-parameterize
"bad syntax"
- (let ((#{x 29413}#
+ (let ((x-5599
(begin
- (if (if (pair? #{e 29386}#) #{s 29389}# #f)
- (set-source-properties! #{e 29386}# #{s 29389}#))
- #{e 29386}#)))
- (if (if (null? (car #{w 29388}#))
- (null? (cdr #{w 29388}#))
- #f)
- #{x 29413}#
- (if (if (vector? #{x 29413}#)
- (if (= (vector-length #{x 29413}#) 4)
- (eq? (vector-ref #{x 29413}# 0) 'syntax-object)
+ (if (if (pair? e-4728) s-4731 #f)
+ (set-source-properties! e-4728 s-4731))
+ e-4728)))
+ (if (if (null? (car w-4730)) (null? (cdr w-4730)) #f)
+ x-5599
+ (if (if (vector? x-5599)
+ (if (= (vector-length x-5599) 4)
+ (eq? (vector-ref x-5599 0) 'syntax-object)
#f)
#f)
- (let ((#{expression 29445}# (vector-ref #{x 29413}# 1))
- (#{wrap 29446}#
- (let ((#{w2 29454}# (vector-ref #{x 29413}# 2)))
- (let ((#{m1 29455}# (car #{w 29388}#))
- (#{s1 29456}# (cdr #{w 29388}#)))
- (if (null? #{m1 29455}#)
- (if (null? #{s1 29456}#)
- #{w2 29454}#
- (cons (car #{w2 29454}#)
- (let ((#{m2 29471}#
- (cdr #{w2 29454}#)))
- (if (null? #{m2 29471}#)
- #{s1 29456}#
- (append
- #{s1 29456}#
- #{m2 29471}#)))))
- (cons (let ((#{m2 29479}#
- (car #{w2 29454}#)))
- (if (null? #{m2 29479}#)
- #{m1 29455}#
- (append
- #{m1 29455}#
- #{m2 29479}#)))
- (let ((#{m2 29487}#
- (cdr #{w2 29454}#)))
- (if (null? #{m2 29487}#)
- #{s1 29456}#
- (append
- #{s1 29456}#
- #{m2 29487}#))))))))
- (#{module 29447}# (vector-ref #{x 29413}# 3)))
- (vector
- 'syntax-object
- #{expression 29445}#
- #{wrap 29446}#
- #{module 29447}#))
- (if (null? #{x 29413}#)
- #{x 29413}#
+ (let ((expression-5631 (vector-ref x-5599 1))
+ (wrap-5632
+ (let ((w2-5640 (vector-ref x-5599 2)))
+ (let ((m1-5641 (car w-4730))
+ (s1-5642 (cdr w-4730)))
+ (if (null? m1-5641)
+ (if (null? s1-5642)
+ w2-5640
+ (cons (car w2-5640)
+ (let ((m2-5657 (cdr w2-5640)))
+ (if (null? m2-5657)
+ s1-5642
+ (append s1-5642 m2-5657)))))
+ (cons (let ((m2-5665 (car w2-5640)))
+ (if (null? m2-5665)
+ m1-5641
+ (append m1-5641 m2-5665)))
+ (let ((m2-5673 (cdr w2-5640)))
+ (if (null? m2-5673)
+ s1-5642
+ (append s1-5642 m2-5673))))))))
+ (module-5633 (vector-ref x-5599 3)))
(vector
'syntax-object
- #{x 29413}#
- #{w 29388}#
- #{mod 29390}#)))))))))))
- (#{global-extend 28236}#
- 'core
- 'syntax
- (letrec*
- ((#{gen-syntax 29705}#
- (lambda (#{src 30136}#
- #{e 30137}#
- #{r 30138}#
- #{maps 30139}#
- #{ellipsis? 30140}#
- #{mod 30141}#)
- (if (if (symbol? #{e 30137}#)
- #t
- (if (if (vector? #{e 30137}#)
- (if (= (vector-length #{e 30137}#) 4)
- (eq? (vector-ref #{e 30137}# 0) 'syntax-object)
+ expression-5631
+ wrap-5632
+ module-5633))
+ (if (null? x-5599)
+ x-5599
+ (vector 'syntax-object x-5599 w-4730 mod-4732))))))))))
+ (module-define!
+ (current-module)
+ 'quote
+ (make-syntax-transformer
+ 'quote
+ 'core
+ (lambda (e-5701 r-5702 w-5703 s-5704 mod-5705)
+ (let ((tmp-5707 ($sc-dispatch e-5701 '(_ any))))
+ (if tmp-5707
+ (@apply
+ (lambda (e-5710)
+ (let ((exp-5714 (strip-4599 e-5710 w-5703)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ s-5704
+ exp-5714)))
+ tmp-5707)
+ (syntax-violation
+ 'quote
+ "bad syntax"
+ (let ((x-5728
+ (begin
+ (if (if (pair? e-5701) s-5704 #f)
+ (set-source-properties! e-5701 s-5704))
+ e-5701)))
+ (if (if (null? (car w-5703)) (null? (cdr w-5703)) #f)
+ x-5728
+ (if (if (vector? x-5728)
+ (if (= (vector-length x-5728) 4)
+ (eq? (vector-ref x-5728 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-5760 (vector-ref x-5728 1))
+ (wrap-5761
+ (let ((w2-5769 (vector-ref x-5728 2)))
+ (let ((m1-5770 (car w-5703))
+ (s1-5771 (cdr w-5703)))
+ (if (null? m1-5770)
+ (if (null? s1-5771)
+ w2-5769
+ (cons (car w2-5769)
+ (let ((m2-5786 (cdr w2-5769)))
+ (if (null? m2-5786)
+ s1-5771
+ (append s1-5771 m2-5786)))))
+ (cons (let ((m2-5794 (car w2-5769)))
+ (if (null? m2-5794)
+ m1-5770
+ (append m1-5770 m2-5794)))
+ (let ((m2-5802 (cdr w2-5769)))
+ (if (null? m2-5802)
+ s1-5771
+ (append s1-5771 m2-5802))))))))
+ (module-5762 (vector-ref x-5728 3)))
+ (vector
+ 'syntax-object
+ expression-5760
+ wrap-5761
+ module-5762))
+ (if (null? x-5728)
+ x-5728
+ (vector
+ 'syntax-object
+ x-5728
+ w-5703
+ mod-5705)))))))))))
+ (global-extend-4548
+ 'core
+ 'syntax
+ (letrec*
+ ((gen-syntax-6020
+ (lambda (src-6451
+ e-6452
+ r-6453
+ maps-6454
+ ellipsis?-6455
+ mod-6456)
+ (if (if (symbol? e-6452)
+ #t
+ (if (if (vector? e-6452)
+ (if (= (vector-length e-6452) 4)
+ (eq? (vector-ref e-6452 0) 'syntax-object)
+ #f)
#f)
+ (symbol? (vector-ref e-6452 1))
+ #f))
+ (call-with-values
+ (lambda ()
+ (resolve-identifier-4571
+ e-6452
+ '(())
+ r-6453
+ mod-6456
+ #f))
+ (lambda (type-6485 value-6486 mod-6487)
+ (if (eqv? type-6485 'syntax)
+ (call-with-values
+ (lambda ()
+ (gen-ref-6021
+ src-6451
+ (car value-6486)
+ (cdr value-6486)
+ maps-6454))
+ (lambda (var-6493 maps-6494)
+ (values (list 'ref var-6493) maps-6494)))
+ (if (ellipsis?-6455 e-6452)
+ (syntax-violation
+ 'syntax
+ "misplaced ellipsis"
+ src-6451)
+ (values (list 'quote e-6452) maps-6454)))))
+ (let ((tmp-6496 ($sc-dispatch e-6452 '(any any))))
+ (if (if tmp-6496
+ (@apply
+ (lambda (dots-6500 e-6501)
+ (ellipsis?-6455 dots-6500))
+ tmp-6496)
#f)
- (symbol? (vector-ref #{e 30137}# 1))
- #f))
- (call-with-values
- (lambda ()
- (#{resolve-identifier 28258}#
- #{e 30137}#
- '(())
- #{r 30138}#
- #{mod 30141}#
- #f))
- (lambda (#{type 30170}# #{value 30171}# #{mod 30172}#)
- (if (eqv? #{type 30170}# 'syntax)
- (call-with-values
- (lambda ()
- (#{gen-ref 29706}#
- #{src 30136}#
- (car #{value 30171}#)
- (cdr #{value 30171}#)
- #{maps 30139}#))
- (lambda (#{var 30178}# #{maps 30179}#)
- (values (list 'ref #{var 30178}#) #{maps 30179}#)))
- (if (#{ellipsis? 30140}# #{e 30137}#)
- (syntax-violation
- 'syntax
- "misplaced ellipsis"
- #{src 30136}#)
- (values (list 'quote #{e 30137}#) #{maps 30139}#)))))
- (let ((#{tmp 30181}#
- ($sc-dispatch #{e 30137}# '(any any))))
- (if (if #{tmp 30181}#
- (@apply
- (lambda (#{dots 30185}# #{e 30186}#)
- (#{ellipsis? 30140}# #{dots 30185}#))
- #{tmp 30181}#)
- #f)
- (@apply
- (lambda (#{dots 30187}# #{e 30188}#)
- (#{gen-syntax 29705}#
- #{src 30136}#
- #{e 30188}#
- #{r 30138}#
- #{maps 30139}#
- (lambda (#{x 30189}#) #f)
- #{mod 30141}#))
- #{tmp 30181}#)
- (let ((#{tmp 30190}#
- ($sc-dispatch #{e 30137}# '(any any . any))))
- (if (if #{tmp 30190}#
- (@apply
- (lambda (#{x 30194}# #{dots 30195}# #{y 30196}#)
- (#{ellipsis? 30140}# #{dots 30195}#))
- #{tmp 30190}#)
- #f)
- (@apply
- (lambda (#{x 30197}# #{dots 30198}# #{y 30199}#)
- (letrec*
- ((#{f 30200}#
- (lambda (#{y 30208}# #{k 30209}#)
- (let ((#{tmp 30211}#
- ($sc-dispatch
- #{y 30208}#
- '(any . any))))
- (if (if #{tmp 30211}#
- (@apply
- (lambda (#{dots 30215}#
- #{y 30216}#)
- (#{ellipsis? 30140}#
- #{dots 30215}#))
- #{tmp 30211}#)
- #f)
- (@apply
- (lambda (#{dots 30217}# #{y 30218}#)
- (#{f 30200}#
- #{y 30218}#
- (lambda (#{maps 30219}#)
- (call-with-values
- (lambda ()
- (#{k 30209}#
- (cons '() #{maps 30219}#)))
- (lambda (#{x 30220}#
- #{maps 30221}#)
- (if (null? (car #{maps 30221}#))
- (syntax-violation
- 'syntax
- "extra ellipsis"
- #{src 30136}#)
- (values
- (let ((#{map-env 30225}#
- (car #{maps 30221}#)))
- (list 'apply
- '(primitive
- append)
- (#{gen-map 29708}#
- #{x 30220}#
- #{map-env 30225}#)))
- (cdr #{maps 30221}#))))))))
- #{tmp 30211}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 29705}#
- #{src 30136}#
- #{y 30208}#
- #{r 30138}#
- #{maps 30139}#
- #{ellipsis? 30140}#
- #{mod 30141}#))
- (lambda (#{y 30228}# #{maps 30229}#)
- (call-with-values
- (lambda ()
- (#{k 30209}# #{maps 30229}#))
- (lambda (#{x 30230}#
- #{maps 30231}#)
- (values
- (if (equal? #{y 30228}# ''())
- #{x 30230}#
- (list 'append
- #{x 30230}#
- #{y 30228}#))
- #{maps 30231}#))))))))))
- (#{f 30200}#
- #{y 30199}#
- (lambda (#{maps 30203}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 29705}#
- #{src 30136}#
- #{x 30197}#
- #{r 30138}#
- (cons '() #{maps 30203}#)
- #{ellipsis? 30140}#
- #{mod 30141}#))
- (lambda (#{x 30204}# #{maps 30205}#)
- (if (null? (car #{maps 30205}#))
- (syntax-violation
- 'syntax
- "extra ellipsis"
- #{src 30136}#)
- (values
- (#{gen-map 29708}#
- #{x 30204}#
- (car #{maps 30205}#))
- (cdr #{maps 30205}#)))))))))
- #{tmp 30190}#)
- (let ((#{tmp 30247}#
- ($sc-dispatch #{e 30137}# '(any . any))))
- (if #{tmp 30247}#
- (@apply
- (lambda (#{x 30251}# #{y 30252}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 29705}#
- #{src 30136}#
- #{x 30251}#
- #{r 30138}#
- #{maps 30139}#
- #{ellipsis? 30140}#
- #{mod 30141}#))
- (lambda (#{x 30253}# #{maps 30254}#)
+ (@apply
+ (lambda (dots-6502 e-6503)
+ (gen-syntax-6020
+ src-6451
+ e-6503
+ r-6453
+ maps-6454
+ (lambda (x-6504) #f)
+ mod-6456))
+ tmp-6496)
+ (let ((tmp-6505 ($sc-dispatch e-6452 '(any any . any))))
+ (if (if tmp-6505
+ (@apply
+ (lambda (x-6509 dots-6510 y-6511)
+ (ellipsis?-6455 dots-6510))
+ tmp-6505)
+ #f)
+ (@apply
+ (lambda (x-6512 dots-6513 y-6514)
+ (letrec*
+ ((f-6515
+ (lambda (y-6523 k-6524)
+ (let ((tmp-6526
+ ($sc-dispatch
+ y-6523
+ '(any . any))))
+ (if (if tmp-6526
+ (@apply
+ (lambda (dots-6530 y-6531)
+ (ellipsis?-6455 dots-6530))
+ tmp-6526)
+ #f)
+ (@apply
+ (lambda (dots-6532 y-6533)
+ (f-6515
+ y-6533
+ (lambda (maps-6534)
+ (call-with-values
+ (lambda ()
+ (k-6524
+ (cons '() maps-6534)))
+ (lambda (x-6535 maps-6536)
+ (if (null? (car maps-6536))
+ (syntax-violation
+ 'syntax
+ "extra ellipsis"
+ src-6451)
+ (values
+ (let ((map-env-6540
+ (car maps-6536)))
+ (list 'apply
+ '(primitive
+ append)
+ (gen-map-6023
+ x-6535
+ map-env-6540)))
+ (cdr maps-6536))))))))
+ tmp-6526)
+ (call-with-values
+ (lambda ()
+ (gen-syntax-6020
+ src-6451
+ y-6523
+ r-6453
+ maps-6454
+ ellipsis?-6455
+ mod-6456))
+ (lambda (y-6543 maps-6544)
+ (call-with-values
+ (lambda () (k-6524 maps-6544))
+ (lambda (x-6545 maps-6546)
+ (values
+ (if (equal? y-6543 ''())
+ x-6545
+ (list 'append
+ x-6545
+ y-6543))
+ maps-6546))))))))))
+ (f-6515
+ y-6514
+ (lambda (maps-6518)
(call-with-values
(lambda ()
- (#{gen-syntax 29705}#
- #{src 30136}#
- #{y 30252}#
- #{r 30138}#
- #{maps 30254}#
- #{ellipsis? 30140}#
- #{mod 30141}#))
- (lambda (#{y 30255}# #{maps 30256}#)
- (values
- (let ((#{atom-key 30261}#
- (car #{y 30255}#)))
- (if (eqv? #{atom-key 30261}# 'quote)
- (if (eq? (car #{x 30253}#) 'quote)
+ (gen-syntax-6020
+ src-6451
+ x-6512
+ r-6453
+ (cons '() maps-6518)
+ ellipsis?-6455
+ mod-6456))
+ (lambda (x-6519 maps-6520)
+ (if (null? (car maps-6520))
+ (syntax-violation
+ 'syntax
+ "extra ellipsis"
+ src-6451)
+ (values
+ (gen-map-6023
+ x-6519
+ (car maps-6520))
+ (cdr maps-6520)))))))))
+ tmp-6505)
+ (let ((tmp-6562 ($sc-dispatch e-6452 '(any . any))))
+ (if tmp-6562
+ (@apply
+ (lambda (x-6566 y-6567)
+ (call-with-values
+ (lambda ()
+ (gen-syntax-6020
+ src-6451
+ x-6566
+ r-6453
+ maps-6454
+ ellipsis?-6455
+ mod-6456))
+ (lambda (x-6568 maps-6569)
+ (call-with-values
+ (lambda ()
+ (gen-syntax-6020
+ src-6451
+ y-6567
+ r-6453
+ maps-6569
+ ellipsis?-6455
+ mod-6456))
+ (lambda (y-6570 maps-6571)
+ (values
+ (let ((atom-key-6576 (car y-6570)))
+ (if (eqv? atom-key-6576 'quote)
+ (if (eq? (car x-6568) 'quote)
+ (list 'quote
+ (cons (car (cdr x-6568))
+ (car (cdr y-6570))))
+ (if (eq? (car (cdr y-6570))
+ '())
+ (list 'list x-6568)
+ (list 'cons x-6568 y-6570)))
+ (if (eqv? atom-key-6576 'list)
+ (cons 'list
+ (cons x-6568
+ (cdr y-6570)))
+ (list 'cons x-6568 y-6570))))
+ maps-6571))))))
+ tmp-6562)
+ (let ((tmp-6605
+ ($sc-dispatch
+ e-6452
+ '#(vector (any . each-any)))))
+ (if tmp-6605
+ (@apply
+ (lambda (e1-6609 e2-6610)
+ (call-with-values
+ (lambda ()
+ (gen-syntax-6020
+ src-6451
+ (cons e1-6609 e2-6610)
+ r-6453
+ maps-6454
+ ellipsis?-6455
+ mod-6456))
+ (lambda (e-6611 maps-6612)
+ (values
+ (if (eq? (car e-6611) 'list)
+ (cons 'vector (cdr e-6611))
+ (if (eq? (car e-6611) 'quote)
(list 'quote
- (cons (car (cdr #{x 30253}#))
- (car (cdr #{y 30255}#))))
- (if (eq? (car (cdr #{y 30255}#))
- '())
- (list 'list #{x 30253}#)
- (list 'cons
- #{x 30253}#
- #{y 30255}#)))
- (if (eqv? #{atom-key 30261}#
- 'list)
- (cons 'list
- (cons #{x 30253}#
- (cdr #{y 30255}#)))
- (list 'cons
- #{x 30253}#
- #{y 30255}#))))
- #{maps 30256}#))))))
- #{tmp 30247}#)
- (let ((#{tmp 30290}#
- ($sc-dispatch
- #{e 30137}#
- '#(vector (any . each-any)))))
- (if #{tmp 30290}#
- (@apply
- (lambda (#{e1 30294}# #{e2 30295}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 29705}#
- #{src 30136}#
- (cons #{e1 30294}# #{e2 30295}#)
- #{r 30138}#
- #{maps 30139}#
- #{ellipsis? 30140}#
- #{mod 30141}#))
- (lambda (#{e 30296}# #{maps 30297}#)
- (values
- (if (eq? (car #{e 30296}#) 'list)
- (cons 'vector (cdr #{e 30296}#))
- (if (eq? (car #{e 30296}#) 'quote)
- (list 'quote
- (list->vector
- (car (cdr #{e 30296}#))))
- (list 'list->vector #{e 30296}#)))
- #{maps 30297}#))))
- #{tmp 30290}#)
- (values
- (list 'quote #{e 30137}#)
- #{maps 30139}#))))))))))))
- (#{gen-ref 29706}#
- (lambda (#{src 30324}#
- #{var 30325}#
- #{level 30326}#
- #{maps 30327}#)
- (if (= #{level 30326}# 0)
- (values #{var 30325}# #{maps 30327}#)
- (if (null? #{maps 30327}#)
- (syntax-violation
- 'syntax
- "missing ellipsis"
- #{src 30324}#)
- (call-with-values
- (lambda ()
- (#{gen-ref 29706}#
- #{src 30324}#
- #{var 30325}#
- (#{1-}# #{level 30326}#)
- (cdr #{maps 30327}#)))
- (lambda (#{outer-var 30328}# #{outer-maps 30329}#)
- (let ((#{b 30330}#
- (assq #{outer-var 30328}# (car #{maps 30327}#))))
- (if #{b 30330}#
- (values (cdr #{b 30330}#) #{maps 30327}#)
- (let ((#{inner-var 30332}#
- (gensym
- (string-append (symbol->string 'tmp) " "))))
- (values
- #{inner-var 30332}#
- (cons (cons (cons #{outer-var 30328}#
- #{inner-var 30332}#)
- (car #{maps 30327}#))
- #{outer-maps 30329}#)))))))))))
- (#{gen-map 29708}#
- (lambda (#{e 30346}# #{map-env 30347}#)
- (let ((#{formals 30348}# (map cdr #{map-env 30347}#))
- (#{actuals 30349}#
- (map (lambda (#{x 30351}#)
- (list 'ref (car #{x 30351}#)))
- #{map-env 30347}#)))
- (if (eq? (car #{e 30346}#) 'ref)
- (car #{actuals 30349}#)
- (if (and-map
- (lambda (#{x 30352}#)
- (if (eq? (car #{x 30352}#) 'ref)
- (memq (car (cdr #{x 30352}#)) #{formals 30348}#)
- #f))
- (cdr #{e 30346}#))
- (cons 'map
- (cons (list 'primitive (car #{e 30346}#))
- (map (let ((#{r 30354}#
- (map cons
- #{formals 30348}#
- #{actuals 30349}#)))
- (lambda (#{x 30355}#)
- (cdr (assq (car (cdr #{x 30355}#))
- #{r 30354}#))))
- (cdr #{e 30346}#))))
- (cons 'map
- (cons (list 'lambda #{formals 30348}# #{e 30346}#)
- #{actuals 30349}#)))))))
- (#{regen 29712}#
- (lambda (#{x 30357}#)
- (let ((#{atom-key 30358}# (car #{x 30357}#)))
- (if (eqv? #{atom-key 30358}# 'ref)
- (let ((#{name 30368}# (car (cdr #{x 30357}#)))
- (#{var 30369}# (car (cdr #{x 30357}#))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 3)
- #f
- #{name 30368}#
- #{var 30369}#))
- (if (eqv? #{atom-key 30358}# 'primitive)
- (let ((#{name 30380}# (car (cdr #{x 30357}#))))
+ (list->vector
+ (car (cdr e-6611))))
+ (list 'list->vector e-6611)))
+ maps-6612))))
+ tmp-6605)
+ (values
+ (list 'quote e-6452)
+ maps-6454))))))))))))
+ (gen-ref-6021
+ (lambda (src-6639 var-6640 level-6641 maps-6642)
+ (if (= level-6641 0)
+ (values var-6640 maps-6642)
+ (if (null? maps-6642)
+ (syntax-violation
+ 'syntax
+ "missing ellipsis"
+ src-6639)
+ (call-with-values
+ (lambda ()
+ (gen-ref-6021
+ src-6639
+ var-6640
+ (#{1-}# level-6641)
+ (cdr maps-6642)))
+ (lambda (outer-var-6643 outer-maps-6644)
+ (let ((b-6645 (assq outer-var-6643 (car maps-6642))))
+ (if b-6645
+ (values (cdr b-6645) maps-6642)
+ (let ((inner-var-6647
+ (gensym
+ (string-append
+ (symbol->string 'tmp)
+ "-"))))
+ (values
+ inner-var-6647
+ (cons (cons (cons outer-var-6643 inner-var-6647)
+ (car maps-6642))
+ outer-maps-6644)))))))))))
+ (gen-map-6023
+ (lambda (e-6661 map-env-6662)
+ (let ((formals-6663 (map cdr map-env-6662))
+ (actuals-6664
+ (map (lambda (x-6666) (list 'ref (car x-6666)))
+ map-env-6662)))
+ (if (eq? (car e-6661) 'ref)
+ (car actuals-6664)
+ (if (and-map
+ (lambda (x-6667)
+ (if (eq? (car x-6667) 'ref)
+ (memq (car (cdr x-6667)) formals-6663)
+ #f))
+ (cdr e-6661))
+ (cons 'map
+ (cons (list 'primitive (car e-6661))
+ (map (let ((r-6669
+ (map cons
+ formals-6663
+ actuals-6664)))
+ (lambda (x-6670)
+ (cdr (assq (car (cdr x-6670))
+ r-6669))))
+ (cdr e-6661))))
+ (cons 'map
+ (cons (list 'lambda formals-6663 e-6661)
+ actuals-6664)))))))
+ (regen-6027
+ (lambda (x-6672)
+ (let ((atom-key-6673 (car x-6672)))
+ (if (eqv? atom-key-6673 'ref)
+ (let ((name-6683 (car (cdr x-6672)))
+ (var-6684 (car (cdr x-6672))))
(make-struct/no-tail
- (vector-ref %expanded-vtables 2)
+ (vector-ref %expanded-vtables 3)
#f
- #{name 30380}#))
- (if (eqv? #{atom-key 30358}# 'quote)
- (let ((#{exp 30391}# (car (cdr #{x 30357}#))))
+ name-6683
+ var-6684))
+ (if (eqv? atom-key-6673 'primitive)
+ (let ((name-6695 (car (cdr x-6672))))
(make-struct/no-tail
- (vector-ref %expanded-vtables 1)
+ (vector-ref %expanded-vtables 2)
#f
- #{exp 30391}#))
- (if (eqv? #{atom-key 30358}# 'lambda)
- (if (list? (car (cdr #{x 30357}#)))
- (let ((#{req 30402}# (car (cdr #{x 30357}#)))
- (#{vars 30404}# (car (cdr #{x 30357}#)))
- (#{exp 30406}#
- (#{regen 29712}#
- (car (cdr (cdr #{x 30357}#))))))
- (let ((#{body 30411}#
- (make-struct/no-tail
- (vector-ref %expanded-vtables 15)
- #f
- #{req 30402}#
- #f
- #f
- #f
- '()
- #{vars 30404}#
- #{exp 30406}#
- #f)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #f
- '()
- #{body 30411}#)))
- (error "how did we get here" #{x 30357}#))
- (let ((#{name 30427}# (car #{x 30357}#))
- (#{args 30428}#
- (map #{regen 29712}# (cdr #{x 30357}#))))
+ name-6695))
+ (if (eqv? atom-key-6673 'quote)
+ (let ((exp-6706 (car (cdr x-6672))))
(make-struct/no-tail
- (vector-ref %expanded-vtables 12)
+ (vector-ref %expanded-vtables 1)
#f
- #{name 30427}#
- #{args 30428}#))))))))))
- (lambda (#{e 29713}#
- #{r 29714}#
- #{w 29715}#
- #{s 29716}#
- #{mod 29717}#)
- (let ((#{e 29718}#
- (let ((#{x 30047}#
- (begin
- (if (if (pair? #{e 29713}#) #{s 29716}# #f)
- (set-source-properties! #{e 29713}# #{s 29716}#))
- #{e 29713}#)))
- (if (if (null? (car #{w 29715}#))
- (null? (cdr #{w 29715}#))
- #f)
- #{x 30047}#
- (if (if (vector? #{x 30047}#)
- (if (= (vector-length #{x 30047}#) 4)
- (eq? (vector-ref #{x 30047}# 0) 'syntax-object)
- #f)
- #f)
- (let ((#{expression 30079}# (vector-ref #{x 30047}# 1))
- (#{wrap 30080}#
- (let ((#{w2 30088}#
- (vector-ref #{x 30047}# 2)))
- (let ((#{m1 30089}# (car #{w 29715}#))
- (#{s1 30090}# (cdr #{w 29715}#)))
- (if (null? #{m1 30089}#)
- (if (null? #{s1 30090}#)
- #{w2 30088}#
- (cons (car #{w2 30088}#)
- (let ((#{m2 30105}#
- (cdr #{w2 30088}#)))
- (if (null? #{m2 30105}#)
- #{s1 30090}#
- (append
- #{s1 30090}#
- #{m2 30105}#)))))
- (cons (let ((#{m2 30113}#
- (car #{w2 30088}#)))
- (if (null? #{m2 30113}#)
- #{m1 30089}#
- (append
- #{m1 30089}#
- #{m2 30113}#)))
- (let ((#{m2 30121}#
- (cdr #{w2 30088}#)))
- (if (null? #{m2 30121}#)
- #{s1 30090}#
- (append
- #{s1 30090}#
- #{m2 30121}#))))))))
- (#{module 30081}# (vector-ref #{x 30047}# 3)))
- (vector
- 'syntax-object
- #{expression 30079}#
- #{wrap 30080}#
- #{module 30081}#))
- (if (null? #{x 30047}#)
- #{x 30047}#
- (vector
- 'syntax-object
- #{x 30047}#
- #{w 29715}#
- #{mod 29717}#)))))))
- (let ((#{tmp 29719}# #{e 29718}#))
- (let ((#{tmp 29720}#
- ($sc-dispatch #{tmp 29719}# '(_ any))))
- (if #{tmp 29720}#
- (@apply
- (lambda (#{x 29768}#)
- (call-with-values
- (lambda ()
- (#{gen-syntax 29705}#
- #{e 29718}#
- #{x 29768}#
- #{r 29714}#
- '()
- #{ellipsis? 28279}#
- #{mod 29717}#))
- (lambda (#{e 29845}# #{maps 29846}#)
- (#{regen 29712}# #{e 29845}#))))
- #{tmp 29720}#)
- (syntax-violation
- 'syntax
- "bad `syntax' form"
- #{e 29718}#))))))))
- (#{global-extend 28236}#
- 'core
- 'lambda
- (lambda (#{e 30659}#
- #{r 30660}#
- #{w 30661}#
- #{s 30662}#
- #{mod 30663}#)
- (let ((#{tmp 30665}#
- ($sc-dispatch
- #{e 30659}#
- '(_ any any . each-any))))
- (if #{tmp 30665}#
- (@apply
- (lambda (#{args 30669}# #{e1 30670}# #{e2 30671}#)
- (call-with-values
- (lambda ()
- (#{lambda-formals 28280}# #{args 30669}#))
- (lambda (#{req 30674}#
- #{opt 30675}#
- #{rest 30676}#
- #{kw 30677}#)
- (letrec*
- ((#{lp 30678}#
- (lambda (#{body 30681}# #{meta 30682}#)
- (let ((#{tmp 30684}#
- ($sc-dispatch
- #{body 30681}#
- '(any any . each-any))))
- (if (if #{tmp 30684}#
- (@apply
- (lambda (#{docstring 30688}#
- #{e1 30689}#
- #{e2 30690}#)
- (string?
- (syntax->datum #{docstring 30688}#)))
- #{tmp 30684}#)
- #f)
- (@apply
- (lambda (#{docstring 30691}#
- #{e1 30692}#
- #{e2 30693}#)
- (#{lp 30678}#
- (cons #{e1 30692}# #{e2 30693}#)
- (append
- #{meta 30682}#
- (list (cons 'documentation
- (syntax->datum
- #{docstring 30691}#))))))
- #{tmp 30684}#)
- (let ((#{tmp 30694}#
- ($sc-dispatch
- #{body 30681}#
- '(#(vector #(each (any . any)))
- any
- .
- each-any))))
- (if #{tmp 30694}#
- (@apply
- (lambda (#{k 30698}#
- #{v 30699}#
- #{e1 30700}#
- #{e2 30701}#)
- (#{lp 30678}#
- (cons #{e1 30700}# #{e2 30701}#)
- (append
- #{meta 30682}#
- (syntax->datum
- (map cons
- #{k 30698}#
- #{v 30699}#)))))
- #{tmp 30694}#)
- (#{expand-simple-lambda 28281}#
- #{e 30659}#
- #{r 30660}#
- #{w 30661}#
- #{s 30662}#
- #{mod 30663}#
- #{req 30674}#
- #{rest 30676}#
- #{meta 30682}#
- #{body 30681}#))))))))
- (#{lp 30678}#
- (cons #{e1 30670}# #{e2 30671}#)
- '())))))
- #{tmp 30665}#)
- (syntax-violation
- 'lambda
- "bad lambda"
- #{e 30659}#)))))
- (#{global-extend 28236}#
- 'core
- 'lambda*
- (lambda (#{e 31081}#
- #{r 31082}#
- #{w 31083}#
- #{s 31084}#
- #{mod 31085}#)
- (let ((#{tmp 31087}#
- ($sc-dispatch
- #{e 31081}#
- '(_ any any . each-any))))
- (if #{tmp 31087}#
- (@apply
- (lambda (#{args 31091}# #{e1 31092}# #{e2 31093}#)
- (call-with-values
- (lambda ()
- (#{expand-lambda-case 28283}#
- #{e 31081}#
- #{r 31082}#
- #{w 31083}#
- #{s 31084}#
- #{mod 31085}#
- #{lambda*-formals 28282}#
- (list (cons #{args 31091}#
- (cons #{e1 31092}# #{e2 31093}#)))))
- (lambda (#{meta 31096}# #{lcase 31097}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #{s 31084}#
- #{meta 31096}#
- #{lcase 31097}#))))
- #{tmp 31087}#)
- (syntax-violation
- 'lambda
- "bad lambda*"
- #{e 31081}#)))))
- (#{global-extend 28236}#
- 'core
- 'case-lambda
- (lambda (#{e 31260}#
- #{r 31261}#
- #{w 31262}#
- #{s 31263}#
- #{mod 31264}#)
- (let ((#{tmp 31266}#
- ($sc-dispatch
- #{e 31260}#
- '(_ (any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 31266}#
- (@apply
- (lambda (#{args 31270}#
- #{e1 31271}#
- #{e2 31272}#
- #{args* 31273}#
- #{e1* 31274}#
- #{e2* 31275}#)
- (call-with-values
- (lambda ()
- (#{expand-lambda-case 28283}#
- #{e 31260}#
- #{r 31261}#
- #{w 31262}#
- #{s 31263}#
- #{mod 31264}#
- #{lambda-formals 28280}#
- (cons (cons #{args 31270}#
- (cons #{e1 31271}# #{e2 31272}#))
- (map (lambda (#{tmp 27210 31278}#
- #{tmp 27209 31279}#
- #{tmp 27208 31280}#)
- (cons #{tmp 27208 31280}#
- (cons #{tmp 27209 31279}#
- #{tmp 27210 31278}#)))
- #{e2* 31275}#
- #{e1* 31274}#
- #{args* 31273}#))))
- (lambda (#{meta 31281}# #{lcase 31282}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #{s 31263}#
- #{meta 31281}#
- #{lcase 31282}#))))
- #{tmp 31266}#)
- (syntax-violation
- 'case-lambda
- "bad case-lambda"
- #{e 31260}#)))))
- (#{global-extend 28236}#
- 'core
- 'case-lambda*
- (lambda (#{e 31451}#
- #{r 31452}#
- #{w 31453}#
- #{s 31454}#
- #{mod 31455}#)
- (let ((#{tmp 31457}#
- ($sc-dispatch
- #{e 31451}#
- '(_ (any any . each-any)
- .
- #(each (any any . each-any))))))
- (if #{tmp 31457}#
- (@apply
- (lambda (#{args 31461}#
- #{e1 31462}#
- #{e2 31463}#
- #{args* 31464}#
- #{e1* 31465}#
- #{e2* 31466}#)
- (call-with-values
- (lambda ()
- (#{expand-lambda-case 28283}#
- #{e 31451}#
- #{r 31452}#
- #{w 31453}#
- #{s 31454}#
- #{mod 31455}#
- #{lambda*-formals 28282}#
- (cons (cons #{args 31461}#
- (cons #{e1 31462}# #{e2 31463}#))
- (map (lambda (#{tmp 27245 31469}#
- #{tmp 27244 31470}#
- #{tmp 27243 31471}#)
- (cons #{tmp 27243 31471}#
- (cons #{tmp 27244 31470}#
- #{tmp 27245 31469}#)))
- #{e2* 31466}#
- #{e1* 31465}#
- #{args* 31464}#))))
- (lambda (#{meta 31472}# #{lcase 31473}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #{s 31454}#
- #{meta 31472}#
- #{lcase 31473}#))))
- #{tmp 31457}#)
- (syntax-violation
- 'case-lambda
- "bad case-lambda*"
- #{e 31451}#)))))
- (#{global-extend 28236}#
- 'core
- 'let
- (letrec*
- ((#{expand-let 31681}#
- (lambda (#{e 31891}#
- #{r 31892}#
- #{w 31893}#
- #{s 31894}#
- #{mod 31895}#
- #{constructor 31896}#
- #{ids 31897}#
- #{vals 31898}#
- #{exps 31899}#)
- (if (not (#{valid-bound-ids? 28261}# #{ids 31897}#))
- (syntax-violation
- 'let
- "duplicate bound variable"
- #{e 31891}#)
- (let ((#{labels 31984}#
- (#{gen-labels 28241}# #{ids 31897}#))
- (#{new-vars 31985}#
- (map #{gen-var 28285}# #{ids 31897}#)))
- (let ((#{nw 31986}#
- (#{make-binding-wrap 28252}#
- #{ids 31897}#
- #{labels 31984}#
- #{w 31893}#))
- (#{nr 31987}#
- (#{extend-var-env 28234}#
- #{labels 31984}#
- #{new-vars 31985}#
- #{r 31892}#)))
- (#{constructor 31896}#
- #{s 31894}#
- (map syntax->datum #{ids 31897}#)
- #{new-vars 31985}#
- (map (lambda (#{x 32004}#)
- (#{expand 28271}#
- #{x 32004}#
- #{r 31892}#
- #{w 31893}#
- #{mod 31895}#))
- #{vals 31898}#)
- (#{expand-body 28275}#
- #{exps 31899}#
- (#{source-wrap 28265}#
- #{e 31891}#
- #{nw 31986}#
- #{s 31894}#
- #{mod 31895}#)
- #{nr 31987}#
- #{nw 31986}#
- #{mod 31895}#))))))))
- (lambda (#{e 31682}#
- #{r 31683}#
- #{w 31684}#
- #{s 31685}#
- #{mod 31686}#)
- (let ((#{tmp 31688}#
- ($sc-dispatch
- #{e 31682}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 31688}#
- (@apply
- (lambda (#{id 31692}#
- #{val 31693}#
- #{e1 31694}#
- #{e2 31695}#)
- (and-map #{id? 28238}# #{id 31692}#))
- #{tmp 31688}#)
- #f)
- (@apply
- (lambda (#{id 31711}#
- #{val 31712}#
- #{e1 31713}#
- #{e2 31714}#)
- (#{expand-let 31681}#
- #{e 31682}#
- #{r 31683}#
- #{w 31684}#
- #{s 31685}#
- #{mod 31686}#
- (lambda (#{src 31718}#
- #{ids 31719}#
- #{vars 31720}#
- #{val-exps 31721}#
- #{body-exp 31722}#)
- (begin
- (for-each
- #{maybe-name-value! 28203}#
- #{ids 31719}#
- #{val-exps 31721}#)
- (if (null? #{vars 31720}#)
- #{body-exp 31722}#
- (make-struct/no-tail
- (vector-ref %expanded-vtables 16)
- #{src 31718}#
- #{ids 31719}#
- #{vars 31720}#
- #{val-exps 31721}#
- #{body-exp 31722}#))))
- #{id 31711}#
- #{val 31712}#
- (cons #{e1 31713}# #{e2 31714}#)))
- #{tmp 31688}#)
- (let ((#{tmp 31729}#
- ($sc-dispatch
- #{e 31682}#
- '(_ any #(each (any any)) any . each-any))))
- (if (if #{tmp 31729}#
- (@apply
- (lambda (#{f 31733}#
- #{id 31734}#
- #{val 31735}#
- #{e1 31736}#
- #{e2 31737}#)
- (if (if (symbol? #{f 31733}#)
- #t
- (if (if (vector? #{f 31733}#)
- (if (= (vector-length #{f 31733}#) 4)
- (eq? (vector-ref #{f 31733}# 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{f 31733}# 1))
- #f))
- (and-map #{id? 28238}# #{id 31734}#)
- #f))
- #{tmp 31729}#)
- #f)
- (@apply
- (lambda (#{f 31779}#
- #{id 31780}#
- #{val 31781}#
- #{e1 31782}#
- #{e2 31783}#)
- (#{expand-let 31681}#
- #{e 31682}#
- #{r 31683}#
- #{w 31684}#
- #{s 31685}#
- #{mod 31686}#
- #{build-named-let 28222}#
- (cons #{f 31779}# #{id 31780}#)
- #{val 31781}#
- (cons #{e1 31782}# #{e2 31783}#)))
- #{tmp 31729}#)
- (syntax-violation
- 'let
- "bad let"
- (let ((#{x 31796}#
+ exp-6706))
+ (if (eqv? atom-key-6673 'lambda)
+ (if (list? (car (cdr x-6672)))
+ (let ((req-6717 (car (cdr x-6672)))
+ (vars-6719 (car (cdr x-6672)))
+ (exp-6721
+ (regen-6027 (car (cdr (cdr x-6672))))))
+ (let ((body-6726
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ #f
+ req-6717
+ #f
+ #f
+ #f
+ '()
+ vars-6719
+ exp-6721
+ #f)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ #f
+ '()
+ body-6726)))
+ (error "how did we get here" x-6672))
+ (let ((name-6742 (car x-6672))
+ (args-6743 (map regen-6027 (cdr x-6672))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #f
+ name-6742
+ args-6743))))))))))
+ (lambda (e-6028 r-6029 w-6030 s-6031 mod-6032)
+ (let ((e-6033
+ (let ((x-6362
(begin
- (if (if (pair? #{e 31682}#) #{s 31685}# #f)
- (set-source-properties!
- #{e 31682}#
- #{s 31685}#))
- #{e 31682}#)))
- (if (if (null? (car #{w 31684}#))
- (null? (cdr #{w 31684}#))
- #f)
- #{x 31796}#
- (if (if (vector? #{x 31796}#)
- (if (= (vector-length #{x 31796}#) 4)
- (eq? (vector-ref #{x 31796}# 0) 'syntax-object)
+ (if (if (pair? e-6028) s-6031 #f)
+ (set-source-properties! e-6028 s-6031))
+ e-6028)))
+ (if (if (null? (car w-6030)) (null? (cdr w-6030)) #f)
+ x-6362
+ (if (if (vector? x-6362)
+ (if (= (vector-length x-6362) 4)
+ (eq? (vector-ref x-6362 0) 'syntax-object)
#f)
#f)
- (let ((#{expression 31828}#
- (vector-ref #{x 31796}# 1))
- (#{wrap 31829}#
- (let ((#{w2 31837}#
- (vector-ref #{x 31796}# 2)))
- (let ((#{m1 31838}# (car #{w 31684}#))
- (#{s1 31839}# (cdr #{w 31684}#)))
- (if (null? #{m1 31838}#)
- (if (null? #{s1 31839}#)
- #{w2 31837}#
- (cons (car #{w2 31837}#)
- (let ((#{m2 31854}#
- (cdr #{w2 31837}#)))
- (if (null? #{m2 31854}#)
- #{s1 31839}#
+ (let ((expression-6394 (vector-ref x-6362 1))
+ (wrap-6395
+ (let ((w2-6403 (vector-ref x-6362 2)))
+ (let ((m1-6404 (car w-6030))
+ (s1-6405 (cdr w-6030)))
+ (if (null? m1-6404)
+ (if (null? s1-6405)
+ w2-6403
+ (cons (car w2-6403)
+ (let ((m2-6420 (cdr w2-6403)))
+ (if (null? m2-6420)
+ s1-6405
(append
- #{s1 31839}#
- #{m2 31854}#)))))
- (cons (let ((#{m2 31862}#
- (car #{w2 31837}#)))
- (if (null? #{m2 31862}#)
- #{m1 31838}#
- (append
- #{m1 31838}#
- #{m2 31862}#)))
- (let ((#{m2 31870}#
- (cdr #{w2 31837}#)))
- (if (null? #{m2 31870}#)
- #{s1 31839}#
+ s1-6405
+ m2-6420)))))
+ (cons (let ((m2-6428 (car w2-6403)))
+ (if (null? m2-6428)
+ m1-6404
+ (append m1-6404 m2-6428)))
+ (let ((m2-6436 (cdr w2-6403)))
+ (if (null? m2-6436)
+ s1-6405
(append
- #{s1 31839}#
- #{m2 31870}#))))))))
- (#{module 31830}# (vector-ref #{x 31796}# 3)))
+ s1-6405
+ m2-6436))))))))
+ (module-6396 (vector-ref x-6362 3)))
(vector
'syntax-object
- #{expression 31828}#
- #{wrap 31829}#
- #{module 31830}#))
- (if (null? #{x 31796}#)
- #{x 31796}#
+ expression-6394
+ wrap-6395
+ module-6396))
+ (if (null? x-6362)
+ x-6362
(vector
'syntax-object
- #{x 31796}#
- #{w 31684}#
- #{mod 31686}#)))))))))))))
- (#{global-extend 28236}#
- 'core
- 'letrec
- (lambda (#{e 32475}#
- #{r 32476}#
- #{w 32477}#
- #{s 32478}#
- #{mod 32479}#)
- (let ((#{tmp 32481}#
- ($sc-dispatch
- #{e 32475}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 32481}#
+ x-6362
+ w-6030
+ mod-6032)))))))
+ (let ((tmp-6034 e-6033))
+ (let ((tmp-6035 ($sc-dispatch tmp-6034 '(_ any))))
+ (if tmp-6035
+ (@apply
+ (lambda (x-6083)
+ (call-with-values
+ (lambda ()
+ (gen-syntax-6020
+ e-6033
+ x-6083
+ r-6029
+ '()
+ ellipsis?-4594
+ mod-6032))
+ (lambda (e-6160 maps-6161) (regen-6027 e-6160))))
+ tmp-6035)
+ (syntax-violation
+ 'syntax
+ "bad `syntax' form"
+ e-6033))))))))
+ (global-extend-4548
+ 'core
+ 'lambda
+ (lambda (e-6974 r-6975 w-6976 s-6977 mod-6978)
+ (let ((tmp-6980
+ ($sc-dispatch e-6974 '(_ any any . each-any))))
+ (if tmp-6980
+ (@apply
+ (lambda (args-6984 e1-6985 e2-6986)
+ (call-with-values
+ (lambda () (lambda-formals-4595 args-6984))
+ (lambda (req-6989 opt-6990 rest-6991 kw-6992)
+ (letrec*
+ ((lp-6993
+ (lambda (body-6996 meta-6997)
+ (let ((tmp-6999
+ ($sc-dispatch
+ body-6996
+ '(any any . each-any))))
+ (if (if tmp-6999
+ (@apply
+ (lambda (docstring-7003 e1-7004 e2-7005)
+ (string?
+ (syntax->datum docstring-7003)))
+ tmp-6999)
+ #f)
+ (@apply
+ (lambda (docstring-7006 e1-7007 e2-7008)
+ (lp-6993
+ (cons e1-7007 e2-7008)
+ (append
+ meta-6997
+ (list (cons 'documentation
+ (syntax->datum
+ docstring-7006))))))
+ tmp-6999)
+ (let ((tmp-7009
+ ($sc-dispatch
+ body-6996
+ '(#(vector #(each (any . any)))
+ any
+ .
+ each-any))))
+ (if tmp-7009
+ (@apply
+ (lambda (k-7013 v-7014 e1-7015 e2-7016)
+ (lp-6993
+ (cons e1-7015 e2-7016)
+ (append
+ meta-6997
+ (syntax->datum
+ (map cons k-7013 v-7014)))))
+ tmp-7009)
+ (expand-simple-lambda-4596
+ e-6974
+ r-6975
+ w-6976
+ s-6977
+ mod-6978
+ req-6989
+ rest-6991
+ meta-6997
+ body-6996))))))))
+ (lp-6993 (cons e1-6985 e2-6986) '())))))
+ tmp-6980)
+ (syntax-violation 'lambda "bad lambda" e-6974)))))
+ (global-extend-4548
+ 'core
+ 'lambda*
+ (lambda (e-7391 r-7392 w-7393 s-7394 mod-7395)
+ (let ((tmp-7397
+ ($sc-dispatch e-7391 '(_ any any . each-any))))
+ (if tmp-7397
+ (@apply
+ (lambda (args-7401 e1-7402 e2-7403)
+ (call-with-values
+ (lambda ()
+ (expand-lambda-case-4598
+ e-7391
+ r-7392
+ w-7393
+ s-7394
+ mod-7395
+ lambda*-formals-4597
+ (list (cons args-7401 (cons e1-7402 e2-7403)))))
+ (lambda (meta-7406 lcase-7407)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ s-7394
+ meta-7406
+ lcase-7407))))
+ tmp-7397)
+ (syntax-violation 'lambda "bad lambda*" e-7391)))))
+ (global-extend-4548
+ 'core
+ 'case-lambda
+ (lambda (e-7570 r-7571 w-7572 s-7573 mod-7574)
+ (let ((tmp-7576
+ ($sc-dispatch
+ e-7570
+ '(_ (any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if tmp-7576
+ (@apply
+ (lambda (args-7580
+ e1-7581
+ e2-7582
+ args*-7583
+ e1*-7584
+ e2*-7585)
+ (call-with-values
+ (lambda ()
+ (expand-lambda-case-4598
+ e-7570
+ r-7571
+ w-7572
+ s-7573
+ mod-7574
+ lambda-formals-4595
+ (cons (cons args-7580 (cons e1-7581 e2-7582))
+ (map (lambda (tmp-3460-7588
+ tmp-3459-7589
+ tmp-3458-7590)
+ (cons tmp-3458-7590
+ (cons tmp-3459-7589 tmp-3460-7588)))
+ e2*-7585
+ e1*-7584
+ args*-7583))))
+ (lambda (meta-7591 lcase-7592)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ s-7573
+ meta-7591
+ lcase-7592))))
+ tmp-7576)
+ (syntax-violation
+ 'case-lambda
+ "bad case-lambda"
+ e-7570)))))
+ (global-extend-4548
+ 'core
+ 'case-lambda*
+ (lambda (e-7761 r-7762 w-7763 s-7764 mod-7765)
+ (let ((tmp-7767
+ ($sc-dispatch
+ e-7761
+ '(_ (any any . each-any)
+ .
+ #(each (any any . each-any))))))
+ (if tmp-7767
+ (@apply
+ (lambda (args-7771
+ e1-7772
+ e2-7773
+ args*-7774
+ e1*-7775
+ e2*-7776)
+ (call-with-values
+ (lambda ()
+ (expand-lambda-case-4598
+ e-7761
+ r-7762
+ w-7763
+ s-7764
+ mod-7765
+ lambda*-formals-4597
+ (cons (cons args-7771 (cons e1-7772 e2-7773))
+ (map (lambda (tmp-3495-7779
+ tmp-3494-7780
+ tmp-3493-7781)
+ (cons tmp-3493-7781
+ (cons tmp-3494-7780 tmp-3495-7779)))
+ e2*-7776
+ e1*-7775
+ args*-7774))))
+ (lambda (meta-7782 lcase-7783)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ s-7764
+ meta-7782
+ lcase-7783))))
+ tmp-7767)
+ (syntax-violation
+ 'case-lambda
+ "bad case-lambda*"
+ e-7761)))))
+ (global-extend-4548
+ 'core
+ 'let
+ (letrec*
+ ((expand-let-7991
+ (lambda (e-8201
+ r-8202
+ w-8203
+ s-8204
+ mod-8205
+ constructor-8206
+ ids-8207
+ vals-8208
+ exps-8209)
+ (if (not (valid-bound-ids?-4576 ids-8207))
+ (syntax-violation
+ 'let
+ "duplicate bound variable"
+ e-8201)
+ (let ((labels-8294 (gen-labels-4553 ids-8207))
+ (new-vars-8295 (map gen-var-4600 ids-8207)))
+ (let ((nw-8296
+ (make-binding-wrap-4564
+ ids-8207
+ labels-8294
+ w-8203))
+ (nr-8297
+ (extend-var-env-4546
+ labels-8294
+ new-vars-8295
+ r-8202)))
+ (constructor-8206
+ s-8204
+ (map syntax->datum ids-8207)
+ new-vars-8295
+ (map (lambda (x-8314)
+ (expand-4586 x-8314 r-8202 w-8203 mod-8205))
+ vals-8208)
+ (expand-body-4590
+ exps-8209
+ (source-wrap-4580 e-8201 nw-8296 s-8204 mod-8205)
+ nr-8297
+ nw-8296
+ mod-8205))))))))
+ (lambda (e-7992 r-7993 w-7994 s-7995 mod-7996)
+ (let ((tmp-7998
+ ($sc-dispatch
+ e-7992
+ '(_ #(each (any any)) any . each-any))))
+ (if (if tmp-7998
+ (@apply
+ (lambda (id-8002 val-8003 e1-8004 e2-8005)
+ (and-map id?-4550 id-8002))
+ tmp-7998)
+ #f)
(@apply
- (lambda (#{id 32485}#
- #{val 32486}#
- #{e1 32487}#
- #{e2 32488}#)
- (and-map #{id? 28238}# #{id 32485}#))
- #{tmp 32481}#)
- #f)
- (@apply
- (lambda (#{id 32504}#
- #{val 32505}#
- #{e1 32506}#
- #{e2 32507}#)
- (if (not (#{valid-bound-ids? 28261}# #{id 32504}#))
- (syntax-violation
- 'letrec
- "duplicate bound variable"
- #{e 32475}#)
- (let ((#{labels 32604}#
- (#{gen-labels 28241}# #{id 32504}#))
- (#{new-vars 32605}#
- (map #{gen-var 28285}# #{id 32504}#)))
- (let ((#{w 32606}#
- (#{make-binding-wrap 28252}#
- #{id 32504}#
- #{labels 32604}#
- #{w 32477}#))
- (#{r 32607}#
- (#{extend-var-env 28234}#
- #{labels 32604}#
- #{new-vars 32605}#
- #{r 32476}#)))
- (#{build-letrec 28223}#
- #{s 32478}#
- #f
- (map syntax->datum #{id 32504}#)
- #{new-vars 32605}#
- (map (lambda (#{x 32686}#)
- (#{expand 28271}#
- #{x 32686}#
- #{r 32607}#
- #{w 32606}#
- #{mod 32479}#))
- #{val 32505}#)
- (#{expand-body 28275}#
- (cons #{e1 32506}# #{e2 32507}#)
- (let ((#{x 32748}#
- (begin
- (if (if (pair? #{e 32475}#) #{s 32478}# #f)
- (set-source-properties!
- #{e 32475}#
- #{s 32478}#))
- #{e 32475}#)))
- (if (if (null? (car #{w 32606}#))
- (null? (cdr #{w 32606}#))
- #f)
- #{x 32748}#
- (if (if (vector? #{x 32748}#)
- (if (= (vector-length #{x 32748}#) 4)
- (eq? (vector-ref #{x 32748}# 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 32780}#
- (vector-ref #{x 32748}# 1))
- (#{wrap 32781}#
- (let ((#{w2 32789}#
- (vector-ref #{x 32748}# 2)))
- (let ((#{m1 32790}#
- (car #{w 32606}#))
- (#{s1 32791}#
- (cdr #{w 32606}#)))
- (if (null? #{m1 32790}#)
- (if (null? #{s1 32791}#)
- #{w2 32789}#
- (cons (car #{w2 32789}#)
- (let ((#{m2 32806}#
- (cdr #{w2 32789}#)))
- (if (null? #{m2 32806}#)
- #{s1 32791}#
- (append
- #{s1 32791}#
- #{m2 32806}#)))))
- (cons (let ((#{m2 32814}#
- (car #{w2 32789}#)))
- (if (null? #{m2 32814}#)
- #{m1 32790}#
- (append
- #{m1 32790}#
- #{m2 32814}#)))
- (let ((#{m2 32822}#
- (cdr #{w2 32789}#)))
- (if (null? #{m2 32822}#)
- #{s1 32791}#
- (append
- #{s1 32791}#
- #{m2 32822}#))))))))
- (#{module 32782}#
- (vector-ref #{x 32748}# 3)))
- (vector
- 'syntax-object
- #{expression 32780}#
- #{wrap 32781}#
- #{module 32782}#))
- (if (null? #{x 32748}#)
- #{x 32748}#
- (vector
- 'syntax-object
- #{x 32748}#
- #{w 32606}#
- #{mod 32479}#)))))
- #{r 32607}#
- #{w 32606}#
- #{mod 32479}#))))))
- #{tmp 32481}#)
- (syntax-violation
- 'letrec
- "bad letrec"
- (let ((#{x 33061}#
- (begin
- (if (if (pair? #{e 32475}#) #{s 32478}# #f)
- (set-source-properties! #{e 32475}# #{s 32478}#))
- #{e 32475}#)))
- (if (if (null? (car #{w 32477}#))
- (null? (cdr #{w 32477}#))
- #f)
- #{x 33061}#
- (if (if (vector? #{x 33061}#)
- (if (= (vector-length #{x 33061}#) 4)
- (eq? (vector-ref #{x 33061}# 0) 'syntax-object)
- #f)
+ (lambda (id-8021 val-8022 e1-8023 e2-8024)
+ (expand-let-7991
+ e-7992
+ r-7993
+ w-7994
+ s-7995
+ mod-7996
+ (lambda (src-8028
+ ids-8029
+ vars-8030
+ val-exps-8031
+ body-exp-8032)
+ (begin
+ (for-each
+ maybe-name-value!-4515
+ ids-8029
+ val-exps-8031)
+ (if (null? vars-8030)
+ body-exp-8032
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 16)
+ src-8028
+ ids-8029
+ vars-8030
+ val-exps-8031
+ body-exp-8032))))
+ id-8021
+ val-8022
+ (cons e1-8023 e2-8024)))
+ tmp-7998)
+ (let ((tmp-8039
+ ($sc-dispatch
+ e-7992
+ '(_ any #(each (any any)) any . each-any))))
+ (if (if tmp-8039
+ (@apply
+ (lambda (f-8043 id-8044 val-8045 e1-8046 e2-8047)
+ (if (if (symbol? f-8043)
+ #t
+ (if (if (vector? f-8043)
+ (if (= (vector-length f-8043) 4)
+ (eq? (vector-ref f-8043 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref f-8043 1))
+ #f))
+ (and-map id?-4550 id-8044)
+ #f))
+ tmp-8039)
#f)
- (let ((#{expression 33093}# (vector-ref #{x 33061}# 1))
- (#{wrap 33094}#
- (let ((#{w2 33102}# (vector-ref #{x 33061}# 2)))
- (let ((#{m1 33103}# (car #{w 32477}#))
- (#{s1 33104}# (cdr #{w 32477}#)))
- (if (null? #{m1 33103}#)
- (if (null? #{s1 33104}#)
- #{w2 33102}#
- (cons (car #{w2 33102}#)
- (let ((#{m2 33119}#
- (cdr #{w2 33102}#)))
- (if (null? #{m2 33119}#)
- #{s1 33104}#
- (append
- #{s1 33104}#
- #{m2 33119}#)))))
- (cons (let ((#{m2 33127}#
- (car #{w2 33102}#)))
- (if (null? #{m2 33127}#)
- #{m1 33103}#
- (append
- #{m1 33103}#
- #{m2 33127}#)))
- (let ((#{m2 33135}#
- (cdr #{w2 33102}#)))
- (if (null? #{m2 33135}#)
- #{s1 33104}#
- (append
- #{s1 33104}#
- #{m2 33135}#))))))))
- (#{module 33095}# (vector-ref #{x 33061}# 3)))
- (vector
- 'syntax-object
- #{expression 33093}#
- #{wrap 33094}#
- #{module 33095}#))
- (if (null? #{x 33061}#)
- #{x 33061}#
- (vector
- 'syntax-object
- #{x 33061}#
- #{w 32477}#
- #{mod 32479}#))))))))))
- (#{global-extend 28236}#
- 'core
- 'letrec*
- (lambda (#{e 33286}#
- #{r 33287}#
- #{w 33288}#
- #{s 33289}#
- #{mod 33290}#)
- (let ((#{tmp 33292}#
- ($sc-dispatch
- #{e 33286}#
- '(_ #(each (any any)) any . each-any))))
- (if (if #{tmp 33292}#
- (@apply
- (lambda (#{id 33296}#
- #{val 33297}#
- #{e1 33298}#
- #{e2 33299}#)
- (and-map #{id? 28238}# #{id 33296}#))
- #{tmp 33292}#)
- #f)
- (@apply
- (lambda (#{id 33315}#
- #{val 33316}#
- #{e1 33317}#
- #{e2 33318}#)
- (if (not (#{valid-bound-ids? 28261}# #{id 33315}#))
- (syntax-violation
- 'letrec*
- "duplicate bound variable"
- #{e 33286}#)
- (let ((#{labels 33415}#
- (#{gen-labels 28241}# #{id 33315}#))
- (#{new-vars 33416}#
- (map #{gen-var 28285}# #{id 33315}#)))
- (let ((#{w 33417}#
- (#{make-binding-wrap 28252}#
- #{id 33315}#
- #{labels 33415}#
- #{w 33288}#))
- (#{r 33418}#
- (#{extend-var-env 28234}#
- #{labels 33415}#
- #{new-vars 33416}#
- #{r 33287}#)))
- (#{build-letrec 28223}#
- #{s 33289}#
- #t
- (map syntax->datum #{id 33315}#)
- #{new-vars 33416}#
- (map (lambda (#{x 33497}#)
- (#{expand 28271}#
- #{x 33497}#
- #{r 33418}#
- #{w 33417}#
- #{mod 33290}#))
- #{val 33316}#)
- (#{expand-body 28275}#
- (cons #{e1 33317}# #{e2 33318}#)
- (let ((#{x 33559}#
- (begin
- (if (if (pair? #{e 33286}#) #{s 33289}# #f)
- (set-source-properties!
- #{e 33286}#
- #{s 33289}#))
- #{e 33286}#)))
- (if (if (null? (car #{w 33417}#))
- (null? (cdr #{w 33417}#))
+ (@apply
+ (lambda (f-8089 id-8090 val-8091 e1-8092 e2-8093)
+ (expand-let-7991
+ e-7992
+ r-7993
+ w-7994
+ s-7995
+ mod-7996
+ build-named-let-4534
+ (cons f-8089 id-8090)
+ val-8091
+ (cons e1-8092 e2-8093)))
+ tmp-8039)
+ (syntax-violation
+ 'let
+ "bad let"
+ (let ((x-8106
+ (begin
+ (if (if (pair? e-7992) s-7995 #f)
+ (set-source-properties! e-7992 s-7995))
+ e-7992)))
+ (if (if (null? (car w-7994)) (null? (cdr w-7994)) #f)
+ x-8106
+ (if (if (vector? x-8106)
+ (if (= (vector-length x-8106) 4)
+ (eq? (vector-ref x-8106 0) 'syntax-object)
#f)
- #{x 33559}#
- (if (if (vector? #{x 33559}#)
- (if (= (vector-length #{x 33559}#) 4)
- (eq? (vector-ref #{x 33559}# 0)
- 'syntax-object)
- #f)
- #f)
- (let ((#{expression 33591}#
- (vector-ref #{x 33559}# 1))
- (#{wrap 33592}#
- (let ((#{w2 33600}#
- (vector-ref #{x 33559}# 2)))
- (let ((#{m1 33601}#
- (car #{w 33417}#))
- (#{s1 33602}#
- (cdr #{w 33417}#)))
- (if (null? #{m1 33601}#)
- (if (null? #{s1 33602}#)
- #{w2 33600}#
- (cons (car #{w2 33600}#)
- (let ((#{m2 33617}#
- (cdr #{w2 33600}#)))
- (if (null? #{m2 33617}#)
- #{s1 33602}#
- (append
- #{s1 33602}#
- #{m2 33617}#)))))
- (cons (let ((#{m2 33625}#
- (car #{w2 33600}#)))
- (if (null? #{m2 33625}#)
- #{m1 33601}#
- (append
- #{m1 33601}#
- #{m2 33625}#)))
- (let ((#{m2 33633}#
- (cdr #{w2 33600}#)))
- (if (null? #{m2 33633}#)
- #{s1 33602}#
- (append
- #{s1 33602}#
- #{m2 33633}#))))))))
- (#{module 33593}#
- (vector-ref #{x 33559}# 3)))
- (vector
- 'syntax-object
- #{expression 33591}#
- #{wrap 33592}#
- #{module 33593}#))
- (if (null? #{x 33559}#)
- #{x 33559}#
- (vector
- 'syntax-object
- #{x 33559}#
- #{w 33417}#
- #{mod 33290}#)))))
- #{r 33418}#
- #{w 33417}#
- #{mod 33290}#))))))
- #{tmp 33292}#)
- (syntax-violation
- 'letrec*
- "bad letrec*"
- (let ((#{x 33872}#
- (begin
- (if (if (pair? #{e 33286}#) #{s 33289}# #f)
- (set-source-properties! #{e 33286}# #{s 33289}#))
- #{e 33286}#)))
- (if (if (null? (car #{w 33288}#))
- (null? (cdr #{w 33288}#))
- #f)
- #{x 33872}#
- (if (if (vector? #{x 33872}#)
- (if (= (vector-length #{x 33872}#) 4)
- (eq? (vector-ref #{x 33872}# 0) 'syntax-object)
- #f)
- #f)
- (let ((#{expression 33904}# (vector-ref #{x 33872}# 1))
- (#{wrap 33905}#
- (let ((#{w2 33913}# (vector-ref #{x 33872}# 2)))
- (let ((#{m1 33914}# (car #{w 33288}#))
- (#{s1 33915}# (cdr #{w 33288}#)))
- (if (null? #{m1 33914}#)
- (if (null? #{s1 33915}#)
- #{w2 33913}#
- (cons (car #{w2 33913}#)
- (let ((#{m2 33930}#
- (cdr #{w2 33913}#)))
- (if (null? #{m2 33930}#)
- #{s1 33915}#
- (append
- #{s1 33915}#
- #{m2 33930}#)))))
- (cons (let ((#{m2 33938}#
- (car #{w2 33913}#)))
- (if (null? #{m2 33938}#)
- #{m1 33914}#
- (append
- #{m1 33914}#
- #{m2 33938}#)))
- (let ((#{m2 33946}#
- (cdr #{w2 33913}#)))
- (if (null? #{m2 33946}#)
- #{s1 33915}#
- (append
- #{s1 33915}#
- #{m2 33946}#))))))))
- (#{module 33906}# (vector-ref #{x 33872}# 3)))
- (vector
- 'syntax-object
- #{expression 33904}#
- #{wrap 33905}#
- #{module 33906}#))
- (if (null? #{x 33872}#)
- #{x 33872}#
- (vector
- 'syntax-object
- #{x 33872}#
- #{w 33288}#
- #{mod 33290}#))))))))))
- (#{global-extend 28236}#
- 'core
- 'set!
- (lambda (#{e 34105}#
- #{r 34106}#
- #{w 34107}#
- #{s 34108}#
- #{mod 34109}#)
- (let ((#{tmp 34111}#
- ($sc-dispatch #{e 34105}# '(_ any any))))
- (if (if #{tmp 34111}#
- (@apply
- (lambda (#{id 34115}# #{val 34116}#)
- (if (symbol? #{id 34115}#)
- #t
- (if (if (vector? #{id 34115}#)
- (if (= (vector-length #{id 34115}#) 4)
- (eq? (vector-ref #{id 34115}# 0) 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{id 34115}# 1))
- #f)))
- #{tmp 34111}#)
- #f)
- (@apply
- (lambda (#{id 34143}# #{val 34144}#)
- (call-with-values
- (lambda ()
- (#{resolve-identifier 28258}#
- #{id 34143}#
- #{w 34107}#
- #{r 34106}#
- #{mod 34109}#
- #t))
- (lambda (#{type 34147}# #{value 34148}# #{id-mod 34149}#)
- (if (eqv? #{type 34147}# 'lexical)
- (#{build-lexical-assignment 28209}#
- #{s 34108}#
- (syntax->datum #{id 34143}#)
- #{value 34148}#
- (#{expand 28271}#
- #{val 34144}#
- #{r 34106}#
- #{w 34107}#
- #{mod 34109}#))
- (if (eqv? #{type 34147}# 'global)
- (#{build-global-assignment 28212}#
- #{s 34108}#
- #{value 34148}#
- (#{expand 28271}#
- #{val 34144}#
- #{r 34106}#
- #{w 34107}#
- #{mod 34109}#)
- #{id-mod 34149}#)
- (if (eqv? #{type 34147}# 'macro)
- (if (procedure-property
- #{value 34148}#
- 'variable-transformer)
- (#{expand 28271}#
- (#{expand-macro 28274}#
- #{value 34148}#
- #{e 34105}#
- #{r 34106}#
- #{w 34107}#
- #{s 34108}#
- #f
- #{mod 34109}#)
- #{r 34106}#
- '(())
- #{mod 34109}#)
- (syntax-violation
- 'set!
- "not a variable transformer"
- (if (if (null? (car #{w 34107}#))
- (null? (cdr #{w 34107}#))
+ #f)
+ (let ((expression-8138 (vector-ref x-8106 1))
+ (wrap-8139
+ (let ((w2-8147 (vector-ref x-8106 2)))
+ (let ((m1-8148 (car w-7994))
+ (s1-8149 (cdr w-7994)))
+ (if (null? m1-8148)
+ (if (null? s1-8149)
+ w2-8147
+ (cons (car w2-8147)
+ (let ((m2-8164
+ (cdr w2-8147)))
+ (if (null? m2-8164)
+ s1-8149
+ (append
+ s1-8149
+ m2-8164)))))
+ (cons (let ((m2-8172 (car w2-8147)))
+ (if (null? m2-8172)
+ m1-8148
+ (append m1-8148 m2-8172)))
+ (let ((m2-8180 (cdr w2-8147)))
+ (if (null? m2-8180)
+ s1-8149
+ (append
+ s1-8149
+ m2-8180))))))))
+ (module-8140 (vector-ref x-8106 3)))
+ (vector
+ 'syntax-object
+ expression-8138
+ wrap-8139
+ module-8140))
+ (if (null? x-8106)
+ x-8106
+ (vector
+ 'syntax-object
+ x-8106
+ w-7994
+ mod-7996)))))))))))))
+ (global-extend-4548
+ 'core
+ 'letrec
+ (lambda (e-8744 r-8745 w-8746 s-8747 mod-8748)
+ (let ((tmp-8750
+ ($sc-dispatch
+ e-8744
+ '(_ #(each (any any)) any . each-any))))
+ (if (if tmp-8750
+ (@apply
+ (lambda (id-8754 val-8755 e1-8756 e2-8757)
+ (and-map id?-4550 id-8754))
+ tmp-8750)
+ #f)
+ (@apply
+ (lambda (id-8773 val-8774 e1-8775 e2-8776)
+ (if (not (valid-bound-ids?-4576 id-8773))
+ (syntax-violation
+ 'letrec
+ "duplicate bound variable"
+ e-8744)
+ (let ((labels-8873 (gen-labels-4553 id-8773))
+ (new-vars-8874 (map gen-var-4600 id-8773)))
+ (let ((w-8875
+ (make-binding-wrap-4564
+ id-8773
+ labels-8873
+ w-8746))
+ (r-8876
+ (extend-var-env-4546
+ labels-8873
+ new-vars-8874
+ r-8745)))
+ (build-letrec-4535
+ s-8747
+ #f
+ (map syntax->datum id-8773)
+ new-vars-8874
+ (map (lambda (x-8953)
+ (expand-4586 x-8953 r-8876 w-8875 mod-8748))
+ val-8774)
+ (expand-body-4590
+ (cons e1-8775 e2-8776)
+ (let ((x-9015
+ (begin
+ (if (if (pair? e-8744) s-8747 #f)
+ (set-source-properties! e-8744 s-8747))
+ e-8744)))
+ (if (if (null? (car w-8875))
+ (null? (cdr w-8875))
#f)
- #{e 34105}#
- (if (if (vector? #{e 34105}#)
- (if (= (vector-length #{e 34105}#) 4)
- (eq? (vector-ref #{e 34105}# 0)
+ x-9015
+ (if (if (vector? x-9015)
+ (if (= (vector-length x-9015) 4)
+ (eq? (vector-ref x-9015 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 34589}#
- (vector-ref #{e 34105}# 1))
- (#{wrap 34590}#
- (let ((#{w2 34600}#
- (vector-ref #{e 34105}# 2)))
- (let ((#{m1 34601}#
- (car #{w 34107}#))
- (#{s1 34602}#
- (cdr #{w 34107}#)))
- (if (null? #{m1 34601}#)
- (if (null? #{s1 34602}#)
- #{w2 34600}#
- (cons (car #{w2 34600}#)
- (let ((#{m2 34619}#
- (cdr #{w2 34600}#)))
- (if (null? #{m2 34619}#)
- #{s1 34602}#
+ (let ((expression-9047 (vector-ref x-9015 1))
+ (wrap-9048
+ (let ((w2-9056
+ (vector-ref x-9015 2)))
+ (let ((m1-9057 (car w-8875))
+ (s1-9058 (cdr w-8875)))
+ (if (null? m1-9057)
+ (if (null? s1-9058)
+ w2-9056
+ (cons (car w2-9056)
+ (let ((m2-9073
+ (cdr w2-9056)))
+ (if (null? m2-9073)
+ s1-9058
(append
- #{s1 34602}#
- #{m2 34619}#)))))
- (cons (let ((#{m2 34627}#
- (car #{w2 34600}#)))
- (if (null? #{m2 34627}#)
- #{m1 34601}#
+ s1-9058
+ m2-9073)))))
+ (cons (let ((m2-9081
+ (car w2-9056)))
+ (if (null? m2-9081)
+ m1-9057
(append
- #{m1 34601}#
- #{m2 34627}#)))
- (let ((#{m2 34635}#
- (cdr #{w2 34600}#)))
- (if (null? #{m2 34635}#)
- #{s1 34602}#
+ m1-9057
+ m2-9081)))
+ (let ((m2-9089
+ (cdr w2-9056)))
+ (if (null? m2-9089)
+ s1-9058
(append
- #{s1 34602}#
- #{m2 34635}#))))))))
- (#{module 34591}#
- (vector-ref #{e 34105}# 3)))
+ s1-9058
+ m2-9089))))))))
+ (module-9049 (vector-ref x-9015 3)))
(vector
'syntax-object
- #{expression 34589}#
- #{wrap 34590}#
- #{module 34591}#))
- (if (null? #{e 34105}#)
- #{e 34105}#
+ expression-9047
+ wrap-9048
+ module-9049))
+ (if (null? x-9015)
+ x-9015
(vector
'syntax-object
- #{e 34105}#
- #{w 34107}#
- #{mod 34109}#))))
- (if (if (null? (car #{w 34107}#))
- (null? (cdr #{w 34107}#))
+ x-9015
+ w-8875
+ mod-8748)))))
+ r-8876
+ w-8875
+ mod-8748))))))
+ tmp-8750)
+ (syntax-violation
+ 'letrec
+ "bad letrec"
+ (let ((x-9300
+ (begin
+ (if (if (pair? e-8744) s-8747 #f)
+ (set-source-properties! e-8744 s-8747))
+ e-8744)))
+ (if (if (null? (car w-8746)) (null? (cdr w-8746)) #f)
+ x-9300
+ (if (if (vector? x-9300)
+ (if (= (vector-length x-9300) 4)
+ (eq? (vector-ref x-9300 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-9332 (vector-ref x-9300 1))
+ (wrap-9333
+ (let ((w2-9341 (vector-ref x-9300 2)))
+ (let ((m1-9342 (car w-8746))
+ (s1-9343 (cdr w-8746)))
+ (if (null? m1-9342)
+ (if (null? s1-9343)
+ w2-9341
+ (cons (car w2-9341)
+ (let ((m2-9358 (cdr w2-9341)))
+ (if (null? m2-9358)
+ s1-9343
+ (append s1-9343 m2-9358)))))
+ (cons (let ((m2-9366 (car w2-9341)))
+ (if (null? m2-9366)
+ m1-9342
+ (append m1-9342 m2-9366)))
+ (let ((m2-9374 (cdr w2-9341)))
+ (if (null? m2-9374)
+ s1-9343
+ (append s1-9343 m2-9374))))))))
+ (module-9334 (vector-ref x-9300 3)))
+ (vector
+ 'syntax-object
+ expression-9332
+ wrap-9333
+ module-9334))
+ (if (null? x-9300)
+ x-9300
+ (vector 'syntax-object x-9300 w-8746 mod-8748))))))))))
+ (global-extend-4548
+ 'core
+ 'letrec*
+ (lambda (e-9525 r-9526 w-9527 s-9528 mod-9529)
+ (let ((tmp-9531
+ ($sc-dispatch
+ e-9525
+ '(_ #(each (any any)) any . each-any))))
+ (if (if tmp-9531
+ (@apply
+ (lambda (id-9535 val-9536 e1-9537 e2-9538)
+ (and-map id?-4550 id-9535))
+ tmp-9531)
+ #f)
+ (@apply
+ (lambda (id-9554 val-9555 e1-9556 e2-9557)
+ (if (not (valid-bound-ids?-4576 id-9554))
+ (syntax-violation
+ 'letrec*
+ "duplicate bound variable"
+ e-9525)
+ (let ((labels-9654 (gen-labels-4553 id-9554))
+ (new-vars-9655 (map gen-var-4600 id-9554)))
+ (let ((w-9656
+ (make-binding-wrap-4564
+ id-9554
+ labels-9654
+ w-9527))
+ (r-9657
+ (extend-var-env-4546
+ labels-9654
+ new-vars-9655
+ r-9526)))
+ (build-letrec-4535
+ s-9528
+ #t
+ (map syntax->datum id-9554)
+ new-vars-9655
+ (map (lambda (x-9734)
+ (expand-4586 x-9734 r-9657 w-9656 mod-9529))
+ val-9555)
+ (expand-body-4590
+ (cons e1-9556 e2-9557)
+ (let ((x-9796
+ (begin
+ (if (if (pair? e-9525) s-9528 #f)
+ (set-source-properties! e-9525 s-9528))
+ e-9525)))
+ (if (if (null? (car w-9656))
+ (null? (cdr w-9656))
#f)
- #{id 34143}#
- (if (if (vector? #{id 34143}#)
- (if (= (vector-length #{id 34143}#) 4)
- (eq? (vector-ref #{id 34143}# 0)
+ x-9796
+ (if (if (vector? x-9796)
+ (if (= (vector-length x-9796) 4)
+ (eq? (vector-ref x-9796 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 34687}#
- (vector-ref #{id 34143}# 1))
- (#{wrap 34688}#
- (let ((#{w2 34698}#
- (vector-ref #{id 34143}# 2)))
- (let ((#{m1 34699}#
- (car #{w 34107}#))
- (#{s1 34700}#
- (cdr #{w 34107}#)))
- (if (null? #{m1 34699}#)
- (if (null? #{s1 34700}#)
- #{w2 34698}#
- (cons (car #{w2 34698}#)
- (let ((#{m2 34717}#
- (cdr #{w2 34698}#)))
- (if (null? #{m2 34717}#)
- #{s1 34700}#
+ (let ((expression-9828 (vector-ref x-9796 1))
+ (wrap-9829
+ (let ((w2-9837
+ (vector-ref x-9796 2)))
+ (let ((m1-9838 (car w-9656))
+ (s1-9839 (cdr w-9656)))
+ (if (null? m1-9838)
+ (if (null? s1-9839)
+ w2-9837
+ (cons (car w2-9837)
+ (let ((m2-9854
+ (cdr w2-9837)))
+ (if (null? m2-9854)
+ s1-9839
(append
- #{s1 34700}#
- #{m2 34717}#)))))
- (cons (let ((#{m2 34725}#
- (car #{w2 34698}#)))
- (if (null? #{m2 34725}#)
- #{m1 34699}#
+ s1-9839
+ m2-9854)))))
+ (cons (let ((m2-9862
+ (car w2-9837)))
+ (if (null? m2-9862)
+ m1-9838
(append
- #{m1 34699}#
- #{m2 34725}#)))
- (let ((#{m2 34733}#
- (cdr #{w2 34698}#)))
- (if (null? #{m2 34733}#)
- #{s1 34700}#
+ m1-9838
+ m2-9862)))
+ (let ((m2-9870
+ (cdr w2-9837)))
+ (if (null? m2-9870)
+ s1-9839
(append
- #{s1 34700}#
- #{m2 34733}#))))))))
- (#{module 34689}#
- (vector-ref #{id 34143}# 3)))
+ s1-9839
+ m2-9870))))))))
+ (module-9830 (vector-ref x-9796 3)))
(vector
'syntax-object
- #{expression 34687}#
- #{wrap 34688}#
- #{module 34689}#))
- (if (null? #{id 34143}#)
- #{id 34143}#
+ expression-9828
+ wrap-9829
+ module-9830))
+ (if (null? x-9796)
+ x-9796
(vector
'syntax-object
- #{id 34143}#
- #{w 34107}#
- #{id-mod 34149}#))))))
- (if (eqv? #{type 34147}# 'displaced-lexical)
- (syntax-violation
- 'set!
- "identifier out of context"
- (if (if (null? (car #{w 34107}#))
- (null? (cdr #{w 34107}#))
- #f)
- #{id 34143}#
- (if (if (vector? #{id 34143}#)
- (if (= (vector-length #{id 34143}#) 4)
- (eq? (vector-ref #{id 34143}# 0)
- 'syntax-object)
+ x-9796
+ w-9656
+ mod-9529)))))
+ r-9657
+ w-9656
+ mod-9529))))))
+ tmp-9531)
+ (syntax-violation
+ 'letrec*
+ "bad letrec*"
+ (let ((x-10081
+ (begin
+ (if (if (pair? e-9525) s-9528 #f)
+ (set-source-properties! e-9525 s-9528))
+ e-9525)))
+ (if (if (null? (car w-9527)) (null? (cdr w-9527)) #f)
+ x-10081
+ (if (if (vector? x-10081)
+ (if (= (vector-length x-10081) 4)
+ (eq? (vector-ref x-10081 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-10113 (vector-ref x-10081 1))
+ (wrap-10114
+ (let ((w2-10122 (vector-ref x-10081 2)))
+ (let ((m1-10123 (car w-9527))
+ (s1-10124 (cdr w-9527)))
+ (if (null? m1-10123)
+ (if (null? s1-10124)
+ w2-10122
+ (cons (car w2-10122)
+ (let ((m2-10139 (cdr w2-10122)))
+ (if (null? m2-10139)
+ s1-10124
+ (append s1-10124 m2-10139)))))
+ (cons (let ((m2-10147 (car w2-10122)))
+ (if (null? m2-10147)
+ m1-10123
+ (append m1-10123 m2-10147)))
+ (let ((m2-10155 (cdr w2-10122)))
+ (if (null? m2-10155)
+ s1-10124
+ (append s1-10124 m2-10155))))))))
+ (module-10115 (vector-ref x-10081 3)))
+ (vector
+ 'syntax-object
+ expression-10113
+ wrap-10114
+ module-10115))
+ (if (null? x-10081)
+ x-10081
+ (vector
+ 'syntax-object
+ x-10081
+ w-9527
+ mod-9529))))))))))
+ (global-extend-4548
+ 'core
+ 'set!
+ (lambda (e-10314 r-10315 w-10316 s-10317 mod-10318)
+ (let ((tmp-10320 ($sc-dispatch e-10314 '(_ any any))))
+ (if (if tmp-10320
+ (@apply
+ (lambda (id-10324 val-10325)
+ (if (symbol? id-10324)
+ #t
+ (if (if (vector? id-10324)
+ (if (= (vector-length id-10324) 4)
+ (eq? (vector-ref id-10324 0) 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref id-10324 1))
+ #f)))
+ tmp-10320)
+ #f)
+ (@apply
+ (lambda (id-10352 val-10353)
+ (call-with-values
+ (lambda ()
+ (resolve-identifier-4571
+ id-10352
+ w-10316
+ r-10315
+ mod-10318
+ #t))
+ (lambda (type-10356 value-10357 id-mod-10358)
+ (if (eqv? type-10356 'lexical)
+ (build-lexical-assignment-4521
+ s-10317
+ (syntax->datum id-10352)
+ value-10357
+ (expand-4586 val-10353 r-10315 w-10316 mod-10318))
+ (if (eqv? type-10356 'global)
+ (build-global-assignment-4524
+ s-10317
+ value-10357
+ (expand-4586 val-10353 r-10315 w-10316 mod-10318)
+ id-mod-10358)
+ (if (eqv? type-10356 'macro)
+ (if (procedure-property
+ value-10357
+ 'variable-transformer)
+ (expand-4586
+ (expand-macro-4589
+ value-10357
+ e-10314
+ r-10315
+ w-10316
+ s-10317
+ #f
+ mod-10318)
+ r-10315
+ '(())
+ mod-10318)
+ (syntax-violation
+ 'set!
+ "not a variable transformer"
+ (if (if (null? (car w-10316))
+ (null? (cdr w-10316))
+ #f)
+ e-10314
+ (if (if (vector? e-10314)
+ (if (= (vector-length e-10314) 4)
+ (eq? (vector-ref e-10314 0)
+ 'syntax-object)
+ #f)
#f)
+ (let ((expression-10798
+ (vector-ref e-10314 1))
+ (wrap-10799
+ (let ((w2-10809
+ (vector-ref e-10314 2)))
+ (let ((m1-10810 (car w-10316))
+ (s1-10811 (cdr w-10316)))
+ (if (null? m1-10810)
+ (if (null? s1-10811)
+ w2-10809
+ (cons (car w2-10809)
+ (let ((m2-10828
+ (cdr w2-10809)))
+ (if (null? m2-10828)
+ s1-10811
+ (append
+ s1-10811
+ m2-10828)))))
+ (cons (let ((m2-10836
+ (car w2-10809)))
+ (if (null? m2-10836)
+ m1-10810
+ (append
+ m1-10810
+ m2-10836)))
+ (let ((m2-10844
+ (cdr w2-10809)))
+ (if (null? m2-10844)
+ s1-10811
+ (append
+ s1-10811
+ m2-10844))))))))
+ (module-10800
+ (vector-ref e-10314 3)))
+ (vector
+ 'syntax-object
+ expression-10798
+ wrap-10799
+ module-10800))
+ (if (null? e-10314)
+ e-10314
+ (vector
+ 'syntax-object
+ e-10314
+ w-10316
+ mod-10318))))
+ (if (if (null? (car w-10316))
+ (null? (cdr w-10316))
#f)
- (let ((#{expression 34788}#
- (vector-ref #{id 34143}# 1))
- (#{wrap 34789}#
- (let ((#{w2 34799}#
- (vector-ref #{id 34143}# 2)))
- (let ((#{m1 34800}#
- (car #{w 34107}#))
- (#{s1 34801}#
- (cdr #{w 34107}#)))
- (if (null? #{m1 34800}#)
- (if (null? #{s1 34801}#)
- #{w2 34799}#
- (cons (car #{w2 34799}#)
- (let ((#{m2 34818}#
- (cdr #{w2 34799}#)))
- (if (null? #{m2 34818}#)
- #{s1 34801}#
+ id-10352
+ (if (if (vector? id-10352)
+ (if (= (vector-length id-10352) 4)
+ (eq? (vector-ref id-10352 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-10896
+ (vector-ref id-10352 1))
+ (wrap-10897
+ (let ((w2-10907
+ (vector-ref id-10352 2)))
+ (let ((m1-10908 (car w-10316))
+ (s1-10909 (cdr w-10316)))
+ (if (null? m1-10908)
+ (if (null? s1-10909)
+ w2-10907
+ (cons (car w2-10907)
+ (let ((m2-10926
+ (cdr w2-10907)))
+ (if (null? m2-10926)
+ s1-10909
+ (append
+ s1-10909
+ m2-10926)))))
+ (cons (let ((m2-10934
+ (car w2-10907)))
+ (if (null? m2-10934)
+ m1-10908
(append
- #{s1 34801}#
- #{m2 34818}#)))))
- (cons (let ((#{m2 34826}#
- (car #{w2 34799}#)))
- (if (null? #{m2 34826}#)
- #{m1 34800}#
- (append
- #{m1 34800}#
- #{m2 34826}#)))
- (let ((#{m2 34834}#
- (cdr #{w2 34799}#)))
- (if (null? #{m2 34834}#)
- #{s1 34801}#
- (append
- #{s1 34801}#
- #{m2 34834}#))))))))
- (#{module 34790}#
- (vector-ref #{id 34143}# 3)))
- (vector
- 'syntax-object
- #{expression 34788}#
- #{wrap 34789}#
- #{module 34790}#))
- (if (null? #{id 34143}#)
- #{id 34143}#
- (vector
- 'syntax-object
- #{id 34143}#
- #{w 34107}#
- #{mod 34109}#)))))
- (syntax-violation
- 'set!
- "bad set!"
- (let ((#{x 34866}#
- (begin
- (if (if (pair? #{e 34105}#)
- #{s 34108}#
- #f)
- (set-source-properties!
- #{e 34105}#
- #{s 34108}#))
- #{e 34105}#)))
- (if (if (null? (car #{w 34107}#))
- (null? (cdr #{w 34107}#))
+ m1-10908
+ m2-10934)))
+ (let ((m2-10942
+ (cdr w2-10907)))
+ (if (null? m2-10942)
+ s1-10909
+ (append
+ s1-10909
+ m2-10942))))))))
+ (module-10898
+ (vector-ref id-10352 3)))
+ (vector
+ 'syntax-object
+ expression-10896
+ wrap-10897
+ module-10898))
+ (if (null? id-10352)
+ id-10352
+ (vector
+ 'syntax-object
+ id-10352
+ w-10316
+ id-mod-10358))))))
+ (if (eqv? type-10356 'displaced-lexical)
+ (syntax-violation
+ 'set!
+ "identifier out of context"
+ (if (if (null? (car w-10316))
+ (null? (cdr w-10316))
#f)
- #{x 34866}#
- (if (if (vector? #{x 34866}#)
- (if (= (vector-length #{x 34866}#) 4)
- (eq? (vector-ref #{x 34866}# 0)
+ id-10352
+ (if (if (vector? id-10352)
+ (if (= (vector-length id-10352) 4)
+ (eq? (vector-ref id-10352 0)
'syntax-object)
#f)
#f)
- (let ((#{expression 34898}#
- (vector-ref #{x 34866}# 1))
- (#{wrap 34899}#
- (let ((#{w2 34907}#
- (vector-ref
- #{x 34866}#
- 2)))
- (let ((#{m1 34908}#
- (car #{w 34107}#))
- (#{s1 34909}#
- (cdr #{w 34107}#)))
- (if (null? #{m1 34908}#)
- (if (null? #{s1 34909}#)
- #{w2 34907}#
- (cons (car #{w2 34907}#)
- (let ((#{m2 34924}#
- (cdr #{w2 34907}#)))
- (if (null? #{m2 34924}#)
- #{s1 34909}#
+ (let ((expression-10997
+ (vector-ref id-10352 1))
+ (wrap-10998
+ (let ((w2-11008
+ (vector-ref id-10352 2)))
+ (let ((m1-11009 (car w-10316))
+ (s1-11010 (cdr w-10316)))
+ (if (null? m1-11009)
+ (if (null? s1-11010)
+ w2-11008
+ (cons (car w2-11008)
+ (let ((m2-11027
+ (cdr w2-11008)))
+ (if (null? m2-11027)
+ s1-11010
(append
- #{s1 34909}#
- #{m2 34924}#)))))
- (cons (let ((#{m2 34932}#
- (car #{w2 34907}#)))
- (if (null? #{m2 34932}#)
- #{m1 34908}#
+ s1-11010
+ m2-11027)))))
+ (cons (let ((m2-11035
+ (car w2-11008)))
+ (if (null? m2-11035)
+ m1-11009
(append
- #{m1 34908}#
- #{m2 34932}#)))
- (let ((#{m2 34940}#
- (cdr #{w2 34907}#)))
- (if (null? #{m2 34940}#)
- #{s1 34909}#
+ m1-11009
+ m2-11035)))
+ (let ((m2-11043
+ (cdr w2-11008)))
+ (if (null? m2-11043)
+ s1-11010
(append
- #{s1 34909}#
- #{m2 34940}#))))))))
- (#{module 34900}#
- (vector-ref #{x 34866}# 3)))
+ s1-11010
+ m2-11043))))))))
+ (module-10999
+ (vector-ref id-10352 3)))
(vector
'syntax-object
- #{expression 34898}#
- #{wrap 34899}#
- #{module 34900}#))
- (if (null? #{x 34866}#)
- #{x 34866}#
+ expression-10997
+ wrap-10998
+ module-10999))
+ (if (null? id-10352)
+ id-10352
(vector
'syntax-object
- #{x 34866}#
- #{w 34107}#
- #{mod 34109}#)))))))))))))
- #{tmp 34111}#)
- (let ((#{tmp 34955}#
- ($sc-dispatch
- #{e 34105}#
- '(_ (any . each-any) any))))
- (if #{tmp 34955}#
- (@apply
- (lambda (#{head 34959}# #{tail 34960}# #{val 34961}#)
- (call-with-values
- (lambda ()
- (#{syntax-type 28270}#
- #{head 34959}#
- #{r 34106}#
- '(())
- #f
- #f
- #{mod 34109}#
- #t))
- (lambda (#{type 34964}#
- #{value 34965}#
- #{ee 34966}#
- #{ww 34967}#
- #{ss 34968}#
- #{modmod 34969}#)
- (if (eqv? #{type 34964}# 'module-ref)
- (let ((#{val 34973}#
- (#{expand 28271}#
- #{val 34961}#
- #{r 34106}#
- #{w 34107}#
- #{mod 34109}#)))
- (call-with-values
- (lambda ()
- (#{value 34965}#
- (cons #{head 34959}# #{tail 34960}#)
- #{r 34106}#
- #{w 34107}#))
- (lambda (#{e 34974}#
- #{r 34975}#
- #{w 34976}#
- #{s* 34977}#
- #{mod 34978}#)
- (let ((#{tmp 34980}# (list #{e 34974}#)))
- (if (@apply
- (lambda (#{e 34982}#)
- (if (symbol? #{e 34982}#)
- #t
- (if (if (vector? #{e 34982}#)
- (if (= (vector-length
- #{e 34982}#)
- 4)
- (eq? (vector-ref
- #{e 34982}#
- 0)
- 'syntax-object)
+ id-10352
+ w-10316
+ mod-10318)))))
+ (syntax-violation
+ 'set!
+ "bad set!"
+ (let ((x-11075
+ (begin
+ (if (if (pair? e-10314) s-10317 #f)
+ (set-source-properties!
+ e-10314
+ s-10317))
+ e-10314)))
+ (if (if (null? (car w-10316))
+ (null? (cdr w-10316))
+ #f)
+ x-11075
+ (if (if (vector? x-11075)
+ (if (= (vector-length x-11075) 4)
+ (eq? (vector-ref x-11075 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-11107
+ (vector-ref x-11075 1))
+ (wrap-11108
+ (let ((w2-11116
+ (vector-ref x-11075 2)))
+ (let ((m1-11117 (car w-10316))
+ (s1-11118 (cdr w-10316)))
+ (if (null? m1-11117)
+ (if (null? s1-11118)
+ w2-11116
+ (cons (car w2-11116)
+ (let ((m2-11133
+ (cdr w2-11116)))
+ (if (null? m2-11133)
+ s1-11118
+ (append
+ s1-11118
+ m2-11133)))))
+ (cons (let ((m2-11141
+ (car w2-11116)))
+ (if (null? m2-11141)
+ m1-11117
+ (append
+ m1-11117
+ m2-11141)))
+ (let ((m2-11149
+ (cdr w2-11116)))
+ (if (null? m2-11149)
+ s1-11118
+ (append
+ s1-11118
+ m2-11149))))))))
+ (module-11109
+ (vector-ref x-11075 3)))
+ (vector
+ 'syntax-object
+ expression-11107
+ wrap-11108
+ module-11109))
+ (if (null? x-11075)
+ x-11075
+ (vector
+ 'syntax-object
+ x-11075
+ w-10316
+ mod-10318)))))))))))))
+ tmp-10320)
+ (let ((tmp-11164
+ ($sc-dispatch e-10314 '(_ (any . each-any) any))))
+ (if tmp-11164
+ (@apply
+ (lambda (head-11168 tail-11169 val-11170)
+ (call-with-values
+ (lambda ()
+ (syntax-type-4585
+ head-11168
+ r-10315
+ '(())
+ #f
+ #f
+ mod-10318
+ #t))
+ (lambda (type-11173
+ value-11174
+ ee*-11175
+ ee-11176
+ ww-11177
+ ss-11178
+ modmod-11179)
+ (if (eqv? type-11173 'module-ref)
+ (let ((val-11183
+ (expand-4586
+ val-11170
+ r-10315
+ w-10316
+ mod-10318)))
+ (call-with-values
+ (lambda ()
+ (value-11174
+ (cons head-11168 tail-11169)
+ r-10315
+ w-10316))
+ (lambda (e-11184
+ r-11185
+ w-11186
+ s*-11187
+ mod-11188)
+ (let ((tmp-11190 (list e-11184)))
+ (if (@apply
+ (lambda (e-11192)
+ (if (symbol? e-11192)
+ #t
+ (if (if (vector? e-11192)
+ (if (= (vector-length
+ e-11192)
+ 4)
+ (eq? (vector-ref
+ e-11192
+ 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (symbol?
- (vector-ref #{e 34982}# 1))
- #f)))
- #{tmp 34980}#)
- (@apply
- (lambda (#{e 35012}#)
- (#{build-global-assignment 28212}#
- #{s 34108}#
- (syntax->datum #{e 35012}#)
- #{val 34973}#
- #{mod 34978}#))
- #{tmp 34980}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 34974}#))))))
- (#{build-call 28205}#
- #{s 34108}#
- (#{expand 28271}#
- (list '#(syntax-object
- setter
+ (symbol?
+ (vector-ref e-11192 1))
+ #f)))
+ tmp-11190)
+ (@apply
+ (lambda (e-11222)
+ (build-global-assignment-4524
+ s-10317
+ (syntax->datum e-11222)
+ val-11183
+ mod-11188))
+ tmp-11190)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-11184))))))
+ (build-call-4517
+ s-10317
+ (expand-4586
+ (list '#(syntax-object
+ setter
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(type value ee* ee ww ss modmod)
+ #((top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top)
+ (top))
+ #("l-*-3734"
+ "l-*-3735"
+ "l-*-3736"
+ "l-*-3737"
+ "l-*-3738"
+ "l-*-3739"
+ "l-*-3740"))
+ #(ribcage
+ #(head tail val)
+ #((top) (top) (top))
+ #("l-*-3719"
+ "l-*-3720"
+ "l-*-3721"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e r w s mod)
+ #((top) (top) (top) (top) (top))
+ #("l-*-3691"
+ "l-*-3692"
+ "l-*-3693"
+ "l-*-3694"
+ "l-*-3695"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile))
+ head-11168)
+ r-10315
+ w-10316
+ mod-10318)
+ (map (lambda (e-11535)
+ (expand-4586
+ e-11535
+ r-10315
+ w-10316
+ mod-10318))
+ (append tail-11169 (list val-11170))))))))
+ tmp-11164)
+ (syntax-violation
+ 'set!
+ "bad set!"
+ (let ((x-11623
+ (begin
+ (if (if (pair? e-10314) s-10317 #f)
+ (set-source-properties! e-10314 s-10317))
+ e-10314)))
+ (if (if (null? (car w-10316))
+ (null? (cdr w-10316))
+ #f)
+ x-11623
+ (if (if (vector? x-11623)
+ (if (= (vector-length x-11623) 4)
+ (eq? (vector-ref x-11623 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-11655 (vector-ref x-11623 1))
+ (wrap-11656
+ (let ((w2-11664 (vector-ref x-11623 2)))
+ (let ((m1-11665 (car w-10316))
+ (s1-11666 (cdr w-10316)))
+ (if (null? m1-11665)
+ (if (null? s1-11666)
+ w2-11664
+ (cons (car w2-11664)
+ (let ((m2-11681
+ (cdr w2-11664)))
+ (if (null? m2-11681)
+ s1-11666
+ (append
+ s1-11666
+ m2-11681)))))
+ (cons (let ((m2-11689 (car w2-11664)))
+ (if (null? m2-11689)
+ m1-11665
+ (append m1-11665 m2-11689)))
+ (let ((m2-11697 (cdr w2-11664)))
+ (if (null? m2-11697)
+ s1-11666
+ (append
+ s1-11666
+ m2-11697))))))))
+ (module-11657 (vector-ref x-11623 3)))
+ (vector
+ 'syntax-object
+ expression-11655
+ wrap-11656
+ module-11657))
+ (if (null? x-11623)
+ x-11623
+ (vector
+ 'syntax-object
+ x-11623
+ w-10316
+ mod-10318))))))))))))
+ (module-define!
+ (current-module)
+ '@
+ (make-syntax-transformer
+ '@
+ 'module-ref
+ (lambda (e-11728 r-11729 w-11730)
+ (let ((tmp-11732
+ ($sc-dispatch e-11728 '(_ each-any any))))
+ (if (if tmp-11732
+ (@apply
+ (lambda (mod-11735 id-11736)
+ (if (and-map id?-4550 mod-11735)
+ (if (symbol? id-11736)
+ #t
+ (if (if (vector? id-11736)
+ (if (= (vector-length id-11736) 4)
+ (eq? (vector-ref id-11736 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref id-11736 1))
+ #f))
+ #f))
+ tmp-11732)
+ #f)
+ (@apply
+ (lambda (mod-11776 id-11777)
+ (values
+ (syntax->datum id-11777)
+ r-11729
+ w-11730
+ #f
+ (syntax->datum
+ (cons '#(syntax-object
+ public
+ ((top)
+ #(ribcage
+ #(mod id)
+ #((top) (top))
+ #("l-*-3782" "l-*-3783"))
+ #(ribcage () () ())
+ #(ribcage
+ #(e r w)
+ #((top) (top) (top))
+ #("l-*-3770" "l-*-3771" "l-*-3772"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile))
+ mod-11776))))
+ tmp-11732)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-11728))))))
+ (global-extend-4548
+ 'module-ref
+ '@@
+ (lambda (e-11877 r-11878 w-11879)
+ (letrec*
+ ((remodulate-11880
+ (lambda (x-12098 mod-12099)
+ (if (pair? x-12098)
+ (cons (remodulate-11880 (car x-12098) mod-12099)
+ (remodulate-11880 (cdr x-12098) mod-12099))
+ (if (if (vector? x-12098)
+ (if (= (vector-length x-12098) 4)
+ (eq? (vector-ref x-12098 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-12113
+ (remodulate-11880
+ (vector-ref x-12098 1)
+ mod-12099))
+ (wrap-12114 (vector-ref x-12098 2)))
+ (vector
+ 'syntax-object
+ expression-12113
+ wrap-12114
+ mod-12099))
+ (if (vector? x-12098)
+ (let ((n-12122 (vector-length x-12098)))
+ (let ((v-12123 (make-vector n-12122)))
+ (letrec*
+ ((loop-12124
+ (lambda (i-12179)
+ (if (= i-12179 n-12122)
+ v-12123
+ (begin
+ (vector-set!
+ v-12123
+ i-12179
+ (remodulate-11880
+ (vector-ref x-12098 i-12179)
+ mod-12099))
+ (loop-12124 (#{1+}# i-12179)))))))
+ (loop-12124 0))))
+ x-12098))))))
+ (let ((tmp-11882
+ ($sc-dispatch e-11877 '(_ each-any any))))
+ (if (if tmp-11882
+ (@apply
+ (lambda (mod-11886 exp-11887)
+ (and-map id?-4550 mod-11886))
+ tmp-11882)
+ #f)
+ (@apply
+ (lambda (mod-11903 exp-11904)
+ (let ((mod-11905
+ (syntax->datum
+ (cons '#(syntax-object
+ private
((top)
- #(ribcage () () ())
- #(ribcage () () ())
#(ribcage
- #(type value ee ww ss modmod)
- #((top)
- (top)
- (top)
- (top)
- (top)
- (top))
- #("i27483"
- "i27484"
- "i27485"
- "i27486"
- "i27487"
- "i27488"))
+ #(mod exp)
+ #((top) (top))
+ #("l-*-3826" "l-*-3827"))
#(ribcage
- #(head tail val)
- #((top) (top) (top))
- #("i27469" "i27470" "i27471"))
- #(ribcage () () ())
+ (remodulate)
+ ((top))
+ ("l-*-3793"))
#(ribcage
- #(e r w s mod)
- #((top) (top) (top) (top) (top))
- #("i27441"
- "i27442"
- "i27443"
- "i27444"
- "i27445"))
+ #(e r w)
+ #((top) (top) (top))
+ #("l-*-3790" "l-*-3791" "l-*-3792"))
#(ribcage
(lambda-var-list
gen-var
@@ -11201,7 +12258,10 @@
valid-bound-ids?
bound-id=?
free-id=?
+ with-transformer-environment
+ transformer-environment
resolve-identifier
+ locally-bound-identifiers
id-var-name
same-marks?
join-marks
@@ -11282,7 +12342,7 @@
decorate-source
get-global-definition-hook
put-global-definition-hook
- gensym-hook
+ session-id
local-eval-hook
top-level-eval-hook
fx<
@@ -11448,3007 +12508,4070 @@
(top)
(top)
(top)
+ (top)
+ (top)
+ (top)
(top))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
- ("i23873" "i23872" "i23871"))
+ ("l-*-47" "l-*-46" "l-*-45"))
#(ribcage () () ()))
(hygiene guile))
- #{head 34959}#)
- #{r 34106}#
- #{w 34107}#
- #{mod 34109}#)
- (map (lambda (#{e 35325}#)
- (#{expand 28271}#
- #{e 35325}#
- #{r 34106}#
- #{w 34107}#
- #{mod 34109}#))
- (append
- #{tail 34960}#
- (list #{val 34961}#))))))))
- #{tmp 34955}#)
+ mod-11903))))
+ (values
+ (remodulate-11880 exp-11904 mod-11905)
+ r-11878
+ w-11879
+ (source-annotation-4544 exp-11904)
+ mod-11905)))
+ tmp-11882)
(syntax-violation
- 'set!
- "bad set!"
- (let ((#{x 35413}#
- (begin
- (if (if (pair? #{e 34105}#) #{s 34108}# #f)
- (set-source-properties! #{e 34105}# #{s 34108}#))
- #{e 34105}#)))
- (if (if (null? (car #{w 34107}#))
- (null? (cdr #{w 34107}#))
- #f)
- #{x 35413}#
- (if (if (vector? #{x 35413}#)
- (if (= (vector-length #{x 35413}#) 4)
- (eq? (vector-ref #{x 35413}# 0) 'syntax-object)
- #f)
- #f)
- (let ((#{expression 35445}# (vector-ref #{x 35413}# 1))
- (#{wrap 35446}#
- (let ((#{w2 35454}#
- (vector-ref #{x 35413}# 2)))
- (let ((#{m1 35455}# (car #{w 34107}#))
- (#{s1 35456}# (cdr #{w 34107}#)))
- (if (null? #{m1 35455}#)
- (if (null? #{s1 35456}#)
- #{w2 35454}#
- (cons (car #{w2 35454}#)
- (let ((#{m2 35471}#
- (cdr #{w2 35454}#)))
- (if (null? #{m2 35471}#)
- #{s1 35456}#
- (append
- #{s1 35456}#
- #{m2 35471}#)))))
- (cons (let ((#{m2 35479}#
- (car #{w2 35454}#)))
- (if (null? #{m2 35479}#)
- #{m1 35455}#
- (append
- #{m1 35455}#
- #{m2 35479}#)))
- (let ((#{m2 35487}#
- (cdr #{w2 35454}#)))
- (if (null? #{m2 35487}#)
- #{s1 35456}#
- (append
- #{s1 35456}#
- #{m2 35487}#))))))))
- (#{module 35447}# (vector-ref #{x 35413}# 3)))
- (vector
- 'syntax-object
- #{expression 35445}#
- #{wrap 35446}#
- #{module 35447}#))
- (if (null? #{x 35413}#)
- #{x 35413}#
- (vector
- 'syntax-object
- #{x 35413}#
- #{w 34107}#
- #{mod 34109}#))))))))))))
- (module-define!
- (current-module)
- '@
- (make-syntax-transformer
- '@
- 'module-ref
- (lambda (#{e 35518}# #{r 35519}# #{w 35520}#)
- (let ((#{tmp 35522}#
- ($sc-dispatch #{e 35518}# '(_ each-any any))))
- (if (if #{tmp 35522}#
+ #f
+ "source expression failed to match any pattern"
+ e-11877))))))
+ (global-extend-4548
+ 'core
+ 'if
+ (lambda (e-12288 r-12289 w-12290 s-12291 mod-12292)
+ (let ((tmp-12294 ($sc-dispatch e-12288 '(_ any any))))
+ (if tmp-12294
+ (@apply
+ (lambda (test-12298 then-12299)
+ (build-conditional-4518
+ s-12291
+ (expand-4586
+ test-12298
+ r-12289
+ w-12290
+ mod-12292)
+ (expand-4586
+ then-12299
+ r-12289
+ w-12290
+ mod-12292)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 0)
+ #f)))
+ tmp-12294)
+ (let ((tmp-12548
+ ($sc-dispatch e-12288 '(_ any any any))))
+ (if tmp-12548
(@apply
- (lambda (#{mod 35525}# #{id 35526}#)
- (if (and-map #{id? 28238}# #{mod 35525}#)
- (if (symbol? #{id 35526}#)
- #t
- (if (if (vector? #{id 35526}#)
- (if (= (vector-length #{id 35526}#) 4)
- (eq? (vector-ref #{id 35526}# 0)
- 'syntax-object)
+ (lambda (test-12552 then-12553 else-12554)
+ (build-conditional-4518
+ s-12291
+ (expand-4586
+ test-12552
+ r-12289
+ w-12290
+ mod-12292)
+ (expand-4586
+ then-12553
+ r-12289
+ w-12290
+ mod-12292)
+ (expand-4586
+ else-12554
+ r-12289
+ w-12290
+ mod-12292)))
+ tmp-12548)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ e-12288)))))))
+ (global-extend-4548
+ 'core
+ 'with-fluids
+ (lambda (e-12993 r-12994 w-12995 s-12996 mod-12997)
+ (let ((tmp-12999
+ ($sc-dispatch
+ e-12993
+ '(_ #(each (any any)) any . each-any))))
+ (if tmp-12999
+ (@apply
+ (lambda (fluid-13003 val-13004 b-13005 b*-13006)
+ (build-dynlet-4519
+ s-12996
+ (map (lambda (x-13095)
+ (expand-4586 x-13095 r-12994 w-12995 mod-12997))
+ fluid-13003)
+ (map (lambda (x-13173)
+ (expand-4586 x-13173 r-12994 w-12995 mod-12997))
+ val-13004)
+ (expand-body-4590
+ (cons b-13005 b*-13006)
+ (let ((x-13262
+ (begin
+ (if (if (pair? e-12993) s-12996 #f)
+ (set-source-properties! e-12993 s-12996))
+ e-12993)))
+ (if (if (null? (car w-12995))
+ (null? (cdr w-12995))
+ #f)
+ x-13262
+ (if (if (vector? x-13262)
+ (if (= (vector-length x-13262) 4)
+ (eq? (vector-ref x-13262 0) 'syntax-object)
#f)
#f)
- (symbol? (vector-ref #{id 35526}# 1))
- #f))
- #f))
- #{tmp 35522}#)
- #f)
- (@apply
- (lambda (#{mod 35566}# #{id 35567}#)
- (values
- (syntax->datum #{id 35567}#)
- #{r 35519}#
- #{w 35520}#
- #f
- (syntax->datum
- (cons '#(syntax-object
- public
- ((top)
- #(ribcage
- #(mod id)
- #((top) (top))
- #("i27530" "i27531"))
- #(ribcage () () ())
- #(ribcage
- #(e r w)
- #((top) (top) (top))
- #("i27518" "i27519" "i27520"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile))
- #{mod 35566}#))))
- #{tmp 35522}#)
+ (let ((expression-13294 (vector-ref x-13262 1))
+ (wrap-13295
+ (let ((w2-13303 (vector-ref x-13262 2)))
+ (let ((m1-13304 (car w-12995))
+ (s1-13305 (cdr w-12995)))
+ (if (null? m1-13304)
+ (if (null? s1-13305)
+ w2-13303
+ (cons (car w2-13303)
+ (let ((m2-13320
+ (cdr w2-13303)))
+ (if (null? m2-13320)
+ s1-13305
+ (append
+ s1-13305
+ m2-13320)))))
+ (cons (let ((m2-13328
+ (car w2-13303)))
+ (if (null? m2-13328)
+ m1-13304
+ (append
+ m1-13304
+ m2-13328)))
+ (let ((m2-13336
+ (cdr w2-13303)))
+ (if (null? m2-13336)
+ s1-13305
+ (append
+ s1-13305
+ m2-13336))))))))
+ (module-13296 (vector-ref x-13262 3)))
+ (vector
+ 'syntax-object
+ expression-13294
+ wrap-13295
+ module-13296))
+ (if (null? x-13262)
+ x-13262
+ (vector
+ 'syntax-object
+ x-13262
+ w-12995
+ mod-12997)))))
+ r-12994
+ w-12995
+ mod-12997)))
+ tmp-12999)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{e 35518}#))))))
- (#{global-extend 28236}#
- 'module-ref
- '@@
- (lambda (#{e 35667}# #{r 35668}# #{w 35669}#)
+ e-12993)))))
+ (module-define!
+ (current-module)
+ 'begin
+ (make-syntax-transformer 'begin 'begin '()))
+ (module-define!
+ (current-module)
+ 'define
+ (make-syntax-transformer 'define 'define '()))
+ (module-define!
+ (current-module)
+ 'define-syntax
+ (make-syntax-transformer
+ 'define-syntax
+ 'define-syntax
+ '()))
+ (module-define!
+ (current-module)
+ 'define-syntax-parameter
+ (make-syntax-transformer
+ 'define-syntax-parameter
+ 'define-syntax-parameter
+ '()))
+ (module-define!
+ (current-module)
+ 'eval-when
+ (make-syntax-transformer
+ 'eval-when
+ 'eval-when
+ '()))
+ (global-extend-4548
+ 'core
+ 'syntax-case
(letrec*
- ((#{remodulate 35670}#
- (lambda (#{x 35888}# #{mod 35889}#)
- (if (pair? #{x 35888}#)
- (cons (#{remodulate 35670}#
- (car #{x 35888}#)
- #{mod 35889}#)
- (#{remodulate 35670}#
- (cdr #{x 35888}#)
- #{mod 35889}#))
- (if (if (vector? #{x 35888}#)
- (if (= (vector-length #{x 35888}#) 4)
- (eq? (vector-ref #{x 35888}# 0) 'syntax-object)
- #f)
- #f)
- (let ((#{expression 35903}#
- (#{remodulate 35670}#
- (vector-ref #{x 35888}# 1)
- #{mod 35889}#))
- (#{wrap 35904}# (vector-ref #{x 35888}# 2)))
- (vector
- 'syntax-object
- #{expression 35903}#
- #{wrap 35904}#
- #{mod 35889}#))
- (if (vector? #{x 35888}#)
- (let ((#{n 35912}# (vector-length #{x 35888}#)))
- (let ((#{v 35913}# (make-vector #{n 35912}#)))
- (letrec*
- ((#{loop 35914}#
- (lambda (#{i 35969}#)
- (if (= #{i 35969}# #{n 35912}#)
- #{v 35913}#
- (begin
- (vector-set!
- #{v 35913}#
- #{i 35969}#
- (#{remodulate 35670}#
- (vector-ref #{x 35888}# #{i 35969}#)
- #{mod 35889}#))
- (#{loop 35914}# (#{1+}# #{i 35969}#)))))))
- (#{loop 35914}# 0))))
- #{x 35888}#))))))
- (let ((#{tmp 35672}#
- ($sc-dispatch #{e 35667}# '(_ each-any any))))
- (if (if #{tmp 35672}#
- (@apply
- (lambda (#{mod 35676}# #{exp 35677}#)
- (and-map #{id? 28238}# #{mod 35676}#))
- #{tmp 35672}#)
- #f)
- (@apply
- (lambda (#{mod 35693}# #{exp 35694}#)
- (let ((#{mod 35695}#
- (syntax->datum
- (cons '#(syntax-object
- private
- ((top)
- #(ribcage
- #(mod exp)
- #((top) (top))
- #("i27574" "i27575"))
- #(ribcage
- (remodulate)
- ((top))
- ("i27541"))
- #(ribcage
- #(e r w)
- #((top) (top) (top))
- #("i27538" "i27539" "i27540"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile))
- #{mod 35693}#))))
- (values
- (#{remodulate 35670}#
- #{exp 35694}#
- #{mod 35695}#)
- #{r 35668}#
- #{w 35669}#
- (#{source-annotation 28232}# #{exp 35694}#)
- #{mod 35695}#)))
- #{tmp 35672}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 35667}#))))))
- (#{global-extend 28236}#
- 'core
- 'if
- (lambda (#{e 36078}#
- #{r 36079}#
- #{w 36080}#
- #{s 36081}#
- #{mod 36082}#)
- (let ((#{tmp 36084}#
- ($sc-dispatch #{e 36078}# '(_ any any))))
- (if #{tmp 36084}#
- (@apply
- (lambda (#{test 36088}# #{then 36089}#)
- (#{build-conditional 28206}#
- #{s 36081}#
- (#{expand 28271}#
- #{test 36088}#
- #{r 36079}#
- #{w 36080}#
- #{mod 36082}#)
- (#{expand 28271}#
- #{then 36089}#
- #{r 36079}#
- #{w 36080}#
- #{mod 36082}#)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 0)
- #f)))
- #{tmp 36084}#)
- (let ((#{tmp 36338}#
- ($sc-dispatch #{e 36078}# '(_ any any any))))
- (if #{tmp 36338}#
- (@apply
- (lambda (#{test 36342}# #{then 36343}# #{else 36344}#)
- (#{build-conditional 28206}#
- #{s 36081}#
- (#{expand 28271}#
- #{test 36342}#
- #{r 36079}#
- #{w 36080}#
- #{mod 36082}#)
- (#{expand 28271}#
- #{then 36343}#
- #{r 36079}#
- #{w 36080}#
- #{mod 36082}#)
- (#{expand 28271}#
- #{else 36344}#
- #{r 36079}#
- #{w 36080}#
- #{mod 36082}#)))
- #{tmp 36338}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 36078}#)))))))
- (#{global-extend 28236}#
- 'core
- 'with-fluids
- (lambda (#{e 36783}#
- #{r 36784}#
- #{w 36785}#
- #{s 36786}#
- #{mod 36787}#)
- (let ((#{tmp 36789}#
- ($sc-dispatch
- #{e 36783}#
- '(_ #(each (any any)) any . each-any))))
- (if #{tmp 36789}#
- (@apply
- (lambda (#{fluid 36793}#
- #{val 36794}#
- #{b 36795}#
- #{b* 36796}#)
- (#{build-dynlet 28207}#
- #{s 36786}#
- (map (lambda (#{x 36885}#)
- (#{expand 28271}#
- #{x 36885}#
- #{r 36784}#
- #{w 36785}#
- #{mod 36787}#))
- #{fluid 36793}#)
- (map (lambda (#{x 36963}#)
- (#{expand 28271}#
- #{x 36963}#
- #{r 36784}#
- #{w 36785}#
- #{mod 36787}#))
- #{val 36794}#)
- (#{expand-body 28275}#
- (cons #{b 36795}# #{b* 36796}#)
- (let ((#{x 37052}#
+ ((convert-pattern-13636
+ (lambda (pattern-15258 keys-15259)
+ (letrec*
+ ((cvt*-15260
+ (lambda (p*-16059 n-16060 ids-16061)
+ (if (not (pair? p*-16059))
+ (cvt-15262 p*-16059 n-16060 ids-16061)
+ (call-with-values
+ (lambda ()
+ (cvt*-15260 (cdr p*-16059) n-16060 ids-16061))
+ (lambda (y-16064 ids-16065)
+ (call-with-values
+ (lambda ()
+ (cvt-15262 (car p*-16059) n-16060 ids-16065))
+ (lambda (x-16068 ids-16069)
+ (values
+ (cons x-16068 y-16064)
+ ids-16069))))))))
+ (v-reverse-15261
+ (lambda (x-16070)
+ (letrec*
+ ((loop-16071
+ (lambda (r-16172 x-16173)
+ (if (not (pair? x-16173))
+ (values r-16172 x-16173)
+ (loop-16071
+ (cons (car x-16173) r-16172)
+ (cdr x-16173))))))
+ (loop-16071 '() x-16070))))
+ (cvt-15262
+ (lambda (p-15265 n-15266 ids-15267)
+ (if (if (symbol? p-15265)
+ #t
+ (if (if (vector? p-15265)
+ (if (= (vector-length p-15265) 4)
+ (eq? (vector-ref p-15265 0) 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref p-15265 1))
+ #f))
+ (if (bound-id-member?-4578 p-15265 keys-15259)
+ (values (vector 'free-id p-15265) ids-15267)
+ (if (free-id=?-4574
+ p-15265
+ '#(syntax-object
+ _
+ ((top)
+ #(ribcage () () ())
+ #(ribcage
+ #(p n ids)
+ #((top) (top) (top))
+ #("l-*-3927" "l-*-3928" "l-*-3929"))
+ #(ribcage
+ (cvt v-reverse cvt*)
+ ((top) (top) (top))
+ ("l-*-3900" "l-*-3898" "l-*-3896"))
+ #(ribcage
+ #(pattern keys)
+ #((top) (top))
+ #("l-*-3894" "l-*-3895"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("l-*-3890"
+ "l-*-3888"
+ "l-*-3886"
+ "l-*-3884"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile)))
+ (values '_ ids-15267)
+ (values
+ 'any
+ (cons (cons p-15265 n-15266) ids-15267))))
+ (let ((tmp-15399 ($sc-dispatch p-15265 '(any any))))
+ (if (if tmp-15399
+ (@apply
+ (lambda (x-15403 dots-15404)
+ (if (if (if (vector? dots-15404)
+ (if (= (vector-length dots-15404)
+ 4)
+ (eq? (vector-ref dots-15404 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref dots-15404 1))
+ #f)
+ (free-id=?-4574
+ dots-15404
+ '#(syntax-object
+ ...
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-2416"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile)))
+ #f))
+ tmp-15399)
+ #f)
+ (@apply
+ (lambda (x-15443 dots-15444)
+ (call-with-values
+ (lambda ()
+ (cvt-15262
+ x-15443
+ (#{1+}# n-15266)
+ ids-15267))
+ (lambda (p-15445 ids-15446)
+ (values
+ (if (eq? p-15445 'any)
+ 'each-any
+ (vector 'each p-15445))
+ ids-15446))))
+ tmp-15399)
+ (let ((tmp-15447
+ ($sc-dispatch p-15265 '(any any . any))))
+ (if (if tmp-15447
+ (@apply
+ (lambda (x-15451 dots-15452 ys-15453)
+ (if (if (if (vector? dots-15452)
+ (if (= (vector-length
+ dots-15452)
+ 4)
+ (eq? (vector-ref
+ dots-15452
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol?
+ (vector-ref dots-15452 1))
+ #f)
+ (free-id=?-4574
+ dots-15452
+ '#(syntax-object
+ ...
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-2416"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile)))
+ #f))
+ tmp-15447)
+ #f)
+ (@apply
+ (lambda (x-15492 dots-15493 ys-15494)
+ (call-with-values
+ (lambda ()
+ (cvt*-15260
+ ys-15494
+ n-15266
+ ids-15267))
+ (lambda (ys-15979 ids-15980)
+ (call-with-values
+ (lambda ()
+ (cvt-15262
+ x-15492
+ (#{1+}# n-15266)
+ ids-15980))
+ (lambda (x-15981 ids-15982)
+ (call-with-values
+ (lambda ()
+ (v-reverse-15261 ys-15979))
+ (lambda (ys-16018 e-16019)
+ (values
+ (vector
+ 'each+
+ x-15981
+ ys-16018
+ e-16019)
+ ids-15982))))))))
+ tmp-15447)
+ (let ((tmp-16020
+ ($sc-dispatch p-15265 '(any . any))))
+ (if tmp-16020
+ (@apply
+ (lambda (x-16024 y-16025)
+ (call-with-values
+ (lambda ()
+ (cvt-15262
+ y-16025
+ n-15266
+ ids-15267))
+ (lambda (y-16026 ids-16027)
+ (call-with-values
+ (lambda ()
+ (cvt-15262
+ x-16024
+ n-15266
+ ids-16027))
+ (lambda (x-16028 ids-16029)
+ (values
+ (cons x-16028 y-16026)
+ ids-16029))))))
+ tmp-16020)
+ (let ((tmp-16030
+ ($sc-dispatch p-15265 '())))
+ (if tmp-16030
+ (@apply
+ (lambda () (values '() ids-15267))
+ tmp-16030)
+ (let ((tmp-16034
+ ($sc-dispatch
+ p-15265
+ '#(vector each-any))))
+ (if tmp-16034
+ (@apply
+ (lambda (x-16038)
+ (call-with-values
+ (lambda ()
+ (cvt-15262
+ x-16038
+ n-15266
+ ids-15267))
+ (lambda (p-16039 ids-16040)
+ (values
+ (vector 'vector p-16039)
+ ids-16040))))
+ tmp-16034)
+ (values
+ (vector
+ 'atom
+ (strip-4599 p-15265 '(())))
+ ids-15267)))))))))))))))
+ (cvt-15262 pattern-15258 0 '()))))
+ (build-dispatch-call-13637
+ (lambda (pvars-16174 exp-16175 y-16176 r-16177 mod-16178)
+ (let ((ids-16179 (map car pvars-16174)))
+ (begin
+ (map cdr pvars-16174)
+ (let ((labels-16181 (gen-labels-4553 ids-16179))
+ (new-vars-16182 (map gen-var-4600 ids-16179)))
+ (build-primcall-4529
+ #f
+ 'apply
+ (list (build-simple-lambda-4526
+ #f
+ (map syntax->datum ids-16179)
+ #f
+ new-vars-16182
+ '()
+ (expand-4586
+ exp-16175
+ (extend-env-4545
+ labels-16181
+ (map (lambda (var-16510 level-16511)
+ (cons 'syntax
+ (cons var-16510 level-16511)))
+ new-vars-16182
+ (map cdr pvars-16174))
+ r-16177)
+ (make-binding-wrap-4564
+ ids-16179
+ labels-16181
+ '(()))
+ mod-16178))
+ y-16176)))))))
+ (gen-clause-13638
+ (lambda (x-14842
+ keys-14843
+ clauses-14844
+ r-14845
+ pat-14846
+ fender-14847
+ exp-14848
+ mod-14849)
+ (call-with-values
+ (lambda ()
+ (convert-pattern-13636 pat-14846 keys-14843))
+ (lambda (p-14987 pvars-14988)
+ (if (not (distinct-bound-ids?-4577 (map car pvars-14988)))
+ (syntax-violation
+ 'syntax-case
+ "duplicate pattern variable"
+ pat-14846)
+ (if (not (and-map
+ (lambda (x-15097)
+ (not (let ((x-15101 (car x-15097)))
+ (if (if (if (vector? x-15101)
+ (if (= (vector-length
+ x-15101)
+ 4)
+ (eq? (vector-ref
+ x-15101
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref x-15101 1))
+ #f)
+ (free-id=?-4574
+ x-15101
+ '#(syntax-object
+ ...
+ ((top)
+ #(ribcage () () ())
+ #(ribcage () () ())
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-2416"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47"
+ "l-*-46"
+ "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile)))
+ #f))))
+ pvars-14988))
+ (syntax-violation
+ 'syntax-case
+ "misplaced ellipsis"
+ pat-14846)
+ (let ((y-15126
+ (gensym
+ (string-append (symbol->string 'tmp) "-"))))
+ (let ((fun-exp-15131
+ (let ((req-15140 (list 'tmp))
+ (vars-15142 (list y-15126))
+ (exp-15144
+ (let ((y-15173
+ (make-struct/no-tail
+ (vector-ref
+ %expanded-vtables
+ 3)
+ #f
+ 'tmp
+ y-15126)))
+ (let ((test-exp-15177
+ (let ((tmp-15186
+ ($sc-dispatch
+ fender-14847
+ '#(atom #t))))
+ (if tmp-15186
+ (@apply
+ (lambda () y-15173)
+ tmp-15186)
+ (let ((then-exp-15204
+ (build-dispatch-call-13637
+ pvars-14988
+ fender-14847
+ y-15173
+ r-14845
+ mod-14849))
+ (else-exp-15205
+ (make-struct/no-tail
+ (vector-ref
+ %expanded-vtables
+ 1)
+ #f
+ #f)))
+ (make-struct/no-tail
+ (vector-ref
+ %expanded-vtables
+ 10)
+ #f
+ y-15173
+ then-exp-15204
+ else-exp-15205)))))
+ (then-exp-15178
+ (build-dispatch-call-13637
+ pvars-14988
+ exp-14848
+ y-15173
+ r-14845
+ mod-14849))
+ (else-exp-15179
+ (gen-syntax-case-13639
+ x-14842
+ keys-14843
+ clauses-14844
+ r-14845
+ mod-14849)))
+ (make-struct/no-tail
+ (vector-ref
+ %expanded-vtables
+ 10)
+ #f
+ test-exp-15177
+ then-exp-15178
+ else-exp-15179)))))
+ (let ((body-15149
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ #f
+ req-15140
+ #f
+ #f
+ #f
+ '()
+ vars-15142
+ exp-15144
+ #f)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ #f
+ '()
+ body-15149))))
+ (arg-exps-15132
+ (list (if (eq? p-14987 'any)
+ (let ((args-15237 (list x-14842)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #f
+ 'list
+ args-15237))
+ (let ((args-15246
+ (list x-14842
+ (make-struct/no-tail
+ (vector-ref
+ %expanded-vtables
+ 1)
+ #f
+ p-14987))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #f
+ '$sc-dispatch
+ args-15246))))))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 11)
+ #f
+ fun-exp-15131
+ arg-exps-15132)))))))))
+ (gen-syntax-case-13639
+ (lambda (x-14343
+ keys-14344
+ clauses-14345
+ r-14346
+ mod-14347)
+ (if (null? clauses-14345)
+ (let ((args-14353
+ (list (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ #f
+ #f)
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 1)
+ #f
+ "source expression failed to match any pattern")
+ x-14343)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 12)
+ #f
+ 'syntax-violation
+ args-14353))
+ (let ((tmp-14372 (car clauses-14345)))
+ (let ((tmp-14373 ($sc-dispatch tmp-14372 '(any any))))
+ (if tmp-14373
+ (@apply
+ (lambda (pat-14375 exp-14376)
+ (if (if (if (symbol? pat-14375)
+ #t
+ (if (if (vector? pat-14375)
+ (if (= (vector-length pat-14375) 4)
+ (eq? (vector-ref pat-14375 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref pat-14375 1))
+ #f))
+ (and-map
+ (lambda (x-14403)
+ (not (free-id=?-4574 pat-14375 x-14403)))
+ (cons '#(syntax-object
+ ...
+ ((top)
+ #(ribcage
+ #(pat exp)
+ #((top) (top))
+ #("l-*-4087" "l-*-4088"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x keys clauses r mod)
+ #((top) (top) (top) (top) (top))
+ #("l-*-4077"
+ "l-*-4078"
+ "l-*-4079"
+ "l-*-4080"
+ "l-*-4081"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("l-*-3890"
+ "l-*-3888"
+ "l-*-3886"
+ "l-*-3884"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile))
+ keys-14344))
+ #f)
+ (if (free-id=?-4574
+ '#(syntax-object
+ pad
+ ((top)
+ #(ribcage
+ #(pat exp)
+ #((top) (top))
+ #("l-*-4087" "l-*-4088"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x keys clauses r mod)
+ #((top) (top) (top) (top) (top))
+ #("l-*-4077"
+ "l-*-4078"
+ "l-*-4079"
+ "l-*-4080"
+ "l-*-4081"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("l-*-3890"
+ "l-*-3888"
+ "l-*-3886"
+ "l-*-3884"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile))
+ '#(syntax-object
+ _
+ ((top)
+ #(ribcage
+ #(pat exp)
+ #((top) (top))
+ #("l-*-4087" "l-*-4088"))
+ #(ribcage () () ())
+ #(ribcage
+ #(x keys clauses r mod)
+ #((top) (top) (top) (top) (top))
+ #("l-*-4077"
+ "l-*-4078"
+ "l-*-4079"
+ "l-*-4080"
+ "l-*-4081"))
+ #(ribcage
+ (gen-syntax-case
+ gen-clause
+ build-dispatch-call
+ convert-pattern)
+ ((top) (top) (top) (top))
+ ("l-*-3890"
+ "l-*-3888"
+ "l-*-3886"
+ "l-*-3884"))
+ #(ribcage
+ (lambda-var-list
+ gen-var
+ strip
+ expand-lambda-case
+ lambda*-formals
+ expand-simple-lambda
+ lambda-formals
+ ellipsis?
+ expand-void
+ eval-local-transformer
+ expand-local-syntax
+ expand-body
+ expand-macro
+ expand-call
+ expand-expr
+ expand
+ syntax-type
+ parse-when-list
+ expand-install-global
+ expand-top-sequence
+ expand-sequence
+ source-wrap
+ wrap
+ bound-id-member?
+ distinct-bound-ids?
+ valid-bound-ids?
+ bound-id=?
+ free-id=?
+ with-transformer-environment
+ transformer-environment
+ resolve-identifier
+ locally-bound-identifiers
+ 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
+ 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
+ session-id
+ 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)
+ (top)
+ (top)
+ (top))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
+ #(ribcage
+ (define-structure
+ define-expansion-accessors
+ define-expansion-constructors)
+ ((top) (top) (top))
+ ("l-*-47" "l-*-46" "l-*-45"))
+ #(ribcage () () ()))
+ (hygiene guile)))
+ (expand-4586 exp-14376 r-14346 '(()) mod-14347)
+ (let ((labels-14485
+ (list (string-append
+ "l-"
+ (session-id-4511)
+ (symbol->string (gensym "-")))))
+ (var-14486
+ (let ((id-14524
+ (if (if (vector? pat-14375)
+ (if (= (vector-length
+ pat-14375)
+ 4)
+ (eq? (vector-ref
+ pat-14375
+ 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (vector-ref pat-14375 1)
+ pat-14375)))
+ (gensym
+ (string-append
+ (symbol->string id-14524)
+ "-")))))
+ (build-call-4517
+ #f
+ (build-simple-lambda-4526
+ #f
+ (list (syntax->datum pat-14375))
+ #f
+ (list var-14486)
+ '()
+ (expand-4586
+ exp-14376
+ (extend-env-4545
+ labels-14485
+ (list (cons 'syntax
+ (cons var-14486 0)))
+ r-14346)
+ (make-binding-wrap-4564
+ (list pat-14375)
+ labels-14485
+ '(()))
+ mod-14347))
+ (list x-14343))))
+ (gen-clause-13638
+ x-14343
+ keys-14344
+ (cdr clauses-14345)
+ r-14346
+ pat-14375
+ #t
+ exp-14376
+ mod-14347)))
+ tmp-14373)
+ (let ((tmp-14834
+ ($sc-dispatch tmp-14372 '(any any any))))
+ (if tmp-14834
+ (@apply
+ (lambda (pat-14836 fender-14837 exp-14838)
+ (gen-clause-13638
+ x-14343
+ keys-14344
+ (cdr clauses-14345)
+ r-14346
+ pat-14836
+ fender-14837
+ exp-14838
+ mod-14347))
+ tmp-14834)
+ (syntax-violation
+ 'syntax-case
+ "invalid clause"
+ (car clauses-14345)))))))))))
+ (lambda (e-13640 r-13641 w-13642 s-13643 mod-13644)
+ (let ((e-13645
+ (let ((x-14254
(begin
- (if (if (pair? #{e 36783}#) #{s 36786}# #f)
- (set-source-properties!
- #{e 36783}#
- #{s 36786}#))
- #{e 36783}#)))
- (if (if (null? (car #{w 36785}#))
- (null? (cdr #{w 36785}#))
+ (if (if (pair? e-13640) s-13643 #f)
+ (set-source-properties! e-13640 s-13643))
+ e-13640)))
+ (if (if (null? (car w-13642))
+ (null? (cdr w-13642))
#f)
- #{x 37052}#
- (if (if (vector? #{x 37052}#)
- (if (= (vector-length #{x 37052}#) 4)
- (eq? (vector-ref #{x 37052}# 0) 'syntax-object)
+ x-14254
+ (if (if (vector? x-14254)
+ (if (= (vector-length x-14254) 4)
+ (eq? (vector-ref x-14254 0) 'syntax-object)
#f)
#f)
- (let ((#{expression 37084}#
- (vector-ref #{x 37052}# 1))
- (#{wrap 37085}#
- (let ((#{w2 37093}#
- (vector-ref #{x 37052}# 2)))
- (let ((#{m1 37094}# (car #{w 36785}#))
- (#{s1 37095}# (cdr #{w 36785}#)))
- (if (null? #{m1 37094}#)
- (if (null? #{s1 37095}#)
- #{w2 37093}#
- (cons (car #{w2 37093}#)
- (let ((#{m2 37110}#
- (cdr #{w2 37093}#)))
- (if (null? #{m2 37110}#)
- #{s1 37095}#
+ (let ((expression-14286 (vector-ref x-14254 1))
+ (wrap-14287
+ (let ((w2-14295 (vector-ref x-14254 2)))
+ (let ((m1-14296 (car w-13642))
+ (s1-14297 (cdr w-13642)))
+ (if (null? m1-14296)
+ (if (null? s1-14297)
+ w2-14295
+ (cons (car w2-14295)
+ (let ((m2-14312
+ (cdr w2-14295)))
+ (if (null? m2-14312)
+ s1-14297
(append
- #{s1 37095}#
- #{m2 37110}#)))))
- (cons (let ((#{m2 37118}#
- (car #{w2 37093}#)))
- (if (null? #{m2 37118}#)
- #{m1 37094}#
- (append
- #{m1 37094}#
- #{m2 37118}#)))
- (let ((#{m2 37126}#
- (cdr #{w2 37093}#)))
- (if (null? #{m2 37126}#)
- #{s1 37095}#
+ s1-14297
+ m2-14312)))))
+ (cons (let ((m2-14320 (car w2-14295)))
+ (if (null? m2-14320)
+ m1-14296
+ (append m1-14296 m2-14320)))
+ (let ((m2-14328 (cdr w2-14295)))
+ (if (null? m2-14328)
+ s1-14297
(append
- #{s1 37095}#
- #{m2 37126}#))))))))
- (#{module 37086}# (vector-ref #{x 37052}# 3)))
+ s1-14297
+ m2-14328))))))))
+ (module-14288 (vector-ref x-14254 3)))
(vector
'syntax-object
- #{expression 37084}#
- #{wrap 37085}#
- #{module 37086}#))
- (if (null? #{x 37052}#)
- #{x 37052}#
+ expression-14286
+ wrap-14287
+ module-14288))
+ (if (null? x-14254)
+ x-14254
(vector
'syntax-object
- #{x 37052}#
- #{w 36785}#
- #{mod 36787}#)))))
- #{r 36784}#
- #{w 36785}#
- #{mod 36787}#)))
- #{tmp 36789}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{e 36783}#)))))
- (module-define!
- (current-module)
- 'begin
- (make-syntax-transformer 'begin 'begin '()))
- (module-define!
- (current-module)
- 'define
- (make-syntax-transformer 'define 'define '()))
- (module-define!
- (current-module)
- 'define-syntax
- (make-syntax-transformer
- 'define-syntax
- 'define-syntax
- '()))
- (module-define!
- (current-module)
- 'define-syntax-parameter
- (make-syntax-transformer
- 'define-syntax-parameter
- 'define-syntax-parameter
- '()))
- (module-define!
- (current-module)
- 'eval-when
- (make-syntax-transformer
- 'eval-when
- 'eval-when
- '()))
- (#{global-extend 28236}#
- 'core
- 'syntax-case
- (letrec*
- ((#{convert-pattern 37426}#
- (lambda (#{pattern 39048}# #{keys 39049}#)
- (letrec*
- ((#{cvt* 39050}#
- (lambda (#{p* 39849}# #{n 39850}# #{ids 39851}#)
- (if (not (pair? #{p* 39849}#))
- (#{cvt 39052}#
- #{p* 39849}#
- #{n 39850}#
- #{ids 39851}#)
- (call-with-values
- (lambda ()
- (#{cvt* 39050}#
- (cdr #{p* 39849}#)
- #{n 39850}#
- #{ids 39851}#))
- (lambda (#{y 39854}# #{ids 39855}#)
- (call-with-values
- (lambda ()
- (#{cvt 39052}#
- (car #{p* 39849}#)
- #{n 39850}#
- #{ids 39855}#))
- (lambda (#{x 39858}# #{ids 39859}#)
- (values
- (cons #{x 39858}# #{y 39854}#)
- #{ids 39859}#))))))))
- (#{v-reverse 39051}#
- (lambda (#{x 39860}#)
- (letrec*
- ((#{loop 39861}#
- (lambda (#{r 39962}# #{x 39963}#)
- (if (not (pair? #{x 39963}#))
- (values #{r 39962}# #{x 39963}#)
- (#{loop 39861}#
- (cons (car #{x 39963}#) #{r 39962}#)
- (cdr #{x 39963}#))))))
- (#{loop 39861}# '() #{x 39860}#))))
- (#{cvt 39052}#
- (lambda (#{p 39055}# #{n 39056}# #{ids 39057}#)
- (if (if (symbol? #{p 39055}#)
- #t
- (if (if (vector? #{p 39055}#)
- (if (= (vector-length #{p 39055}#) 4)
- (eq? (vector-ref #{p 39055}# 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{p 39055}# 1))
- #f))
- (if (#{bound-id-member? 28263}#
- #{p 39055}#
- #{keys 39049}#)
- (values
- (vector 'free-id #{p 39055}#)
- #{ids 39057}#)
- (if (#{free-id=? 28259}#
- #{p 39055}#
- '#(syntax-object
- _
- ((top)
- #(ribcage () () ())
- #(ribcage
- #(p n ids)
- #((top) (top) (top))
- #("i27675" "i27676" "i27677"))
- #(ribcage
- (cvt v-reverse cvt*)
- ((top) (top) (top))
- ("i27648" "i27646" "i27644"))
- #(ribcage
- #(pattern keys)
- #((top) (top))
- #("i27642" "i27643"))
- #(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i27638" "i27636" "i27634" "i27632"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))
- (values '_ #{ids 39057}#)
- (values
- 'any
- (cons (cons #{p 39055}# #{n 39056}#)
- #{ids 39057}#))))
- (let ((#{tmp 39189}#
- ($sc-dispatch #{p 39055}# '(any any))))
- (if (if #{tmp 39189}#
- (@apply
- (lambda (#{x 39193}# #{dots 39194}#)
- (if (if (if (vector? #{dots 39194}#)
- (if (= (vector-length
- #{dots 39194}#)
- 4)
- (eq? (vector-ref
- #{dots 39194}#
- 0)
+ x-14254
+ w-13642
+ mod-13644)))))))
+ (let ((tmp-13646 e-13645))
+ (let ((tmp-13647
+ ($sc-dispatch
+ tmp-13646
+ '(_ any each-any . each-any))))
+ (if tmp-13647
+ (@apply
+ (lambda (val-13695 key-13696 m-13697)
+ (if (and-map
+ (lambda (x-13698)
+ (if (if (symbol? x-13698)
+ #t
+ (if (if (vector? x-13698)
+ (if (= (vector-length x-13698) 4)
+ (eq? (vector-ref x-13698 0)
'syntax-object)
#f)
#f)
- (symbol? (vector-ref #{dots 39194}# 1))
- #f)
- (#{free-id=? 28259}#
- #{dots 39194}#
- '#(syntax-object
- ...
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage #(x) #((top)) #("i26166"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))
- #f))
- #{tmp 39189}#)
- #f)
- (@apply
- (lambda (#{x 39233}# #{dots 39234}#)
- (call-with-values
- (lambda ()
- (#{cvt 39052}#
- #{x 39233}#
- (#{1+}# #{n 39056}#)
- #{ids 39057}#))
- (lambda (#{p 39235}# #{ids 39236}#)
- (values
- (if (eq? #{p 39235}# 'any)
- 'each-any
- (vector 'each #{p 39235}#))
- #{ids 39236}#))))
- #{tmp 39189}#)
- (let ((#{tmp 39237}#
- ($sc-dispatch #{p 39055}# '(any any . any))))
- (if (if #{tmp 39237}#
- (@apply
- (lambda (#{x 39241}#
- #{dots 39242}#
- #{ys 39243}#)
- (if (if (if (vector? #{dots 39242}#)
- (if (= (vector-length
- #{dots 39242}#)
- 4)
- (eq? (vector-ref
- #{dots 39242}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (symbol?
- (vector-ref #{dots 39242}# 1))
- #f)
- (#{free-id=? 28259}#
- #{dots 39242}#
- '#(syntax-object
- ...
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i26166"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))
+ (symbol? (vector-ref x-13698 1))
#f))
- #{tmp 39237}#)
- #f)
- (@apply
- (lambda (#{x 39282}#
- #{dots 39283}#
- #{ys 39284}#)
- (call-with-values
- (lambda ()
- (#{cvt* 39050}#
- #{ys 39284}#
- #{n 39056}#
- #{ids 39057}#))
- (lambda (#{ys 39769}# #{ids 39770}#)
- (call-with-values
- (lambda ()
- (#{cvt 39052}#
- #{x 39282}#
- (#{1+}# #{n 39056}#)
- #{ids 39770}#))
- (lambda (#{x 39771}# #{ids 39772}#)
- (call-with-values
- (lambda ()
- (#{v-reverse 39051}#
- #{ys 39769}#))
- (lambda (#{ys 39808}# #{e 39809}#)
- (values
- (vector
- 'each+
- #{x 39771}#
- #{ys 39808}#
- #{e 39809}#)
- #{ids 39772}#))))))))
- #{tmp 39237}#)
- (let ((#{tmp 39810}#
- ($sc-dispatch #{p 39055}# '(any . any))))
- (if #{tmp 39810}#
- (@apply
- (lambda (#{x 39814}# #{y 39815}#)
- (call-with-values
- (lambda ()
- (#{cvt 39052}#
- #{y 39815}#
- #{n 39056}#
- #{ids 39057}#))
- (lambda (#{y 39816}# #{ids 39817}#)
- (call-with-values
- (lambda ()
- (#{cvt 39052}#
- #{x 39814}#
- #{n 39056}#
- #{ids 39817}#))
- (lambda (#{x 39818}# #{ids 39819}#)
- (values
- (cons #{x 39818}# #{y 39816}#)
- #{ids 39819}#))))))
- #{tmp 39810}#)
- (let ((#{tmp 39820}#
- ($sc-dispatch #{p 39055}# '())))
- (if #{tmp 39820}#
- (@apply
- (lambda () (values '() #{ids 39057}#))
- #{tmp 39820}#)
- (let ((#{tmp 39824}#
- ($sc-dispatch
- #{p 39055}#
- '#(vector each-any))))
- (if #{tmp 39824}#
- (@apply
- (lambda (#{x 39828}#)
- (call-with-values
- (lambda ()
- (#{cvt 39052}#
- #{x 39828}#
- #{n 39056}#
- #{ids 39057}#))
- (lambda (#{p 39829}#
- #{ids 39830}#)
- (values
- (vector
- 'vector
- #{p 39829}#)
- #{ids 39830}#))))
- #{tmp 39824}#)
- (values
- (vector
- 'atom
- (#{strip 28284}#
- #{p 39055}#
- '(())))
- #{ids 39057}#)))))))))))))))
- (#{cvt 39052}# #{pattern 39048}# 0 '()))))
- (#{build-dispatch-call 37427}#
- (lambda (#{pvars 39964}#
- #{exp 39965}#
- #{y 39966}#
- #{r 39967}#
- #{mod 39968}#)
- (let ((#{ids 39969}# (map car #{pvars 39964}#)))
- (begin
- (map cdr #{pvars 39964}#)
- (let ((#{labels 39971}#
- (#{gen-labels 28241}# #{ids 39969}#))
- (#{new-vars 39972}#
- (map #{gen-var 28285}# #{ids 39969}#)))
- (#{build-primcall 28217}#
- #f
- 'apply
- (list (#{build-simple-lambda 28214}#
- #f
- (map syntax->datum #{ids 39969}#)
- #f
- #{new-vars 39972}#
- '()
- (#{expand 28271}#
- #{exp 39965}#
- (#{extend-env 28233}#
- #{labels 39971}#
- (map (lambda (#{var 40304}# #{level 40305}#)
- (cons 'syntax
- (cons #{var 40304}#
- #{level 40305}#)))
- #{new-vars 39972}#
- (map cdr #{pvars 39964}#))
- #{r 39967}#)
- (#{make-binding-wrap 28252}#
- #{ids 39969}#
- #{labels 39971}#
- '(()))
- #{mod 39968}#))
- #{y 39966}#)))))))
- (#{gen-clause 37428}#
- (lambda (#{x 38632}#
- #{keys 38633}#
- #{clauses 38634}#
- #{r 38635}#
- #{pat 38636}#
- #{fender 38637}#
- #{exp 38638}#
- #{mod 38639}#)
- (call-with-values
- (lambda ()
- (#{convert-pattern 37426}#
- #{pat 38636}#
- #{keys 38633}#))
- (lambda (#{p 38777}# #{pvars 38778}#)
- (if (not (#{distinct-bound-ids? 28262}#
- (map car #{pvars 38778}#)))
- (syntax-violation
- 'syntax-case
- "duplicate pattern variable"
- #{pat 38636}#)
- (if (not (and-map
- (lambda (#{x 38887}#)
- (not (let ((#{x 38891}# (car #{x 38887}#)))
- (if (if (if (vector? #{x 38891}#)
- (if (= (vector-length
- #{x 38891}#)
+ (not (if (if (if (vector? x-13698)
+ (if (= (vector-length x-13698)
4)
- (eq? (vector-ref
- #{x 38891}#
- 0)
+ (eq? (vector-ref x-13698 0)
'syntax-object)
#f)
#f)
- (symbol?
- (vector-ref #{x 38891}# 1))
+ (symbol? (vector-ref x-13698 1))
#f)
- (#{free-id=? 28259}#
- #{x 38891}#
+ (free-id=?-4574
+ x-13698
'#(syntax-object
...
((top)
@@ -14457,7 +16580,7 @@
#(ribcage
#(x)
#((top))
- #("i26166"))
+ #("l-*-2416"))
#(ribcage
(lambda-var-list
gen-var
@@ -14487,7 +16610,10 @@
valid-bound-ids?
bound-id=?
free-id=?
+ with-transformer-environment
+ transformer-environment
resolve-identifier
+ locally-bound-identifiers
id-var-name
same-marks?
join-marks
@@ -14568,7 +16694,7 @@
decorate-source
get-global-definition-hook
put-global-definition-hook
- gensym-hook
+ session-id
local-eval-hook
top-level-eval-hook
fx<
@@ -14734,3073 +16860,1020 @@
(top)
(top)
(top)
+ (top)
+ (top)
+ (top)
(top))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
+ ("l-*-478"
+ "l-*-476"
+ "l-*-474"
+ "l-*-472"
+ "l-*-470"
+ "l-*-468"
+ "l-*-466"
+ "l-*-464"
+ "l-*-462"
+ "l-*-460"
+ "l-*-458"
+ "l-*-456"
+ "l-*-454"
+ "l-*-452"
+ "l-*-450"
+ "l-*-448"
+ "l-*-446"
+ "l-*-444"
+ "l-*-442"
+ "l-*-440"
+ "l-*-438"
+ "l-*-436"
+ "l-*-434"
+ "l-*-432"
+ "l-*-430"
+ "l-*-428"
+ "l-*-426"
+ "l-*-424"
+ "l-*-422"
+ "l-*-420"
+ "l-*-418"
+ "l-*-416"
+ "l-*-414"
+ "l-*-412"
+ "l-*-410"
+ "l-*-408"
+ "l-*-406"
+ "l-*-404"
+ "l-*-402"
+ "l-*-401"
+ "l-*-399"
+ "l-*-396"
+ "l-*-395"
+ "l-*-394"
+ "l-*-392"
+ "l-*-391"
+ "l-*-389"
+ "l-*-387"
+ "l-*-385"
+ "l-*-383"
+ "l-*-381"
+ "l-*-379"
+ "l-*-377"
+ "l-*-375"
+ "l-*-372"
+ "l-*-370"
+ "l-*-369"
+ "l-*-367"
+ "l-*-365"
+ "l-*-363"
+ "l-*-361"
+ "l-*-360"
+ "l-*-359"
+ "l-*-358"
+ "l-*-356"
+ "l-*-355"
+ "l-*-352"
+ "l-*-350"
+ "l-*-348"
+ "l-*-346"
+ "l-*-344"
+ "l-*-342"
+ "l-*-341"
+ "l-*-340"
+ "l-*-338"
+ "l-*-336"
+ "l-*-335"
+ "l-*-332"
+ "l-*-331"
+ "l-*-329"
+ "l-*-327"
+ "l-*-325"
+ "l-*-323"
+ "l-*-321"
+ "l-*-319"
+ "l-*-317"
+ "l-*-315"
+ "l-*-313"
+ "l-*-310"
+ "l-*-308"
+ "l-*-306"
+ "l-*-304"
+ "l-*-302"
+ "l-*-300"
+ "l-*-298"
+ "l-*-296"
+ "l-*-294"
+ "l-*-292"
+ "l-*-290"
+ "l-*-288"
+ "l-*-286"
+ "l-*-284"
+ "l-*-282"
+ "l-*-280"
+ "l-*-278"
+ "l-*-276"
+ "l-*-274"
+ "l-*-272"
+ "l-*-270"
+ "l-*-268"
+ "l-*-266"
+ "l-*-264"
+ "l-*-262"
+ "l-*-260"
+ "l-*-258"
+ "l-*-257"
+ "l-*-256"
+ "l-*-255"
+ "l-*-254"
+ "l-*-252"
+ "l-*-250"
+ "l-*-248"
+ "l-*-245"
+ "l-*-243"
+ "l-*-241"
+ "l-*-239"
+ "l-*-237"
+ "l-*-235"
+ "l-*-233"
+ "l-*-231"
+ "l-*-229"
+ "l-*-227"
+ "l-*-225"
+ "l-*-223"
+ "l-*-221"
+ "l-*-219"
+ "l-*-217"
+ "l-*-215"
+ "l-*-213"
+ "l-*-211"
+ "l-*-209"))
#(ribcage
(define-structure
define-expansion-accessors
define-expansion-constructors)
((top) (top) (top))
- ("i23873" "i23872" "i23871"))
+ ("l-*-47" "l-*-46" "l-*-45"))
#(ribcage () () ()))
(hygiene guile)))
- #f))))
- #{pvars 38778}#))
- (syntax-violation
- 'syntax-case
- "misplaced ellipsis"
- #{pat 38636}#)
- (let ((#{y 38916}#
- (gensym
- (string-append (symbol->string 'tmp) " "))))
- (let ((#{fun-exp 38921}#
- (let ((#{req 38930}# (list 'tmp))
- (#{vars 38932}# (list #{y 38916}#))
- (#{exp 38934}#
- (let ((#{y 38963}#
- (make-struct/no-tail
- (vector-ref
- %expanded-vtables
- 3)
- #f
- 'tmp
- #{y 38916}#)))
- (let ((#{test-exp 38967}#
- (let ((#{tmp 38976}#
- ($sc-dispatch
- #{fender 38637}#
- '#(atom #t))))
- (if #{tmp 38976}#
- (@apply
- (lambda () #{y 38963}#)
- #{tmp 38976}#)
- (let ((#{then-exp 38994}#
- (#{build-dispatch-call 37427}#
- #{pvars 38778}#
- #{fender 38637}#
- #{y 38963}#
- #{r 38635}#
- #{mod 38639}#))
- (#{else-exp 38995}#
- (make-struct/no-tail
- (vector-ref
- %expanded-vtables
- 1)
- #f
- #f)))
- (make-struct/no-tail
- (vector-ref
- %expanded-vtables
- 10)
- #f
- #{y 38963}#
- #{then-exp 38994}#
- #{else-exp 38995}#)))))
- (#{then-exp 38968}#
- (#{build-dispatch-call 37427}#
- #{pvars 38778}#
- #{exp 38638}#
- #{y 38963}#
- #{r 38635}#
- #{mod 38639}#))
- (#{else-exp 38969}#
- (#{gen-syntax-case 37429}#
- #{x 38632}#
- #{keys 38633}#
- #{clauses 38634}#
- #{r 38635}#
- #{mod 38639}#)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 10)
- #f
- #{test-exp 38967}#
- #{then-exp 38968}#
- #{else-exp 38969}#)))))
- (let ((#{body 38939}#
- (make-struct/no-tail
- (vector-ref %expanded-vtables 15)
- #f
- #{req 38930}#
- #f
- #f
- #f
- '()
- #{vars 38932}#
- #{exp 38934}#
- #f)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #f
- '()
- #{body 38939}#))))
- (#{arg-exps 38922}#
- (list (if (eq? #{p 38777}# 'any)
- (let ((#{args 39027}#
- (list #{x 38632}#)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 12)
- #f
- 'list
- #{args 39027}#))
- (let ((#{args 39036}#
- (list #{x 38632}#
- (make-struct/no-tail
- (vector-ref
- %expanded-vtables
- 1)
- #f
- #{p 38777}#))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 12)
- #f
- '$sc-dispatch
- #{args 39036}#))))))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 11)
- #f
- #{fun-exp 38921}#
- #{arg-exps 38922}#)))))))))
- (#{gen-syntax-case 37429}#
- (lambda (#{x 38133}#
- #{keys 38134}#
- #{clauses 38135}#
- #{r 38136}#
- #{mod 38137}#)
- (if (null? #{clauses 38135}#)
- (let ((#{args 38143}#
- (list (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #f
- #f)
- (make-struct/no-tail
- (vector-ref %expanded-vtables 1)
- #f
- "source expression failed to match any pattern")
- #{x 38133}#)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 12)
- #f
- 'syntax-violation
- #{args 38143}#))
- (let ((#{tmp 38162}# (car #{clauses 38135}#)))
- (let ((#{tmp 38163}#
- ($sc-dispatch #{tmp 38162}# '(any any))))
- (if #{tmp 38163}#
- (@apply
- (lambda (#{pat 38165}# #{exp 38166}#)
- (if (if (if (symbol? #{pat 38165}#)
- #t
- (if (if (vector? #{pat 38165}#)
- (if (= (vector-length #{pat 38165}#)
- 4)
- (eq? (vector-ref #{pat 38165}# 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{pat 38165}# 1))
- #f))
- (and-map
- (lambda (#{x 38193}#)
- (not (#{free-id=? 28259}#
- #{pat 38165}#
- #{x 38193}#)))
- (cons '#(syntax-object
- ...
- ((top)
- #(ribcage
- #(pat exp)
- #((top) (top))
- #("i27835" "i27836"))
- #(ribcage () () ())
- #(ribcage
- #(x keys clauses r mod)
- #((top) (top) (top) (top) (top))
- #("i27825"
- "i27826"
- "i27827"
- "i27828"
- "i27829"))
- #(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i27638"
- "i27636"
- "i27634"
- "i27632"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile))
- #{keys 38134}#))
- #f)
- (if (#{free-id=? 28259}#
- '#(syntax-object
- pad
- ((top)
- #(ribcage
- #(pat exp)
- #((top) (top))
- #("i27835" "i27836"))
- #(ribcage () () ())
- #(ribcage
- #(x keys clauses r mod)
- #((top) (top) (top) (top) (top))
- #("i27825"
- "i27826"
- "i27827"
- "i27828"
- "i27829"))
- #(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i27638" "i27636" "i27634" "i27632"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile))
- '#(syntax-object
- _
- ((top)
- #(ribcage
- #(pat exp)
- #((top) (top))
- #("i27835" "i27836"))
- #(ribcage () () ())
- #(ribcage
- #(x keys clauses r mod)
- #((top) (top) (top) (top) (top))
- #("i27825"
- "i27826"
- "i27827"
- "i27828"
- "i27829"))
- #(ribcage
- (gen-syntax-case
- gen-clause
- build-dispatch-call
- convert-pattern)
- ((top) (top) (top) (top))
- ("i27638" "i27636" "i27634" "i27632"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))
- (#{expand 28271}#
- #{exp 38166}#
- #{r 38136}#
- '(())
- #{mod 38137}#)
- (let ((#{labels 38275}#
- (list (symbol->string (gensym "i"))))
- (#{var 38276}#
- (let ((#{id 38314}#
- (if (if (vector? #{pat 38165}#)
- (if (= (vector-length
- #{pat 38165}#)
- 4)
- (eq? (vector-ref
- #{pat 38165}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (vector-ref #{pat 38165}# 1)
- #{pat 38165}#)))
- (gensym
- (string-append
- (symbol->string #{id 38314}#)
- " ")))))
- (#{build-call 28205}#
- #f
- (#{build-simple-lambda 28214}#
- #f
- (list (syntax->datum #{pat 38165}#))
- #f
- (list #{var 38276}#)
- '()
- (#{expand 28271}#
- #{exp 38166}#
- (#{extend-env 28233}#
- #{labels 38275}#
- (list (cons 'syntax
- (cons #{var 38276}# 0)))
- #{r 38136}#)
- (#{make-binding-wrap 28252}#
- (list #{pat 38165}#)
- #{labels 38275}#
- '(()))
- #{mod 38137}#))
- (list #{x 38133}#))))
- (#{gen-clause 37428}#
- #{x 38133}#
- #{keys 38134}#
- (cdr #{clauses 38135}#)
- #{r 38136}#
- #{pat 38165}#
- #t
- #{exp 38166}#
- #{mod 38137}#)))
- #{tmp 38163}#)
- (let ((#{tmp 38624}#
- ($sc-dispatch #{tmp 38162}# '(any any any))))
- (if #{tmp 38624}#
- (@apply
- (lambda (#{pat 38626}#
- #{fender 38627}#
- #{exp 38628}#)
- (#{gen-clause 37428}#
- #{x 38133}#
- #{keys 38134}#
- (cdr #{clauses 38135}#)
- #{r 38136}#
- #{pat 38626}#
- #{fender 38627}#
- #{exp 38628}#
- #{mod 38137}#))
- #{tmp 38624}#)
- (syntax-violation
- 'syntax-case
- "invalid clause"
- (car #{clauses 38135}#)))))))))))
- (lambda (#{e 37430}#
- #{r 37431}#
- #{w 37432}#
- #{s 37433}#
- #{mod 37434}#)
- (let ((#{e 37435}#
- (let ((#{x 38044}#
- (begin
- (if (if (pair? #{e 37430}#) #{s 37433}# #f)
- (set-source-properties! #{e 37430}# #{s 37433}#))
- #{e 37430}#)))
- (if (if (null? (car #{w 37432}#))
- (null? (cdr #{w 37432}#))
- #f)
- #{x 38044}#
- (if (if (vector? #{x 38044}#)
- (if (= (vector-length #{x 38044}#) 4)
- (eq? (vector-ref #{x 38044}# 0) 'syntax-object)
- #f)
- #f)
- (let ((#{expression 38076}# (vector-ref #{x 38044}# 1))
- (#{wrap 38077}#
- (let ((#{w2 38085}#
- (vector-ref #{x 38044}# 2)))
- (let ((#{m1 38086}# (car #{w 37432}#))
- (#{s1 38087}# (cdr #{w 37432}#)))
- (if (null? #{m1 38086}#)
- (if (null? #{s1 38087}#)
- #{w2 38085}#
- (cons (car #{w2 38085}#)
- (let ((#{m2 38102}#
- (cdr #{w2 38085}#)))
- (if (null? #{m2 38102}#)
- #{s1 38087}#
- (append
- #{s1 38087}#
- #{m2 38102}#)))))
- (cons (let ((#{m2 38110}#
- (car #{w2 38085}#)))
- (if (null? #{m2 38110}#)
- #{m1 38086}#
- (append
- #{m1 38086}#
- #{m2 38110}#)))
- (let ((#{m2 38118}#
- (cdr #{w2 38085}#)))
- (if (null? #{m2 38118}#)
- #{s1 38087}#
- (append
- #{s1 38087}#
- #{m2 38118}#))))))))
- (#{module 38078}# (vector-ref #{x 38044}# 3)))
- (vector
- 'syntax-object
- #{expression 38076}#
- #{wrap 38077}#
- #{module 38078}#))
- (if (null? #{x 38044}#)
- #{x 38044}#
- (vector
- 'syntax-object
- #{x 38044}#
- #{w 37432}#
- #{mod 37434}#)))))))
- (let ((#{tmp 37436}# #{e 37435}#))
- (let ((#{tmp 37437}#
- ($sc-dispatch
- #{tmp 37436}#
- '(_ any each-any . each-any))))
- (if #{tmp 37437}#
- (@apply
- (lambda (#{val 37485}# #{key 37486}# #{m 37487}#)
- (if (and-map
- (lambda (#{x 37488}#)
- (if (if (symbol? #{x 37488}#)
- #t
- (if (if (vector? #{x 37488}#)
- (if (= (vector-length #{x 37488}#) 4)
- (eq? (vector-ref #{x 37488}# 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{x 37488}# 1))
- #f))
- (not (if (if (if (vector? #{x 37488}#)
- (if (= (vector-length
- #{x 37488}#)
- 4)
- (eq? (vector-ref
- #{x 37488}#
- 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{x 37488}# 1))
- #f)
- (#{free-id=? 28259}#
- #{x 37488}#
- '#(syntax-object
- ...
- ((top)
- #(ribcage () () ())
- #(ribcage () () ())
- #(ribcage
- #(x)
- #((top))
- #("i26166"))
- #(ribcage
- (lambda-var-list
- gen-var
- strip
- expand-lambda-case
- lambda*-formals
- expand-simple-lambda
- lambda-formals
- ellipsis?
- expand-void
- eval-local-transformer
- expand-local-syntax
- expand-body
- expand-macro
- expand-call
- expand-expr
- expand
- syntax-type
- parse-when-list
- expand-install-global
- expand-top-sequence
- expand-sequence
- source-wrap
- wrap
- bound-id-member?
- distinct-bound-ids?
- valid-bound-ids?
- bound-id=?
- free-id=?
- resolve-identifier
- 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
- 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))
- ("i24298"
- "i24296"
- "i24294"
- "i24292"
- "i24290"
- "i24288"
- "i24286"
- "i24284"
- "i24282"
- "i24280"
- "i24278"
- "i24276"
- "i24274"
- "i24272"
- "i24270"
- "i24268"
- "i24266"
- "i24264"
- "i24262"
- "i24260"
- "i24258"
- "i24256"
- "i24254"
- "i24252"
- "i24250"
- "i24248"
- "i24246"
- "i24244"
- "i24242"
- "i24240"
- "i24238"
- "i24236"
- "i24234"
- "i24232"
- "i24230"
- "i24228"
- "i24227"
- "i24225"
- "i24222"
- "i24221"
- "i24220"
- "i24218"
- "i24217"
- "i24215"
- "i24213"
- "i24211"
- "i24209"
- "i24207"
- "i24205"
- "i24203"
- "i24201"
- "i24198"
- "i24196"
- "i24195"
- "i24193"
- "i24191"
- "i24189"
- "i24187"
- "i24186"
- "i24185"
- "i24184"
- "i24182"
- "i24181"
- "i24178"
- "i24176"
- "i24174"
- "i24172"
- "i24170"
- "i24168"
- "i24167"
- "i24166"
- "i24164"
- "i24162"
- "i24161"
- "i24158"
- "i24157"
- "i24155"
- "i24153"
- "i24151"
- "i24149"
- "i24147"
- "i24145"
- "i24143"
- "i24141"
- "i24139"
- "i24136"
- "i24134"
- "i24132"
- "i24130"
- "i24128"
- "i24126"
- "i24124"
- "i24122"
- "i24120"
- "i24118"
- "i24116"
- "i24114"
- "i24112"
- "i24110"
- "i24108"
- "i24106"
- "i24104"
- "i24102"
- "i24100"
- "i24098"
- "i24096"
- "i24094"
- "i24092"
- "i24090"
- "i24089"
- "i24086"
- "i24084"
- "i24083"
- "i24082"
- "i24081"
- "i24080"
- "i24078"
- "i24076"
- "i24074"
- "i24071"
- "i24069"
- "i24067"
- "i24065"
- "i24063"
- "i24061"
- "i24059"
- "i24057"
- "i24055"
- "i24053"
- "i24051"
- "i24049"
- "i24047"
- "i24045"
- "i24043"
- "i24041"
- "i24039"
- "i24037"
- "i24035"))
- #(ribcage
- (define-structure
- define-expansion-accessors
- define-expansion-constructors)
- ((top) (top) (top))
- ("i23873" "i23872" "i23871"))
- #(ribcage () () ()))
- (hygiene guile)))
- #f))
- #f))
- #{key 37486}#)
- (let ((#{x 37553}#
- (gensym
- (string-append (symbol->string 'tmp) " "))))
- (#{build-call 28205}#
- #{s 37433}#
- (let ((#{req 37691}# (list 'tmp))
- (#{vars 37693}# (list #{x 37553}#))
- (#{exp 37695}#
- (#{gen-syntax-case 37429}#
- (make-struct/no-tail
- (vector-ref %expanded-vtables 3)
- #f
- 'tmp
- #{x 37553}#)
- #{key 37486}#
- #{m 37487}#
- #{r 37431}#
- #{mod 37434}#)))
- (let ((#{body 37700}#
- (make-struct/no-tail
- (vector-ref %expanded-vtables 15)
- #f
- #{req 37691}#
- #f
- #f
- #f
- '()
- #{vars 37693}#
- #{exp 37695}#
- #f)))
- (make-struct/no-tail
- (vector-ref %expanded-vtables 14)
- #f
- '()
- #{body 37700}#)))
- (list (#{expand 28271}#
- #{val 37485}#
- #{r 37431}#
- '(())
- #{mod 37434}#))))
- (syntax-violation
- 'syntax-case
- "invalid literals list"
- #{e 37435}#)))
- #{tmp 37437}#)
- (syntax-violation
- #f
- "source expression failed to match any pattern"
- #{tmp 37436}#))))))))
- (set! macroexpand
- (lambda*
- (#{x 40406}#
- #:optional
- (#{m 40407}# 'e)
- (#{esew 40408}# '(eval)))
- (#{expand-top-sequence 28267}#
- (list #{x 40406}#)
- '()
- '((top))
- #f
- #{m 40407}#
- #{esew 40408}#
- (cons 'hygiene (module-name (current-module))))))
- (set! identifier?
- (lambda (#{x 40411}#)
- (if (if (vector? #{x 40411}#)
- (if (= (vector-length #{x 40411}#) 4)
- (eq? (vector-ref #{x 40411}# 0) 'syntax-object)
+ #f))
+ #f))
+ key-13696)
+ (let ((x-13763
+ (gensym
+ (string-append
+ (symbol->string 'tmp)
+ "-"))))
+ (build-call-4517
+ s-13643
+ (let ((req-13901 (list 'tmp))
+ (vars-13903 (list x-13763))
+ (exp-13905
+ (gen-syntax-case-13639
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 3)
+ #f
+ 'tmp
+ x-13763)
+ key-13696
+ m-13697
+ r-13641
+ mod-13644)))
+ (let ((body-13910
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 15)
+ #f
+ req-13901
+ #f
+ #f
+ #f
+ '()
+ vars-13903
+ exp-13905
+ #f)))
+ (make-struct/no-tail
+ (vector-ref %expanded-vtables 14)
+ #f
+ '()
+ body-13910)))
+ (list (expand-4586
+ val-13695
+ r-13641
+ '(())
+ mod-13644))))
+ (syntax-violation
+ 'syntax-case
+ "invalid literals list"
+ e-13645)))
+ tmp-13647)
+ (syntax-violation
+ #f
+ "source expression failed to match any pattern"
+ tmp-13646))))))))
+ (set! macroexpand
+ (lambda*
+ (x-16590
+ #:optional
+ (m-16591 'e)
+ (esew-16592 '(eval)))
+ (expand-top-sequence-4582
+ (list x-16590)
+ '()
+ '((top))
+ #f
+ m-16591
+ esew-16592
+ (cons 'hygiene (module-name (current-module))))))
+ (set! identifier?
+ (lambda (x-16595)
+ (if (if (vector? x-16595)
+ (if (= (vector-length x-16595) 4)
+ (eq? (vector-ref x-16595 0) 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{x 40411}# 1))
- #f)))
- (set! datum->syntax
- (lambda (#{id 40436}# #{datum 40437}#)
- (let ((#{wrap 40442}# (vector-ref #{id 40436}# 2))
- (#{module 40443}# (vector-ref #{id 40436}# 3)))
- (vector
- 'syntax-object
- #{datum 40437}#
- #{wrap 40442}#
- #{module 40443}#))))
- (set! syntax->datum
- (lambda (#{x 40450}#)
- (#{strip 28284}# #{x 40450}# '(()))))
- (set! syntax-source
- (lambda (#{x 40453}#)
- (#{source-annotation 28232}# #{x 40453}#)))
- (set! generate-temporaries
- (lambda (#{ls 40637}#)
- (begin
- (if (not (list? #{ls 40637}#))
- (syntax-violation
- 'generate-temporaries
- "invalid argument"
- #{ls 40637}#))
- (let ((#{mod 40645}#
- (cons 'hygiene (module-name (current-module)))))
- (map (lambda (#{x 40646}#)
- (let ((#{x 40650}# (gensym)))
- (if (if (vector? #{x 40650}#)
- (if (= (vector-length #{x 40650}#) 4)
- (eq? (vector-ref #{x 40650}# 0) 'syntax-object)
+ (symbol? (vector-ref x-16595 1))
+ #f)))
+ (set! datum->syntax
+ (lambda (id-16620 datum-16621)
+ (let ((wrap-16626 (vector-ref id-16620 2))
+ (module-16627 (vector-ref id-16620 3)))
+ (vector
+ 'syntax-object
+ datum-16621
+ wrap-16626
+ module-16627))))
+ (set! syntax->datum
+ (lambda (x-16634) (strip-4599 x-16634 '(()))))
+ (set! syntax-source
+ (lambda (x-16637)
+ (source-annotation-4544 x-16637)))
+ (set! generate-temporaries
+ (lambda (ls-16821)
+ (begin
+ (if (not (list? ls-16821))
+ (syntax-violation
+ 'generate-temporaries
+ "invalid argument"
+ ls-16821))
+ (let ((mod-16829
+ (cons 'hygiene (module-name (current-module)))))
+ (map (lambda (x-16830)
+ (let ((x-16834 (gensym "t-")))
+ (if (if (vector? x-16834)
+ (if (= (vector-length x-16834) 4)
+ (eq? (vector-ref x-16834 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-16849 (vector-ref x-16834 1))
+ (wrap-16850
+ (let ((w2-16858 (vector-ref x-16834 2)))
+ (cons (let ((m2-16865 (car w2-16858)))
+ (if (null? m2-16865)
+ '(top)
+ (append '(top) m2-16865)))
+ (let ((m2-16872 (cdr w2-16858)))
+ (if (null? m2-16872)
+ '()
+ (append '() m2-16872))))))
+ (module-16851 (vector-ref x-16834 3)))
+ (vector
+ 'syntax-object
+ expression-16849
+ wrap-16850
+ module-16851))
+ (if (null? x-16834)
+ x-16834
+ (vector
+ 'syntax-object
+ x-16834
+ '((top))
+ mod-16829)))))
+ ls-16821)))))
+ (set! free-identifier=?
+ (lambda (x-16881 y-16882)
+ (begin
+ (if (not (if (if (vector? x-16881)
+ (if (= (vector-length x-16881) 4)
+ (eq? (vector-ref x-16881 0) 'syntax-object)
#f)
#f)
- (let ((#{expression 40665}# (vector-ref #{x 40650}# 1))
- (#{wrap 40666}#
- (let ((#{w2 40674}# (vector-ref #{x 40650}# 2)))
- (cons (let ((#{m2 40681}# (car #{w2 40674}#)))
- (if (null? #{m2 40681}#)
- '(top)
- (append '(top) #{m2 40681}#)))
- (let ((#{m2 40688}# (cdr #{w2 40674}#)))
- (if (null? #{m2 40688}#)
- '()
- (append '() #{m2 40688}#))))))
- (#{module 40667}# (vector-ref #{x 40650}# 3)))
- (vector
- 'syntax-object
- #{expression 40665}#
- #{wrap 40666}#
- #{module 40667}#))
- (if (null? #{x 40650}#)
- #{x 40650}#
- (vector
- 'syntax-object
- #{x 40650}#
- '((top))
- #{mod 40645}#)))))
- #{ls 40637}#)))))
- (set! free-identifier=?
- (lambda (#{x 40697}# #{y 40698}#)
- (begin
- (if (not (if (if (vector? #{x 40697}#)
- (if (= (vector-length #{x 40697}#) 4)
- (eq? (vector-ref #{x 40697}# 0) 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{x 40697}# 1))
- #f))
- (syntax-violation
- 'free-identifier=?
- "invalid argument"
- #{x 40697}#))
- (if (not (if (if (vector? #{y 40698}#)
- (if (= (vector-length #{y 40698}#) 4)
- (eq? (vector-ref #{y 40698}# 0) 'syntax-object)
+ (symbol? (vector-ref x-16881 1))
+ #f))
+ (syntax-violation
+ 'free-identifier=?
+ "invalid argument"
+ x-16881))
+ (if (not (if (if (vector? y-16882)
+ (if (= (vector-length y-16882) 4)
+ (eq? (vector-ref y-16882 0) 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{y 40698}# 1))
- #f))
- (syntax-violation
- 'free-identifier=?
- "invalid argument"
- #{y 40698}#))
- (#{free-id=? 28259}# #{x 40697}# #{y 40698}#))))
- (set! bound-identifier=?
- (lambda (#{x 40773}# #{y 40774}#)
- (begin
- (if (not (if (if (vector? #{x 40773}#)
- (if (= (vector-length #{x 40773}#) 4)
- (eq? (vector-ref #{x 40773}# 0) 'syntax-object)
+ (symbol? (vector-ref y-16882 1))
+ #f))
+ (syntax-violation
+ 'free-identifier=?
+ "invalid argument"
+ y-16882))
+ (free-id=?-4574 x-16881 y-16882))))
+ (set! bound-identifier=?
+ (lambda (x-16957 y-16958)
+ (begin
+ (if (not (if (if (vector? x-16957)
+ (if (= (vector-length x-16957) 4)
+ (eq? (vector-ref x-16957 0) 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{x 40773}# 1))
- #f))
- (syntax-violation
- 'bound-identifier=?
- "invalid argument"
- #{x 40773}#))
- (if (not (if (if (vector? #{y 40774}#)
- (if (= (vector-length #{y 40774}#) 4)
- (eq? (vector-ref #{y 40774}# 0) 'syntax-object)
+ (symbol? (vector-ref x-16957 1))
+ #f))
+ (syntax-violation
+ 'bound-identifier=?
+ "invalid argument"
+ x-16957))
+ (if (not (if (if (vector? y-16958)
+ (if (= (vector-length y-16958) 4)
+ (eq? (vector-ref y-16958 0) 'syntax-object)
+ #f)
#f)
- #f)
- (symbol? (vector-ref #{y 40774}# 1))
- #f))
- (syntax-violation
- 'bound-identifier=?
- "invalid argument"
- #{y 40774}#))
- (#{bound-id=? 28260}# #{x 40773}# #{y 40774}#))))
- (set! syntax-violation
- (lambda*
- (#{who 40940}#
- #{message 40941}#
- #{form 40942}#
- #:optional
- (#{subform 40943}# #f))
+ (symbol? (vector-ref y-16958 1))
+ #f))
+ (syntax-violation
+ 'bound-identifier=?
+ "invalid argument"
+ y-16958))
+ (bound-id=?-4575 x-16957 y-16958))))
+ (set! syntax-violation
+ (lambda*
+ (who-17124
+ message-17125
+ form-17126
+ #:optional
+ (subform-17127 #f))
+ (begin
+ (if (not (if (not who-17124)
+ (not who-17124)
+ (let ((t-17145 (string? who-17124)))
+ (if t-17145 t-17145 (symbol? who-17124)))))
+ (syntax-violation
+ 'syntax-violation
+ "invalid argument"
+ who-17124))
+ (if (not (string? message-17125))
+ (syntax-violation
+ 'syntax-violation
+ "invalid argument"
+ message-17125))
+ (throw 'syntax-error
+ who-17124
+ message-17125
+ (source-annotation-4544
+ (if form-17126 form-17126 subform-17127))
+ (strip-4599 form-17126 '(()))
+ (if subform-17127
+ (strip-4599 subform-17127 '(()))
+ #f)))))
+ (letrec*
+ ((syntax-local-binding-17377
+ (lambda (id-17517)
+ (begin
+ (if (not (if (if (vector? id-17517)
+ (if (= (vector-length id-17517) 4)
+ (eq? (vector-ref id-17517 0) 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref id-17517 1))
+ #f))
+ (syntax-violation
+ 'syntax-local-binding
+ "invalid argument"
+ id-17517))
+ ((fluid-ref transformer-environment-4572)
+ (lambda (e-17557
+ r-17558
+ w-17559
+ s-17560
+ rib-17561
+ mod-17562)
+ (call-with-values
+ (lambda ()
+ (resolve-identifier-4571
+ (vector-ref id-17517 1)
+ (let ((w-17569 (vector-ref id-17517 2)))
+ (let ((ms-17570 (car w-17569))
+ (s-17571 (cdr w-17569)))
+ (if (if (pair? ms-17570)
+ (eq? (car ms-17570) #f)
+ #f)
+ (cons (cdr ms-17570)
+ (if rib-17561
+ (cons rib-17561 (cdr s-17571))
+ (cdr s-17571)))
+ (cons ms-17570
+ (if rib-17561
+ (cons rib-17561 s-17571)
+ s-17571)))))
+ r-17558
+ (vector-ref id-17517 3)
+ #t))
+ (lambda (type-17578 value-17579 mod-17580)
+ (if (eqv? type-17578 'lexical)
+ (values 'lexical value-17579)
+ (if (eqv? type-17578 'macro)
+ (values 'macro value-17579)
+ (if (eqv? type-17578 'syntax)
+ (values 'pattern-variable value-17579)
+ (if (eqv? type-17578 'displaced-lexical)
+ (values 'displaced-lexical #f)
+ (if (eqv? type-17578 'global)
+ (values
+ 'global
+ (cons value-17579 (cdr mod-17580)))
+ (values 'other #f)))))))))))))
+ (syntax-locally-bound-identifiers-17378
+ (lambda (id-17591)
+ (begin
+ (if (not (if (if (vector? id-17591)
+ (if (= (vector-length id-17591) 4)
+ (eq? (vector-ref id-17591 0) 'syntax-object)
+ #f)
+ #f)
+ (symbol? (vector-ref id-17591 1))
+ #f))
+ (syntax-violation
+ 'syntax-locally-bound-identifiers
+ "invalid argument"
+ id-17591))
+ (locally-bound-identifiers-4570
+ (vector-ref id-17591 2)
+ (vector-ref id-17591 3))))))
(begin
- (if (not (if (not #{who 40940}#)
- (not #{who 40940}#)
- (let ((#{t 40961}# (string? #{who 40940}#)))
- (if #{t 40961}#
- #{t 40961}#
- (symbol? #{who 40940}#)))))
- (syntax-violation
- 'syntax-violation
- "invalid argument"
- #{who 40940}#))
- (if (not (string? #{message 40941}#))
- (syntax-violation
- 'syntax-violation
- "invalid argument"
- #{message 40941}#))
- (throw 'syntax-error
- #{who 40940}#
- #{message 40941}#
- (#{source-annotation 28232}#
- (if #{form 40942}#
- #{form 40942}#
- #{subform 40943}#))
- (#{strip 28284}# #{form 40942}# '(()))
- (if #{subform 40943}#
- (#{strip 28284}# #{subform 40943}# '(()))
- #f)))))
- (letrec*
- ((#{match-each 41192}#
- (lambda (#{e 42071}#
- #{p 42072}#
- #{w 42073}#
- #{mod 42074}#)
- (if (pair? #{e 42071}#)
- (let ((#{first 42075}#
- (#{match 41198}#
- (car #{e 42071}#)
- #{p 42072}#
- #{w 42073}#
- '()
- #{mod 42074}#)))
- (if #{first 42075}#
- (let ((#{rest 42078}#
- (#{match-each 41192}#
- (cdr #{e 42071}#)
- #{p 42072}#
- #{w 42073}#
- #{mod 42074}#)))
- (if #{rest 42078}#
- (cons #{first 42075}# #{rest 42078}#)
- #f))
- #f))
- (if (null? #{e 42071}#)
- '()
- (if (if (vector? #{e 42071}#)
- (if (= (vector-length #{e 42071}#) 4)
- (eq? (vector-ref #{e 42071}# 0) 'syntax-object)
- #f)
- #f)
- (#{match-each 41192}#
- (vector-ref #{e 42071}# 1)
- #{p 42072}#
- (let ((#{w2 42100}# (vector-ref #{e 42071}# 2)))
- (let ((#{m1 42101}# (car #{w 42073}#))
- (#{s1 42102}# (cdr #{w 42073}#)))
- (if (null? #{m1 42101}#)
- (if (null? #{s1 42102}#)
- #{w2 42100}#
- (cons (car #{w2 42100}#)
- (let ((#{m2 42113}# (cdr #{w2 42100}#)))
- (if (null? #{m2 42113}#)
- #{s1 42102}#
- (append #{s1 42102}# #{m2 42113}#)))))
- (cons (let ((#{m2 42121}# (car #{w2 42100}#)))
- (if (null? #{m2 42121}#)
- #{m1 42101}#
- (append #{m1 42101}# #{m2 42121}#)))
- (let ((#{m2 42129}# (cdr #{w2 42100}#)))
- (if (null? #{m2 42129}#)
- #{s1 42102}#
- (append #{s1 42102}# #{m2 42129}#)))))))
- (vector-ref #{e 42071}# 3))
- #f)))))
- (#{match-each-any 41194}#
- (lambda (#{e 42138}# #{w 42139}# #{mod 42140}#)
- (if (pair? #{e 42138}#)
- (let ((#{l 42141}#
- (#{match-each-any 41194}#
- (cdr #{e 42138}#)
- #{w 42139}#
- #{mod 42140}#)))
- (if #{l 42141}#
- (cons (let ((#{x 42146}# (car #{e 42138}#)))
- (if (if (null? (car #{w 42139}#))
- (null? (cdr #{w 42139}#))
+ (define!
+ 'syntax-module
+ (lambda (id-17380)
+ (begin
+ (if (not (if (if (vector? id-17380)
+ (if (= (vector-length id-17380) 4)
+ (eq? (vector-ref id-17380 0) 'syntax-object)
+ #f)
#f)
- #{x 42146}#
- (if (if (vector? #{x 42146}#)
- (if (= (vector-length #{x 42146}#) 4)
- (eq? (vector-ref #{x 42146}# 0)
- 'syntax-object)
- #f)
+ (symbol? (vector-ref id-17380 1))
+ #f))
+ (syntax-violation
+ 'syntax-module
+ "invalid argument"
+ id-17380))
+ (cdr (vector-ref id-17380 3)))))
+ (define!
+ 'syntax-local-binding
+ syntax-local-binding-17377)
+ (define!
+ 'syntax-locally-bound-identifiers
+ syntax-locally-bound-identifiers-17378)))
+ (letrec*
+ ((match-each-17708
+ (lambda (e-18587 p-18588 w-18589 mod-18590)
+ (if (pair? e-18587)
+ (let ((first-18591
+ (match-17714
+ (car e-18587)
+ p-18588
+ w-18589
+ '()
+ mod-18590)))
+ (if first-18591
+ (let ((rest-18594
+ (match-each-17708
+ (cdr e-18587)
+ p-18588
+ w-18589
+ mod-18590)))
+ (if rest-18594 (cons first-18591 rest-18594) #f))
+ #f))
+ (if (null? e-18587)
+ '()
+ (if (if (vector? e-18587)
+ (if (= (vector-length e-18587) 4)
+ (eq? (vector-ref e-18587 0) 'syntax-object)
+ #f)
+ #f)
+ (match-each-17708
+ (vector-ref e-18587 1)
+ p-18588
+ (let ((w2-18616 (vector-ref e-18587 2)))
+ (let ((m1-18617 (car w-18589))
+ (s1-18618 (cdr w-18589)))
+ (if (null? m1-18617)
+ (if (null? s1-18618)
+ w2-18616
+ (cons (car w2-18616)
+ (let ((m2-18629 (cdr w2-18616)))
+ (if (null? m2-18629)
+ s1-18618
+ (append s1-18618 m2-18629)))))
+ (cons (let ((m2-18637 (car w2-18616)))
+ (if (null? m2-18637)
+ m1-18617
+ (append m1-18617 m2-18637)))
+ (let ((m2-18645 (cdr w2-18616)))
+ (if (null? m2-18645)
+ s1-18618
+ (append s1-18618 m2-18645)))))))
+ (vector-ref e-18587 3))
+ #f)))))
+ (match-each-any-17710
+ (lambda (e-18654 w-18655 mod-18656)
+ (if (pair? e-18654)
+ (let ((l-18657
+ (match-each-any-17710
+ (cdr e-18654)
+ w-18655
+ mod-18656)))
+ (if l-18657
+ (cons (let ((x-18662 (car e-18654)))
+ (if (if (null? (car w-18655))
+ (null? (cdr w-18655))
#f)
- (let ((#{expression 42164}#
- (vector-ref #{x 42146}# 1))
- (#{wrap 42165}#
- (let ((#{w2 42173}#
- (vector-ref #{x 42146}# 2)))
- (let ((#{m1 42174}# (car #{w 42139}#))
- (#{s1 42175}# (cdr #{w 42139}#)))
- (if (null? #{m1 42174}#)
- (if (null? #{s1 42175}#)
- #{w2 42173}#
- (cons (car #{w2 42173}#)
- (let ((#{m2 42190}#
- (cdr #{w2 42173}#)))
- (if (null? #{m2 42190}#)
- #{s1 42175}#
+ x-18662
+ (if (if (vector? x-18662)
+ (if (= (vector-length x-18662) 4)
+ (eq? (vector-ref x-18662 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-18680 (vector-ref x-18662 1))
+ (wrap-18681
+ (let ((w2-18689 (vector-ref x-18662 2)))
+ (let ((m1-18690 (car w-18655))
+ (s1-18691 (cdr w-18655)))
+ (if (null? m1-18690)
+ (if (null? s1-18691)
+ w2-18689
+ (cons (car w2-18689)
+ (let ((m2-18706
+ (cdr w2-18689)))
+ (if (null? m2-18706)
+ s1-18691
+ (append
+ s1-18691
+ m2-18706)))))
+ (cons (let ((m2-18714
+ (car w2-18689)))
+ (if (null? m2-18714)
+ m1-18690
(append
- #{s1 42175}#
- #{m2 42190}#)))))
- (cons (let ((#{m2 42198}#
- (car #{w2 42173}#)))
- (if (null? #{m2 42198}#)
- #{m1 42174}#
- (append
- #{m1 42174}#
- #{m2 42198}#)))
- (let ((#{m2 42206}#
- (cdr #{w2 42173}#)))
- (if (null? #{m2 42206}#)
- #{s1 42175}#
- (append
- #{s1 42175}#
- #{m2 42206}#))))))))
- (#{module 42166}#
- (vector-ref #{x 42146}# 3)))
- (vector
- 'syntax-object
- #{expression 42164}#
- #{wrap 42165}#
- #{module 42166}#))
- (if (null? #{x 42146}#)
- #{x 42146}#
- (vector
- 'syntax-object
- #{x 42146}#
- #{w 42139}#
- #{mod 42140}#)))))
- #{l 42141}#)
- #f))
- (if (null? #{e 42138}#)
- '()
- (if (if (vector? #{e 42138}#)
- (if (= (vector-length #{e 42138}#) 4)
- (eq? (vector-ref #{e 42138}# 0) 'syntax-object)
+ m1-18690
+ m2-18714)))
+ (let ((m2-18722
+ (cdr w2-18689)))
+ (if (null? m2-18722)
+ s1-18691
+ (append
+ s1-18691
+ m2-18722))))))))
+ (module-18682 (vector-ref x-18662 3)))
+ (vector
+ 'syntax-object
+ expression-18680
+ wrap-18681
+ module-18682))
+ (if (null? x-18662)
+ x-18662
+ (vector
+ 'syntax-object
+ x-18662
+ w-18655
+ mod-18656)))))
+ l-18657)
+ #f))
+ (if (null? e-18654)
+ '()
+ (if (if (vector? e-18654)
+ (if (= (vector-length e-18654) 4)
+ (eq? (vector-ref e-18654 0) 'syntax-object)
+ #f)
#f)
- #f)
- (#{match-each-any 41194}#
- (vector-ref #{e 42138}# 1)
- (let ((#{w2 42239}# (vector-ref #{e 42138}# 2)))
- (let ((#{m1 42240}# (car #{w 42139}#))
- (#{s1 42241}# (cdr #{w 42139}#)))
- (if (null? #{m1 42240}#)
- (if (null? #{s1 42241}#)
- #{w2 42239}#
- (cons (car #{w2 42239}#)
- (let ((#{m2 42252}# (cdr #{w2 42239}#)))
- (if (null? #{m2 42252}#)
- #{s1 42241}#
- (append #{s1 42241}# #{m2 42252}#)))))
- (cons (let ((#{m2 42260}# (car #{w2 42239}#)))
- (if (null? #{m2 42260}#)
- #{m1 42240}#
- (append #{m1 42240}# #{m2 42260}#)))
- (let ((#{m2 42268}# (cdr #{w2 42239}#)))
- (if (null? #{m2 42268}#)
- #{s1 42241}#
- (append #{s1 42241}# #{m2 42268}#)))))))
- #{mod 42140}#)
- #f)))))
- (#{match-empty 41195}#
- (lambda (#{p 42273}# #{r 42274}#)
- (if (null? #{p 42273}#)
- #{r 42274}#
- (if (eq? #{p 42273}# '_)
- #{r 42274}#
- (if (eq? #{p 42273}# 'any)
- (cons '() #{r 42274}#)
- (if (pair? #{p 42273}#)
- (#{match-empty 41195}#
- (car #{p 42273}#)
- (#{match-empty 41195}#
- (cdr #{p 42273}#)
- #{r 42274}#))
- (if (eq? #{p 42273}# 'each-any)
- (cons '() #{r 42274}#)
- (let ((#{atom-key 42275}# (vector-ref #{p 42273}# 0)))
- (if (eqv? #{atom-key 42275}# 'each)
- (#{match-empty 41195}#
- (vector-ref #{p 42273}# 1)
- #{r 42274}#)
- (if (eqv? #{atom-key 42275}# 'each+)
- (#{match-empty 41195}#
- (vector-ref #{p 42273}# 1)
- (#{match-empty 41195}#
- (reverse (vector-ref #{p 42273}# 2))
- (#{match-empty 41195}#
- (vector-ref #{p 42273}# 3)
- #{r 42274}#)))
- (if (if (eqv? #{atom-key 42275}# 'free-id)
- #t
- (eqv? #{atom-key 42275}# 'atom))
- #{r 42274}#
- (if (eqv? #{atom-key 42275}# 'vector)
- (#{match-empty 41195}#
- (vector-ref #{p 42273}# 1)
- #{r 42274}#)))))))))))))
- (#{combine 41196}#
- (lambda (#{r* 42294}# #{r 42295}#)
- (if (null? (car #{r* 42294}#))
- #{r 42295}#
- (cons (map car #{r* 42294}#)
- (#{combine 41196}#
- (map cdr #{r* 42294}#)
- #{r 42295}#)))))
- (#{match* 41197}#
- (lambda (#{e 41227}#
- #{p 41228}#
- #{w 41229}#
- #{r 41230}#
- #{mod 41231}#)
- (if (null? #{p 41228}#)
- (if (null? #{e 41227}#) #{r 41230}# #f)
- (if (pair? #{p 41228}#)
- (if (pair? #{e 41227}#)
- (#{match 41198}#
- (car #{e 41227}#)
- (car #{p 41228}#)
- #{w 41229}#
- (#{match 41198}#
- (cdr #{e 41227}#)
- (cdr #{p 41228}#)
- #{w 41229}#
- #{r 41230}#
- #{mod 41231}#)
- #{mod 41231}#)
- #f)
- (if (eq? #{p 41228}# 'each-any)
- (let ((#{l 41236}#
- (#{match-each-any 41194}#
- #{e 41227}#
- #{w 41229}#
- #{mod 41231}#)))
- (if #{l 41236}#
- (cons #{l 41236}# #{r 41230}#)
- #f))
- (let ((#{atom-key 41241}# (vector-ref #{p 41228}# 0)))
- (if (eqv? #{atom-key 41241}# 'each)
- (if (null? #{e 41227}#)
- (#{match-empty 41195}#
- (vector-ref #{p 41228}# 1)
- #{r 41230}#)
- (let ((#{l 41248}#
- (#{match-each 41192}#
- #{e 41227}#
- (vector-ref #{p 41228}# 1)
- #{w 41229}#
- #{mod 41231}#)))
- (if #{l 41248}#
- (letrec*
- ((#{collect 41251}#
- (lambda (#{l 41308}#)
- (if (null? (car #{l 41308}#))
- #{r 41230}#
- (cons (map car #{l 41308}#)
- (#{collect 41251}#
- (map cdr #{l 41308}#)))))))
- (#{collect 41251}# #{l 41248}#))
- #f)))
- (if (eqv? #{atom-key 41241}# 'each+)
- (call-with-values
- (lambda ()
- (let ((#{x-pat 41317}# (vector-ref #{p 41228}# 1))
- (#{y-pat 41318}# (vector-ref #{p 41228}# 2))
- (#{z-pat 41319}# (vector-ref #{p 41228}# 3)))
+ (match-each-any-17710
+ (vector-ref e-18654 1)
+ (let ((w2-18755 (vector-ref e-18654 2)))
+ (let ((m1-18756 (car w-18655))
+ (s1-18757 (cdr w-18655)))
+ (if (null? m1-18756)
+ (if (null? s1-18757)
+ w2-18755
+ (cons (car w2-18755)
+ (let ((m2-18768 (cdr w2-18755)))
+ (if (null? m2-18768)
+ s1-18757
+ (append s1-18757 m2-18768)))))
+ (cons (let ((m2-18776 (car w2-18755)))
+ (if (null? m2-18776)
+ m1-18756
+ (append m1-18756 m2-18776)))
+ (let ((m2-18784 (cdr w2-18755)))
+ (if (null? m2-18784)
+ s1-18757
+ (append s1-18757 m2-18784)))))))
+ mod-18656)
+ #f)))))
+ (match-empty-17711
+ (lambda (p-18789 r-18790)
+ (if (null? p-18789)
+ r-18790
+ (if (eq? p-18789 '_)
+ r-18790
+ (if (eq? p-18789 'any)
+ (cons '() r-18790)
+ (if (pair? p-18789)
+ (match-empty-17711
+ (car p-18789)
+ (match-empty-17711 (cdr p-18789) r-18790))
+ (if (eq? p-18789 'each-any)
+ (cons '() r-18790)
+ (let ((atom-key-18791 (vector-ref p-18789 0)))
+ (if (eqv? atom-key-18791 'each)
+ (match-empty-17711
+ (vector-ref p-18789 1)
+ r-18790)
+ (if (eqv? atom-key-18791 'each+)
+ (match-empty-17711
+ (vector-ref p-18789 1)
+ (match-empty-17711
+ (reverse (vector-ref p-18789 2))
+ (match-empty-17711
+ (vector-ref p-18789 3)
+ r-18790)))
+ (if (if (eqv? atom-key-18791 'free-id)
+ #t
+ (eqv? atom-key-18791 'atom))
+ r-18790
+ (if (eqv? atom-key-18791 'vector)
+ (match-empty-17711
+ (vector-ref p-18789 1)
+ r-18790)))))))))))))
+ (combine-17712
+ (lambda (r*-18810 r-18811)
+ (if (null? (car r*-18810))
+ r-18811
+ (cons (map car r*-18810)
+ (combine-17712 (map cdr r*-18810) r-18811)))))
+ (match*-17713
+ (lambda (e-17743 p-17744 w-17745 r-17746 mod-17747)
+ (if (null? p-17744)
+ (if (null? e-17743) r-17746 #f)
+ (if (pair? p-17744)
+ (if (pair? e-17743)
+ (match-17714
+ (car e-17743)
+ (car p-17744)
+ w-17745
+ (match-17714
+ (cdr e-17743)
+ (cdr p-17744)
+ w-17745
+ r-17746
+ mod-17747)
+ mod-17747)
+ #f)
+ (if (eq? p-17744 'each-any)
+ (let ((l-17752
+ (match-each-any-17710 e-17743 w-17745 mod-17747)))
+ (if l-17752 (cons l-17752 r-17746) #f))
+ (let ((atom-key-17757 (vector-ref p-17744 0)))
+ (if (eqv? atom-key-17757 'each)
+ (if (null? e-17743)
+ (match-empty-17711
+ (vector-ref p-17744 1)
+ r-17746)
+ (let ((l-17764
+ (match-each-17708
+ e-17743
+ (vector-ref p-17744 1)
+ w-17745
+ mod-17747)))
+ (if l-17764
(letrec*
- ((#{f 41323}#
- (lambda (#{e 41325}# #{w 41326}#)
- (if (pair? #{e 41325}#)
- (call-with-values
- (lambda ()
- (#{f 41323}#
- (cdr #{e 41325}#)
- #{w 41326}#))
- (lambda (#{xr* 41327}#
- #{y-pat 41328}#
- #{r 41329}#)
- (if #{r 41329}#
- (if (null? #{y-pat 41328}#)
- (let ((#{xr 41330}#
- (#{match 41198}#
- (car #{e 41325}#)
- #{x-pat 41317}#
- #{w 41326}#
- '()
- #{mod 41231}#)))
- (if #{xr 41330}#
- (values
- (cons #{xr 41330}#
- #{xr* 41327}#)
- #{y-pat 41328}#
- #{r 41329}#)
- (values #f #f #f)))
- (values
- '()
- (cdr #{y-pat 41328}#)
- (#{match 41198}#
- (car #{e 41325}#)
- (car #{y-pat 41328}#)
- #{w 41326}#
- #{r 41329}#
- #{mod 41231}#)))
- (values #f #f #f))))
- (if (if (vector? #{e 41325}#)
- (if (= (vector-length #{e 41325}#)
- 4)
- (eq? (vector-ref #{e 41325}# 0)
- 'syntax-object)
+ ((collect-17767
+ (lambda (l-17824)
+ (if (null? (car l-17824))
+ r-17746
+ (cons (map car l-17824)
+ (collect-17767
+ (map cdr l-17824)))))))
+ (collect-17767 l-17764))
+ #f)))
+ (if (eqv? atom-key-17757 'each+)
+ (call-with-values
+ (lambda ()
+ (let ((x-pat-17833 (vector-ref p-17744 1))
+ (y-pat-17834 (vector-ref p-17744 2))
+ (z-pat-17835 (vector-ref p-17744 3)))
+ (letrec*
+ ((f-17839
+ (lambda (e-17841 w-17842)
+ (if (pair? e-17841)
+ (call-with-values
+ (lambda ()
+ (f-17839 (cdr e-17841) w-17842))
+ (lambda (xr*-17843
+ y-pat-17844
+ r-17845)
+ (if r-17845
+ (if (null? y-pat-17844)
+ (let ((xr-17846
+ (match-17714
+ (car e-17841)
+ x-pat-17833
+ w-17842
+ '()
+ mod-17747)))
+ (if xr-17846
+ (values
+ (cons xr-17846 xr*-17843)
+ y-pat-17844
+ r-17845)
+ (values #f #f #f)))
+ (values
+ '()
+ (cdr y-pat-17844)
+ (match-17714
+ (car e-17841)
+ (car y-pat-17844)
+ w-17842
+ r-17845
+ mod-17747)))
+ (values #f #f #f))))
+ (if (if (vector? e-17841)
+ (if (= (vector-length e-17841) 4)
+ (eq? (vector-ref e-17841 0)
+ 'syntax-object)
+ #f)
#f)
- #f)
- (#{f 41323}#
- (vector-ref #{e 41325}# 1)
- (let ((#{m1 41356}#
- (car #{w 41326}#))
- (#{s1 41357}#
- (cdr #{w 41326}#)))
- (if (null? #{m1 41356}#)
- (if (null? #{s1 41357}#)
- #{e 41325}#
- (cons (car #{e 41325}#)
- (let ((#{m2 41369}#
- (cdr #{e 41325}#)))
- (if (null? #{m2 41369}#)
- #{s1 41357}#
+ (f-17839
+ (vector-ref e-17841 1)
+ (let ((m1-17872 (car w-17842))
+ (s1-17873 (cdr w-17842)))
+ (if (null? m1-17872)
+ (if (null? s1-17873)
+ e-17841
+ (cons (car e-17841)
+ (let ((m2-17885
+ (cdr e-17841)))
+ (if (null? m2-17885)
+ s1-17873
+ (append
+ s1-17873
+ m2-17885)))))
+ (cons (let ((m2-17895
+ (car e-17841)))
+ (if (null? m2-17895)
+ m1-17872
(append
- #{s1 41357}#
- #{m2 41369}#)))))
- (cons (let ((#{m2 41379}#
- (car #{e 41325}#)))
- (if (null? #{m2 41379}#)
- #{m1 41356}#
- (append
- #{m1 41356}#
- #{m2 41379}#)))
- (let ((#{m2 41389}#
- (cdr #{e 41325}#)))
- (if (null? #{m2 41389}#)
- #{s1 41357}#
- (append
- #{s1 41357}#
- #{m2 41389}#)))))))
- (values
- '()
- #{y-pat 41318}#
- (#{match 41198}#
- #{e 41325}#
- #{z-pat 41319}#
- #{w 41326}#
- #{r 41230}#
- #{mod 41231}#)))))))
- (#{f 41323}# #{e 41227}# #{w 41229}#))))
- (lambda (#{xr* 41399}# #{y-pat 41400}# #{r 41401}#)
- (if #{r 41401}#
- (if (null? #{y-pat 41400}#)
- (if (null? #{xr* 41399}#)
- (#{match-empty 41195}#
- (vector-ref #{p 41228}# 1)
- #{r 41401}#)
- (#{combine 41196}# #{xr* 41399}# #{r 41401}#))
- #f)
- #f)))
- (if (eqv? #{atom-key 41241}# 'free-id)
- (if (if (symbol? #{e 41227}#)
- #t
- (if (if (vector? #{e 41227}#)
- (if (= (vector-length #{e 41227}#) 4)
- (eq? (vector-ref #{e 41227}# 0)
- 'syntax-object)
- #f)
- #f)
- (symbol? (vector-ref #{e 41227}# 1))
- #f))
- (if (#{free-id=? 28259}#
- (if (if (null? (car #{w 41229}#))
- (null? (cdr #{w 41229}#))
+ m1-17872
+ m2-17895)))
+ (let ((m2-17905
+ (cdr e-17841)))
+ (if (null? m2-17905)
+ s1-17873
+ (append
+ s1-17873
+ m2-17905)))))))
+ (values
+ '()
+ y-pat-17834
+ (match-17714
+ e-17841
+ z-pat-17835
+ w-17842
+ r-17746
+ mod-17747)))))))
+ (f-17839 e-17743 w-17745))))
+ (lambda (xr*-17915 y-pat-17916 r-17917)
+ (if r-17917
+ (if (null? y-pat-17916)
+ (if (null? xr*-17915)
+ (match-empty-17711
+ (vector-ref p-17744 1)
+ r-17917)
+ (combine-17712 xr*-17915 r-17917))
+ #f)
+ #f)))
+ (if (eqv? atom-key-17757 'free-id)
+ (if (if (symbol? e-17743)
+ #t
+ (if (if (vector? e-17743)
+ (if (= (vector-length e-17743) 4)
+ (eq? (vector-ref e-17743 0)
+ 'syntax-object)
+ #f)
#f)
- #{e 41227}#
- (if (if (vector? #{e 41227}#)
- (if (= (vector-length #{e 41227}#) 4)
- (eq? (vector-ref #{e 41227}# 0)
- 'syntax-object)
- #f)
+ (symbol? (vector-ref e-17743 1))
+ #f))
+ (if (free-id=?-4574
+ (if (if (null? (car w-17745))
+ (null? (cdr w-17745))
#f)
- (let ((#{expression 41829}#
- (vector-ref #{e 41227}# 1))
- (#{wrap 41830}#
- (let ((#{w2 41840}#
- (vector-ref
- #{e 41227}#
- 2)))
- (let ((#{m1 41841}#
- (car #{w 41229}#))
- (#{s1 41842}#
- (cdr #{w 41229}#)))
- (if (null? #{m1 41841}#)
- (if (null? #{s1 41842}#)
- #{w2 41840}#
- (cons (car #{w2 41840}#)
- (let ((#{m2 41859}#
- (cdr #{w2 41840}#)))
- (if (null? #{m2 41859}#)
- #{s1 41842}#
+ e-17743
+ (if (if (vector? e-17743)
+ (if (= (vector-length e-17743) 4)
+ (eq? (vector-ref e-17743 0)
+ 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-18345
+ (vector-ref e-17743 1))
+ (wrap-18346
+ (let ((w2-18356
+ (vector-ref e-17743 2)))
+ (let ((m1-18357 (car w-17745))
+ (s1-18358
+ (cdr w-17745)))
+ (if (null? m1-18357)
+ (if (null? s1-18358)
+ w2-18356
+ (cons (car w2-18356)
+ (let ((m2-18375
+ (cdr w2-18356)))
+ (if (null? m2-18375)
+ s1-18358
+ (append
+ s1-18358
+ m2-18375)))))
+ (cons (let ((m2-18383
+ (car w2-18356)))
+ (if (null? m2-18383)
+ m1-18357
(append
- #{s1 41842}#
- #{m2 41859}#)))))
- (cons (let ((#{m2 41867}#
- (car #{w2 41840}#)))
- (if (null? #{m2 41867}#)
- #{m1 41841}#
- (append
- #{m1 41841}#
- #{m2 41867}#)))
- (let ((#{m2 41875}#
- (cdr #{w2 41840}#)))
- (if (null? #{m2 41875}#)
- #{s1 41842}#
- (append
- #{s1 41842}#
- #{m2 41875}#))))))))
- (#{module 41831}#
- (vector-ref #{e 41227}# 3)))
- (vector
- 'syntax-object
- #{expression 41829}#
- #{wrap 41830}#
- #{module 41831}#))
- (if (null? #{e 41227}#)
- #{e 41227}#
- (vector
- 'syntax-object
- #{e 41227}#
- #{w 41229}#
- #{mod 41231}#))))
- (vector-ref #{p 41228}# 1))
- #{r 41230}#
- #f)
- #f)
- (if (eqv? #{atom-key 41241}# 'atom)
- (if (equal?
- (vector-ref #{p 41228}# 1)
- (#{strip 28284}# #{e 41227}# #{w 41229}#))
- #{r 41230}#
- #f)
- (if (eqv? #{atom-key 41241}# 'vector)
- (if (vector? #{e 41227}#)
- (#{match 41198}#
- (vector->list #{e 41227}#)
- (vector-ref #{p 41228}# 1)
- #{w 41229}#
- #{r 41230}#
- #{mod 41231}#)
- #f))))))))))))
- (#{match 41198}#
- (lambda (#{e 41908}#
- #{p 41909}#
- #{w 41910}#
- #{r 41911}#
- #{mod 41912}#)
- (if (not #{r 41911}#)
- #f
- (if (eq? #{p 41909}# '_)
- #{r 41911}#
- (if (eq? #{p 41909}# 'any)
- (cons (if (if (null? (car #{w 41910}#))
- (null? (cdr #{w 41910}#))
+ m1-18357
+ m2-18383)))
+ (let ((m2-18391
+ (cdr w2-18356)))
+ (if (null? m2-18391)
+ s1-18358
+ (append
+ s1-18358
+ m2-18391))))))))
+ (module-18347
+ (vector-ref e-17743 3)))
+ (vector
+ 'syntax-object
+ expression-18345
+ wrap-18346
+ module-18347))
+ (if (null? e-17743)
+ e-17743
+ (vector
+ 'syntax-object
+ e-17743
+ w-17745
+ mod-17747))))
+ (vector-ref p-17744 1))
+ r-17746
+ #f)
#f)
- #{e 41908}#
- (if (if (vector? #{e 41908}#)
- (if (= (vector-length #{e 41908}#) 4)
- (eq? (vector-ref #{e 41908}# 0)
- 'syntax-object)
- #f)
+ (if (eqv? atom-key-17757 'atom)
+ (if (equal?
+ (vector-ref p-17744 1)
+ (strip-4599 e-17743 w-17745))
+ r-17746
+ #f)
+ (if (eqv? atom-key-17757 'vector)
+ (if (vector? e-17743)
+ (match-17714
+ (vector->list e-17743)
+ (vector-ref p-17744 1)
+ w-17745
+ r-17746
+ mod-17747)
+ #f))))))))))))
+ (match-17714
+ (lambda (e-18424 p-18425 w-18426 r-18427 mod-18428)
+ (if (not r-18427)
+ #f
+ (if (eq? p-18425 '_)
+ r-18427
+ (if (eq? p-18425 'any)
+ (cons (if (if (null? (car w-18426))
+ (null? (cdr w-18426))
#f)
- (let ((#{expression 41942}#
- (vector-ref #{e 41908}# 1))
- (#{wrap 41943}#
- (let ((#{w2 41953}#
- (vector-ref #{e 41908}# 2)))
- (let ((#{m1 41954}# (car #{w 41910}#))
- (#{s1 41955}# (cdr #{w 41910}#)))
- (if (null? #{m1 41954}#)
- (if (null? #{s1 41955}#)
- #{w2 41953}#
- (cons (car #{w2 41953}#)
- (let ((#{m2 41972}#
- (cdr #{w2 41953}#)))
- (if (null? #{m2 41972}#)
- #{s1 41955}#
+ e-18424
+ (if (if (vector? e-18424)
+ (if (= (vector-length e-18424) 4)
+ (eq? (vector-ref e-18424 0) 'syntax-object)
+ #f)
+ #f)
+ (let ((expression-18458 (vector-ref e-18424 1))
+ (wrap-18459
+ (let ((w2-18469 (vector-ref e-18424 2)))
+ (let ((m1-18470 (car w-18426))
+ (s1-18471 (cdr w-18426)))
+ (if (null? m1-18470)
+ (if (null? s1-18471)
+ w2-18469
+ (cons (car w2-18469)
+ (let ((m2-18488
+ (cdr w2-18469)))
+ (if (null? m2-18488)
+ s1-18471
+ (append
+ s1-18471
+ m2-18488)))))
+ (cons (let ((m2-18496
+ (car w2-18469)))
+ (if (null? m2-18496)
+ m1-18470
(append
- #{s1 41955}#
- #{m2 41972}#)))))
- (cons (let ((#{m2 41980}#
- (car #{w2 41953}#)))
- (if (null? #{m2 41980}#)
- #{m1 41954}#
- (append
- #{m1 41954}#
- #{m2 41980}#)))
- (let ((#{m2 41988}#
- (cdr #{w2 41953}#)))
- (if (null? #{m2 41988}#)
- #{s1 41955}#
- (append
- #{s1 41955}#
- #{m2 41988}#))))))))
- (#{module 41944}# (vector-ref #{e 41908}# 3)))
- (vector
- 'syntax-object
- #{expression 41942}#
- #{wrap 41943}#
- #{module 41944}#))
- (if (null? #{e 41908}#)
- #{e 41908}#
- (vector
- 'syntax-object
- #{e 41908}#
- #{w 41910}#
- #{mod 41912}#))))
- #{r 41911}#)
- (if (if (vector? #{e 41908}#)
- (if (= (vector-length #{e 41908}#) 4)
- (eq? (vector-ref #{e 41908}# 0) 'syntax-object)
+ m1-18470
+ m2-18496)))
+ (let ((m2-18504
+ (cdr w2-18469)))
+ (if (null? m2-18504)
+ s1-18471
+ (append
+ s1-18471
+ m2-18504))))))))
+ (module-18460 (vector-ref e-18424 3)))
+ (vector
+ 'syntax-object
+ expression-18458
+ wrap-18459
+ module-18460))
+ (if (null? e-18424)
+ e-18424
+ (vector
+ 'syntax-object
+ e-18424
+ w-18426
+ mod-18428))))
+ r-18427)
+ (if (if (vector? e-18424)
+ (if (= (vector-length e-18424) 4)
+ (eq? (vector-ref e-18424 0) 'syntax-object)
+ #f)
#f)
- #f)
- (#{match* 41197}#
- (vector-ref #{e 41908}# 1)
- #{p 41909}#
- (let ((#{w2 42031}# (vector-ref #{e 41908}# 2)))
- (let ((#{m1 42032}# (car #{w 41910}#))
- (#{s1 42033}# (cdr #{w 41910}#)))
- (if (null? #{m1 42032}#)
- (if (null? #{s1 42033}#)
- #{w2 42031}#
- (cons (car #{w2 42031}#)
- (let ((#{m2 42044}# (cdr #{w2 42031}#)))
- (if (null? #{m2 42044}#)
- #{s1 42033}#
- (append #{s1 42033}# #{m2 42044}#)))))
- (cons (let ((#{m2 42052}# (car #{w2 42031}#)))
- (if (null? #{m2 42052}#)
- #{m1 42032}#
- (append #{m1 42032}# #{m2 42052}#)))
- (let ((#{m2 42060}# (cdr #{w2 42031}#)))
- (if (null? #{m2 42060}#)
- #{s1 42033}#
- (append #{s1 42033}# #{m2 42060}#)))))))
- #{r 41911}#
- (vector-ref #{e 41908}# 3))
- (#{match* 41197}#
- #{e 41908}#
- #{p 41909}#
- #{w 41910}#
- #{r 41911}#
- #{mod 41912}#))))))))
- (set! $sc-dispatch
- (lambda (#{e 41199}# #{p 41200}#)
- (if (eq? #{p 41200}# 'any)
- (list #{e 41199}#)
- (if (eq? #{p 41200}# '_)
- '()
- (if (if (vector? #{e 41199}#)
- (if (= (vector-length #{e 41199}#) 4)
- (eq? (vector-ref #{e 41199}# 0) 'syntax-object)
+ (match*-17713
+ (vector-ref e-18424 1)
+ p-18425
+ (let ((w2-18547 (vector-ref e-18424 2)))
+ (let ((m1-18548 (car w-18426))
+ (s1-18549 (cdr w-18426)))
+ (if (null? m1-18548)
+ (if (null? s1-18549)
+ w2-18547
+ (cons (car w2-18547)
+ (let ((m2-18560 (cdr w2-18547)))
+ (if (null? m2-18560)
+ s1-18549
+ (append s1-18549 m2-18560)))))
+ (cons (let ((m2-18568 (car w2-18547)))
+ (if (null? m2-18568)
+ m1-18548
+ (append m1-18548 m2-18568)))
+ (let ((m2-18576 (cdr w2-18547)))
+ (if (null? m2-18576)
+ s1-18549
+ (append s1-18549 m2-18576)))))))
+ r-18427
+ (vector-ref e-18424 3))
+ (match*-17713
+ e-18424
+ p-18425
+ w-18426
+ r-18427
+ mod-18428))))))))
+ (set! $sc-dispatch
+ (lambda (e-17715 p-17716)
+ (if (eq? p-17716 'any)
+ (list e-17715)
+ (if (eq? p-17716 '_)
+ '()
+ (if (if (vector? e-17715)
+ (if (= (vector-length e-17715) 4)
+ (eq? (vector-ref e-17715 0) 'syntax-object)
+ #f)
#f)
- #f)
- (#{match* 41197}#
- (vector-ref #{e 41199}# 1)
- #{p 41200}#
- (vector-ref #{e 41199}# 2)
- '()
- (vector-ref #{e 41199}# 3))
- (#{match* 41197}#
- #{e 41199}#
- #{p 41200}#
- '(())
- '()
- #f)))))))))
+ (match*-17713
+ (vector-ref e-17715 1)
+ p-17716
+ (vector-ref e-17715 2)
+ '()
+ (vector-ref e-17715 3))
+ (match*-17713 e-17715 p-17716 '(()) '() #f))))))))))
(define with-syntax
(make-syntax-transformer
'with-syntax
'macro
- (lambda (#{x 59996}#)
- (let ((#{tmp 59998}#
- ($sc-dispatch #{x 59996}# '(_ () any . each-any))))
- (if #{tmp 59998}#
+ (lambda (x-37252)
+ (let ((tmp-37254
+ ($sc-dispatch x-37252 '(_ () any . each-any))))
+ (if tmp-37254
(@apply
- (lambda (#{e1 60002}# #{e2 60003}#)
+ (lambda (e1-37258 e2-37259)
(cons '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i59969" "i59970"))
+ #("l-*-37225" "l-*-37226"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i59966"))
+ #(ribcage #(x) #((top)) #("l-*-37222"))
#(ribcage
(with-syntax)
((top))
@@ -17811,27 +17884,27 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons '() (cons #{e1 60002}# #{e2 60003}#))))
- #{tmp 59998}#)
- (let ((#{tmp 60004}#
+ (cons '() (cons e1-37258 e2-37259))))
+ tmp-37254)
+ (let ((tmp-37260
($sc-dispatch
- #{x 59996}#
+ x-37252
'(_ ((any any)) any . each-any))))
- (if #{tmp 60004}#
+ (if tmp-37260
(@apply
- (lambda (#{out 60008}#
- #{in 60009}#
- #{e1 60010}#
- #{e2 60011}#)
+ (lambda (out-37264 in-37265 e1-37266 e2-37267)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i59975" "i59976" "i59977" "i59978"))
+ #("l-*-37231"
+ "l-*-37232"
+ "l-*-37233"
+ "l-*-37234"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i59966"))
+ #(ribcage #(x) #((top)) #("l-*-37222"))
#(ribcage
(with-syntax)
((top))
@@ -17842,21 +17915,21 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{in 60009}#
+ in-37265
'()
- (list #{out 60008}#
+ (list out-37264
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i59975"
- "i59976"
- "i59977"
- "i59978"))
+ #("l-*-37231"
+ "l-*-37232"
+ "l-*-37233"
+ "l-*-37234"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i59966"))
+ #(ribcage #(x) #((top)) #("l-*-37222"))
#(ribcage
(with-syntax)
((top))
@@ -17867,28 +17940,27 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons '()
- (cons #{e1 60010}# #{e2 60011}#))))))
- #{tmp 60004}#)
- (let ((#{tmp 60012}#
+ (cons '() (cons e1-37266 e2-37267))))))
+ tmp-37260)
+ (let ((tmp-37268
($sc-dispatch
- #{x 59996}#
+ x-37252
'(_ #(each (any any)) any . each-any))))
- (if #{tmp 60012}#
+ (if tmp-37268
(@apply
- (lambda (#{out 60016}#
- #{in 60017}#
- #{e1 60018}#
- #{e2 60019}#)
+ (lambda (out-37272 in-37273 e1-37274 e2-37275)
(list '#(syntax-object
syntax-case
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i59985" "i59986" "i59987" "i59988"))
+ #("l-*-37241"
+ "l-*-37242"
+ "l-*-37243"
+ "l-*-37244"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i59966"))
+ #(ribcage #(x) #((top)) #("l-*-37222"))
#(ribcage
(with-syntax)
((top))
@@ -17905,9 +17977,12 @@
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i59985" "i59986" "i59987" "i59988"))
+ #("l-*-37241"
+ "l-*-37242"
+ "l-*-37243"
+ "l-*-37244"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i59966"))
+ #(ribcage #(x) #((top)) #("l-*-37222"))
#(ribcage
(with-syntax)
((top))
@@ -17918,24 +17993,24 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{in 60017}#)
+ in-37273)
'()
- (list #{out 60016}#
+ (list out-37272
(cons '#(syntax-object
let
((top)
#(ribcage
#(out in e1 e2)
#((top) (top) (top) (top))
- #("i59985"
- "i59986"
- "i59987"
- "i59988"))
+ #("l-*-37241"
+ "l-*-37242"
+ "l-*-37243"
+ "l-*-37244"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i59966"))
+ #("l-*-37222"))
#(ribcage
(with-syntax)
((top))
@@ -17946,39 +18021,40 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons '()
- (cons #{e1 60018}#
- #{e2 60019}#))))))
- #{tmp 60012}#)
+ (cons '() (cons e1-37274 e2-37275))))))
+ tmp-37268)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 59996}#))))))))))
+ x-37252))))))))))
(define syntax-rules
(make-syntax-transformer
'syntax-rules
'macro
- (lambda (#{x 60074}#)
- (let ((#{tmp 60076}#
+ (lambda (x-37330)
+ (let ((tmp-37332
($sc-dispatch
- #{x 60074}#
+ x-37330
'(_ each-any . #(each ((any . any) any))))))
- (if #{tmp 60076}#
+ (if tmp-37332
(@apply
- (lambda (#{k 60080}#
- #{keyword 60081}#
- #{pattern 60082}#
- #{template 60083}#)
+ (lambda (k-37336
+ keyword-37337
+ pattern-37338
+ template-37339)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i60037" "i60038" "i60039" "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -17995,9 +18071,12 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i60037" "i60038" "i60039" "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18015,9 +18094,12 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i60037" "i60038" "i60039" "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18035,9 +18117,12 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i60037" "i60038" "i60039" "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18054,9 +18139,12 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i60037" "i60038" "i60039" "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18067,16 +18155,19 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{pattern 60082}#))
+ pattern-37338))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i60037" "i60038" "i60039" "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18093,9 +18184,12 @@
#(ribcage
#(k keyword pattern template)
#((top) (top) (top) (top))
- #("i60037" "i60038" "i60039" "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18106,9 +18200,9 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{k 60080}#
- (map (lambda (#{tmp 60048 60084}#
- #{tmp 60047 60085}#)
+ (cons k-37336
+ (map (lambda (tmp-37304-37340
+ tmp-37303-37341)
(list (cons '#(syntax-object
_
((top)
@@ -18121,10 +18215,10 @@
(top)
(top)
(top))
- #("i60037"
- "i60038"
- "i60039"
- "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage
()
()
@@ -18132,7 +18226,7 @@
#(ribcage
#(x)
#((top))
- #("i60034"))
+ #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18145,7 +18239,7 @@
(hygiene
guile))))))
(hygiene guile))
- #{tmp 60047 60085}#)
+ tmp-37303-37341)
(list '#(syntax-object
syntax
((top)
@@ -18158,10 +18252,10 @@
(top)
(top)
(top))
- #("i60037"
- "i60038"
- "i60039"
- "i60040"))
+ #("l-*-37293"
+ "l-*-37294"
+ "l-*-37295"
+ "l-*-37296"))
#(ribcage
()
()
@@ -18169,7 +18263,7 @@
#(ribcage
#(x)
#((top))
- #("i60034"))
+ #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18182,39 +18276,43 @@
(hygiene
guile))))))
(hygiene guile))
- #{tmp 60048 60084}#)))
- #{template 60083}#
- #{pattern 60082}#))))))
- #{tmp 60076}#)
- (let ((#{tmp 60086}#
+ tmp-37304-37340)))
+ template-37339
+ pattern-37338))))))
+ tmp-37332)
+ (let ((tmp-37342
($sc-dispatch
- #{x 60074}#
+ x-37330
'(_ each-any any . #(each ((any . any) any))))))
- (if (if #{tmp 60086}#
+ (if (if tmp-37342
(@apply
- (lambda (#{k 60090}#
- #{docstring 60091}#
- #{keyword 60092}#
- #{pattern 60093}#
- #{template 60094}#)
- (string? (syntax->datum #{docstring 60091}#)))
- #{tmp 60086}#)
+ (lambda (k-37346
+ docstring-37347
+ keyword-37348
+ pattern-37349
+ template-37350)
+ (string? (syntax->datum docstring-37347)))
+ tmp-37342)
#f)
(@apply
- (lambda (#{k 60095}#
- #{docstring 60096}#
- #{keyword 60097}#
- #{pattern 60098}#
- #{template 60099}#)
+ (lambda (k-37351
+ docstring-37352
+ keyword-37353
+ pattern-37354
+ template-37355)
(list '#(syntax-object
lambda
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i60060" "i60061" "i60062" "i60063" "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18231,9 +18329,13 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i60060" "i60061" "i60062" "i60063" "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18244,7 +18346,7 @@
((top))
(hygiene guile))))))
(hygiene guile)))
- #{docstring 60096}#
+ docstring-37352
(vector
'(#(syntax-object
macro-type
@@ -18252,13 +18354,13 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i60060"
- "i60061"
- "i60062"
- "i60063"
- "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18276,13 +18378,13 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i60060"
- "i60061"
- "i60062"
- "i60063"
- "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18299,13 +18401,13 @@
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i60060"
- "i60061"
- "i60062"
- "i60063"
- "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18316,20 +18418,20 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{pattern 60098}#))
+ pattern-37354))
(cons '#(syntax-object
syntax-case
((top)
#(ribcage
#(k docstring keyword pattern template)
#((top) (top) (top) (top) (top))
- #("i60060"
- "i60061"
- "i60062"
- "i60063"
- "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18350,13 +18452,13 @@
pattern
template)
#((top) (top) (top) (top) (top))
- #("i60060"
- "i60061"
- "i60062"
- "i60063"
- "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60034"))
+ #(ribcage #(x) #((top)) #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18367,9 +18469,9 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{k 60095}#
- (map (lambda (#{tmp 60073 60100}#
- #{tmp 60072 60101}#)
+ (cons k-37351
+ (map (lambda (tmp-37329-37356
+ tmp-37328-37357)
(list (cons '#(syntax-object
_
((top)
@@ -18384,11 +18486,11 @@
(top)
(top)
(top))
- #("i60060"
- "i60061"
- "i60062"
- "i60063"
- "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage
()
()
@@ -18396,7 +18498,7 @@
#(ribcage
#(x)
#((top))
- #("i60034"))
+ #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18410,7 +18512,7 @@
guile))))))
(hygiene
guile))
- #{tmp 60072 60101}#)
+ tmp-37328-37357)
(list '#(syntax-object
syntax
((top)
@@ -18425,11 +18527,11 @@
(top)
(top)
(top))
- #("i60060"
- "i60061"
- "i60062"
- "i60063"
- "i60064"))
+ #("l-*-37316"
+ "l-*-37317"
+ "l-*-37318"
+ "l-*-37319"
+ "l-*-37320"))
#(ribcage
()
()
@@ -18437,7 +18539,7 @@
#(ribcage
#(x)
#((top))
- #("i60034"))
+ #("l-*-37290"))
#(ribcage
(syntax-rules)
((top))
@@ -18451,36 +18553,34 @@
guile))))))
(hygiene
guile))
- #{tmp 60073 60100}#)))
- #{template 60099}#
- #{pattern 60098}#))))))
- #{tmp 60086}#)
+ tmp-37329-37356)))
+ template-37355
+ pattern-37354))))))
+ tmp-37342)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 60074}#))))))))
+ x-37330))))))))
(define define-syntax-rule
(make-syntax-transformer
'define-syntax-rule
'macro
- (lambda (#{x 60139}#)
- (let ((#{tmp 60141}#
- ($sc-dispatch #{x 60139}# '(_ (any . any) any))))
- (if #{tmp 60141}#
+ (lambda (x-37395)
+ (let ((tmp-37397
+ ($sc-dispatch x-37395 '(_ (any . any) any))))
+ (if tmp-37397
(@apply
- (lambda (#{name 60145}#
- #{pattern 60146}#
- #{template 60147}#)
+ (lambda (name-37401 pattern-37402 template-37403)
(list '#(syntax-object
define-syntax
((top)
#(ribcage
#(name pattern template)
#((top) (top) (top))
- #("i60116" "i60117" "i60118"))
+ #("l-*-37372" "l-*-37373" "l-*-37374"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60113"))
+ #(ribcage #(x) #((top)) #("l-*-37369"))
#(ribcage
(define-syntax-rule)
((top))
@@ -18491,16 +18591,16 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{name 60145}#
+ name-37401
(list '#(syntax-object
syntax-rules
((top)
#(ribcage
#(name pattern template)
#((top) (top) (top))
- #("i60116" "i60117" "i60118"))
+ #("l-*-37372" "l-*-37373" "l-*-37374"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60113"))
+ #(ribcage #(x) #((top)) #("l-*-37369"))
#(ribcage
(define-syntax-rule)
((top))
@@ -18518,9 +18618,14 @@
#(ribcage
#(name pattern template)
#((top) (top) (top))
- #("i60116" "i60117" "i60118"))
+ #("l-*-37372"
+ "l-*-37373"
+ "l-*-37374"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60113"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-37369"))
#(ribcage
(define-syntax-rule)
((top))
@@ -18531,36 +18636,37 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{pattern 60146}#)
- #{template 60147}#))))
- #{tmp 60141}#)
- (let ((#{tmp 60148}#
- ($sc-dispatch
- #{x 60139}#
- '(_ (any . any) any any))))
- (if (if #{tmp 60148}#
+ pattern-37402)
+ template-37403))))
+ tmp-37397)
+ (let ((tmp-37404
+ ($sc-dispatch x-37395 '(_ (any . any) any any))))
+ (if (if tmp-37404
(@apply
- (lambda (#{name 60152}#
- #{pattern 60153}#
- #{docstring 60154}#
- #{template 60155}#)
- (string? (syntax->datum #{docstring 60154}#)))
- #{tmp 60148}#)
+ (lambda (name-37408
+ pattern-37409
+ docstring-37410
+ template-37411)
+ (string? (syntax->datum docstring-37410)))
+ tmp-37404)
#f)
(@apply
- (lambda (#{name 60156}#
- #{pattern 60157}#
- #{docstring 60158}#
- #{template 60159}#)
+ (lambda (name-37412
+ pattern-37413
+ docstring-37414
+ template-37415)
(list '#(syntax-object
define-syntax
((top)
#(ribcage
#(name pattern docstring template)
#((top) (top) (top) (top))
- #("i60131" "i60132" "i60133" "i60134"))
+ #("l-*-37387"
+ "l-*-37388"
+ "l-*-37389"
+ "l-*-37390"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60113"))
+ #(ribcage #(x) #((top)) #("l-*-37369"))
#(ribcage
(define-syntax-rule)
((top))
@@ -18571,16 +18677,19 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{name 60156}#
+ name-37412
(list '#(syntax-object
syntax-rules
((top)
#(ribcage
#(name pattern docstring template)
#((top) (top) (top) (top))
- #("i60131" "i60132" "i60133" "i60134"))
+ #("l-*-37387"
+ "l-*-37388"
+ "l-*-37389"
+ "l-*-37390"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60113"))
+ #(ribcage #(x) #((top)) #("l-*-37369"))
#(ribcage
(define-syntax-rule)
((top))
@@ -18592,7 +18701,7 @@
(hygiene guile))))))
(hygiene guile))
'()
- #{docstring 60158}#
+ docstring-37414
(list (cons '#(syntax-object
_
((top)
@@ -18602,15 +18711,15 @@
docstring
template)
#((top) (top) (top) (top))
- #("i60131"
- "i60132"
- "i60133"
- "i60134"))
+ #("l-*-37387"
+ "l-*-37388"
+ "l-*-37389"
+ "l-*-37390"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i60113"))
+ #("l-*-37369"))
#(ribcage
(define-syntax-rule)
((top))
@@ -18621,43 +18730,35 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{pattern 60157}#)
- #{template 60159}#))))
- #{tmp 60148}#)
+ pattern-37413)
+ template-37415))))
+ tmp-37404)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 60139}#))))))))
+ x-37395))))))))
(define let*
(make-syntax-transformer
'let*
'macro
- (lambda (#{x 60209}#)
- (let ((#{tmp 60211}#
+ (lambda (x-37465)
+ (let ((tmp-37467
($sc-dispatch
- #{x 60209}#
+ x-37465
'(any #(each (any any)) any . each-any))))
- (if (if #{tmp 60211}#
+ (if (if tmp-37467
(@apply
- (lambda (#{let* 60215}#
- #{x 60216}#
- #{v 60217}#
- #{e1 60218}#
- #{e2 60219}#)
- (and-map identifier? #{x 60216}#))
- #{tmp 60211}#)
+ (lambda (let*-37471 x-37472 v-37473 e1-37474 e2-37475)
+ (and-map identifier? x-37472))
+ tmp-37467)
#f)
(@apply
- (lambda (#{let* 60220}#
- #{x 60221}#
- #{v 60222}#
- #{e1 60223}#
- #{e2 60224}#)
+ (lambda (let*-37476 x-37477 v-37478 e1-37479 e2-37480)
(letrec*
- ((#{f 60225}#
- (lambda (#{bindings 60228}#)
- (if (null? #{bindings 60228}#)
+ ((f-37481
+ (lambda (bindings-37484)
+ (if (null? bindings-37484)
(cons '#(syntax-object
let
((top)
@@ -18665,17 +18766,17 @@
#(ribcage
#(f bindings)
#((top) (top))
- #("i60195" "i60196"))
+ #("l-*-37451" "l-*-37452"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
- #("i60185"
- "i60186"
- "i60187"
- "i60188"
- "i60189"))
+ #("l-*-37441"
+ "l-*-37442"
+ "l-*-37443"
+ "l-*-37444"
+ "l-*-37445"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60171"))
+ #(ribcage #(x) #((top)) #("l-*-37427"))
#(ribcage
(let*)
((top))
@@ -18686,15 +18787,14 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons '() (cons #{e1 60223}# #{e2 60224}#)))
- (let ((#{tmp 60229}#
- (list (#{f 60225}# (cdr #{bindings 60228}#))
- (car #{bindings 60228}#))))
- (let ((#{tmp 60230}#
- ($sc-dispatch #{tmp 60229}# '(any any))))
- (if #{tmp 60230}#
+ (cons '() (cons e1-37479 e2-37480)))
+ (let ((tmp-37485
+ (list (f-37481 (cdr bindings-37484))
+ (car bindings-37484))))
+ (let ((tmp-37486 ($sc-dispatch tmp-37485 '(any any))))
+ (if tmp-37486
(@apply
- (lambda (#{body 60232}# #{binding 60233}#)
+ (lambda (body-37488 binding-37489)
(list '#(syntax-object
let
((top)
@@ -18702,22 +18802,25 @@
#(ribcage
#(body binding)
#((top) (top))
- #("i60205" "i60206"))
+ #("l-*-37461" "l-*-37462"))
#(ribcage () () ())
#(ribcage
#(f bindings)
#((top) (top))
- #("i60195" "i60196"))
+ #("l-*-37451" "l-*-37452"))
#(ribcage
#(let* x v e1 e2)
#((top) (top) (top) (top) (top))
- #("i60185"
- "i60186"
- "i60187"
- "i60188"
- "i60189"))
+ #("l-*-37441"
+ "l-*-37442"
+ "l-*-37443"
+ "l-*-37444"
+ "l-*-37445"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60171"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-37427"))
#(ribcage
(let*)
((top))
@@ -18728,66 +18831,64 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (list #{binding 60233}#)
- #{body 60232}#))
- #{tmp 60230}#)
+ (list binding-37489)
+ body-37488))
+ tmp-37486)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 60229}#))))))))
- (#{f 60225}# (map list #{x 60221}# #{v 60222}#))))
- #{tmp 60211}#)
+ tmp-37485))))))))
+ (f-37481 (map list x-37477 v-37478))))
+ tmp-37467)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 60209}#))))))
+ x-37465))))))
(define do
(make-syntax-transformer
'do
'macro
- (lambda (#{orig-x 60292}#)
- (let ((#{tmp 60294}#
+ (lambda (orig-x-37548)
+ (let ((tmp-37550
($sc-dispatch
- #{orig-x 60292}#
+ orig-x-37548
'(_ #(each (any any . any))
(any . each-any)
.
each-any))))
- (if #{tmp 60294}#
+ (if tmp-37550
(@apply
- (lambda (#{var 60298}#
- #{init 60299}#
- #{step 60300}#
- #{e0 60301}#
- #{e1 60302}#
- #{c 60303}#)
- (let ((#{tmp 60304}#
- (map (lambda (#{v 60307}# #{s 60308}#)
- (let ((#{tmp 60310}#
- ($sc-dispatch #{s 60308}# '())))
- (if #{tmp 60310}#
- (@apply (lambda () #{v 60307}#) #{tmp 60310}#)
- (let ((#{tmp 60313}#
- ($sc-dispatch #{s 60308}# '(any))))
- (if #{tmp 60313}#
+ (lambda (var-37554
+ init-37555
+ step-37556
+ e0-37557
+ e1-37558
+ c-37559)
+ (let ((tmp-37560
+ (map (lambda (v-37563 s-37564)
+ (let ((tmp-37566 ($sc-dispatch s-37564 '())))
+ (if tmp-37566
+ (@apply (lambda () v-37563) tmp-37566)
+ (let ((tmp-37569
+ ($sc-dispatch s-37564 '(any))))
+ (if tmp-37569
(@apply
- (lambda (#{e 60316}#) #{e 60316}#)
- #{tmp 60313}#)
+ (lambda (e-37572) e-37572)
+ tmp-37569)
(syntax-violation
'do
"bad step expression"
- #{orig-x 60292}#
- #{s 60308}#))))))
- #{var 60298}#
- #{step 60300}#)))
- (let ((#{tmp 60305}#
- ($sc-dispatch #{tmp 60304}# 'each-any)))
- (if #{tmp 60305}#
+ orig-x-37548
+ s-37564))))))
+ var-37554
+ step-37556)))
+ (let ((tmp-37561 ($sc-dispatch tmp-37560 'each-any)))
+ (if tmp-37561
(@apply
- (lambda (#{step 60322}#)
- (let ((#{tmp 60324}# ($sc-dispatch #{e1 60302}# '())))
- (if #{tmp 60324}#
+ (lambda (step-37578)
+ (let ((tmp-37580 ($sc-dispatch e1-37558 '())))
+ (if tmp-37580
(@apply
(lambda ()
(list '#(syntax-object
@@ -18797,7 +18898,7 @@
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -18806,17 +18907,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -18834,7 +18935,7 @@
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -18843,17 +18944,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -18864,7 +18965,7 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (map list #{var 60298}# #{init 60299}#)
+ (map list var-37554 init-37555)
(list '#(syntax-object
if
((top)
@@ -18872,7 +18973,7 @@
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -18881,17 +18982,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -18909,7 +19010,7 @@
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var
init
@@ -18923,17 +19024,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -18945,7 +19046,7 @@
(hygiene
guile))))))
(hygiene guile))
- #{e0 60301}#)
+ e0-37557)
(cons '#(syntax-object
begin
((top)
@@ -18953,7 +19054,7 @@
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var
init
@@ -18967,17 +19068,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -18990,7 +19091,7 @@
guile))))))
(hygiene guile))
(append
- #{c 60303}#
+ c-37559
(list (cons '#(syntax-object
doloop
((top)
@@ -19001,7 +19102,7 @@
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var
init
@@ -19015,12 +19116,12 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage
()
()
@@ -19028,7 +19129,7 @@
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -19042,27 +19143,25 @@
guile))))))
(hygiene
guile))
- #{step 60322}#)))))))
- #{tmp 60324}#)
- (let ((#{tmp 60328}#
- ($sc-dispatch
- #{e1 60302}#
- '(any . each-any))))
- (if #{tmp 60328}#
+ step-37578)))))))
+ tmp-37580)
+ (let ((tmp-37584
+ ($sc-dispatch e1-37558 '(any . each-any))))
+ (if tmp-37584
(@apply
- (lambda (#{e1 60332}# #{e2 60333}#)
+ (lambda (e1-37588 e2-37589)
(list '#(syntax-object
let
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i60269" "i60270"))
+ #("l-*-37525" "l-*-37526"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -19071,17 +19170,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -19098,12 +19197,12 @@
#(ribcage
#(e1 e2)
#((top) (top))
- #("i60269" "i60270"))
+ #("l-*-37525" "l-*-37526"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -19112,17 +19211,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -19133,21 +19232,20 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (map list
- #{var 60298}#
- #{init 60299}#)
+ (map list var-37554 init-37555)
(list '#(syntax-object
if
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i60269" "i60270"))
+ #("l-*-37525"
+ "l-*-37526"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var init step e0 e1 c)
#((top)
@@ -19156,17 +19254,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -19177,20 +19275,20 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{e0 60301}#
+ e0-37557
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i60269"
- "i60270"))
+ #("l-*-37525"
+ "l-*-37526"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var
init
@@ -19204,17 +19302,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -19226,21 +19324,20 @@
(hygiene
guile))))))
(hygiene guile))
- (cons #{e1 60332}#
- #{e2 60333}#))
+ (cons e1-37588 e2-37589))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i60269"
- "i60270"))
+ #("l-*-37525"
+ "l-*-37526"))
#(ribcage () () ())
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var
init
@@ -19254,17 +19351,17 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage () () ())
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -19277,7 +19374,7 @@
guile))))))
(hygiene guile))
(append
- #{c 60303}#
+ c-37559
(list (cons '#(syntax-object
doloop
((top)
@@ -19286,8 +19383,8 @@
e2)
#((top)
(top))
- #("i60269"
- "i60270"))
+ #("l-*-37525"
+ "l-*-37526"))
#(ribcage
()
()
@@ -19295,7 +19392,7 @@
#(ribcage
#(step)
#((top))
- #("i60260"))
+ #("l-*-37516"))
#(ribcage
#(var
init
@@ -19309,12 +19406,12 @@
(top)
(top)
(top))
- #("i60245"
- "i60246"
- "i60247"
- "i60248"
- "i60249"
- "i60250"))
+ #("l-*-37501"
+ "l-*-37502"
+ "l-*-37503"
+ "l-*-37504"
+ "l-*-37505"
+ "l-*-37506"))
#(ribcage
()
()
@@ -19322,7 +19419,7 @@
#(ribcage
#(orig-x)
#((top))
- #("i60242"))
+ #("l-*-37498"))
#(ribcage
(do)
((top))
@@ -19336,33 +19433,33 @@
guile))))))
(hygiene
guile))
- #{step 60322}#)))))))
- #{tmp 60328}#)
+ step-37578)))))))
+ tmp-37584)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{e1 60302}#))))))
- #{tmp 60305}#)
+ e1-37558))))))
+ tmp-37561)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 60304}#)))))
- #{tmp 60294}#)
+ tmp-37560)))))
+ tmp-37550)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{orig-x 60292}#))))))
+ orig-x-37548))))))
(define quasiquote
(make-syntax-transformer
'quasiquote
'macro
(letrec*
- ((#{quasi 60620}#
- (lambda (#{p 60644}# #{lev 60645}#)
- (let ((#{tmp 60647}#
+ ((quasi-37876
+ (lambda (p-37900 lev-37901)
+ (let ((tmp-37903
($sc-dispatch
- #{p 60644}#
+ p-37900
'(#(free-id
#(syntax-object
unquote
@@ -19371,7 +19468,7 @@
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19380,13 +19477,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19398,19 +19495,19 @@
(hygiene guile))))))
(hygiene guile)))
any))))
- (if #{tmp 60647}#
+ (if tmp-37903
(@apply
- (lambda (#{p 60651}#)
- (if (= #{lev 60645}# 0)
+ (lambda (p-37907)
+ (if (= lev-37901 0)
(list '#(syntax-object
"value"
((top)
- #(ribcage #(p) #((top)) #("i60370"))
+ #(ribcage #(p) #((top)) #("l-*-37626"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19419,13 +19516,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19436,17 +19533,17 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{p 60651}#)
- (#{quasicons 60622}#
+ p-37907)
+ (quasicons-37878
'(#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i60370"))
+ #(ribcage #(p) #((top)) #("l-*-37626"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19455,13 +19552,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19475,12 +19572,12 @@
#(syntax-object
unquote
((top)
- #(ribcage #(p) #((top)) #("i60370"))
+ #(ribcage #(p) #((top)) #("l-*-37626"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19489,13 +19586,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19506,13 +19603,11 @@
((top))
(hygiene guile))))))
(hygiene guile)))
- (#{quasi 60620}#
- (list #{p 60651}#)
- (#{1-}# #{lev 60645}#)))))
- #{tmp 60647}#)
- (let ((#{tmp 60654}#
+ (quasi-37876 (list p-37907) (#{1-}# lev-37901)))))
+ tmp-37903)
+ (let ((tmp-37910
($sc-dispatch
- #{p 60644}#
+ p-37900
'(#(free-id
#(syntax-object
quasiquote
@@ -19521,7 +19616,7 @@
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19530,13 +19625,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19548,19 +19643,19 @@
(hygiene guile))))))
(hygiene guile)))
any))))
- (if #{tmp 60654}#
+ (if tmp-37910
(@apply
- (lambda (#{p 60658}#)
- (#{quasicons 60622}#
+ (lambda (p-37914)
+ (quasicons-37878
'(#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i60373"))
+ #(ribcage #(p) #((top)) #("l-*-37629"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19569,13 +19664,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19589,12 +19684,12 @@
#(syntax-object
quasiquote
((top)
- #(ribcage #(p) #((top)) #("i60373"))
+ #(ribcage #(p) #((top)) #("l-*-37629"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19603,13 +19698,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19620,18 +19715,15 @@
((top))
(hygiene guile))))))
(hygiene guile)))
- (#{quasi 60620}#
- (list #{p 60658}#)
- (#{1+}# #{lev 60645}#))))
- #{tmp 60654}#)
- (let ((#{tmp 60661}#
- ($sc-dispatch #{p 60644}# '(any . any))))
- (if #{tmp 60661}#
+ (quasi-37876 (list p-37914) (#{1+}# lev-37901))))
+ tmp-37910)
+ (let ((tmp-37917 ($sc-dispatch p-37900 '(any . any))))
+ (if tmp-37917
(@apply
- (lambda (#{p 60665}# #{q 60666}#)
- (let ((#{tmp 60668}#
+ (lambda (p-37921 q-37922)
+ (let ((tmp-37924
($sc-dispatch
- #{p 60665}#
+ p-37921
'(#(free-id
#(syntax-object
unquote
@@ -19639,12 +19731,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i60376" "i60377"))
+ #("l-*-37632" "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19659,13 +19751,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19678,28 +19770,30 @@
(hygiene guile)))
.
each-any))))
- (if #{tmp 60668}#
+ (if tmp-37924
(@apply
- (lambda (#{p 60672}#)
- (if (= #{lev 60645}# 0)
- (#{quasilist* 60624}#
- (map (lambda (#{tmp 60384 60711}#)
+ (lambda (p-37928)
+ (if (= lev-37901 0)
+ (quasilist*-37880
+ (map (lambda (tmp-37640-37967)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i60382"))
+ #("l-*-37638"))
#(ribcage
#(p q)
#((top) (top))
- #("i60376" "i60377"))
+ #("l-*-37632"
+ "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622"
+ "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19714,13 +19808,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19732,29 +19826,27 @@
(hygiene
guile))))))
(hygiene guile))
- #{tmp 60384 60711}#))
- #{p 60672}#)
- (#{quasi 60620}#
- #{q 60666}#
- #{lev 60645}#))
- (#{quasicons 60622}#
- (#{quasicons 60622}#
+ tmp-37640-37967))
+ p-37928)
+ (quasi-37876 q-37922 lev-37901))
+ (quasicons-37878
+ (quasicons-37878
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
- #("i60382"))
+ #("l-*-37638"))
#(ribcage
#(p q)
#((top) (top))
- #("i60376" "i60377"))
+ #("l-*-37632" "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19769,13 +19861,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19792,16 +19884,16 @@
#(ribcage
#(p)
#((top))
- #("i60382"))
+ #("l-*-37638"))
#(ribcage
#(p q)
#((top) (top))
- #("i60376" "i60377"))
+ #("l-*-37632" "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19816,13 +19908,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19833,16 +19925,14 @@
((top))
(hygiene guile))))))
(hygiene guile)))
- (#{quasi 60620}#
- #{p 60672}#
- (#{1-}# #{lev 60645}#)))
- (#{quasi 60620}#
- #{q 60666}#
- #{lev 60645}#))))
- #{tmp 60668}#)
- (let ((#{tmp 60716}#
+ (quasi-37876
+ p-37928
+ (#{1-}# lev-37901)))
+ (quasi-37876 q-37922 lev-37901))))
+ tmp-37924)
+ (let ((tmp-37972
($sc-dispatch
- #{p 60665}#
+ p-37921
'(#(free-id
#(syntax-object
unquote-splicing
@@ -19850,12 +19940,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i60376" "i60377"))
+ #("l-*-37632" "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19870,13 +19960,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19889,30 +19979,30 @@
(hygiene guile)))
.
each-any))))
- (if #{tmp 60716}#
+ (if tmp-37972
(@apply
- (lambda (#{p 60720}#)
- (if (= #{lev 60645}# 0)
- (#{quasiappend 60623}#
- (map (lambda (#{tmp 60389 60723}#)
+ (lambda (p-37976)
+ (if (= lev-37901 0)
+ (quasiappend-37879
+ (map (lambda (tmp-37645-37979)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i60387"))
+ #("l-*-37643"))
#(ribcage
#(p q)
#((top) (top))
- #("i60376"
- "i60377"))
+ #("l-*-37632"
+ "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366"
- "i60367"))
+ #("l-*-37622"
+ "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19927,13 +20017,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -19945,29 +20035,27 @@
(hygiene
guile))))))
(hygiene guile))
- #{tmp 60389 60723}#))
- #{p 60720}#)
- (#{quasi 60620}#
- #{q 60666}#
- #{lev 60645}#))
- (#{quasicons 60622}#
- (#{quasicons 60622}#
+ tmp-37645-37979))
+ p-37976)
+ (quasi-37876 q-37922 lev-37901))
+ (quasicons-37878
+ (quasicons-37878
'(#(syntax-object
"quote"
((top)
#(ribcage
#(p)
#((top))
- #("i60387"))
+ #("l-*-37643"))
#(ribcage
#(p q)
#((top) (top))
- #("i60376" "i60377"))
+ #("l-*-37632" "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -19982,13 +20070,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20005,16 +20093,16 @@
#(ribcage
#(p)
#((top))
- #("i60387"))
+ #("l-*-37643"))
#(ribcage
#(p q)
#((top) (top))
- #("i60376" "i60377"))
+ #("l-*-37632" "l-*-37633"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -20029,13 +20117,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20046,49 +20134,41 @@
((top))
(hygiene guile))))))
(hygiene guile)))
- (#{quasi 60620}#
- #{p 60720}#
- (#{1-}# #{lev 60645}#)))
- (#{quasi 60620}#
- #{q 60666}#
- #{lev 60645}#))))
- #{tmp 60716}#)
- (#{quasicons 60622}#
- (#{quasi 60620}#
- #{p 60665}#
- #{lev 60645}#)
- (#{quasi 60620}#
- #{q 60666}#
- #{lev 60645}#)))))))
- #{tmp 60661}#)
- (let ((#{tmp 60737}#
- ($sc-dispatch #{p 60644}# '#(vector each-any))))
- (if #{tmp 60737}#
+ (quasi-37876
+ p-37976
+ (#{1-}# lev-37901)))
+ (quasi-37876 q-37922 lev-37901))))
+ tmp-37972)
+ (quasicons-37878
+ (quasi-37876 p-37921 lev-37901)
+ (quasi-37876 q-37922 lev-37901)))))))
+ tmp-37917)
+ (let ((tmp-37993
+ ($sc-dispatch p-37900 '#(vector each-any))))
+ (if tmp-37993
(@apply
- (lambda (#{x 60741}#)
- (let ((#{x 60744}#
- (#{vquasi 60621}#
- #{x 60741}#
- #{lev 60645}#)))
- (let ((#{tmp 60746}#
+ (lambda (x-37997)
+ (let ((x-38000
+ (vquasi-37877 x-37997 lev-37901)))
+ (let ((tmp-38002
($sc-dispatch
- #{x 60744}#
+ x-38000
'(#(atom "quote") each-any))))
- (if #{tmp 60746}#
+ (if tmp-38002
(@apply
- (lambda (#{x 60750}#)
+ (lambda (x-38006)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(x)
#((top))
- #("i60494"))
+ #("l-*-37750"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i60491"))
+ #("l-*-37747"))
#(ribcage
(emit quasivector
quasilist*
@@ -20103,13 +20183,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20120,28 +20200,28 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (list->vector #{x 60750}#)))
- #{tmp 60746}#)
+ (list->vector x-38006)))
+ tmp-38002)
(letrec*
- ((#{f 60752}#
- (lambda (#{y 60764}# #{k 60765}#)
- (let ((#{tmp 60767}#
+ ((f-38008
+ (lambda (y-38020 k-38021)
+ (let ((tmp-38023
($sc-dispatch
- #{y 60764}#
+ y-38020
'(#(atom "quote")
each-any))))
- (if #{tmp 60767}#
+ (if tmp-38023
(@apply
- (lambda (#{y 60770}#)
- (#{k 60765}#
- (map (lambda (#{tmp 60519 60771}#)
+ (lambda (y-38026)
+ (k-38021
+ (map (lambda (tmp-37775-38027)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(y)
#((top))
- #("i60517"))
+ #("l-*-37773"))
#(ribcage
()
()
@@ -20153,13 +20233,13 @@
#((top)
(top)
(top))
- #("i60499"
- "i60500"
- "i60501"))
+ #("l-*-37755"
+ "l-*-37756"
+ "l-*-37757"))
#(ribcage
#(_)
#((top))
- #("i60497"))
+ #("l-*-37753"))
#(ribcage
()
()
@@ -20167,7 +20247,7 @@
#(ribcage
#(x)
#((top))
- #("i60491"))
+ #("l-*-37747"))
#(ribcage
(emit quasivector
quasilist*
@@ -20182,13 +20262,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20202,42 +20282,41 @@
guile))))))
(hygiene
guile))
- #{tmp 60519 60771}#))
- #{y 60770}#)))
- #{tmp 60767}#)
- (let ((#{tmp 60772}#
+ tmp-37775-38027))
+ y-38026)))
+ tmp-38023)
+ (let ((tmp-38028
($sc-dispatch
- #{y 60764}#
+ y-38020
'(#(atom "list")
.
each-any))))
- (if #{tmp 60772}#
+ (if tmp-38028
(@apply
- (lambda (#{y 60775}#)
- (#{k 60765}#
- #{y 60775}#))
- #{tmp 60772}#)
- (let ((#{tmp 60776}#
+ (lambda (y-38031)
+ (k-38021 y-38031))
+ tmp-38028)
+ (let ((tmp-38032
($sc-dispatch
- #{y 60764}#
+ y-38020
'(#(atom "list*")
.
#(each+
any
(any)
())))))
- (if #{tmp 60776}#
+ (if tmp-38032
(@apply
- (lambda (#{y 60779}#
- #{z 60780}#)
- (#{f 60752}#
- #{z 60780}#
- (lambda (#{ls 60781}#)
- (#{k 60765}#
+ (lambda (y-38035
+ z-38036)
+ (f-38008
+ z-38036
+ (lambda (ls-38037)
+ (k-38021
(append
- #{y 60779}#
- #{ls 60781}#)))))
- #{tmp 60776}#)
+ y-38035
+ ls-38037)))))
+ tmp-38032)
(list '#(syntax-object
"list->vector"
((top)
@@ -20246,14 +20325,14 @@
()
())
#(ribcage
- #(#{ g60534}#)
- #((m60535
+ #(t-37790)
+ #((m-*-37791
top))
- #("i60538"))
+ #("l-*-37794"))
#(ribcage
#(else)
#((top))
- #("i60532"))
+ #("l-*-37788"))
#(ribcage
()
()
@@ -20263,13 +20342,13 @@
#((top)
(top)
(top))
- #("i60499"
- "i60500"
- "i60501"))
+ #("l-*-37755"
+ "l-*-37756"
+ "l-*-37757"))
#(ribcage
#(_)
#((top))
- #("i60497"))
+ #("l-*-37753"))
#(ribcage
()
()
@@ -20277,7 +20356,7 @@
#(ribcage
#(x)
#((top))
- #("i60491"))
+ #("l-*-37747"))
#(ribcage
(emit quasivector
quasilist*
@@ -20292,13 +20371,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20312,17 +20391,17 @@
guile))))))
(hygiene
guile))
- #{x 60744}#))))))))))
- (#{f 60752}#
- #{x 60744}#
- (lambda (#{ls 60754}#)
- (let ((#{tmp 60756}#
+ x-38000))))))))))
+ (f-38008
+ x-38000
+ (lambda (ls-38010)
+ (let ((tmp-38012
($sc-dispatch
- #{ls 60754}#
+ ls-38010
'each-any)))
- (if #{tmp 60756}#
+ (if tmp-38012
(@apply
- (lambda (#{ g60507 60759}#)
+ (lambda (t-37763-38015)
(cons '#(syntax-object
"vector"
((top)
@@ -20331,9 +20410,10 @@
()
())
#(ribcage
- #(#{ g60507}#)
- #((m60508 top))
- #("i60512"))
+ #(t-37763)
+ #((m-*-37764
+ top))
+ #("l-*-37768"))
#(ribcage
()
()
@@ -20349,11 +20429,11 @@
#(ribcage
#(ls)
#((top))
- #("i60506"))
+ #("l-*-37762"))
#(ribcage
#(_)
#((top))
- #("i60497"))
+ #("l-*-37753"))
#(ribcage
()
()
@@ -20361,7 +20441,7 @@
#(ribcage
#(x)
#((top))
- #("i60491"))
+ #("l-*-37747"))
#(ribcage
(emit quasivector
quasilist*
@@ -20376,13 +20456,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20395,22 +20475,22 @@
(hygiene
guile))))))
(hygiene guile))
- #{ g60507 60759}#))
- #{tmp 60756}#)
+ t-37763-38015))
+ tmp-38012)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{ls 60754}#))))))))))
- #{tmp 60737}#)
+ ls-38010))))))))))
+ tmp-37993)
(list '#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i60397"))
+ #(ribcage #(p) #((top)) #("l-*-37653"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60366" "i60367"))
+ #("l-*-37622" "l-*-37623"))
#(ribcage
(emit quasivector
quasilist*
@@ -20425,13 +20505,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20442,17 +20522,16 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{p 60644}#)))))))))))
- (#{vquasi 60621}#
- (lambda (#{p 60809}# #{lev 60810}#)
- (let ((#{tmp 60812}#
- ($sc-dispatch #{p 60809}# '(any . any))))
- (if #{tmp 60812}#
+ p-37900)))))))))))
+ (vquasi-37877
+ (lambda (p-38065 lev-38066)
+ (let ((tmp-38068 ($sc-dispatch p-38065 '(any . any))))
+ (if tmp-38068
(@apply
- (lambda (#{p 60816}# #{q 60817}#)
- (let ((#{tmp 60819}#
+ (lambda (p-38072 q-38073)
+ (let ((tmp-38075
($sc-dispatch
- #{p 60816}#
+ p-38072
'(#(free-id
#(syntax-object
unquote
@@ -20460,12 +20539,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661" "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20480,13 +20559,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20499,28 +20578,28 @@
(hygiene guile)))
.
each-any))))
- (if #{tmp 60819}#
+ (if tmp-38075
(@apply
- (lambda (#{p 60823}#)
- (if (= #{lev 60810}# 0)
- (#{quasilist* 60624}#
- (map (lambda (#{tmp 60413 60862}#)
+ (lambda (p-38079)
+ (if (= lev-38066 0)
+ (quasilist*-37880
+ (map (lambda (tmp-37669-38118)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i60411"))
+ #("l-*-37667"))
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661" "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20535,13 +20614,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20552,24 +20631,24 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{tmp 60413 60862}#))
- #{p 60823}#)
- (#{vquasi 60621}# #{q 60817}# #{lev 60810}#))
- (#{quasicons 60622}#
- (#{quasicons 60622}#
+ tmp-37669-38118))
+ p-38079)
+ (vquasi-37877 q-38073 lev-38066))
+ (quasicons-37878
+ (quasicons-37878
'(#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i60411"))
+ #(ribcage #(p) #((top)) #("l-*-37667"))
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661" "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20584,13 +20663,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20604,16 +20683,16 @@
#(syntax-object
unquote
((top)
- #(ribcage #(p) #((top)) #("i60411"))
+ #(ribcage #(p) #((top)) #("l-*-37667"))
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661" "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20628,13 +20707,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20645,14 +20724,12 @@
((top))
(hygiene guile))))))
(hygiene guile)))
- (#{quasi 60620}#
- #{p 60823}#
- (#{1-}# #{lev 60810}#)))
- (#{vquasi 60621}# #{q 60817}# #{lev 60810}#))))
- #{tmp 60819}#)
- (let ((#{tmp 60869}#
+ (quasi-37876 p-38079 (#{1-}# lev-38066)))
+ (vquasi-37877 q-38073 lev-38066))))
+ tmp-38075)
+ (let ((tmp-38125
($sc-dispatch
- #{p 60816}#
+ p-38072
'(#(free-id
#(syntax-object
unquote-splicing
@@ -20660,12 +20737,12 @@
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661" "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20680,13 +20757,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20699,28 +20776,30 @@
(hygiene guile)))
.
each-any))))
- (if #{tmp 60869}#
+ (if tmp-38125
(@apply
- (lambda (#{p 60873}#)
- (if (= #{lev 60810}# 0)
- (#{quasiappend 60623}#
- (map (lambda (#{tmp 60418 60876}#)
+ (lambda (p-38129)
+ (if (= lev-38066 0)
+ (quasiappend-37879
+ (map (lambda (tmp-37674-38132)
(list '#(syntax-object
"value"
((top)
#(ribcage
#(p)
#((top))
- #("i60416"))
+ #("l-*-37672"))
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661"
+ "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657"
+ "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20735,13 +20814,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20752,26 +20831,27 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{tmp 60418 60876}#))
- #{p 60873}#)
- (#{vquasi 60621}#
- #{q 60817}#
- #{lev 60810}#))
- (#{quasicons 60622}#
- (#{quasicons 60622}#
+ tmp-37674-38132))
+ p-38129)
+ (vquasi-37877 q-38073 lev-38066))
+ (quasicons-37878
+ (quasicons-37878
'(#(syntax-object
"quote"
((top)
- #(ribcage #(p) #((top)) #("i60416"))
+ #(ribcage
+ #(p)
+ #((top))
+ #("l-*-37672"))
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661" "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20786,13 +20866,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20806,16 +20886,19 @@
#(syntax-object
unquote-splicing
((top)
- #(ribcage #(p) #((top)) #("i60416"))
+ #(ribcage
+ #(p)
+ #((top))
+ #("l-*-37672"))
#(ribcage
#(p q)
#((top) (top))
- #("i60405" "i60406"))
+ #("l-*-37661" "l-*-37662"))
#(ribcage () () ())
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20830,13 +20913,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20847,19 +20930,15 @@
((top))
(hygiene guile))))))
(hygiene guile)))
- (#{quasi 60620}#
- #{p 60873}#
- (#{1-}# #{lev 60810}#)))
- (#{vquasi 60621}#
- #{q 60817}#
- #{lev 60810}#))))
- #{tmp 60869}#)
- (#{quasicons 60622}#
- (#{quasi 60620}# #{p 60816}# #{lev 60810}#)
- (#{vquasi 60621}# #{q 60817}# #{lev 60810}#)))))))
- #{tmp 60812}#)
- (let ((#{tmp 60894}# ($sc-dispatch #{p 60809}# '())))
- (if #{tmp 60894}#
+ (quasi-37876 p-38129 (#{1-}# lev-38066)))
+ (vquasi-37877 q-38073 lev-38066))))
+ tmp-38125)
+ (quasicons-37878
+ (quasi-37876 p-38072 lev-38066)
+ (vquasi-37877 q-38073 lev-38066)))))))
+ tmp-38068)
+ (let ((tmp-38150 ($sc-dispatch p-38065 '())))
+ (if tmp-38150
(@apply
(lambda ()
'(#(syntax-object
@@ -20869,7 +20948,7 @@
#(ribcage
#(p lev)
#((top) (top))
- #("i60401" "i60402"))
+ #("l-*-37657" "l-*-37658"))
#(ribcage
(emit quasivector
quasilist*
@@ -20878,13 +20957,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20896,55 +20975,52 @@
(hygiene guile))))))
(hygiene guile))
()))
- #{tmp 60894}#)
+ tmp-38150)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{p 60809}#)))))))
- (#{quasicons 60622}#
- (lambda (#{x 60907}# #{y 60908}#)
- (let ((#{tmp 60909}# (list #{x 60907}# #{y 60908}#)))
- (let ((#{tmp 60910}#
- ($sc-dispatch #{tmp 60909}# '(any any))))
- (if #{tmp 60910}#
+ p-38065)))))))
+ (quasicons-37878
+ (lambda (x-38163 y-38164)
+ (let ((tmp-38165 (list x-38163 y-38164)))
+ (let ((tmp-38166 ($sc-dispatch tmp-38165 '(any any))))
+ (if tmp-38166
(@apply
- (lambda (#{x 60912}# #{y 60913}#)
- (let ((#{tmp 60915}#
- ($sc-dispatch
- #{y 60913}#
- '(#(atom "quote") any))))
- (if #{tmp 60915}#
+ (lambda (x-38168 y-38169)
+ (let ((tmp-38171
+ ($sc-dispatch y-38169 '(#(atom "quote") any))))
+ (if tmp-38171
(@apply
- (lambda (#{dy 60919}#)
- (let ((#{tmp 60921}#
+ (lambda (dy-38175)
+ (let ((tmp-38177
($sc-dispatch
- #{x 60912}#
+ x-38168
'(#(atom "quote") any))))
- (if #{tmp 60921}#
+ (if tmp-38177
(@apply
- (lambda (#{dx 60925}#)
+ (lambda (dx-38181)
(list '#(syntax-object
"quote"
((top)
#(ribcage
#(dx)
#((top))
- #("i60440"))
+ #("l-*-37696"))
#(ribcage
#(dy)
#((top))
- #("i60436"))
+ #("l-*-37692"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60430" "i60431"))
+ #("l-*-37686" "l-*-37687"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60425" "i60426"))
+ #("l-*-37681" "l-*-37682"))
#(ribcage
(emit quasivector
quasilist*
@@ -20959,13 +21035,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -20976,31 +21052,31 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{dx 60925}# #{dy 60919}#)))
- #{tmp 60921}#)
- (if (null? #{dy 60919}#)
+ (cons dx-38181 dy-38175)))
+ tmp-38177)
+ (if (null? dy-38175)
(list '#(syntax-object
"list"
((top)
#(ribcage
#(_)
#((top))
- #("i60442"))
+ #("l-*-37698"))
#(ribcage
#(dy)
#((top))
- #("i60436"))
+ #("l-*-37692"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60430" "i60431"))
+ #("l-*-37686" "l-*-37687"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60425" "i60426"))
+ #("l-*-37681" "l-*-37682"))
#(ribcage
(emit quasivector
quasilist*
@@ -21015,13 +21091,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21032,29 +21108,29 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{x 60912}#)
+ x-38168)
(list '#(syntax-object
"list*"
((top)
#(ribcage
#(_)
#((top))
- #("i60442"))
+ #("l-*-37698"))
#(ribcage
#(dy)
#((top))
- #("i60436"))
+ #("l-*-37692"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60430" "i60431"))
+ #("l-*-37686" "l-*-37687"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60425" "i60426"))
+ #("l-*-37681" "l-*-37682"))
#(ribcage
(emit quasivector
quasilist*
@@ -21069,13 +21145,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21086,34 +21162,34 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{x 60912}#
- #{y 60913}#)))))
- #{tmp 60915}#)
- (let ((#{tmp 60930}#
+ x-38168
+ y-38169)))))
+ tmp-38171)
+ (let ((tmp-38186
($sc-dispatch
- #{y 60913}#
+ y-38169
'(#(atom "list") . any))))
- (if #{tmp 60930}#
+ (if tmp-38186
(@apply
- (lambda (#{stuff 60934}#)
+ (lambda (stuff-38190)
(cons '#(syntax-object
"list"
((top)
#(ribcage
#(stuff)
#((top))
- #("i60445"))
+ #("l-*-37701"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60430" "i60431"))
+ #("l-*-37686" "l-*-37687"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60425" "i60426"))
+ #("l-*-37681" "l-*-37682"))
#(ribcage
(emit quasivector
quasilist*
@@ -21128,13 +21204,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21145,33 +21221,33 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{x 60912}# #{stuff 60934}#)))
- #{tmp 60930}#)
- (let ((#{tmp 60935}#
+ (cons x-38168 stuff-38190)))
+ tmp-38186)
+ (let ((tmp-38191
($sc-dispatch
- #{y 60913}#
+ y-38169
'(#(atom "list*") . any))))
- (if #{tmp 60935}#
+ (if tmp-38191
(@apply
- (lambda (#{stuff 60939}#)
+ (lambda (stuff-38195)
(cons '#(syntax-object
"list*"
((top)
#(ribcage
#(stuff)
#((top))
- #("i60448"))
+ #("l-*-37704"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60430" "i60431"))
+ #("l-*-37686" "l-*-37687"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60425" "i60426"))
+ #("l-*-37681" "l-*-37682"))
#(ribcage
(emit quasivector
quasilist*
@@ -21186,13 +21262,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21203,23 +21279,26 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{x 60912}# #{stuff 60939}#)))
- #{tmp 60935}#)
+ (cons x-38168 stuff-38195)))
+ tmp-38191)
(list '#(syntax-object
"list*"
((top)
- #(ribcage #(_) #((top)) #("i60450"))
+ #(ribcage
+ #(_)
+ #((top))
+ #("l-*-37706"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60430" "i60431"))
+ #("l-*-37686" "l-*-37687"))
#(ribcage () () ())
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60425" "i60426"))
+ #("l-*-37681" "l-*-37682"))
#(ribcage
(emit quasivector
quasilist*
@@ -21234,13 +21313,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21251,21 +21330,21 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{x 60912}#
- #{y 60913}#))))))))
- #{tmp 60910}#)
+ x-38168
+ y-38169))))))))
+ tmp-38166)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 60909}#))))))
- (#{quasiappend 60623}#
- (lambda (#{x 60950}# #{y 60951}#)
- (let ((#{tmp 60953}#
- ($sc-dispatch #{y 60951}# '(#(atom "quote") ()))))
- (if #{tmp 60953}#
+ tmp-38165))))))
+ (quasiappend-37879
+ (lambda (x-38206 y-38207)
+ (let ((tmp-38209
+ ($sc-dispatch y-38207 '(#(atom "quote") ()))))
+ (if tmp-38209
(@apply
(lambda ()
- (if (null? #{x 60950}#)
+ (if (null? x-38206)
'(#(syntax-object
"quote"
((top)
@@ -21273,7 +21352,7 @@
#(ribcage
#(x y)
#((top) (top))
- #("i60454" "i60455"))
+ #("l-*-37710" "l-*-37711"))
#(ribcage
(emit quasivector
quasilist*
@@ -21282,13 +21361,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21300,23 +21379,25 @@
(hygiene guile))))))
(hygiene guile))
())
- (if (null? (cdr #{x 60950}#))
- (car #{x 60950}#)
- (let ((#{tmp 60958}#
- ($sc-dispatch #{x 60950}# 'each-any)))
- (if #{tmp 60958}#
+ (if (null? (cdr x-38206))
+ (car x-38206)
+ (let ((tmp-38214 ($sc-dispatch x-38206 'each-any)))
+ (if tmp-38214
(@apply
- (lambda (#{p 60962}#)
+ (lambda (p-38218)
(cons '#(syntax-object
"append"
((top)
#(ribcage () () ())
- #(ribcage #(p) #((top)) #("i60466"))
+ #(ribcage
+ #(p)
+ #((top))
+ #("l-*-37722"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60454" "i60455"))
+ #("l-*-37710" "l-*-37711"))
#(ribcage
(emit quasivector
quasilist*
@@ -21331,13 +21412,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21348,21 +21429,21 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{p 60962}#))
- #{tmp 60958}#)
+ p-38218))
+ tmp-38214)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 60950}#))))))
- #{tmp 60953}#)
- (if (null? #{x 60950}#)
- #{y 60951}#
- (let ((#{tmp 60970}# (list #{x 60950}# #{y 60951}#)))
- (let ((#{tmp 60971}#
- ($sc-dispatch #{tmp 60970}# '(each-any any))))
- (if #{tmp 60971}#
+ x-38206))))))
+ tmp-38209)
+ (if (null? x-38206)
+ y-38207
+ (let ((tmp-38226 (list x-38206 y-38207)))
+ (let ((tmp-38227
+ ($sc-dispatch tmp-38226 '(each-any any))))
+ (if tmp-38227
(@apply
- (lambda (#{p 60973}# #{y 60974}#)
+ (lambda (p-38229 y-38230)
(cons '#(syntax-object
"append"
((top)
@@ -21370,13 +21451,13 @@
#(ribcage
#(p y)
#((top) (top))
- #("i60477" "i60478"))
- #(ribcage #(_) #((top)) #("i60469"))
+ #("l-*-37733" "l-*-37734"))
+ #(ribcage #(_) #((top)) #("l-*-37725"))
#(ribcage () () ())
#(ribcage
#(x y)
#((top) (top))
- #("i60454" "i60455"))
+ #("l-*-37710" "l-*-37711"))
#(ribcage
(emit quasivector
quasilist*
@@ -21391,13 +21472,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21408,36 +21489,36 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (append #{p 60973}# (list #{y 60974}#))))
- #{tmp 60971}#)
+ (append p-38229 (list y-38230))))
+ tmp-38227)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 60970}#)))))))))
- (#{quasilist* 60624}#
- (lambda (#{x 60978}# #{y 60979}#)
+ tmp-38226)))))))))
+ (quasilist*-37880
+ (lambda (x-38234 y-38235)
(letrec*
- ((#{f 60980}#
- (lambda (#{x 61084}#)
- (if (null? #{x 61084}#)
- #{y 60979}#
- (#{quasicons 60622}#
- (car #{x 61084}#)
- (#{f 60980}# (cdr #{x 61084}#)))))))
- (#{f 60980}# #{x 60978}#))))
- (#{emit 60626}#
- (lambda (#{x 61087}#)
- (let ((#{tmp 61089}#
- ($sc-dispatch #{x 61087}# '(#(atom "quote") any))))
- (if #{tmp 61089}#
+ ((f-38236
+ (lambda (x-38340)
+ (if (null? x-38340)
+ y-38235
+ (quasicons-37878
+ (car x-38340)
+ (f-38236 (cdr x-38340)))))))
+ (f-38236 x-38234))))
+ (emit-37882
+ (lambda (x-38343)
+ (let ((tmp-38345
+ ($sc-dispatch x-38343 '(#(atom "quote") any))))
+ (if tmp-38345
(@apply
- (lambda (#{x 61093}#)
+ (lambda (x-38349)
(list '#(syntax-object
quote
((top)
- #(ribcage #(x) #((top)) #("i60544"))
+ #(ribcage #(x) #((top)) #("l-*-37800"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60541"))
+ #(ribcage #(x) #((top)) #("l-*-37797"))
#(ribcage
(emit quasivector
quasilist*
@@ -21446,13 +21527,13 @@
vquasi
quasi)
((top) (top) (top) (top) (top) (top) (top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21463,32 +21544,37 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{x 61093}#))
- #{tmp 61089}#)
- (let ((#{tmp 61094}#
+ x-38349))
+ tmp-38345)
+ (let ((tmp-38350
($sc-dispatch
- #{x 61087}#
+ x-38343
'(#(atom "list") . each-any))))
- (if #{tmp 61094}#
+ (if tmp-38350
(@apply
- (lambda (#{x 61098}#)
- (let ((#{tmp 61099}# (map #{emit 60626}# #{x 61098}#)))
- (let ((#{tmp 61100}#
- ($sc-dispatch #{tmp 61099}# 'each-any)))
- (if #{tmp 61100}#
+ (lambda (x-38354)
+ (let ((tmp-38355 (map emit-37882 x-38354)))
+ (let ((tmp-38356 ($sc-dispatch tmp-38355 'each-any)))
+ (if tmp-38356
(@apply
- (lambda (#{ g60549 61102}#)
+ (lambda (t-37805-38358)
(cons '#(syntax-object
list
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g60549}#)
- #((m60550 top))
- #("i60554"))
- #(ribcage #(x) #((top)) #("i60547"))
+ #(t-37805)
+ #((m-*-37806 top))
+ #("l-*-37810"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-37803"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i60541"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-37797"))
#(ribcage
(emit quasivector
quasilist*
@@ -21503,13 +21589,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21520,62 +21606,62 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{ g60549 61102}#))
- #{tmp 61100}#)
+ t-37805-38358))
+ tmp-38356)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 61099}#)))))
- #{tmp 61094}#)
- (let ((#{tmp 61103}#
+ tmp-38355)))))
+ tmp-38350)
+ (let ((tmp-38359
($sc-dispatch
- #{x 61087}#
+ x-38343
'(#(atom "list*") . #(each+ any (any) ())))))
- (if #{tmp 61103}#
+ (if tmp-38359
(@apply
- (lambda (#{x 61107}# #{y 61108}#)
+ (lambda (x-38363 y-38364)
(letrec*
- ((#{f 61109}#
- (lambda (#{x* 61112}#)
- (if (null? #{x* 61112}#)
- (#{emit 60626}# #{y 61108}#)
- (let ((#{tmp 61113}#
- (list (#{emit 60626}#
- (car #{x* 61112}#))
- (#{f 61109}#
- (cdr #{x* 61112}#)))))
- (let ((#{tmp 61114}#
+ ((f-38365
+ (lambda (x*-38368)
+ (if (null? x*-38368)
+ (emit-37882 y-38364)
+ (let ((tmp-38369
+ (list (emit-37882 (car x*-38368))
+ (f-38365 (cdr x*-38368)))))
+ (let ((tmp-38370
($sc-dispatch
- #{tmp 61113}#
+ tmp-38369
'(any any))))
- (if #{tmp 61114}#
+ (if tmp-38370
(@apply
- (lambda (#{ g60569 61116}#
- #{ g60568 61117}#)
+ (lambda (t-37825-38372
+ t-37824-38373)
(list '#(syntax-object
cons
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g60569}#
- #{ g60568}#)
- #((m60570 top)
- (m60570 top))
- #("i60574" "i60575"))
+ #(t-37825 t-37824)
+ #((m-*-37826 top)
+ (m-*-37826 top))
+ #("l-*-37830"
+ "l-*-37831"))
#(ribcage () () ())
#(ribcage
#(f x*)
#((top) (top))
- #("i60563" "i60564"))
+ #("l-*-37819"
+ "l-*-37820"))
#(ribcage
#(x y)
#((top) (top))
- #("i60559" "i60560"))
+ #("l-*-37815"
+ "l-*-37816"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i60541"))
+ #("l-*-37797"))
#(ribcage
(emit quasivector
quasilist*
@@ -21590,13 +21676,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21608,48 +21694,45 @@
(hygiene
guile))))))
(hygiene guile))
- #{ g60569 61116}#
- #{ g60568 61117}#))
- #{tmp 61114}#)
+ t-37825-38372
+ t-37824-38373))
+ tmp-38370)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 61113}#))))))))
- (#{f 61109}# #{x 61107}#)))
- #{tmp 61103}#)
- (let ((#{tmp 61118}#
+ tmp-38369))))))))
+ (f-38365 x-38363)))
+ tmp-38359)
+ (let ((tmp-38374
($sc-dispatch
- #{x 61087}#
+ x-38343
'(#(atom "append") . each-any))))
- (if #{tmp 61118}#
+ (if tmp-38374
(@apply
- (lambda (#{x 61122}#)
- (let ((#{tmp 61123}#
- (map #{emit 60626}# #{x 61122}#)))
- (let ((#{tmp 61124}#
- ($sc-dispatch
- #{tmp 61123}#
- 'each-any)))
- (if #{tmp 61124}#
+ (lambda (x-38378)
+ (let ((tmp-38379 (map emit-37882 x-38378)))
+ (let ((tmp-38380
+ ($sc-dispatch tmp-38379 'each-any)))
+ (if tmp-38380
(@apply
- (lambda (#{ g60581 61126}#)
+ (lambda (t-37837-38382)
(cons '#(syntax-object
append
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g60581}#)
- #((m60582 top))
- #("i60586"))
+ #(t-37837)
+ #((m-*-37838 top))
+ #("l-*-37842"))
#(ribcage
#(x)
#((top))
- #("i60579"))
+ #("l-*-37835"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i60541"))
+ #("l-*-37797"))
#(ribcage
(emit quasivector
quasilist*
@@ -21664,13 +21747,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21681,46 +21764,45 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{ g60581 61126}#))
- #{tmp 61124}#)
+ t-37837-38382))
+ tmp-38380)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 61123}#)))))
- #{tmp 61118}#)
- (let ((#{tmp 61127}#
+ tmp-38379)))))
+ tmp-38374)
+ (let ((tmp-38383
($sc-dispatch
- #{x 61087}#
+ x-38343
'(#(atom "vector") . each-any))))
- (if #{tmp 61127}#
+ (if tmp-38383
(@apply
- (lambda (#{x 61131}#)
- (let ((#{tmp 61132}#
- (map #{emit 60626}# #{x 61131}#)))
- (let ((#{tmp 61133}#
+ (lambda (x-38387)
+ (let ((tmp-38388 (map emit-37882 x-38387)))
+ (let ((tmp-38389
($sc-dispatch
- #{tmp 61132}#
+ tmp-38388
'each-any)))
- (if #{tmp 61133}#
+ (if tmp-38389
(@apply
- (lambda (#{ g60593 61135}#)
+ (lambda (t-37849-38391)
(cons '#(syntax-object
vector
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g60593}#)
- #((m60594 top))
- #("i60598"))
+ #(t-37849)
+ #((m-*-37850 top))
+ #("l-*-37854"))
#(ribcage
#(x)
#((top))
- #("i60591"))
+ #("l-*-37847"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i60541"))
+ #("l-*-37797"))
#(ribcage
(emit quasivector
quasilist*
@@ -21735,13 +21817,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21753,39 +21835,38 @@
(hygiene
guile))))))
(hygiene guile))
- #{ g60593 61135}#))
- #{tmp 61133}#)
+ t-37849-38391))
+ tmp-38389)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 61132}#)))))
- #{tmp 61127}#)
- (let ((#{tmp 61136}#
+ tmp-38388)))))
+ tmp-38383)
+ (let ((tmp-38392
($sc-dispatch
- #{x 61087}#
+ x-38343
'(#(atom "list->vector") any))))
- (if #{tmp 61136}#
+ (if tmp-38392
(@apply
- (lambda (#{x 61140}#)
- (let ((#{tmp 61141}#
- (#{emit 60626}# #{x 61140}#)))
+ (lambda (x-38396)
+ (let ((tmp-38397 (emit-37882 x-38396)))
(list '#(syntax-object
list->vector
((top)
#(ribcage () () ())
#(ribcage
- #(#{ g60605}#)
- #((m60606 top))
- #("i60609"))
+ #(t-37861)
+ #((m-*-37862 top))
+ #("l-*-37865"))
#(ribcage
#(x)
#((top))
- #("i60603"))
+ #("l-*-37859"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i60541"))
+ #("l-*-37797"))
#(ribcage
(emit quasivector
quasilist*
@@ -21800,13 +21881,13 @@
(top)
(top)
(top))
- ("i60362"
- "i60360"
- "i60358"
- "i60356"
- "i60354"
- "i60352"
- "i60350"))
+ ("l-*-37618"
+ "l-*-37616"
+ "l-*-37614"
+ "l-*-37612"
+ "l-*-37610"
+ "l-*-37608"
+ "l-*-37606"))
#(ribcage
(quasiquote)
((top))
@@ -21817,83 +21898,81 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{tmp 61141}#)))
- #{tmp 61136}#)
- (let ((#{tmp 61144}#
+ tmp-38397)))
+ tmp-38392)
+ (let ((tmp-38400
($sc-dispatch
- #{x 61087}#
+ x-38343
'(#(atom "value") any))))
- (if #{tmp 61144}#
+ (if tmp-38400
(@apply
- (lambda (#{x 61148}#) #{x 61148}#)
- #{tmp 61144}#)
+ (lambda (x-38404) x-38404)
+ tmp-38400)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 61087}#))))))))))))))))))
- (lambda (#{x 60627}#)
- (let ((#{tmp 60629}#
- ($sc-dispatch #{x 60627}# '(_ any))))
- (if #{tmp 60629}#
+ x-38343))))))))))))))))))
+ (lambda (x-37883)
+ (let ((tmp-37885 ($sc-dispatch x-37883 '(_ any))))
+ (if tmp-37885
(@apply
- (lambda (#{e 60633}#)
- (#{emit 60626}# (#{quasi 60620}# #{e 60633}# 0)))
- #{tmp 60629}#)
+ (lambda (e-37889)
+ (emit-37882 (quasi-37876 e-37889 0)))
+ tmp-37885)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 60627}#)))))))
+ x-37883)))))))
(define include
(make-syntax-transformer
'include
'macro
- (lambda (#{x 61204}#)
+ (lambda (x-38460)
(letrec*
- ((#{read-file 61205}#
- (lambda (#{fn 61314}# #{k 61315}#)
- (let ((#{p 61316}# (open-input-file #{fn 61314}#)))
+ ((read-file-38461
+ (lambda (fn-38570 k-38571)
+ (let ((p-38572 (open-input-file fn-38570)))
(letrec*
- ((#{f 61317}#
- (lambda (#{x 61371}# #{result 61372}#)
- (if (eof-object? #{x 61371}#)
+ ((f-38573
+ (lambda (x-38627 result-38628)
+ (if (eof-object? x-38627)
(begin
- (close-input-port #{p 61316}#)
- (reverse #{result 61372}#))
- (#{f 61317}#
- (read #{p 61316}#)
- (cons (datum->syntax #{k 61315}# #{x 61371}#)
- #{result 61372}#))))))
- (#{f 61317}# (read #{p 61316}#) '()))))))
- (let ((#{tmp 61207}#
- ($sc-dispatch #{x 61204}# '(any any))))
- (if #{tmp 61207}#
+ (close-input-port p-38572)
+ (reverse result-38628))
+ (f-38573
+ (read p-38572)
+ (cons (datum->syntax k-38571 x-38627)
+ result-38628))))))
+ (f-38573 (read p-38572) '()))))))
+ (let ((tmp-38463 ($sc-dispatch x-38460 '(any any))))
+ (if tmp-38463
(@apply
- (lambda (#{k 61211}# #{filename 61212}#)
- (let ((#{fn 61213}# (syntax->datum #{filename 61212}#)))
- (let ((#{tmp 61214}#
- (#{read-file 61205}#
- #{fn 61213}#
- #{filename 61212}#)))
- (let ((#{tmp 61215}#
- ($sc-dispatch #{tmp 61214}# 'each-any)))
- (if #{tmp 61215}#
+ (lambda (k-38467 filename-38468)
+ (let ((fn-38469 (syntax->datum filename-38468)))
+ (let ((tmp-38470
+ (read-file-38461 fn-38469 filename-38468)))
+ (let ((tmp-38471 ($sc-dispatch tmp-38470 'each-any)))
+ (if tmp-38471
(@apply
- (lambda (#{exp 61233}#)
+ (lambda (exp-38489)
(cons '#(syntax-object
begin
((top)
#(ribcage () () ())
- #(ribcage #(exp) #((top)) #("i61201"))
+ #(ribcage #(exp) #((top)) #("l-*-38457"))
#(ribcage () () ())
#(ribcage () () ())
- #(ribcage #(fn) #((top)) #("i61196"))
+ #(ribcage #(fn) #((top)) #("l-*-38452"))
#(ribcage
#(k filename)
#((top) (top))
- #("i61192" "i61193"))
- #(ribcage (read-file) ((top)) ("i61176"))
- #(ribcage #(x) #((top)) #("i61175"))
+ #("l-*-38448" "l-*-38449"))
+ #(ribcage
+ (read-file)
+ ((top))
+ ("l-*-38432"))
+ #(ribcage #(x) #((top)) #("l-*-38431"))
#(ribcage
(include)
((top))
@@ -21904,54 +21983,53 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{exp 61233}#))
- #{tmp 61215}#)
+ exp-38489))
+ tmp-38471)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{tmp 61214}#))))))
- #{tmp 61207}#)
+ tmp-38470))))))
+ tmp-38463)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 61204}#)))))))
+ x-38460)))))))
(define include-from-path
(make-syntax-transformer
'include-from-path
'macro
- (lambda (#{x 61392}#)
- (let ((#{tmp 61394}#
- ($sc-dispatch #{x 61392}# '(any any))))
- (if #{tmp 61394}#
+ (lambda (x-38648)
+ (let ((tmp-38650 ($sc-dispatch x-38648 '(any any))))
+ (if tmp-38650
(@apply
- (lambda (#{k 61398}# #{filename 61399}#)
- (let ((#{fn 61400}# (syntax->datum #{filename 61399}#)))
- (let ((#{tmp 61401}#
+ (lambda (k-38654 filename-38655)
+ (let ((fn-38656 (syntax->datum filename-38655)))
+ (let ((tmp-38657
(datum->syntax
- #{filename 61399}#
- (let ((#{t 61404}# (%search-load-path #{fn 61400}#)))
- (if #{t 61404}#
- #{t 61404}#
+ filename-38655
+ (let ((t-38660 (%search-load-path fn-38656)))
+ (if t-38660
+ t-38660
(syntax-violation
'include-from-path
"file not found in path"
- #{x 61392}#
- #{filename 61399}#))))))
+ x-38648
+ filename-38655))))))
(list '#(syntax-object
include
((top)
#(ribcage () () ())
- #(ribcage #(fn) #((top)) #("i61386"))
+ #(ribcage #(fn) #((top)) #("l-*-38642"))
#(ribcage () () ())
#(ribcage () () ())
- #(ribcage #(fn) #((top)) #("i61382"))
+ #(ribcage #(fn) #((top)) #("l-*-38638"))
#(ribcage
#(k filename)
#((top) (top))
- #("i61378" "i61379"))
+ #("l-*-38634" "l-*-38635"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61375"))
+ #(ribcage #(x) #((top)) #("l-*-38631"))
#(ribcage
(include-from-path)
((top))
@@ -21962,53 +22040,51 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{tmp 61401}#))))
- #{tmp 61394}#)
+ tmp-38657))))
+ tmp-38650)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 61392}#))))))
+ x-38648))))))
(define unquote
(make-syntax-transformer
'unquote
'macro
- (lambda (#{x 61414}#)
+ (lambda (x-38670)
(syntax-violation
'unquote
"expression not valid outside of quasiquote"
- #{x 61414}#))))
+ x-38670))))
(define unquote-splicing
(make-syntax-transformer
'unquote-splicing
'macro
- (lambda (#{x 61418}#)
+ (lambda (x-38674)
(syntax-violation
'unquote-splicing
"expression not valid outside of quasiquote"
- #{x 61418}#))))
+ x-38674))))
(define case
(make-syntax-transformer
'case
'macro
- (lambda (#{x 61475}#)
- (let ((#{tmp 61477}#
- ($sc-dispatch
- #{x 61475}#
- '(_ any any . each-any))))
- (if #{tmp 61477}#
+ (lambda (x-38731)
+ (let ((tmp-38733
+ ($sc-dispatch x-38731 '(_ any any . each-any))))
+ (if tmp-38733
(@apply
- (lambda (#{e 61481}# #{m1 61482}# #{m2 61483}#)
- (let ((#{tmp 61484}#
+ (lambda (e-38737 m1-38738 m2-38739)
+ (let ((tmp-38740
(letrec*
- ((#{f 61538}#
- (lambda (#{clause 61541}# #{clauses 61542}#)
- (if (null? #{clauses 61542}#)
- (let ((#{tmp 61544}#
+ ((f-38794
+ (lambda (clause-38797 clauses-38798)
+ (if (null? clauses-38798)
+ (let ((tmp-38800
($sc-dispatch
- #{clause 61541}#
+ clause-38797
'(#(free-id
#(syntax-object
else
@@ -22017,20 +22093,20 @@
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22044,34 +22120,34 @@
any
.
each-any))))
- (if #{tmp 61544}#
+ (if tmp-38800
(@apply
- (lambda (#{e1 61548}# #{e2 61549}#)
+ (lambda (e1-38804 e2-38805)
(cons '#(syntax-object
begin
((top)
#(ribcage
#(e1 e2)
#((top) (top))
- #("i61443" "i61444"))
+ #("l-*-38699" "l-*-38700"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22082,44 +22158,42 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{e1 61548}# #{e2 61549}#)))
- #{tmp 61544}#)
- (let ((#{tmp 61550}#
+ (cons e1-38804 e2-38805)))
+ tmp-38800)
+ (let ((tmp-38806
($sc-dispatch
- #{clause 61541}#
+ clause-38797
'(each-any any . each-any))))
- (if #{tmp 61550}#
+ (if tmp-38806
(@apply
- (lambda (#{k 61554}#
- #{e1 61555}#
- #{e2 61556}#)
+ (lambda (k-38810 e1-38811 e2-38812)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
- #("i61449"
- "i61450"
- "i61451"))
+ #("l-*-38705"
+ "l-*-38706"
+ "l-*-38707"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22138,9 +22212,9 @@
#((top)
(top)
(top))
- #("i61449"
- "i61450"
- "i61451"))
+ #("l-*-38705"
+ "l-*-38706"
+ "l-*-38707"))
#(ribcage () () ())
#(ribcage
#(f
@@ -22149,22 +22223,22 @@
#((top)
(top)
(top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22184,9 +22258,9 @@
#((top)
(top)
(top))
- #("i61449"
- "i61450"
- "i61451"))
+ #("l-*-38705"
+ "l-*-38706"
+ "l-*-38707"))
#(ribcage () () ())
#(ribcage
#(f
@@ -22195,22 +22269,22 @@
#((top)
(top)
(top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22230,9 +22304,9 @@
#((top)
(top)
(top))
- #("i61449"
- "i61450"
- "i61451"))
+ #("l-*-38705"
+ "l-*-38706"
+ "l-*-38707"))
#(ribcage
()
()
@@ -22244,17 +22318,17 @@
#((top)
(top)
(top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage
()
()
@@ -22262,7 +22336,7 @@
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22276,7 +22350,7 @@
guile))))))
(hygiene
guile))
- #{k 61554}#))
+ k-38810))
(cons '#(syntax-object
begin
((top)
@@ -22285,9 +22359,9 @@
#((top)
(top)
(top))
- #("i61449"
- "i61450"
- "i61451"))
+ #("l-*-38705"
+ "l-*-38706"
+ "l-*-38707"))
#(ribcage () () ())
#(ribcage
#(f
@@ -22296,22 +22370,22 @@
#((top)
(top)
(top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22323,59 +22397,57 @@
(hygiene
guile))))))
(hygiene guile))
- (cons #{e1 61555}#
- #{e2 61556}#))))
- #{tmp 61550}#)
+ (cons e1-38811
+ e2-38812))))
+ tmp-38806)
(syntax-violation
'case
"bad clause"
- #{x 61475}#
- #{clause 61541}#)))))
- (let ((#{tmp 61564}#
- (#{f 61538}#
- (car #{clauses 61542}#)
- (cdr #{clauses 61542}#))))
- (let ((#{tmp 61567}#
+ x-38731
+ clause-38797)))))
+ (let ((tmp-38820
+ (f-38794
+ (car clauses-38798)
+ (cdr clauses-38798))))
+ (let ((tmp-38823
($sc-dispatch
- #{clause 61541}#
+ clause-38797
'(each-any any . each-any))))
- (if #{tmp 61567}#
+ (if tmp-38823
(@apply
- (lambda (#{k 61571}#
- #{e1 61572}#
- #{e2 61573}#)
+ (lambda (k-38827 e1-38828 e2-38829)
(list '#(syntax-object
if
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
- #("i61465"
- "i61466"
- "i61467"))
+ #("l-*-38721"
+ "l-*-38722"
+ "l-*-38723"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
- #("i61461"))
+ #("l-*-38717"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22392,32 +22464,32 @@
#(ribcage
#(k e1 e2)
#((top) (top) (top))
- #("i61465"
- "i61466"
- "i61467"))
+ #("l-*-38721"
+ "l-*-38722"
+ "l-*-38723"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
- #("i61461"))
+ #("l-*-38717"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22435,32 +22507,32 @@
#(ribcage
#(k e1 e2)
#((top) (top) (top))
- #("i61465"
- "i61466"
- "i61467"))
+ #("l-*-38721"
+ "l-*-38722"
+ "l-*-38723"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
- #("i61461"))
+ #("l-*-38717"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22480,9 +22552,9 @@
#((top)
(top)
(top))
- #("i61465"
- "i61466"
- "i61467"))
+ #("l-*-38721"
+ "l-*-38722"
+ "l-*-38723"))
#(ribcage
()
()
@@ -22490,7 +22562,7 @@
#(ribcage
#(rest)
#((top))
- #("i61461"))
+ #("l-*-38717"))
#(ribcage
()
()
@@ -22502,17 +22574,17 @@
#((top)
(top)
(top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top)
(top)
(top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage
()
()
@@ -22520,7 +22592,7 @@
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22533,39 +22605,39 @@
(hygiene
guile))))))
(hygiene guile))
- #{k 61571}#))
+ k-38827))
(cons '#(syntax-object
begin
((top)
#(ribcage
#(k e1 e2)
#((top) (top) (top))
- #("i61465"
- "i61466"
- "i61467"))
+ #("l-*-38721"
+ "l-*-38722"
+ "l-*-38723"))
#(ribcage () () ())
#(ribcage
#(rest)
#((top))
- #("i61461"))
+ #("l-*-38717"))
#(ribcage () () ())
#(ribcage
#(f clause clauses)
#((top) (top) (top))
- #("i61434"
- "i61435"
- "i61436"))
+ #("l-*-38690"
+ "l-*-38691"
+ "l-*-38692"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424"
- "i61425"
- "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61421"))
+ #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22577,28 +22649,27 @@
(hygiene
guile))))))
(hygiene guile))
- (cons #{e1 61572}#
- #{e2 61573}#))
- #{tmp 61564}#))
- #{tmp 61567}#)
+ (cons e1-38828 e2-38829))
+ tmp-38820))
+ tmp-38823)
(syntax-violation
'case
"bad clause"
- #{x 61475}#
- #{clause 61541}#))))))))
- (#{f 61538}# #{m1 61482}# #{m2 61483}#))))
- (let ((#{body 61485}# #{tmp 61484}#))
+ x-38731
+ clause-38797))))))))
+ (f-38794 m1-38738 m2-38739))))
+ (let ((body-38741 tmp-38740))
(list '#(syntax-object
let
((top)
#(ribcage () () ())
- #(ribcage #(body) #((top)) #("i61432"))
+ #(ribcage #(body) #((top)) #("l-*-38688"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424" "i61425" "i61426"))
+ #("l-*-38680" "l-*-38681" "l-*-38682"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61421"))
+ #(ribcage #(x) #((top)) #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22613,13 +22684,18 @@
t
((top)
#(ribcage () () ())
- #(ribcage #(body) #((top)) #("i61432"))
+ #(ribcage
+ #(body)
+ #((top))
+ #("l-*-38688"))
#(ribcage
#(e m1 m2)
#((top) (top) (top))
- #("i61424" "i61425" "i61426"))
+ #("l-*-38680"
+ "l-*-38681"
+ "l-*-38682"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61421"))
+ #(ribcage #(x) #((top)) #("l-*-38677"))
#(ribcage
(case)
((top))
@@ -22630,46 +22706,44 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{e 61481}#))
- #{body 61485}#))))
- #{tmp 61477}#)
+ e-38737))
+ body-38741))))
+ tmp-38733)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 61475}#))))))
+ x-38731))))))
(define make-variable-transformer
- (lambda (#{proc 61592}#)
- (if (procedure? #{proc 61592}#)
+ (lambda (proc-38848)
+ (if (procedure? proc-38848)
(letrec*
- ((#{trans 61593}#
- (lambda (#{x 61595}#)
- (#{proc 61592}# #{x 61595}#))))
+ ((trans-38849
+ (lambda (x-38851) (proc-38848 x-38851))))
(begin
(set-procedure-property!
- #{trans 61593}#
+ trans-38849
'variable-transformer
#t)
- #{trans 61593}#))
+ trans-38849))
(error "variable transformer not a procedure"
- #{proc 61592}#))))
+ proc-38848))))
(define identifier-syntax
(make-syntax-transformer
'identifier-syntax
'macro
- (lambda (#{x 61632}#)
- (let ((#{tmp 61634}#
- ($sc-dispatch #{x 61632}# '(_ any))))
- (if #{tmp 61634}#
+ (lambda (x-38888)
+ (let ((tmp-38890 ($sc-dispatch x-38888 '(_ any))))
+ (if tmp-38890
(@apply
- (lambda (#{e 61638}#)
+ (lambda (e-38894)
(list '#(syntax-object
lambda
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22683,9 +22757,9 @@
'(#(syntax-object
x
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22699,9 +22773,9 @@
'#((#(syntax-object
macro-type
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22716,9 +22790,9 @@
#(syntax-object
identifier-syntax
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22732,9 +22806,9 @@
(list '#(syntax-object
syntax-case
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22748,9 +22822,9 @@
'#(syntax-object
x
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22765,9 +22839,9 @@
(list '#(syntax-object
id
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22781,9 +22855,9 @@
'(#(syntax-object
identifier?
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22797,9 +22871,9 @@
(#(syntax-object
syntax
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22813,9 +22887,9 @@
#(syntax-object
id
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22829,9 +22903,15 @@
(list '#(syntax-object
syntax
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage
+ #(e)
+ #((top))
+ #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22842,13 +22922,13 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{e 61638}#))
+ e-38894))
(list '(#(syntax-object
_
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22862,9 +22942,9 @@
#(syntax-object
x
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22878,9 +22958,9 @@
#(syntax-object
...
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage #(e) #((top)) #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22894,9 +22974,15 @@
(list '#(syntax-object
syntax
((top)
- #(ribcage #(e) #((top)) #("i61607"))
+ #(ribcage
+ #(e)
+ #((top))
+ #("l-*-38863"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22907,19 +22993,19 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{e 61638}#
+ (cons e-38894
'(#(syntax-object
x
((top)
#(ribcage
#(e)
#((top))
- #("i61607"))
+ #("l-*-38863"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22936,12 +23022,12 @@
#(ribcage
#(e)
#((top))
- #("i61607"))
+ #("l-*-38863"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22952,17 +23038,17 @@
((top))
(hygiene guile))))))
(hygiene guile)))))))))
- #{tmp 61634}#)
- (let ((#{tmp 61639}#
+ tmp-38890)
+ (let ((tmp-38895
($sc-dispatch
- #{x 61632}#
+ x-38888
'(_ (any any)
((#(free-id
#(syntax-object
set!
((top)
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -22976,33 +23062,37 @@
any
any)
any)))))
- (if (if #{tmp 61639}#
+ (if (if tmp-38895
(@apply
- (lambda (#{id 61643}#
- #{exp1 61644}#
- #{var 61645}#
- #{val 61646}#
- #{exp2 61647}#)
- (if (identifier? #{id 61643}#)
- (identifier? #{var 61645}#)
+ (lambda (id-38899
+ exp1-38900
+ var-38901
+ val-38902
+ exp2-38903)
+ (if (identifier? id-38899)
+ (identifier? var-38901)
#f))
- #{tmp 61639}#)
+ tmp-38895)
#f)
(@apply
- (lambda (#{id 61648}#
- #{exp1 61649}#
- #{var 61650}#
- #{val 61651}#
- #{exp2 61652}#)
+ (lambda (id-38904
+ exp1-38905
+ var-38906
+ val-38907
+ exp2-38908)
(list '#(syntax-object
make-variable-transformer
((top)
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622" "i61623" "i61624" "i61625" "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23019,13 +23109,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23042,13 +23132,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23065,13 +23155,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23089,13 +23179,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23112,13 +23202,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23135,13 +23225,13 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage #(x) #((top)) #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23158,13 +23248,16 @@
#(ribcage
#(id exp1 var val exp2)
#((top) (top) (top) (top) (top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61604"))
+ #(ribcage
+ #(x)
+ #((top))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23185,16 +23278,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23205,8 +23298,8 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{var 61650}#
- #{val 61651}#)
+ var-38906
+ val-38907)
(list '#(syntax-object
syntax
((top)
@@ -23217,16 +23310,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23237,8 +23330,8 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{exp2 61652}#))
- (list (cons #{id 61648}#
+ exp2-38908))
+ (list (cons id-38904
'(#(syntax-object
x
((top)
@@ -23249,16 +23342,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23279,16 +23372,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23309,16 +23402,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23329,7 +23422,7 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{exp1 61649}#
+ (cons exp1-38905
'(#(syntax-object
x
((top)
@@ -23344,16 +23437,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23379,16 +23472,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23400,7 +23493,7 @@
(hygiene
guile))))))
(hygiene guile))))))
- (list #{id 61648}#
+ (list id-38904
(list '#(syntax-object
identifier?
((top)
@@ -23411,16 +23504,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23445,16 +23538,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23466,7 +23559,7 @@
(hygiene
guile))))))
(hygiene guile))
- #{id 61648}#))
+ id-38904))
(list '#(syntax-object
syntax
((top)
@@ -23477,16 +23570,16 @@
(top)
(top)
(top))
- #("i61622"
- "i61623"
- "i61624"
- "i61625"
- "i61626"))
+ #("l-*-38878"
+ "l-*-38879"
+ "l-*-38880"
+ "l-*-38881"
+ "l-*-38882"))
#(ribcage () () ())
#(ribcage
#(x)
#((top))
- #("i61604"))
+ #("l-*-38860"))
#(ribcage
(identifier-syntax)
((top))
@@ -23497,37 +23590,37 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{exp1 61649}#))))))
- #{tmp 61639}#)
+ exp1-38905))))))
+ tmp-38895)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 61632}#))))))))
+ x-38888))))))))
(define define*
(make-syntax-transformer
'define*
'macro
- (lambda (#{x 61685}#)
- (let ((#{tmp 61687}#
+ (lambda (x-38941)
+ (let ((tmp-38943
($sc-dispatch
- #{x 61685}#
+ x-38941
'(_ (any . any) any . each-any))))
- (if #{tmp 61687}#
+ (if tmp-38943
(@apply
- (lambda (#{id 61691}#
- #{args 61692}#
- #{b0 61693}#
- #{b1 61694}#)
+ (lambda (id-38947 args-38948 b0-38949 b1-38950)
(list '#(syntax-object
define
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
- #("i61667" "i61668" "i61669" "i61670"))
+ #("l-*-38923"
+ "l-*-38924"
+ "l-*-38925"
+ "l-*-38926"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61664"))
+ #(ribcage #(x) #((top)) #("l-*-38920"))
#(ribcage
(define*)
((top))
@@ -23538,16 +23631,19 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{id 61691}#
+ id-38947
(cons '#(syntax-object
lambda*
((top)
#(ribcage
#(id args b0 b1)
#((top) (top) (top) (top))
- #("i61667" "i61668" "i61669" "i61670"))
+ #("l-*-38923"
+ "l-*-38924"
+ "l-*-38925"
+ "l-*-38926"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61664"))
+ #(ribcage #(x) #((top)) #("l-*-38920"))
#(ribcage
(define*)
((top))
@@ -23558,14 +23654,12 @@
((top))
(hygiene guile))))))
(hygiene guile))
- (cons #{args 61692}#
- (cons #{b0 61693}# #{b1 61694}#)))))
- #{tmp 61687}#)
- (let ((#{tmp 61695}#
- ($sc-dispatch #{x 61685}# '(_ any any))))
- (if (if #{tmp 61695}#
+ (cons args-38948 (cons b0-38949 b1-38950)))))
+ tmp-38943)
+ (let ((tmp-38951 ($sc-dispatch x-38941 '(_ any any))))
+ (if (if tmp-38951
(@apply
- (lambda (#{id 61699}# #{val 61700}#)
+ (lambda (id-38955 val-38956)
(identifier?
'#(syntax-object
x
@@ -23573,9 +23667,9 @@
#(ribcage
#(id val)
#((top) (top))
- #("i61677" "i61678"))
+ #("l-*-38933" "l-*-38934"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61664"))
+ #(ribcage #(x) #((top)) #("l-*-38920"))
#(ribcage
(define*)
((top))
@@ -23586,19 +23680,19 @@
((top))
(hygiene guile))))))
(hygiene guile))))
- #{tmp 61695}#)
+ tmp-38951)
#f)
(@apply
- (lambda (#{id 61701}# #{val 61702}#)
+ (lambda (id-38957 val-38958)
(list '#(syntax-object
define
((top)
#(ribcage
#(id val)
#((top) (top))
- #("i61681" "i61682"))
+ #("l-*-38937" "l-*-38938"))
#(ribcage () () ())
- #(ribcage #(x) #((top)) #("i61664"))
+ #(ribcage #(x) #((top)) #("l-*-38920"))
#(ribcage
(define*)
((top))
@@ -23609,11 +23703,11 @@
((top))
(hygiene guile))))))
(hygiene guile))
- #{id 61701}#
- #{val 61702}#))
- #{tmp 61695}#)
+ id-38957
+ val-38958))
+ tmp-38951)
(syntax-violation
#f
"source expression failed to match any pattern"
- #{x 61685}#))))))))
+ x-38941))))))))
diff --git a/module/ice-9/psyntax.scm b/module/ice-9/psyntax.scm
index c20259b19..428b583ae 100644
--- a/module/ice-9/psyntax.scm
+++ b/module/ice-9/psyntax.scm
@@ -273,8 +273,11 @@
(lambda (x mod)
(primitive-eval x)))
- (define-syntax-rule (gensym-hook)
- (gensym))
+ ;; Capture syntax-session-id before we shove it off into a module.
+ (define session-id
+ (let ((v (module-variable (current-module) 'syntax-session-id)))
+ (lambda ()
+ ((variable-ref v)))))
(define put-global-definition-hook
(lambda (symbol type val)
@@ -452,7 +455,7 @@
;; FIXME: use a faster gensym
(define-syntax-rule (build-lexical-var src id)
- (gensym (string-append (symbol->string id) " ")))
+ (gensym (string-append (symbol->string id) "-")))
(define-structure (syntax-object expression wrap module))
@@ -626,13 +629,8 @@
;; labels must be comparable with "eq?", have read-write invariance,
;; and distinct from symbols.
- (define gen-label
- (let ((i 0))
- (lambda ()
- (let ((n i))
- ;; FIXME: Use atomic ops.
- (set! i (1+ n))
- (number->string n 36)))))
+ (define (gen-label)
+ (string-append "l-" (session-id) (symbol->string (gensym "-"))))
(define gen-labels
(lambda (ls)
@@ -661,7 +659,7 @@
(cons 'shift (wrap-subst w)))))
(define-syntax-rule (new-mark)
- (gensym "m"))
+ (gensym (string-append "m-" (session-id) "-")))
;; make-empty-ribcage and extend-ribcage maintain list-based ribcages for
;; internal definitions, in which the ribcages are built incrementally
@@ -1079,7 +1077,7 @@
(call-with-values
(lambda ()
(syntax-type x r w (source-annotation x) ribcage mod #f))
- (lambda (type value e w s mod)
+ (lambda (type value form e w s mod)
(case type
((define-form)
(let* ((id (wrap value w mod))
@@ -1171,11 +1169,11 @@
(else
(list
(if (eq? m 'c&e)
- (let ((x (expand-expr type value e r w s mod)))
+ (let ((x (expand-expr type value form e r w s mod)))
(top-level-eval-hook x mod)
(lambda () x))
(lambda ()
- (expand-expr type value e r w s mod)))))))))
+ (expand-expr type value form e r w s mod)))))))))
(let ((exps (map (lambda (x) (x))
(reverse (parse body r w s m esew mod)))))
(if (null? exps)
@@ -1214,8 +1212,8 @@
(syntax-violation 'eval-when "invalid situation" e
(car l))))))))
- ;; syntax-type returns six values: type, value, e, w, s, and mod. The
- ;; first two are described in the table below.
+ ;; syntax-type returns seven values: type, value, form, e, w, s, and
+ ;; mod. The first two are described in the table below.
;;
;; type value explanation
;; -------------------------------------------------------------------
@@ -1244,10 +1242,11 @@
;; constant none self-evaluating datum
;; other none anything else
;;
- ;; For definition forms (define-form, define-syntax-parameter-form,
- ;; and define-syntax-form), e is the rhs expression. For all
- ;; others, e is the entire form. w is the wrap for e. s is the
- ;; source for the entire form. mod is the module for e.
+ ;; form is the entire form. For definition forms (define-form,
+ ;; define-syntax-form, and define-syntax-parameter-form), e is the
+ ;; rhs expression. For all others, e is the entire form. w is the
+ ;; wrap for both form and e. s is the source for the entire form.
+ ;; mod is the module for both form and e.
;;
;; syntax-type expands macros and unwraps as necessary to get to one
;; of the forms above. It also parses definition forms, although
@@ -1262,28 +1261,28 @@
(case type
((macro)
(if for-car?
- (values type value e w s mod)
+ (values type value e e w s mod)
(syntax-type (expand-macro value e r w s rib mod)
r empty-wrap s rib mod #f)))
((global)
;; Toplevel definitions may resolve to bindings with
;; different names or in different modules.
- (values type value value w s mod*))
- (else (values type value e w s mod))))))
+ (values type value e value w s mod*))
+ (else (values type value e e w s mod))))))
((pair? e)
(let ((first (car e)))
(call-with-values
(lambda () (syntax-type first r w s rib mod #t))
- (lambda (ftype fval fe fw fs fmod)
+ (lambda (ftype fval fform fe fw fs fmod)
(case ftype
((lexical)
- (values 'lexical-call fval e w s mod))
+ (values 'lexical-call fval e e w s mod))
((global)
;; If we got here via an (@@ ...) expansion, we need to
;; make sure the fmod information is propagated back
;; correctly -- hence this consing.
(values 'global-call (make-syntax-object fval w fmod)
- e w s mod))
+ e e w s mod))
((macro)
(syntax-type (expand-macro fval e r w s rib mod)
r empty-wrap s rib mod for-car?))
@@ -1292,23 +1291,24 @@
(lambda (e r w s mod)
(syntax-type e r w s rib mod for-car?))))
((core)
- (values 'core-form fval e w s mod))
+ (values 'core-form fval e e w s mod))
((local-syntax)
- (values 'local-syntax-form fval e w s mod))
+ (values 'local-syntax-form fval e e w s mod))
((begin)
- (values 'begin-form #f e w s mod))
+ (values 'begin-form #f e e w s mod))
((eval-when)
- (values 'eval-when-form #f e w s mod))
+ (values 'eval-when-form #f e e w s mod))
((define)
(syntax-case e ()
((_ name val)
(id? #'name)
- (values 'define-form #'name #'val w s mod))
+ (values 'define-form #'name e #'val w s mod))
((_ (name . args) e1 e2 ...)
(and (id? #'name)
(valid-bound-ids? (lambda-var-list #'args)))
;; need lambda here...
(values 'define-form (wrap #'name w mod)
+ (wrap e w mod)
(decorate-source
(cons #'lambda (wrap #'(args e1 e2 ...) w mod))
s)
@@ -1316,38 +1316,39 @@
((_ name)
(id? #'name)
(values 'define-form (wrap #'name w mod)
+ (wrap e w mod)
#'(if #f #f)
empty-wrap s mod))))
((define-syntax)
(syntax-case e ()
((_ name val)
(id? #'name)
- (values 'define-syntax-form #'name #'val w s mod))))
+ (values 'define-syntax-form #'name e #'val w s mod))))
((define-syntax-parameter)
(syntax-case e ()
((_ name val)
(id? #'name)
- (values 'define-syntax-parameter-form #'name #'val w s mod))))
+ (values 'define-syntax-parameter-form #'name e #'val w s mod))))
(else
- (values 'call #f e w s mod)))))))
+ (values 'call #f e e w s mod)))))))
((syntax-object? e)
(syntax-type (syntax-object-expression e)
r
(join-wraps w (syntax-object-wrap e))
(or (source-annotation e) s) rib
(or (syntax-object-module e) mod) for-car?))
- ((self-evaluating? e) (values 'constant #f e w s mod))
- (else (values 'other #f e w s mod)))))
+ ((self-evaluating? e) (values 'constant #f e e w s mod))
+ (else (values 'other #f e e w s mod)))))
(define expand
(lambda (e r w mod)
(call-with-values
(lambda () (syntax-type e r w (source-annotation e) #f mod #f))
- (lambda (type value e w s mod)
- (expand-expr type value e r w s mod)))))
+ (lambda (type value form e w s mod)
+ (expand-expr type value form e r w s mod)))))
(define expand-expr
- (lambda (type value e r w s mod)
+ (lambda (type value form e r w s mod)
(case type
((lexical)
(build-lexical-reference 'value s e value))
@@ -1396,8 +1397,8 @@
(expand-sequence #'(e1 e2 ...) r w s mod)
(expand-void))))))
((define-form define-syntax-form define-syntax-parameter-form)
- (syntax-violation #f "definition in expression context"
- e (wrap value w mod)))
+ (syntax-violation #f "definition in expression context, where definitions are not allowed,"
+ (source-wrap form w s mod)))
((syntax)
(syntax-violation #f "reference to pattern variable outside syntax form"
(source-wrap e w s mod)))
@@ -1541,7 +1542,7 @@
(let ((e (cdar body)) (er (caar body)))
(call-with-values
(lambda () (syntax-type e er empty-wrap (source-annotation er) ribcage mod #f))
- (lambda (type value e w s mod)
+ (lambda (type value form e w s mod)
(case type
((define-form)
(let ((id (wrap value w mod)) (label (gen-label)))
@@ -2307,7 +2308,7 @@
((_ (head tail ...) val)
(call-with-values
(lambda () (syntax-type #'head r empty-wrap no-source #f mod #t))
- (lambda (type value ee ww ss modmod)
+ (lambda (type value ee* ee ww ss modmod)
(case type
((module-ref)
(let ((val (expand #'val r w mod)))
@@ -2605,47 +2606,11 @@
(set! syntax-source
(lambda (x) (source-annotation x)))
- (set! syntax-local-binding
- (lambda (id)
- (arg-check nonsymbol-id? id 'syntax-local-binding)
- (with-transformer-environment
- (lambda (e r w s rib mod)
- (define (strip-anti-mark w)
- (let ((ms (wrap-marks w)) (s (wrap-subst w)))
- (if (and (pair? ms) (eq? (car ms) the-anti-mark))
- ;; output is from original text
- (make-wrap (cdr ms) (if rib (cons rib (cdr s)) (cdr s)))
- ;; output introduced by macro
- (make-wrap ms (if rib (cons rib s) s)))))
- (call-with-values (lambda ()
- (resolve-identifier
- (syntax-object-expression id)
- (strip-anti-mark (syntax-object-wrap id))
- r
- (syntax-object-module id)
- ;; FIXME: come up with a better policy for
- ;; resolve-syntax-parameters
- #t))
- (lambda (type value mod)
- (case type
- ((lexical) (values 'lexical value))
- ((macro) (values 'macro value))
- ((syntax) (values 'pattern-variable value))
- ((displaced-lexical) (values 'displaced-lexical #f))
- ((global) (values 'global (cons value (cdr mod))))
- (else (values 'other #f)))))))))
-
- (set! syntax-locally-bound-identifiers
- (lambda (x)
- (arg-check nonsymbol-id? x 'syntax-locally-bound-identifiers)
- (locally-bound-identifiers (syntax-object-wrap x)
- (syntax-object-module x))))
-
(set! generate-temporaries
(lambda (ls)
(arg-check list? ls 'generate-temporaries)
(let ((mod (cons 'hygiene (module-name (current-module)))))
- (map (lambda (x) (wrap (gensym-hook) top-wrap mod)) ls))))
+ (map (lambda (x) (wrap (gensym "t-") top-wrap mod)) ls))))
(set! free-identifier=?
(lambda (x y)
@@ -2669,6 +2634,53 @@
(strip form empty-wrap)
(and subform (strip subform empty-wrap)))))
+ (let ()
+ (define (syntax-module id)
+ (arg-check nonsymbol-id? id 'syntax-module)
+ (cdr (syntax-object-module id)))
+
+ (define (syntax-local-binding id)
+ (arg-check nonsymbol-id? id 'syntax-local-binding)
+ (with-transformer-environment
+ (lambda (e r w s rib mod)
+ (define (strip-anti-mark w)
+ (let ((ms (wrap-marks w)) (s (wrap-subst w)))
+ (if (and (pair? ms) (eq? (car ms) the-anti-mark))
+ ;; output is from original text
+ (make-wrap (cdr ms) (if rib (cons rib (cdr s)) (cdr s)))
+ ;; output introduced by macro
+ (make-wrap ms (if rib (cons rib s) s)))))
+ (call-with-values (lambda ()
+ (resolve-identifier
+ (syntax-object-expression id)
+ (strip-anti-mark (syntax-object-wrap id))
+ r
+ (syntax-object-module id)
+ ;; FIXME: come up with a better policy for
+ ;; resolve-syntax-parameters
+ #t))
+ (lambda (type value mod)
+ (case type
+ ((lexical) (values 'lexical value))
+ ((macro) (values 'macro value))
+ ((syntax) (values 'pattern-variable value))
+ ((displaced-lexical) (values 'displaced-lexical #f))
+ ((global) (values 'global (cons value (cdr mod))))
+ (else (values 'other #f))))))))
+
+ (define (syntax-locally-bound-identifiers id)
+ (arg-check nonsymbol-id? id 'syntax-locally-bound-identifiers)
+ (locally-bound-identifiers (syntax-object-wrap id)
+ (syntax-object-module id)))
+
+ ;; Using define! instead of set! to avoid warnings at
+ ;; compile-time, after the variables are stolen away into (system
+ ;; syntax). See the end of boot-9.scm.
+ ;;
+ (define! 'syntax-module syntax-module)
+ (define! 'syntax-local-binding syntax-local-binding)
+ (define! 'syntax-locally-bound-identifiers syntax-locally-bound-identifiers))
+
;; $sc-dispatch expects an expression and a pattern. If the expression
;; matches the pattern a list of the matching expressions for each
;; "any" is returned. Otherwise, #f is returned. (This use of #f will
diff --git a/module/language/scheme/spec.scm b/module/language/scheme/spec.scm
index 0df4171ff..e4cf55c4c 100644
--- a/module/language/scheme/spec.scm
+++ b/module/language/scheme/spec.scm
@@ -1,6 +1,6 @@
;;; Guile Scheme specification
-;; Copyright (C) 2001, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 2001, 2009, 2010, 2011, 2012 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
@@ -53,4 +53,11 @@
;; compile-time changes to `current-reader' are
;; limited to the current compilation unit.
(module-define! m 'current-reader (make-fluid))
+
+ ;; Default to `simple-format', as is the case until
+ ;; (ice-9 format) is loaded. This allows
+ ;; compile-time warnings to be emitted when using
+ ;; unsupported options.
+ (module-set! m 'format simple-format)
+
m)))
diff --git a/module/language/tree-il/analyze.scm b/module/language/tree-il/analyze.scm
index f75c9f16a..04687a8c9 100644
--- a/module/language/tree-il/analyze.scm
+++ b/module/language/tree-il/analyze.scm
@@ -22,6 +22,7 @@
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-11)
+ #:use-module (srfi srfi-26)
#:use-module (ice-9 vlist)
#:use-module (ice-9 match)
#:use-module (system base syntax)
@@ -1392,7 +1393,7 @@ accurate information is missing from a given `tree-il' element."
((,port ,fmt . ,rest)
(if (and (const? port)
(not (boolean? (const-exp port))))
- (warn 'format loc 'wrong-port (const-exp port)))
+ (warning 'format loc 'wrong-port (const-exp port)))
;; Warn on non-literal format strings, unless they refer to a
;; lexical variable named "fmt".
(if (record-case fmt
@@ -1403,6 +1404,36 @@ accurate information is missing from a given `tree-il' element."
(else
(warning 'format loc 'wrong-num-args (length args)))))
+ (define (check-simple-format-args args loc)
+ ;; Check the arguments to the `simple-format' procedure, which is
+ ;; less capable than that of (ice-9 format).
+
+ (define allowed-chars
+ '(#\A #\S #\a #\s #\~ #\%))
+
+ (define (format-chars fmt)
+ (let loop ((chars (string->list fmt))
+ (result '()))
+ (match chars
+ (()
+ (reverse result))
+ ((#\~ opt rest ...)
+ (loop rest (cons opt result)))
+ ((_ rest ...)
+ (loop rest result)))))
+
+ (match args
+ ((port ($ <const> _ (? string? fmt)) _ ...)
+ (let ((opts (format-chars fmt)))
+ (or (every (cut memq <> allowed-chars) opts)
+ (begin
+ (warning 'format loc 'simple-format fmt
+ (find (negate (cut memq <> allowed-chars)) opts))
+ #f))))
+ ((port (($ <const> _ '_) fmt) args ...)
+ (check-simple-format-args `(,port ,fmt ,args) loc))
+ (_ #t)))
+
(define (resolve-toplevel name)
(and (module? env)
(false-if-exception (module-ref env name))))
@@ -1410,9 +1441,19 @@ accurate information is missing from a given `tree-il' element."
(match x
(($ <call> src ($ <toplevel-ref> _ name) args)
(let ((proc (resolve-toplevel name)))
- (and (or (eq? proc format)
- (eq? proc (@ (ice-9 format) format)))
- (check-format-args args (or src (find pair? locs))))))
+ (if (or (and (eq? proc (@ (guile) simple-format))
+ (check-simple-format-args args
+ (or src (find pair? locs))))
+ (eq? proc (@ (ice-9 format) format)))
+ (check-format-args args (or src (find pair? locs))))))
+ (($ <call> src ($ <module-ref> _ '(ice-9 format) 'format) args)
+ (check-format-args args (or src (find pair? locs))))
+ (($ <call> src ($ <module-ref> _ '(guile)
+ (or 'format 'simple-format))
+ args)
+ (and (check-simple-format-args args
+ (or src (find pair? locs)))
+ (check-format-args args (or src (find pair? locs)))))
(_ #t))
#t)
diff --git a/module/language/tree-il/peval.scm b/module/language/tree-il/peval.scm
index aab872164..9aac24cc1 100644
--- a/module/language/tree-il/peval.scm
+++ b/module/language/tree-il/peval.scm
@@ -411,7 +411,7 @@ top-level bindings from ENV and return the resulting expression."
(define (fresh-gensyms vars)
(map (lambda (var)
(let ((new (gensym (string-append (symbol->string (var-name var))
- " "))))
+ "-"))))
(set! store (vhash-consq new var store))
new))
vars))
diff --git a/module/language/tree-il/primitives.scm b/module/language/tree-il/primitives.scm
index 8e9d2eb6e..f192c4fc3 100644
--- a/module/language/tree-il/primitives.scm
+++ b/module/language/tree-il/primitives.scm
@@ -1,6 +1,6 @@
;;; open-coding primitive procedures
-;; Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 2009, 2010, 2011, 2012 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
@@ -487,8 +487,8 @@
'@dynamic-wind
(case-lambda
((src pre expr post)
- (let ((PRE (gensym " pre"))
- (POST (gensym " post")))
+ (let ((PRE (gensym "pre-"))
+ (POST (gensym "post-")))
(make-let
src
'(pre post)
diff --git a/module/scripts/list.scm b/module/scripts/list.scm
index 0f1d715dd..66116ce5b 100644
--- a/module/scripts/list.scm
+++ b/module/scripts/list.scm
@@ -1,6 +1,6 @@
;;; List --- List scripts that can be invoked by guild -*- coding: iso-8859-1 -*-
-;;;; Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
+;;;; Copyright (C) 2009, 2010, 2011, 2012 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
@@ -26,6 +26,7 @@
;;; Code:
(define-module (scripts list)
+ #:use-module (srfi srfi-1)
#:export (list-scripts))
(define %include-in-guild-list #f)
diff --git a/module/system/base/message.scm b/module/system/base/message.scm
index 75e14ea1e..8cf285afd 100644
--- a/module/system/base/message.scm
+++ b/module/system/base/message.scm
@@ -1,6 +1,6 @@
;;; User interface messages
-;; Copyright (C) 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 2009, 2010, 2011, 2012 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
@@ -150,6 +150,10 @@
(emit #f "~a to ~a" min max))))
(match rest
+ (('simple-format fmt opt)
+ (emit port
+ "~A: warning: ~S: unsupported format option ~~~A, use (ice-9 format) instead~%"
+ loc (escape-newlines fmt) opt))
(('wrong-format-arg-count fmt min max actual)
(emit port
"~A: warning: ~S: wrong number of `format' arguments: expected ~A, got ~A~%"
diff --git a/module/system/repl/common.scm b/module/system/repl/common.scm
index 6c6ee2ae7..346ba990f 100644
--- a/module/system/repl/common.scm
+++ b/module/system/repl/common.scm
@@ -39,7 +39,7 @@
(define *version*
(format #f "GNU Guile ~A
-Copyright (C) 1995-2011 Free Software Foundation, Inc.
+Copyright (C) 1995-2012 Free Software Foundation, Inc.
Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
diff --git a/module/system/repl/error-handling.scm b/module/system/repl/error-handling.scm
index 2a585aaff..0e31eb941 100644
--- a/module/system/repl/error-handling.scm
+++ b/module/system/repl/error-handling.scm
@@ -1,6 +1,6 @@
;;; Error handling in the REPL
-;; Copyright (C) 2001, 2009, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C) 2001, 2009, 2010, 2011, 2012 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
@@ -23,6 +23,7 @@
#:use-module (system base pmatch)
#:use-module (system vm trap-state)
#:use-module (system repl debug)
+ #:use-module (ice-9 format)
#:export (call-with-error-handling
with-error-handling))
diff --git a/test-suite/standalone/test-loose-ends.c b/test-suite/standalone/test-loose-ends.c
index 2fdbe7d4b..ee0fcf3f3 100644
--- a/test-suite/standalone/test-loose-ends.c
+++ b/test-suite/standalone/test-loose-ends.c
@@ -3,7 +3,7 @@
* Test items of the Guile C API that aren't covered by any other tests.
*/
-/* Copyright (C) 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2009, 2012 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
@@ -43,9 +43,43 @@ test_scm_from_locale_keywordn ()
}
static void
+test_scm_local_eval ()
+{
+ SCM result;
+
+ scm_c_use_module ("ice-9 local-eval");
+ result = scm_local_eval
+ (scm_list_3 (scm_from_latin1_symbol ("+"),
+ scm_from_latin1_symbol ("x"),
+ scm_from_latin1_symbol ("y")),
+ scm_c_eval_string ("(let ((x 1) (y 2)) (the-environment))"));
+
+ assert (scm_is_true (scm_equal_p (result,
+ scm_from_signed_integer (3))));
+}
+
+static void
+test_scm_call ()
+{
+ SCM result;
+
+ result = scm_call (scm_c_public_ref ("guile", "+"),
+ scm_from_int (1),
+ scm_from_int (2),
+ SCM_UNDEFINED);
+ assert (scm_is_true (scm_equal_p (result, scm_from_int (3))));
+
+ result = scm_call (scm_c_public_ref ("guile", "list"),
+ SCM_UNDEFINED);
+ assert (scm_is_eq (result, SCM_EOL));
+}
+
+static void
tests (void *data, int argc, char **argv)
{
test_scm_from_locale_keywordn ();
+ test_scm_local_eval ();
+ test_scm_call ();
}
int
diff --git a/test-suite/tests/eval.test b/test-suite/tests/eval.test
index a128cd7e1..a5fbfece2 100644
--- a/test-suite/tests/eval.test
+++ b/test-suite/tests/eval.test
@@ -1,5 +1,5 @@
;;;; eval.test --- tests guile's evaluator -*- scheme -*-
-;;;; Copyright (C) 2000, 2001, 2006, 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
+;;;; Copyright (C) 2000, 2001, 2006, 2007, 2009, 2010, 2011, 2012 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
@@ -19,7 +19,8 @@
:use-module (test-suite lib)
:use-module ((srfi srfi-1) :select (unfold count))
:use-module ((system vm vm) :select (make-vm call-with-vm))
- :use-module (ice-9 documentation))
+ :use-module (ice-9 documentation)
+ :use-module (ice-9 local-eval))
(define exception:bad-expression
@@ -74,6 +75,10 @@
(with-test-prefix "evaluator"
+ (pass-if "definitions return #<unspecified>"
+ (eq? (primitive-eval '(define test-var 'foo))
+ (if #f #f)))
+
(with-test-prefix "symbol lookup"
(with-test-prefix "top level"
@@ -422,4 +427,96 @@
(thunk (let loop () (cons 's (loop)))))
(call-with-vm vm thunk))))
+;;;
+;;; local-eval
+;;;
+
+(with-test-prefix "local evaluation"
+
+ (pass-if "local-eval"
+
+ (let* ((env1 (local-eval '(let ((x 1) (y 2) (z 3))
+ (define-syntax-rule (foo x) (quote x))
+ (the-environment))
+ (current-module)))
+ (env2 (local-eval '(let ((x 111) (a 'a))
+ (define-syntax-rule (bar x) (quote x))
+ (the-environment))
+ env1)))
+ (local-eval '(set! x 11) env1)
+ (local-eval '(set! y 22) env1)
+ (local-eval '(set! z 33) env2)
+ (and (equal? (local-eval '(list x y z) env1)
+ '(11 22 33))
+ (equal? (local-eval '(list x y z a) env2)
+ '(111 22 33 a)))))
+
+ (pass-if "local-compile"
+
+ (let* ((env1 (local-compile '(let ((x 1) (y 2) (z 3))
+ (define-syntax-rule (foo x) (quote x))
+ (the-environment))
+ (current-module)))
+ (env2 (local-compile '(let ((x 111) (a 'a))
+ (define-syntax-rule (bar x) (quote x))
+ (the-environment))
+ env1)))
+ (local-compile '(set! x 11) env1)
+ (local-compile '(set! y 22) env1)
+ (local-compile '(set! z 33) env2)
+ (and (equal? (local-compile '(list x y z) env1)
+ '(11 22 33))
+ (equal? (local-compile '(list x y z a) env2)
+ '(111 22 33 a)))))
+
+ (pass-if "the-environment within a macro"
+ (let ((module-a-name '(test module the-environment a))
+ (module-b-name '(test module the-environment b)))
+ (let ((module-a (resolve-module module-a-name))
+ (module-b (resolve-module module-b-name)))
+ (module-use! module-a (resolve-interface '(guile)))
+ (module-use! module-a (resolve-interface '(ice-9 local-eval)))
+ (eval '(begin
+ (define z 3)
+ (define-syntax-rule (test)
+ (let ((x 1) (y 2))
+ (the-environment))))
+ module-a)
+ (module-use! module-b (resolve-interface '(guile)))
+ (let ((env (local-eval `(let ((x 111) (y 222))
+ ((@@ ,module-a-name test)))
+ module-b)))
+ (equal? (local-eval '(list x y z) env)
+ '(1 2 3))))))
+
+ (pass-if "capture pattern variables"
+ (let ((env (syntax-case #'(((a 1) (b 2) (c 3))
+ ((d 4) (e 5) (f 6))) ()
+ ((((k v) ...) ...) (the-environment)))))
+ (equal? (syntax->datum (local-eval '#'((k ... v ...) ...) env))
+ '((a b c 1 2 3) (d e f 4 5 6)))))
+
+ (pass-if "mixed primitive-eval, local-eval and local-compile"
+
+ (let* ((env1 (primitive-eval '(let ((x 1) (y 2) (z 3))
+ (define-syntax-rule (foo x) (quote x))
+ (the-environment))))
+ (env2 (local-eval '(let ((x 111) (a 'a))
+ (define-syntax-rule (bar x) (quote x))
+ (the-environment))
+ env1))
+ (env3 (local-compile '(let ((y 222) (b 'b))
+ (the-environment))
+ env2)))
+ (local-eval '(set! x 11) env1)
+ (local-compile '(set! y 22) env2)
+ (local-eval '(set! z 33) env2)
+ (local-compile '(set! a (* y 2)) env3)
+ (and (equal? (local-compile '(list x y z) env1)
+ '(11 22 33))
+ (equal? (local-eval '(list x y z a) env2)
+ '(111 22 33 444))
+ (equal? (local-eval '(list x y z a b) env3)
+ '(111 222 33 444 b))))))
+
;;; eval.test ends here
diff --git a/test-suite/tests/gc.test b/test-suite/tests/gc.test
index 527bef56c..97eeb195e 100644
--- a/test-suite/tests/gc.test
+++ b/test-suite/tests/gc.test
@@ -87,14 +87,26 @@
total)))
(pass-if "Lexical vars are collectable"
- (list?
- (compile
- '(begin
- (define guardian (make-guardian))
- (let ((f (list 'foo)))
- ;; Introduce a useless second reference to f to prevent the
- ;; optimizer from propagating the lexical binding.
- f
- (guardian f))
- (gc)(gc)(gc)
- (guardian))))))
+ (let ((l (compile
+ '(begin
+ (define guardian (make-guardian))
+ (let ((f (list 'foo)))
+ (guardian f))
+ ;; See below.
+ ;; ((lambda () #t))
+ (gc)(gc)(gc)
+ (guardian))
+ ;; Prevent the optimizer from propagating f.
+ #:opts '(#:partial-eval? #f))))
+ (if (not l)
+ ;; We think that something on the C stack in the VM is holding
+ ;; on to a reference to the list. This happens on
+ ;; register-poor architectures, where more locals are spilled
+ ;; to the stack. If more code runs before the (gc) is run,
+ ;; like a ((lambda () #t)), then the test passes. So given
+ ;; that at some point, the reference will be dropped, we will
+ ;; count these cases as "unresolved" instead of "fail".
+ ;;
+ ;; See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10336.
+ (throw 'unresolved)
+ (equal? l '(foo))))))
diff --git a/test-suite/tests/tree-il.test b/test-suite/tests/tree-il.test
index ebf78146e..0ab58c98a 100644
--- a/test-suite/tests/tree-il.test
+++ b/test-suite/tests/tree-il.test
@@ -550,12 +550,12 @@
;; Testing `(values foo)' in push context with RA.
(assert-tree-il->glil without-partial-evaluation
- (apply (primitive cdr)
- (letrec (lp) (#{lp ~V9KrhVD4PFEL6oCTrLg3A}#)
- ((lambda ((name . lp))
- (lambda-case ((() #f #f #f () ())
- (apply (toplevel values) (const (one two)))))))
- (apply (lexical lp #{lp ~V9KrhVD4PFEL6oCTrLg3A}#))))
+ (primcall cdr
+ (letrec (lp) (#{lp ~V9KrhVD4PFEL6oCTrLg3A}#)
+ ((lambda ((name . lp))
+ (lambda-case ((() #f #f #f () ())
+ (primcall values (const (one two)))))))
+ (call (lexical lp #{lp ~V9KrhVD4PFEL6oCTrLg3A}#))))
(program () (std-prelude 0 0 #f) (label _)
(branch br _) ;; entering the fix, jump to :2
;; :1 body of lp, jump to :3
@@ -2194,7 +2194,8 @@
(pass-if "~%, ~~, ~&, ~t, ~_, and ~\\n"
(null? (call-with-warnings
(lambda ()
- (compile '(format some-port "~&~3_~~ ~\n~12they~%")
+ (compile '((@ (ice-9 format) format) some-port
+ "~&~3_~~ ~\n~12they~%")
#:opts %opts-w-format
#:to 'assembly)))))
@@ -2221,7 +2222,8 @@
(pass-if "two missing arguments"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "foo ~10,2f and bar ~S~%")
+ (compile '((@ (ice-9 format) format) #f
+ "foo ~10,2f and bar ~S~%")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2252,7 +2254,7 @@
(pass-if "literals"
(null? (call-with-warnings
(lambda ()
- (compile '(format #f "~A ~[foo~;bar~;baz~;~] ~10,2f"
+ (compile '((@ (ice-9 format) format) #f "~A ~[foo~;bar~;baz~;~] ~10,2f"
'a 1 3.14)
#:opts %opts-w-format
#:to 'assembly)))))
@@ -2260,7 +2262,7 @@
(pass-if "literals with selector"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~2[foo~;bar~;baz~;~] ~A"
+ (compile '((@ (ice-9 format) format) #f "~2[foo~;bar~;baz~;~] ~A"
1 'dont-ignore-me)
#:opts %opts-w-format
#:to 'assembly)))))
@@ -2271,7 +2273,7 @@
(pass-if "escapes (exact count)"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~[~a~;~a~]")
+ (compile '((@ (ice-9 format) format) #f "~[~a~;~a~]")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2281,7 +2283,7 @@
(pass-if "escapes with selector"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~1[chbouib~;~a~]")
+ (compile '((@ (ice-9 format) format) #f "~1[chbouib~;~a~]")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2291,7 +2293,7 @@
(pass-if "escapes, range"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~[chbouib~;~a~;~2*~a~]")
+ (compile '((@ (ice-9 format) format) #f "~[chbouib~;~a~;~2*~a~]")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2301,7 +2303,7 @@
(pass-if "@"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~@[temperature=~d~]")
+ (compile '((@ (ice-9 format) format) #f "~@[temperature=~d~]")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2311,7 +2313,7 @@
(pass-if "nested"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~:[~[hey~;~a~;~va~]~;~3*~]")
+ (compile '((@ (ice-9 format) format) #f "~:[~[hey~;~a~;~va~]~;~3*~]")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2321,7 +2323,7 @@
(pass-if "unterminated"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~[unterminated")
+ (compile '((@ (ice-9 format) format) #f "~[unterminated")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2331,7 +2333,7 @@
(pass-if "unexpected ~;"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "foo~;bar")
+ (compile '((@ (ice-9 format) format) #f "foo~;bar")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2341,7 +2343,7 @@
(pass-if "unexpected ~]"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "foo~]")
+ (compile '((@ (ice-9 format) format) #f "foo~]")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2351,7 +2353,7 @@
(pass-if "~{...~}"
(null? (call-with-warnings
(lambda ()
- (compile '(format #f "~A ~{~S~} ~A"
+ (compile '((@ (ice-9 format) format) #f "~A ~{~S~} ~A"
'hello '("ladies" "and")
'gentlemen)
#:opts %opts-w-format
@@ -2360,7 +2362,7 @@
(pass-if "~{...~}, too many args"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~{~S~}" 1 2 3)
+ (compile '((@ (ice-9 format) format) #f "~{~S~}" 1 2 3)
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2370,14 +2372,14 @@
(pass-if "~@{...~}"
(null? (call-with-warnings
(lambda ()
- (compile '(format #f "~@{~S~}" 1 2 3)
+ (compile '((@ (ice-9 format) format) #f "~@{~S~}" 1 2 3)
#:opts %opts-w-format
#:to 'assembly)))))
(pass-if "~@{...~}, too few args"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~A ~@{~S~}")
+ (compile '((@ (ice-9 format) format) #f "~A ~@{~S~}")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2387,7 +2389,7 @@
(pass-if "unterminated ~{...~}"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~{")
+ (compile '((@ (ice-9 format) format) #f "~{")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2397,14 +2399,14 @@
(pass-if "~(...~)"
(null? (call-with-warnings
(lambda ()
- (compile '(format #f "~:@(~A ~A~)" 'foo 'bar)
+ (compile '((@ (ice-9 format) format) #f "~:@(~A ~A~)" 'foo 'bar)
#:opts %opts-w-format
#:to 'assembly)))))
(pass-if "~v"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~v_foo")
+ (compile '((@ (ice-9 format) format) #f "~v_foo")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2413,7 +2415,7 @@
(pass-if "~v:@y"
(null? (call-with-warnings
(lambda ()
- (compile '(format #f "~v:@y" 1 123)
+ (compile '((@ (ice-9 format) format) #f "~v:@y" 1 123)
#:opts %opts-w-format
#:to 'assembly)))))
@@ -2421,7 +2423,7 @@
(pass-if "~*"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~2*~a" 'a 'b)
+ (compile '((@ (ice-9 format) format) #f "~2*~a" 'a 'b)
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2431,14 +2433,14 @@
(pass-if "~?"
(null? (call-with-warnings
(lambda ()
- (compile '(format #f "~?" "~d ~d" '(1 2))
+ (compile '((@ (ice-9 format) format) #f "~?" "~d ~d" '(1 2))
#:opts %opts-w-format
#:to 'assembly)))))
(pass-if "complex 1"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f
+ (compile '((@ (ice-9 format) format) #f
"~4@S ~32S~@[;; ~1{~@?~}~]~@[~61t at ~a~]\n"
1 2 3 4 5 6)
#:opts %opts-w-format
@@ -2450,7 +2452,7 @@
(pass-if "complex 2"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f
+ (compile '((@ (ice-9 format) format) #f
"~:(~A~) Commands~:[~; [abbrev]~]:~2%"
1 2 3 4)
#:opts %opts-w-format
@@ -2462,7 +2464,7 @@
(pass-if "complex 3"
(let ((w (call-with-warnings
(lambda ()
- (compile '(format #f "~9@a~:[~*~3_~;~3d~] ~v:@y~%")
+ (compile '((@ (ice-9 format) format) #f "~9@a~:[~*~3_~;~3d~] ~v:@y~%")
#:opts %opts-w-format
#:to 'assembly)))))
(and (= (length w) 1)
@@ -2489,4 +2491,31 @@
(compile '(let ((format chbouib))
(format #t "not ~A a format string"))
#:opts %opts-w-format
- #:to 'assembly)))))))
+ #:to 'assembly)))))
+
+ (with-test-prefix "simple-format"
+
+ (pass-if "good"
+ (null? (call-with-warnings
+ (lambda ()
+ (compile '(simple-format #t "foo ~a bar ~s ~%~~" 1 2)
+ #:opts %opts-w-format
+ #:to 'assembly)))))
+
+ (pass-if "wrong number of args"
+ (let ((w (call-with-warnings
+ (lambda ()
+ (compile '(simple-format #t "foo ~a ~s~%" 'one-missing)
+ #:opts %opts-w-format
+ #:to 'assembly)))))
+ (and (= (length w) 1)
+ (number? (string-contains (car w) "wrong number")))))
+
+ (pass-if "unsupported"
+ (let ((w (call-with-warnings
+ (lambda ()
+ (compile '(simple-format #t "foo ~x~%" 16)
+ #:opts %opts-w-format
+ #:to 'assembly)))))
+ (and (= (length w) 1)
+ (number? (string-contains (car w) "unsupported format option"))))))))