DocumentCode :
749626
Title :
Initial Report on a Lisp Programmer´s Apprentice
Author :
Rich, Charles ; Shrobe, Howard E.
Author_Institution :
Artificial Intelligence Laboratory, Massachusetts Institute of Technology
Issue :
6
fYear :
1978
Firstpage :
456
Lastpage :
467
Abstract :
This paper reports on the initial design and partial implementation of an interactive programming environment to be used by expert programmers. The system is based on three forms of program description: 1) definition of structured data objects, their parts, properties, and relations between them, 2) input–output specification of the behavior of program segments, and 3) a hierarchical representation of the internal structure of programs (plans). The plan representation is of major theoretical interest because it includes not only data flow and control flow relationships between subsegments of a program, but also goal-subgoal, prerequisite, and other logical dependencies between the specifications of the subsegments. Plans are utilized both for describing particular programs and in the compilation of a knowledge base of more abstract knowledge about programming, such as the concept of a loop and various specializations, such as enumeration loops and search loops. We also describe a deductive system which can verify the correctness of plans involving side effects on complex data with structure sharing.
Keywords :
Computer-aided design; Lisp; data abstraction; perturbation analysis; procedural abstraction; program verification; programmer´s apprentice; programming methodology; side effects; software design; software development; software engineering; Artificial intelligence; Assembly systems; Automatic programming; Hardware; Power engineering computing; Program processors; Programming environments; Programming profession; Software design; Software engineering; Computer-aided design; Lisp; data abstraction; perturbation analysis; procedural abstraction; program verification; programmer´s apprentice; programming methodology; side effects; software design; software development; software engineering;
fLanguage :
English
Journal_Title :
Software Engineering, IEEE Transactions on
Publisher :
ieee
ISSN :
0098-5589
Type :
jour
DOI :
10.1109/TSE.1978.233869
Filename :
1702565
Link To Document :
بازگشت