Liste des Groupes | Revenir à theory |
On 2025-03-11 13:34:34 +0000, olcott said:You never noticed that its source code is named Halt7.c ?
On 3/11/2025 5:30 AM, Mikko wrote:False. You didn't say that HHH is a C function. In particular, the codeOn 2025-03-11 02:27:42 +0000, olcott said:>
>On 3/10/2025 9:21 PM, Richard Damon wrote:>On 3/10/25 7:41 PM, olcott wrote:>typedef void (*ptr)();>
int HHH(ptr P);
>
void Infinite_Loop()
{
HERE: goto HERE;
return;
}
>
void Infinite_Recursion()
{
Infinite_Recursion();
return;
}
>
void DDD()
{
HHH(DDD);
return;
}
>
int DD()
{
int Halt_Status = HHH(DD);
if (Halt_Status)
HERE: goto HERE;
return Halt_Status;
}
>
That when HHH correctly emulates N steps of the
above functions that none of these functions can
possibly reach their own "return" instruction
and terminate normally.
>
Since HHH does see that same pattern that competent
C programmers see it correctly aborts its emulation
and rejects these inputs as non terminating.
>
Problem: DD Isn't a program, and if you try to compile it, you will get an undiefined symbol HHH.
HHH need not be a program for this correct thought experiment.
The only detail required to know about HHH is that it correctly
emulates N steps of DD.
Wrong. One nneds also to know how a call to HHH is interpreted, in particular
if HHH is not a program.
You are trying to get away with saying that
one C function cannot call another C function
according to the semantics of the C language?
shown above does not say so.
Les messages affichés proviennent d'usenet.