anchor.diff:      (dispose ex)))
   
   
  -(defun startup (properties &optional (working-directory (directory-namestring
  -                                                         (current-executable-path))))
  +(defun startup (properties &key (working-directory (directory-namestring
  +                                                    (current-executable-path)))
  +                             blocking)
     "Start engine synchronously loading configuration from `properties` (file, hash-table, plist
   or alist). `(:engine :systems)` property must exist in the config and should contain list
   of existing system class names loaded into current lisp image. Specified systems and their
  
positive.code:     (error "Engine already stopped"))
    (in-new-thread-waiting "shutdown-worker"
      (disable-systems *engine*))
    (dispose *engine*)
    (setf *engine* nil)
    (values))
  
  
  
negative.code:       (funcall hook)))
    (in-new-thread-waiting "startup-worker"
      (enable-systems *engine*))
    (when blocking
      (mt:wait-for-latch (%stop-latch-of *engine*)))
    (values))
  
  
  