...mode,
This mode is controlled by the compile-allow-cond-fallthrough parameter (see section 9.4.1.5). The default mode of a running MzScheme depends on command line arguments or internal settings established by an application with an embedded MzScheme. In MrEd, the default mode is to raise the exn:else exception for non-matching cond and case expressions.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...transformation.
Since an embedded macro definition is not a regular embedded definition, there is no ambiguity about whether an embedded macro defintion applies to previous expressions that are potentially embedded defintions; the macro only applies to expressions after the macro definition.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...application.
It is possible that a clause in a case-lambda expression can never be evaluated because a preceding clause always matches the arguments.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...bits
30 bits for a 32-bit architecture, 62 bits for a 64-bit architecture.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...itself.
This definition of eqv? technically contradicts R4RS, but R4RS does not address strange ``numbers'' like +nan.0.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...numbers.
The random number generator uses a relatively standard Unix random() implementation in its degree seven polynomial mode.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...stack<%>
A bracketed percent sign (``<%>'') is used by convention in MzScheme to indicate that a variable's value is a interface.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...stack%
A percent sign (``%'') is used by convention in MzScheme to indicate that a variable's value is a class.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...properties:
In principle, there are more properties of an instance variable that can be considered. For example, whether an instance variable overrides superclass variables is theoretically orthogonal to whether the instance variable is exposed or hidden. However, in practice it is not useful to have all possible combinations of these other properties.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...rename).
This set! restriction avoids certain bad forms of variable aliasing.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...unit-body-expr.
A unit-body-expr definition cannot shadow a syntax form or macro name. The detection of unit definitions is the same as for embedded definitions (see section 3.5.5), so the define and define-struct forms can be used for definitions.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...seconds:
The ``@'' in the variable name ``f1@'' indicates (by convention) that its value is a unit.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...variables,
Of course, a signature can be specified as an immediate signature.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...distinct.
Element names are compared using the printed form of the name. This is different from any other syntactic form, where variable names are compared as symbols. This distinction is relevant only when source code is generated within Scheme rather than read from a text source.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...Dybvig.
See http://www.cs.indiana.edu/scheme-repository/doc.proposals.exceptions.html
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...NAME=63596>assq
This exception is raised instead of a type exception because an error will not be signalled if a result is determined before processing the entire list.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...restored.
The dynamic-enable-break procedure cannot be implemented with dynamic-wind and break-enabled becuase the user could break during the evaluation of (enable-break #f).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...handler.
Note that the error escpae handler is not a parameter as discussed in section 9.4.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...removed.
In MrEd, the callback is associated with current eventspace at the time that the callback is installed. When the callback is invoked, it is called in the handler thread for its eventspace.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...expand-defmacro.
More precisely, the current namespace is used by the evaluation and load handlers, rather than directly by eval and load.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...string;
Using the default port write handler; see section 11.1.9.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...listeners.
In MrEd, custodians also manage eventspaces.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...src.
The backslash is a character in the string, so an extra backslash is required to specify the string as a Scheme constant. For example, the Scheme constant "\\1" is ``\1''.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...read
Flushing is performed by the default port read handler (see section 11.1.8) rather than by read itself.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...port:
Assuming that the current port display and write handlers are the default ones; see section 11.1.9 for more information.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...expanded.
Under Unix, expansion does not convert multiple adjacent slashes to a single slash. However, extra slashes in a pathname are always ignored.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...HREF="node137.htm#mztime">11.4).
For FAT filesystems under Windows, directories do not have modification dates. Therefore, the creation date is returned for a directory (but the modification date is returned for a file).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...name
The name "localhost" always specifies the local machine.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...error,
The standard error port is placed after the process id for compatibility with other Scheme implementations. For the same reason, process returns a list instead of multiple values.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...HREF="node113.htm#mzpcurrentwillexecutor">9.4.1.13).
Each thread periodically polls its current will executor with will-executor-try.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...namespace.
The eval procedure actually calls the current evalutation handler (see section 9.4.1.6) with e to evaluate the expression.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...eval.
The load procedure actually just sets the current load-relative directory and calls the current load handler (see section 9.4.1.7) with filename to load the file. The description of load here is actually a description of the default load handler.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...process
The set of environment variables is not saved. When an image is restored, the environment variables of the restoring program are transfered into the restored program.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...executable.
In the PLT distribution of MzScheme for Unix, the collects directory is in the top-level plt directory, rather than with the platform-specific binary or with the script in plt/bin.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...follows:
MrEd initializes the current-library-collection-paths parameter in the same way.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...filenames.
A MzScheme compiled code file should use the extension .zo, but this convention is not enforced.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...immutable.
A properly implemented define-const-struct is not inconsistent with define-struct. It simply has not been implemented, yet.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...f.
The returned procedure actually accepts any number of arguments, but immediately raises exn:application:arity if f cannot accept the provided number of arguments.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...unchanged.
The internals counts of some semaphores may be temporarily decremented if multiple semaphores become available at once.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...semaphores.
But the internal counts of some semaphores cold be temporarily changed.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

PLT