B
Bryan Olson
Andrew Koenig said:Moreover, a language that admits a program that decides the halting problem
cannot be powerful enough to program its own interpreter.
There are arguable vacuous cases where that doesn't hold.
Suppose I define a computational language such that for any
program and any input, it outputs 'true'. Now if I define an
encoding of pairs-of-strings to stings, to represent (Machine,
Input), I can claim *any* program is an interpreter, because for
any P, P(Machine, Input) produces the same result as
Machine(Input). What's more, it solves it's halting problem,
since 'true' describes the machine's halting-behavior for any
input.