Model-driven Pretty Printer for Xtext Framework
Model-driven Pretty Printer for Xtext Framework
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/59306Identifikátory
SIS: 117262
Kolekce
- Kvalifikační práce [10690]
Autor
Vedoucí práce
Oponent práce
Čermák, Miroslav
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra distribuovaných a spolehlivých systémů
Datum obhajoby
21. 1. 2013
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
eclipse, xtext, formátovač kódu, modelem řízený vývoj, doménově specifický jazykKlíčová slova (anglicky)
eclipse, xtext, pretty printer, model-driven development, domain-specific languageDoménově specifický jazyk slouží k popisu problémů v doméně, pro níž byl vytvořen. Tento fakt implikuje existenci velkého množství jazyků tohoto druhu. Používání doménově specifických jazyků přináší s sebou potřebu tyto jazyky formátovat a zvýrazňovat jejich syntaxi. Jedním z nástrojů, které umožňují tvorbu doménově specifických jazyků, je prostředí Xtext, který nabízí pouze omezenou paletu nástrojů umožňující nadefinovat formátování kódu a jeho zvýraznění. Navíc jsou tyto nástroje pro uživatele těžko pochopitelné, jelikož jsou nepřehledné a vyžadují znalosti vnitřních záležitostí prostředí Xtext. Proto tato práce představuje nový způsob formátovaní a zvýrazňování kódu pro prostředí Xtext, který je založen na deklarativní definici formátovacích pravidel. Kromě toho tato práce pomáhá uživateli s tvorbou formátovacích pravidel na základě netriviálních heuristik.
The domain-specific language allows for describing problems of a concrete domain, for which the language is created. This fact implies that a number of languages of this kind grows with a number of problem domains. The use of domain-specific languages brings a necessity to pretty-print these languages, where the concept of pretty-printing consists of code formatting and syntax highlighting. One of tools that allow for creating domain-specific languages is the Xtext framework, which offers only a limited range of tools that are able to define a configuration for pretty-printing. Moreover, these tools are hardly understandable because they are confusing and requires knowledge of Xtext's internals. Thus this thesis introduces a new way of pretty-printing domain-specific languages. The way is based on declarative definition of formatting rules. Furthermore, this thesis helps a user to create formatting rules by utilizing nontrivial heuristics.