Go to the first, previous, next, last section, table of contents.


Understanding Interned Symbols

Symbols do not need to belong to a package. For example, #:plugh will create an "uninterned" symbol named "plugh" which is a member of no package.

Symbols may also be "in" more than one package (although they may never have more than one official "home package", that indicated in their internal package slot): This just means that more than one package has an entry for them.

Entering a symbol into a package is called "interning" it in Lisp jargon, presumably because this makes the symbol "internal" to that package.

The function intern may be used to create an interned symbol with the given name in the current package: It returns the existing symbol of that name if such exists, otherwise creates one and returns it. See section `intern' in Muf Reference.

The function unintern removes a symbol from the current package; It can be handy for removing unwanted variables and functions, perhaps created by mistake.


Go to the first, previous, next, last section, table of contents.