MIF0005 | Advanced Compiler Design |
Teaching Staff in Charge |
Assoc.Prof. MOTOGNA Simona Claudia, Ph.D., motognacs.ubbcluj.ro |
Aims |
The course will cover modern mechanisms for compiler implementation, taking into consideration various optimizations for different programming languages. The students should be able to understand compiler design and to implement these techniques.
|
Content |
I. Back -end of a compiler:
I.1 Intermediary code generation I.2 Code Optimization I.3 Object code generation II. Language-dependent mechanisms in compiler implementation II.1 Functional and logical languages II.2 Imperative and object-oriented languages II.3 Distributed languages III. Advanced compiler techniques III.1 Virtual machines III.2 Garbage collection mechanism III.3 Dynamic compilation IV. Compilers for .NET IV.1 .NET architecture basics IV.2 program execution scheme in .NET IV.3 MSIL - intermediary representation in .NET IV.4 CLI - Common Language Infrastructure |
References |
1. GRUNE, DICK - BAL, H. - JACOBS, C. - LANGENDOEN, K.: Modern Compiler Design, John Wiley, 2000
2. MITCHELL, JOHN: Foundations for Programming Languages, MIT Press, 1996 3. MOTOGNA, SIMONA: Metode de proiectare a compilatoarelor, Ed. Albastra, 2006 4. RICHTER, J.: Applied Microsoft .NET Framework Programming, Microsoft Press, 2002 5. LIDIN, SERGE: Inside .NET IL Assembler, Microsoft Press International, 2002 6. STUTZ, DAVID - NEWARD, TED - SHILLING, GEOFF: Shared Source CLI Essentials, O@Reilly UK, 2003 7. Sun Java Systems, [http://docs.sun.com/db/prod/java.sys], 01.09.2004 |
Assessment |
The final grade will take into consideration:
- project (practical) 30% - presentation (case study + domain review) 20% - written exam 50% Foe academic year 2009-2010, see http://cs.ubbcluj.ro/~motogna/AdvancedCompilerDesign.html |
Links: | Syllabus for all subjects Romanian version for this subject Rtf format for this subject |