2004
DOI: 10.1007/978-3-540-25935-0_17
|View full text |Cite
|
Sign up to set email alerts
|

Runtime Code Generation in C++ as a Foundation for Domain-Specific Optimisation

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
24
0

Year Published

2004
2004
2017
2017

Publication Types

Select...
5
3
1

Relationship

0
9

Authors

Journals

citations
Cited by 35 publications
(24 citation statements)
references
References 19 publications
0
24
0
Order By: Relevance
“…Such static analyses should also enable the design of smarter (higherlevel) transformation primitives. In the longer term, we also wish to invest in a more robust implementation of the X language, based on a run-time compilation framework, like ROSE [22] or TaskGraph [1], and/or using a more abstract code representation in the polytope model [5]. Our main long-term goal is the adoption by application experts with little interest in compiler design and implementation.…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…Such static analyses should also enable the design of smarter (higherlevel) transformation primitives. In the longer term, we also wish to invest in a more robust implementation of the X language, based on a run-time compilation framework, like ROSE [22] or TaskGraph [1], and/or using a more abstract code representation in the polytope model [5]. Our main long-term goal is the adoption by application experts with little interest in compiler design and implementation.…”
Section: Discussionmentioning
confidence: 99%
“…The TaskGraph library [1] is closely related with the X language. It combines a structured multistage evaluation layer built on top of C++ expression templates, with run-time generation and compilation, and with a transformation toolkit based on SUIF (1.3) [11] and/or ROSE [22].…”
Section: Related Workmentioning
confidence: 99%
“…This distinguishes POET from the large, existing body of work on powerful languages and tools for expressing static code transformations [20], [1]. We intend to use POET in the context of an empirical search process; we do not specifically address run-time code generation as performed by more general multistage languages and systems [2], [7], [10], [11].…”
Section: Related Workmentioning
confidence: 99%
“…In previous work [5], we defined criteria for what we call language virtualization, saying that a general-purpose language is virtualizable iff it can provide an environment to embedded languages that makes them essentially identical to corresponding stand-alone language implementations in terms of expressiveness (being able to express a DSL in a way which is natural to domain specialists) performance (leveraging domain knowledge to produce optimal code), and safety (domain programs are guaranteed to have certain properties implied by the DSL), while at the same time requiring only modestly more development effort than implementing a simple, pure-library embedding. 1 One ingredient of LMS is a finally tagless [4] or polymorphic [20] language embedding, which ensures expressiveness and safety. Hofer et al [20] show that a polymorphic embedding can be constructed from a pure embedding [21] with acceptable effort.…”
Section: Introductionmentioning
confidence: 99%