Back
CS 31003 Compilers
(Autumn Semester 2024)
Theory & Laboratory
Bivas Mitra, Abhijit Das
Teaching Assistant
Utsav Basu utsavbasu [AT] kgpian.iitkgp.ac.in
Anamitra Mukhopadhyay anamitra137 [AT] gmail.com
Salma Mandi salmamandi [AT] gmail.com
Arpan Dam ARPANDAM1 [AT] gmail.com
Tarannum Ara tarannum.ara17 [AT] gmail.com
Harsh Borse harshzf2 [AT] gmail.com
Abhijeet Singh abhis131354 [AT] gmail.com
Sugandh Pargal sugandhpargal [AT] gmail.com
Aitipamula Anirudh anirudhaitipamula [AT] gmail.com
Mradul Agrawal mradul [AT] kgpian.iitkgp.ac.in
Swarup Padhi swarup.padhi [AT] kgpian.iitkgp.ac.in
Notices
20.07.2024 First class: July 22, 2024, Mon. Venue: NC 443, Time: 8.00am. Students with ODD roll number should join this class.
Theory
       Lectures
       Evaluation
       Study Materials
       Evaluation
       Assignments
Theory
General Information
Lectures : MON(8:00-10:00), TUE(12 noon-13:00)
Room # : NC443
Units : 3-0-2
Credits : 3 (Theory)
Contact : Room #322 (CSE), Phone 82358
Important!: Class attendance is mandatory! Any time your attendance falls below 85%, you have 100% chance of being de-registered irrespective of your class performance, CGPA etc!
Attendance Policy
If you are not present in the class (or do not respond), when I call by your name (may be randomly or sequentially....surprise!), you will lose 1.5 credit (instead of one) for the attendance for that week. If that happens twice in a week, you will be marked as absent for the entire week (i.e. you will lose all the three credits for attendance for that week).
Text Books (Theory and Lab):
[1] Aho, A. V., Sethi, R. and Ullman, J. D.
Compilers - Principles, Techniques and Tools
Addison-Wesley
[2] Advanced Compiler Design Implementation
Steven S. Muchnick
Elsevier, 2003
[3] Compiler Design in C, Allen Holub
[4] Modern compiler implementation in C by Appel
[5] System Software: An Introduction to Systems Programming
Leland L. Beck, Addison-Wesley.
[6] Systems Programming, John J. Donovan,
McGraw - Hill Education
Evaluation
Teacher's Assessment (Class Test I & II, Attendance) : 20
Mid-sem : 30
End-sem : 50
Lectures
Slides just contain very informal outlines of the topics; details will be discussed in the class.
1. Course Details
2. Compiler overview
3. Lexical Analysis
4. Syntax Analysis & Parser
5. Syntax-Directed Translation
6. Intermediate Code Generation
7. Target Code Generation
8. Code Optimization
9. Data Flow Analysis
Laboratory (CS39003)
General Information
Lab venue and time : Dept. of CSE (14.00-17.00)
Units : 3-0-2
Credits : 2 (Lab)
Evaluation
Study Materials
1. Understanding x86-64 Assembly
2. x86-64 Machine Programming
3. Using Assembly Language in Linux
4. Creating Library
5. Lex tutorial
6. Yacc tutorial
General Guidelines
-
Important!: Cheating and code plagiarism are strictly prohibited. If identified, you will be immediately de-registered from the Lab course.
Lab Assignments
1. 22.07.2024 - Assignment 0
2. 05.08.2024 - Assignment 1
3. 12.08.2024 - Assignment 2
4. 12.08.2024 - TinyC Part 1
5. 02.08.2024 - Assignment 3
4. 04.08.2024 - TinyC Part 2
5. 30.09.2024 - Assignment 4
5. 04.11.2024 - Assignment 6