A Functional Programming Based CACSD Environment

Abstract An engineering design environment should allow users to design complex engineering systems, to manage and coordinate the designs as they proceed, and to develop and modify the software tools used for designs. These requirements call for a programming environment with an integrated set of software tools of different functionalities . The required functionalities are mainly: the provision of design algorithms based on suitable numeric software, appropriate data structures for the application area, a user-friendly interface, and the provision of a design database for the long term management of the designs generated. The provision of such an integrated design environment in a functional programming environment with particular emphasis on the provision of appropriate control-theoretic data structures and data model is described. Objectorientation is used to model entities in the application domain, which are represented by persistent objects in the database, Structural properties, relationships and operations on entities are modelled through objects and functions classified into strict types with inheritance semantics and a recursive structure.