;;;; Programmer: Kevin M. Rosenberg
;;;; Date Started: Apr 2000
;;;;
-;;;; $Id: strings.lisp,v 1.22 2003/05/06 08:15:15 kevin Exp $
+;;;; $Id: strings.lisp,v 1.23 2003/05/08 19:19:08 kevin Exp $
;;;;
;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg
;;;;
(defun concat-separated-strings (separator &rest lists)
(format nil (format nil "~~{~~A~~^~A~~}" separator) (append-sublists lists)))
+(defun only-null-list-elements-p (lst)
+ (or (null lst) (every #'null lst)))
+
(defun print-separated-strings (strm separator &rest lists)
(declare (optimize (speed 3) (safety 0) (space 0) (debug 0)
(compilation-speed 0)))
(do* ((rest-lists lists (cdr rest-lists))
(list (car rest-lists) (car rest-lists))
- (last-list (null (cdr rest-lists)) (null (cdr rest-lists))))
+ (last-list (only-null-list-elements-p (cdr rest-lists))
+ (only-null-list-elements-p (cdr rest-lists))))
((null rest-lists) strm)
(do* ((lst list (cdr lst))
(elem (car lst) (car lst))