Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
Denotational semantics: a methodology for language development
Denotational semantics: a methodology for language development
Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Design of the kernel language for the parallel inference machine
The Computer Journal - On concurrent logic programming
New Generation Computing - Selected papers from the international workshop on algorithmic learning theory,1990
Theoretical Computer Science
Independence in constraint logic programs
ILPS '93 Proceedings of the 1993 international symposium on Logic programming
XSB as an efficient deductive database engine
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
A requirements capture method and its use in an air traffic control application
Software—Practice & Experience
Tabled evaluation with delaying for general logic programs
Journal of the ACM (JACM)
Programming language semantics
ACM Computing Surveys (CSUR)
Unifying theories: a personal statement
ACM Computing Surveys (CSUR) - Special issue: position statements on strategic directions in computing research
An introduction to partial evaluation
ACM Computing Surveys (CSUR)
On the need for a popular formal semantics
ACM SIGPLAN Notices
From custom applications to domain-specific frameworks
Communications of the ACM
JICSLP'98 Proceedings of the 1998 joint international conference and symposium on Logic programming
Programming pearls: little languages
Communications of the ACM
ESEC/FSE-7 Proceedings of the 7th European software engineering conference held jointly with the 7th ACM SIGSOFT international symposium on Foundations of software engineering
A domain specific language framework for non-visual browsing of complex HTML structures
Assets '00 Proceedings of the fourth international ACM conference on Assistive technologies
An axiomatic basis for computer programming
Communications of the ACM
Natural Language Processing for PROLOG Programmers
Natural Language Processing for PROLOG Programmers
Logic for Problem Solving
Automatic Generation of Provably Correct Parallelizing Compilers
ICPP '98 Proceedings of the 1998 International Conference on Parallel Processing
Unification of Theories: A Challenge for Computing Science
Selected papers from the 11th Workshop on Specification of Abstract Data Types Joint with the 8th COMPASS Workshop on Recent Trends in Data Type Specification
Architecture Software Using: A Methodology for Language Development
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
Logic for Knowledge Representation
Proceedings of the Fourth Conference on Foundations of Software Technology and Theoretical Computer Science
From standard to implementation denotational semantics
Semantics-Directed Compiler Generation, Proceedings of a Workshop
Efficient Model Checking Using Tabled Resolution
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Towards the Automated Debugging and Maintenance of Logic-based Requirements Models
ASE '98 Proceedings of the 13th IEEE international conference on Automated software engineering
A constraint-based approach for specification and verification of real-time systems
RTSS '97 Proceedings of the 18th IEEE Real-Time Systems Symposium
Modular Domain Specific Languages and Tools
ICSR '98 Proceedings of the 5th International Conference on Software Reuse
Planning, reasoning, and agents for non-visual navigation of tables and frames
Proceedings of the fifth international ACM conference on Assistive technologies
Hi-index | 0.00 |
Domain Specific Languages (DSLs) are high level languages designed for solving problems in a particular domain, and have been suggested as means for developing reliable software systems. We present a (constraint) logic programming-based framework for specification, efficient implementation, and automatic verification of domain specific languages (DSLs). Our framework is based on using Horn logic (or pure Prolog), and eventually constraints, to specify denotational semantics of domain specific languages. Both the syntax as well as the semantic specification of the DSL in question are directly executable in our framework: the specification itself serves as an interpreter for the DSL. More efficient implementations of this DSL--a compiler--can be automatically derived via partial evaluation. Additionally, the executable specification can be used for automatic or semi-automatic verification of programs written in the DSL as well as for automatically obtaining traditional debuggers and profilers. The ability to verify DSL programs is a distinct advantage of our approach. In this paper we give a general outline of our approach, and illustrate it with practical examples.