The other day someone came to me and asked my advice concerning the potential purchase of a new machine. It was meant to help with the following problem: Software often gets into a state in which people do not know whether certain features or functions ever get used or are even reachable by “flows” through the application. This is the problem of dead code. For various reasons related primarily to maintenance and performance, dead code is undesirable.
The machine works by analyzing code and looking for dead spots. You copy the code to be analyzed onto a USB memory stick and put it in the machine’s port. Then you select and start the file to be analyzed. Twenty-four hours later, a report is either emailed to you or posted online that shows all the dead code.
The vendor wanted $1000 for this machine. Is it worth the money?
Fields to consider: logic, computability theory, philosophy of mind.
Of course not. It’s the classic Turing Machine Halting problem.