KALASALINGAM UNIVERSITY ANAND NAGAR, KRISHNAN KOIL DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING ODD SEMESTER COURSE PLAN

Similar documents
SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN

G.PULLAIH COLLEGE OF ENGINEERING & TECHNOLOGY

Evaluation Scheme L T P Total Credit Theory Mid Sem Exam

Name of chapter & details

GUJARAT TECHNOLOGICAL UNIVERSITY

DEPARTMENT OF INFORMATION TECHNOLOGY AUTOMATA AND COMPILER DESIGN. B.Tech-IT, III Year -I Sem

About the Authors... iii Introduction... xvii. Chapter 1: System Software... 1

LECTURE NOTES ON COMPILER DESIGN P a g e 2

CST-402(T): Language Processors

Compiler Design Overview. Compiler Design 1

2068 (I) Attempt all questions.

SYED AMMAL ENGINEERING COLLEGE (An ISO 9001:2008 Certified Institution) Dr. E.M. Abdullah Campus, Ramanathapuram

Principles of Programming Languages [PLP-2015] Detailed Syllabus

INSTITUTE OF AERONAUTICAL ENGINEERING (AUTONOMOUS)

Philadelphia University Faculty of Information Technology Department of Computer Science --- Semester, 2007/2008. Course Syllabus

Compilers for Modern Architectures Course Syllabus, Spring 2015

HOLY ANGEL UNIVERSITY COLLEGE OF INFORMATION AND COMMUNICATIONS TECHNOLOGY COMPILER THEORY COURSE SYLLABUS

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division

Gujarat Technological University Sankalchand Patel College of Engineering, Visnagar B.E. Semester VII (CE) July-Nov Compiler Design (170701)

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Subject Name: CS2352 Principles of Compiler Design Year/Sem : III/VI

CS131: Programming Languages and Compilers. Spring 2017

GUJARAT TECHNOLOGICAL UNIVERSITY

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR / EVEN SEMESTER

VALLIAMMAI ENGINEERING COLLEGE

Compilers. Computer Science 431

Compiler Construction Principles And Practice Solution Manual

Introduction to Compiler Construction

CS Compiler Construction West Virginia fall semester 2014 August 18, 2014 syllabus 1.0

CS 406/534 Compiler Construction Putting It All Together

Introduction to Compiler Construction

MANIPAL INSTITUTE OF TECHNOLOGY (Constituent Institute of MANIPAL University) MANIPAL

Compiler Design Aug 1996

Translator Design CRN Course Administration CMSC 4173 Spring 2017

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Question Bank. 10CS63:Compiler Design

Working of the Compilers

List of Figures. About the Authors. Acknowledgments

CSCI 565 Compiler Design and Implementation Spring 2014

Translator Design CRN Course Administration CMSC 4173 Spring 2018

Formal Languages and Compilers Lecture I: Introduction to Compilers

Theory: 4 Hrs/Week Max. University Theory Examination: 60 Marks Max. Time for Theory Exam.: 3 Hrs. Continuous Internal Assessment: 40 Marks

Torben./Egidius Mogensen. Introduction. to Compiler Design. ^ Springer

SYLLABUS UNIT - I UNIT - II UNIT - III UNIT - IV CHAPTER - 1 : INTRODUCTION CHAPTER - 4 : SYNTAX AX-DIRECTED TRANSLATION TION CHAPTER - 7 : STORA

Roll No. :... Invigilator's Signature :. CS/B.Tech(CSE)/SEM-7/CS-701/ LANGUAGE PROCESSOR. Time Allotted : 3 Hours Full Marks : 70

1. (a) What are the closure properties of Regular sets? Explain. (b) Briefly explain the logical phases of a compiler model. [8+8]

Compiler Design (40-414)

QUESTIONS RELATED TO UNIT I, II And III

DEPARTMENT OF INFORMATION TECHNOLOGY / COMPUTER SCIENCE AND ENGINEERING UNIT -1-INTRODUCTION TO COMPILERS 2 MARK QUESTIONS

