Introduction to Programming Languages
Subtitle
Programming in C, C++, Scheme, Prolog, C#, and Python
This text is intended for computer science and computer engineering students in their sophomore year of study. It is assumed that students have completed a basic computer science course and have learned at least one high-level programming language like C, C++, Python or Java.
This text is different from the existing texts on programming languages that either focus on teaching programming paradigms, principles, and the language mechanisms or focus on language constructs and programming skills. This text takes a balanced approach on both sides. It teaches four programming languages representing four major programming paradigms. Programming paradigms, principles and language mechanisms are used as the vehicle to facilitate learning of the four programming languages in a coherent way.
The goals of such a programming course are to make sure that computer science and engineering students are exposed to different programming paradigms and language mechanisms and obtain sufficient programming skills and experience in different programming languages, so that they can quickly use these or similar languages in other courses.
Bio
Yinong Chen is a principal lecturer in the School of Computing, Informatics, and Decision Systems Engineering in the Ira A. Fulton Schools of Engineering at Arizona State University. He received his doctorate from the Karlsruhe Institute of Technology, Germany, in 1993. He did postdoctoral research at Karlsruhe and at LAAS-CNRS in France in 1994 and 1995.