Some more rambles:

The old school of evolution theorized that change occurs via point mutations over a long period of time. All the good stuff collects and the bad stuff doesn't. Simulations and papers show that point mutation is more likely to cause a point of failure than something good. Picture:

A stretched rubber sheet, with peaks, probably caused by poking broomsticks from underneath. Imaginary plants are allowed to grow, and their genetics are very simple: the dna describes their x,y position on the sheet, and they are more likely to reproduce if at a higher elevation. If they are too low, they die quickly. If they are high they live long enough to reproduce. If the descendents of these plants changed only via point mutations, what you end up with is a semi-evenly spread out population of plants. If they reproduced by breeding, then very quickly you end up with clumps of plants around the peaks. Sometimes a plant will appear on the very peak, but its offspring will be downslope for sure. (ever notice how an Einstein only appears rarely, and offspring of geniuses are not necessarily geniuses?). Evolution it seems can do just fine without random mutations mucking things over. If you combine the two in certain ratios you have the effect of producing a more dynamic bell curve around the base of the peak, you get more smarties, and more fools too. The fools will appear far away and will quickly die. Some papers I've read explain that the evolutionary functions in our genes allow a certain amount of mutation in certain cases. Reason seems to be that breeding causes a population to quickly coalesce around a peak, or evolutionary niche, and if the environment significantly changes the whole population dies.... unless there's a bunch of farther ranging individuals... or if an evolutionary leap occurs .

To illustrate the rarity of mutations... DNA is like plain-text source code. Each gene or dna fragment is a separate source file intended to do a certain thing. RNA is like a run-time compiler. It reads the DNA and produces run-time code. Proteins are like executing threads. The RNA, being the compiler, has a complex system for verifying the validity of the code, and ensuring the integrity of the code. If a checksum fails, then a self destruct sequence can and often is initiated to destroy the cell. The dead cell is returned to the heap and a known working cell is forked off to replace the dead one. Also, many, maybe all, functions have redundancies on top of redundancies by way of competing variants of code. If there is an attribute (e.g. skin color) it is often encoded 10 different ways and ten different shades, and they are all "executing" simultaneously. This is like reading the same file using several methods and averaging the results and discarding bad values. A point mutation in any one place has neglible effects. Hence, mendelian genetics or the binary theory of genetics is insufficient to explain why a dark person + a fair skin person does not produce either/or. So when a point mutation occurs, not only does it have to be beneficial, it also has to pass the checksums, compete against existing code, beat the averages, *and* occur in a gamete cell to produce the offspring. So...very rare.

Not only that, there exists genetic code that does nothing but prevent the compilation of other fragments of code. If it does compile, then it's the equivalent of a kill thread script, effectively suppressing the appearance of another fragment of code. My theory is evolution is equally, if not more, likely to occur by deletion rather than addition. If humans originally had gills (as evidenced by vestigial gills in fetuses), and an evolutionary advantage occured in a code fragment that suppressed the gill gene, then this says two things.... 1) sometimes things get better by removing bored code and 2) dna must look exactly like my hard drive-- i don't have a use for that anymore, uninstalled but will keep the original somewhere in C:\temp, maybe i'll need it someday... That means dna is not only current source code, it is it's own historical archive of previous known good code with a crazy system of preventing code from running. (hey! linux and windows xp both have lots of extra stuff installed, most of which never run).

So if dna is saddled with its own storage system (genetic memory), then it is not a big jump to state machine, and from state machine to computer. DNA is shown to be able to talk to other DNA so it is networked. If it has current stable code, a library of other code, ability to communicate, ability to compile and execute, ability to checksum and all sorts of neat stuff like that.... (this part is not proven, and hence, it is as likely to be God pushing bits around as any) it's not a huge jump to theorize:

1) since genes can be downloaded, why can't genes be downloaded all the time and stored.

2) why not analyze the current environmental conditions and pass such state around on a species basis. if the environment is gradually changing, insert snippet of code into offspring. if the offspring dies, oops, don't do that again. Since the systems are redundant, an extra gene to encode for skin color, e.g. (ability to tan darker) will average in. Since there seems to be a handful of code fragments for every function, it may be evidence of a parental program developing possibilities (e.g. why children are so different from parents sometimes?)

3) if environmental conditions *suddenly* change, look for an appropriate peice of code to answer the environmental conditions, e.g., does such code already exist in the dormant area? if so, activate it immediately. if the current individual doesn't die, transmit the discovery to the species and initiate an evolutionary leap.

Calvin