Abstract
The integration of formal methods into the undergraduate curriculum has been slow considering the benefits they offer. One reason for this is that the limited number of relevant textbooks, although excellent, are rather terse. As a result, we have developed various techniques for teaching formal programming in which each step is fully justified by appealing to a design rule or heuristic. Another technique we have developed is 'programming by rule' using generic templates to solve problems of similar structure---rather like differentiation by rule. Our experience to date has been encouraging. We outline some of these techniques and give examples of them in practice.
- 0 E. Cohen, Progran~oling in the 1990's, Spr.-Verlag, 1990.Google Scholar
- 1 E.W. Dijkstra, "On the Economy of Doing Mathematics"', in LNCS 669, Spr.-Verlag, 1993.Google Scholar
- 2 A. Fekete, "Reasoning about Programs", Proceedings of 24th ACM SIGCSE Conference, 198-202, 1993. Google Scholar
Digital Library
- 3 D. Gries, "Teaching Calculation and Discrimination: A More Effective Curriculum", CACM, 34 (3), 44--55, 1991. Google Scholar
Digital Library
- 4 D. Gries and F.B. Schneider, A Logical Approach to Discrete Math, Spr.-Verlag, 1993. Google Scholar
Digital Library
- 5 K. Ilely, Formal Programming: Step-by-Step Examples, Tech. Rep. (forthcoming---contact author), U.C.D., 1995.Google Scholar
- 6 A. Kaldewaij, Programming: The Derivation of Algorithms, Prentice-Hall Int., 1990. Google Scholar
Digital Library
- 7 C. Morgan, Programming from Specifications (2nd Ed.), Prentice-ilall int., 1994. Google Scholar
Digital Library
- 8 A.J.M. van Gasteren, On The Shape of Mathematical Argumet~ts, LNCS 445, Spr.-Verlag, 1990. Google Scholar
Digital Library
Index Terms
Teaching formal programming to first year computer science students
Recommendations
Teaching formal programming to first year computer science students
SIGCSE '96: Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science educationThe integration of formal methods into the undergraduate curriculum has been slow considering the benefits they offer. One reason for this is that the limited number of relevant textbooks, although excellent, are rather terse. As a result, we have ...
Preparing students for the first AP computer science principles exam: the perspective of CS teachers
This research presentation reports on a case study examining the teaching practices of seven high school computer science (CS) teachers from schools located across the Western New York (WNY) area. The interviews focused on the challenges and successes ...
Computer Science Teaching Knowledge: A Framework and Assessment (Abstract Only)
SIGCSE '17: Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science EducationEducators, researchers, politicians, tech companies, and others continue to advocate for the importance of K-12 students learning computer science in our increasingly tech-driven society. One way school districts in the United States address this ...






Comments