Next: , Previous: , Up: Common Lisp IO and Formatting   [Contents][Index]

6.2 Pathnames and Pathspecs

Structured Object: pathname

A pathname is a structured object which represents a filename.

There are two kinds of pathnames:

Pathname: logical pathname

An object of type logical-pathname.

A pathname that uses a namestring syntax that is implementation-independent, and that has component values that are implementation-independent. Logical pathnames do not refer directly to filenames.

Pathname: physical pathname

A pathname that is not a logical pathname.

An object of type pathname is a structured representation of the name of a file. A pathname has six components:

  • host
  • device
  • directory
  • name
  • type
  • version
Function: pathname pathspec => pathname

Returns the pathname denoted by pathspec.


If the pathspec designator is a file stream created by opening a logical pathname, a logical pathname is returned.


the pathname returned corresponds to the filename used to open the file.

Object: pathname designator pathspec

A designator for a pathname; that is, an object that denotes a pathname and that is one of:

  • pathname namestring12 (denoting the corresponding pathname)
  • a stream associated with a file (denoting the pathname used to open the file)
  • pathname (denoting itself)



namestring: a string that represents a filename using either the standardized notation for naming logical pathnames or some implementation-defined notation for naming a physical pathname.

Next: Streams, Previous: Files and Filenames, Up: Common Lisp IO and Formatting   [Contents][Index]