Compilers: principles, techniques, and tools
Compilers: principles, techniques, and tools
The synthesizer generator: a system for constructing language-based editors
The synthesizer generator: a system for constructing language-based editors
Latex: a document preparation system
Latex: a document preparation system
The syntax definition formalism SDF—reference manual—
ACM SIGPLAN Notices
Eli: a complete, flexible compiler construction system
Communications of the ACM
A meta-environment for generating programming environments
ACM Transactions on Software Engineering and Methodology (TOSEM)
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Building domain-specific embedded languages
ACM Computing Surveys (CSUR) - Special issue: position statements on strategic directions in computing research
Little languages: little maintenance
Journal of Software Maintenance: Research and Practice
Term rewriting and all that
Building program optimizers with rewriting strategies
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Programming pearls: little languages
Communications of the ACM
Mawl: A Domain-Specific Language for Form-Based Services
IEEE Transactions on Software Engineering
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Domain specific embedded compilers
Proceedings of the 2nd conference on Domain-specific languages
Software—Practice & Experience
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
The influence of browsers on evaluators or, continuations to program web servers
ICFP '00 Proceedings of the fifth ACM SIGPLAN international conference on Functional programming
Domain-specific languages: an annotated bibliography
ACM SIGPLAN Notices
An efficient context-free parsing algorithm
Communications of the ACM
A relational model of data for large shared data banks
Communications of the ACM
backus normal form vs. Backus Naur form
Communications of the ACM
Report on the algorithmic language ALGOL 60
Communications of the ACM
Notable design patterns for domain-specific languages
Journal of Systems and Software
ACM Transactions on Internet Technology (TOIT)
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
Compiling language definitions: the ASF+SDF compiler
ACM Transactions on Programming Languages and Systems (TOPLAS)
Template meta-programming for Haskell
Proceedings of the 2002 ACM SIGPLAN workshop on Haskell
PowerForms: Declarative client-side form field validation
World Wide Web
Higher-Order and Symbolic Computation
Meta-programming with Concrete Object Syntax
GPCE '02 Proceedings of the 1st ACM SIGPLAN/SIGSOFT conference on Generative Programming and Component Engineering
Typed Combinators for Generic Traversal
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
WASH/CGI: Server-Side Web Scripting with Sessions and Typed, Compositional Forms
PADL '02 Proceedings of the 4th International Symposium on Practical Aspects of Declarative Languages
Architecture Software Using: A Methodology for Language Development
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
Generating Code from UML with Velocity Templates
UML '02 Proceedings of the 5th International Conference on The Unified Modeling Language
IFM '02 Proceedings of the Third International Conference on Integrated Formal Methods
SEQUEL: A structured English query language
SIGFIDET '74 Proceedings of the 1974 ACM SIGFIDET (now SIGMOD) workshop on Data description, access and control
Eclipse Modeling Framework
An efficient context-free parsing algorithm
An efficient context-free parsing algorithm
Extending Java for high-level Web service construction
ACM Transactions on Programming Languages and Systems (TOPLAS)
Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools
JavaServer Faces in Action (In Action series)
JavaServer Faces in Action (In Action series)
Enforcing strict model-view separation in template engines
Proceedings of the 13th international conference on World Wide Web
The impact of fourth generation programming languages
ACM SIGCSE Bulletin
Imposing a Memory Management Discipline on Software Deployment
Proceedings of the 26th International Conference on Software Engineering
OOPSLA '04 Proceedings of the 19th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
The TeXbook
Service configuration management
Proceedings of the 12th international workshop on Software configuration management
Stratego/XT 0.16: components for transformation systems
Proceedings of the 2006 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation
When and how to develop domain-specific languages
ACM Computing Surveys (CSUR)
The TXL source transformation language
Science of Computer Programming - The fourth workshop on language descriptions, tools, and applications (LDTA'04)
Ocsigen: typing web interaction with objective Caml
Proceedings of the 2006 workshop on ML
Feature-based survey of model transformation approaches
IBM Systems Journal - Model-driven software development
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Extracting queries by static analysis of transparent persistence
Proceedings of the 34th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Model-Driven Software Development: Technology, Engineering, Management
Model-Driven Software Development: Technology, Engineering, Management
Domain-Specific Modeling
Agile Web Development with Rails
Agile Web Development with Rails
The Definitive ANTLR Reference: Building Domain-Specific Languages
The Definitive ANTLR Reference: Building Domain-Specific Languages
Java Persistence with Hibernate
Java Persistence with Hibernate
Program Transformation with Scoped Dynamic Rewrite Rules
Fundamenta Informaticae - Program Transformation: Theoretical Foundations and Basic Techniques. Part 2
Lightweight languages as software engineering tools
DSL'97 Proceedings of the Conference on Domain-Specific Languages on Conference on Domain-Specific Languages (DSL), 1997
Preventing injection attacks with syntax embeddings
GPCE '07 Proceedings of the 6th international conference on Generative programming and component engineering
The jastadd extensible java compiler
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
ACM SIGPLAN Lisp Pointers
Implementation and use of the PLT scheme Web server
Higher-Order and Symbolic Computation
Stratego/XT 0.17. A language and toolset for program transformation
Science of Computer Programming
Domain specific language implementation via compile-time meta-programming
ACM Transactions on Programming Languages and Systems (TOPLAS)
Domain-specific development with visual studio dsl tools
Domain-specific development with visual studio dsl tools
Designing Syntax Embeddings and Assimilations for Language Libraries
Models in Software Engineering
Code Generation by Model Transformation
ICMT '08 Proceedings of the 1st international conference on Theory and Practice of Model Transformations
Declarative Access Control for WebDSL: Combining Language Integration and Separation of Concerns
ICWE '08 Proceedings of the 2008 Eighth International Conference on Web Engineering
Mixing source and bytecode: a case for compilation by normalization
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
A survey of strategies in rule-based program transformation systems
Journal of Symbolic Computation
Polyglot: an extensible compiler framework for Java
CC'03 Proceedings of the 12th international conference on Compiler construction
A model driven software factory using domain specific languages
ECMDA-FA'07 Proceedings of the 3rd European conference on Model driven architecture-foundations and applications
Attribute grammar-based language extensions for java
ECOOP'07 Proceedings of the 21st European conference on Object-Oriented Programming
Stratego/XT 0.17. A language and toolset for program transformation
Science of Computer Programming
WebDSL: a domain-specific language for dynamic web applications
Companion to the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
Domain-Specific Languages for Composable Editor Plugins
Electronic Notes in Theoretical Computer Science (ENTCS)
Data model driven implementation of web cooperation systems with Tricia
ICOODB'10 Proceedings of the Third international conference on Objects and databases
Mod4J: a qualitative case study of model-driven software development
MODELS'10 Proceedings of the 13th international conference on Model driven engineering languages and systems: Part II
Interactive disambiguation of meta programs with concrete object syntax
SLE'10 Proceedings of the Third international conference on Software language engineering
Higher-order transformations with nested concrete syntax
Proceedings of the Eleventh Workshop on Language Descriptions, Tools and Applications
A domain specific language for interactive enterprise application development
WISM'11 Proceedings of the 2011 international conference on Web information systems and mining - Volume Part II
Generating database migrations for evolving web applications
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Declaratively defining domain-specific language debuggers
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Integrated language definition testing: enabling test-driven language development
Proceedings of the 2011 ACM international conference on Object oriented programming systems languages and applications
VML* – a family of languages for variability management in software product lines
SLE'09 Proceedings of the Second international conference on Software Language Engineering
Integration of data validation and user interface concerns in a DSL for web applications
SLE'09 Proceedings of the Second international conference on Software Language Engineering
PIL: a platform independent language for retargetable DSLs
SLE'09 Proceedings of the Second international conference on Software Language Engineering
Domain-specific metamodelling languages for software language engineering
SLE'09 Proceedings of the Second international conference on Software Language Engineering
Generating smart wrapper libraries for arbitrary APIs
SLE'09 Proceedings of the Second international conference on Software Language Engineering
Model-Driven web form validation with UML and OCL
ICWE'11 Proceedings of the 11th international conference on Current Trends in Web Engineering
An algorithm for layout preservation in refactoring transformations
SLE'11 Proceedings of the 4th international conference on Software Language Engineering
Reconstructing complex metamodel evolution
SLE'11 Proceedings of the 4th international conference on Software Language Engineering
Automated evaluation of syntax error recovery
Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
ECOOP'12 Proceedings of the 26th European conference on Object-Oriented Programming
SFM'12 Proceedings of the 12th international conference on Formal Methods for the Design of Computer, Communication, and Software Systems: formal methods for model-driven engineering
Integration of data validation and user interface concerns in a DSL for web applications
Software and Systems Modeling (SoSyM)
Managing the evolution of data-intensive Web applications by model-driven techniques
Software and Systems Modeling (SoSyM)
Efficient high-level abstractions for web programming
Proceedings of the 12th international conference on Generative programming: concepts & experiences
DropsBox: the Dresden Open Software Toolbox
Software and Systems Modeling (SoSyM)
Hi-index | 0.00 |
The goal of domain-specific languages (DSLs) is to increase the productivity of software engineers by abstracting from low-level boilerplate code. Introduction of DSLs in the software development process requires a smooth workflow for the production of DSLs themselves. This requires technology for designing and implementing DSLs, but also a methodology for using that technology. That is, a collection of guidelines, design patterns, and reusable DSL components that show developers how to tackle common language design and implementation issues. This paper presents a case study in domain-specific language engineering. It reports on a project in which the author designed and built WebDSL, a DSL for web applications with a rich data model, using several DSLs for DSL engineering: SDF for syntax definition and Stratego/XT for code generation. The paper follows the stages in the development of the DSL. The contributions of the paper are three-fold. (1) A tutorial in the application of the specific SDF and Stratego/XT technology for building DSLs. (2) A description of an incremental DSL development process. (3) A domain-specific language for web-applications with rich data models. The paper concludes with a survey of related approaches.