title: How Scheme iteration works?
body: <p>From <a href="http://schemers.org/Documents/Standards/R5RS/HTML/r5rs-Z-H-7.html#%_sec_4.2.4" rel="nofollow">R5RS</a> under <strong>4.2.4  Iteration</strong> - </p>
  
  <pre><code>(let ((x '(1 3 5 7 9)))
    (do ((x x (cdr x))
         (sum 0 (+ sum (car x))))
        ((null? x) sum))) 
  </code></pre>
  
  <p>What is the usage of  - <code>cdr</code> and <code>car</code> . </p>
  
  <p>And what happens with this <code>x</code> in the  lines  - </p>
  
  <pre><code>(do ((x x (cdr x))
             (sum 0 (+ sum (car x))))
            ((null? x) sum))
  </code></pre>