title: scheme - string-appends wrong type to apply error
body: <p>I have this code</p>
  
  <pre><code>(lambda (symbol)
    (let*(
          (datalist (get-list symbol))
      (desc " ")
          (html "&lt;table border=\"1\"&gt;")
          (html (string-append html "&lt;tr&gt;&lt;td&gt;" (list-ref datalist 1) "&lt;/td&gt;&lt;t\
  r&gt;&lt;td&gt;" (list-ref datalist  2) "&lt;/td&gt;&lt;/tr&gt;"))
          )
      (do ((p 7 (+ 7 p)))
      ((&gt; p (-(length datalist) 2)))
        (desc (string-append desc "&lt;tr&gt;&lt;td&gt;"(list-ref datalist p) "&lt;/td&gt;&lt;td&gt;"\
   (list-ref datalist (+ p 1))"&lt;/td&gt;&lt;/tr&gt;"))
        )
      (set! html (string-append html desc "&lt;/table&gt;"))
        html
      )
    )
  </code></pre>
  
  <p>I'm basically taking some elements from a datalist and adding some html tags to them. However, when I run the code, I get a "wrong type to apply error" on the desc binding (line 4). What gives? Even when i change it to values such as "foo", i still get the wrong type error.</p>
  
  <p>Any suggestions?</p>