All men contain several men inside them, and most of us bounce from one self to another without ever knowing who we are. - Paul Auster
One way to think of incompleteness/halting is that the future is not computable. Meaning that to see the result of some symbolic/computational process you have to actually run the program and there is no shortcut to making a prediction one way or the other if we want to know for certain what the result would actually be.
There is something called abstract interpretation that can tell you what the result of some computation will be but by necessity it can only be an approximation because it must halt in some finite amount of time. Type systems are a good example of abstract interpretation because type systems assign a logical/mathematical semantics to code and allow one to determine in a finite amount of time whether some code is logically coherent according to the rules of the type system.
The larger philosophical implication of all this is that symbolic/computational models of reality are always approximations. Whatever one can know for certain has either already happened and is in the past or there is some symbolic model/approximation which must necessarily have some degree of uncertainty and error.
https://news.ycombinator.com/item?id=33236447
A good traveler has no fixed plans and is not intent on arriving. - Lao Tzu