.H 1 CONCLUSION The following are the qualities that we have tried to emphasize in \*(PM, in approximate order of importance: .BL .LI .I "Robustness in the face of error\*(EM" \c A user need not be an .I nroff\^/\^troff expert to use these macros. When the input is incorrect, either the macros attempt to make a reasonable interpretation of the error, or a message describing the error is produced. We have tried to minimize the possibility that a user would get cryptic system messages or strange output as a result of simple errors. .LI .I "Ease of use for simple documents\*(EM" \c It is not necessary to write complex sequences of commands to produce simple documents. Reasonable default values are provided, where at all possible. .LI .I "Parameterization\*(EM" \c There are many different preferences in the area of document styling. Many parameters are provided so that users can adapt the output to their respective needs over a wide range of styles. .LI .I "Extension by moderately expert users\*(EM" \c We have made a strong effort to use mnemonic naming conventions and consistent techniques in the construction of the macros. Naming conventions are given so that a user can add new macros or redefine existing ones, if necessary. .LI .I "Device independence\*(EM" \c The most common use of \*(PM is to print documents on hard-copy typewriter terminals, using the .I nroff formatter. The macros can be used conveniently with both 10- and 12-pitch terminals. In addition, output can be scanned with an appropriate CRT terminal. .if t .ne4 The macros have been constructed to allow compatibility with .I troff , so that output can be produced both on typewriter-like terminals and on a phototypesetter. .LI .I "Minimization of input\*(EM" \c The design of the macros attempts to minimize repetitive typing. For example, if a user wants to have a blank line after all first- or second-level headings, he or she need only set a specific parameter .I once at the beginning of a document, rather than add a blank line after each such heading. .LI .I "Decoupling of input format from output style\*(EM" \c There is but one way to prepare the input text, although the user may obtain a number of output styles by setting a few global flags. For example, the \f3.\fPH macro is used for all numbered headings, yet the actual output style of these headings may be made to vary from document to document or, for that matter, within a single document. .LE .P Future releases of \*(PM will provide additional features that are found to be useful. The authors welcome comments, suggestions, and criticisms of the macros and of this manual. .SP .I Acknowledgements. We are indebted to T. A. Dolotta for his continuing guidance during the development of \*(PM. We also thank our many users who have provided much valuable feedback, both about the macros and about this manual. Many of the features of \*(PM are patterned after similar features in a number of earlier macro packages, and, in particular, after one implemented by M. E. Lesk. Finally, because \*(PM often approaches the limits of what is possible with the text formatters, during the implementation of \*(PM we have generated atypical requirements and encountered unusual problems; we thank J. F. Ossanna for his willingness to add new features to the formatters and to invent ways of having the formatters perform unusual but desired actions. .if !\nX .SG mmr .if \nX .SG .RP