File(s) stored somewhere else
Please note: Linked content is NOT stored on Carnegie Mellon University and we can't guarantee its availability, quality, security or accept any liability.
A fundamental computer science course that unifies theory and practice
If computer programming is to become an "engineering discipline," computer science students must acquire the tools for rigorous analysis and evaluation of programs. An early course in the undergraduate curriculum must introduce the fundamental principles of the discipline, just as freshman calculus teaches the basic analysis skills for most engineering disciplines. The course described in this paper teaches mathematical principles and practical programming applications in a unified form. It has been successfully taught to sophomores for four years.