Further Reading
- Even Adams and
  Steven S. Muchnick.
Dbxtool: A window-based symbolic debugger for Sun workstations.
Software: Practice & Experience, 16(7):653–669, July 1986.
 
- A. V. Aho and M. J.
  Corasick.
Efficient string matching: an aid to bibliographic search.
Communications of the ACM, 18(6):333–340, 1975.
 
- Alfred V. Aho, John E.
  Hopcroft, and Jeffrey D. Ullman.
The
  Design and Analysis of Computer Algorithms.
Addison-Wesley, Reading, MA, 1974.
 
- Alfred V. Aho, Ravi Sethi,
  and Jeffrey D. Ullman.
Compilers, Principles, Techniques, and Tools.
Addison-Wesley, Reading, MA, 1985.
 
- Alfred V. Aho, Brian W.
  Kernighan, and Peter J. Weinberger.
The
  AWK Programming Language.
Addison-Wesley, Reading, MA, 1988.
 
- Kent Beck.
Extreme Programming Explained: Embrace Change.
Addison-Wesley, Boston, MA, 2000.
 
- Bruce Blinn.
Portable Shell Programming: An Extensive Collection of Bourne Shell
  Examples.
Prentice Hall, Englewood Cliffs, NJ, 1995.
 
- Grady Booch, James
  Rumbaugh, and Ivar Jacobson.
The
  Unified Modeling Language User Guide.
Addison-Wesley, Reading, MA, 1999.
 
- S. R. Bourne.
An introduction to the UNIX shell.
In Unix Programmer's Manual [Unix Programmer's Manual, 1979].
Also available online http://plan9.bell-labs.com/7thEdMan/.
 
- J. Brady.
A theory of productivity in the creative process.
IEEE Computer Graphics and Applications, 6(5):25–34, May
  1986.
 
- Tom
  Christiansen and Nathan Torkington.
The
  Perl Cookbook.
O'Reilly and Associates, Sebastopol, CA, 1998.
 
- Ward Cunningham.
Signature survey: A method for
  browsing unfamiliar code.
Available online http://c2.com/doc/SignatureSurvey/ (July 2002), 2001.
OOPSLA 2001 Software Archeology Workshop position statement.
 
- Tom DeMarco and
  Timothy R. Lister.
Peopleware: Productive Projects and Teams.
Dorset House Publishing, New York, second edition, 1999.
 
- Nachum
  Dershowitz and Edward M. Reingold.
Calendrical Calculations.
Cambridge University Press, Cambridge, 1997.
 
- Dale Dougherty
  and Arnold Robbins.
sed and awk.
O'Reilly and Associates, Sebastopol, CA, second edition, 1997.
 
- Martin Fowler and
  Kendall Scott.
UML Distilled: Applying the Standard Object Modeling Language.
Addison-Wesley, Boston, MA, second edition, 2000.
 
- Jeffrey E. Friedl and
  Andy Oram, editors.
Mastering Regular Expressions: Powerful Techniques for Perl and Other
  Tools.
O'Reilly and Associates, Sebastopol, CA, second edition, 2002.
 
- S. Graham, P. Kessler,
  and M. K. McKusick.
gprof: A call graph execution profiler.
ACM SIGPLAN Notices, 6(17):120–126, June 1982.
Proceedings of the SIGPLAN '82 Symposium on Compiler Construction.
 
- S. Graham, P. Kessler,
  and M. K. McKusick.
An execution profiler for modular programs.
Software: Practice & Experience, 13:671–685, 1983.
 
- Mark R. Horton.
Portable C Software.
Prentice-Hall, Englewood Cliffs, NJ, 1990.
 
- Stephen C. Johnson.
Lint, a C program checker.
Computer Science Technical Report 65, Bell Laboratories, Murray Hill, NJ,
  December 1977.
 
- Stephen C. Johnson.
Lint, a C program checker.
In Unix Programmer's Manual [Unix Programmer's Manual, 1979].
Also available online http://plan9.bell-labs.com/7thEdMan/.
 
- Brian W. Kernighan
  and Rob Pike.
The
  UNIX Programming Environment.
