31.  Features  

(feature? symbol)

Returns #t if symbol is a feature, i.e. provide has been called to indicate that the feature symbol is present; #f otherwise.

(provide symbol)

Indicates that the feature symbol is present. Returns void.

(require symbol)
(require symbol file)
(require symbol file environment)

If the feature symbol is not present (i.e. (feature? symbol) evaluates to #f), file is loaded. A message is displayed prior to loading the file if the value of the global variable autoload-notify? is true. If the feature is still not present after the file has been loaded, an error is signaled.

If the file argument is omitted, it defaults to symbol; if symbol does not end in a suffix (i.e. does not contain a dot character), the suffix .scm is appended to obtain a file name.

If an environment argument is supplied, the file is loaded into given environment. If the environment argument is omitted, it defaults to the current environment.

file must be either a string or a symbol or a list of strings or symbols, in which case all elements of the list must be the names of object files (see load above).


Returns the currently provided features a list of symbols.

Markup created by unroff 1.0,    September 24, 1996,    net@informatik.uni-bremen.de