   (dosync
    (alter (registered-plugins plugin-manager) disj plugin)))
 
+
+;; TODO:
+;; searching for plugins in files and directories
+;; graphical plugin-browser (extra namespace)
+
 nil

      (illegal-argument "Plugin didn't provide an unload-hook and can therefore not be unloaded."))
    (dosync
     (alter (loaded-plugins plugin-manager) disj plugin))
    (unload-hook)))

(defn unregister-plugin
  "Unregisters a plugin from a plugin manager."

    (illegal-argument "Plugin already be loaded."))
  (dosync
   (alter (loaded-plugins) conj plugin))
  ((load-hook plugin) (base-frame plugin-manager)))

(defn unload-plugin
  "Unloads a plugin from a plugin manager."
