HEAL DSpace

Αυτόματος έλεγχος λεκτικών αναλυτών

Αποθετήριο DSpace/Manakin

Εμφάνιση απλής εγγραφής

dc.contributor.author Ιωακειμίδη, Αθηνά el
dc.contributor.author Ioakeimidi, Athina en
dc.date.accessioned 2021-10-01T10:03:59Z
dc.date.available 2021-10-01T10:03:59Z
dc.identifier.uri https://dspace.lib.ntua.gr/xmlui/handle/123456789/53919
dc.identifier.uri http://dx.doi.org/10.26240/heal.ntua.21617
dc.rights Default License
dc.subject Έλεγχος ορθότητας el
dc.subject Test-case generation en
dc.subject Λεκτικός αναλυτής el
dc.subject Κανονικές εκφράσεις el
dc.subject Πεπερασμένα αυτόματα el
dc.subject Testing en
dc.subject Test-case generation en
dc.subject Lexical analyser en
dc.subject Regular expressions en
dc.subject Finite automata en
dc.title Αυτόματος έλεγχος λεκτικών αναλυτών el
dc.title Automated Testing for Lexical Analysers en
heal.type bachelorThesis
heal.classification Μεταγλωττιστές el
heal.classification Compilers en
heal.language el
heal.access free
heal.recordProvider ntua el
heal.publicationDate 2021-07-14
heal.abstract Σκοπός της παρούσας διπλωματικής εργασίας είναι η δημιουργία ενός εργαλείου που ελέγχει την ορθότητα μεταγλωττιστών και, πιο συγκεκριμένα, των λεκτικών αναλυτών. Οι μεταγλωττιστές είναι από τα πιο σημαντικά εργαλεία στην επιστήμη των υπολογιστών. Κάθε πρόγραμμα, για να καταλήξει σε μορφή που να εκτελείται από τον υπολογιστή, πρέπει πρώτα να έχει δεχτεί επεξεργασία από κάποιο μεταγλωττιστή. Αυτός ο μεταγλωττιστής είναι η μοναδική σύνδεση μεταξύ του κώδικα, που διαβάζει και γράφει εύκολα ένας προγραμματιστής, και του προγράμματος, που αναγνωρίζει και μπορεί να τρέξει ο υπολογιστής. Συνεπώς, οι μεταγλωττιστές είναι αναγκαίο και αναπόσπαστο κομμάτι του προγραμματισμού, γι’ αυτό και η εξασφάλιση της σωστής λειτουργίας τους είναι υψίστης σημασίας. Στην παρούσα διπλωματική εργασία ασχολούμαστε με το πρώτο μέρος ενός μεταγλωττιστή, το λεκτικό αναλυτή, και υλοποιούμε ένα εργαλείο για τον έλεγχό του. Ο έλεγχος αυτός θα γίνεται με τυχαία παραγωγή δοκιμαστικών εισόδων, «θετικών» και «αρνητικών», οι οποίες θα τροφοδοτούνται στο υπό έλεγχο πρόγραμμα για να μελετηθεί η ανταπόκρισή του. Η υλοποίηση θα γίνει στη γλώσσα Python, με τη χρήση κανονικών εκφράσεων, πεπερασμένων αυτομάτων και property-based testing. el
heal.abstract The purpose of this diploma thesis is the implementation of a testing tool for compilers and, specifically, for lexical analysers. Compilers are some of the most important tools in computer science. Every program, in order to become executable by a computer, needs to be processed by a compiler at first. This compiler is the only connection between the code, that a programmer can easily read and write, and the program, that a computer can recognise and run. As a result, compilers are an essential and integral part of programming. This is why the assurance of their correctness is of utmost importance. In this diploma thesis, we focus on the first part of a compiler, the lexical analyser, and build a testing tool for that. This testing will occur by generating random test-cases, positive and negative, which will then be inputted in the program under test, in order to check its response. The implementation will be in Python and will use regular expressions, finite automata and property-based testing. en
heal.advisorName Παπασπύρου, Νικόλαος el
heal.advisorName Papaspyrou, Nikolaos en
heal.committeeMemberName Παπασπύρου, Νικόλαος el
heal.committeeMemberName Σαγώνας, Κωνσταντίνος el
heal.committeeMemberName Γκούμας, Γεώργιος el
heal.academicPublisher Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών. Εργαστήριο Τεχνολογίας Λογισμικού el
heal.academicPublisherID ntua
heal.numberOfPages 53 σ. el
heal.fullTextAvailability false


Αρχεία σε αυτό το τεκμήριο

Αυτό το τεκμήριο εμφανίζεται στην ακόλουθη συλλογή(ές)

Εμφάνιση απλής εγγραφής