Method and system for reducing an intentional program tree represented by high-level computational constructs
First Claim
1. A method for navigating through selection modes for a displayed representation of computational construct that represents a terminal operand, the selection modes including a left selection mode, a tree selection mode, and a right selection mode, the method comprising:
- setting a current selection to a selection of the computational construct representing the terminal operand in the left selection mode so that, when a further computational construct representing a binary operator is specified, the terminal operand will be a right operand of the binary operator;
when the current selection is the selection of the computational construct representing the terminal operand in the left selection mode and a user inputs a first indicator, setting the current selection to a selection of the computational construct representing the terminal operand in the tree selection mode so that, when a further computational construct is specified, the computational construct representing the terminal operand is replaced by the specified computational construct; and
when the current selection is the selection of the computational construct representing the terminal operand in the tree selection mode and the user inputs the first indicator, setting the current selection to a selection of the computational construct representing the terminal operand in the right selection mode so that, when a further computational construct representing a binary operator is specified, the terminal operand will be a left operand of the binary operator.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for generating a computer program in the manner that uses no computer programming language syntax. The system represents a computer program as an intentional program tree, which is a high-level program tree that is a syntax-independent representation using high-level computational constructs. The intentional program tree represents a programmer'"'"'s intent, rather than an implementation of the programmer'"'"'s intent. The programmer creates an intentional program tree using a syntax-independent editor. The editors allows a programmer to directly manipulate the intentional program tree. Because the program is stored as an intentional program tree in a syntax-independent manner, the editor allows the program to select in which of a various programming language the computer program is to be displayed. In addition, the system transforms an intentional program tree to a reduced program tree, which is a program tree comprising low-level computational constructs, in a process called reduction. The reduction process replaces expressions of programmer'"'"'s intents with a representation of one of possible multiple implementations of those intents using low-level computational constructs.
-
Citations
72 Claims
-
1. A method for navigating through selection modes for a displayed representation of computational construct that represents a terminal operand, the selection modes including a left selection mode, a tree selection mode, and a right selection mode, the method comprising:
-
setting a current selection to a selection of the computational construct representing the terminal operand in the left selection mode so that, when a further computational construct representing a binary operator is specified, the terminal operand will be a right operand of the binary operator; when the current selection is the selection of the computational construct representing the terminal operand in the left selection mode and a user inputs a first indicator, setting the current selection to a selection of the computational construct representing the terminal operand in the tree selection mode so that, when a further computational construct is specified, the computational construct representing the terminal operand is replaced by the specified computational construct; and when the current selection is the selection of the computational construct representing the terminal operand in the tree selection mode and the user inputs the first indicator, setting the current selection to a selection of the computational construct representing the terminal operand in the right selection mode so that, when a further computational construct representing a binary operator is specified, the terminal operand will be a left operand of the binary operator. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for navigating through selection modes for a displayed representation of computational construct that represents a unary operator, the unary operator having an operand, the selection modes including a left selection mode, a tree selection mode, a crown selection mode, and a right selection mode, the method comprising:
-
setting a current selection to a selection of the computational construct representing the unary operator and its operand in the left selection mode so that, when a computational construct representing a binary operator is specified, the unary operator will be a right operand of the binary operator; when the current selection is the selection of the computational construct representing the unary operator and its operand in the left selection mode and a user inputs a first indicator, setting the current selection to a selection of the computational construct representing the unary operator and its operand in the tree selection mode so that, when a computational construct is specified, the computational construct for the unary operator and its operand is replaced by the specified computational construct; when the current selection is the selection of the computational construct representing the unary operator and its operand in the tree selection mode and the user inputs the first indicator, setting the current selection to a selection of the computational construct representing the unary operator in the crown selection mode so that, when a computational construct is specified, the computational construct for the unary operator is replaced by the specified computational construct; when the current selection is the selection of the computational construct representing the unary operator in the crown selection mode and the user inputs the first indicator, navigating a displayed representation of the operand; and when the navigating of the operand is completed by the user inputting the first indicator, setting the current selection to a selection of the computational construct representing the unary operator and its operand in the right selection mode so that, when a computational construct representing a binary operator is specified, the unary operator and its operand will be a left operand of the binary operator. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for navigating through selection modes for a displayed representation of computational construct that represents a binary operator, the binary operator having a left and a right operand, the selection modes including a web selection mode, a tree selection mode, a crown selection mode and a right selection mode, the method comprising:
-
setting a current selection to a selection of the computational construct representing the binary operator and its operands in the left selection mode so that, when a computational construct representing another binary operator is specified, the binary operator will be a right operand of the other binary operator; when the current selection is the selection of the computational construct representing the binary operator and its operands in the left selection mode and a user inputs a first indicator, setting the current selection to a selection of the computational construct representing the binary operator and its operands in the tree selection mode so that, when a computational construct is specified, the computational constructs for the binary operator and its operands are replaced by the specified computational construct; when the current selection is the selection of the computational construct representing the binary operator and its operands in the tree selection mode and the user inputs the first indicator, navigating a representation of the left operand; when the navigation of the left operand is completed by the user inputting the first indicator, setting the current selection to a selection of the computational construct representing the binary operator in the crown selection mode so that, when a computational construct is specified, the computational construct for the binary operator is replaced by the specified computational construct; when the current selection is the selection of the computational construct representing the binary operator in the crown selection mode and the user inputs the first indicator, navigating a representation of the right operand; and when the navigation of the right operand is completed by the user inputting the first indicator, setting the current selection to a selection of the computational construct representing the binary operator and its operands in the right selection mode so that, when a computational construct representing another binary operator is specified, the binary operator and its operands will be a left operand of the other binary operator. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 29)
-
-
25. A method in a computer for navigating through a representation of a computational construct having zero or more operands, comprising:
-
receiving input from a user; when the received input is a specification of a binary operator, setting the computational construct to be a right operand of the binary operator; and when the received input is a first indicator, setting a current selection to a selection of the representation of a computational construct and its operands in a tree selection type so that when the user inputs a binary operator the computational construct and its operands will be replaced by the binary operator. - View Dependent Claims (26)
-
-
27. A method in a computer for navigating through a representation of a computational construct, comprising:
-
receiving input from a user; when the received input is a specification of another computational construct, replacing the computational construct and any of its operands by the other computational construct; and when the received input is a first indicator, setting a current selection to a selection of the computational construct representing the binary operator in a crown selection mode so that when the user then inputs another computational construct the computational construct will be replaced by the other computational construct. - View Dependent Claims (28)
-
-
30. A method in a computer for navigating through a representation of a computational construct, comprising:
-
receiving input from a user; when the received input is a specification of another computational construct, replacing the computational construct and any of its operands by the other computational construct; and when the received input is a first indicator, navigating a representation of a left operand of the computational construct. - View Dependent Claims (31, 32)
-
-
33. A method in a computer for navigating through a representation of a computational construct having at least one operand including a left operand, comprising:
-
navigating the left operand of the computational construct; and when the navigation of the left operand is completed by a user inputting a first indicator, setting a current selection to a selection of the representation of the computational construct in a crown selection mode so that when the then user inputs a binary operator the computational construct and its operands will be replaced by the binary operator. - View Dependent Claims (34, 35)
-
-
36. A method in a computer for navigating through a representation of a computational construct, comprising:
-
receiving input from a user; when the received input is a specification of another computational construct, replacing the computational construct by the other computational construct; and when the received input is a first indicator, navigating a right operand of the computational construct. - View Dependent Claims (37, 38)
-
-
39. A method in a computer for navigating through a representation of a computational construct, comprising:
-
navigating a right operand of the computational construct; and when the navigation of the right operand is specified by a user inputting a first indicator, setting a current selection to a right selection so that when the user then inputs binary operator the computational construct will be a left operand of the binary operator. - View Dependent Claims (40, 41, 42)
-
-
43. A method in a computer for navigating through a representation of a computational construct, comprising:
-
receiving input from a user; when the received input is a specification of binary operator, setting the computational construct to be a right operand of the binary operator; and when the received input is a first indicator, setting a current selection to a selection of a parent computational construct of the computational construct by applying the first indicator to the parent computational construct. - View Dependent Claims (44, 45, 46)
-
-
47. A method in a computer system for navigating through a representation of a computational construct, comprising:
-
defining a ordered series of types of selections of the computational construct, the ordered series including a left selection type, a right selection type, a crown selection type, and tree selection type; receiving input from a user; when the input is a first indicator, setting current selection to a selection of another type based on the ordered series; and when the input is a second indicator, setting the current selection to a selection of another type based on a reversed order of the series. - View Dependent Claims (48, 49, 50)
-
-
51. A computer-readable medium containing instructions for causing a computer system to navigate through selection modes for a displayed representation of computational construct that represents a terminal operand, the selection modes including a left selection mode, a tree selection mode, and a right selection mode, by:
-
setting a current selection to a selection of the computational construct representing the terminal operand in the left selection mode so that, when a further computational construct representing a binary operator is specified, the terminal operand will be a right operand of the binary operator; when the current selection is the selection of the computational construct representing the terminal operand in the left selection mode and a user inputs a first indicator, setting the current selection to a selection of the computational construct representing the terminal operand in the tree selection mode so that, when a further computational construct is specified, the computational construct representing the terminal operand is replaced by the specified computational construct; and when the current selection is the selection of the computational construct representing the terminal operand in the tree selection mode and the user inputs the first indicator, setting the current selection to a selection of the computational construct representing the terminal operand in the right selection mode so that, when a further computational construct representing a binary operator is specified, the terminal operand will be a left operand of the binary operator. - View Dependent Claims (52, 53, 54, 55, 56, 57, 58)
-
-
59. A computer-readable medium containing instructions for causing a computer system to navigate through a representation of a computational construct having zero or more operands, by:
-
receiving input from a user; when the received input is a specification of a binary operator, setting the computational construct to be a right operand of the binary operator; and when the received input is a first indicator, setting a current selection to a selection of the representation of a computational construct and its operands in a tree selection type so that when the then user inputs a binary operator the computational construct and its operands will be replaced by the binary operator. - View Dependent Claims (60)
-
-
61. A computer-readable medium containing instructions for causing a computer system to navigate through a representation of a computational construct, by:
-
receiving input from a user; when the received input is a specification of another computational construct, replacing the computational construct and any of its operands by the other computational construct; and when the received input is a first indicator, setting a current selection to a selection of the computational construct representing the binary operator in a crown selection mode so that when the user then inputs another computational construct the computational construct will be replaced by the other computational construct. - View Dependent Claims (62, 63)
-
-
64. A computer-readable medium containing instructions for causing a computer system to navigate through a representation of a computational construct, by:
-
receiving input from a user; when the received input is a specification of another computational construct, replacing the computational construct and any of its operands by the other computational construct; and when the received input is a first indicator, navigating a representation of a left operand of the computational construct. - View Dependent Claims (65, 66)
-
-
67. A computer-readable medium containing instructions for causing a computer system to navigate through a representation of a computational construct having at least one operand including a left operand, by:
-
navigating the left operand of the computational construct; and when the navigation of the left operand is completed by a user inputting a first indicator, setting a current selection to a selection of the representation of the computational construct in a crown selection mode so that when the then user inputs a binary operator the computational construct and its operands will be replaced by the binary operator. - View Dependent Claims (68, 69)
-
-
70. A computer-readable medium containing instructions for causing a computer system to navigate through a representation of a computational construct, by:
-
receiving input from a user; when the received input is a specification of another computational construct, replacing the computational construct by the other computational construct; and when the received input is a first indicator, navigating a right operand of the computational construct. - View Dependent Claims (71, 72)
-
Specification