The DI interpreter is both a debugger and interpreter of SISAL programs. Its use as a program interpreter is only a small part of its role; it is designed to be a tool for studying compilation techniques for applicative languages. DI interprets dataflow graphs expressed in the IF1 and IF2 languages, and is heavily instrumented to report the activity of dynamic storage activity, reference counting, copying and updating of structured data values. It also aids the SISAL language evaluation by providing an interim execution vehicle for SISAL programs. DI provides determinate, sequential interpretation of graph nodes for sequential and parallel operations in a canonical order. As a debugging aid, DI allows tracing, breakpointing, and interactive display of program data values. DI handles creation of SISAL and IF1 error values for each data type and propagates them according to a well-defined algebra. We have begun to implement IF1 optimizers and have measured the improvements with DI.
CITATION STYLE
Skedzielewski, S. K., Yates, R. K., & Oldehoeft, R. R. (1987). DI: An interactive debugging interpreter for applicative languages. In Papers of the Symposium on Interpreters and Interpretive Techniques, SIGPLAN 1987 (pp. 102–112). Association for Computing Machinery, Inc. https://doi.org/10.1145/29650.29661
Mendeley helps you to discover research relevant for your work.