Title Extensible parsing with Earley virtual machines /
Translation of Title Earley virtualiųjų mašinų panaudojimas plečiamai programavimo kalbų sintaksinei analizei.
Authors Šaikūnas, Audrius
Full Text Download
Pages 172
Keywords [eng] Parsing ; extensible parsing ; scannerless parsing ; virtual machines ; programming languages
Abstract [eng] Reflectively extensible programming languages are programming languages, whose syntax (and/or semantics) can be extended without any direct compiler modifications. Specialized syntax analysis methods are needed to parse such languages. In this dissertation a new parsing method for parsing such languages is presented: Scannerless Earley virtual machine (SEVM). This method supports dynamically changing grammars with local (temporary) extensions, is scannerless, recognises all context-free grammars and allows language definition via grammar composition. SEVM is a virtual-machine based parser: it uses instruction sequences to represent grammars internally. These instructions are then interpreted (or executed using a just-in-time compiler) to drive overall parsing process. Much attention is given to SEVM optimisations to ensure acceptable parsing performance. In the final part of this thesis, the parsing performance of SEVM implementation is compared to other parser implementations that are used in practise. We found that SEVM offers acceptable parsing performance for practical application.
Dissertation Institution Vilniaus universitetas.
Type Doctoral thesis
Language English
Publication date 2019