
Next: Syntax
Up: MzScheme Architecture
Previous: Library Functions
These flags and hooks are availble when MzScheme is used as an embedded
interpreter:
- scheme_exit -- This pointer can be set to a function which
takes an integer argument and returns void; the function will be
used as the default exit handler. The default is zero.
- scheme_console_printf -- This pointer can be set to a
function that takes arguments like printf; the function will be
called to display internal MzScheme warnings and messages. the default
is zero.
- scheme_check_for_break --
This points to a function of no arguments that returns an integer. It
is used as the default user-break polling procedure. (A non-zero
return value indicates a user break.) The default is zero.
- scheme_make_stdin, scheme_make_stdout,
scheme_make_stderr, -- These pointers can be set to a
function that takes no arguments and returns a Scheme port
Scheme_Object * to be used as the starting standard input,
output, and/or error port. The default is zero.
- scheme_case_sensitive -- If this flag is set to a non-zero
value before scheme_basic_env is called, then MzScheme will
not ignore capitalization for synbols and global variable names. The
value of this flag should not change once it is set. The default is
zero.
- scheme_constant_builtins -- If this flag is set to a
non-zero value before scheme_basic_env is called, then the
standard MzScheme functions and syntax will be defined as constant
globals. The default is zero.
- scheme_no_keywords -- If this flag is set to a non-zero
value before scheme_basic_env is called, then no keywords
are enforced; i.e., the names of the core syntactic forms and all
``#%'' names are available for local variable names. The default
is zero.
- scheme_allow_set_undefined -- If this flag is set to
a non-zero value, then set! on an undefined variable will
cause it to be defined, rather than resulting in an error. The default
is zero.
- scheme_allow_cond_auto_else -- If this flag is set to
zero, then if no clauses match in the evaluation of a cond or
case form, an exception is raised. If this flag is set to
a non-zero value, #<void> is returned. The default is non-zero.
- scheme_secure_primitive_exn -- If this flag is set to
non-zero, then the structure type values and constructors for the
primitive exception types will not be defined as global variables. The
default is zero.
- scheme_escape_continuations_only -- If this flag is set to a
non-zero value before scheme_basic_env is called, then call/cc
will be remapped to call/ec; this is useful for speeding up
Scheme evaluation when continuations are only used for escaping. The
default is zero.

Next: Syntax
Up: MzScheme Architecture
Previous: Library Functions
PLT