Even calling it "learning" is kinda overselling itself. There really are only two camps of "Learning": auto-optimization (against a trained dataset), and auto-categorization (aka self-training).
Its auto-optimization: the algorithm self-corrects itself to try and look more like the training-set's "ground truth". Or auto-categorization, as the algorithm looks for patterns and tries to draw its own categories.
"Learning" implies model finding. Which... strangely enough... I'd argue that 3-SAT solvers are more "learning" based, at least with colloquial use of the word. Those things really do craft new theories and test them through the process of elimination / resolution / etc. etc. "Neural Networks" explicitly DON'T do this however.
Have you looked into Hubert Dreyfus yet?