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.