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
Proceedings ArticleDOI
01 Jan 2022
TL;DR: It is concluded that adopting controlled natural languages based on use cases and scenarios simplifies the specification and development of RPA scenarios, no matter the supported RPA tool.
Abstract: Robotic Process Automation (RPA) is an emerged technology that uses software robots to automate humanintensive repetitive tasks, traditionally associated with bureaucratic and low-complexity processes. This article introduced a concrete scenario implemented with three popular RPA tools (i.e., UiPath, Robocorp, and Robot Framework), which supported the research. First, the paper introduces informally that scenario, implemented with the platform-specific languages of these tools, namely with keyword-based scripts and other visual models. The challenge addressed in this paper is how to describe RPA applications (or just soft robots) in a platform-independent way, close to natural language, and easily understandable by technical and non-technical people. Established on the preliminary results, we conclude that adopting controlled natural languages based on use cases and scenarios simplifies the specification and development of RPA scenarios, no matter the supported RPA tool. For future works, we intend to use the best notation to specify robots in a platform-independent way and implement transformation mechanisms for the proprietary format of popular RPA tools such as UiPath, Robot Framework, and Robocorp.

3 citations

Proceedings ArticleDOI
26 May 2014
TL;DR: The utilization of Domain-specific Languages (DSL) for CEP is proposed in order to develop domain-specific event processing languages (DS-EPL), which will enable the developer to write event processing code on a higher level of abstraction, based on selfdefined domain- specific language constructs.
Abstract: Intelligent real-time applications have been successfully developed in several distinct application domains by using different kinds of EPLs. All EPLs available so far are independent of the problem domain and do provide rather low-level language constructs for event pattern specification.In this paper, we propose the utilization of Domain-specific Languages (DSL) for CEP in order to develop domain-specific event processing languages (DS-EPL). The DS-EPL approach will enable the developer to write event processing code on a higher level of abstraction, based on selfdefined domain-specific language constructs. Thus, an EPL can be specifically tailored to a particular problem domain. We present a domain-specific event processing language for the machine-to-machine (M2M) domain as a representative example and report some results of practical experiences.

3 citations


Cites background or methods from "Domain Specific Languages"

  • ...In this paper, we propose the utilization of the concepts of Domain-Specific Languages (DSL) [9, 19] to CEP in order to develop domain-specific event processing languages (DS-EPLs) specifically tailored to a particular problem domain....

    [...]

  • ...Due to the DSL development efforts in the last decade, the employed techniques and tools are well known, widely accepted, and mature [9]....

    [...]

Dissertation
09 Aug 2019
TL;DR: In this paper, a plataforma for a descricao of workflows realizada by a profissional de saude using Linguagem Especifica de Dominio (DSL) orquestra servos especificados no script da DSL and disponibiliza workflows as novos servos.
Abstract: Um plano de cuidados consiste em um conjunto de informacoes que relaciona pacientes a seus respectivos tratamentos de saude. Este trabalho propoe a modelagem de um plano de cuidados ubiquo como um conjunto de recursos computacionais centrados no paciente. Esses recursos sao modelados como servicos que sao orquestrados a partir de workflows. Com o objetivo de permitir que um profissional de saude tenha condicoes de construir esses workflows utilizando servicos que lidem com as especificidades do tratamento de um paciente, apresentamos uma plataforma que recebe a descricao dos workflows realizada com o uso de uma Linguagem Especifica de Dominio (DSL), orquestra os servicos especificados no script da DSL e disponibiliza os workflows como novos servicos. Como resultado dessa pesquisa, foram implementados os componentes dessa plataforma, tais como, uma DSL, um modelo computacional para representar os workflows em tempo de execucao e os mecanismos para viabilizar a comunicacao com os servicos. A plataforma foi testada por meio da modelagem de cenarios de saude em que situacoes praticas de gerenciamento de tarefas de planos de cuidados foram automatizadas por meio da implementacao e da composicao de servicos web. A partir da DSL foram construidos alguns workflows para utilizar os servicos registrados na plataforma e avaliar algumas questoes a respeito da composicao dos servicos, reutilizacao dos workflows e o consumo de recursos computacionais.

3 citations

Journal ArticleDOI
TL;DR: The learning analytics architecture developed at the Digital Content Production Center of the Technical University of Cartagena (Spain) is presented and allows for dashboard customization and improves the efficiency of the analysis of learners’ interaction data.
Abstract: The ability of learning analytics to improve the learning/teaching processes is widely recognized. In this paper, the learning analytics architecture developed at the Digital Content Production Center of the Technical University of Cartagena (Spain) is presented. This architecture contributes to the field of learning analytics in two aspects: it allows for dashboard customization and improves the efficiency of the analysis of learners' interaction data. Events resulting from learners' interaction are captured and stored in Caliper standard format, to be further processed incrementally to allow dashboards to be shown without delay to teachers. Customization is considered a mandatory requirement for learning analytics tools, however, although some proposals have recently been made, a greater research effort in this topic is necessary. In the present work, this requirement is addressed by defining a domain-specific language (DSL) that allows teachers to customize dashboards. This language allows to express indicators (logical expressions) that classify students into different groups depending on their performance level. The paper also shows how our learning analytics approach was evaluated with a course that applies a flipped classroom method, and how it compares to the most relevant related works that have been published.

3 citations


Cites background from "Domain Specific Languages"

  • ...For this aim, we have explored how a textual domain-specific language (DSL) [13], [14] could be useful to specify which indicators should be displayed in dashboards....

    [...]

01 Jan 2016
TL;DR: Context.
Abstract: Context. Source codes with lower level of readability impose a higher cost to software maintainability. Research also exposed the importance of readability as a vital factor on software maintainabi ...

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