1. Explain the input buffer scheme for scanning the source program. How the use of sentinels can improve its performance? Describe in detail.

CS 2210 Sample Midterm. 1. Determine if each of the following claims is true (T) or false (F).

Parsing Algorithms. Parsing: continued. Top Down Parsing. Predictive Parser. David Notkin Autumn 2008

CJT^jL rafting Cm ompiler

COLLEGE OF ENGINEERING, NASHIK. LANGUAGE TRANSLATOR

12048 Compilers II. Computer Science Engineering, 8º semester Mandatory, 2º Cycle. Theoretical credits: 3.0 Lab credits: 1.5. Theory: José Neira

ECE573 Introduction to Compilers & Translators

INSTITUTE OF AERONAUTICAL ENGINEERING

CMPE 152 Compiler Design

Formal Languages and Compilers Lecture VII Part 3: Syntactic A

Automatic Scanning and Parsing using LEX and YACC

VALLIAMMAI ENGINEERING COLLEGE

KALASALINGAM UNIVERSITY (Kalasalingam Academy of Research and Education) KRISNANKOIL Academic Year [Odd Semester]

CSE4305: Compilers for Algorithmic Languages CSE5317: Design and Construction of Compilers

Introduction to Syntax Analysis. Compiler Design Syntax Analysis s.l. dr. ing. Ciprian-Bogdan Chirila

Principles of Compiler Construction ( )

PSD3A Principles of Compiler Design Unit : I-V. PSD3A- Principles of Compiler Design

UNIVERSITY OF CALIFORNIA

CSE3322 Programming Languages and Implementation

Chapter 2 - Programming Language Syntax. September 20, 2017

Marks Paper I OOAD and UML Paper II Advanced Java Programming I

Lexical Scanning COMP360

Compiler Construction Using

CS606- compiler instruction Solved MCQS From Midterm Papers

Compiling Regular Expressions COMP360

RYERSON POLYTECHNIC UNIVERSITY DEPARTMENT OF MATH, PHYSICS, AND COMPUTER SCIENCE CPS 710 FINAL EXAM FALL 96 INSTRUCTIONS

COMPILER DESIGN LEXICAL ANALYSIS, PARSING

Downloaded from Page 1. LR Parsing

CSE302: Compiler Design

CS426 Compiler Construction Fall 2006

SCHEME OF INSTRUCTION AND EVALUATION II SEMESTER OF III YEAR OF 4-YEAR B.TECH. DEGREE PROGRAMME COMPUTER SCIENCE AND ENGINEERING

CMPE 152 Compiler Design

CMPE 152 Compiler Design

Department of Computer Science and Engineering Khulna University of Engineering & Technology Khulna , Bangladesh. Course Plan/Profile

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY

Parsing. Handle, viable prefix, items, closures, goto s LR(k): SLR(1), LR(1), LALR(1)

Outline. Lecture 17: Putting it all together. Example (input program) How to make the computer understand? Example (Output assembly code) Fall 2002

General Course Information. Catalogue Description. Objectives

CS/SE 153 Concepts of Compiler Design

Fall Compiler Principles Lecture 2: LL parsing. Roman Manevich Ben-Gurion University of the Negev

Compiler Code Generation COMP360

Compiler Construction

UNIT III & IV. Bottom up parsing

LR Parsing - The Items

MidTerm Papers Solved MCQS with Reference (1 to 22 lectures)

EDAN65: Compilers, Lecture 06 A LR parsing. Görel Hedin Revised:

VIVA QUESTIONS WITH ANSWERS

Context-free grammars


Transcription:

