Παρακαλώ χρησιμοποιήστε αυτό το αναγνωριστικό για να παραπέμψετε ή να δημιουργήσετε σύνδεσμο προς αυτό το τεκμήριο: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13876
Τίτλος: Σχεδίαση, Σημασιολογική Περιγραφή Και Υλοποίηση Της Γλώσσας Προγραμματισμού Cantor
Συγγραφείς: Κυριάκος Γ. Γκίνης
Παπασπύρου Νικόλαος
Λέξεις κλειδιά: σημασιολογία γλωσσών προγραμματισμού
συναρτησιακός προγραμματισμός
haskell
μονάδες
διερμηνέας
μεταγλωττιστής
ελεγκτής τύπων
g-machine
Ημερομηνία έκδοσης: 25-Ιου-2003
Περίληψη: Ο σκοπός της εργασίας ήταν η σχεδίαση μιας μικρής αλλά ιδιαίτερα εκφραστικής συναρτησιακής γλώσσας προγραμματισμού, η τυπικήπεριγραφή της σημασιολογίας της και η κατασκευή ενός διερμηνέακαι ενός μεταγλωττιστή για αυτήν. Συγκεκριμένα, σχεδιάστηκε ηγλώσσα Cantor, τα κυριότερα χαρακτηριστικά της οποίας είναι οισυναρτήσεις υψηλής τάξης με δυνατότητα κλήσης με όνομα και μετιμή, οι τοπικές μεταβλητές με δυνατότητα ανάθεσης, οι εγγραφές(records) των οποίων τα πεδία μπορούν να έχουν τύπο συνάρτησης,και η αναδρομή. Τα χαρακτηριστικά αυτά έχουν ενσωματωθεί στηγλώσσα Cantor με τέτοιο τρόπο ώστε να είναι κατά το δυνατόορθογώνια.Αφού ορίστηκε η σημασιολογία τύπων της Cantor, το σύστημα τύπωντης οποίας επιτρέπει τον πλήρη στατικό έλεγχο των προγραμμάτων,υλοποιήθηκε ο ελεγκτής τύπων. Η υλοποίηση αυτή όπως και οιυλοποιήσεις των υπόλοιπων τμημάτων της εργασίας, έγινε στη γλώσσαHaskell και βασίζεται στη χρήση μονάδων. Στη συνέχεια ορίστηκε ηδυναμική σημασιολογία της Cantor με τη βοήθεια μονάδων καιυλοποιήθηκε ένας διερμηνέας μέσω απλής κωδικοποίησης τηςσημασιολογίας αυτής σε Haskell. To επόμενο στάδιο της εργασίαςήταν η κατασκευή ενός μεταγλωττιστή για την Cantor. Ομεταγλωττιστής που κατασκευάστηκε παράγει κώδικα για μια παραλλαγήτης αφηρημένης μηχανής υπολογισμού G-machine. Προκειμένου ναδοκιμαστεί η ορθότητα του μεταγλωττιστή, κατασκευάστηκε και έναςδιερμηνέας για τον κώδικα G-machine.Κατά τη διάρκεια της εργασίας έγινε φανερή αφενός η χρησιμότητατων μονάδων τόσο στη φάση του ορισμού της δυναμικήςσημασιολογίας όσο και στη φάση της υλοποίησης μιας γλώσσαςπρογραμματισμού, αφετέρου το γεγονός ότι μια συναρτησιακή γλώσσαόπως η Haskell που υποστηρίζει μονάδες είναι ιδιαίτερα κατάλληληγια την υλοποίηση διερμηνέων και μεταγλωττιστών.
URI: http://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13876
Εμφανίζεται στις συλλογές:Διπλωματικές Εργασίες - Theses

Αρχεία σε αυτό το τεκμήριο:
Αρχείο ΜέγεθοςΜορφότυπος 
DT2003-0101.ps837.13 kBPostscriptΕμφάνιση/Άνοιγμα


Όλα τα τεκμήρια του δικτυακού τόπου προστατεύονται από πνευματικά δικαιώματα.