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:

    What we have to do ... is to find a way to celebrate our diversity and debate our differences without fracturing our communities.
    Hillary Rodham Clinton (b. 1947)

    To minor authors is left the ornamentation of the commonplace: these do not bother about any reinventing of the world; they merely try to squeeze the best they can out of a given order of things, out of traditional patterns of fiction.
    Vladimir Nabokov (1899–1977)