Claims Analysis
Total Claims: 34
Claim 1
Independent Claim
136 words
A method in a computer system for reducing an intentional program tree, the intentional program tree having a plurality of high-level computational constructs, the method comprising: providing a reduction enzyme for each of a plurality of computational constructs, each reduction enzyme for replacing a node representing the high-level computational construct with a subtree representing an implementation of the high-level computational construct, each node of the subtree representing a low-level computational construct; and for each of a plurality of nodes of the intentional program tree, identifying a reduction enzyme for the high-level computational construct represented by the node from among the provided reduction enzymes; and invoking the identified reduction enzyme passing a reference to the node wherein the identified reduction enzyme replaces the referenced node with a subtree in which each node represents a low-level computational construct.
Claim 2
Independent Claim
136 words
A method in a computer system for reducing an intentional program tree, the intentional program tree having a plurality of high-level computational constructs, the method comprising: providing a reduction enzyme for each of a plurality of computational constructs, each reduction enzyme for replacing a node representing the high-level computational construct with a subtree representing an implementation of the high-level computational construct, each node of the subtree representing a low-level computational construct; and for each of a plurality of nodes of the intentional program tree, identifying a reduction enzyme for the high-level computational construct represented by the node from among the provided reduction enzymes; and invoking the identified reduction enzyme passing a reference to the node wherein the identified reduction enzyme replaces the referenced node with a subtree in which each node represents a low-level computational construct.
Claim 3
Dependent Claim
23 words
The method of claim 1 wherein the identifying includes searching for a reduction enzyme that matches the high-level computational construct of the node.
Claim 4
Dependent Claim
44 words
The method of claim 2 wherein each provided reduction enzyme has an associated match function and wherein the searching includes invoking the match functions passing a reference to the node until a match function indicates that the associated reduction enzyme can reduce the node.
Claim 5
Dependent Claim
52 words
The method of claim 1 wherein a plurality of reduction enzymes are provided for each high-level computational construct, each reduction enzyme for a high-level computational construct providing a different implementation of the high-level computational construct, and wherein the identifying selects one of the plurality of reduction enzymes for the high-level computational construct.
Claim 6
Independent Claim
231 words
A method in a computer system for reducing an intentional program tree representing computer programs into a reduced program so that a new high-level computational construct can be added to a current set of high-level computational constructs without affecting the computer programs that are already represented, each computer program having a plurality of high-level computational constructs from the current set of high-level computational constructs, the method comprising: for each computer program, storing the computer program as an intentional program tree having a plurality of nodes, each node corresponding to a high-level computational construct of the computer program and having a reference to any node corresponding to an operand of the high-level computational construct; modifying the computer program by directly manipulating the nodes of the intentional program tree; displaying the computer program by retrieving the nodes of the program tree data structure, generating a display representation corresponding to the high-level computational construct of each retrieved node, and displaying the generated display representations; and generating the reduced program tree with low-level computational constructs that represent the computer program by invoking a reduction enzyme for each of a plurality of nodes of the intentional program tree, each reduction enzyme for replacing a node with a subtree of nodes that correspond to low-level computational constructs implementing the high-level computational construct of the node, each high-level computational construct in the current set having a reduction enzyme.
Claim 7
Independent Claim
231 words
A method in a computer system for reducing an intentional program tree representing computer programs into a reduced program so that a new high-level computational construct can be added to a current set of high-level computational constructs without affecting the computer programs that are already represented, each computer program having a plurality of high-level computational constructs from the current set of high-level computational constructs, the method comprising: for each computer program, storing the computer program as an intentional program tree having a plurality of nodes, each node corresponding to a high-level computational construct of the computer program and having a reference to any node corresponding to an operand of the high-level computational construct; modifying the computer program by directly manipulating the nodes of the intentional program tree; displaying the computer program by retrieving the nodes of the program tree data structure, generating a display representation corresponding to the high-level computational construct of each retrieved node, and displaying the generated display representations; and generating the reduced program tree with low-level computational constructs that represent the computer program by invoking a reduction enzyme for each of a plurality of nodes of the intentional program tree, each reduction enzyme for replacing a node with a subtree of nodes that correspond to low-level computational constructs implementing the high-level computational construct of the node, each high-level computational construct in the current set having a reduction enzyme.
Claim 8
Dependent Claim
36 words
The method of claim 5 including when a new high-level computational construct is added, adding a new reduction enzyme that is invoked when a node corresponding to the new high-level computational construct is to be reduced.
Claim 9
Dependent Claim
44 words
The method of claim 5 wherein the generating of the reduced program tree includes for each of a plurality of nodes in the intentional program tree identifying which reduction enzyme is to be invoked to reduce the high-level computational construct represented by the node.
Claim 10
Dependent Claim
24 words
The method of claim 5 wherein displaying of the computer program includes invoking a display enzyme for each node in the intentional program tree.
Claim 11
Independent Claim
124 words
A method in a computer system for reducing an intentional program tree representing a computer program, the intentional program tree having nodes representing high-level computational constructs, each high-level computational construct having a reduction enzyme, the reduction enzyme for reducing a node representing the high-level computational construct with a node representing a low-level computational construct, the method comprising: selecting a node of the intentional program tree; selecting a reduction enzyme that can reduce to the high-level computational construct of the selected node; and invoking the selected reduction enzyme, wherein the reduction enzyme replaces the selected node with a node representing low-level computational and replaces each child node of the selected node by repeating the selecting and invoking of a reduction enzyme for each child node.
Claim 12
Independent Claim
124 words
A method in a computer system for reducing an intentional program tree representing a computer program, the intentional program tree having nodes representing high-level computational constructs, each high-level computational construct having a reduction enzyme, the reduction enzyme for reducing a node representing the high-level computational construct with a node representing a low-level computational construct, the method comprising: selecting a node of the intentional program tree; selecting a reduction enzyme that can reduce to the high-level computational construct of the selected node; and invoking the selected reduction enzyme, wherein the reduction enzyme replaces the selected node with a node representing low-level computational and replaces each child node of the selected node by repeating the selecting and invoking of a reduction enzyme for each child node.
Claim 13
Dependent Claim
31 words
The method of claim 9 wherein the selecting of a reduction enzyme includes invoking a match function of reduction enzymes to determine whether the reduction enzymes can reduce the selected node.
Claim 14
Dependent Claim
29 words
The method of claim 9 including defining additional high-level computational constructs to be used in specifying computer programs and defining a reduction enzyme to reduce the high-level computational construct.
Claim 15
Dependent Claim
29 words
The method of claim 11 wherein a reduction enzyme for a new computational construct is added by adding the reduction enzyme to a list of currently defined reduction enzymes.
Claim 16
Independent Claim
171 words
A method in a computer system for reducing a computer program that is specified without using a computer programming language, the computer program being specified using a plurality of high-level computational constructs, the method comprising: for each of a plurality of high-level computational constructs, receiving an indication of the high-level computational construct from a user of the computer system; in response to receiving the indication of the high-level computational construct, creating a node for the high-level computational construct; storing the received indication of the high-level computational construct in the created node; determining whether the high-level computational construct has an operand; when the computational construct has an operand, storing in the created node a reference to a node that corresponds the operand; and storing the created node in an intentional program tree; and invoking a reduction enzyme for the high-level computational construct of the created node, the reduction enzyme for replacing the created node with one or more nodes that represent an implementation of the high-level computational construct using low-level computational constructs.
Claim 17
Independent Claim
171 words
A method in a computer system for reducing a computer program that is specified without using a computer programming language, the computer program being specified using a plurality of high-level computational constructs, the method comprising: for each of a plurality of high-level computational constructs, receiving an indication of the high-level computational construct from a user of the computer system; in response to receiving the indication of the high-level computational construct, creating a node for the high-level computational construct; storing the received indication of the high-level computational construct in the created node; determining whether the high-level computational construct has an operand; when the computational construct has an operand, storing in the created node a reference to a node that corresponds the operand; and storing the created node in an intentional program tree; and invoking a reduction enzyme for the high-level computational construct of the created node, the reduction enzyme for replacing the created node with one or more nodes that represent an implementation of the high-level computational construct using low-level computational constructs.
Claim 18
Dependent Claim
29 words
The method of claim 13 including displaying the computer program by generating a display representation of the high-level computational construct of the created node; and displaying the display representation.
Claim 19
Dependent Claim
27 words
The method of claim 14 wherein the receiving of the indication of the computational construct is received relative to a displayed portion of the specified computer program.
Claim 20
Dependent Claim
14 words
The method of claim 13 including generating object code from the low-level computational constructs.
Claim 21
Dependent Claim
24 words
The method of claim 13 wherein new high-level computational constructs can be defined without modifying any computer program represented by an intentional program tree.
Claim 22
Dependent Claim
18 words
The method of claim 17 wherein a new reduction enzyme is defined for the new high-level computational construct.
Claim 23
Dependent Claim
137 words
A computer-readable medium containing instructions for causing a computer system to reduce a program tree, the program tree having a plurality of high-level computational constructs, the computer system having a reduction enzyme for each of a plurality of computational constructs, each reduction enzyme for replacing a node representing the high-level computational construct with a subtree representing an implementation of the high-level computational construct, each node of the subtree representing a low-level computational construct, by: for each of a plurality of nodes of the intentional program tree, identifying a reduction enzyme for the high-level computational construct represented by the node from among the reduction enzymes; and invoking the identified reduction enzyme passing a reference to the node wherein the identified reduction enzyme replaces the referenced node with a subtree in which each node represents a low-level computational construct.
Claim 24
Dependent Claim
137 words
A computer-readable medium containing instructions for causing a computer system to reduce a program tree, the program tree having a plurality of high-level computational constructs, the computer system having a reduction enzyme for each of a plurality of computational constructs, each reduction enzyme for replacing a node representing the high-level computational construct with a subtree representing an implementation of the high-level computational construct, each node of the subtree representing a low-level computational construct, by: for each of a plurality of nodes of the intentional program tree, identifying a reduction enzyme for the high-level computational construct represented by the node from among the reduction enzymes; and invoking the identified reduction enzyme passing a reference to the node wherein the identified reduction enzyme replaces the referenced node with a subtree in which each node represents a low-level computational construct.
Claim 25
Dependent Claim
24 words
The computer-readable medium of claim 19 wherein the identifying includes searching for a reduction enzyme that matches the high-level computational construct of the node.
Claim 26
Dependent Claim
44 words
The computer-readable medium of claim 20 wherein each reduction enzyme has an associated match function and wherein the searching includes invoking the match functions passing a reference to the node until a match function indicates that the associated reduction enzyme can reduce the node.
Claim 27
Dependent Claim
53 words
The computer-readable medium of claim 19 wherein a plurality of reduction enzymes are provided for each high-level computational construct, each reduction enzyme for a high-level computational construct providing a different implementation of the high-level computational construct, and wherein the identifying selects one of the plurality of reduction enzymes for the high-level computational construct.
Claim 28
Dependent Claim
126 words
A computer-readable medium containing instructions for causing a computer system to reduce a computer program that is specified without using a computer programming language, the computer program being specified using a plurality of high-level computational constructs, by: for each of a plurality of high-level computational constructs, receiving an indication of the high-level computational construct; in response to receiving the indication of the high-level computational construct, storing a node in a program tree, the node referencing the indicated high-level computational construct and any operands of the high-level computational construct; and invoking a reduction enzyme for the high-level computational construct of the node, the reduction enzyme for replacing the node with one or more nodes that represent an implementation of the high-level computational construct using low-level computational constructs.
Claim 29
Dependent Claim
126 words
A computer-readable medium containing instructions for causing a computer system to reduce a computer program that is specified without using a computer programming language, the computer program being specified using a plurality of high-level computational constructs, by: for each of a plurality of high-level computational constructs, receiving an indication of the high-level computational construct; in response to receiving the indication of the high-level computational construct, storing a node in a program tree, the node referencing the indicated high-level computational construct and any operands of the high-level computational construct; and invoking a reduction enzyme for the high-level computational construct of the node, the reduction enzyme for replacing the node with one or more nodes that represent an implementation of the high-level computational construct using low-level computational constructs.
Claim 30
Dependent Claim
29 words
The computer-readable medium of claim 23 including displaying the computer program by generating a display representation of the high-level computational construct of the node; and displaying the display representation.
Claim 31
Dependent Claim
28 words
The computer-readable medium of claim 24 wherein the receiving of the indication of the computational construct is received relative to a displayed portion of the specified computer program.
Claim 32
Dependent Claim
15 words
The computer-readable medium of claim 23 including generating object code from the low-level computational constructs.
Claim 33
Dependent Claim
25 words
The computer-readable medium of claim 23 wherein new high-level computational constructs can be defined without modifying any computer program represented by an intentional program tree.
Claim 34
Dependent Claim
19 words
The computer-readable medium of claim 27 wherein a new reduction enzyme is defined for the new high-level computational construct.