This repo contains Brian Kernighan's and Rob Pike's famous paper on program design from the 1984 Bell Systems Technical Journal (BSTJ) issue on UNIX.
I reconstituted the troff source from a PostScript file obtained from
Stanley Leiber. This file had a few problems, which I have fixed.
Formatting instructions, differences and fixes from the original PostScript and acknowledgements are in comments at the front of the file.
With the addition of -r tj=1 on the groff command line, the document
will include the section headings and author biographies that were in
the 1984 Bell Labs Technical Journal article.
I'm making it available since it's a famous document for which it would be a shame to only have not-quite-correct PostScript.
README.md- This file.prog.mac- Macros for formatting examples, borrowed from CSTR 100.unix_prog_design.ms- Thetroffsource for the memorandum.unix_prog_design.ps- The original PostScript version.
Tue Jul 7 08:59:55 AM IDT 2026