Scheme 48 Manual | Contents | In Chapter: Command processor
Previous: Debugging commands | Next: Inspection mode


There are a number of binary switches that control the behavior of the command processor. They can be set using the ,set and ,unset commands.

,set switch [on | off | ?]
This sets the value of mode-switch switch. The second argument defaults to on. If the second argument is ? the value of switch is is displayed and not changed. Doing ,set ? will display a list of the switches and their current values.

,unset switch
,unset switch is the same as ,set switch off.

The switches are as follows:

In `batch mode' any error or interrupt that comes up will cause Scheme 48 to exit immediately with a non-zero exit status. Also, the command processor doesn't print prompts. Batch mode is off by default.

Enables or disables the automatic pushing of a new command level when an error, interrupt, or other breakpoint occurs. When enabled (the default), breakpoints push a new command level, and <eof> (see above) or ,reset is required to return to top level. The effects of pushed command levels include: With auto-levels disabled one must issue a ,push command immediately following an error in order to retain the error continuation for debugging purposes; otherwise the continuation is lost as soon as the focus object changes. If you don't know anything about the available debugging tools, then levels might as well be disabled.

Enable or disable `inspection' mode, which is used for inspecting data structures and continuations. Inspection mode is desribed below.

Enter a new command level when a warning is produced, just as when an error occurs. Normally warnings only result in a displayed message and the program does not stop executing.

If on, the system will ask before loading modules that are arguments to the ,open command. Ask-before-loading is off by default.
> ,set ask-before-loading
will ask before loading modules
> ,open random
Load structure random (y/n)? y

When on, the system will print out the names of modules and files as they are loaded. load-noisily is off by default.
> ,set load-noisily
will notify when loading modules and files
> ,open random
[random /usr/local/lib/scheme48/big/random.scm]

This controls whether or not the compiler is allowed to substitute variables' values in-line. When inline-values mode is on, some Scheme procedures will be substituted in-line; when it is off, none will. The performance section has more information.

Previous: Debugging commands | Next: Inspection mode