Skip to main content

find-package

find-package Function

Syntax:

find-package name → package

Arguments and Values:

name—a string designator or a package object.

package—a package object or nil.

Description:

If name is a string designator , find-package locates and returns the package whose name or nickname is name. This search is case sensitive. If there is no such package, find-package returns nil.

If name is a package object, that package object is returned.

Examples:

(find-package ’common-lisp) → #<PACKAGE "COMMON-LISP"> 
(find-package "COMMON-LISP-USER") → #<PACKAGE "COMMON-LISP-USER">
(find-package ’not-there) → NIL

Affected By:

The set of packages created by the implementation.

defpackage, delete-package, make-package, rename-package

See Also:

make-package

Expanded Reference: find-package

Basic Usage: Finding a Package by Name

find-package looks up a package by its name or nickname and returns the package object, or NIL if not found.

(find-package "COMMON-LISP")
==> #<PACKAGE "COMMON-LISP">

(find-package "COMMON-LISP-USER")
==> #<PACKAGE "COMMON-LISP-USER">

Finding a Package by Nickname

Packages can be found by any of their nicknames.

(find-package "CL")
==> #<PACKAGE "COMMON-LISP">

(find-package "CL-USER")
==> #<PACKAGE "COMMON-LISP-USER">

Using a Symbol as the Argument

When a symbol is given, its name (a string) is used for the lookup. The search is case-sensitive.

(find-package 'common-lisp)
==> #<PACKAGE "COMMON-LISP">

(find-package 'keyword)
==> #<PACKAGE "KEYWORD">

When No Package is Found

If no matching package exists, NIL is returned.

(find-package "NONEXISTENT-PACKAGE")
=> NIL

(find-package 'no-such-package)
=> NIL

Passing a Package Object

If the argument is already a package object, it is returned as-is.

(let ((pkg (find-package "COMMON-LISP")))
(eq pkg (find-package pkg)))
=> T

Case Sensitivity

Package name lookup is case-sensitive. Standard package names are uppercase.

(find-package "common-lisp")
=> NIL

(find-package "COMMON-LISP")
==> #<PACKAGE "COMMON-LISP">