Intelligent Design is relatively new in its present form. Proponents often argue that there are features of biology that look like engineering, and in particular, that the programming of life, the DNA software that goes along with the cellular hardware, is analogous to the programming of computers. However, we haven’t yet been able to fully unpack the implications of that, partly because both computer science and genomics are developing disciplines. The following is merely a speculative suggestion in the hopes of inspiring further investigation:
Could it be that the designer(s) of the genomes of living organisms made use of code libraries in order to do so, as is done in computer software engineering?
A code library is a suite of functions which logically go together, e.g. math functions or input/output functions. They accelerate the design process by hiving functions off into a separable module, which needs to be very carefully designed and debugged, but only once, and then they can be used in many programs. This saves rewriting the functions each time, and means that large programs can be specified with much less source code. When a particular program is compiled from source code, it often gets several such libraries ‘linked’ to it, that get added to the final executable. Not all the functions in the library need necessarily be used, meaning that the final executable could contain functions that are not used. Furthermore, in real life, programmers often leave quite a bit of non-functional information in the executable file. This includes, for example, information that aids debugging.
By analogy, the same might be true of the genomes we actually observe: if genomes are examples of executable code, then what if each genome has been ‘compiled’ from a much simpler ‘source code’ which would be simpler and easier to read if we had access to it directly. Thus ID infers from the observable genome to a simpler (intermediate) cause; some kind of source code. What if the ‘compiled’ genome contains whole code-libraries that have been linked in, but not all functions are used, and some were deactivated? Wouldn’t that be a natural explanation for true pseudogenes, that is pseudogenes that really are totally non-functional? In fact wouldn’t that be evidence for a particular design model: source-code + code-libraries + compilation.
The issue that prompted this post was a conversation about olfactory receptors, and a comparison between the genes mice and humans, where (if I understood correctly) many of the human genes are actually pseudogenes: non-functional gene-like code. While there will continue to be debate as to whether these really are non-functional (and whether we know enough to say either way at present), it makes sense to point out that there are other alternatives. In particular, this could explain GULO-p the fact that something that looks like part of the GULO gene exists in the higher primates, but in a deactivated state, each deactivated at the same point. Perhaps it is part of a code-library? It would be worth checking to see if any other known-to-be-unrelated creatures also carry this variant, and to see if they are also deactivated at the same point. I think that’s an interesting prediction, but again, its just a thought.
What else would this explain? It could also explain why all vertebrates share similarities in body plan, and why within the vertebrates, mammals share a particular body plan, and so on. At the same time, it does not predict a unique hierarchically-nested structure for every feature, there being no reason why the same design shouldn’t be used in totally unrelated organisms; it predicts convergence, for example between bats and whales who both use sonar.
Another possible example is the widespread use of Pax-6 in extremely disparate organisms to signal the construction of eyes. Many of these eyes are clearly not evolutionarily related. Natural selection does not even know that these extremely varied structures are eyes – it only knows that whatever they are, each seems to aid survival. But a designer knows what they are, and it would be natural to label them the same way.
Another possible example is the fact that whales can develop limb-buds: its seems likely that the program they are using is a generic one designed for four-limbed creatures, which was sufficient as it is trivial to abort construction of the hind limbs at an early stage, although it required a much more complex code module for the tail. This allowed them to be assembled (‘compiled’) as a special case of mammal: with the various specialisations that mammalian physiology brings.
It might be possible to develop a more detailed predictive framework based on a source-code + code-libraries + compilation ideas, but I/we probably don’t know enough about biology, never mind what potential advances might appear in computational science. Because I believe biology is intelligently designed, I also expect that there will be a great deal of cross-pollination. I can confirm from my own experimentation, for example, that (my crude approach to) alternative splicing is a great way to build code that is both robust and totally obfuscated to the uninitiated. 🙂
Nevertheless, a detailed predictive framework would be great. Is anyone brave enough to try it? At least it’s something to keep in the back of your mind while doing either discipline.