Programming Languages
Why are there so many programming languages and how do they differ? What is an appropriate programming paradigm to solve a particular task? In this course, we will learn about common programming paradigms, such as object-oriented programming, functional programming, and logic programming, while using different languages that demonstrate these paradigms. We will also discuss core programming languages concepts such as syntax and semantics, typing, compiling vs. interpreting, and context-free grammars.