Sun, 27 Sep 2009 00:27:14 -0700, Walter Bright thusly wrote: >> You seem to be under the impression that nothing can be made >> uncrashable without introducing the possibility of corrupted state. >> That's hogwash.
What I mean by safe is that no matter what you do, you cannot make the program crash or cause memory corruption. If you look at typical functional languages, unless FFI is used, the only ways the program may fail are a) no more stack memory b) no more heap memory c) programs halts (halting problem) d) developer explicitly kills the program e.g. with the Error type. Note that if your language is simple enough, say simply typed lambda calculus, you do not have the third problem anymore. All of these errors can also happen in D, but none of the D's other problems happen in those languages.