My metaphor is not complete (what model ever is), but let me extrapolate slightly.

When I say 'learning', I am thinking about the limitations in programs that are inherent. By learning I simply mean a program gathers data, makes a descision, and alters its 'behaviour' based on its descision. I would compare this to natural selection. The organism is bound only to its coded behaviour, unless its original code is changed (evolution).

If we replicate true evolution, with this metaphor, the program would alter its own code to change behaviours, based on its decisions... (after all it is not conscious, which could represent DNA changes)

If you don't subscribe to the metaphor at all, I respect that.