Zhendong Su: Katalogdaten im Herbstsemester 2020

NameHerr Prof. Dr. Zhendong Su
LehrgebietInformatik
Adresse
Professur für Informatik
ETH Zürich, CNB H 102
Universitätstrasse 6
8092 Zürich
SWITZERLAND
Telefon+41 44 633 77 72
E-Mailzhendong.su@inf.ethz.ch
DepartementInformatik
BeziehungOrdentlicher Professor

NummerTitelECTSUmfangDozierende
252-0210-00LCompiler Design8 KP4V + 3UZ. Su
KurzbeschreibungThis course uses compilers as examples to expose students to modern software development techniques. Tentative topics include: compiler organization; lexical analysis; top-down and bottom-up parsing; symbol tables; semantic analysis; code generation; local and global optimization; register allocation; automatic memory management.
LernzielLearn principles of compiler design; gain practical experience designing and implementing a medium-scale software system.
InhaltThis course uses compilers as example to expose modern software development techniques. The course introduces the students to the fundamentals of compiler construction. Students will implement a simple yet complete compiler for an object-oriented programming language for a realistic target machine. Students will learn the use of appropriate tools. Throughout the course, students learn to apply their knowledge of theory (automata, grammars, stack machines, program transformation) and well-known programming techniques (module definitions, design patterns, frameworks, software reuse) in a software project.

A tentative list of topics: compiler organization; lexical analysis; top-down and bottom-up parsing; symbol tables; semantic analysis; code generation; local and global optimization; register allocation; automatic memory management; optional advanced topics if/when time permits.
LiteraturAho/Lam/Sethi/Ullmann, Compilers - Principles, Techniques, and Tools (2nd Edition)

Muchnick, Advanced Compiler Design and Implementation, Morgan Kaufmann Publishers, 1997
Voraussetzungen / BesonderesPrerequisites:
Prior exposure to modern techniques for program construction, knowledge of at least one processor architecture at the assembly language level.
263-2100-00LResearch Topics in Software Engineering Information Belegung eingeschränkt - Details anzeigen
Number of participants limited to 22.

The deadline for deregistering expires at the end of the second week of the semester. Students who are still registered after that date, but do not attend the seminar, will officially fail the seminar.
2 KP2SZ. Su, M. Vechev
KurzbeschreibungThis seminar is an opportunity to become familiar with current research in software engineering and more generally with the methods and challenges of scientific research.
LernzielEach student will be asked to study some papers from the recent software engineering literature and review them. This is an exercise in critical review and analysis. Active participation is required (a presentation of a paper as well as participation in discussions).
InhaltThe aim of this seminar is to introduce students to recent research results in the area of programming languages and software engineering. To accomplish that, students will study and present research papers in the area as well as participate in paper discussions. The papers will span topics in both theory and practice, including papers on program verification, program analysis, testing, programming language design, and development tools.
LiteraturThe publications to be presented will be announced on the seminar home page at least one week before the first session.
Voraussetzungen / BesonderesOrganizational note: the seminar will meet only when there is a scheduled presentation. Please consult the seminar's home page for information.