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
Book ChapterDOI
12 Apr 2012
TL;DR: The motivation for this came originally from the Identity Card Act, which has since been repealed in the UK, and the scenarios involve somebody trying to buy some age restricted goods and somebody having this gold standard ID card.
Abstract: Good morning, I'm Phil Brooke. My co-authors hail from York, and I'm based at Teesside. For a couple of years we've been looking at how people interact with protocols, and the implicit protocols in how people carry out transactions. What we want to do is get some answers in terms of: if I change a process for how I run a particular transaction, do I get a benefit from it? The motivation for this came originally from the Identity Card Act, which has since been repealed in the UK. So our scenarios involve somebody trying to buy some age restricted goods. Rather than just eyeballing the person and saying, "I think you're over 18", or asking for some other identification which may or may not be easily forged, you would have this gold standard ID card, and they'd be able to look at it and say, "yes, of course you are old enough," and on we go. Our question wasn't so much are these good or bad things, but how much difference would it make to us and can I measure that? Can I model it?

1 citations

Proceedings ArticleDOI
01 Jan 2022
TL;DR: In this article , the state-of-the-art and practice for entity-relationship modeling, including its characterization and research gaps, is presented. But, as a signif-icant increment to existing mapping studies, this paper presents the state of the art and practice of entity relationship modeling.
Abstract: : The variety of database system technologies that became available in recent years makes difficult the selection of tools for modeling entity-relationship (ER). The published mapping studies on this topic date back to 2000, thus outdated and limited to guide designers towards the recent innovations selection for the design and implementation of databases. In this sense, we contribute with an overview of the recent innovations through a systematic literature mapping complemented by research in the gray literature. This paper scopes ten (10) primary studies focused on Domain-Specific Languages (DSL) and identifies fifty-five (55) tools already applied in industry and academia for ER modeling at the conceptual, logical, and physical level. Hence, as a signif-icant increment to existing mapping studies, this presents the state-of-the-art and practice for ER modeling, including its characterization and research gaps.

1 citations

Proceedings ArticleDOI
01 Sep 2016
TL;DR: This paper applies Aspect-Driven Design Approach to separate the concerns in UI, and have them automatically tangled together at runtime, and introduces the single point to maintain, and the runtime weaving enables us to deliver context-aware UI.
Abstract: User Interface (UI) of Enterprise Information Systems deals with various concerns such as the model structure, layouts, widgets, business rules, and localization tangled together. Unfortunately, conventional development approaches fail to efficiently maintain these concerns and forces developers to manually tangle them together. That results in high information restatement, code duplication, and error-prone maintenance. In this paper, we apply Aspect-Driven Design Approach to separate the concerns in UI, and have them automatically tangled together at runtime. Such separation introduces the single point to maintain, and the runtime weaving enables us to deliver context-aware UI. Furthermore, we apply this concept into distributed environment. This allows us to construct UI in various platforms on multiple client devices from the single concerns description streamed from the server.

1 citations


Cites background from "Domain Specific Languages"

  • ...Other than that, the fields still represent the same attributes of the issue and use the same widgets and labels....

    [...]

Journal ArticleDOI
Abstract: Fluent API is an object-oriented pattern for elegant APIs and embedded DSLs. A smart fluent API can enforce the API protocol or DSL syntax at compile time. Since fluent API implementations typically rely on overloading function names, they are hard to realize in functional programming languages. This work shows how functional fluent APIs can be implemented in the absence of name overloading, by relying on parametric polymorphism and Hindley-Milner type inference. The implementation supports fluent API protocols in the regular- and deterministic context-free language classes, and even beyond.

1 citations

Proceedings ArticleDOI
30 Oct 2011
TL;DR: This paper describes and analyzes three approaches for integrating mobile data collection software and health applications, and provides an analysis of the three approaches and makes recommendations on which approach should be used based on the resources available to a health facility.
Abstract: This paper describes and analyzes three approaches for integrating mobile data collection software and health applications. The first approach uses a domain-specific language module that is installed in a health application that communicates directly with the mobile data collection software. The second approach uses Mirth Connect to integrate the mobile collection software with a health application. The third approach is writing custom code required to integrate mobile data collection software with a health application. In the final section of this paper, we provide an analysis of the three approaches, and make recommendations on which approach should be used based on the resources available to a health facility.

1 citations


Cites background from "Domain Specific Languages"

  • ...A DSL is a programming language of limited capabilities focused on a particular problem domain [3]....

    [...]

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