CO523: Programming Languages
Course Number : CO523 | ||||
---|---|---|---|---|
Course Title : Programming Languages | ||||
Credits : 3 | ||||
Prerequisites : CO214 Data Structures & Algorithms | ||||
No | Course Content | Time Allocated (hours) | ||
  |   |   | L&T | P&A |
01 | Introduction: Design of Languages, Imperative and Declarative paradigms, Syntax and semantics, Data and procedural abstraction, Static and dynamic typing, Modularity, Programming tools |
7 |
|
|
02 | Imperative Languages: Assignment operator, Sequential control structure, Imperative programming |
2 | 3 |
|
03 | Object Oriented Languages: Classes, Inheritance, Polymorphism, Dynamic dispatch, object oriented programming |
3 | 6 | |
04 | Functional Languages: Higher order functions, Referential transparency, Lambda Calculus, Strict and lazy evaluation, Functional Programming |
5 | 9 | |
05 | Logical Languages: Facts and rules, Inference, logical programming |
5 | 9 | |
06 | Concurrent Languages: Processes, Nondeterminism, Concurrent control structure, Inter-process communication, Concurrent programming |
5 | 9 | |
Total |
27 | 36 | ||
Assessment | Percentage Marks | |||
Continuous Assessment | 40 |   | ||
         Class participation (particularly tutorials) |   | 5 | ||
         Tutorials | 10 | |||
         Practical/Assignments | 15 | |||
         Project | 10 | |||
Written Examinations | 60 |   | ||
         Mid-Semester |   | 20 | ||
         End of Semester |   | 40 |