Παρακαλώ χρησιμοποιήστε αυτό το αναγνωριστικό για να παραπέμψετε ή να δημιουργήσετε σύνδεσμο προς αυτό το τεκμήριο:
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.ps | 837.13 kB | Postscript | Εμφάνιση/Άνοιγμα |
Όλα τα τεκμήρια του δικτυακού τόπου προστατεύονται από πνευματικά δικαιώματα.