The very first release of Delta/ADS in the late 1970s supported some of the same concepts we see today in generative programming. Naturally in the intervening years the world of software engineering has made dramatic improvements.
Delta has made significant investments to bring these different worlds together – the practical experience from 40 years of generator development, the real-world experience of large scale development projects, the latest research work on generative programming and the latest thinking on software development.
The result is a series of new technologies that underpin Delta’s current and future product offerings:
- ANGIE – ANGIE is a frame-based solution to building generators. Following the generative programming approach ANGIE provides a set of common features that are required by a family of generators. A domain specific generator is then manufactured to solve a specific problem, be it code generation or general model transformation.
- HyperSenses™ – implements the concepts of Generative Programming where a domain specific language is used to specify the problem to be solved. Instead of storing this program as syntax in a text file it is stored as a model in a repository. A number of different views are then available to define, maintain and understand the specification. Such views include textual, semi-graphic and graphical. HyperSenses supports creation of generic models in an OMG MOF/XML repository. The “Configurator” tool provides the programmer with an active textual representation of this model. “Pattern Editor” defines the patterns used in the specification. “Meta Composer” defines the meta model that is being used.
The ANGIE frame based generator technology has already been proven in large-scale projects and is at the heart of the Delta products SCORE Adaptive Bridges and SCOUT² Development Platform.
Where to Go Next?
Please continue to the next section to see how Delta works closely with the Research Community to make selected emerging technologies freely available to the global academic and developer communities.