X-Git-Url: http://git.kpe.io/?p=kmrcl.git;a=blobdiff_plain;f=io.lisp;h=2dcf7959b8574add12e9f6c4f96c48bff63ed12d;hp=25a931181458166de29f7134234b969278229712;hb=ba354a40a203103a4cf16cd3d21f89f707ba5205;hpb=05dcd87a3f0dffe14d1f47763bc214fb9cc6c979 diff --git a/io.lisp b/io.lisp index 25a9311..2dcf795 100644 --- a/io.lisp +++ b/io.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: io.lisp,v 1.5 2003/05/09 08:33:23 kevin Exp $ +;;;; $Id: io.lisp,v 1.6 2003/05/09 09:35:04 kevin Exp $ ;;;; ;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg ;;;; @@ -55,12 +55,15 @@ :if-exists :supersede) (stream-subst old new in out)))) +(defmacro print-n-chars (char n stream) + (let ((i (gensym))) + `(dotimes (,i ,n) + (declare (fixnum ,i)) + (write-char ,char ,stream)))) + (defun indent-spaces (n &optional (stream *standard-output*)) "Indent n*2 spaces to output stream" - (declare (fixnum n) (optimize (speed 3) (safety 0) (space 0))) - (dotimes (i (the fixnum (+ n n))) - (declare (fixnum i)) - (write-char #\space stream))) + (print-n-chars #\space (+ n n) stream)) (defun print-list (l &optional (output *standard-output*)) "Print a list to a stream"