anchor.diff:                        "~{~a~^ ~}"
                         (mapcar (lambda (string) (printer:pr-str string t))
                                 strings)))
  -  (types:make-mal-nil nil))
  +  mal-nil)
   
   (defun mal-println (&rest strings)
     ;; Using write-line instead of (format *standard-output* ... ) since the later prints
  
positive.code:                       "~{~a~^ ~}"
                        (mapcar (lambda (string) (printer:pr-str string nil))
                                strings)))
    (types:make-mal-nil nil))
  
  (defun mal-pr-str (&rest strings)
    (types:make-mal-string (format nil
  
negative.code: 
  (defun mal-nth (sequence index)
    (or (nth (types:mal-data-value index)
             (listify (types:mal-data-value sequence)))
        (error 'index-error
               :size (length (types:mal-data-value sequence))
               :index (types:mal-data-value index)
               :sequence sequence)))
  
  (defun mal-first (sequence)
    (or (first (listify (types:mal-data-value sequence))) mal-nil))
  
  (defun mal-rest (sequence)
    (types:make-mal-list (rest (listify (types:mal-data-value sequence)))))
  
  (defun mal-throw (value)
    (error 'types:mal-user-exception
           :data value))
  
  (defun mal-apply (fn &rest values)
    (let ((last (listify (types:mal-data-value (car (last values)))))
          (butlast (butlast values)))
      (apply (types:mal-data-value fn)
             (append butlast last))))
  
  (defun mal-map (fn sequence)
    (let ((applicants (listify (types:mal-data-value sequence))))
      (types:make-mal-list (mapcar (types:mal-data-value fn)
                                   applicants))))
  
  