At the end of this unit, students will be able to...
Define what a programming language is and explain its purpose.
Differentiate between programming languages and natural languages.
Identify and describe the main components of a programming language: syntax, semantics, and pragmatics.
Explain the significance of programming languages in computer science and software development.
Recognize the diversity of programming languages and their applications.
Understand the historical evolution of programming languages and their impact on modern computing.
Articulate why you can’t achieve performance, generality, and productivity all at the same time (the “iron triangle” of programming languages).
Be able to create a simple program in the four programming languages covered in this course (Java, Ada, Clojure, Ruby).