anchor.diff:    `{(%print-indentation ,str ,info)
       ,@body})
   
  -(defmacro %with-brackets (str info &body body)
  +(defmacro %with-parens (str info &body body)
     `(%with-indentation ,str ,info
        (push (stream-location-column (stream-output-location str))
              (print-info-columns ,info))
  
positive.code:       (? (function? !)
           (funcall ! x str info)
           (%print-call x ! str info))
        (%with-brackets str info
          (%late-print x. str info)
          (%print-rest .x str info))))
  
  
negative.code:      (pop (print-info-columns ,info))))
  
  (fn pretty-print-lambda (x str info)
    (%with-parens str info
      (++! (car (print-info-columns info)))
      (%late-print (car .x.) str info)
      (& *print-automatic-newline?*
  