scispace - formally typeset
Search or ask a question
Journal ArticleDOI

Domain Specific Languages

25 Feb 2010-International Journal of Computer Applications (Foundation of Computer Science FCS)-Vol. 1, Iss: 21, pp 105-111
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.
Abstract: To match the needs of the fast paced generation, the speed of computing has also increased enormously. But, there is a limit to which the processor speed can be amplified. Hence in order to increase productivity, there is a need to change focus from processing time to programming time. Reduction in programming time can be achieved by identifying the domain to which the task belongs and using an appropriate Domain Specific Language (DSL). DSLs are constrained to use terms and concepts pertaining to an explicit domain making it much easier for the programmers to understand and learn, and cuts down the development time drastically. In this paper, we will understand what a DSL is; explore 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.

Content maybe subject to copyright    Report

Citations
More filters
Journal ArticleDOI
01 Mar 2022-Designs
TL;DR: This article describes one of possible approaches to solving the problem of data acquisition and management of the structure of a large-scale heterogeneous system based on the idea of using dynamic digital twins, which are dynamic models of the observed system.
Abstract: The modern stage of technology development is characterized by the emergence of new paradigms for the construction of anthropogenic systems, such as cyber-physical systems, socio-cybernetic systems, etc. The task of data acquisition about the state of a multi-level system and managing the structure and behavior of a system consisting of many thousands of elements of different physical nature is a complex task. This article describes one of possible approaches to solving the problem of data acquisition and management of the structure of a large-scale heterogeneous system. The proposed approach is based on the idea of using dynamic digital twins, which are dynamic models of the observed system. This approach was used for the development of systems in various subject domains, in particular, in production management systems built on the Industry 4.0 principle, in the development of a technical support system for cable television networks and in the development of support systems for the construction of educational trajectories.

3 citations

Proceedings ArticleDOI
13 Apr 2015
TL;DR: Several existing applications were automatically analyzed to extract their domain models and generate a DSL processor based on them and this paper presents the experiment validating this approach.
Abstract: Implementation of domain-specific languages (DSLs) is supported by powerful tools that can automatically generate various artifacts from the language specification. Domain analysis and design of a language, however, are usually done manually. Automatic extraction of domain information can be used to generate preliminary version of the language specification and therefore bootstrap the development process. One of the most suitable sources of domain information are graphical user interfaces (GUIs). In this paper we present the experiment validating this approach. Several existing applications were automatically analyzed to extract their domain models and generate a DSL processor based on them.

3 citations


Cites background from "Domain Specific Languages"

  • ...In general, it is much easier for people to program with a DSL than a traditional library [5, 9]....

    [...]

Journal ArticleDOI
TL;DR: This paper develops an optimization for SYB using HERMIT that optimizes SYB traversals to be as fast as handwritten, non-generic code, and benchmarks show that this optimization improves the speed of SYb traversals by an order of magnitude or more.

3 citations

Dissertation
01 Sep 2014
TL;DR: A set of metrics to support the quantitative assessment of the quality attributes complexity, completeness and correctness of i* models are proposed through the Goal-Question-Metric approach.
Abstract: Goal-oriented requirements engineering approaches provide mechanisms to help eliciting and modelling requirements. This thesis focuses on the i* framework, one of the most important languages for specifying goal-oriented requirements models, which has working groups in over twenty countries and has seven editions of international workshops. There are some problems that can affect the quality of i* models. Their creation can result in complex and/or incomplete models, as well as incorrect ones due to the misuse of the i* notation. These problems contribute to difficulties in the management and understanding of software systems, which in turn leads to increased development costs. The quality of the models should then be a permanent concern, in order to construct models that are correct, complete and whose accidental complexity is minimized. Despite its importance, the effective management of these three aspects is still an open problem. In this thesis, we propose a set of metrics to support the quantitative assessment of the quality attributes complexity, completeness and correctness of i* models. Those metrics are defined through the Goal-Question-Metric approach, being specified both informally, in natural language, as well as formally, with OCL (Object Constraint Language), and incorporated in an i* modelling tool so that they can be automatically collected. The metrics are evaluated both experimentally, through a set of real-world and academic case studies, as well as theoretically, through Weyuker’s properties.

3 citations

Book ChapterDOI
24 Aug 2021
TL;DR: In this paper, the authors present an existing simple domain-specific language for representing the motion of a robot in an orthogonal two-dimensional system and define its natural semantics.
Abstract: In this paper, we present an existing simple domain-specific language for representing the motion of a robot in an orthogonal two-dimensional system and we define its natural semantics. The language contains basic statements for moving the robot in specified directions, actually without flow control constructs such as a loop or conditional. In our approach, we show how to extend the semantic definition for a given language. We define natural semantics for both basic and extended (modified) versions of a language. Our new method of natural semantics constructed in this way becomes a natural part of the spectrum of semantic methods for a given type of languages. The achieved results will be included as a new and current topic in the course Formal Semantics as a support in the education of young IT experts. A correct method with proven and verified properties is also a great assumption for the future construction of visual semantic technologies to support university education.

3 citations

References
More filters
Journal ArticleDOI
TL;DR: The literature available on the topic of domain-specific languages as used for the construction and maintenance of software systems is surveyed, and a selection of 75 key publications in the area is listed.
Abstract: We survey the literature available on the topic of domain-specific languages as used for the construction and maintenance of software systems. We list a selection of 75 key publications in the area, and provide a summary for each of the papers. Moreover, we discuss terminology, risks and benefits, example domain-specific languages, design methodologies, and implementation techniques.

1,538 citations

Book
23 Sep 2010
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#.
Abstract: Designed as a wide-ranging guide to Domain Specific Languages (DSLs) and how to approach building them, this book covers a variety of different techniques available for DSLs. The goal is to provide readers with enough information to make an informed choice about whether or not to use a DSL and what kinds of DSL techniques to employ. Part I is a 150-page narrative overview that gives you a broad understanding of general principles. The reference material in Parts II through VI provides the details and examples you willneed to get started using the various techniques discussed. Both internal and external DSL topics are covered, in addition to alternative computational models and code generation. Although the general principles and patterns presented can be used with whatever programming language you happen to be using, most of the examples are in Java or C#.

908 citations