- Class: CPSC 402 Compiler Construction
- Instructor: Alexander Kurz
- Lectures: TuTh 10:00-11:15, TuTh 11:30-12:45 (first week online, in Keck 156 once we move to classroom teaching)
- Office Hours: TuTh 13:00-14:30 on zoom (subject to change)
This course teaches compiler construction not as a low level machine language oriented course but as a high level software engineering course. The aim is to give students the means to design and implement their own domain specific language (DSL). The quote
Any sufficiently large software project becomes a DSL by virtue of the
library of functions built up to implement the solution to the specific
problem the project was conceived to address.
indicates how DSLs are related to software engineering in general.
While writing a fully fledged compiler is a big task beyond what we can do in a one semester course, with a good mix of theory based software engineering tools, it is well in the scope of a semester to learn how to create a grammar, parser, typechecker, interpreter and code generator for a small but realistic programming language. In our case, we choose a fragment of C++, which should be familiar to many students and emphasises that the taught methods apply to real existing mainstream programming languages.
Grading scale used for the course:
Percentage | Letter |
---|---|
90 | A |
80-89 | B |
70-79 | C |
60-69 | D |
< 60 | F |
You must score a 70 or above to receive a P when taking the course P/NP.
If you need more time for an assignment that may be possible if
- you can prove to me that you already have done work on the assignment (for example by showing me code in your GitHub repository);
- you can explain the special circumstances that make you ask for more time.
- I appreciate it if students make use of the office hours (this also gives me valuable feedback on how the class is going).
- Participation will contribute 5% to the final course grade, see Assessment.
See Assessment.
See Assessment.
The official times will be available in the Final Exam Schedule, but it is likely that you will get a 2-day take home instead.
Chapman University is a community of scholars that emphasizes the mutual responsibility of all members to seek knowledge honestly and in good faith. Students are responsible for doing their own work and academic dishonesty of any kind will be subject to sanction by the instructor/administrator and referral to the university Academic Integrity Committee, which may impose additional sanctions including expulsion. Please see the full description of Chapman University's policy on Academic Integrity.
In compliance with ADA guidelines, students who have any condition, either permanent or temporary, that might affect their ability to perform in this class are encouraged to contact the Office of Disability Services. If you will need to utilize your approved accommodations in this class, please follow the proper notification procedure for informing your professor(s). This notification process must occur more than a week before any accommodation can be utilized. Please contact Disability Services at (714) 516–4520 if you have questions regarding this procedure or for information or to make an appointment to discuss and/or request potential accommodations based on documentation of your disability. Once formal approval of your need for an accommodation has been granted, you are encouraged to talk with your professor(s) about your accommodation options. The granting of any accommodation will not be retroactive and cannot jeopardize the academic standards or integrity of the course.
Chapman University is committed to ensuring equality and valuing diversity. Students and professors are reminded to show respect at all times as outlined in Chapman’s Harassment and Discrimination Policy. Please review the full description of Harassment and Discrimination Policy. Any violations of this policy should be discussed with the professor, the Dean of Students and/or otherwise reported in accordance with this policy.”
Over the course of the semester, you may experience a range of challenges that interfere with your learning, such as problems with friend, family, and or significant other relationships; substance use; concerns about personal adequacy; feeling overwhelmed; or feeling sad or anxious without knowing why. These mental health concerns or stressful events may diminish your academic performance and/or reduce your ability to participate in daily activities. You can learn more about the resources available through Chapman University’s Student Psychological Counseling Services.
Fostering a community of care that supports the success of students is essential to the values of Chapman University. Occasionally, you may come across a student whose personal behavior concerns or worries you, either for the student’s well-being or yours. In these instances, you are encouraged to contact the Chapman University Student Concern Intervention Team who can respond to these concerns and offer assistance. While it is preferred that you include your contact information so this team can follow up with you, you can submit a report anonymously. 24-hour emergency help is also available through Public Safety at 714-997-6763.
Religious Accommodation at Chapman University Consistent with our commitment of creating an academic community that is respectful of and welcoming to persons of differing backgrounds, we believe that every reasonable effort should be made to allow members of the university community to fulfill their obligations to the university without jeopardizing the fulfillment of their sincerely held religious obligations. Please review the syllabus early in the semester and consult with your faculty member promptly regarding any possible conflicts with major religious holidays, being as specific as possible regarding when those holidays are scheduled in advance and where those holidays constitute the fulfillment of your sincerely held religious beliefs.
This syllabus is subject to change. Updates will be posted on the course website.