This syllabus has been revised in the recent past with the course number being the same.
Showing the latest revision in section Curriculum 2022. The earlier version is in section Curriculum 2017.

Curriculum 2017

Week 1: Specification of language tokens using one of the tools for lexical analysis: lex, flex, ml-lex.

Week 2 : Language to evaluate arithmetic expressions.

Week 3-4 : Specification of language using one of the LALR parsing tools: yacc, bison, ml-yacc.

Week 5-6 : Develop a parser for a language that consists of elementary data types, and arithmetic, relational, and logical operator (s), control statement(s) and loop construct(s), and functions.

Week 7-8: Creation of Abstract Syntax Tree (AST) from the language grammar

Week 9-10: Conversion of AST to an intermediate code.

Week 11-12: Code generation from the intermediate code for a specific compute architecture: MIPS.

Curriculum 2022

Prerequisite (if any): Compiler Design (prerequisite/corequisite)

Week 1: Specification of language tokens using one of the tools for lexical analysis: lex, flex, ml-lex.

Week 2 : Language to evaluate arithmetic expressions.

Week 3-4 : Specification of language using one of the LALR parsing tools: yacc, bison, ml-yacc.

Week 5-6 : Develop a parser for a language that consists of elementary data types, and arithmetic, relational, and logical operator (s), control statement(s) and loop construct(s), and functions.

Week 7-8: Creation of Abstract Syntax Tree (AST) from the language grammar

Week 9-10: Conversion of AST to an intermediate code.

Week 11-12: Code generation from the intermediate code for a specific compute architecture: MIPS.

Learning Outcomes

Develop a compiler covering all phases from lexical analysis to code generation and gain the skill of developing a system software from scratch.

Past Offerings

  • Offered in Jan-May, 2023 by Unnikrishnan C
  • Offered in Jan-May, 2022 by Piyush Kurur
  • Offered in Jan-May, 2021 by Piyush, Unnikrishnan
  • Offered in Jan-May, 2020 by Unnikrishnan, Piyush
  • Offered in Jan-May, 2019 by Piyush

Course Metadata

Item Details
Course Title Compiler Design Laboratory
Course Code CS3140
Course Credits 0-0-3-2
Course Category PMP
Proposing Faculty Piyush P Kurur & Unnikrishnan C
Approved on Senate 20 of IIT Palakkad
Course prerequisites Compiler Design (Prerequisite & Corequisite)
Course status revised
Course revision information CS3140 Compiler Design Lab