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

Similar documents
Evaluation Scheme L T P Total Credit Theory Mid Sem Exam

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

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

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

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

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

G.PULLAIH COLLEGE OF ENGINEERING & TECHNOLOGY

Govt. of Karnataka, Department of Technical Education Diploma in Computer Science & Engineering. Fifth Semester. Subject: Web Programming

(a) R=01[((10)*+111)*+0]*1 (b) ((01+10)*00)*. [8+8] 4. (a) Find the left most and right most derivations for the word abba in the grammar

GUJARAT TECHNOLOGICAL UNIVERSITY

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

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

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

Semester: I Credits: 5. Category: MC No.of hrs/week: 5 CA PROGRAMMING IN C

Name of chapter & details

CST-402(T): Language Processors

Compilers for Modern Architectures Course Syllabus, Spring 2015

LECTURE NOTES ON COMPILER DESIGN P a g e 2

Translator Design CRN Course Administration CMSC 4173 Spring 2017

GUJARAT TECHNOLOGICAL UNIVERSITY

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

Translator Design CRN Course Administration CMSC 4173 Spring 2018

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

Principles of Programming Languages [PLP-2015] Detailed Syllabus

Programme: MCA Applications Course Code: PCA401 Year : Second Year Semester - IV Course: Distributed Operating. L T P C System

hrs. Designing Fundamentals 2 Paper-II: Data base hrs. management Systems Semester IV 3 Paper-I: Web

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

Skyup's Media. PART-B 2) Construct a Mealy machine which is equivalent to the Moore machine given in table.

Advanced Web Programming (17MCA42)

TUTORIAL QUESTION BANK

Question Bank. 10CS63:Compiler Design

Formal Languages and Compilers Lecture I: Introduction to Compilers

AIM. 10 September

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

1 PCA151C Data Structures Using C PCA152C Operating Systems PCA153C Introduction to Web Technologies

Finite Automata Theory and Formal Languages TMV027/DIT321 LP4 2016

SECOND YEAR III Paper I Applied Mathematics Paper II Microprocessors & Assembly Language Programming

CS606- compiler instruction Solved MCQS From Midterm Papers

Proposed Syllabus for F.Y.B.Sc. (Information Technology) (w.e.f. June-2015)

Theory of Programming Languages COMP360

2068 (I) Attempt all questions.

SCHEME OF INSTRUCTION & EXAMINATION B.E. III YEAR (COMPUTER SCIENCE & ENGINEERING) With effect from the Academic year

Books : 4 th SEMESTER MCA F.M -70. Programming With Java(3-1-0)Cr.-4. Module-1

Programming the World Wide Web by Robert W. Sebesta

CSCI 565 Compiler Design and Implementation Spring 2014

CMPE 152 Compiler Design

TECNIA INSTITUTE OF ADVANCED STUDIES

R10 SET a) Construct a DFA that accepts an identifier of a C programming language. b) Differentiate between NFA and DFA?

List of Figures. About the Authors. Acknowledgments

ONE-STACK AUTOMATA AS ACCEPTORS OF CONTEXT-FREE LANGUAGES *

Compiler Design Overview. Compiler Design 1

CS/SE 153 Concepts of Compiler Design

Shankersinh Vaghela Bapu Institue of Technology

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

CS5363 Final Review. cs5363 1

Theory and Compiling COMP360

GRAPHIC WEB DESIGNER PROGRAM

Formal languages and computation models

CMPE 152 Compiler Design

CA Compiler Construction

CMPE 152 Compiler Design

Introduction to Compiler Construction

Lecture : 3. Practical : 2. Course Credit. Tutorial : 0. Total : 5. Course Learning Outcomes

Lexical Scanning COMP360

JNTUWORLD. Code No: R

CS 44 Exam #2 February 14, 2001

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Compiler Design

Compiler Construction Principles And Practice Solution Manual

COMP9321 Web Application Engineering

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

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

Introduction to the Theory of Computation, Sipser, PWS, ISBN X, 1996

Introduction to Compiler Construction

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

CSE 504: Compiler Design

CSCI312 Principles of Programming Languages!

R10 SET a) Explain the Architecture of 8085 Microprocessor? b) Explain instruction set Architecture Design?

