DRAT: A program for maintaining listings
Abstract DRAT is a program that helps maintain listings for a large system. It can print just those pages that have changed since the last time it listed the system. It is interesting for three reasons: its functionality saves significantly on the cost of keeping track of a large set of listings, its user interface required careful design despite its simple functionality, and its design is a practical example of using information hiding. The DRAT virtual printer module hides details of a wide variety of printing engines. The user interface includes a carefully designed inheritance mechanism for options, allowing flexibility for the user while minimizing the effort of specifying options.