Prentice-Hall, Englewood Cliffs, NJ, 1984.
 
- Andrew Koenig.
C
  Traps and Pitfalls.
Addison-Wesley, Reading, MA, 1988.
 
- David G. Korn.
Porting Unix to Windows NT.
In Proceedings of the USENIX 1997 Annual Technical Conference,
  Berkeley, CA, January 1997. Usenix Association.
 
- Don Libes.
Obfuscated C and Other Mysteries.
John Wiley and Sons, New York, 1993.
 
- Mark Lutz.
Programming Python.
O'Reilly and Associates, Sebastopol, CA, second edition, 2002.
 
- Udi Manber and Sun Wu.
GLIMPSE: A tool to search through entire file systems.
In Jeff Mogul, editor, USENIX Conference Proceedings, pages
  23–32, Berkeley, CA, Winter 1994. Usenix Association.
 
- L. E. McMahon.
SED—a non-interactive text editor.
In Unix Programmer's Manual [Unix Programmer's Manual, 1979].
Also available online http://plan9.bell-labs.com/7thEdMan/.
 
- Cameron Newham and
  Bill Rosenblatt.
Learning the Bash Shell.
O'Reilly and Associates, Sebastopol, CA, second edition, 1998.
 
- Geoffrey J. Noer.
Cygwin32: A free Win32 porting layer for UNIX applications.
In Susan Owicki and Thorsten von Eicken, editors, Proceedings of the 2nd
  USENIX Windows NT Symposium, Berkeley, CA, August 1998. Usenix
  Association.
 
- Paul W. Oman and Curtis R.
  Cook.
Typographic style is more than cosmetic.
Communications of the ACM, 33(5):506–520, May 1990.
 
- Henry Rabinowitz
  and Chaim Schaap.
Portable C.
Prentice Hall, Englewood Cliffs, NJ, 1990.
 
- James Rumbaugh, Ivar
  Jacobson, and Grady Booch.
The
  Unified Modeling Language Reference Manual.
Addison-Wesley, Reading, MA, 1999.
 
- Randal L. Schwartz, Tom
  Christiansen, and Larry Wall.
Learning Perl.
O'Reilly and Associates, Sebastopol, CA, third edition, 2001.
 
- Diomidis Spinellis.
Outwit: Unix tool-based programming meets the Windows world.
In Christopher Small, editor, USENIX 2000 Technical Conference
  Proceedings, pages 149–158, Berkeley, CA, June 2000. Usenix
  Association.
 
- Diomidis Spinellis.
Notable design patterns for domain specific languages.
Journal of Systems and Software, 56(1):91–99, February 2001.
 
- Diomidis Spinellis.
Code Reading: The Open
  Source Perspective, pages 339–376.
Effective Software Development Series. Addison-Wesley, Boston, MA, 2003.
 
- Diomidis Spinellis.
Tool writing: A forgotten art?.
IEEE Software, 22(4):9–11, July/August 2005.
(doi:10.1109/MS.2005.111)
 
- Diomidis Spinellis.
The tools at hand.
IEEE Software, 22(1):10–13, January/February 2005.
(doi:10.1109/MS.2005.23)
 
- Sriram Srinivasan.
Advanced Perl Programming.
O'Reilly and Associates, Sebastopol, CA, 1997.
 
- Edward R. Tufte.
The
  Visual Display of Quantitative Information.
Graphics Press, Cheshire, CT, 1983.
 
- UNIX
  Programmer's Manual. Volume 2—Supplementary Documents.
Bell Telephone Laboratories, Murray Hill, NJ, seventh edition, 1979.
Also available online http://plan9.bell-labs.com/7thEdMan/.
 
- Larry Wall, Tom
  Christiansen, Randal L. Schwartz, and Stephen Potter.
Programming Perl.
O'Reilly and Associates, Sebastopol, CA, third edition, 2000.
 
- Stephen R. Walli.
OPENNT: UNIX application portability to Windows NT via an
  alternative environment subsystem.
In Ed Lazowska and Michael B. Jones, editors, Proceedings of the USENIX
  Windows NT Symposium, Berkeley, CA, August 1997. Usenix
  Association.