Your claim above is entirely false. Computer instructions are always broken down to their most basic instruction sets (machine code in Binary / Base-2), either by other software or by the CPU itself internally. The only abstract part of computer codes is that programmers usually prefer to view and work with abstract instructions rather than in Binary code. At the Binary (Base-2) level, every possible machine code has a specific meaning. This is identical to DNA codons, except that DNA is broken down to a Base-4 level.
" Additionally, nonsense sequences in the genome are effectively ignored or serve a merely structural function. The first time a computer command mutates it comes to a dead stop and has to be fixed by the programmer."
Again, your claim about computer code is completely erroneous. A computer command can mutate into another computer command and cause unintended behavior, but that does NOT mean that the program will immediately stop all execution.
BTW, there are "genetic" computer programs whose algorithmic construction is determined by a set of "genes" that are forced to evolve through random mutations and selection. There are some problems that can't be reasonably solved any other way. The principle is real, and exists.
This is true, but the comparison isn't relevant. We find it cheaper to manufacture systems that aren't fault tolerant in most cases though we do no how. It is an economic decision. Therefore, in practice computer code is FAR more fragile than DNA which has numerous redundancies and fault tolerance mechanisms built in (once you boot up an organism, you can't shut it down or -HUP the process). The bottom line is that it serves living organisms well to have a code that functions well when subject to a high error rate. Life does not need deterministic results to function. If something non-deterministic happens in a computer system or an accidental code mutation occurs, we WANT the system to crash. The onus is on computers to give the right answer every time or they are useless for our purposes.
No, that is false with respect to the purpose of the instruction set. Clearly if you give me a sequence of three nucleotide bases I can tell you exactly which amino acid they code for. I can also identify initiator sequences and stop sequences. On the other hand, if I give any programmer an isolated sequence of 1's and 0's it would mean nothing to him. Every change to the computer code at the binary level will have consequences if it is a part of the instruction set (not the data set which may possibly be changed at will without consequence to the continued operation of the program). Generally such instruction set changes are fatal in that the intended purpose ceases to be accomplished. Whether or not the program continues to operate depends on the effectiveness of the error trapping routines. These facts are not germane to the argument.
The programmer works in an abstract coding language which is translated into binary code by a compiler which is itself a program. Having run several hundred batch jobs in Fortran with thousand card decks I know all too well what a single typing mistake can do to stop compilation or abort the run. This detail is also irrelevant to the argument that DNA codes are facile, redundant, and robust while computer codes in general are not.