CIS 1.5 Course Objectives. a. Understand the concept of a program (i.e., a computer following a series of instructions)

Compiler Construction Using

ITT Technical Institute. IT217P Programming in C++ II Onsite Course SYLLABUS

XML. Objectives. Duration. Audience. Pre-Requisites

Working of the Compilers

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics

M. PHIL. COMPUTER SCIENCE (FT / PT) PROGRAMME (For the candidates to be admitted from the academic year onwards)

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

BCS Higher Education Qualifications. Level 6 Web Engineering Syllabus

CS131: Programming Languages and Compilers. Spring 2017

Languages and Automata

Summary of Courses DETAILED SYLLABUS

Specifying Syntax COMP360

INTRODUCTION PRINCIPLES OF PROGRAMMING LANGUAGES. Norbert Zeh Winter Dalhousie University 1/10

Midterm I (Solutions) CS164, Spring 2002

Ministry of Higher Education and Scientific Research

Outline. Language Hierarchy

Compilers. Computer Science 431

SCHEME OF STUDIES & EXAMINATIONS Department: Bachelor of Computer Applications 4 th Semester. L T P Theory practical

CHEME OF EXAMINATION FOR B.Sc. (COMPUTER SCIENCE) SEMESTER SYSTEM (Regular Course) w.e.f Scheme for B.Sc.-III.

UNIT -2 LEXICAL ANALYSIS

Compiler Design (40-414)

Lexical Analysis - 2

Transcription:

School: Computer Science & Application Year : Second Year Course: Compiler Design Programme: M.C.A. Semester - IV Course Code: CSA0100P402 Theory: 4 Hrs/Week Max. University Theory Examination: 60 Marks Max. Time for Theory Exam.: 3 Hrs. Continuous Internal Assessment: 40 Marks Objectives 1 To introduce the major concept areas of language translation and compiler design 2 To enrich the knowledge in various phases of compiler. 3 To understand role of lexical analyzer and grammars for a programming language 4 To know the importance of code optimization. Unit Number 1 2 3 4 Details Introduction to Compiling and Lexical Analysis: Introduction to Compiler, Single and Multi-Pass Compilers, Translators, Phases of Compilers, Compiler writing tools. Definition, analysis of the source program, the phases of a compiler, the grouping of phases, Compiler- Construction tools, The role of the Lexical analyzer, Input buffering, Specification of Tokens, A Language for Specifying Lexical Analyzers, Design of a Lexical Analyzer generator. Syntax Analysis and Parsing: The role of the Parser, Context-free grammars, Writing a Grammar, Top-Down Parsing, Bottom Up Parsing, Operator-precedence Parsing, LR-Parsers, Using Ambiguous Grammars, Parser Generators. Syntax-Directed Translation: Definitions, Synthesized and inherited attributes, Construction of Syntax Trees, bottom up and top down evaluation of attributes, S-attributed and L-attributed definitions Top- Down Translation, Bottom-Up Evaluation of Inherited attributes. Intermediate Code: Generation Intermediate Languages, Declarations, Assignment Statements, Case Statements, Back patching, Boolean Expressions and Procedure Calls. Hours 12 7

5 Code Optimization and Code Generation: Principal sources of Optimization, Optimization of basic blocks, Peephole Optimization. Issues in the Design of a Code Generator, The target Machine, Basic Blocks and Flow Graphs, Simple Code Generator, Register allocation and Assignment, The DAG Representation of Basic Blocks, Generating Code from DAGs, Code-Generators. Symbol tables: use and need of symbol tables 10 Total 45 Resources Recommended Books Reference Books Web References 1. Aho, Sethi, Ullman, Compilers-tools and Techniques, Addison Wesley, 197 2. Alfred V.Aho and J. D. Ullman, Principles of Compiler Design, Narosa Publication. 3. Trembly, Sorenson, Theory and Practice of Compiler Writing, McGraw Hill, 194. 4. Hopcroft, Introduction to Automata Theory, Languages and Computation, Pearson Publication 1. Paul G. Sorenson, Compiler Writing, Tata McGraw Hill. 2. Hunter, The Essence of Compilers, Pearson Publication. 3. Lewis, Elements of the Theory of Computation, Pearson Publication 1. https://www.tutorialspoint.com/compiler_design/index.htm 2. http://csenote.weebly.com/principles-of-compiler-design.html S

