Next: Loading Up: Built-in Parameters Previous: Language

### Read-Eval-Print

- `(current-prompt-read [proc])` gets or sets a procedure that takes no arguments, displays a prompt string, and returns an expression to evaluate. This prompt read handler is called by the read phase of `read-eval-print-loop` (see section 14.1). The default prompt read handler prints ``> '' and returns the result of `(read)`.
- `(current-eval [proc])` gets or sets a procedure that takes an S-expression and returns its value (or values; see Chapter 2). This evaluation handler is called by `eval`, the default load handler, and `read-eval-print-loop` to evaluate an expression (see section 14.1). The default evaluation handler compiles and executes the expression in the current namespace (determined by the `current-namespace` parameter).
- `(current-namespace [namespace])` gets or sets a namespace value (see section 9.3) that determines the global variable namespace used to resolve variable references. The current namespace is used by the default evaluation handler, the `compile` procedure, and other built-in procedures that operate on global variables.
- `(current-print [proc])` gets or sets a procedure that takes a value to print. This print handler is called by `read-eval-print-loop` (see section 14.1) to print the result of an evaluation (and the result is ignored). The default print handler `print`s the value to the current output port (determined by the `current-output-port` parameter) and then outputs a newline.