P++: A Language for Software System Generators

Vivek Singhal, Don S. Batory · 1993

P++ is a programming language that supports the GenVoca model, a particular style of software design that is intended for building software system generators. P++ is an enhanced version of C++: it offers linguistic extensions for component encapsulation, abstraction, parameterization, and inheritance, where a component is a suite of interrelated classes and functions. This paper describes the motivations for P++, the ideas which underlie its design, the syntax and features of the language, and related areas of research. Keywords: program families, large-scale encapsulation, software system synthesis, GenVoca, software system generators. 1 Introduction Almost two decades ago, Parnas observed that software design was incorrectly taught as a technique which sought a unique program/solution, because, over its lifetime, the program inevitably would evolve into a family of similar programs [Par76]. When programs are not designed for extensibility, the effort and expense needed to modify th...

Read the paper · More papers on PaperTik