Top-down synthesis of divide-and-conquer algorithms
Artificial Intelligence
A survey and classification of some program transformation approaches and techniques
The IFIP TC2/WG 2.1 Working Conference on Program specification and transformation
Reusability through program transformations
Software reusability: vol. 1, concepts and models
Specification and transformation of programs: a formal approach to software development
Specification and transformation of programs: a formal approach to software development
Programming from specifications
Programming from specifications
SDE 4 Proceedings of the fourth ACM SIGSOFT symposium on Software development environments
Building an evolution transformation library
ICSE '90 Proceedings of the 12th international conference on Software engineering
KIDS: A Semiautomatic Program Development System
IEEE Transactions on Software Engineering
A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
The Evolution of Programs
A Theory of Software Reusability
ESOP '88 Proceedings of the 2nd European Symposium on Programming
Proceedings of the 1977 symposium on Artificial intelligence and programming languages
Programming as an evolutionary process
ICSE '76 Proceedings of the 2nd international conference on Software engineering
Hi-index | 0.00 |
Building a program from an existing one - called design with program reuse - has a number of interesting payoffs but differs from classical program designs. This paper addresses the issue of program reuse in the context in which design is achieved by a transformational development. A design method for making easy the reuse is introduced. The idea is to highlight and exploit the link between two related specifications - the specification for which a program has to be developed and the specification of the program selected to be reused - in order to guide the program reuse. In practice, a set of "Reuse Schemes" is proposed and the program design is done by applying one or several of them to an initial specification. The use of such schemes allows to partially or completely systematize the program reuse by using first-order theorem proving. A reuse example illustrates the proposed design method.