School: Computer Science and Application Programme: M.C.A. Year: Second Year Semester - IV Course : Lab Course based on Compiler Course Code:CSA0100P406 Design Practical: PG - 4Hrs./Batch (20 Students) Practical Examination: 25 Marks Term Work: 25 Marks Objectives 1 To provide an understanding the basic techniques of compiler construction 2 To provide deeper insights into the more advanced semantics aspects of programming languages, optimizations, dynamic memory allocation, and object orientation. 3 Acquire knowledge about the basic concept of writing a program to perform syntaxdirected translation of a high-level programming language into an executable code. 4 To understand and design code generation schemes Sr. No. Group A: (Any SIX Assignments) Description Design a lexical analyzer for given language and the lexical analyzer should ignore redundant spaces, tabs and new lines. It should also ignore comments. Although the 1 syntax specification states that identifiers can be arbitrarily long, you may restrict the length to some reasonable value. Simulate the same in C language. 2 Write a C program to identify whether a given line is a comment or not. 3 Write a C program to recognize strings under 'a', 'a*b+', 'abb'. 4 Write a C program to test whether a given identifier is valid or not. 5 Write a C program to simulate lexical analyzer for validating operators Implement the lexical analyzer using JLex, flex or other lexical analyzer generating 6 tools a)write a C program for constructing of LL (1) parsing. 7 b)write a C program for constructing recursive descent parsing. Write a C program to implement LALR parsing. a)write a C program to implement operator precedence parsing. 9 b)write a C program to implement Program semantic rules to calculate the expression that takes an expression with digits, + and * and computes the value Group B: (Any Three Assignments) 10 To write a program for implementing Symbol Table using C. 11 To write a program for construction of Operator Precedence Parse Table using C++. To write a program for implementation of Code Optimization Technique in for and dowhile loop using C++. 12 13 To write a program for the generation of assembly language code of relational operator.

14 To write a program for construction of LR Parsing table using C. Group C: (Any One Assignments) 15 Convert the BNF rules into YACC form and write code to generate abstract syntax tree for the mini language. 16 Write a C program to generate machine code from abstract syntax tree generated by the parser. Term Work: Term Work assessment shall be conducted for the Project, Tutorials and Seminar. Term work is continuous assessment based on work done, submission of work in the form of report/journal, timely completion, attendance, and understanding. It should be assessed by subject teacher of the institute. At the end of the semester, the final grade for a Term Work shall be assigned based on the performance of the student and is to be submitted to the University. Notes 1 The experiments from the regular practical syllabus will be performed (15 Marks). 2 The regular attendance of students during the syllabus practical course will be monitored and marks will be given accordingly (5 Marks). 3 Good Laboratory Practices (5 Marks) Practical/Oral/Presentation: Practical shall be conducted and assessed jointly by internal and external examiners. The performance in the Practical examination shall be assessed by at least a pair of examiners appointed as examiners by the University. The examiners will prepare the mark/grade sheet in the format as specified by the University, authenticate and seal it. Sealed envelope shall be submitted to the head of the department or authorized person. Notes 1 One experiment from the regular practical syllabus will be conducted. (Total 15 Marks). 2 Complete laboratory journal (05 Marks). 3 Viva-voce (05 Marks).

School: Computer Science and Application Year: Second Year Course : Lab Course based on Web Technologies Practical: PG - 4 Hrs/Batch (20 Students) Programme:M.C.A. Semester - IV Course Code:CSA0100P407 Practical Examination: 25 Marks Term Work: 25 Marks Objectives 1 To develop an ability to design and implement static and dynamic website 2 To provide technical expertise in implementing web applications. 3 To design interactive web pages using HTML and Style sheets 4 To define CSS and unstaring its purpose different syntax and types of CSS 5 6 To learn about basics of XML and how it can be used to store information away from the mechanism of processing or formatting of such data To learn and get familiar with JavaScript and to apply client side scripting technology such as VBScript with HTML Sr. No. Group A: (Any SIX Assignments) Description 1 Create simple HTML File. Use of various HTML Tags on Web Forms. 2 3 4 5 6 Write a HTML to create an html file to link to different html page which contains images, tables, and also link within a page. Write html page with different types of frames such as floating frame, navigation frame & mixed frame. Develop static pages (using only HTML) of an online Book store. The pages should resemble: www.amazon.com The website should consist the following pages. Home page, Registration and user Login, User profile page, Books catalog, Shopping cart etc. Write an XML file which will display the Book information which includes the following: 1) Title of the book 2) Author Name 3) ISBN number 4) Publisher name 5) Edition 6) Price Write a Document Type Definition (DTD) to validate the above XML file. To create an html page named as registration.html a) set background colors b) use table for alignment c) provide font colors & size

