Hacker News new | ask | show | jobs
by eldondev 3623 days ago
> But if you insert a random branch instruction into the object code of a working program, the results are somewhat different.

Maybe, maybe not. I've observed lots of dead code in my time developing, where inserting random instructions would have no impact whatsoever. Inserting random instructions into a give program may have negative side effects, it may not. But (without having read your reference, though I might, or the linked article here), most of the source and object code that exists is highly specified and functionally dense. These are the ways we code when we want something very optimized and not broadly adaptive. Essentially you could say that almost all of the code we are writing is rain man style code. Good at some few sets of things in specific conditions. I think it is possible that there will exist (although perhaps not written in the same way) code where less of the genome is lethal, and there is more "wiggle room" for code to expand and change as a system. The stillborn offspring we might encounter if todays systems were "genetically evolved" are the equivalent of disseminated haploid genetic material. I think the conditions for conception (if you'll ride with me on my beaten metaphor) are not so far off as you may think, even if they are very different in terms of compilation/process execution/parallelism. While much of the code we write still mirrors the serial logic we often apply in the sciences, it is neither a foregone conclusion that software will continue exclusively in that way, nor a lack of capabilities of modern infrastructure to achieve parallelism comparable to some biological systems.