Název:
Generátor nástrojů pro doménově specifické jazyky
Překlad názvu:
Tools Generator for Domain-Specific Languages
Autoři:
Kosík, Daniel ; Regéciová, Dominika (oponent) ; Křivka, Zbyněk (vedoucí práce) Typ dokumentu: Bakalářské práce
Rok:
2024
Jazyk:
eng
Nakladatel: Vysoké učení technické v Brně. Fakulta informačních technologií
Abstrakt: [eng][cze]
DSL Tools Generator je nástroj pro zjednodušení vývoje doménově specifických jazyků generováním částí jejich implementace (např. abstraktního syntaktického stromu) v jazyce C# a nástrojů pro použití daného jazyka v editorech kódu. Podle zadané gramatiky a konfiguračního souboru vygeneruje implementaci serveru pro Language Server Protocol a rozšíření pro Visual Studio Code, které poskytuje zvýrazňování syntaxe a syntaktických chyb a základní doplňování kódu. Výsledkem práce je nástroj, který dokáže podstatně zkrátit čas a snížit úsilí potřebné k vytvoření doménově specifického jazyka s podporou v editorech kódu.
DSL Tools Generator is a tool for simplifying the development of domain-specific languages by generating parts of their implementation (e.g. abstract syntax tree) in C# and tools for using the language in a code editor. Based on an ANTLR4 grammar and a DSL configuration file, it generates a server implementation for the Language Server Protocol and a language support extension for Visual Studio Code that provides syntax highlighting, error reporting, and basic code completion functionality. The developed tool can significantly reduce the time and effort required for building a DSL with editor support.
Klíčová slova:
C#; code editor; code generation; domain-specific language; Language Server Protocol; regular expression; syntax highlighting; TextMate grammar; Visual Studio Code; C#; doménově specifický jazyk; editor kódu; generování kódu; Language Server Protocol; regulární výraz; TextMate; Visual Studio Code; zvýrazňování syntaxe
Instituce: Vysoké učení technické v Brně
(web)
Informace o dostupnosti dokumentu:
Plný text je dostupný v Digitální knihovně VUT. Původní záznam: https://hdl.handle.net/11012/246604