An Algorithm for Translating Boolean Expressions
Journal of the ACM (JACM)
Optimization of expressions in Fortran
Communications of the ACM
A unified approach to global program optimization
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Analysis of a simple algorithm for global data flow problems
POPL '73 Proceedings of the 1st annual ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Node listings applied to data flow analysis
POPL '75 Proceedings of the 2nd ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A fast and usually linear algorithm for global flow analysis
POPL '75 Proceedings of the 2nd ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Automating introductory computer science courses
SIGCSE '73 Proceedings of the third SIGCSE technical symposium on Computer science education
Proceedings of a symposium on Compiler optimization
Global common subexpression elimination
Proceedings of a symposium on Compiler optimization
Expression optimization using unary complement operators
Proceedings of a symposium on Compiler optimization
A formal approach to code optimization
Proceedings of a symposium on Compiler optimization
An interactive analysis system for execution-time errors.
An interactive analysis system for execution-time errors.
Pattie: an automated tutor for top-down programming.
Pattie: an automated tutor for top-down programming.
An interactive compile-time diagnostic system.
An interactive compile-time diagnostic system.
A mathematical theory of global program optimization (Prentice-Hall series in automatic computation)
A mathematical theory of global program optimization (Prentice-Hall series in automatic computation)
Automatic Program Improvement: Variable Usage Transformations
ACM Transactions on Programming Languages and Systems (TOPLAS)
Hi-index | 0.00 |
This paper describes components of an Interactive Program Advising System (IPAS) for beginning programming students. The system, being unaware of the algorithm being implemented by the student, is unable to direct the student toward writing a correct program. It instead comments on the programming constructs the student has used in the specific implementing language—in this case FORTRAN. Beginning programming students often write poorly structured programs (especially in a non-block-structured language like FORTRAN) with constructs which, while legal, indicate that the student doesn't really understand the operation being performed. Data is currently being collected on “conceptual errors” commonly made by beginning students. This paper describes some of these “errors” and what comments can be presented to the student to help him understand and correct his own “errors.” A subsequent paper will present statistics on frequency of errors and plausible student logic which would produce the errors.