more sensical approach to analysing this program, e.g. as employed by a human, would be to see that NeverCalled() is the only function that can write Do It is not only non-trivial but also impossible (even) for a human…
The function pointer is static. But the function that mutates it, NeverCalled, is not. One can still indirectly change that function pointer.
This is probably why there is not a proof yet, since the truth is undesirable. You are presenting an explanation to a false observation.
Compile with -fno-frame-pointer and you won't see those code. It's for debugger.
A lot of dota's mechanics is designed with the assumption that the player is human -- e.g. skills that can be programmed to be released perfectly but are hard for a human (even pro) to do so reliably (Shadow Fiend's…
Except WebAsm is language independent and reuses DOM (indirectly through javascript).
Labelling an operation -- number of steps of which upper-bounded by 6 -- "effectively constant" is different from considering any real world algorithm with bounded input size. Calling Scala's immutable vector ops…
It blocks other interprocedural optimization such inlining and interprocedural const prop.
It's unsafe for a compiler to do this in general (i.e. without annotations) because it can't determine dependencies that are external to the program -- e.g. `one=get(); two=get()`. The dependency between one and two is…
Register allocation in general is np-complete[1][2]. Having polynomial-time coloring algorithm for SSA doesn't make the allocation optimal -- you still need to "lower" the SSA to proper machine code. [1]…
more sensical approach to analysing this program, e.g. as employed by a human, would be to see that NeverCalled() is the only function that can write Do It is not only non-trivial but also impossible (even) for a human…
The function pointer is static. But the function that mutates it, NeverCalled, is not. One can still indirectly change that function pointer.
This is probably why there is not a proof yet, since the truth is undesirable. You are presenting an explanation to a false observation.
Compile with -fno-frame-pointer and you won't see those code. It's for debugger.
A lot of dota's mechanics is designed with the assumption that the player is human -- e.g. skills that can be programmed to be released perfectly but are hard for a human (even pro) to do so reliably (Shadow Fiend's…
Except WebAsm is language independent and reuses DOM (indirectly through javascript).
Labelling an operation -- number of steps of which upper-bounded by 6 -- "effectively constant" is different from considering any real world algorithm with bounded input size. Calling Scala's immutable vector ops…
It blocks other interprocedural optimization such inlining and interprocedural const prop.
It's unsafe for a compiler to do this in general (i.e. without annotations) because it can't determine dependencies that are external to the program -- e.g. `one=get(); two=get()`. The dependency between one and two is…
Register allocation in general is np-complete[1][2]. Having polynomial-time coloring algorithm for SSA doesn't make the allocation optimal -- you still need to "lower" the SSA to proper machine code. [1]…