72 lines
2.9 KiB
Markdown
72 lines
2.9 KiB
Markdown
# Compiler Construction
|
||
|
||
| 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-06-30 | Final |
|
||
|
||
[Example Input](example_input.md)
|
||
|
||
- [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.
|
||
|
||
Apart from this, there will be one *required* submissions near the beginning of the semester.
|
||
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.
|
||
|
||
You can work together in teams of 1–3 people. Teams may span across pro-seminar groups.
|
||
|
||
## Grading
|
||
|
||
Your final grade is determined mostly by the final submission.
|
||
A positive grade for your final submission is required to pass this course.
|
||
|
||
In addition to this, I'll do short QA sessions during the course which influence your final grade.
|
||
|
||
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)
|