I’ve been reading up on packages in Common Lisp, as getting and using commonly available libraries has been something of a struggle. My current reading indicates that:
(make-package 'dave)
will create a new package called dave.
Whilst:
(in-package dave)
changes the designated package from cl-user to dave.
It took a bit of head-scratching but I finally worked out that the function (well macro really) in-package is part of the common-lisp so if I want to move to a new package I have to make this clear by using either:
(common-lisp:in-package cl-user)
as in-package has been exported from common-lisp (I think) or:
(common-lisp::in-package cl-user)
to indicate the path to the function (think scope in c++ sort of), a path that can include un-exported symbols.
Now to start looking into systems, asdf and asdf-install.