11,061 Hits in 4.8 sec

Developing DSLs using combinators. A design pattern

Pablo Andres Barrientos, Pablo E. Martinez Lopez
2009 2009 International Multiconference on Computer Science and Information Technology  
To simplify the design of DSLs we describe a design pattern based on the combinators technique, which can also provide guidelines for previous domain analysis phase because it is based on equational reasoning  ...  The development of domain-specific languages (DSLs) is considered by many authors as a hard task.  ...  DSLs designed using other patterns could be hard to exploit using combinators and this could be a strong precondition.  ... 
doi:10.1109/imcsit.2009.5352773 dblp:conf/imcsit/BarrientosL09 fatcat:knetwibstnd6bexcn6hvdddkqi

Development of internal domain-specific languages

Sebastian Günther
2011 Proceedings of the 18th Conference on Pattern Languages of Programs - PLoP '11  
This paper's contribution is a set of six DSL design principles and a catalog of DSL design patterns.  ...  Each pattern identifies a development context, design goals that support the design principles, a general solution and a concrete example.  ...  This chapter develops the pattern language for our DSL design patterns.  ... 
doi:10.1145/2578903.2579139 dblp:conf/plop/Gunther11 fatcat:3pabxsgfwvbxvckug2rczyheca

Agile Engineering of Internal Domain-Specific Languages with Dynamic Programming Languages

Sebastian Gunther, Maximilian Haupt, Matthias Splieth
2010 2010 Fifth International Conference on Software Engineering Advances  
Expressions and language capabilities are implemented using tests and a set of patterns, which provide reusable knowledge how to properly structure and design the DSL implementation.  ...  In summary, the proposed process and patterns facilitate the successful planning and developing of internal DSLs using dynamic programming languages as the host.  ...  Language Design In the language design phase, we develop the syntax for the DSL.  ... 
doi:10.1109/icsea.2010.32 dblp:conf/icsea/GuntherHS10 fatcat:gxuhhtxz2jbqveanowbhlhtaoy

Reusable Architectural Decisions for DSL Design: Foundational Decisions in DSL Projects

Uwe Zdun, Mark Strembeck
2009 European Conference on Pattern Languages of Programs  
These decisions are foundational for each DSL project. Each of these decisions has a number of (candidate) patterns for DSL design.  ...  In this paper, we systematically explore the DSL design space by combining reusable architectural decision modeling and software patterns.  ...  how these patterns can be combined (i.e., the "pattern language aspect").  ... 
dblp:conf/europlop/ZdunS09 fatcat:zylg7zci5zdcpiagggbog3vvz4

Domain-specific languages for embedded systems portable software development

Vera Ivanova, Boris Sedov, Yuriy Sheynin, Alexey Syschikov
2014 Proceedings of 16th Conference of Open Innovations Association FRUCT  
In a combination with a method for domain specific languages development it allows rapid building of an infrastructure for selected domains programming.  ...  In this paper we present a new method of Domain Specific Language development for a portable software development for embedded systems.  ...  A set of functional blocks representing the most frequently used domain functions and a set of basic elements will make up a new DSL by using language extension pattern.  ... 
doi:10.1109/fruct.2014.7000923 dblp:conf/fruct/IvanovaSSS14 fatcat:f3z6u6xe4rb63ahpj4zmkeniby

Notable design patterns for domain-specific languages

Diomidis Spinellis
2001 Journal of Systems and Software  
The patterns described form a pattern language that can be used as a building block for a systematic view of the software development process involving DSL DSLs. Ó  ...  We describe eight recurring patterns that we have identi®ed as being used for DSL DSL design and implementation.  ...  We hope that the pattern language we have presented can be used as a building block for a systematic view of the software development process involving DSL DSLs.  ... 
doi:10.1016/s0164-1212(00)00089-3 fatcat:onckemor7ra4zm4j5jfel7lyu4

A DSL toolkit for deferring architectural decisions in DSL-based software design

Uwe Zdun
2010 Information and Software Technology  
We propose a language and a number of DSLs for DSL-based design and development that combine important benefits of different DSL toolkits in a unique way.  ...  As a consequence, the architect can choose, even late in a DSL project, for options such as whether to provide the DSL as one or more external or embedded DSLs and whether or not to use an explicit language  ...  A pattern is a time-proven solution to a recurring design problem. The patterns do not only describe how a DSL is developed, but also why it is developed in a specific way.  ... 
doi:10.1016/j.infsof.2010.03.004 fatcat:f2fqf52dfnc7vpqqiwbupp3vza

Iterative Evaluation Of Domain-Specific Languages

