Renggli, Lukas; Ducasse, Stéphane; Girba, Tudor; Nierstrasz, Oscar (2010). Domain-Specific Program Checking. In: Vitek, Jan (ed.) Objects, Models, Components, Patterns. 48th International Conference, TOOLS 2010, Málaga, Spain, June 28–July 2, 2010. Proceedings. Lecture Notes in Computer Science: Vol. 6141 (pp. 213-232). Heidelberg: Springer Verlag 10.1007/978-3-642-13953-6_12
Text
Seiten aus 10.1007_978-3-642-13953-6.pdf - Published Version Restricted to registered users only Available under License Publisher holds Copyright. Download (459kB) |
Lint-like program checkers are popular tools that ensure code quality by verifying compliance with best practices for a particular programming language. The proliferation of internal domain-specific languages and models, however, poses new challenges for such tools. Traditional program checkers produce many false positives and fail to accurately check constraints, best practices, common errors, possible optimizations and portability issues particular to domain-specific languages. We advocate the use of dedicated rules to check domain-specific practices. We demonstrate the implementation of domain-specific rules, the automatic fixing of violations, and their application to two case-studies: (1) Seaside defines several internal DSLs through a creative use of the syntax of the host language; and (2) Magritte adds meta-descriptions to existing code by means of special methods. Our empirical validation demonstrates that domain-specific program checking significantly improves code quality when compared with general purpose program checking.
Item Type: |
Book Section (Book Chapter) |
---|---|
Division/Institute: |
08 Faculty of Science > Institute of Computer Science (INF) 08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG) [discontinued] |
UniBE Contributor: |
Renggli, Lukas, Nierstrasz, Oscar |
Series: |
Lecture Notes in Computer Science |
Publisher: |
Springer Verlag |
Language: |
English |
Submitter: |
Factscience Import |
Date Deposited: |
04 Oct 2013 14:17 |
Last Modified: |
02 Mar 2023 23:20 |
Publisher DOI: |
10.1007/978-3-642-13953-6_12 |
Web of Science ID: |
000286162000012 |
BORIS DOI: |
10.7892/boris.4962 |
URI: |
https://boris.unibe.ch/id/eprint/4962 (FactScience: 209621) |