© 1988 by British Computer Society
| ||||||||||||||||||||||||||||||||||||||||||||||||||
An Advanced Problem-oriented Introduction to Imperative Programming with Modula-2
Department of Computer Science, University of Queensland, St Lucia, Queensland 4067, Australia
Traditional introductions to computer programming give undue prominence to the minutiae of imperative languages, rather than concentrating on constructs which better support desirable programming methodologies. It is proposed that the introductory computer science teaching can be improved by contemplating the solutions to a selection of basic information processing problems, in the course of the development of which the correct set of general and fundamental linguistic constructs will naturally emerge. Modula-2 is employed in the solution of a set of three such problems, in the course of which advanced concepts such as recursion, data abstraction and dynamic data structure implementation are treated thoroughly yet simply. Relatively complex and specialised concepts such as arrays are omitted. The general curriculum is adaptable to suit differing levels of prior relevant knowledge or complementary studies. Modula-2 proves to be a good choice as a vehicle for the presentation of this course, though there is a suggestion that a purely functional language would be a more fundamental choice.
Received January 1987. revised March 1987.
* Department of Computer Science, University of Queensland, St Lucia, Queensland 4067, Australia