Proteins are the runtime on which DNA is executed, because they are the mechanism that "reads" DNA. But proteins are the compiled output of DNA, because they are the result of "reading" DNA. So the DNA defines the runtime environment that is necessary for DNA to run.