Brian L. Stuart wrote:
If you've stayed with me this long, you have my condolances.
However, there's one more interesting point that comes out
here. This sub-thread was sparked by the question of whether
the potential of self-modifying code was necessary in order
to be a computer. Notice that with the definition above,
any computer can implement a universal Turing machine and
unless you engage in some unnatural limitations, such a
machine can modify it's own programming. (Remember that
a universal Turing machine interprets instructions read
from the tape.) A more prosaic way of looking at this same
point is that I don't need a von Neumann architecture to
implement an interpreter which interprets self-modifying
code. And if computing theory teaches us anything, adding
or removing levels of abstraction doesn't affect the basic
power of the model.
But is not LIFE on the molecular level some thing like a bunch
computing machines that computes structure rather than logic.
That is a practical turning machine in my books, that made
Von Neymann, not the other way around. :)