Τμήμα Πληροφορικής - Ιόνιο Πανεπιστήμιο

Μεταγλωττιστές

Εαρινό εξάμηνο 2023-24

Διδάσκων: Μ.Στεφανιδάκης

Το μάθημα των Μεταγλωττιστών

Οι «Μεταγλωττιστές» χρησιμοποιούν γνώσεις από διαφορετικά πεδία της επιστήμης των υπολογιστών: τους αλγορίθμους, τις γλώσσες προγραμματισμού και την αρχιτεκτονική των υπολογιστών. Ο σκοπός είναι ο σύνθετος μετασχηματισμός κειμένου σε κάποια διαφορετική μορφή, π.χ. από γλώσσα υψηλού επιπέδου σε εντολές μηχανής. Σήμερα, στην εποχή του AI και των ετερογενών υπολογιστικών μονάδων, απαιτούνται νέες γλώσσες προγραμματισμού ειδικού σκοπού και η κατασκευή μεταγλωττιστών είναι πιο επίκαιρη από ποτέ. Η μεταγλώττιση όμως σε κώδικα μηχανής δεν είναι ο μόνος σκοπός: οι τεχνικές των μεταγλωττιστών χρησιμοποιούνται σήμερα για την αποδοτική εξαγωγή και επεξεργασία κάθε είδους πληροφορίας από μεγάλα σύνολα δεδομένων.

Στο εργαστήριο των Μεταγλωττιστών γίνεται πρακτική εξάσκηση μέσω της γλώσσας Python στα παρακάτω θέματα: χρήση κανονικών εκφράσεων (regular expressions), λεκτική ανάλυση (scanning), συντακτική ανάλυση (parsing) (ad-hoc και μέσω βιβλιοθηκών).

Υλικό μαθήματος-εργαστηρίου

Δείτε το υλικό για το μάθημα και το εργαστήριο.

Ώρες μαθήματος-εργαστηρίου

Κάθε Δευτέρα 17:00-19:00 και Τετάρτη 13:00-15:00 στο Εργαστήριο «Γαληνός».

Βαθμολογία

Οι «Μεταγλωττιστές» είναι ένα μάθημα επιλογής με εργαστηριακό προσανατολισμό: θα πρέπει να ολοκληρώσετε μια σειρά από προγραμματιστικές εργασίες κατά τη διάρκεια του εξαμήνου.

Προσοχή: οι εργασίες είναι απαλλακτικές μόνο για το εξάμηνο κατά το οποίο παραδόθηκαν, εφόσον έχουν κατατεθεί όλες εμπρόθεσμα και υπό την προϋπόθεση της επιτυχίας (βαθμός ≥ 5) σε κάθε εργασία-άσκηση. Σε όλες τις άλλες περιπτώσεις η εξέταση του μαθήματος γίνεται γραπτά-εργαστηριακά.