Document structure and modularity in mentor

Mentor is a structured document manipulation system. It has been used for several years as a program development and maintenance environment. Its main characteristics are: it is both interactive and programmable, it is parameterized by the language to be manipulated, it can manipulate several languages at the same time, as well as multi-lingual documents. it is open to and from the outer system, it is extensible. The current development of Mentor reflects our belief that a major component of programming is the maintenance of large documents of a varied nature: specifications, programs, manuals, progress reports, documentation, etc... In addition, information of various kinds, and in different languages, is often mixed in a single document, and one may have to extract this information selectively upon request (e.g. text, examples and formal specification in a manual, or instructions, comments and assertions in a program).