Proceedings of the 13th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages - POPL '86 1986
DOI: 10.1145/512644.512652
|View full text |Cite
|
Sign up to set email alerts
|

Compilers and staging transformations

Abstract: AbstracL.Computations can generally be separated into stages, which are distinguish(d fl'nm one aaother by {,iHn,r frequency of executiou or availability of data. Precomtn~hzffo~and)eT~enegred~c~ioninvnlvemovingcnnu)utadon among a co]lectiou of stages so that work is done as early as possib]e (so iess time is required in later steps) and as infrcquent!y as possible (to reduce overall time).We present, by means of examples, several general eransformadon techniques for carrying out precomputation tra.l~sA~rmatio… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
40
0

Year Published

1986
1986
2010
2010

Publication Types

Select...
7
2

Relationship

0
9

Authors

Journals

citations
Cited by 100 publications
(40 citation statements)
references
References 18 publications
0
40
0
Order By: Relevance
“…As a result, "binding-time improvements" have been developed to milk out extra precision from binding-time analyses [16,Chapter 12], to the point that partial-evaluation users are encouraged to write programs in a very specific style [15]. That said, binding-time-improvements are not specific to offline partial evaluation-they are also routine in staging transformations [17] and in the formal specification of programming languages for semantics-directed compiling [22,Section 8.2].…”
Section: Motivationmentioning
confidence: 99%
“…As a result, "binding-time improvements" have been developed to milk out extra precision from binding-time analyses [16,Chapter 12], to the point that partial-evaluation users are encouraged to write programs in a very specific style [15]. That said, binding-time-improvements are not specific to offline partial evaluation-they are also routine in staging transformations [17] and in the formal specification of programming languages for semantics-directed compiling [22,Section 8.2].…”
Section: Motivationmentioning
confidence: 99%
“…The concept of staging goes back at least to Jørring and Scherlis [22], who observed that many computations can naturally be separated into stages distinguished by frequency of execution or availability of information. Staging transformations aim at executing certain pieces of code less often or at a time where performance is less critical.…”
Section: Introductionmentioning
confidence: 99%
“…This usually affects performance negatively, and therefore a refinement step, based on pass separation [6], a form of staging transformations [7], is taken to convert programs written in L A into programs written in L B , a lower-level representation for which faster interpreters can be written in L C . By formalizing adequately the transformation from L A to L B it is possible to do automatically:…”
Section: Introductionmentioning
confidence: 99%