A National Science Foundation Proposal

The objectives of this research are to improve software productivity, reliability, and performance of complex systems. The approach combines program transformations, sometimes in reflective ways, to turn very high-level perspicuous specifications into efficient implementations. These transformations will be implemented in a metatransformational system, which itself will be transformed from an executable specification into efficient code. Experiments will be conducted to assess the research objectives in scaled-up applications targetted to systems that perform complex program analysis and translation.

[1]  Robert Paige,et al.  Program derivation with verified transformations — a case study , 1995 .

[2]  Robert Paige,et al.  Binding performance at language design time , 1987, POPL '87.

[3]  H. B. Curry Modified basic functionality in combinatory logic , 1969 .

[4]  Charles L. Forgy,et al.  Rete: A Fast Algorithm for the Many Patterns/Many Objects Match Problem , 1982, Artif. Intell..

[5]  Deepak Goyal,et al.  The formal reconstruction and speedup of the linear time fragment of Willard's relational calculus subset , 1997, Algorithmic Languages and Calculi.

[6]  Zhe Yang Encoding types in ML-like languages , 2004, Theor. Comput. Sci..

[7]  Zhe Yang,et al.  High level reading and data structure compilation , 1997, POPL '97.

[8]  Robert Paige,et al.  Towards increased productivity of algorithm implementation , 1993, SIGSOFT '93.

[9]  Robert Paige,et al.  Using Multiset Discrimination to Solve Language Processing Problems Without Hashing , 1995, Theor. Comput. Sci..

[10]  A. Tarski A LATTICE-THEORETICAL FIXPOINT THEOREM AND ITS APPLICATIONS , 1955 .

[11]  Yanhong A. Liu,et al.  Principled strength reduction , 1997, Algorithmic Languages and Calculi.

[12]  Bernard Lang,et al.  Programming Environments Based on Structured Editors: The MENTOR Experience, , 1980 .

[13]  Jeffrey D. Ullman,et al.  Principles Of Database And Knowledge-Base Systems , 1979 .

[14]  Chia-Hsiang Chang,et al.  From Regular Expressions to DFA's Using Compressed NFA's , 1992, Theor. Comput. Sci..

[15]  R. Hindley The Principal Type-Scheme of an Object in Combinatory Logic , 1969 .

[16]  Edith Schonberg,et al.  Programming with Sets , 1986, Texts and Monographs in Computer Science.

[17]  John H. Reif,et al.  Symbolic evaluation and the global value graph , 1977, POPL.

[18]  Thomas W. Reps,et al.  Incremental Context-Dependent Analysis for Language-Based Editors , 1983, TOPL.

[19]  Allen Goldberg,et al.  Stream processing , 1984, LFP '84.

[20]  Robert E. Tarjan,et al.  A Linear Time Solution to the Single Function Coarsest Partition Problem , 1985, Theor. Comput. Sci..

[21]  Deepak Goyal,et al.  A New Solution to the Hidden Copy Problem , 1998, SAS.

[22]  Krzysztof R. Apt,et al.  Logic Programming , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[23]  Thomas Reps,et al.  The Synthesizer Generator: A System for Constructing Language-Based Editors , 1988 .

[24]  Robert Paige,et al.  Viewing A Program Transformation System At Work , 1994, PLILP.

[25]  Jacob T. Schwartz,et al.  Automatic data structure choice in a language of very high level , 1975, CACM.

[26]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[27]  Dan E. Willard Applications of Range Query Theory to Relational Data Base Join and Selection Operations , 1996, J. Comput. Syst. Sci..

[28]  Jay Earley,et al.  High Level Iterators and a Method for Automatically Designing Data Structure Representation , 1976, Comput. Lang..

[29]  Dan E. Willard,et al.  Quasilinear algorithms for processing relational calculus expressions (preliminary report) , 1990, PODS '90.

[30]  Robert Paige,et al.  Program Derivation by Fixed Point Computation , 1989, Sci. Comput. Program..

[31]  Jean H. Gallier,et al.  Linear-Time Algorithms for Testing the Satisfiability of Propositional Horn Formulae , 1984, J. Log. Program..

[32]  J. Cai,et al.  A Language for Semantic Analysis , 1993 .

[33]  François Bancilhon,et al.  Naive Evaluation of Recursively Defined Relations , 1986, On Knowledge Base Management Systems.

[34]  Robert Paige,et al.  Programming with Invariants , 1986, IEEE Software.

[35]  Bloom Bard,et al.  Ready simulation, bisimulation, and the semantics of CCS-like languages , 1989 .

[36]  Jacob T. Schwartz,et al.  Optimization of Very High Level Languages - I. Value Transmission and Its Corollaries , 1975, Comput. Lang..

[37]  Edmond Schonberg,et al.  Programming with Sets: An Introduction to SETL , 1986 .

[38]  Fritz Henglein,et al.  Mechanical Translation of Set Theoretic Problem Specifications into Efficient RAM Code-A Case Study , 1987, J. Symb. Comput..

[39]  Jeffrey D. Ullman,et al.  Induction variables in very high level languages , 1976, POPL.

[40]  Patrick Borras,et al.  Centaur: the system , 1988, Software Development Environments.

[41]  Robert Paige,et al.  Real-time Simulation of a Set Machine on a Ram , 1989 .

[42]  Robert Paige,et al.  A Transformational Framework for the Automatic Control of Derived Data , 1981, VLDB.

[43]  Peter Sestoft,et al.  Partial evaluation and automatic program generation , 1993, Prentice Hall international series in computer science.

[44]  Bard Bloom,et al.  Transformational Design and Implementation of a New Efficient Solution to the Ready Simulation Problem , 1995, Sci. Comput. Program..

[45]  Robert E. Tarjan,et al.  More Efficient Bottom-Up Multi-Pattern Matching in Trees , 1992, Theor. Comput. Sci..

[46]  Fritz Henglein,et al.  Type Transformation and Data Structure Choice , 2009 .

[47]  P. Cousot,et al.  Constructive versions of tarski's fixed point theorems , 1979 .