ABSTRACT
In this paper we describe how we have combined a number of tools (most of which understand a particular programming language) into a single system to aid in the reading, writing, and running of programs. We discuss the efficacy and the structure of our system. For the last two years the system has been used to build itself; it currently consists of 500 kilobytes of machine code (25,000 lines of LISP/370 code) and approximately one hundred commands with large numbers of options. We will describe some of the experience we have gained in evolving this system. We first indicate the system components which users have found most important; some of the tools described here are new in the literature. Second, we emphasize how these tools form a synergistic union, and we illustrate this point with a number of examples. Third, we illustrate the use of various system commands in the development of a simple program. Fourth, we discuss the implementation of the system components and indicate how some of them have been generalized.
- Austermuhl, B., Henhapl, W., Kron, H., Lutze, R., On a Programming Environment and its Generation, University at Darmstadt, Germany, Pu1R2/79.Google Scholar
- Brown, M., Wood, S., A Display-oriented Program Editor, Yale.Google Scholar
- Budd, T. A., DeMillo, R. A., Lipton, R. J., and Sayward, F. G., Theoretical and empirical studies on using program mutation to test the functional correctness of programs, Seventh Annual ACM Symposium on Principles of Programming Languages, Las Vegas, Nevada, January, 1980, pp. 234-244. Google ScholarDigital Library
- Cheatham, T., Townley, J., Holloway, G., A System for Program Refinement, Aiken Computing Laboratory, TR-05-79, Aug. 1979.Google Scholar
- Dolotta, T. A., Haight, R. C. and Mashey, J. R., The Programmer's Workbench, The Bell System Technical Journal Vol. 57, No. 6 Part 2, July-Aug. 1978.Google Scholar
- Donzeau-Gouge, V., Huet, G., Kahn, G., Lang, B., Levy, J. J., "A Structure Oriented Program Editor: A first step toward computer assisted Programming", in International Computing Symposium, 1975 North Holland Publishing Company, 1975, pp.113-120.Google Scholar
- Elzer, P. F., Some Observations concerning existing software environments, DARPA, May 1979.Google Scholar
- Ghezzi, C., Mandrioli, D., Incremental Parsing, ACM Transactions on Programming Languages and Systems, Vol. 1, No. 1, July 1979, pages 58-70. Google ScholarDigital Library
- IBM Data Processing Division, LISP/370 Program Description/Operations Manual, Program Number 5796-PKL, SH20-2076-0, White Plains, New York, March, 1978.Google Scholar
- Lederman, A., An Abstracted Bibliography on Programming Environments, personal communication, June 1980.Google Scholar
- Reiser, J. F., Bail, a debugger for Sail, Stanford Artificial Intelligence Laboratory Memo AIM-270, Oct. 1975. Google ScholarDigital Library
- Teitelbaum, R. T., The Cornell Program Synthesizer: A Microcomputer Implementation of PL/CS, Cornell TR 79-370. Google ScholarDigital Library
- Wegman, M. N., Parsing for a Structural Editor, FOCS Oct. 1980.Google Scholar
- Masinter, L. M., Global Program Analysis in an Interactive environment, SSL-80-1 XEROX, January 1980.Google Scholar
- Teitelman, W. et al., Interlisp Reference Manual, Xerox PARC, Dec. 1978.Google Scholar
- Mikelsons M. and Wegman M., PDE1L: the PL1L Program Development Environment -- Principles of Operation, IBM RC 8513, Yorktown Heights, New York, Nov. 1980.Google Scholar
- Mikelsons M., Lispedit Command Descriptions, IBM RC 8275, Yorktown Heights, New York, May 1980.Google Scholar
- Kruskal, V., An Editor for Parametric Programs, IBM RC 6070. Yorktown Heights, New York, June 1976.Google Scholar
- A program development tool
Recommendations
A program development tool
In this paper we describe how we have combined a number of tools (most of which are tailored to a particular programming language) into a single system to aid in the reading, writing, and running of programs. We discuss the efficacy and the structure of ...
Visualisation-based tool support for the development of aspect-oriented programs
AOSD '06: Proceedings of the 5th international conference on Aspect-oriented software developmentThe development of aspect-oriented software requires tool support to make the aspect-oriented structures explicit and to assist programmers in understanding the overall source code, including aspects. Tools exist to meet this need, but they struggle ...
Lego NXT as a learning tool
ITiCSE '10: Proceedings of the fifteenth annual conference on Innovation and technology in computer science educationIn this paper, we describe a new method for using the Lego Mindstorm NXT robot as a learning tool in automata theory.
Comments