ABSTRACT
Partial evaluation distinguishes between different binding times when manipulating values in a program. A partial evaluator performs evaluation steps on values with a static binding time whereas it generates code for values with a dynamic binding time. Binding time descriptions have evolved from monolithic to fine grained, partially static data structures where different components may have different binding times.
We consider the next step in this evolution where not just data constructors but also operations can give rise to partially static structures, which are processed by the partial evaluator. We introduce this notion in an online setting, generalize it, generate a binding-time analysis for it, and implement an offline program generator supporting partially static operations with it. We report on our initial experiences with this new approach.
- N. D. Jones, P. Sestoft, and H. Søndergaard. An experiment in partial evaluation: The generation of a compiler generator. In J.-P. Jouannaud, editor, Rewriting Techniques and Applications, pages 124--140, Dijon, France, 1985. Springer. LNCS 202. Google ScholarDigital Library
- O. Kiselyov, K. N. Swadi, and W. Taha. A methodology for generating verified combinatorial circuits. In G. C. Buttazzo, editor, EMSOFT 2004, pages 249--258, Pisa, Italy, Sept. 2004. ACM. ISBN 1--58113--860--1. Google ScholarDigital Library
- J. Launchbury and C. K. Holst. Handwriting cogen to avoid problems with static typing. In Draft Proceedings, Fourth Annual Glasgow Workshop on Functional Programming, pages 210--218, Skye, Scotland, 1991. Glasgow University.Google Scholar
- T. Æ. Mogensen. Partially static structures in a self-applicable partial evaluator. In D. Bjørner, A. P. Ershov, and N. D. Jones, editors, Partial Evaluation and Mixed Computation, pages 325--347, Amsterdam, 1988. North-Holland.Google Scholar
- P. Thiemann. Continuation-based partial evaluation without continuations. In R. Cousot, editor, Proc. Intl. Static Analysis Symposium, SAS'03, volume 2694 of LNCS, pages 366--382, San Diego, CA, USA, June 2003. Springer. Google ScholarDigital Library
Index Terms
- Partially static operations
Recommendations
On rank-diminishing operations and their applications to the solution of linear equations
ZusammenfassungEs sind in der Literatur (siehe [1] bis [8] verschiedene iterative Methoden zur Lösung linearer Gleichungssysteme bekannt, die jedoch im allgemeinen nur bei den speziellen Problemen angewandt wurden, welche die einzelnen Verfasser ...
Empirische Zielforschung und Operations Research
Die Entwicklung realitätsbezogener Modelle von Unternehmensentscheidungen impliziert u. a. die Notwendigkeit einer möglichst realitätsnahen Bestimmung unternehmerischer Zielsetzungen. Aus diesem Grunde sind Ergebnisse der empirischen Zielforschung für ...
Languages and translation techniques for extensive use of parallel operations
The basic assumption for the following paper is the availability of as many processors as the possible parallelism in a program requires. Such a system e. g. may be a hybrid system. Based on the single assignment concept, some features and a necessary ...
Comments