Program source is an intermediate representation of software; it lies between a developer’s intention and the hardware’s execution. Despite advances in languages and development tools, source itself and the applications we use to view it remain an essentially static representation of software, from which developers can spend considerable energy postulating actual behavior. Emerging techniques in execution logging promise to provide large shared repositories containing high-fidelity recordings of deployed, production software. Tralfamadore1 is a system that combines source and execution trace analysis to capitalize on these recordings, and to expose information from the “experience” of real execution within the software development environment, allowing developers to inform their understanding of source based on how it behaves during real execution. Categories and Subject Descriptors D.2.5 [Testing and Debugging]: Debugging aids, Tracing; D.2.6 [Programming Environments]: Inte...
Geoffrey Lefebvre, Brendan Cully, Michael J. Feele