Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13876
Full metadata record
DC FieldValueLanguage
dc.contributor.authorΚυριάκος Γ. Γκίνης
dc.date.accessioned2018-07-23T14:22:59Z-
dc.date.available2018-07-23T14:22:59Z-
dc.date.issued2003-7-25
dc.date.submitted2003-12-23
dc.identifier.urihttp://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13876-
dc.description.abstractΟ σκοπός της εργασίας ήταν η σχεδίαση μιας μικρής αλλά ιδιαίτερα εκφραστικής συναρτησιακής γλώσσας προγραμματισμού, η τυπικήπεριγραφή της σημασιολογίας της και η κατασκευή ενός διερμηνέακαι ενός μεταγλωττιστή για αυτήν. Συγκεκριμένα, σχεδιάστηκε ηγλώσσα Cantor, τα κυριότερα χαρακτηριστικά της οποίας είναι οισυναρτήσεις υψηλής τάξης με δυνατότητα κλήσης με όνομα και μετιμή, οι τοπικές μεταβλητές με δυνατότητα ανάθεσης, οι εγγραφές(records) των οποίων τα πεδία μπορούν να έχουν τύπο συνάρτησης,και η αναδρομή. Τα χαρακτηριστικά αυτά έχουν ενσωματωθεί στηγλώσσα Cantor με τέτοιο τρόπο ώστε να είναι κατά το δυνατόορθογώνια.Αφού ορίστηκε η σημασιολογία τύπων της Cantor, το σύστημα τύπωντης οποίας επιτρέπει τον πλήρη στατικό έλεγχο των προγραμμάτων,υλοποιήθηκε ο ελεγκτής τύπων. Η υλοποίηση αυτή όπως και οιυλοποιήσεις των υπόλοιπων τμημάτων της εργασίας, έγινε στη γλώσσαHaskell και βασίζεται στη χρήση μονάδων. Στη συνέχεια ορίστηκε ηδυναμική σημασιολογία της Cantor με τη βοήθεια μονάδων καιυλοποιήθηκε ένας διερμηνέας μέσω απλής κωδικοποίησης τηςσημασιολογίας αυτής σε Haskell. To επόμενο στάδιο της εργασίαςήταν η κατασκευή ενός μεταγλωττιστή για την Cantor. Ομεταγλωττιστής που κατασκευάστηκε παράγει κώδικα για μια παραλλαγήτης αφηρημένης μηχανής υπολογισμού G-machine. Προκειμένου ναδοκιμαστεί η ορθότητα του μεταγλωττιστή, κατασκευάστηκε και έναςδιερμηνέας για τον κώδικα G-machine.Κατά τη διάρκεια της εργασίας έγινε φανερή αφενός η χρησιμότητατων μονάδων τόσο στη φάση του ορισμού της δυναμικήςσημασιολογίας όσο και στη φάση της υλοποίησης μιας γλώσσαςπρογραμματισμού, αφετέρου το γεγονός ότι μια συναρτησιακή γλώσσαόπως η Haskell που υποστηρίζει μονάδες είναι ιδιαίτερα κατάλληληγια την υλοποίηση διερμηνέων και μεταγλωττιστών.
dc.languageGreek
dc.subjectσημασιολογία γλωσσών προγραμματισμού
dc.subjectσυναρτησιακός προγραμματισμός
dc.subjecthaskell
dc.subjectμονάδες
dc.subjectδιερμηνέας
dc.subjectμεταγλωττιστής
dc.subjectελεγκτής τύπων
dc.subjectg-machine
dc.titleΣχεδίαση, Σημασιολογική Περιγραφή Και Υλοποίηση Της Γλώσσας Προγραμματισμού Cantor
dc.typeDiploma Thesis
dc.description.pages72
dc.contributor.supervisorΠαπασπύρου Νικόλαος
dc.departmentΤομέας Τεχνολογίας Πληροφορικής & Υπολογιστών
dc.organizationΕΜΠ, Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών
Appears in Collections:Διπλωματικές Εργασίες - Theses

Files in This Item:
File SizeFormat 
DT2003-0101.ps837.13 kBPostscriptView/Open


Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.