Usually, when I define a function and then use it later, the function name is colored in black. But every once in a while, the function color is blue, both in its definition and when I use it later. The blue colored functions work as expected. I can't find any difference in the way I define them or any pattern. What does the blue coloring mean?
The difference in color depends on whether or not it is a recognized symbol: black indicates it is recognized, blue indicates that it is not. For a symbol to be recognized, it has had to have been input to the kernel, i.e. it has to have been included in an executed cell. I have had problems in the past when quitting and restarting the kernel where the highlighter doesn't begin to work again, so every user defined symbol is blue regardless of its state. But, I don't think I encountered it very often in v.7; it was more of a v.6 problem. (I just started using v.8, so I have no experience with it.)
I remember being confused by this when I first started out. As rcollyer notes, black means that it is either a command or a variable that contains information, blue means that it is not recognized at all. Try this:
When you execute it,
testVariable will turn from blue to black. Now, if you're coding and need to call on testVariable, it will appear as black - if you misspelled it, as testvariable, it would appear as blue. i.e.
Print[testVariable] will lead to 5 as an output. A good quick way to see what's going on.
Now try this (note: it will clear all of your currently defined variables!):
Note that dynamically,
testVariable will turn back to blue. It no longer holds anything, and you could not use it in any of your other commands. If you ran
Print[testVariable] again without executing your earlier commands, it would not print 5 (rather, just 'testVariable') because testVariable is now empty.