ACM Home Page
Please provide us with feedback. Feedback
The competence/performance dichotomy in programming preliminary report
Full text PdfPdf (733 KB)
Source Annual Symposium on Principles of Programming Languages archive
Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages table of contents
Los Angeles, California
Pages: 194 - 200  
Year of Publication: 1977
Author
Vaughan R. Pratt  Massachusetts Institute of Technology, Cambridge, Mass.
Sponsors
SIGACT: ACM Special Interest Group on Algorithms and Computation Theory
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 19,   Citation Count: 5
Additional Information:

abstract   references   cited by   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/512950.512968
What is a DOI?

ABSTRACT

We consider the problem of automating some of the duties of programmers. We take as our point of departure the claim that data management has been automated to the point where the programmer concerned only about the correctness (as opposed to the efficiency) of his program need not involve himself in any aspect of the storage allocation problem. We focus on what we feel is a sensible next step, the problem of automating aspects of control. To accomplish this we propose a definition of control based on a fact/heuristic dichotomy, a variation of Chomsky's competence/performance dichotomy. The dichotomy formalizes an idea originating with McCarthy and developed by Green, Hewitt, McDermott, Sussman, Hayes, Kowalski and others. It allows one to operate arbitrarily on the control component of a program without affecting the program's correctness, which is entirely the responsibility of the fact component. The immediate objectives of our research are to learn how to program keeping fact and control separate, and to identify those aspects of control amenable to automation.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
Chomsky, N. Some Aspects of the Theory of Syntax, MIT Press, Cambridge Mass. 1965.
 
3
Cook, S. A. Axiomatic and Interpretive Semantics for an Algol Fragment. TR-79, Toronto, Feb. 1975.
 
4
Floyd, R. W. Assigning Meanings to Programs. in Mathematical Aspects of Computer Science (ed. J. T. Schwartz), 19-32. 1967.
 
5
Green, C. Cordell. The Application of Theorem Proving to Question-Answering Systems. Stanford University Computer Science Department Report CS-138. 1969.
 
6
Hayes, Patrick J. "Computation and Deduction," Proc. Symp. Math. Found. of Comp. Sci., Czech Acad. of Sciences. 1973.
 
7
Hewitt, C. E. Description and Theoretical Analysis (Using Schemata) of PLANNER: A Language for Proving Theorems and Manipulating Models in a Robot, MIT AI Lab TR-258. 1972.
 
8
____, P. Bishop, and R. Steiger. "A Universal Modular ACTOR Formalism for Artificial Intelligence," Proc. IJCAI 3, p. 235. 1973.
9
 
10
Kowalski, R. Predicate Logic as Programming Language, University of Edinburgh Department of Computational Logic Memo 70. 1973.
11
 
12
McCarthy, J. Programs with Common Sense. In Semantic Information Processing (ed. Minsky, M. L.), MIT Press, Cambridge, Mass. 1968.
 
13
McDermott, D. and G. J. Sussman. The Conniver Reference Manual, MIT AI Lab Memo 259a. 1972.
 
14
____. Flexibility and Efficiency in a Computer Program for Designing Circuits. Ph.D. Thesis, MIT AI Lab. Sept. 1976.
15
 
16
 
17
Pratt, V. R. Effect of Basis on the Size of Boolean Expressions. Proc. 16th Ann. IEEE Symp. on Foundations of Comp. Sci., 119-121. 1975.
 
18
Pratt, V. R. Semantical Considerations on Floyd-Hoare Logic. Proc. 17th Ann. IEEE Symp. on Foundations of Comp. 109-121. 1976.
 
19
Schwartz, J. A view of Program Genesis and its Implications for Future Programming Languages. In New Directions in Algorithmic Languages (ed. Schuman, S. A.), IRIA. 1976.
 
20
Tarnlund, Sten-Ake. "An Interpreter for the Programming Language Predicate Logic," Proc. IJCAI 4, p. 601. 1975.
 
21
Turing, A. M. On computable numbers, with an application to the Entscheidungsproblem, Proc. London Math. Soc., ser. 2, 42, 230-265, 43, 544-546. 1936.
 
22
Woods, W. A. Augmented Transition Networks for Natural Language Analysis. Report No CS-1 to the NSF, Aiken Computation Laboratory, Harvard University, Cambridge, Massachussetts. 1969.