Implicitly Heterogeneous Multi-stage Programming

dc.contributor.authorEckhardt, Jason
dc.contributor.authorKaiabachev, Roumen
dc.contributor.authorPašalić, Emir
dc.contributor.authorSwadi, Kedar
dc.contributor.authorTaha, Walid
dc.date.accessioned2017-08-02T22:03:03Z
dc.date.available2017-08-02T22:03:03Z
dc.date.issued2005-04-16
dc.date.noteApril 16, 2005
dc.description.abstractPrevious work on semantics-based multi-stage programming (MSP) language design focused on homogeneous languages designs, where the generating and the generated languages are the same. Homogeneous designs simply add a hygienic quasi-quotation and evaluation mechanism to a base language. An apparent disadvantage of this approach is that the programmer is bound to both expressivity and performance characteristics of the base language. This paper proposes a practical means to show that this can be avoided by providing specialized translations from subsets of the base language to different target languages. This approach preserves the homogeneous "look" of multi-stage programs, and, more importantly, the static guarantees about the generated code. In addition, compared to an explicitly heterogeneous approach, it promotes reuse and systematic exploration of the performance characteristics of the target languages. To illustrate the proposed approach, we design and implement a translation to a subset of C suitable for numerical computation, and show that it preserves static typing. The translation is implemented, and evaluated with several benchmarks. The implementation is available in the online distribution of MetaOCaml.
dc.format.extent23 pp
dc.identifier.citationEckhardt, Jason, Kaiabachev, Roumen, Pa�ali?, Emir, et al.. "Implicitly Heterogeneous Multi-stage Programming." (2005) https://hdl.handle.net/1911/96341.
dc.identifier.digitalTR05-453
dc.identifier.urihttps://hdl.handle.net/1911/96341
dc.language.isoeng
dc.rightsYou are granted permission for the noncommercial reproduction, distribution, display, and performance of this technical report in any format, but this permission is only for a period of forty-five (45) days from the most recent time that you verified that this technical report is still available from the Computer Science Department of Rice University under terms that include this permission. All other rights are reserved by the author(s).
dc.titleImplicitly Heterogeneous Multi-stage Programming
dc.typeTechnical report
dc.type.dcmiText
Files
Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
TR05-453.pdf
Size:
281.52 KB
Format:
Adobe Portable Document Format