#### 6.6.4 System interface

Questions of system interface generally fall outside of the domain of this report. However, the following operations are important enough to deserve description here.

— optional procedure: load filename

> Filename should be a string naming an existing file containing Scheme source code. The ‘`load`’ procedure reads expressions and definitions from the file and evaluates them sequentially. It is unspecified whether the results of the expressions are printed. The ‘`load`’ procedure does not affect the values returned by ‘`current-input-port`’ and ‘`current-output-port`’. ‘`Load`’ returns an unspecified value.

> > Rationale: For portability, ‘`load`’ must operate on source files. Its operation on other kinds of files necessarily varies among implementations.

— optional procedure: transcript-on filename
— optional procedure: transcript-off

> Filename must be a string naming an output file to be created. The effect of ‘`transcript-on`’ is to open the named file for output, and to cause a transcript of subsequent interaction between the user and the Scheme system to be written to the file. The transcript is ended by a call to ‘`transcript-off`’, which closes the transcript file. Only one transcript may be in progress at any time, though some implementations may relax this restriction. The values returned by these procedures are unspecified.