Το μάθημα έχει ως στόχο τη μελέτη των βασικών εννοιών και μοντέλων που σχετίζονται με το σχεδιασμό και την υλοποίηση γλωσσών προγραμματισμού. Η ύλη περιλαμβάνει μια σύντομη εισαγωγή στις διάφορες οικογένειες γλωσσών προγραμματισμού, θέματα σχεδιασμού των γλωσσών προγραμματισμού, αρχές σύνταξης και συντακτικής ανάλυσης, δεδομένα και πράξεις. Εισαγωγή στις συναρτησιακές γλώσσες με αυστηρό σύστημα τύπων με χρήση κάποιας αντίστοιχης γλώσσας (φέτος ML). Συμπερασμός τύπων και πολυμορφισμός. Ονόματα και εμβέλεια. Εγγραφές δραστηριοποίησης. Εισαγωγή στον αντικειμενοστρεφή προγραμματισμό με χρήση κάποιας αντίστοιχης γλώσσας (Java). Διαχείριση μνήμης. Μηχανισμοί χειρισμού εξαιρέσεων. Παράμετροι και πέρασμα παραμέτρων. Εισαγωγή στις γλώσσες λογικού προγραμματισμού και στη θεωρητική τους θεμελίωση με χρήση της γλώσσας Prolog. Εισαγωγή στις Γλώσσες σεναρίων (scripting languages) και παρουσίαση των κύριων χαρακτηριστικών κάποιας σχετικής γλώσσας (φέτος Python).
- Διδάσκων: Ζωη Παρασκευοπουλου
- Διδάσκων: Πετρος Ποτικας
- Διδάσκων: Κωνσταντίνος Σαγώνας