Zurück zur Auswahl
| Semester | Herbstsemester 2025 |
| Angebotsmuster | unregelmässig |
| Dozierende |
Ali Ajorian (ali.ajorian@unibas.ch)
Erick Lavoie (erick.lavoie@unibas.ch, BeurteilerIn) |
| Inhalt | This seminar will provide fundamentals of interpretation and compilation of programming languages with a strong emphasis on practical projects. It will include a selection of topics among the followings: program representations and transformations, the difference between compilation and interpretation, execution semantics, programming language concepts, meta-programming. We will look at applications of the concepts with a special emphasis on secure execution of programs, which will be relevant for doing Bachelor and Master projects related to the ongoing Survivable Computing project of the Computer Networks Group. |
| Lernziele | The main objective of the course is to successfully implement a compiler for a simplified but representative subset of the Python programming language. This subset will support variables, conditionals, loops, functions, and other functionalities according to student interests. Students that succeed will obtain a concrete understanding of how high-level programming languages are executed on lower-level hardware. The techniques covered are also fundamental for more advanced automated program analysis and transformations, such as finding bugs and vulnerabilities in source code, increasing performance with optimizing compilers, and increasing the security of executables. |
| Literatur | The first 9 lectures will cover Chapters 1,2,5,6 and 8 of the following textbook: https://github.com/IUCompilerCourse/Essentials-of-Compilation The rest of the lectures will cover advanced topics according to students interests, among other chapters of the book and papers. |
| Bemerkungen | Implementation and presentations will be done in teams of 2-3 students. Due to time limitations for presentations, a maximum of 20 students may register for the seminar, first-come first-served. |
| Teilnahmevoraussetzungen | Completed the equivalent of 2 years of Bachelor in Computer Science |
| Anmeldung zur Lehrveranstaltung | Access for synchronized courses on ADAM only by course registration in online services. |
| Unterrichtssprache | Englisch |
| Einsatz digitaler Medien | kein spezifischer Einsatz |
| Intervall | Wochentag | Zeit | Raum |
|---|---|---|---|
| wöchentlich | Montag | 12.15-14.00 | Spiegelgasse 1, Seminarraum 00.003 |
| Datum | Zeit | Raum |
|---|---|---|
| Montag 22.09.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 29.09.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 06.10.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 13.10.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 20.10.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 27.10.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 03.11.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 10.11.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 17.11.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 24.11.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 01.12.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 08.12.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Montag 15.12.2025 | 12.15-14.00 Uhr | Spiegelgasse 1, Seminarraum 00.003 |
| Module |
Modul: Applications and Related Topics (Bachelorstudium: Computer Science) Modul: Applications and Related Topics (Bachelor Studienfach: Computer Science) |
| Prüfung | Lehrveranst.-begleitend |
| Hinweise zur Prüfung | Evaluation will cover the followings: 1. Individual interviews (10%) 2. Quality and number of unit tests 2.1 Contributed in common pool (10%) 2.2 Passed by implementation (25%) 3. Presentation on advanced topic (10%) 4. Review of other presentations (5%) 5. Final report on advanced topic project (40%) |
| An-/Abmeldung zur Prüfung | Anm.: Belegen Lehrveranstaltung; Abm.: stornieren |
| Wiederholungsprüfung | keine Wiederholungsprüfung |
| Skala | 1-6 0,5 |
| Belegen bei Nichtbestehen | beliebig wiederholbar |
| Zuständige Fakultät | Philosophisch-Naturwissenschaftliche Fakultät, studiendekanat-philnat@unibas.ch |
| Anbietende Organisationseinheit | Fachbereich Informatik |