title: Can't declare constant variable locally Error installing Artificial Intelligence a Modern Approach Code on Ubuntu Trusty Tahr - Common Lisp
body: <p>Im installing the code for the book Artificial Intelligence a Modern Approach  i got here <a href="http://aima.cs.berkeley.edu/lisp/doc/install.html" rel="nofollow">http://aima.cs.berkeley.edu/lisp/doc/install.html</a> its the lisp version im installing btw</p>
  
  <p>I'm on Ubuntu Trusty using Emacs SBCL slime, I placed the code in ~/.emacs.d</p>
  
  <p>so per the instructions  at above link i run (load "/home/w/.emacs.d/aima/code/aima.lisp")</p>
  
  <p>which loads fine i get "T" as output</p>
  
  <p>i run (aima-load 'all) that works I get "T" as output</p>
  
  <p>but when i run (aima-compile) I get the  error </p>
  
  <pre><code>Can't declare constant variable locally special: +NO-BINDINGS+
     [Condition of type SIMPLE-ERROR]
  </code></pre>
  
  <p>I'm not sure I understand the error I read the Hyperspec on Declare and Special but that didn't help. I'm not opposed to a hack to make this work so if someone can help me reword the code or figure out if its a emacs setting or sbcl setting i could change to get the aforementioned variable declared that would be great. The error message is referring to this file /home/w/.emacs.d/aima/code/logic/algorithms/tell-ask.lisp</p>
  
  <p>this section </p>
  
  <pre><code>(defmethod ask-each ((kb literal-kb) query fn)
    "For each proof of query, call fn on the substitution that 
    the proof ends up with."
    (declare (special +no-bindings+))
    (for each s in (literal-kb-sentences kb) do
         (when (equal s query) (funcall fn +no-bindings+))))
  </code></pre>
  
  <p>I verified all the permisions of all the files in my aima folder are set to read write for my username with my username as owner as a step to correct....but as far as understanding the error I could use help figuring out the next step one would take to debug this...The code is downloadable here <a href="http://aima.cs.berkeley.edu/lisp/code.tar.gz" rel="nofollow">http://aima.cs.berkeley.edu/lisp/code.tar.gz</a>  and its an easy install for a veteran emacs/lisp user....any help is appreciated.</p>