CS3320: Compilers-I

March 2019 - April 2019


Instructor: Ramakrishna Upadrasta (U. Ramakrishna)
Email: Ramakrishna AT iith DOT ac DOT in
Office:

TAs (IITH email-IDs: <ID> AT iith DOT ac DOT in) : Utpal Bora (cs14mtech11017), SHALINI JAIN (cs15resch11010), Venkata Keerthy S (cs17mtech11018), Rohit Aggarwal (CS18MTECH11030), UTKOOR RAHUL (cs14btech11037), Gagandeep Goyal (cs19mtech01003)

Discussion Google-group: compilers1-jan17 AT iith DOT ac DOT in Join Group (only with IITH email-IDs)
Classes: Mon: 10:00am-11:00am, Wed: 9:00am-10:00am, Thu: 11:00am-12:00noon (C slot); Room: CL#A416


Credits: CS3320: 1 credits
Prerequisites: CS3320: 2nd year B.Techs


Course Description (CS3320)

The objective of this course is to learn basic principles of compiler design. The course will focus on basic principles of lexical analysis, syntactic analysis, semantic analysis, abstract syntax tree and code-generation as well as basic optimizations.

The initial part of both the courses will focus on the classic techniques of lexical analysis and scanning/screening, syntactic analysis like bottom-up and top-down parsing techniques. The later part of the course will skim through semantic analysis, type-checking, abstract syntax tree and code generation and some basic optimizations.


Lecture Schedule

23rd-Mar-2017 Organization & Logistics,
An Overview of Compilers PDF
Acknowledgements

Readings: ALSU, Ch.1
Rest of Lectures In Google Drive.

References:

  • [Text Book] Compilers: Principles, Techniques, and Tools ("Dragon book") by Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, 2006
  • [Ref. Book] Compiler Design "Syntactic and Semantic Analysis" by Reinhard Wilhelm, Helmut Seidl and Sebastian Hack, 2013
  • [Adv. Ref. Book] Advanced Compiler Design and Implementation by Steven Muchnick, 1997
  • [NPTEL] NPTEL course on Principles of Compiler Design by Prof. Y.N. Srikant from Indian Institute of Science, 2012-2014 IITM Link
  • [Coursera] Coursera course on Compilers by Prof. Alex Aiken at Stanford, 2012-2014 Coursera Compilers
  • [Gradiance] Gradiance System by Prof. Jeffrey D. Ullman newgradiance link
  • .....

  • Some Class Links:

  • news
  • doc
  • .....

  • Suggested readings:

  • .....

  • Grading (CS3320: 1 credit)

    Activity Weight
    Class Participation and Attendance 10%
    Gradiance 10%
    Final Exam 45%
    Reading Assignments 5%
    Programming Assignments(2+2+14+12) 30%


    Important: Plagiarism Policy of IITH-CSE Department.