title: Summing vectors with common lisp 'loop' macro
body: <p>I need to implement something like this:</p>
  
  <pre><code>(loop for i from 1 to N sum (f i))
  </code></pre>
  
  <p>except that accumulated values are represent lists of numbers like (1 2 3)
  and they are added element-wise. In other words I would like to initialize summation
  with (zerov N) and use (v+) to add subsequent elements:</p>
  
  <pre><code>(defun v+ (a b) (mapcar '+ a b))
  (defun zerov (n) (loop for i from 1 to n collect 0))
  </code></pre>
  
  <p>Is it possible to do something like this with loop macro? I can implement it as a 
  separate function, but I would like to use loop or loop-like macro for expressiveness.
  Perhaps there is a way to define simple loop-like macro just for this case?</p>