diff --git a/find-system.lisp b/find-system.lisp index b461e9b346f45f9e8ac75dd81f6585f09c89ab74..da6949f8a3978c073bd15275259baaf3f146110c 100644 --- a/find-system.lisp +++ b/find-system.lisp @@ -9,7 +9,8 @@ #:remove-entry-from-registry #:coerce-entry-to-directory #:coerce-name #:primary-system-name #:coerce-filename #:find-system #:locate-system #:load-asd - #:system-registered-p #:register-system #:registered-systems #:clear-system #:map-systems + #:system-registered-p #:register-system #:registered-systems* #:registered-systems + #:clear-system #:map-systems #:missing-component #:missing-requires #:missing-parent #:formatted-system-definition-error #:format-control #:format-arguments #:sysdef-error #:load-system-definition-error #:error-name #:error-pathname #:error-condition @@ -74,9 +75,12 @@ of which is a system object.") (defun system-registered-p (name) (gethash (coerce-name name) *defined-systems*)) - (defun registered-systems () + (defun registered-systems* () (loop :for registered :being :the :hash-values :of *defined-systems* - :collect (coerce-name (cdr registered)))) + :collect (cdr registered))) + + (defun registered-systems () + (mapcar 'coerce-name (registered-systems*))) (defun register-system (system) (check-type system system) diff --git a/operate.lisp b/operate.lisp index 5e0f19ccabd18f5c97a1d92dd1d0484ee351661e..9a25f13aa2728a15e76e332bc656d034a509a730 100644 --- a/operate.lisp +++ b/operate.lisp @@ -170,7 +170,7 @@ to load it in current image." (defun already-loaded-systems () "return a list of the names of the systems that have been successfully loaded so far" - (remove-if-not 'component-loaded-p (registered-systems))) + (mapcar 'coerce-name (remove-if-not 'component-loaded-p (registered-systems*)))) (defun require-system (system &rest keys &key &allow-other-keys) "Ensure the specified SYSTEM is loaded, passing the KEYS to OPERATE, but skip any update to the