Κωδικός:
Εξάμηνο:
Κατηγορία:
Ροή:
P1-6003
6ο
Υποχρεωτικό (Υ)
Ώρες:
Διδάσκοντες:
Σύνδεσμοι:
2 Θ – 1 ΑΠ/Φ – 1 Ε
Αικατερίνη Γεωργούλη (ΔΕΠ)
Στο πλαίσιο του μαθήματος διδάσκονται τα παρακάτω:
Εισαγωγή στους μεταφραστές, βασική δομή ενός μεταγλωττιστή, γραμματικές ανεξάρτητες συμφραζομένων, κανονικές εκφράσεις, πεπερασμένα αυτόματα, λεκτική ανάλυση, γεννήτριες λεκτικών αναλυτών (Flex), συντακτική ανάλυση, κανόνες παραγωγής, ασαφείς γραμματικές, προβλέπουσα καθοδική ανάλυση και αναδρομικότητα, ανοδική ανάλυση, γεννήτριες συντακτικών αναλυτών (Bison), σημασιολογική ανάλυση, έλεγχος τύπων, δημιουργία και βελτιστοποίηση ενδιάμεσου κώδικα και δημιουργία κώδικα χαμηλού επιπέδου.
Στο εργαστηριακό μέρος του μαθήματος ο σπουδαστής καλείται να σχεδιάσει μια καινούργια γλώσσα προγραμματισμού και να κατασκευάσει μέρη ενός μεταγλωττιστή για τη γλώσσα αυτή. Στο πλαίσιο αυτό, το εργαστήριο ασχολείται με:
Σχεδιασμό και υλοποίηση συντακτικού αναλυτή και συντακτικών δένδρων μέσω της γεννήτριας συντακτικών αναλυτών bison.