RUS  ENG
Full version
JOURNALS // Proceedings of the Institute for System Programming of the RAS // Archive

Proceedings of ISP RAS, 2018 Volume 30, Issue 4, Pages 29–44 (Mi tisp345)

This article is cited in 3 papers

An interactive specializer based on partial evaluation for a Java subset

I. A. Adamovicha, And. V. Klimovb

a Ailamazyan Program Systems Institute of Russian Academy of Sciences
b Keldysh Institute of Applied Mathematics of Russian Academy of Sciences

Abstract: Specialization is a program optimization approach that implies the use of a priori information about values of some variables. Specialization methods are being developed since 1970s (mixed computations, partial evaluation, supercompilation). However, it is surprising, that even after three decades, these promising methods have not been put into the wide programming practice. One may wonder: What is the reason? Our hypothesis is that the task of specialization requires much greater human involvement into the specialization process, the analysis of its results and conducting computer experiments than in the case of common program optimization in compilers. Hence, specializers should be embedded into integrated development environments (IDE) familiar to programmers and appropriate interactive tools should be developed. In this paper we provide a work-in-progress report on results of development of an interactive specializer based on partial evaluation for a subset of the Java programming language. The specializer has been implemented within the popular Eclipse IDE. Scenarios of the human-machine dialogue with the specializer and interactive tools to compose the specialization task and to control the process of specialization are under development. An example of application of the current version of the specializer is shown. The residual program runs several times faster than the source one.

Keywords: program analysis, program transformation, interactive program specialization, partial evaluation, object-oriented language, integrated development environment.

Language: English

DOI: 10.15514/ISPRAS-2018-30(4)-2



Bibliographic databases:


© Steklov Math. Inst. of RAS, 2024