title: Expanding a &rest parameter in Common Lisp
body: <p>Suppose I get tired of writing "format t ..." all the time, and want something a little fewer keystrokes. </p>
  
  <p>So I write this:</p>
  
  <pre><code>(defun puts (fstring &amp;rest vars)
    (format t fstring vars))
  
  (puts "~a ~a" 1 2)
  
  ;; error message results, because vars became (1 2)
  </code></pre>
  
  <p>Now, <code>vars</code> has been transformed into a list of whatever params I passed in. It needs to be "expanded" out into a list of values.</p>
  
  <p>What is the typical solution to do this problem?</p>