title: How to list all intermediate steps of evaluation in Scheme
body: <p>For example if there's the expression:</p>
  
  <pre><code>(map (lambda(x) (add1 x)) '(1 2 3))
  </code></pre>
  
  <p>It evaluates to:</p>
  
  <pre><code>'(2 3 4)
  </code></pre>
  
  <p>How to display all the intermediate steps which in this case will be:</p>
  
  <pre><code>(map (lambda(x) (add1 x)) '(2 2 3))
  (map (lambda(x) (add1 x)) '(2 3 3))
  </code></pre>