anchor.diff:          do (unless (string= line "")
                (with-simple-restart (skip "Skip processing the line ~s" line)
                  (let ((frame (with-retry-restart (retry "Retry parsing the line ~s" line)
  -                              (parse-frame (cl-ppcre:split "," line) vicon-file))))
  +                              (parse-frame (split #\, line) vicon-file))))
                    (with-retry-restart (retry "Retry calling the frame mapping function.")
                      (funcall function frame)))))))
   
  
positive.code:   (alexandria:when-let ((line (read-line stream NIL)))
      (string-trim '(#\Return #\Newline #\Space) line)))
  
  (defun read-vicon-header (stream &key (file (ignore-errors (pathname stream))))
    (destructuring-bind (description resolution markers fields metrics)
        (loop repeat 5
  
negative.code:      :description description
       :resolution (parse-integer resolution)
       :markers (parse-marker-list
                 (cddr (split #\, markers))
                 (cddr (split #\, fields))
                 (cddr (split #\, metrics))))))
  
  (defun map-read-vicon-frames (stream vicon-file function)
    (loop for line = (read-clean-line stream)
  