diff --git a/README.md b/README.md index 5a1a379..7f98777 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ | 2021-03-05 | *Introduction* | | 2021-03-12 | *Explaining lexer & parser code* | | 2021-03-19 | Lexer complete | -| 2021-03-26 | | +| 2021-03-26 | Team composition | | 2021-04-16 | Parser complete | | 2021-04-23 | | | 2021-04-30 | Semantic checks complete | @@ -16,12 +16,11 @@ | 2021-06-04 | | | 2021-06-11 | TAC → ASM (with function calls) complete | | 2021-06-18 | CFG generation complete | -| 2021-06-25 | Build Test Submission deadline | +| 2021-06-25 | | | 2021-07-16 | Final Submission deadline (no extensions) | - [mC Compiler Specification](specification.md) - [Getting Started Code-base](https://git.uibk.ac.at/c7031162/mcc) -- [Submission Guidelines](submission.md) ## Structure @@ -38,8 +37,12 @@ Teams may span across proseminar groups. The proseminar takes place online [over at Twitch](https://www.twitch.tv/AlexWarhawk), attendance is not mandatory. -I recommend sending me snapshots of your code-base, I'll provide feedback on stream. -Please follow the submission guidelines. +### Repository + +Host your code on the University GitLab and add me as developer to your repository. + +Furthermore, it is required to set up GitLab CI to automatically build and test your code. +The getting started code-base comes with a basic [`.gitlab-ci.yml`](https://git.uibk.ac.at/c7031162/mcc/blob/master/.gitlab-ci.yml). ### Programming Language @@ -55,6 +58,26 @@ Go easy on external dependencies and obscure language extensions — yes, I'm lo Code readability is paramount. Using overly complex or cryptic concepts may negatively impact the evaluation process — again, looking at you, Haskell and your voodoo magic lenses. +## Submission + +### Team Composition + +Send me a mail (one per team) with the names of your team members and a link to your repository. +Don't forget to add me as developer to your repository. + +### Feedback Request + +Just message me whenever you want to receive feedback on your code. +Tell me which commit to look at. + +Ensure that the repository does not contain any personal information like names or student IDs as I'll be going over it on stream. + +### Final Submission + +Add the tag `final` to the revision you want me to look at for the final evaluation. + +I'll only evaluate your solution if the corresponding CI job builds and tests your code successfully. + ## Grading The final grade is computed solely from the final submission. @@ -68,3 +91,5 @@ Just message me on Discord if you need anything. Alternatively, you can send me an email using the following link. 📧 [send email](mailto:alexander.hirsch@uibk.ac.at?subject=703602%20-%20) + +You can also open issue on GitLab, please message me if I do not respond within 24 hours; I might not have received a notification. diff --git a/evaluation_scheme.md b/evaluation_scheme.md index c1d8c33..021b4b8 100644 --- a/evaluation_scheme.md +++ b/evaluation_scheme.md @@ -27,7 +27,6 @@ This includes things like: - Contains list of prerequisites - Contains build instructions - Contains *Known Issues* section -- Submitted code builds successfully. - `mcc` executable operates as demanded by the specification. - A respective executable can be built and run for the *mandelbrot* test input. diff --git a/slides/intro_slides.md b/slides/intro_slides.md index 187272b..64a7d54 100644 --- a/slides/intro_slides.md +++ b/slides/intro_slides.md @@ -12,7 +12,7 @@ As stated by the curriculum, your task is to build a simple compiler for a small procedural programming language. It's quite hard to fit this goal into the 5 ECTS budget of this module (lecture included), nevertheless I think I found the right trade-offs with the given specification. -Still, it is highly recommended to work in teams and that you start early - always trying to be ahead of schedule. +Still, it is highly recommended to work in teams and that you start early — always trying to be ahead of schedule. ## Prerequisites @@ -31,7 +31,7 @@ While I don't care whether you have officially finished your bachelor, you shoul - - - - Fluent in C (or C++, or Go, or Rust, or Haskell) - - General programmer mindset + - General programming mindset - Knowing your tools - Algorithms and data structures @@ -44,9 +44,9 @@ While I don't care whether you have officially finished your bachelor, you shoul - - - @@ -81,10 +81,6 @@ The lecture and proseminar assumes that you are familiar with the basics of gram - Specification provided - Evaluation scheme provided -## Requirements - -- Working compiler - ## Recommended Schedule - See README @@ -93,11 +89,6 @@ The lecture and proseminar assumes that you are familiar with the basics of gram You are free to deviate from this schedule. -## Submissions - -- End of June: build test submission (optional) -- Mid of July: final submission (no extensions) - ## Teams - 1–3 people diff --git a/submission.md b/submission.md deleted file mode 100644 index 8386572..0000000 --- a/submission.md +++ /dev/null @@ -1,52 +0,0 @@ -# Submission Guideline - -- Replace `XX` with your team number with leading zero (e.g. `02`). -- One submission *per team*. -- Familiarise yourself with the `git archive` command. - -## Feedback Request - -1. Run the following command, assuming you want to submit the currently checked out version: - - $ git archive --prefix=feedback_request/ --format=zip HEAD > feedback_request.zip - -2. Verify that the resulting archive contains everything you want to submit and nothing more. -3. Ensure that the resulting archive does not contain any personal information like names or student IDs. -4. Submit the archive via mail using the following line as subject (or link below). - - 703602 - Feedback Request - - 📧 [send email](mailto:alexander.hirsch@uibk.ac.at?subject=703602%20-%20Feedback%20Request) - -## Build Test Submission - -1. Run the following command, assuming you want to submit the currently checked out version: - - $ git archive --prefix=team_XX_build_test/ --format=zip HEAD > team_XX_build_test.zip - -2. Verify that the resulting archive contains everything you want to submit and nothing more. -3. Submit the archive via mail using the following line as subject (or link below). - - 703602 - Team XX Build Test Submission - - 📧 [send email](mailto:alexander.hirsch@uibk.ac.at?subject=703602%20-%20Team%20XX%20Build%20Test%20Submission) - -## Final Submission - -1. Run the following command, assuming you want to submit the currently checked out version: - - $ git archive --prefix=team_XX_final/ --format=zip HEAD > team_XX_final.zip - -2. Verify that the resulting archive contains everything you want to submit and nothing more. -3. Ensure everything works. - - Everything builds - - No (unjustified) warnings - - All unit tests succeed - - All integration tests succeed - - No memory is leaked - - Known issues is present and up-to-date -4. Submit the archive via mail using the following line as subject (or link below). - - 703602 - Team XX Final Submission - - 📧 [send email](mailto:alexander.hirsch@uibk.ac.at?subject=703602%20-%20Team%20XX%20Final%20Submission)