anchor.diff:  state indexed by this number")
   
   (defun inherited-level (logger)
  +  "Return logger's own log level (if set) or the one it
  +had inherited from parent"
  +  ;; TODO rename this function to effective-log-level
     (declare (type (or null logger) logger))
     (if (null logger) +log-level-off+
         (let* ((appdata (current-appdata logger))
  
positive.code: ;;     hierachy. So for example two web apps using the same library
  ;;     can have library.somelogger configured differently.
  ;;
  ;;     By default theri is a single configuration. The current
  ;;     configuration is referenced via a shared global variable
  ;;
  ;;  5. Easy of usage and configuring of loggig system are given the 
  ;;     highest priority. 
  ;;
  ;;  
  ;;     Example usage:
  ;;
  ;;   (defvar logger (make-logger "this.is.a.logger)
  ;;   (auto-logger-options (
  ;;
  ;;   (log-debug logger "test")
  ;;   (log-debug-vars var1 var2 var3)
  ;;   (log-debug "~d ~d ~d" var1 var2 var3)
  ;;   (log-debug)
  ;;
  ;;   ;;; configuraiton from REPL
  ;;
  ;;   (log *.* debug)
  ;;   (log *.* info)
  ;;   (log *do-something* debug)
  ;;   (log *some-logger-name
  
  
  
  
negative.code:                child-hash))))
  
  (defun adjust-logger (logger)
    "Recalculate LOGGER mask by finding out which log levels have
  reachable appenders. "
    (labels ((doit (logger)
               (let ((appdata (current-appdata logger))
                     (mask 0))
  