The University of Washington illustrating compiler
RR Henry, KM Whaley, B Forstall - ACM SIGPLAN Notices, 1990 - dl.acm.org
RR Henry, KM Whaley, B Forstall
ACM SIGPLAN Notices, 1990•dl.acm.orgThe University of Washington illustrating compiler (UWPI) automatically illustrates the data
structures used in simple programs written in a subset of Pascal2. A UWPI user submits a
program to UWPI, and can then watch a graphical display show time varying illustrations of
the data structures and program source code. UWPI uses the information latent in the
program to determine how to illustrate the program. UWPI infers the abstract data types
directly from the declarations and operations used in the source program, and then lays out …
structures used in simple programs written in a subset of Pascal2. A UWPI user submits a
program to UWPI, and can then watch a graphical display show time varying illustrations of
the data structures and program source code. UWPI uses the information latent in the
program to determine how to illustrate the program. UWPI infers the abstract data types
directly from the declarations and operations used in the source program, and then lays out …
The University of Washington illustrating compiler (UWPI) automatically illustrates the data structures used in simple programs written in a subset of Pascal2. A UWPI user submits a program to UWPI, and can then watch a graphical display show time varying illustrations of the data structures and program source code. UWPI uses the information latent in the program to determine how to illustrate the program. UWPI infers the abstract data types directly from the declarations and operations used in the source program, and then lays out the illustration in a natural way by instantiating well-known layouts for the abstracts types. UWPI solves program illustration using compile-time pattern matching and type inferencing to link anticipated execution events to display events, rather than relying on user assistance or specialized programming techniques. UWPI has been used to automatically illustrate didactic sorting and searching examples, and can be used to help teach basic data structures, or to help when debugging programs.
ACM Digital Library