host - a valid physical pathname host.
Complicated defaulting behavior; see below.
device - a valid pathname device.
Complicated defaulting behavior; see below.
directory - a valid pathname directory.
Complicated defaulting behavior; see below.
name - a valid pathname name.
Complicated defaulting behavior; see below.
type - a valid pathname type.
Complicated defaulting behavior; see below.
version - a valid pathname version.
Complicated defaulting behavior; see below.
defaults - a pathname designator.
The default is a pathname whose host component is the same as the
host component of the value of *default-pathname-defaults*,
and whose other components are all nil.
case - one of :common or :local.
The default is :local.
pathname - a pathname.
Constructs and returns a pathname from the supplied keyword arguments.
After the components supplied explicitly by
host,
device,
directory,
name,
type,
and version
are filled in,
the merging rules used by merge-pathnames
are used to fill in any
unsupplied
components
from the defaults supplied by defaults.
Whenever a pathname is constructed the components may be
canonicalized if appropriate.
For the explanation of the arguments that can be supplied for each component,
see Section 19.2.1 Pathname Components.
If case is supplied,
it is treated as described in Section 19.2.2.1.2 Case in Pathname Components.
The resulting pathname is a logical pathname
if and only its host component
is
a logical host
or a string that names a defined logical host.
If the directory is a string,
it should be the name of a top level directory,
and should not contain any punctuation characters; that is,
specifying a string, str, is
equivalent to specifying the list (:absolute str).
Specifying the symbol :wild is equivalent to specifying the list
(:absolute :wild-inferiors), or (:absolute :wild)
in a file system that does not support :wild-inferiors.