1. The high cost of software. Practical Strategies for Developing Large Software Systems, (ed.). Addison-Wesley: Reading, MA, 1975; 3–13.
2. (eds.). Program Evolution: Processes of Software Change. Academic Press: Orlando, FL, 1985.
3. Pattern matching in strings. Formal Language Theory: Perspectives and Open Problems, (ed.). Academic Press: New York, 1980; 325–347.
4. Awk — a pattern scanning and processing language
5. , . Compilers: Principles, Techniques, and Tools. Addison-Wesley: Reading, MA, 1986.