What specifically can not be computed?
The Halting Problem [A. M. Turing, 1938]
(1) Consider Java programs of the restricted form
static void main(String [] args)
TokenReader in = new TokenReader(System.in);
String s = in.readString();
(2) One possible input for such a program is a copy of itself, (say all on one line).
(3) Some such programs, given a copy of themselves, loop forever:
static void main(String [] args)
TokenReader in = new TokenReader(System.in);
String s = in.readString();
while ( s.substring(0,6).equals(”static”)) { }
(4) Other such programs, given a copy of themselves, halt:
static void main(String [] args)
TokenReader in = new TokenReader(System.in);
String s = in.readString();