7 9 To create an html file by applying the different styles using inline, external & internal style sheets. To write a JavaScript program to define a user defined function for sorting the values in an array. To create an html page to explain the use of various predefined functions in a string and math object in java script. Group B: (Any Three Assignments) 10 11 Write a program of Form processing using JavaScript and Validation of form using JavaScript To create an html page to explain the use of various predefined functions in array & Date object in JavaScript. 12 To display the calendar using JavaScript code by getting the year from the user. 13 To create a html registration form and to validate the form using JavaScript code. 14 To write a program to create xml document using XML language. Group C: (Any One Assignments) 15 To create a table of content using ASP program & navigate within the pages. 16 17 a) To create ASP program to demonstrate request & response object method. b) To display all the content in the database using ASP program. a)to create a CD catalog using XML file b)to create external style sheet and using the style sheet in xml file Term Work: Term Work assessment shall be conducted for the Project, Tutorials and Seminar. Term work is continuous assessment based on work done, submission of work in the form of report/journal, timely completion, attendance, and understanding. It should be assessed by subject teacher of the institute. At the end of the semester, the final grade for a Term Work shall be assigned based on the performance of the student and is to be submitted to the University. Notes 1 The experiments from the regular practical syllabus will be performed (15 Marks). 2 The regular attendance of students during the syllabus practical course will be monitored and marks will be given accordingly (5 Marks). 3 Good Laboratory Practices (5 Marks)

Practical/Oral/Presentation: Practical shall be conducted and assessed jointly by internal and external examiners. The performance in the Practical examination shall be assessed by at least a pair of examiners appointed as examiners by the University. The examiners will prepare the mark/grade sheet in the format as specified by the University, authenticate and seal it. Sealed envelope shall be submitted to the head of the department or authorized person. Notes 1 One experiment from the regular practical syllabus will be conducted. (Total 15 Marks). 2 Complete laboratory journal (05 Marks). 3 Viva-voce (05 Marks).

School: Computer Science & Application Year : Second Year Course: Theory of Computations Programme: M.C.A. Semester - IV Course Code: CSA0100P401 Theory: 4 Hrs/Week Max. University Theory Examination: 60 Marks Max. Time for Theory Exam.: 3 Hrs. Continuous Internal Assessment: 40 Marks Objectives 1 To build concepts regarding the fundamental principles of Grammars, Automata Theory, Turing Machines 2 To learn formal Programming Language Theory and Regular Expressions 3 To learn Grammar and Turing Machine Designing 4 To study the abstract computing model. 5 To study automata theory and types and applications of formal grammar. Unit Number 1 2 3 4 Details Basic Concepts and Formal Language Theory: Symbol/alphabets, string/word, language, formal language,, Basic Machine, Finite State machine: state tables, transition graph, Finite automata, finite control of FA over string, deterministic finite automaton(dfa) and nondeterministic finite automaton(nfa), conversion of NFA to DFA, concept of moves, NFA with e moves, A with output: Moore and mealey machines-definition, models, inter conversion, Regular Expressions: Formal definition, examples and FA, FA to RE,RE to FA,Recursive definition of regular expression. Regular Grammar and Context Free Languages : Regular Grammar: Definition, left linear and right linear regular grammar, inter conversion between left linear and right linear regular grammar, FA to RG and RG to FA, definition of/for CFL, Properties of CFL Contexts Free Grammars and languages: Grammar- Definition, representation of grammar, parse tree, ambiguity in grammar and language, removal of ambiguity, simplification of grammar, normal forms, Chomsky normal form and greibach normal form, Chomsky hierarchy. Push down automata (PDA): Definition, deterministic, pushes down automata (DPDA), non-deterministic push down automata (NPDA), the language of PDA. Equivalence of PDA s and CFG s, closure properties Hours 12 10 7

