Search code examples
lispcommon-lispsymbol-tables

Accessing active symbol table in Common Lisp


I have heard that the active symbol table is accessible within the Common Lisp runtime. Have I misunderstood?


Solution

  • 'Symbol tables' are called 'packages' in Common Lisp. See for example: Introduction to Packages, CL HyperSpec.

    Several operations over packages are available in Common Lisp: The Packages Dictionary.

    Symbols can be members of packages (being 'interned').

    The variable *package* holds a package as a value, which is used by several operations that use a package as a default. An example is the 'reader', which by default does a look up in the package of *package*.