This book is the second of two volumes that present the main results which emerged from the project CIP - Computer-Aided, Intuition-Guided Programming - at the Technical University of Munich. Its central theme is program development by transformation, a methodology which is becoming more and more important. Whereas Volume I contains the description and formal specification of a wide spectrum language CIP-L particularly tailored to the needs of transformational programming, Volume II serves a double purpose: First, it describes a system, called CIP-S, that is to assist a programmer in the method of transformational programming. Second, it gives a non-toy example for this very method, since it contains a formal specification of the system core and transformational developments for the more interesting system routines. Based on a formal calculus of program transformations, the informal requirements for the system are stated. Then the system core is formally specified using the algebraic data types and the pre-algorithmic logical constructs of the wide spectrum language CIP-L. It is demonstrated how executable, procedural level programs can be developed from this specification according to formal rules. The extensive collection of these rules is also contained in the book; it can be used as the basis for further developments using this method. Since the system has been designed in such a way that it is parameterized with the concrete programming language to be transformed, the book also contains a guide how to actualize this parameter; the proceeding is exemplified with a small subset of CIP-L.
Assisted by: F. L. Bauer, H. Ehler, Alexander Horsch, B. Moller, H. Partsch, O. Paukner, P. Pepper