Whats the general method for debugging a Soar program?
The main tools that you need to use are the commands below. You apply them where the behaviour is odd, and use them to understand what is going on. Personally I (FER), prefer the Tcl/Tk interface for debugging because many of these commands become mouse clicks on displays. print Prints out a value in working memory. print -stack (pgs in earlier versions of Soar) Prints out the current goal stack: e.g., : ==>S: S1 : ==>S: S2 (state no-change) matches (ms in earlier versions of Soar) Shows you which productions will fire on the next elaboration cycle. matches