Abstract
Today I want to talk about the paradigms of programming, how they affect our success as designers of computer programs, how they should be taught, and how they should be embodied in our programming languages.
- 1 Aho, A.V., Hopcroft, J.E., and Ullman, J.D. The Design and Analysis of Computer Algorithms. Addison-Wesley, Reading, Mass. 1974.]] Google ScholarDigital Library
- 2 Aho, A.V., and Ullman, J.D. The Theory of Parsing, Translation, and Compiling, Vol. 1: Parsing. Prentice-Hall, Englewood Cliffs, New Jersey, 1972.]] Google ScholarDigital Library
- 3 Balzer, R. Imprecise program specification. Report ISI/RR-75- 36, Inform. Sciences Inst., Dec. 1975.]]Google Scholar
- 4 Conway, M.E. Design of a separable transition-diagram compiler. Comm. ACM 6, 7 (July 1963), 396-408.]] Google ScholarDigital Library
- 5 Davis, R. Interactive transfer of expertise: acquisition of new inference rules. Proc. Int. Joint Conf. on Artif. Intell., MIT, Cambridge, Mass., August 1977, pp. 321-328.]]Google Scholar
- 6 Dijkstra, E.W. Notes on structured programming. In Structured Programming, O.J. Dahl, E.W. Dijkstra, and C.A.R. Hoare, Academic Press, New York, 1972, pp. 1-82.]] Google Scholar
- 7 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. Res. Rep. 114, IRIA, Paris, April 1975.]]Google Scholar
- 8 Floyd, R.W. The syntax of programming languages--a survey. IEEE EC-13, 4 (Aug. 1964), 346-353.]]Google Scholar
- 9 Floyd, R.W. Nondeterministic algorithms. J.ACM 14, 4 (Oct. 1967), 636-644.]] Google ScholarDigital Library
- 10 Gelernter. Realization of a geometry-theorem proving machine. In Computers and Thought, E. Feigenbaum and J. Feldman, Eds., McGraw-Hill, New York, 1963, pp. 134--152.]] Google ScholarDigital Library
- 11 Green, C.C., and Barstow, D. On program synthesis knowledge. Artif. lntell. 10, 3 (June 1978), 241-279.]]Google Scholar
- 12 Hewitt, C. PLANNER: A language for proving theorems in robots. Proc. Int. Joint Conf. on Artif. Intell., Washington, D.C., 1969.]]Google Scholar
- 13 Hewitt, C. Description and theoretical analysis (using schemata) of PLANNER... AI TR-258, MIT, Cambridge, Mass., April 1972.]]Google Scholar
- 14 Hoare, C.A.R. Communicating sequential processes. Comm. ACM 21, 8 (Aug. 1978), 666-677.]] Google ScholarDigital Library
- 15 Jensen, K., and Wirth, N. Pascal User Manual and Report. Springer-Verlag, New York, 1978.]] Google ScholarDigital Library
- 16 Kuhn, T.S. The Structure of Scientific Revolutions. Univ. of Chicago Press, Chicago, Ill., 1970.]]Google Scholar
- 17 Lawler, E., and Wood, D. Branch and bound methods: A survey. Operations Res. 14, 4 (July-Aug. 1966), 699-719.]]Google Scholar
- 18 MACLISP Manual. MIT, Cambridge, Mass., July 1978.]]Google Scholar
- 19 Minsky, M. Form and content in computer science. Comm. A CM 17, 2 (April 1970), 197-215.]] Google ScholarDigital Library
- 20 Nilsson, N.J. Problem Solving Methods in Artificial Intelligence. McGraw-Hill, New York, 1971.]] Google ScholarDigital Library
- 21 Parnas, D. On the criteria for decomposing systems into modules. Comm. ACM 15, 12 (Dec. 1972), 1053-1058.]] Google ScholarDigital Library
- 22 Rich, C., and Shrobe, H. Initial report on a LISP programmer's apprentice. IEEE J. Software Eng. SE-4, 6 (Nov. 1978), 456--467.]]Google ScholarDigital Library
- 23 Rulifson, J.F., Derkson, J.A., and Waldinger, R.J. QA4: A procedural calculus for intuitive reasoning. Tech. Note 73, Stanford Res. Inst., Menlo Park, Calif., Nov. 1972.]]Google Scholar
- 24 Shortliffe, E.H. Computer-based Medical Consultations: MYCIN. American Elsevier, New York, 1976.]]Google Scholar
- 25 Sussman, G.J., Winograd, T., and Charniak, C. MICRO- PLANNER reference manual. AI Memo 203A, MIT, Cambridge, Mass., 1972.]]Google Scholar
- 26 Teitelman, W., et al. INTERLISP manual. Xerox Palo Alto Res, Ctr., 1974.]]Google Scholar
- 27 Wirth, N. Program development by stepwise refinement. Comm. ACM 14, (April 1971), 221-227.]] Google ScholarDigital Library
- 28 Wirth, N. The programming language Pascal. Acta lnformatica 1, 1 (1971), 35-63.]]Google Scholar
- 29 Wirth, N. Systematic Programming, an Introduction. Prentice- Hall, Englewood Cliffs, New Jersey, 1973.]] Google ScholarDigital Library
Index Terms
-
The paradigms of programming
-
Recommendations
-
Teaching Programming Paradigms Using CLIPS
Papers of the 29th Annual CCSC Midwestern ConferenceCLIPS is an expert system shell, originally developed at NASA. In universities, it is often used in courses in Artificial Intelligence and Expert Systems and projects for building expert systems. I believe it can be used effectively in courses in ...
-
The role of language paradigms in teaching programming
SIGCSE '03: Proceedings of the 34th SIGCSE technical symposium on Computer science educationThe purpose of this panel is to confront the wide variety of opinions on the role of language paradigms in teaching programming. We have selected four divergent opinions:
- Armstrong says that concurrent programming is considered difficult because it is ...
-
The role of language paradigms in teaching programming
The purpose of this panel is to confront the wide variety of opinions on the role of language paradigms in teaching programming. We have selected four divergent opinions:
- Armstrong says that concurrent programming is considered difficult because it is ...
Comments