Download PDFOpen PDF in browserAutomatic Staging via Partial Evaluation Techniques13 pages•Published: March 27, 2016AbstractPartial evaluation and staging are two of the well-known symbolicmanipulation techniques of programs which generate efficient specialized code. On one hand, partial evaluation provides us with an automatic means to separate a program into two (or more) stages but its behavior is perceived as hard to control. On the other hand, staging (or staged calculus) requires us to manually separate a program but with full control over its behavior. In the previous work, the first author introduced a framework to relate the two techniques, giving a unified view to the two techniques. In this paper, we extend the framework to handle the cross-stage persistence (CSP) and show that the 2-level staging annotation obtained by the automatic separation is the best staging annotation in a system where CSP is allowed for base-type values only. In the presence of CSP for higher-type values, on the other hand, there is no single annotation that is better than all the other annotations. Keyphrases: binding time analysis, cross stage persistence, partial evaluation, staging In: James H. Davenport and Fadoua Ghourabi (editors). SCSS 2016. 7th International Symposium on Symbolic Computation in Software Science, vol 39, pages 1-13.
|