Logic in first courses for computer science majors
Juris Reinfelds · 1995
This paper describes the curriculum design of a two-semester introductory course for computer science majors. In each semester the course starts with logic and logic programming. The middle third of the semester continues with functional programming. The last third of the semester is dedicated to imperative programming. In such a presentation sequence reasoning leads to specifications which in turn lead to implementations. The concerns for ‘WHAT?’ are separated from concerns for ‘HOW?’. The advantages and disadvantages of the inclusion of all three major programming paradigms are discussed. These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.