Subject with Code KALASALINGAM UNIVERSITY ANAND NAGAR, KRISHNAN KOIL 626 126 DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING ODD SEMESTER 2013-2014 Semester/Branch/Section Credits : 3 COURSE PLAN : Compiler Design / CSE304 : V / CSE / A, B Prerequisites Familiarity with programming languages Basic knowledge in Theory of Computation (CSE204) and Data Structures and Algorithms (CSE202). Course Goal Provide the foundation for understanding the theory and pracitce of compilers. Learn programming language translation and compiler design concepts; language recognition, symbol table management, semantic analysis and code generation. Course Objectives To understand the theory and practice of compiler implementation. To learn finite state machines and lexical scanning. To learn context free grammars, compiler parsing techniques, construction of abstract syntax trees, symbol tables, intermediate machine representations and actual code generation Learning Outcomes Implementing a small compiler using modern compiler writing tools. Providing the student with skills and knowledge (such as lexical analysis and parsing) which are applicable to a broad range of computer science application areas (such as text editors, information retrieval, etc...).

S. No Name of the Book Author / Publisher(s) / Year Companion Websites TEXTBOOK 1 Compilers principles, techniques and tools Alfred Aho, Ravi Sethi, V.Jeffery Ullman D/ Pearson Education/ 2006 http://dragonbook.stanford.edu/ 2 Compiler Design in C Allen Holub l/ Prentice Hall of India/ 2003. www.holub.com/software/compiler.design. in.c.docs.pdf REFERENCE BOOK(S) 3 4 5 6 Crafting a compiler with C Introduction to Compiler Techniques Practice and Principles of Compiler Building with C Compiler Construction: Principles and Practice Charles N.Fischer Richard J.Leblanc/Benjamin Cummings/ 2003. J.P. Bennet /Tata McGraw- Hill/ 2003. Henk Alblas and Albert Nymeyer/ PHI/2001. Kenneth C. Louden/ Thompson Learning/ 2003. http://163.21.82.150/compiler/ http://www.macs.hw.ac.uk/~gabbay/teachi ng/2007-f23pf2/index.html ------- http://www.aue.auc.dk/~akbar/2007/compl ierconst07.html Web links for similar courses offered at other universities S.No Course Title Name of the 1 Introduction to Compiler Design of Pittsburgh Web site http://www.cs.pitt.edu/undergrad/courses/cs1622.php 2 Compiler Design Kent State 3 Introduction to Cornell Compilers http://www.personal.kent.edu/%7ermuhamma/compil ers/compiler.html http://www.cs.cornell.edu/courses/cs412/2002sp/sched ule.html 4 Compiler Design and Construction I Write State http://www.cs.wright.edu/people/faculty/tkprasad/cours es/cs780/cs780.html 5 Topics in Compiler Rice http://www.owlnet.rice.edu/%7ecomp412/ Construction 6 Compilers Rutgers http://www.cs.rutgers.edu/%7eryder/415/lectures/ 7 Compilers Stanford http://www.stanford.edu/class/cs143/ 8 Compilers of Texas http://www.cs.utexas.edu/users/novak/cs375contents.html

Web Resources S.No Topic Name Website 1 Compiler Construction Tools http://www.linuxgazette.com/issue39/sevenich.html 2 Derivation and Parse tree http://www.softpanorama.org/algorithms/compilers.shtml 3 Parse tree, Lex, Yacc www.flint.cs.yale.edu 4 Context free grammar http://www.cs.nmsu.edu/~jeffery/courses/unlv/478/lecture.ht ml 5 LL(1) http://ag-kastens.uni-paderborn.de /lehre /material /compi /aufgaben/blatt3/blatt3.html 6 SLR,LALR,First and Follow www.pdclab.cs.ucdavis.edu 7 Parsing,LALR,LR(0),LR(1) http://www.cs.umd.edu/class/spr98/c msc430/slides 8 LR(0),LR(1),SLR,YACC,LEX www.cs.gmu.edu 9 Semantics, Grammar www.csee.umbc.edu 10 Predictive Parsing www.ambda.uta.edu 11 Recursive descent www.userpages.umbc.edu 12 Predictive parser www.cs.waikato.ac.nz 13 LR Parser www.cwi.nl/~jurgenv/publications/slides/cc2002.ppt 14 LR parser - LR(0) www.wikipedia.org 15 SLR www.idt.mdh.se/kurser/cd5110/ht01/t1_02 s.html 16 Intermediate Languages www.hardcoreprocessing.com/articles/presentations/ tiliaoc /TheDocument.html 17 Flow Control Stmts www.met.ed.ac.uk/~hcp/wrk/idlcourse/notes/node16.html 18 Symbol Table www.isr.uci.edu/projects/archstudio/symboltable.html 19 Procedure Calls www.sei.cmu.edu/str/descriptions/rpc.html 20 Syntax Directed translation www.dcs.warwick.ac.uk 21 Syntax Directed translation websrv.cs.fsu.edu 22 Code Optimization www.uni-koeln.de 23 Code Generation cs.wwc.edu

