The motivation behind teaching this course is to prepare you for
better programming and writing compilers, and to prepare you for
tomorrow since languages keep changing while the basic principle
and design philosophy does not alter. This course will provide basic understanding of general design issues and behavior of different class of programming languages. No specific programming language syntax will be discussed. Although, examples will use syntax of popular languages in a specific class of languages. In addition, the student will be taught latest concepts in multimedia languages such as synchronization issues, multimedia archival and retrieval issues, and multimedia formats.
Intermediate programming, Data structures, Symbolic programming, Knowledge of at least couple of programming languages
Introduction
and properties of a good programming language (75 minutes), control
flow diagrams (20 minutes), syntax and Backus Naur form (120 minutes),
introduction to semantics (45 minutes), parameter passing, side-effect,
aliasing (200 minutes)
Implementation of Heap Based Languages and Garbage Collection (135 minutes
lectures)
Types as sets (100 minutes), use of types
and abstract implementation (45 minutes), polymorphism (45 minutes)
Data dependency, concurrency, and synchronization (120 minutes),
deterministic and non-deterministic programming and languages (80 minutes).
Fundamentals of functional programming paradigm (90 minutes),
Fundamentals of logic programming paradigm (135 minutes),
Fundamentals of object oriented programming paradigm (45 minutes)
Implementation Models of object oriented languages <45 minutes>
Assignments: Last assignment will be a bonus assignment, and will be counted to promote border line students to a higher grade
For each assignment you will be given exactly one week. Departmental policy will be followed regarding copying. Two very similar text (to be decided by the instructor) will be treated as case of copying. However, group discussion to understand the problem is encouraged.
A student will loose 10% of grade for every working day of late submission. Without proper explanation, late assignment submission is discouraged.
Text Book and Reference Material
There will be three examinations: first midterm (20 %), second midterm (20 %), and third midterm (30%), and six assignments. First Five assignments will be counted. Last assignment will be a bonus assignment to help students who are at the border of two grades. each assignment will count for 6% of the grade. A student must attend 85% of the classes.
A > 85%, B > 75%, C > 65%, D > 50%