This syllabus was submitted to the Rhodes College Office of Academic Affairs by the course instructor. Uploaded by Archives RSA Josephine Hill.
In this course, we will discuss the fundamental concepts that appear in one
form or another in almost every programming language. We will also get some sense of
how these concepts \ t together" to provide what programmers need in a language. We
will examine di erent languages to see how they can take complementary approaches to
representing these concepts. All of this is intended to make you a better software developer,
in any language.
Successful course participants will obtain an accurate understanding of what functional and
object-oriented programs mean, develop the skills necessary to learn new programming lan-
guages quickly, master speci c language concepts such that they can recognize them in strange
guises, learn to evaluate the power and elegance of programming languages and their con-
structs, attain reasonable pro ciency in a number of popular programming languages, and,
as a byproduct, become more pro cient in languages they already know.