Skip lists: a probabilistic alternative to balanced trees
Communications of the ACM
A language-independent pretty printer
Software—Practice & Experience
TXL: a rapid prototyping system for programming language dialects
Computer Languages
Transforming high-level data-parallel programs into vector operations
PPOPP '93 Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming
ACM SIGPLAN Notices
ACM Transactions on Programming Languages and Systems (TOPLAS)
IEEE Software
Integrating Scalar Optimization and Parallelization
Proceedings of the Fourth International Workshop on Languages and Compilers for Parallel Computing
Building program optimizers with rewriting strategies
ICFP '98 Proceedings of the third ACM SIGPLAN international conference on Functional programming
Jargons for domain engineering
Proceedings of the 2nd conference on Domain-specific languages
Using smgn for rapid protoptyping of small domain-specific languages
ACM SIGPLAN Notices
Universal Regular Path Queries
Higher-Order and Symbolic Computation
Imperative Program Transformation by Rewriting
CC '01 Proceedings of the 10th International Conference on Compiler Construction
When and how to develop domain-specific languages
ACM Computing Surveys (CSUR)
Jargons for domain engineering
DSL'99 Proceedings of the 2nd conference on Conference on Domain-Specific Languages - Volume 2
Grammar-driven generation of domain-specific language debuggers
Software—Practice & Experience
Program transformations using temporal logic side conditions
ACM Transactions on Programming Languages and Systems (TOPLAS)
Embedding languages without breaking tools
ECOOP'10 Proceedings of the 24th European conference on Object-oriented programming
A domain-specific approach to heterogeneous parallelism
Proceedings of the 16th ACM symposium on Principles and practice of parallel programming
Declaratively defining domain-specific language debuggers
Proceedings of the 10th ACM international conference on Generative programming and component engineering
Proceedings of the seventh workshop on Domain-Specific Aspect Languages
Hi-index | 0.00 |
The KHEPERA system is a toolkit for the rapid implementation and long-term maintenance of domain specific languages (DSLs). Our viewpoint is that DSLs are most easily implemented via source-to-source translation from the DSL into another language and that this translation should be based on simple parsing, sophisticated tree-based analysis and manipulation, and source generation using pretty-printing techniques. KHEPERA emphasizes the use of familiar, pre-existing tools and provides support for transformation replay and debugging for the DSL processor and end-user programs. In this paper, we present an overview of our approach, including implementation details and a short example.