dc.contributor.author | Μαυρογεώργης, Νικόλαος | el |
dc.contributor.author | Mavrogeorgis, Nikolaos | en |
dc.date.accessioned | 2020-10-02T06:18:50Z | |
dc.date.available | 2020-10-02T06:18:50Z | |
dc.identifier.uri | https://dspace.lib.ntua.gr/xmlui/handle/123456789/51235 | |
dc.identifier.uri | http://dx.doi.org/10.26240/heal.ntua.18933 | |
dc.rights | Αναφορά Δημιουργού - Παρόμοια Διανομή 3.0 Ελλάδα | * |
dc.rights.uri | http://creativecommons.org/licenses/by-sa/3.0/gr/ | * |
dc.subject | Συντακτική ανάλυση Packrat | el |
dc.subject | Γεννήτορες συντακτικών αναλυτών | el |
dc.subject | Παράλληλη εκτέλεση | el |
dc.subject | Packrat parsing | en |
dc.subject | Parsing expression grammars | en |
dc.subject | Parser generators | en |
dc.subject | Parallel Execution | en |
dc.title | Μελέτη και βελτίωση της επίδοσης του συντακτικού αναλυτή Packrat | el |
heal.type | bachelorThesis | |
heal.classification | Μηχανική Υπολογιστών | el |
heal.classification | Computer Engineering | en |
heal.language | el | |
heal.access | free | |
heal.recordProvider | ntua | el |
heal.publicationDate | 2020-07-03 | |
heal.abstract | Πρακτικά όλες οι γλώσσες, είτε φυσικές είτε γλώσσες μηχανής, βασίζονται στην έκφραση της πληροφορίας με γραμμικό τρόπο. Συνήθως η αναπαράσταση γίνεται με τη μορφή μίας συμβολοσειράς, που είναι μια ακολουθία χαρακτήρων από ένα τυποποιημένο σύνολο. Οποιαδήποτε εφαρμογή επεξεργασίας γλώσσας πρέπει να μετατρέψει τις συμβολοσειρές σε πιο αφηρημένες δομές όπως λέξεις, φράσεις, προτάσεις, εκφράσεις ή εντολές. Συντακτική ανάλυση (parsing) είναι η διαδικασία που εξάγει χρήσιμη δομημένη πληροφορία από γραμμικό κείμενο. Το packrat parsing είναι μία τεχνική συντακτικής ανάλυσης που βασίζεται στις parsing expression grammars (PEGs), μία παραλλαγή των γραμματικών χωρίς συμφραζόμενα. Ένας packrat parser παρέχει την ισχύ και την απλότητα των καθοδικών συντακτικών αναλυτών, ωστόσο εγγυάται γραμμικό χρόνο εκτέλεσης. Οποιαδήποτε γλώσσα που ορίζεται από μία LL(k) ή LR(k) γραμματική μπορεί να αναγνωριστεί από έναν packrat parser, καθώς και πολλές άλλες γλώσσες που οι συμβατικοί αλγόριθμοι γραμμικού χρόνου δεν υποστηρίζουν. Σκοπός της παρούσας εργασίας είναι αφενός η υλοποίηση ενός συντακτικού αναλυτή packrat στη κλασική του μορφή, αφετέρου η βελτίωση της επίδοσής του είτε τροποποιώντας τον αρχικό αλγόριθμο, είτε παραλληλοποιώντας τον ώστε να τρέξει αποδοτικότερα σε ένα πολυπύρηνο σύστημα. | el |
heal.abstract | Practically all languages, either natural or artificial languages, are based on expressing information in a linear way. Usually, this representation is a string, which is a sequence of characters from a fixed set. Every language processing application must convert these strings into more abstract structures like words, phrases, sentences, expressions or instructions. Parsing is the process of extracting useful structured information from linear text. Packrat parsing is a parsing technique based on parsing expression grammars (PEGs), a variation of context-free grammars. A packrat parser provides the power and flexibility of top-down parsing with backtracking and unlimited lookahead, but nevertheless guarantees linear parse time. Any language defined by an LL(k) or LR(k) grammar can be recognized by a packrat parser, in addition to many languages that conventional linear-time algorithms do not support. The purpose of this diploma dissertation is on one hand the implementation of a packrat parser in its original version, and on the other hand to improve its performance, either through modifications to the standard version of the algorithm, or through parallelizing it in order to improve execution time in a multicore machine. | en |
heal.advisorName | Παπασπύρου, Νικόλαος | el |
heal.committeeMemberName | Φωτάκης, Δημήτρης | el |
heal.committeeMemberName | Γκούμας, Γεώργιος | el |
heal.academicPublisher | Εθνικό Μετσόβιο Πολυτεχνείο. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών. Τομέας Τεχνολογίας Πληροφορικής και Υπολογιστών.Softlab | el |
heal.academicPublisherID | ntua | |
heal.numberOfPages | 60 σ. | el |
heal.fullTextAvailability | false |
Οι παρακάτω άδειες σχετίζονται με αυτό το τεκμήριο: