Differences With Traditional Debuggers
The ability to detect non-fatal errors is a major distinction between Purify and similar programs from the usual debuggers. By contrast, debuggers generally only allow the programmer to quickly find the sources of fatal errors, such as a program crash due to dereferencing a null pointer, but do not help to detect the non-fatal memory errors. Debuggers are useful for other things that Purify is not intended for, such as for stepping through the code line by line or examining the program's memory by hand at a particular moment of execution. In other words, these tools can complement each other for a skilled developer.
Purify also includes other functionality, such as high-performance watchpoints, which are of general use while using a debugger on one's code.
It is worth noting that using Purify makes the most sense in programming languages that leave memory management to the programmer. Hence, in Java, Lisp, or Visual Basic, for example, automatic memory management reduces occurrence of any memory leaks. These languages can however still have leaks; unnecessary references to objects will prevent the memory from being re-allocated. IBM has a product called Rational Application Developer to uncover these sorts of errors.
Read more about this topic: IBM Rational Purify
Famous quotes containing the words differences and/or traditional:
“What strikes many twin researchers now is not how much identical twins are alike, but rather how different they are, given the same genetic makeup....Multiples dont walk around in lockstep, talking in unison, thinking identical thoughts. The bond for normal twins, whether they are identical or fraternal, is based on how they, as individuals who are keenly aware of the differences between them, learn to relate to one another.”
—Pamela Patrick Novotny (20th century)
“We should have an army so organized and so officered as to be capable in time of emergency, in cooperation with the National Militia, and under the provision of a proper national volunteer law, rapidly to expand into a force sufficient to resist all probable invasion from abroad and to furnish a respectable expeditionary force if necessary in the maintenance of our traditional American policy which bears the name of President Monroe.”
—William Howard Taft (18571930)