The Assembly Programmer From Hell
Today I was reading chapter 3 (Revenge of the Nerds) in Steven Pinker’s book How the Mind Works. It talks about evolution and Darwin and Dawkins, and got me thinking about how replicators are all coded with DNA, and how this coding interacts with the processes of evolution; specifically, mutation and inheritance. It already widely known that human DNA (among the largest as measured in number of codons) is filled with ‘junk’. Well, how exactly would ‘junk DNA’ affect the processes of evolution?
Current theory says that the junk is accrued via viral payloads infecting, but not destroying, cellular hosts. That means that the organisms which have undergone more evolution ought to have increasingly higher percentages of ‘junk DNA’. I have no idea if this is actually supported by evidence, but it would be cool to know. In fact just a simple graph of ‘percentage junk DNA’ vs. ‘total amount of DNA’ for all the organisms (colored by class: mammal/bird/reptile/fish/plant) would be a cool thing to observe. But this is an aside to my primary thought.
I had the idea that all the space devoted to the junk sequences might just be used as RAM or swap space to the evolutionary processes of mutation and crossover. Ample space in this regard might really cut down on the error rate a programmer like evolution would incur. So all that ‘junk DNA’ probably has beneficial side-effects for the species, though not for any individual involved. Because, lets face it, Evolution produces the worst spaghetti code there is, it has no concept of over-all design, ignores engineering principles of simplicity and elegance, conflates uses and meaning of the code by reading forwards, backwards, and inverse, works only at the lowest level, and isn’t goal-directed in any meaningful sense of the term. In the end it just goes with what ever works, independent of how it arrived at the solution. (which explains the title of this post)
But seriously, the junk DNA probably has some functional purpose. Does it provide padding so that some genes line up along preferred cross-over points? Does it provide the ability to swap in/out entire genes during cross-over, instead of splicing only at the sub-gene level?