Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/16509
Full metadata record
DC FieldValueLanguage
dc.contributor.authorΝικόλαος Βάθης
dc.date.accessioned2018-07-23T18:15:01Z-
dc.date.available2018-07-23T18:15:01Z-
dc.date.issued2012-12-4
dc.date.submitted2012-11-23
dc.identifier.urihttp://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/16509-
dc.description.abstractΟ προγραμματισμός ηλεκτρονικών υπολογιστών είναι μία επιστήμη που έχει γνωρίσει ραγδαία ανάπτυξη τις τελευταίες δεκαετίες. Τη σημερινή μέρα είναι εύκολο για τον οποιονδήποτε να γράψει κάποιο πρόγραμμα σε κάποια γλώσσα προγραμματισμού. Αντίθετα, οι τεχνικές απόδειξης οτι ένα πρόγραμμα όντως κάνει αυτό που θέλει ο προγραμματιστής δεν είναι εξίσου ανεπτυγμένες. Η πιο απλή μορφή απόδειξης για τη σωστή λειτουργία ενός προγράμματος είναι ο έλεγχος ορθότητας από ένα σύστημα τύπων. Σε αυτή τη διπλωματική κατασκευάζουμε ένα στατικό σύστημα τύπων που να εντοπίζει σφάλματα τύπου σε αντικειμενοστρεφείς γλώσσες προγραμματισμού με δυναμικό σύστημα τύπων. Στη συνέχεια, υλοποιούμε αυτό το σύστημα τύπων για ένα υποσύνολο της γλώσσας προγραμματισμού Ruby, το οποίο εν συνεχεία επεκτείνουμε ώστε να καλύψει μεγαλύτερο μέρος της γλώσσας Ruby.Το σύστημα τύπων που κατασκευάζουμε είναι βασισμένο στα Success Typings, τη θεωρία πίσω από το εργαλείο Dialyzer που βρίσκει σφάλματα τύπου σε προγράμματα της γλώσσας Erlang. Η βασική του ιδιότητα είναι οτι δεν υπάρχει περίπτωση να εντοπίσει σφάλμα σε πρόγραμμα το οποίο δεν έχει σφάλμα. Δηλαδή, εντοπίζει μόνο υπαρκτά σφάλματα. Το εργαλείο που εντοπίζει τα σφάλματα στο υποσύνολο της γλώσσας Ruby είναι εύκολο στη χρήση του, καθώς δεν χρειάζεται καμία υποσημείωση τύπων για να λειτουργήσει σωστά.Τέλος, παρουσιάζουμε μία βήμα προς βήμα σύγκριση με τον κύριο ανταγωνιστή στον εντοπισμό σφαλμάτων τύπου στη γλώσσα Ruby, Diamondback Ruby, σχολιάζοντας τις εξόδους των δύο εργαλείων.
dc.languageEnglish
dc.subjectστατική ανάλυση
dc.subjectέλεγχος τύπων
dc.subjectεντοπισμός σφαλμάτων
dc.subjectσύστημα τύπων
dc.subjectruby
dc.titleΣτατική Ανάλυση Για Έλεγχο Λαθών Στη Γλώσσα Ruby
dc.typeDiploma Thesis
dc.description.pages61
dc.contributor.supervisorΠαπασπύρου Νικόλαος
dc.departmentΤομέας Τεχνολογίας Πληροφορικής & Υπολογιστών
dc.organizationΕΜΠ, Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών
Appears in Collections:Διπλωματικές Εργασίες - Theses

Files in This Item:
File SizeFormat 
DT2012-0301.pdf493.46 kBAdobe PDFView/Open


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