anchor.diff:  #+lparallel.with-debug
   (progn
     (defmacro defun/type (name params arg-types return-type &body body)
  +    (setf return-type (constrain-return-type return-type))
       (with-parsed-body (docstring declares body)
         `(progn
            (declaim (ftype (function ,arg-types ,return-type) ,name))
  
positive.code: (defun has-lambda-keywords-p (list)
    (some (lambda (p) (find p lambda-list-keywords)) list))
  
  #-lparallel.with-debug
  (progn
    (defmacro defun/inline (name params &body body)
  
negative.code:   (defmacro defun/type (name params arg-types return-type &body body)
      "Shortcut for 
         (declaim (ftype (function arg-types return-type) foo) 
         (defun foo ...).
      Additionally constrains return-type to the number of values provided."
      (setf return-type (constrain-return-type return-type))
      (with-parsed-body (docstring declares body)
        `(progn
           (declaim (ftype (function ,arg-types ,return-type) ,name))
  