uibk_703602-Compiler-Constr.../README.md

71 lines
2.8 KiB
Markdown
Raw Normal View History

2019-01-11 19:30:08 +01:00
# Compiler Construction (draft)
2018-12-31 15:26:22 +01:00
| Date | Deadline |
| ---------- | --------------- |
| 2019-03-15 | [Example Input] |
| 2019-04-05 | Milestone 1 |
| 2019-05-03 | Milestone 2 |
| 2019-05-24 | Milestone 3 |
| 2019-06-14 | Milestone 4 |
| 2019-06-21 | Milestone 5 |
2019-01-30 10:38:42 +01:00
| 2019-07-12 | Final |
2018-12-31 15:26:22 +01:00
2019-01-06 12:12:14 +01:00
[Example Input]: example_input.md
2018-12-31 15:26:22 +01:00
- [mC Compiler Specification](specification.md)
- [Getting Started Code-base](https://git.uibk.ac.at/c7031162/mcc)
- [Submission Guideline](submission.md)
## Structure
The ultimate goal of this course is to build a working compiler according to the given specification.
You are not allowed to use code from other people participating in this course or code that has been submitted previously by somebody else.
However, a *getting started* code-base is provided.
You will be able to work on your compiler during the lab.
I'll be present for questions all the time, yet a big part of this course is to acquire the necessary knowledge yourself.
Please note that minor modifications may be made to the specification until 1 week before the final deadline.
Therefore, double check for modifications before submitting — Git provides you the diff anyway.
2019-03-01 20:49:04 +01:00
Apart from this, there will be one *required* submission near the beginning of the semester.
2018-12-31 15:26:22 +01:00
You have to submit an additional example input, which may be added to the set of example inputs — this way the number of integration tests is extended.
Furthermore, there are five *optional* milestones.
They provide a golden thread and enable you to receive feedback, plus you get a feel for my reviewing scheme.
2019-03-01 20:49:04 +01:00
You may work together in teams of 13 people.
Teams may span across pro-seminar groups.
2018-12-31 15:26:22 +01:00
## Grading
2019-03-01 20:49:04 +01:00
The final grade is computed as the weighted average of the final submission (80%) and the QA sessions (20%).
Both of these parts as well as the majority of QA session grades must be positive to pass this course.
2018-12-31 15:26:22 +01:00
Other submissions are not graded.
Be sure to adhere to the specification, deviating from it (without stating a proper reason) will negatively impact your grade.
### Evaluation System
I'll be using a virtualised, updated Ubuntu 18.04 LTS (64 bit) to examine your submissions.
The submitted code has to compile and run on this system.
This information tells you which software versions I'll be using.
### Absence
You must not be absent more than three times to pass this course.
You do not have to inform me of your absence.
## Contacting Me
If you have questions or want to know more about a certain topic, I am always glad to help.
You can find me in room 2W05 of the ICT building.
You can also contact me by email, just be sure to send it from your university account.
Please keep your email informal and include the course number in the subject.
Preferably use the following link.
📧 [send email](mailto:alexander.hirsch@uibk.ac.at?subject=703807%20-%20)