One of the more painful exercises a programmer has to go through is that of documenting code. Unlike the more intellectually satisfying activities of design, coding, and even debugging, documentation is seen, with good reason, as a grind. Moreover, burdensome enough the initial documentation effort may be, there is the additional ongoing chore of maintaining the documentation as the software grows and programming interfaces evolve. Documentation through run time introspection may help.