I know that they're used to bind a variable to a value, and that they do behave differently, but I don't understand the principle behind their difference, and I can't predict how they will behave differently from each other.
>From this little piece: : (set B 1) !? (set B 1) NIL -- Protected symbol ? : (setq B 1) -> 1 I deduce that setq doesn't evaluate its first argument, while set does. Why is that? Thank you for your time.