|title ||Structure of Programming Languages|
|arbic title |
|prequisites ||CS311, CS321 |
|credit hours ||3|
|Description/Outcomes ||A concise introduction to the essentials of imperative programming languages, focusing on principles rather than specifics, while giving examples from many programming languages. The course also covers fundamental issues in language design. Overview of programming paradigms and type systems. Models of execution control: Order of evaluation of sub-expressions conditional execution iteration exceptions and exception handling. Basic concepts of al programming are also emphasized.|
|arabic Description/Outcomes |
|objectives ||1. Be familiar with several language paradigms|
2. Understand how languages relate to different application domains
3. Understand the design space of programming languages, including concepts and constructs from past languages as well as those that may be used in the future.
4. Be able to develop a critical understanding of the programming language we use by being able to identify and compare the same concept as it appears in different languages.
|arabic objectives |
|ref. books ||Apply computer science theory and software development fundamentals to produce computing-based solutions.|
H. Bal, D. Grune, Programming Language Essentials, Addison-Wesley.
|arabic ref. books |
|textbook ||R. Sebesta, Concepts of Programming Languages, Addison- Wesley.|
|arabic textbook |
|objective set |
|content set |
|course file ||