dc.contributor.author | Γκούμας, Βασίλειος | el |
dc.contributor.author | Gkoumas, Vasileios | en |
dc.date.accessioned | 2019-09-06T10:04:37Z | |
dc.date.available | 2019-09-06T10:04:37Z | |
dc.date.issued | 2019-09-06 | |
dc.identifier.uri | https://dspace.lib.ntua.gr/xmlui/handle/123456789/49193 | |
dc.identifier.uri | http://dx.doi.org/10.26240/heal.ntua.16352 | |
dc.rights | Αναφορά Δημιουργού-Μη Εμπορική Χρήση-Όχι Παράγωγα Έργα 3.0 Ελλάδα | * |
dc.rights.uri | http://creativecommons.org/licenses/by-nc-nd/3.0/gr/ | * |
dc.subject | λ-λογισμός | el |
dc.subject | Haskell | el |
dc.subject | Μεταγλωττιστές | el |
dc.subject | Συστήματα τύπων | el |
dc.subject | Έξυπνα συμβόλαια | el |
dc.subject | Blockchain | el |
dc.subject | Αμοιβαία αναδρομικοί τύποι | el |
dc.subject | Lambda calculus | en |
dc.subject | Haskell | en |
dc.subject | Compilers | en |
dc.subject | Type systems | en |
dc.subject | Smart contracts | en |
dc.subject | Blockchain | en |
dc.subject | Mutually recursive types | en |
dc.title | Μεταγλώττιση αμοιβαία αναδρομικών τύπων σε μία συναρτησιακή γλώσσα έξυπνων συμβολαίων | el |
heal.type | bachelorThesis | |
heal.classification | Γλώσσες προγραμματισμού | el |
heal.language | en | |
heal.access | free | |
heal.recordProvider | ntua | el |
heal.publicationDate | 2019-03-26 | |
heal.abstract | In this diploma thesis we present FIR, a functional intermediate representation, heavily influenced by the System Fw, that can be used during the compilation step from a high-level source language to a target l anguage. FIR has support for higher-order features like type-level functions, polymorphism, and can encode mutually recursive datatypes. The techniques that we use, although known in the literature, have not been combined in that way before. FIR is not a purely academic exploration, but is used in the development of Plutus, a smart contract platform, as an intermediate representation in the compilation of the Haskell code written by the enduser, to a lower-level language that goes into the blockchain. We will start by providing the motivation for our work, which is a safe blockchain language. After presenting the syntax and type synthesis in FIR, we will focus on the compilation of certain features of the language to System Fωμ , a theoretical extension of lambda calculus. | en |
heal.abstract | Στην εργασία αυτή θα παρουσιάσουμε την FIR, μια συναρτησιακή ενδιάμεση αναπαράσταση, στενά συνδεδεμένη με τον λ-λογισμό, που μπορεί να χρησιμοποιηθεί κατά την μεταγλώττιση των προγραμ- μάτων από μία γλώσσα υψηλού επιπέδου σε μία γλώσσα στόχο. Η FIR υποστηρίζει χαρακτηριστικά υψηλότερης τάξης, όπως οι συναρτήσεις τύπων και ο πολυμορφισμός και έχει μπορεί να κωδικο- ποιήσει για αναδρομικούς τύπους δεδομένων. Οι τεχνικές που θα χρησιμοποιήσουμε, παρόλο που μπορούν να εντοπιστούν στην βιβλιογραφία, δεν έχουν συνδυαστεί ξανά κατά αυτόν τον τρόπο. Η FIR δεν αποτελεί μια καθαρά ακαδημαική άσκηση, καθώς χρησιμοποιείται στην ανάπτυξη του Plutus, μιας αρχιτεκτονικής για smart contracts ως ενδιάμεσο βήμα κατά την μεταγλώττιση του κώδικα Haskell που γράφει ο τελικός χρήστης, σε μια γλώσσα χαμηλού επιπέδου, που στη συνέχεια εκτελείται στο blockchain. Αρχικά θα δώσουμε το κίνητρο για όσα θα κάνουμε, την ανάπτυξη μιας ασφαλούς γλώσσας για χρήση στο blockchain. Αφού παρουσιάσουμε το συντακτικό και την σύνθεση τύπων της FIR, θα επικεντρωθούμε στην μεταγλώττιση ορισμένων χαρακτηριστικών της στην System Fωμ , μια θεωρητική επέκταση του απλού λ-λογισμού. | el |
heal.advisorName | Παπασπύρου, Νικόλαος | el |
heal.committeeMemberName | Παγουρτζής, Αριστείδης | el |
heal.committeeMemberName | Γκούμας, Γεώργιος | el |
heal.academicPublisher | Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών | el |
heal.academicPublisherID | ntua | |
heal.numberOfPages | 44 σ. | |
heal.fullTextAvailability | true |
The following license files are associated with this item: