title: about the function eval in common lisp
body: <p>Can somebody explain why the function eval behaves like this?</p>
  
  <pre><code>(eval (list 'cons t nil)) returns (T)
  
  (eval (list 'cons 'a nil)) causes an error
  
  (eval (list 'cons ''a nil)) returns (A)
  </code></pre>
  
  <p>Thanks a lot.</p>