A program to teach programming
Communications of the ACM
Program development by stepwise refinement
Communications of the ACM
Automating introductory computer science courses
SIGCSE '73 Proceedings of the third SIGCSE technical symposium on Computer science education
What should we teach in an introductory programming course?
SIGCSE '74 Proceedings of the fourth SIGCSE technical symposium on Computer science education
Interactive directed programming in computer-assisted instruction (cai).
Interactive directed programming in computer-assisted instruction (cai).
A survey of the literature in computer science education since curriculum '68
Communications of the ACM
An instructional interpreter for basic
SIGCSE '76 Proceedings of the ACM SIGCSE-SIGCUE technical symposium on Computer science and education
Hi-index | 0.02 |
This paper discusses an automatic tutor of programming, implemented on the PLATO IV CAI system [1] as a part of an automated instructional system for computer science being developed at the University of Illinois [8]. This tutor exposes the introductory student to structured programming concepts and top-down problem solution techniques by means of example. The student develops (on-line, using an approach based on stepwise refinement [11]) a solution to a single, relatively complex programming problem (symbolic differentiation of a polynomial). Student and tutor engage in an interactive dialogue during this problem-solving process, the tutor providing hints regarding solution steps, and comments about program structure and efficiency. A small sample of the types of responses the tutor might make is presented