Navigation
Random Term
parm
/parm/ n. Further-compressed form of {param}. This term
is an IBMism, and written use is almost unknown outside IBM
shops; spoken /parm/ is... VIEW ENTIRE DEFINITION
View Definition: troff
troff /tee'rof/ or /trof/ [UNIX] n. The gray eminence of UNIX
text processing; a formatting and phototypesetting program, written
originally in PDP-11 assembler and then in barely-structured early
C by the late Joseph Ossana, modeled after the earlier ROFF which
was in turn modeled after Multics' RUNOFF. A companion program,
`nroff', formats output for terminals and line printers.
In 1979, Brian Kernighan modified TROFF so that it could drive
phototypesetters other than the Graphic Systems CAT. His paper
describing that work ("A Typesetter-independent TROFF," AT&T CSTR
#97) explains `troff''s durability. After discussing the
program's "obvious deficiencies --- a rebarbative input syntax,
mysterious and undocumented properties in some areas, and a
voracious appetite for computer resources" and noting the ugliness
and extreme hairiness of the code and internals, Kernighan
concludes
None of these remarks should be taken as denigrating
Ossana's accomplishment with TROFF. It has proven a
remarkably robust tool, taking unbelievable abuse from a
variety of preprocessors and being forced into uses that
were never conceived of in the original design, all with
considerable grace under fire.
The success of TeX and desktop publishing systems have reduced
`troff''s relative importance, but this tribute perfectly
captures the strengths that secured `troff' a place in hacker
folklore; indeed, it could be taken more generally as an indication
of those qualities of good programs which, in the long run, hackers
most admire.