Separation of Concerns and Linguistic Integration in WebDSL September/October 2010 (vol. 27 no. 5) pp. 31-37
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/MS.2010.92
Web application development is a complex task, in which developers must address many concerns, such as user interface, data model, access control, data validation, and search. Current technology typically requires multiple languages and programming paradigms to cover these aspects. Using such domain-specific languages improves developer expressivity and lets them separate concerns. However, coupling these technologies is often less than optimal. It results in little or no consistency checking between concerns as well as wildly different language styles and paradigms—from XML-style transformation languages like Extensible Style Sheet Language Transformation, to aspect languages like cascading style sheets, to object-oriented languages like Java and Java Script. WebDSL is a domain-specific language for constructing Web information systems. The language comprises sublanguages that address Web application concerns, maintaining separation of concerns, but integrating linguistically to provide consistency checking and reuse of common language concepts consistency checking and reuse of common language concepts between concerns. In this paper we describe the problems in web application development and discuss the WebDSL solution. 1. E. Visser, "WebDSL: A Case Study in Domain-Specific Language Engineering," Generative and Transformational Techniques in Software Engineering II, LNCS 5235, R. Lämmel, J. Visser, and J. Saraiva eds., Springer, 2008, pp. 291–373.
Index Terms:
WebDSL, web applications, domain-specific languages, separation of concerns, static verification
Citation:
Danny M. Groenewegen, Zef Hemel, Eelco Visser, "Separation of Concerns and Linguistic Integration in WebDSL," IEEE Software, vol. 27, no. 5, pp. 31-37, Sep./Oct. 2010, doi:10.1109/MS.2010.92 Usage of this product signifies your acceptance of the Terms of Use. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||