Ηλεκτρονική Διάθεση Μαθήματος
Μαθησιακά Αποτελέσματα
Οι φοιτητές αναμένεται ότι στα πλαίσια του μαθήματος θα
• εξοικειωθούν με μία κριτική προσέγγιση των γλωσσών προγραμματισμού μέσα από τη συγκριτική ανάλυση των χαρακτηριστικών τους
• κατανοήσουν τις αντικρουόμενες επιλογές σχεδίασης γλωσσών προγραμματισμού και το πώς αυτές επηρεάζουν την αποδοχή τους
• κατανοήσουν τις τάσεις στη χρήση γλωσσών προγραμματισμού ώστε να είναι προετοιμασμένοι για νέες προγραμματιστικές μεθόδους, υποδείγματα και εργαλεία
• γνωρίσουν όλο τον κύκλο σχεδίασης γλωσσών προγραμματισμού
• αποκτήσουν εμπειρία υλοποίησης μεταγλωττιστή
Περιεχόμενο Μαθήματος
Εισαγωγή, Γλώσσες με δομή block, Στατική και δυναμική εμβέλεια, Συναρτήσεις και υποπρογράμματα, Κανόνες εμβέλειας, Διαχείριση μνήμης, Λεξική δομή γλωσσών προγραμματισμού, Λεξική ανάλυση, Γεννήτριες κώδικα, Σύνταξη γλωσσών προγραμματισμού, Συντακτική ανάλυση: καθοδική και ανοδική, Σημασία γλωσσών προγραμματισμού: αξιωματική, δηλωτική και λειτουργική σημασία, Σημασιολογική ανάλυση: γραμματικές ιδιοτήτων και πίνακας συμβόλων, Παραγωγή-σύνθεση κώδικα: ενδιάμεσος κώδικας και κώδικας μηχανής, Συστήματα τύπων, Απεικόνιση τύπων και δεδομένων στη μνήμη
Λέξεις Κλειδιά
Γλώσσες με δομή block, Σύνταξη γλωσσών, Σημασία γλωσσών, Σύνθεση κώδικα, Συστήματα τύπων
Βιβλιογραφία μαθήματος (Εύδοξος)
1. Κ. Λάζος, Π. Κατσαρός, Ζ. Καραϊσκος, "Μεταγλωττιστές Γλωσσών Προγραμματισμού: Θεωρία & Πράξη", 3η έκδοση/2004, ISBN: 960-87723-4-6
Κωδικός Βιβλίου στον Εύδοξο: 68383471
2. R. W. Sebesta, "Αρχές Γλωσσών Προγραμματισμού", 11η έκδοση, Εκδόσεις Μ. Γκιούρδας, ISBN: 978-960-512-698-8, Κωδικός Βιβλίου στον Εύδοξο: 68369373
Επιπρόσθετη βιβλιογραφία για μελέτη
1. K. C. Louden, K. A. Lambert, "Programming Languages - Principles and Practice", 3rd edition/2011, Cengage Learning, ISBN: 978-1111529413
2. A. V. Aho, M. S. Lam, R. Sethi, J. D. Ullman, "Compilers: Principles, Techniques, and Tools", 2nd edition/2006, Addison Wesley, ISBN: 978-0321486813
3. A. B. Tucker, R. E. Noonan, "Programming Languages - Principles and Paradigms", 2nd edition/2007, McGraw Hill, ISBN: 978-0071254397
4. M. L. Scott, "Πραγματολογία Γλωσσών Προγραμματισμού", 2η έκδοση/2009, Εκδόσεις Κλειδάριθμος, ISBN: 978-960-461-230-7