Ary Borenszweig wrote: >> I doubt it's the direction D wants to go. Because proving correctness at >> compile-time requires the holy grail, and testing correctness at runtime >> requires extra space for each variable and extra time for each access. > > What do you mean by "holy grail"?
You missed that discussion, did you? Basically, if you want to know at compile-time whether a variable is initialized, there are several possibilities: * Be overly conservative: Make sure every possible computational path has an assignment to the variable, otherwise give an error. This would throw out the baby with the bathwater. Many valid programs would cause an error. * Actually analyze the control flow: Make sure that exactly all reachable states have the variable initialized, otherwise give an error. Dubbed "holy grail", because this sort of analysis is still some time off, and would allow some very cool correctness verification. -- Michiel Helvensteijn