Proceedings ArticleDOI
Xtext: implement your language faster than the quick and dirty way
Moritz Eysholdt,Heiko Behrens +1 more
- pp 307-309
Reads0
Chats0
TLDR
This tutorial explains how to define a language and a statically typed, EMF-based Abstract Syntax Tree using only a grammar, and shows how literally every as- pects of the language and its complementary tool support can be customized using Dependency Injection.Abstract:
Whether there is an (emerging or legacy) Domain-Specific Language to increase the expressiveness of your coworkers or whether you are about to invent a new General Purpose Prgramming Language: Tool support that goes beyond a parser/compiler is essential to make other people adopt your language and to be more productive. Xtext is an award- winning framework to build such tooling.In this tutorial we explain how to define a language and a statically typed, EMF-based Abstract Syntax Tree using only a grammar. We then generate a parser, a serializer and a smart editor from it. The editor provides many features out-of-the-box, such as syntax highlighting, content-assist, folding, jump-to-declaration and reverse-reference lookup across multiple files. Then, it is shown how literally every as- pects of the language and its complementary tool support can be customized using Dependency Injection, especially how this can be done for linking, formatting and validation. As an outlook, we will demonstrate how to integrate a custom language with Java, how Xtext maintains a workspace-wide index of named elements and how to implement incremental code generation or attach an interpreter.read more
Citations
More filters
Journal ArticleDOI
A comprehensive approach to privacy in the cloud-based Internet of Things
TL;DR: This work allows an individual user to enforce all her privacy requirements before any sensitive data is uploaded to the cloud, enables developers of cloud services to integrate privacy functionality already into the development process of cloud Services, and offers users a transparent and adaptable interface for configuring their privacy requirements.
Book ChapterDOI
The State of the Art in Language Workbenches. Conclusions from the Language Workbench Challenge
Sebastian Erdweg,Tijs van der Storm,Tijs van der Storm,Markus Völter,Meinte Boersma,Remi Bosman,William R. Cook,Albert Gerritsen,Angelo Hulshout,Steven Kelly,Alex Loh,Gabriël D. P. Konat,Pedro J. Molina,Martin Palatnik,Risto Pohjonen,Eugen Schindler,Klemens Schindler,Riccardo Solmi,Vlad Vergu,Eelco Visser,Kevin van der Vlist,Guido Wachsmuth,Jimi van der Woning +22 more
TL;DR: The 2013 Language Workbench Challenge as discussed by the authors was the first edition of the LWC challenge, where participants were challenged to realize a given domain-specific language with their workbench as a basis for discussion and comparison.
Journal ArticleDOI
Evaluating and comparing language workbenches
Sebastian Erdweg,Tijs van der Storm,Markus Völter,Laurence Tratt,Remi Bosman,William R. Cook,Albert Gerritsen,Angelo Hulshout,Steven Kelly,Alex Loh,Gabriël D. P. Konat,Pedro J. Molina,Martin Palatnik,Risto Pohjonen,Eugen Schindler,Klemens Schindler,Riccardo Solmi,Vlad Vergu,Eelco Visser,Kevin van der Vlist,Guido Wachsmuth,Jimi van der Woning +21 more
TL;DR: A feature model is established that captures the design space of language workbenches and is presented as a generic feature model within which the approaches can be understood and contrasted.
AToMPM: A Web-based Modeling Environment.
Eugene Syriani,Hans Vangheluwe,Raphael Mannadiar,Conner Hansen,Simon Van Mierlo,Huseyin Ergin +5 more
TL;DR: This work introduces AToMPM, an open-source framework for designing domain-specific modeling environments, performing model transformations, manipulating and managing models, which is independent from any operating system, platform, or device it may execute on.
Proceedings ArticleDOI
Protelis: practical aggregate programming
TL;DR: Protelis is introduced, a functional language based on computational fields and embedded in Java, thereby enabling the construction of widely reusable components of aggregate systems and demonstrating the simplicity of Protelis integration and programming.
References
More filters
Book
Domain-specific languages
TL;DR: This book covers a variety of different techniques available for DSLs and can be used with whatever programming language you happen to be using, most of the examples are in Java or C#.
BookDOI
Model-Driven Software Development
Sami Beydeda,Volker Gruhn +1 more
TL;DR: Part I - Conceptual Foundations of Model-Driven Development Models, Modeling, and Model- Driven Architecture A Systematic Lool at Model Transformations and a Generalized Notion of Platforms for Model Driven Development.
Journal ArticleDOI
Domain Specific Languages
Aruna Raja,Devika Lakshmanan +1 more
TL;DR: A number of DSLs spanning various phases of software development life cycle in terms of features that elucidates their advantages over general purpose languages and perform in depth study by practically applying a few open source DSLs: ‘Cascading’, Naked Objects Framework and RSpec.
Proceedings ArticleDOI
Migrating a large modeling environment from XML/UML to Xtext/GMF
TL;DR: VSA (Verrechnungsstelle der Süddeutschen Apotheken GmbH, one of the most well-known billing centers for pharmacies in Germany) migrated their inhouse modeling environment and their existing models from UML to an Eclipse Modeling based solution, which describes the old modeling environment, addresses the challenges of the migration and outlines the new modeling environment.