Abstract
Prettyprint algorithms designed for printing programs on paper are not appropriate in an interactive environment where the interface to the user is a CRT screen. We describe a data representation and an algorithm that allow the efficient generation of program displays from a parsed internal representation of a program. The displays show the structure of the program by consistent and automatic indentation. They show the program in varying levels of detail by replacing unimportant parts with ellipsis marks. The relative importance of program parts is determined jointly by the structure of the program and by the current focus of attention of the programmer.
- 1 Alberga, C. N., Brown, A. L., Leeman, G. B. Jr., Mikelsons, M., and Wegman, M. N., A Program Development Tool, Eighth Annual ACM Symposium on Principles of Programming Languages, January 1981, 92-104. Google ScholarDigital Library
- 2 Donzeau-Gouge, V., Huet, G., Kahn, G., Lang, B. and Levy, J. J., A Structure-oriented Program Editor: A First Step Towards Computer Assisted Programming, International Computing Symposium 1975, North Holland Publishing Company, 1975.Google Scholar
- 3 Hawkinson, L., and Kameny, S. L., LISP Edit Program, LISPED, System Development Corporation, TM-2337/100/01, April 1966.Google Scholar
- 4 Swinehart, D. C., COPILOT: A Multiple Process Approach to Interactive Programming Systems, Stanford Artificial Intelligence Laboratory Memo AIM-230, Stanford University, July 1974.Google Scholar
- 5 Teitelbaum, R. T., The Cornell Program Synthesizer: A Microcomputer Implementation of PL/CS, Department of Computer Science, Cornell University, TR 79-370, June 1979. Google ScholarDigital Library
- 6 Teitelman, W., INTERLISP Reference Manual, Xerox Palo Alto Research Center, 1976.Google Scholar
- 7 Wegman, M. N., Parsing for Structural Editors, Twenty-first Annual IEEE Symposium on Foundations of Computer Science, October 1980, 320-327.Google Scholar
Index Terms
- Prettyprinting in an interactive programming environment
Recommendations
An environment for learning interactive programming
SIGCSE '14: Proceedings of the 45th ACM technical symposium on Computer science educationWe describe a web-based programming environment designed to support teaching introductory programming for a massive open online class. We discuss some of the thought processes behind the design of this environment and then focus on two key innovations ...
Prettyprinting in an interactive programming environment
Prettyprint algorithms designed for printing programs on paper are not appropriate in an interactive environment where the interface to the user is a CRT screen. We describe a data representation and an algorithm that allow the efficient generation of ...
Prettyprinting in an interactive programming environment
Proceedings of the ACM SIGPLAN SIGOA symposium on Text manipulationPrettyprint algorithms designed for printing programs on paper are not appropriate in an interactive environment where the interface to the user is a CRT screen. We describe a data representation and an algorithm that allow the efficient generation of ...
Comments