Domain-specific languages
Thesis title: | Domain-specific languages |
---|---|
Author: | Jasný, Vojtěch |
Thesis type: | Diploma thesis |
Supervisor: | Pavlíček, Luboš |
Opponents: | Pecinovský, Rudolf |
Thesis language: | English |
Abstract: | The topic of the thesis are domain-specific languages (DSL) and their use in software development. The target audience are developers interested in learning more about this progressive area of software development. It starts with a necessary theoretical introduction to programming languages. Then, a classification of DSLs is given and software development methodologies based on DSLs are described, notably Language Oriented Programming and Intentional Programming. Another important piece in construction of domain-specific langauges -- the language workbench is also described. In the next chapter, several important tools for DSL creation are presented, described and compared. Each of the tools represents a different possible approach to designing DSLs -- textual, projectional or graphical. The last chapter of the thesis contains a practical example of a DSL implementation in the Meta Programming System by Jet- Brains and Xtext from Eclipse. A domain-specific language for the description of questionnaires is designed from scratch and a code generator for that language is created. A comparison of the DSL based technique to traditional software development techniques is given and the tools used are compared. |
Keywords: | domain; domain-specific modelling; language oriented programming; language workbenches; domain-specific languages; intentional programming |
Thesis title: | Domain-specific languages |
---|---|
Author: | Jasný, Vojtěch |
Thesis type: | Diplomová práce |
Supervisor: | Pavlíček, Luboš |
Opponents: | Pecinovský, Rudolf |
Thesis language: | English |
Abstract: | Diplomová práce se věnuje doménově specifickým jazykům (DSL) a jejich užití v oblasti vývoje software. Cílovým publikem by pak měli být zejména vývojáři, kteří se chtějí dozvědět více o tomto progresivním novém směru vývoje software. Práce obsahuje nutný teoretický úvod do oblasti programovacích jazyků a jejich vývoje. Dále je nastíněna klasifikace těchto jazyků a jsou popsány metodologie založené na DSL, zejména Language Oriented Programming a Intentional Programming. Je vysvětlen důležitý pojem pro vývoj DSL -- typ nástroje zvaný language workbench. Následně se práce přesouvá k popisu dostupných nástrojů pro tvorbu DSL. Každý z popisovaných nástrojů reprezentuje rozdílný přístup k vývoj DSL -- projekční, textový nebo grafický. Poslední kapitola diplomové práce obsahuje praktický příklad implementace DSL ve dvou nástrojích: Meta Programming System od firmy JetBrains a Xtext, který je součástí projektu Eclipse. Navrhovaný DSL je určen k popisu strukturovaných dotazníků. Technika řešení založená na DSL je porovnávána s tradičními metodikami a je provedeno srovnání obou použitých nástrojů. |
Keywords: | intentional programming; domain-specific modelling; language oriented programming; doména; domain-specific jazyky; language workbench |
Information about study
Study programme: | Aplikovaná informatika/Informační systémy a technologie |
---|---|
Type of study programme: | Magisterský studijní program |
Assigned degree: | Ing. |
Institutions assigning academic degree: | Vysoká škola ekonomická v Praze |
Faculty: | Faculty of Informatics and Statistics |
Department: | Department of Information Technologies |
Information on submission and defense
Date of assignment: | 17. 2. 2009 |
---|---|
Date of submission: | 1. 12. 2009 |
Date of defense: | 11. 2. 2010 |
Identifier in the InSIS system: | https://insis.vse.cz/zp/18827/podrobnosti |