Abstract
Program transformation by supercompilation is summarized. The current state of work on supercompilation is illustrated by several examples of successful transformation. In the process of work it became clear that many different supercompilers can be written by using various techniques in their basic modules. A formal language to describe these techniques is needed. An outline of such a language, SCPL, for the top level of control in a supercompiler is given.
Preview
Unable to display preview. Download preview PDF.
References
S.M. Abramov. Metavychisleniya i ikh Prilozhenija (Metacomputation and its Applications, in Russian) Nauka, Moscow, 1995.
M.A. Bulyonkov. Polyvariant mixed computation for analyzer programs, Acta Informatica, 21, pp. 473–84, 1984.
A.P. Ershov. On the essence of compilation, Programmirovanie (5):21–39, 1977 (in Russian). See translation in: E.J.Neuhold, ed., Formal description of Programming Concepts pp 391–420, North-Holland, 1978.
A.P. Ershov. Mixed computation in the class of recursive program schemata, Acta Cybernetica, 4(1), pp. 19–23, 1078
A.P. Ershov. Mixed computation: potential applications and problems for study, Theoretical Computer Science, 18, pp. 41–67, 1982
A.P.Ershov. Opening Key-note Speech, in: D.Bjørner, A.P.Ershov and N.D.Jones, ed. Partial Evaluation and Mixed Computation, North-Holland, pp.225–282, 1988.
Y. Futamura. Partial evaluation of computation process — an approach to compiler compiler. Systems, Computers, Controls, 2, 5, pp. 45–50, 1971
Y.Futamura and K.Nogi. Generalized Partial Evaluation, in: D.Bjørner, A.P.Ershov, N.D.Jones (eds), Partial Evaluation and Mixed Computation, Proceedings of the IFIP TC2 Workshop, pp.133–151, North-Holland Publishing Co., 1988.
R.Glück and A.V.Klimov. Occam's razor in metacomputation: the notion of a perfect process tree, in: P.Cousot, M.Falaschi, G.Filè, and Rauzy, ed. Static Analysis, LNCS vol.724, pp.112–123, Springer 1993.
N.D. Jones, P. Sestoft and H. Sondergaard. An Experiment in Partial Evaluation: The Generation of a Compiler Generator. In: Jouannaud J.-P. (Ed.) Rewriting Techniques and Applications, Dijon, France, LNCS 202, pp. 124–140, Springer, 1985.
D.E. Knuth, J.H. Morris, V.R. Pratt, Fast Pattern Matching in Strings, SIAM Journal of Computer, 6(2) pp. 323–350, 1977.
A.P.Nemytykh, V.A.Pinchuk and V.F.Turchin. A Self-Applicable Supercompiler, in: Proc. International Seminar on Partial Evaluation at Dagstuhl, February 1996, Lecture Notes in Computer Science, Springer 1996 (to appear).
M.H.Sørensen, R.Glück and N.D.Jones, A positive supercompiler, Journal of Functional Programming,...
V.F.Turchin. Equivalent transformations of recursive functions defined in Refal (in Russian), in: Teoriya Yazykov I Metody Postroeniya Sistem Programmirovaniya (Proceedings of the Symposium), Kiev-Alushta (USSR), pp.31–42, 1972.
V.F. Turchin et al. Bazisnyi Refal i yego realizatsiya na vychislitel'nykh mashinakh, (Basic Refal and its implementation on computers, in Russian), GOSSTROY SSSR, TsnIPIASS, Moscow, 1977.
V.F.Turchin. The Language Refal, the Theory of Compilation and Metasystem Analysis, Courant Computer Science Report #20, New York University, 1980.
V.F. Turchin, R.M. Nirenberg and D.V. Turchin. Experiments with a supercompiler. In: ACM Symposium on Lisp and Functional Programming, ACM, New York, pp. 47–55, 1982.
V.F. Turchin. The concept of a supercompiler, ACM Transactions on Programming Languages and Systems, 8, pp. 292–325, 1986.
V.F.Turchin. Refal-5, Programming Guide and Reference Manual, New England Publishing Co., 1989.
V.F.Turchin and A.P.Nemytykh. Metavariables: Their implementation and use in Program Transformation, CCNY Technical Report CSc TR-95-012, 1995.
V.F.Turchin and A.P.Nemytykh, A. A Self-applicable Supercompiler CCNY Technical Report CSc TR-95-010, 1995.
V.F.Turchin. Metacomputation: Metasystem Transitions plus Supercompilation, Proc. International Seminar on Partial Evaluation at Dagstuhl, February 1996, Lecture Notes in Computer Science, Springer 1996 (to appear).
P.Wadler. Deforestation: transforming programs to eliminate trees, in: H.Ganziger (ed.) ESOP'88, Lecture Notes in Computer Science, vol.300, pp.344–358, Springer, 1988.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Turchin, V.F. (1996). Supercompilation: Techniques and results. In: Bjørner, D., Broy, M., Pottosin, I.V. (eds) Perspectives of System Informatics. PSI 1996. Lecture Notes in Computer Science, vol 1181. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62064-8_20
Download citation
DOI: https://doi.org/10.1007/3-540-62064-8_20
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-62064-8
Online ISBN: 978-3-540-49637-3
eBook Packages: Springer Book Archive