Ankica Barišić
2017 Zenodo  
As software moves to the daily routines and responsibilities of people, there is a need for developing tools and languages rapidly.  ...  DSLs are designed to bridge the gap between the problem domain (essential concepts, domain knowledge, techniques, and paradigms) and the solution domain (technical space, middleware, platforms and programming  ...  A relevant set of quantitative and qualitative measurements must be inferred and combined together to lead to a useful assessment of the several dimensions that define software Quality in Use (such as  ... 
doi:10.5281/zenodo.889889 fatcat:pt7rkbfnjbcqjekn55jdhyg7fm

Multi-DSL Applications with Ruby

Sebastian Gunther
2010 IEEE Software  
Domain-specific languages (DSL) are becoming a mature tool in application development. With the help of DSLs, developers express concerns in specifically tailored languages.  ...  We focus on internal DSL -a special type which uses an existing programming language as its host. Our research into internal DSL utilization eventually led us to discover multi-DSL applications.  ...  Design Software design receives several impulses when using DSLs.  ... 
doi:10.1109/ms.2010.91 fatcat:we22ndt4ivfwbnnnpxxxkmv5xi

From Macros to DSLs: The Evolution of Racket

Ryan Culpepper, Matthias Felleisen, Matthew Flatt, Shriram Krishnamurthi, Michael Wagner
2019 Summit on Advances in Programming Languages  
The Racket language promotes a language-oriented style of programming. Developers create many domain-specific languages, write programs in them, and compose these programs via Racket code.  ...  While Racket's Lisp heritage might suggest that macros suffice, its design team discovered significant shortcomings and had to improve them in many ways.  ...  Although it is possible to expand such DSLs through Racket's core, it forces DSL developers to employ numerous macro-design patterns.  ... 
doi:10.4230/lipics.snapl.2019.5 dblp:conf/snapl/CulpepperFFK19 fatcat:3wuxx3u3p5b2hcb235br7tyr3e

DSL for the Uninitiated

Debasish Ghosh
2011 Queue  
We used pattern matching on case classes when we designed our DSL.  ...  DISADVANTAGES OF USING A DSL As with any development model, DSL-based development is not without its share of pitfalls. Your project can end up as a complete mess by using badly designed DSLs.  ... 
doi:10.1145/1989748.1989750 fatcat:i44huym5kne2jhemnhokcorz2a

Framework support for usability evaluation of domain-specific languages

Ankica Barišić
2017 Proceedings Companion of the 2017 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for Humanity - SPLASH Companion 2017  
In this paper we propose a conceptual framework that supports the iterative development process of DSLs concerning the issue of their Usability evaluation.  ...  A multiple-case studies were conducted in order validate the proposed method.  ...  We proposed a set of patterns [10] to promote usability concerns since an early stage of development, as an iterative process which integrates well with the DSL development phases and supports the experimental  ... 
doi:10.1145/3135932.3135953 dblp:conf/oopsla/Barisic17 fatcat:k2nsjwausfgudp3yxs5fmkvs4e

Pattern specification and application in metamodels in ecore

Jia Zhang, Mark van den Brand, Ana Maria Şutîi, Marc Hamilton
2016 Proceedings of the 1st Industry Track on Software Language Engineering - ITSLE 2016  
Abstract Design patterns are used pervasively in object-oriented software development. They describe general solutions for recurring problems in software design.  ...  Then, we extended an existing tool, DSL-tao, to assist the development of DSLs in Altran.  ...  In the context of DSLs' development, design patterns can be used in the meta-models of a DSL to model the solutions for some recurring problems that the DSL is required to solve.  ... 
doi:10.1145/2998407.2998411 fatcat:pqg62rzvjrhaxijo4dhq7poziq

Abstracting Complex Languages through Transformation and Composition [chapter]

Jendrik Johannes, Steffen Zschaler, Miguel A. Fernández, Antonio Castillo, Dimitrios S. Kolovos, Richard F. Paige
2009 Lecture Notes in Computer Science  
However, the complexity of some domains has led to a number of DSLs that are themselves complex, limiting the original benefits of using DSLs.  ...  Patterns identified in such model transformations can be used to raise the level of abstraction.  ...  An obvious solution to the problem of building layers of DSLs is to design a more abstract DSL using a standard modelling framework (e.g.  ... 
doi:10.1007/978-3-642-04425-0_41 fatcat:mqcd5x472bhzxnuggajpgq4nee

Domain-specific engineering of domain-specific languages

Raphael Mannadiar, Hans Vangheluwe
2010 Proceedings of the 10th Workshop on Domain-Specific Modeling - DSM '10  
In this work, we propose a novel approach to DSL design where low level modelling formalisms are seamlessly woven together to form new DSLs whose semantics are fully automatically generated.  ...  This approach not only contradicts the model-driven engineering (MDE) philosophy of development using domain-specific conceptsin this case, the domain and concepts of DSLs -, it is also faced with the  ...  Table 3 shows a possible reconstruction of the PhoneApps DSL using STs.  ... 
doi:10.1145/2060329.2060356 fatcat:5ep3hfv2irex3b2najdbgir24a
« Previous Showing results 1 — 15 out of 11,061 results