Tags

Jan 24, 2010

Principles of Programming Languages

Download Software Lab Manual
Software Lab program2





Download Foundations of Programming Languages

310249: PRINCIPLES OF PROGRAMMING LANGUAGES
Teaching Scheme Lectures: 4 Hrs/week
Examination Scheme
Theory: 100 Marks
Objectives:
• To understand the basic building blocks of programming languages.
• To learn and understand various programming paradigms.
Prerequisites:
• Data Structures and Algorithms
• Theory of Computation
Unit I (6 Hrs)
Introduction: Role of programming languages, need to study programming languages, characteristics of a good programming languages, Introduction to various programming paradigms: Procedural, object-oriented, logic and functional programming. Data Types: properties of structured and non-structured data types and Objects, variables, constants, Derived and abstract data types, declaration, type checking. Binding and binding times, type conversion, scalar data type, composite data types, Implementation and Storage representation of data types and control flow statement.

Unit II (6Hrs)
Procedures: Procedure call and return, recursive subprogram, Different parameter passing methods, Lifetime of variables, Scope rules: Static and Dynamic scope, Referencing environment: activation records (Local, Non local and Global), Storage management (static and Dynamic), Exceptions and exception handling

Unit III (8 Hrs)
Procedural Programming: Design Principles, Control flow: statement-oriented and block-oriented structure programming, Execution steps, desirable and undesirable characteristics of procedural programming.
Procedural Programming with Pascal: Program structure, Lexical elements, Data Types, Operators and punctuators, variable and type declarations, I/O, type conversion, control structures: conditional and iterative, arrays, procedures and functions, local and global variables, nested procedures and scope rules, pointers, parameter passing, User defined data types, comparative study of C and PASCAL

Unit IV (8 Hrs)
Object Oriented Programming: Design Principles: Objects, classes, Messages and methods, Implementation of Object-oriented Programming, Object oriented programming with Java: Program structure, Object and class declarations, constructors, inheritance, polymorphism, access specification, interfaces, packages, exception handling, Java I/O, Java applications and applets, introduction to Java threads and multithreads, Comparative study of C++ and Java.
Introduction to .NET Technology and C#: Brief introduction to Microsoft .NET - The Microsoft .NET platform, .NET framework, advantages, introduction to C#, type system, classes, method, Properties, Arrays, Interfaces, Delegates and event handlers, Assemblies and Modules, late binding, creating and executing code at Run Time

Unit V (6 Hrs)
Logic Programming: Logic programming language model, logical statements, resolution, unification, search structures: backward and forward, Applications of logic programming
Logic Programming with Prolog: Program structure, logical variable, syntax structure, Control structure, resolution and unification, depth-first search, backtracking, cut operator, recursive rules, Prolog facilities and deficiencies

Unit VI (8 Hrs)
Functional Programming: Introduction to functional programming, Lambda calculus:
Ambiguity, free and bound identifiers, reductions, typed lambda calculus, application of
functional programming
Functional Programming with LISP: Elements of functional Programming, Function
declaration, Expression evaluation, type checking
Introduction to Concurrent Programming
Text Books:
1) Roosta S., "Foundations of Programming Languages", Thomson Brookes/Cole, ISBN 981 -243-141-1
2) Sethi R., "Programming Languages concepts & constructs", 2nd Edition, Pearson Education, ISBN 81 - 7808 - 104 - 0
References Books:
1) Scbesta R., "Concepts Of Programming Languages", 4th Edition, Pearson Education, ISBN-81-7808-161-X
2) Ghezzi C, Milano P., Jazayeri M., "Programming Languages Concepts", 3rd Edition, John Wiley and Sons Pvt. Ltd (WSE), ISBN - 0195113063
3) Balagurusamy E., "Programing with C#", Tata McGraw-Hill, 2002, ISBN 0 - 07 -047339-0
4) Bhave M. Patekar S., "Programming in Turbo PASCAL", Tata-McGraw Hill, 0-07 -462100-9
5) Eckel B., "Thinking in Java", 3rd Edition, Pearson Education, 81 - 297 - 0524 - 9
6) Winston P., Klaus B., Horn P., "LISP", 3rd Edition, Pearson Education, 81 - 7808 -155-5

3 comments:

  1. hey buddy thanks for your help.But i cannot download the second part of software lab program.Pls make that link available

    ReplyDelete
    Replies
    1. Thanks for visiting my blog.
      I will update it.

      Delete