IBM Rational Purify - Differences With Traditional Debuggers

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:

    I don’t know what immutable differences exist between men and women apart from differences in their genitals; perhaps there are some other unchangeable differences; probably there are a number of irrelevant differences. But it is clear that until social expectations for men and women are equal, until we provide equal respect for both men and women, our answers to this question will simply reflect our prejudices.
    Naomi Weisstein (b. 1939)

    The traditional novel form continues to enlarge our experience in those very areas where the wide-angle lens and the Cinerama screen tend to narrow it.
    Daniel J. Boorstin (b. 1914)