# Principles of Compiler Design

- Institution: IISc Bangalore
- Department: Computer Science and Engineering
- Teacher: Prof. Y.N. Srikanth
- Level: Undergraduate
- Language: English
- Subjects: Computer science, Engineering
- Source: [NPTEL](https://nptel.ac.in/courses/106108113)
- Licence: [CC BY-NC-SA](https://nptel.ac.in/faq) (Non-commercial use only.)
- Syllabus: [at the source](https://nptel.ac.in/courses/106108113)
- Who can watch: Tweens profiles and older (sources give no ratings; placed by Invisible Network from the source's own words)

## Lectures

1. [An Overview of a Compiler](https://invisiblenetwork.ai/learn/nptel/106108113/9c0e2af4e616) (Video)
2. [Lexical Analysis - Part 1](https://invisiblenetwork.ai/learn/nptel/106108113/0d3de81bd65d) (Video)
3. [Lexical Analysis - Part 2](https://invisiblenetwork.ai/learn/nptel/106108113/dc5d993860ff) (Video)
4. [Lexical Analysis - Part 3](https://invisiblenetwork.ai/learn/nptel/106108113/39af57bf7899) (Video)
5. [Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 1](https://invisiblenetwork.ai/learn/nptel/106108113/ba9faf5bfcba) (Video)
6. [Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 2](https://invisiblenetwork.ai/learn/nptel/106108113/411f2618e11a) (Video)
7. [Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 3](https://invisiblenetwork.ai/learn/nptel/106108113/6f743964649c) (Video)
8. [Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 4](https://invisiblenetwork.ai/learn/nptel/106108113/0ee94036dcce) (Video)
9. [Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 5](https://invisiblenetwork.ai/learn/nptel/106108113/d7a3b3162b5c) (Video)
10. [Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 6](https://invisiblenetwork.ai/learn/nptel/106108113/9bdcbebb60fb) (Video)
11. [Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 7](https://invisiblenetwork.ai/learn/nptel/106108113/463452c78aa1) (Video)
12. [Semantic Analysis with Attribute Grammars Part 1](https://invisiblenetwork.ai/learn/nptel/106108113/2249b8a72345) (Video)
13. [Semantic Analysis with Attribute Grammars Part 2](https://invisiblenetwork.ai/learn/nptel/106108113/9c8efbb33108) (Video)
14. [Semantic Analysis with Attribute Grammars Part 3](https://invisiblenetwork.ai/learn/nptel/106108113/b5cf8b7f85d6) (Video)
15. [Semantic Analysis with Attribute Grammars Part 4](https://invisiblenetwork.ai/learn/nptel/106108113/99be825c1972) (Video)
16. [Semantic Analysis with Attribute Grammars Part 5](https://invisiblenetwork.ai/learn/nptel/106108113/cdca8113ffa8) (Video)
17. [Intermediate code generation Part 1](https://invisiblenetwork.ai/learn/nptel/106108113/5bb16ee1e013) (Video)
18. [Intermediate code generation Part 2](https://invisiblenetwork.ai/learn/nptel/106108113/a261fad79937) (Video)
19. [Intermediate code generation Part 3](https://invisiblenetwork.ai/learn/nptel/106108113/7aac8b6ee0ec) (Video)
20. [Intermediate code generation Part 4 (first half of lecture)](https://invisiblenetwork.ai/learn/nptel/106108113/3e79d37b4575) (Video)
21. [Run-time environments - 2](https://invisiblenetwork.ai/learn/nptel/106108113/ebea73d7ff58) (Video)
22. [Run-time environments - 3](https://invisiblenetwork.ai/learn/nptel/106108113/150c89d8844e) (Video)
23. [Run-time environments - 4 (first half of lecture)](https://invisiblenetwork.ai/learn/nptel/106108113/6e2f9fd83654) (Video)
24. [Control-Flow Graph and Local Optimizations - Part 2 (first half of lecture)](https://invisiblenetwork.ai/learn/nptel/106108113/d8860679804c) (Video)
25. [Machine code generation - 2](https://invisiblenetwork.ai/learn/nptel/106108113/1eb694a7283c) (Video)
26. [Machine code generation - 3](https://invisiblenetwork.ai/learn/nptel/106108113/d59e60e798f5) (Video)
27. [Machine code generation - 4 (first half of lecture), Implementing object-oriented languages 1 (second half of lecture)](https://invisiblenetwork.ai/learn/nptel/106108113/3990c7d21a99) (Video)
28. [Implementing object-oriented languages 2 (first half of lecture)](https://invisiblenetwork.ai/learn/nptel/106108113/a13e7aafa44e) (Video)
29. [Global register allocation - 2](https://invisiblenetwork.ai/learn/nptel/106108113/b9b627dade68) (Video)
30. [Global register allocation - 3](https://invisiblenetwork.ai/learn/nptel/106108113/0e98bb4807b5) (Video)
31. [Introduction to Machine-Independent Optimizations - 1](https://invisiblenetwork.ai/learn/nptel/106108113/308d28008005) (Video)
32. [Introduction to Machine-Independent Optimizations - 2](https://invisiblenetwork.ai/learn/nptel/106108113/c60e7e98a931) (Video)
33. [Introduction to Machine-Independent Optimizations - 3](https://invisiblenetwork.ai/learn/nptel/106108113/cc935847a466) (Video)
34. [Introduction to Machine-Independent Optimizations - 4](https://invisiblenetwork.ai/learn/nptel/106108113/bdba9d12e971) (Video)
35. [Introduction to Machine-Independent Optimizations - 5](https://invisiblenetwork.ai/learn/nptel/106108113/10a3854d6a11) (Video)
36. [Introduction to Machine-Independent Optimizations - 6](https://invisiblenetwork.ai/learn/nptel/106108113/41588092c0f9) (Video)
37. [Introduction to Machine-Independent Optimizations - 7 (first half of lecture)](https://invisiblenetwork.ai/learn/nptel/106108113/08a67c02231f) (Video)
38. [Instruction Scheduling and Software Pipelining - 2](https://invisiblenetwork.ai/learn/nptel/106108113/e342e26bbedc) (Video)
39. [Instruction Scheduling and Software Pipelining - 3 (first part of lecture)](https://invisiblenetwork.ai/learn/nptel/106108113/b14b22788c9e) (Video)
40. [Automatic parallelization - 2](https://invisiblenetwork.ai/learn/nptel/106108113/aced212cea7d) (Video)
