Program synthesizing method and apparatus
First Claim
1. A program generating apparatus for generating a new program from at least first and second program components, the first and second program components having non-matching interface specifications, each interface specification including a program connection mechanism by which the corresponding program component interacts with other program components and a data type which the corresponding program component processes, the program generating apparatus comprising:
- a program components'"'"' database means for storing said program components;
an interface specifications'"'"' database means for storing the interface specifications of said program components;
means for storing a connection mechanism transformation rule for controlling transforming the connection mechanisms of the first and second program components to be compatible with each other;
means for storing a data type transformation rule for controlling transforming the data type of the first program component into the data type of the second program component and the data type of the second program component into the data type of the first program component;
a mediating program generator for detecting that the interface specifications of the first and second program components are non-matching and without modifying the first and second program components generating a mediating program which has said connection mechanisms of the interface specifications of the first and second programs for interconnection with both the first and second program components and which (i) transforms said data types of the first program component into the data type of the second program component and the data type of the second program component into the data type of the first program component and (ii) transforms connection mechanisms of the first and second program components to be compatible with each other in accordance with said connection mechanism transformation rule and said data type transformation rule; and
,a components'"'"' composer means for generating the new program by combining said first and second program component and said mediating program, the new program being stored in the program components'"'"' database means.
1 Assignment
0 Petitions
Accused Products
Abstract
A plurality of program components, which do not have matching interfaces, are combined together automatically to generate a larger new program. An interface specifications'"'"' database registers the interface specifications corresponding to each of the program components. A program transformation rule memory stores transformation rules for controlling the reconciliation of the non-matching interface specifications of the program components. A data type memory stores data type transformation rules for reconciling non matching data specifications. A mediating program generator detects a mismatch of the interface specifications between at least two program components which are being combined and generates a mediating program in accordance with the program transformation rule and the data type transformation rule which mediating program enables the two programs and their data to communicate. A components composer generates the larger new program from the program components in the program components'"'"' database and the generated mediating program.
40 Citations
7 Claims
-
1. A program generating apparatus for generating a new program from at least first and second program components, the first and second program components having non-matching interface specifications, each interface specification including a program connection mechanism by which the corresponding program component interacts with other program components and a data type which the corresponding program component processes, the program generating apparatus comprising:
-
a program components'"'"' database means for storing said program components; an interface specifications'"'"' database means for storing the interface specifications of said program components; means for storing a connection mechanism transformation rule for controlling transforming the connection mechanisms of the first and second program components to be compatible with each other; means for storing a data type transformation rule for controlling transforming the data type of the first program component into the data type of the second program component and the data type of the second program component into the data type of the first program component; a mediating program generator for detecting that the interface specifications of the first and second program components are non-matching and without modifying the first and second program components generating a mediating program which has said connection mechanisms of the interface specifications of the first and second programs for interconnection with both the first and second program components and which (i) transforms said data types of the first program component into the data type of the second program component and the data type of the second program component into the data type of the first program component and (ii) transforms connection mechanisms of the first and second program components to be compatible with each other in accordance with said connection mechanism transformation rule and said data type transformation rule; and
,a components'"'"' composer means for generating the new program by combining said first and second program component and said mediating program, the new program being stored in the program components'"'"' database means. - View Dependent Claims (2)
-
-
3. A program synthesizing apparatus for generating a new program by synthesizing a plurality of program components, each program component having a different interface specification defining a connection mechanism part and a data type, the apparatus comprising:
-
a program components'"'"' database means for storing the plurality of program components; an interface specifications'"'"' database means for storing the interface specifications of said program components; means for storing a connection mechanism transformation rule for transforming the connection mechanism part defined in each said interface specification into another connection mechanism part; a mediating program generator for detecting a difference between interface specifications of at least two program components and generating a mediating program for transforming said connection mechanism part defined in each said interface specification into the another connection mechanism part, at least in accordance with said connection mechanism transformation rule; and a components'"'"' composer for generating the new program by synthesizing said program component stored in said program components'"'"' database means and said mediating program. - View Dependent Claims (4)
-
-
5. A program synthesizing apparatus for generating a new program from a plurality of program components, each of the plurality of program components having a different interface specification, each interface specification including a program connection mechanism part and a data type, the apparatus comprising:
-
a program components'"'"' database means for storing said plurality of program components; an interface specifications'"'"' database means for storing the interface specifications of said plurality of program components; means for storing connection mechanism transformation rules for transforming the connection mechanism part of a first selected one of the program components and the connection mechanism part of a second selected one of the programs components into each other; means for storing a data type transformation rule for transforming the data type of said interface specification of the first and second program components into the data type of said interface specification of the second and first program components, respectively; a mediating program generator for detecting a difference between interface specifications of the first and second selected program components and generating a mediating program for transforming said connection mechanism part and said data type defined in the interface specifications of the first and second selected program components into the connection mechanism part and the data type of the each other, in accordance with said connection mechanism transformation rule and said data type transformation rule; and
,a components'"'"' composer for generating the new program by synthesizing said first and second selected program components and said generated mediating program.
-
-
6. A program synthesizing method for generating a new program by synthesizing at least two desired program components each having a different interface specification defining a connection mechanism part, by using a processing apparatus connected with a storage device, the method comprising:
-
selecting the at least two desired program components from a database which holds a plurality of program components for selection; checking for a difference between the interface specifications of said selected at least two desired program components; responsive to detecting the difference between the interface specifications of said selected program components, checking among a plurality of connection mechanism transformation rules for a connection mechanism transformation rule which provides coincidence between connection mechanism parts of the interface specifications of the at least two desired program components; responsive to a presence of said connection mechanism transformation rule which provides coincidence between the interface specifications of the at least two desired program components, storing said connection mechanism transformation rule in said storage device; generating a mediating program for synthesizing said at least two desired program components with said stored connection mechanism transformation rule; and generating the new program by synthesizing said mediating program and said at least two desired program components. - View Dependent Claims (7)
-
Specification