title: helper nested functions in CL
body: <p>I used to write nested helper functions (which, btw, ocasionally used parameters of outer functions and are recursive) in Haskell like this (<code>loop</code>):</p>
  
  <pre><code>sum a b = let
    loop s i = if i &gt; b then s else loop (s + i) (i + 1)
    in loop 0 a
  </code></pre>
  
  <p>What is the clearest analog for this in Common Lisp? </p>
  
  <p>I searched around here and found some discussions focused on returning functions from functions (and the problems which may arise when trying to call such “returned” functions) which is not quite the same situation, as far as I can see.</p>