5 of CFL s. Concept of post machines. Turning Machine: Definition and example of TM, recursive sets, partial recursive function, recursively enumerable sets, computing a partial function with TM, combining TM s variations of TM: Multi-tape TM s, universal TM, model of computation and church s Turing hypothesis, unsolvable problem, TM s halting problem Total 45 Resources Recommended Books Reference Books Web References 1. Daniel I. A. Cohen, "Introduction to automata theory languages and computations, Pearson education asia, second edition 2. HopcroftUlman, Introduction to automata theory, languages and computations, Pearson education Asia, 2nd edition 3. John C. martin, Introduction to language and theory of computation, TMH, 3rd edition 1. E V Krishnamurthy, Introduction to Theory of Computer Science, EWP Second 2nd edition. 2. K.L.P Mishra,N. Chandrasekaran, Theory of computer science (automata, languages and computation), Prentice hall India, 2nd edition 1. https://www.tutorialspoint.com/automata_theory/turing_mach ine_introductio

School: Computer Science & Application Year : Second Year Course: Web Technologies Theory: 4 Hrs./Week Max. Time for Theory Exam.: 3 Hrs. Programme: M.C.A. Semester - IV Course Code: CSA0100P403 Max. University Theory Examination:60 Marks Continuous Internal Assessment: 40 Marks Objectives 1 To analyze a web page and identify its elements and attributes 2 To understand concepts of developing advanced HTML pages with the help of frames, scripting languages, and evolving technologies like DHTML, and XML 3 To understand web page site planning, management and maintenance 4 To create XML documents and Schema 5 To give the distinguish characteristic of scripting languages Unit Number 1 2 3 4 Details Fundamentals :Internet, WWW,A Brief Introduction to the Internet,Web Browsers and Web Servers, Uniform Resource Locators(URL), Multipurpose Internet Mail Extensions, HTTP,Security, The Web Programmer s Toolbox HTML: Introduction To HTML, WWW, W3C, web publishing, Common HTML, Basic Syntax, Basic Text Markup,Images, Hypertext Links, Lists,Tables Frames, Form Introduction with text box, text area, buttons, List box, radio, checkbox etc. CSS Introduction To Style sheet, types of style sheets- Inline, External, Embedded CSS, text formatting properties, CSS Border, margin properties, Positioning Use of classes in CSS, color properties, use of <div>&<span> Scripting Languages: Java Script (JS) in Web Page, Overview of JavaScript,Advantage of Java Script,types, intro of JavaScript, JavaScript identifiers, control statement, Looping structure, Array: Introduction, Array with methods, Math, String, Date Objects with methods User defined & Predefined functions, The Document Object Model, DOM objects, Window Navigator, History, Location, Event handling, Validations On Forms VBScript :Introduction To VBScript, Data types, Variables, Control of Flow Control Structures & Loops, Functions in VBScript, Client side Hours 9

web scripting, Validating forms, DOM, Handling errors 5 XML: Introduction of XML, features, XML writing elements, attributes etc. Document structure, Document, type definitions, XML with CSS, DSO, XML Namespaces XML DTD, and XML Schema, Writing Simple sheets using XSLT, SAX & DOM Parsers, and SOAP Intro. Active Server Page (ASP): Introduction Working with ASP page, ASP object,server object File system object, Role of Global.asa file, Error Handling in ASP,Database Handling: Connection, Recordset, Command Object Total 41 Resources Recommended Books Reference Books Web References 1. Robert W. Sebesta: Programming the World Wide Web, 4th Edition, Pearson education, 2012. 2. HTML, DHTML, JavaScript, Perl & CGI Ivan Bayross 3. JavaScript Bible 4. Web enabled commercial application development using HTML, DHTML, JavaScript, PERL-CG 5. VBScript in Nutshell 6. Internet Technology at work Hofstetterfred 7. Beginning XML Wrox Press Programming ASP Ivan Bayross 1. Beginning ASP 3.0 Wrox press 1. https://www.tutorialspoint.com/web_developers_guide/web_basic_co ncepts.htm 2. https://www.tutorialspoint.com/web_development_tutorials.htm 3. https://www.scribd.com/doc/7257173/web-technologies-notes