Abstract
We review the introductory programming courses of the widely accepted Curricula ’68, ’78, ‘1991 and ‘2001. We note that a one-language, imperative-paradigm approach still prevails, although multi-language programming systems are already available. We discuss the Kernel Language Approach, which provides a programmer’s theory of programming that permits a widening of introductory courses to multi-language, multi-thread programming without loss of depth. We suggest two broad outlines for the removal of the one-language constriction from introductory programming courses. We observe that because of the introduction of dotNET and because of student exposure to net-centric multimedia applications, text-based “Hello World !” examples disappoint the expectations of today’s students.
The original version of this chapter was revised: The copyright line was incorrect. This has been corrected. The Erratum to this chapter is available at DOI: 10.1007/978-0-387-35619-8_15
Chapter PDF
Similar content being viewed by others
Key words
References
Meyer, B., “The Power of a Unifying View”, Software Development, June 2001.
ACM Curriculum Committee, “Curriculum 68”, CACM Vol. 11, #3, p. 151–197, (1968)
Sammet, J. E., “Programming Languages: History & Fundamentals”, Prentice Hall (1969)
ACM Curriculum Committee, “Curriculum’78”, CACM Vol. 22, #3, p. 147–167, (1979)
Knox, D., (Ed.), “Proceedings of the 33rd SIGCSE Technical Symposium on Computer Science Education, Feb. 27 — March 3, 2002, North Kentucky, ACM Press (2002)
Tucker, A. B., Ed., “Computing Curricula 1991”, http://www.acm.org/education/curr91/ homepage.html, IEEE Computer Society Press (1991)
Computing Curricula 2001, CS Volume 1, http://www.acm.org/sigcse/cc2001/
Van Roy, P., Haridi, S., “Teaching Programming Broadly and Deeply: the Kernel Language Approach”, (this volume), Kluwer Academic Publishers (2002)
Dijkstra, E. W., “A Discipline of Programming”, Prentice Hall ( 1976, 1997 )
Gries, D., “The Science of Programming”, Springer (1981)
van de Snepscheut, J. L. A., “What Computing is All About”, Springer (1993)
Mozart Consortium, http://www.mozart-oz.org
Van Roy, P., Haridi, S., http://www.info.ucl.ac.be/people.PVR/book.html
Wilson, L. B., Clark, R. G., “Comparative Programming Languages”, Add. Wes. (1988)
Reinfelds, J., “A Three Paradigm Course for CS Majors”, Proceedings, 26th ACM SIGCSE Technical Symposium on Computer Science Education, p. 223–227, (1995)
Reinfelds, J., “1996 Lecture Notes for CS 272 (new)”, 251 pages, Department of Computer Science, New Mexico State University ( 1996, 1997 ).
Guzdial, M., Soloway, E., “Teaching the Nintendo Generation to Program”, CACM Vol. 45, #4, p. 17–21, (2002).
Mc Cracken, M., et al., “A multinational, multi-institutional study of assessment of programming skills of first-year CS students”, ACM SIGCSE Bul. 33, 4, p. 125–140 (2001)
Meyer, B., “A multi-language example using Eiffel#, C# and ASP+ in dotNET”, http://www.dotnet.eiffel.com, (2002).
Meyer, B., “The Significance of dotNET”, IEEE Computer, August 2001.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2003 IFIP International Federation for Information Processing
About this chapter
Cite this chapter
Reinfelds, J. (2003). Teaching of Programming with a Programmer’s Theory of Programming. In: Cassel, L., Reis, R.A. (eds) Informatics Curricula and Teaching Methods. IFIP — The International Federation for Information Processing, vol 117. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-35619-8_5
Download citation
DOI: https://doi.org/10.1007/978-0-387-35619-8_5
Publisher Name: Springer, Boston, MA
Print ISBN: 978-1-4757-5469-8
Online ISBN: 978-0-387-35619-8
eBook Packages: Springer Book Archive