Towards monolingual programming environments
ACM Transactions on Programming Languages and Systems (TOPLAS) - Lecture notes in computer science Vol. 174
A relational approach to monitoring complex systems
ACM Transactions on Computer Systems (TOCS)
Algorithm animation
ACM Computing Surveys (CSUR)
Computer architecture: a quantitative approach
Computer architecture: a quantitative approach
Debugging standard ML without reverse engineering
LFP '90 Proceedings of the 1990 ACM conference on LISP and functional programming
On the development of reactive systems
Logics and models of concurrent systems
Tools for Distributed Application Management
Computer - Distributed computing systems: separate resources acting as one
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
A retargetable compiler for ANSI C
ACM SIGPLAN Notices
Consistent detection of global predicates
PADD '91 Proceedings of the 1991 ACM/ONR workshop on Parallel and distributed debugging
PROVIDE: A Process Visualization and Debugging Environment
IEEE Transactions on Software Engineering
Shade: a fast instruction-set simulator for execution profiling
SIGMETRICS '94 Proceedings of the 1994 ACM SIGMETRICS conference on Measurement and modeling of computer systems
An overview of a dynamic programming environment based on extensibility
Nordic Journal of Computing
Parallel User Interfaces for Parallel Applications
HPDC '96 Proceedings of the 5th IEEE International Symposium on High Performance Distributed Computing
A Taxonomy and Catalog of Runtime Software-Fault Monitoring Tools
IEEE Transactions on Software Engineering
Heap protection for Java virtual machines
PPPJ '06 Proceedings of the 4th international symposium on Principles and practice of programming in Java
Java heap protection for debugging native methods
Science of Computer Programming
Hi-index | 0.00 |
This paper introduces program directing, a new way of program interaction. Directing enables one program, the director, to monitor and to control another program, the executor. One important application of program directing is human interaction with complex computer simulations.The Dynascope programming environment is designed specifically to support directing in traditional, compiled languages. It provides a framework and building blocks for easy construction of sophisticated directors. Directors are regular programs that perform the directing of executors through Dynascope primitives. Dynascope is built around the concept of the execution stream which provides a complete description of the executor's computational behavior. The source code of executors requires no changes in order to be subjected to directing.This paper gives an overview of the Dynascope system. Sample applications are presented: debugging register allocation, animation of procedure calls, and a complex artificial life simulation. The performance of Dynascope is illustrated by real time measurements.