5ο εξάμηνο


Μάθημα: Μεταγλωττιστές



Τίτλος μαθήματος Μεταγλωττιστές
Κωδικός μαθήματος ΜΚ39
Είδος μαθήματος Υποχρεωτικό
Επίπεδο μαθήματος Προπτυχιακό
Έτος σπουδών 3
Εξάμηνο 5ο
Πιστωτικές μονάδες ECTS 5
Ιστοσελίδα http://eclass.uowm.gr/courses/ICTE282/
Ώρες ανά εβδομάδα 4
Διδάσκων Νικόλαος Πλόσκας (Επίκουρος Καθηγητής)
Περιεχόμενο μαθήματος Εισαγωγή, Γλώσσες με δομή block, Στατική και δυναμική εμβέλεια, Συναρτήσεις και υποπρογράμματα, Κανόνες εμβέλειας, Διαχείριση μνήμης, Λεξική δομή γλωσσών προγραμματισμού, Λεξική ανάλυση, Γεννήτριες κώδικα, Σύνταξη γλωσσών προγραμματισμού, Συντακτική ανάλυση: καθοδική και ανοδική, Σημασία γλωσσών προγραμματισμού: αξιωματική, δηλωτική και λειτουργική σημασία, Σημασιολογική ανάλυση: γραμματικές ιδιοτήτων και πίνακας συμβόλων, Παραγωγή-σύνθεση κώδικα: ενδιάμεσος κώδικας και κώδικας μηχανής, Συστήματα τύπων, Απεικόνιση τύπων και δεδομένων στη μνήμη.
Αναμενόμενα μαθησιακά αποτελέσματα και δεξιότητες Οι φοιτητές αναμένεται ότι στα πλαίσια του μαθήματος θα:
  • εξοικειωθούν με μία κριτική προσέγγιση των γλωσσών προγραμματισμού μέσα από τη συγκριτική ανάλυση των χαρακτηριστικών τους
  • κατανοήσουν τις αντικρουόμενες επιλογές σχεδίασης γλωσσών προγραμματισμού και το πώς αυτές επηρεάζουν την αποδοχή τους
  • κατανοήσουν τις τάσεις στη χρήση γλωσσών προγραμματισμού ώστε να είναι προετοιμασμένοι για νέες προγραμματιστικές μεθόδους, υποδείγματα και εργαλεία
  • γνωρίσουν όλο τον κύκλο σχεδίασης γλωσσών προγραμματισμού
  • αποκτήσουν εμπειρία υλοποίησης μεταγλωττιστή
  • Γενικές Ικανότητες:
  • Εφαρμογή της γνώσης στην πράξη
  • Προσαρμογή σε νέες καταστάσεις
  • Λήψη αποφάσεων
  • Αυτόνομη εργασία
  • Ομαδική εργασία
  • Άσκηση κριτικής και αυτοκριτικής
  • Προαγωγή της ελεύθερης, δημιουργικής και επαγωγικής σκέψης
Προαπαιτούμενα μαθήματα Απαιτούνται γνώσεις από το μάθημα:
  • Θεωρία πολυπλοκότητας
Μέθοδοι διδασκαλίας Διαλέξεις, φροντιστηριακές ασκήσεις
Αξιολόγηση Ενδιάμεση γραπτή εξέταση (25%), τελική εξέταση (75%)
Γλώσσα διδασκαλίας Ελληνική
Βιβλιογραφία
  • Παπασπύρου Νικόλαος Σ., Σκορδαλάκης Εμμανουήλ Σ., Μεταγλωττιστές, Σ.ΑΘΑΝΑΣΟΠΟΥΛΟΣ, 1η έκδ./2002.
  • Κ. Λάζος, Π. Κατσαρός, Ζ. Καραϊσκος, Μεταγλωττιστές Γλωσσών Προγραμματισμού: Θεωρία & Πράξη, 3η έκδοση/2004, ISBN: 960-87723-4-6
  • M. L. Scott, Πραγματολογία Γλωσσών Προγραμματισμού, 2η έκδοση/2009, Εκδόσεις Κλειδάριθμος, ISBN: 978-960-461-230-7
  • J. C. Mitchell, Concepts in Programming Languages, 1st edition/2002, Cambridge University Press, ISBN: 978-0521780988
  • A. V. Aho, M. S. Lam, R. Sethi, J. D. Ullman, Compilers: Principles, Techniques, and Tools, 2nd edition/2006, Addison Wesley, ISBN: 978-0321486813
  • R. W. Sebesta, Concepts of Programming Languages, 10th edition/2012, Addison-Wesley, ISBN: 978-0131395312


Διδάσκων: Πλόσκας Νικόλαος