intro to programming lang and translator

Upload: prashant-kumar

Post on 03-Apr-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/29/2019 Intro to programming lang and translator

    1/15

    Welcome to the course

    CSE309

    Programming Language Translators

    Winter 2012-13

  • 7/29/2019 Intro to programming lang and translator

    2/15

    COURSE PLAN: WINTER 2012

    Programme : Brogramme : B .Tech., Branch: CSE Semester: VITech., Branch: CSE Semester: VICourse Codeourse Code : CSE309CSE309Course Titleourse Title : Programming Language TranslatorsProgramming Language TranslatorsL-T-P-C-T-P-C : 3 - 0 - 0 - 33 - 0 - 0 - 3Pre- requisite : Theory of Computation,

    Computer Architecture and Organization.Offering School : Computing Science and Engineeringffering School : Computing Science and EngineeringCourse Instructor : P SIVAKUMARourse Instructor : P SIVAKUMAR

  • 7/29/2019 Intro to programming lang and translator

    3/15

    COURSE PLAN: WINTER2012

    GOALS

    Objective of the Course: To provide foundation for study of high

    performance parallel compilers and

    compiler design implementation. To make students familiar with lexical analysis

    and parsing techniques.

    To understand the principles of code

    optimization techniques.

    To provide fundamental knowledge of various

    language translators.

    Expected Outcome:

  • 7/29/2019 Intro to programming lang and translator

    4/15

    COURSE PLAN: WINTER2012

    Contents

    Unit 1 : Introduction to Compilation and

    Lexical Analysis

    Unit 2 : Syntax Analysis

    Unit 3 : Semantics & Runtime

    Environments

  • 7/29/2019 Intro to programming lang and translator

    5/15

    COURSE PLAN: WINTER2012

    SYLLABUS

    Unit 1. INTRODUCTION TO COMPILATION AND LEXICAL ANALYSIS

    Introduction to programming language translators, classification of programming languages,overview of various programming language translators, Compiler Vs Interpreter, cross

    compiler, bootstrap arrangement, logical phases of compiler, pass Vs phase-cousins of

    compilers, Lexical Analysis phase: - Design issuespatterns, lexemes, Tokens-attributes-

    specification of tokens, Regular expressions-Overview of automata- Thompson construction

    NFA-DFA-minimized DFA-lexical errors- Lex

    Unit 2. SYNTAX ANALYSIS

    Role of parser- Formal definition of grammars; BNF and EBNF -Parse Tree- Ambiguity-

    Elimination of ambiguity- Top down parsing: Recursive-Descent parsing, Non- recursive

    predictive parsing; LL(1) grammars, Bottom-Up parsing:- Shift-Reduce parsers, Operating

    precedence parsing: design of operator precedence table, parsing LR parsers:- Construction

    of SLR parser tables and parsing , CLR parsing-LALR parsing- Syntax errors-YACC

    Unit 3. SEMANTICS & RUNTIME ENVIRONMENTS

    Syntax Directed Translations: Syntax-directed definitions, Translation Schemes, construction of

    syntax trees, DAGS- bottom-up evaluation of s-attributed definitions, l-attributed definitions;

    Run-time environments: Source language issues, storage organization, storage-allocation

    strategies, symbol tables: local and global symbol table structures and management. Type

    checking Systems: Data type as set of values with set of operations; data types; type checking

    models; semantic models of user-defined types; parametric polymorphism; subtype

  • 7/29/2019 Intro to programming lang and translator

    6/15

    Text / Reference:

    A. V. Aho et al, Compilers: Principles, techniques, & tools, SecondEdition, Pearson Education, 2007.

    K. D. Cooper and L. Torczon, Engineering a compiler, MorganKaufmann, 2004.

    Steven S.Muchnick Advanced Compiler design implementationElsevier Science India.

    D.M. Dhamdhere Systems programming and operating systems TataMcGraw-Hill Pub.

    TEE Question Pattern

    Max. Marks : 100 Time : Three Hours

    Part A - Answer all - 8 X 5= 40 Marks

    Part B - Answer any 6 from 8 - 6 X 10 = 60 Marks

    COURSE PLAN: WINTER2012

  • 7/29/2019 Intro to programming lang and translator

    7/15

    COURSE PLAN: WINTER2012

    Course Covering Lecture / Tutorial : ~ 40 hours. (3 hours / week)

    A significant portion of the material for this course will be

    presented only in lecture, so students are expected to regularlyattend lectures.

    Students are expected to take notes regularly during the class.

    Handouts will be made available in student login course page.

  • 7/29/2019 Intro to programming lang and translator

    8/15

    COURSE PLAN: WINTER2012

    Students Participation:

    Two hours per week private study is strongly recommended for a

    good comprehension of the materials covered in the lecture.

    Two hours per week to solve additional problems.

    In addition, students are encouraged to participate during lectures.

    Questions are encouraged throughout the lecture.

    Find the left-out answers to the questions raised during the lecture.

    Short self-marked tests to let students assess their progress.

    Teaching Evaluation Questionnaire to let the instructor to assess his own

    performance.

  • 7/29/2019 Intro to programming lang and translator

    9/15

    COURSE PLAN: WINTER2012

    Attendance

    As per VIT norms, students must maintain a minimum of 75 %

    attendance to appear for CAT I, CAT II and Term End Exams.

    Students are expected to be in the class room at the right time.

    Late comers will not be encouraged.

    Attendance will be marked at any time during the lecture hour. It is

    student's responsibility to answer his/her attendance when his/her

    name is called.

  • 7/29/2019 Intro to programming lang and translator

    10/15

    COURSE PLAN: WINTER2012

    EVALUATION PLAN :

    Continuous Assessment 30 %

    CAT I - 15 Marks

    CAT II - 15 Marks

    Internal Assesment 20 %

    Quiz I - 5 Marks

    Quiz II - 5 Marks

    Quiz III - 5 Marks

    Assignment - 5 Marks

    Term End exam 50%

  • 7/29/2019 Intro to programming lang and translator

    11/15

    COURSE PLAN: WINTER2012

    Assignment:

    Each student should submit his/her own assignment

    within the due date.

    Late submissions will also be accepted up to 5 days afterthe due date with a penalty of 10% per day.

  • 7/29/2019 Intro to programming lang and translator

    12/15

    COURSE PLAN: WINTER2012

    Course Meeting Hours:

    D1 slot D2 Slot

    Tuesday 10: 00 - 10: 50 AM 4:00 4:50 PM

    Thursday 8: 00 - 8: 50 AM 2:00 2:50 PM

    Friday 11: 00 - 11: 50 AM 5:00 5:50 PM

    Venue : SJT 404

  • 7/29/2019 Intro to programming lang and translator

    13/15

    Important Dates First Instructional Day: 02nd Jan 2013

    Quiz1 : 28th Jan 2013 to 01st Feb2013

    CAT1 : 16th - 24th Feb 2013

    Quiz2 : 11th - 15th Mar 2013

    CAT2 : 30th Mar - 07th Apr 2013

    Quiz 3 : 22nd

    - 26th

    Apr 2013 Last Instructional Day: 8th May 2013

    Term End Theory Exam : 9th - 27th May 2013

    COURSE PLAN: WINTER2012

  • 7/29/2019 Intro to programming lang and translator

    14/15

    COURSE PLAN: WINTER2012

    Contact Address:

    P SIVAKUMAR

    School of Computing Science and Engineering

    Office : SJT 411 - A10

    E-mail: [email protected]

    Phone extn. 2705

    Open Hours:

    Tuesday 11: 00 AM 12: 00 PM

    Thursday 3: 00 PM 4: 00 PM

  • 7/29/2019 Intro to programming lang and translator

    15/15

    Thank you