| cs588 website: |
http://www.calstatela.edu/faculty/vcrespi/CS/CS588/cs588.html |
| Lectures: |
MW 4:20-6:00pm, ET A220
|
| Final Exam: |
Monday, Dec 5, 4:30-7:00pm, ET A220
|
| Instructor: |
Valentino Crespi
vcrespi@calstatela.edu
(323) 343-4596.
ET-A318
|
| Office Hours: |
MW 3:00-4:00pm, TR 6:00-7:00pm.
|
| Abstract: |
CS588 is a graduate course on Compilers. The focus is on
learning advanced techniques to build a compiler for an Algol-like
programming language. Students will be asked to develope a software
project. In addition, students will have to conduct a separate
investigation on special advanced topics concerning the subject and
present their work in a final exam. The course will be mainly
centered on the front-end of the compiler design, but time
permitting also the back-end will be studied. |
-->
| Prerequisites: |
CS488 |
| Textbook: | A. Aho, R. Sethi,
J. Ullman. Compilers. Addison-Wesley, 1998. |
| References: |
- J. Hopcroft, R. Motwani, J. Ullman. Introduction Automata
Theory, Languages and Computation. Addison-Wesley.
- Arto Salomaa. Computation and Automata. Cambridge
University Press.
- John Levine, Tony Mason, Doug Brown. Lex &
yacc. O'Reilly.
- Robert Britton. MIPS Assembly Language Programming. Prentice
Hall, 2003.
|
| Topics: |
- Review on Formal Language Theory and Parsing Theory: regular
and context free languages, bottom-up and top-down
parsing. General structure of a compiler: front-end and
back-end.
- Lexical Analysis and Lexical Analyzer Generators.
- Syntax Analysis: LL(k) Grammars, Predictive Top-Down
Parsing, LR(k) Grammars, Bottom-Up Parsing. Parser
generators.
- L-attributed definitions and Syntax-Directed
Translation.
- Type Checking, Run-time Environments, Intermediate Code
generation.
- The MIPS Assembly language. Code generation and code
optimization.
|
| Grading Policy: |
One Midterm Exam (30%), One Final Exam (40%), One Class Project (30%)
| Score (%) |
Letter Grade |
|
90-100
|
A
|
|
80-89
|
B
|
|
60-79
|
C
|
|
50-59
|
D
|
|
0-49
|
F
|
|
| Academic Integrity: | Students are
allowed and encouraged to discuss reading materials with each
other. However, homework assignments must be solved and written
individually. If you obtain a solution with help then you
should acknowledge your source in the paper and then write
independently your own solution.
Cheating will not be tolerated. Cheating on any assignment or exam
will be taken seriously. All parties involved will receive a grade
of F for the course and be reported to the Academic Senate. |
| General Policies:
|
- Makeup Exams: No.
- Homework Assignments:
Homework assignments should be written neatly on standard sized
paper (8.5 x 11 inch), possibly in black or blue ink (please do not
use red) and submitted at the due date (no electronic
submissions accepted). Each page should be numbered. Late
submissions will not be accepted.
- Use of Cell Phones: forbidden.
- Late arrivals:
Students arriving 30min after the beginning of class will not be
admitted.
- Office:
Students are warmly invited to visit the instructor (during
the announced office hours) for questions and clarifications.
- E-mail:
E-mails addressed to vcrespi@calstatela.edu must have, in the
subject, the keyword CS588 (e.g. Subject: CS588 ...).
All the E-mails will be possibly processed in the evening and so
will be answered with a minimum delay. Be careful, the keyword in
the subject is important for automatic filtering. Wrong subjects may
result in the accidental loss of the message.
|