Integrated Language Definition Testing
The reliability of compilers, interpreters, and development environments for programming languages is essential for effective software development and maintenance. They are often tested only as an afterthought. Languages with a smaller scope, such as domain-specific languages, often remain untested. General-purpose testing techniques and test case generation methods fall short in providing a low-threshold solution for test-driven language development. In this paper, the authors introduce the notion of a Language-Parametric Testing Language (LPTL) that provides a reusable, generic basis for declaratively specifying language definition tests.