Lesson Plan S.No Topic Name Reference Book No. of Periods Cumulative No. of Periods UNIT I INTRODUCTION TO COMPILER 1. Introduction to compiler-the structure of compiler T1(4-12) 2 2 2. Lexical analysis-the Role of Lexical analyzer T1(109-114) 1 3 3. Input Buffering T1(115-116) 1 4 4. Specification of tokens T1(116-128) 2 6 5. Recognition of tokens T1(128-140) 2 8 6. Lexical analyzer generator T1(140-146) 1 9 UNIT II : LEXICAL ANALYSIS 7. Finite Automata T1(147-152) 1 10 8. Regular expressions to an NFA T1(152-166) 2 12 9. Optimization of DFA T1(173-187) 2 14 10. The Role of parser T1(192-196) 1 15 11. Context free grammars T1(197-208) 1 16 12. Writing a Grammar T1(209-216) 1 17 13. Top Down parsing -Recursive Descent T1(217 220) Parsing 1 18 14. Predictive parsing T1(226-228) 1 19 15. Bottom up parsing-shift reduce parsing T1(233-238) 1 20 16. Operator Precedence parsing Course material 1 21 UNIT III SYNTAX ANALYSIS 17. Introduction to LR parsing & SLR parser T1(241-256) 2 23 18. Canonical LR parser and LALR parser generator T1(259-275) 2 25 19. Intermediate languages T1(363-369) 1 26 20. Declarations,control flow and Boolean T1(373) expressions T1(399-408) 2 28 21. Switch statements T1(418-420) 1 29 22. Back patching T1(410-416) 1 30 UNIT IV CODE GENERATION 23. Issues in the design of code generator T1(506-511) 1 31 24. The target Language T1(512-515) 1 32 25. Addresses in target code T1(518-522) 1 33 26. Basic Blocks and Flow Graphs T1(525-531) 1 34 27. A simple Code generator T1(542-547) 1 35 28. DAG representation of Basic Blocks T1(533 540) 1 36

UNIT V CODE OPTIMIZATION AND RUN TIME ENVIRONMENTS 29. Introduction Principal Sources of Optimization T1(584 596) 2 38 30. Peephole optimization T1(549-552) 1 39 31. Optimization of basic Blocks T1(533 540) 1 40 32. Loops in Flow Graphs T1(655-667) 2 42 33. Run time environments-storage T1(427-429) organization 1 43 34 Stack allocation of space T1(430-438) 2 45 35. Access to non local data on the stack T1(441-449) 2 47 Sessional Exam Portions S. No Exam Topic No 1 Sessional I 1-23 2 Sessional - II 24-33 3 End Exam 1-39 Related Magazine: o Software o IT Professional o IEEE Links to research journals and conference proceedings ACM Transactions on Programming Languages and Systems http://www.cs.wustl.edu/~toplas/ ACM SIGPLAN sponsored conferences http://www.acm.org/sigplan/#conferences Upcoming Compiler and Parallel Computing Conferences http://www.cs.rice.edu/~roth/conferences.html Prepared By Verified By Class Teacher HOD/CSE