Next: Libraries Up: Built-in Parameters Previous: Read-Eval-Print

### Loading

- `(current-load [proc])` gets or sets a procedure that takes a filename to load and returns the value (or values; see Chapter 2) of the last expression read from the file. This load handler is called by `load`, `load-relative`, `load/use-compiled`, and `load/cd`. The default load handler reads expressions from the file (with compiled expressions enabled) and passes each expression to the current evaluation handler. The default load handler also treats a hash mark on the first line of the file as a comment (see section 14.3). The current load directory for loading the file is set before the load handler is called (see section 14.1).
- `(current-load-extension [proc])` gets or sets a procedure that takes a filename to load as a dynamic extension (see section 14.7) and returns the extension's value(s). The default load extension handler loads an extension using operating system primitives.
- `(current-load-relative-directory [path])` gets or sets a complete directory pathname or `#f`. The current `load-relative` directory is set by `load`, `load-relative`, `load/use-compiled`, `load/cd`, `load-extension`, and `load-relative-extension` to the directory of the file being loaded. This parameter is used by `load-relative`, `load/use-compiled` and `load-relative-extension` (see section 14.1). When a new pathname is provided to the parameter procedure `current-load-relative-directory`, it is immediately expanded (see section 11.2.1) and converted to an immutable string; the result must be a complete pathname for an existing directory.
- `(use-compiled-file-kinds [kind-symbol])` gets or sets a symbol, either `'all`, `'non-elaboration`, or `'none`, indicating whether `load/used-compiled` (and thus `require-library`) recognizes compiled files. If the value of this parameter is `'all`, then `load/use-compiled` recognizes compiled files as described in section 14.1. If the value is `'none`, then `load/use-compiled` ignores compiled files. If the value is `'non-elaboration`, then `load/use-compiled` recognizes compiled files except for `.zo` files that start with `'e` followed by a space, which is a special annotation installed by `compile-file` (see section 15.2.5) to indicate that a file contains elaboration-time expressions.

Next: Libraries Up: Built-in Parameters Previous: Read-Eval-Print