System and method for optimizing a computer program
First Claim
1. A method of constructing at least one computer program that solves a problem, comprising the steps of:
- defining a set of traits in which each trait characterizes a portion of a solution algorithm to the problem;
defining a programming interface for at least one of the traits;
providing an implementation for at least one of the defined programming interfaces;
specifying a subtrait associated with at least one of the traits or the implementations;
selecting a top-level trait that characterizes a solution to the problem;
selecting a top-level implementation for the top-level trait;
selecting an implementation for each subtrait required for the top-level trait or the top-level implementation;
recursively selecting an implementation for each subtrait associated with at least one of the traits or the implementations in order to construct a trait hierarchy that forms a computer program for solving the problem.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for constructing a computer program that solves a problem is disclosed. The invention includes defining a set of traits in which each trait characterizes a portion of a solution algorithm to the problem and defining a programming interface for at least one of the traits. The invention further includes providing an implementation for at least one of the defined programming interfaces. A subtrait associated with at least one of the traits or the implementations is specified and a top-level trait is selected that characterizes a solution to the problem. In addition, a top-level implementation for the top-level trait is selected along with an implementation for each subtrait required for the top-level trait or the top-level implementation. Lastly, an implementation for each subtrait associated with at least one of the traits or the implementations is recursively selected in order to construct a trait hierarchy that forms a computer program for solving the problem.
43 Citations
20 Claims
-
1. A method of constructing at least one computer program that solves a problem, comprising the steps of:
-
defining a set of traits in which each trait characterizes a portion of a solution algorithm to the problem;
defining a programming interface for at least one of the traits;
providing an implementation for at least one of the defined programming interfaces;
specifying a subtrait associated with at least one of the traits or the implementations;
selecting a top-level trait that characterizes a solution to the problem;
selecting a top-level implementation for the top-level trait;
selecting an implementation for each subtrait required for the top-level trait or the top-level implementation;
recursively selecting an implementation for each subtrait associated with at least one of the traits or the implementations in order to construct a trait hierarchy that forms a computer program for solving the problem. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A system for constructing at least one computer program that solves a problem, comprising:
-
means for defining a set of traits in which each trait characterizes a portion of a solution algorithm to the problem;
means for defining a programming interface for at least one of the traits;
an implementation for at least one of the defined programming interfaces;
a subtrait associated with at least one of the traits or the implementations;
means for selecting a top-level trait that characterizes a solution to the problem;
means for selecting a top-level implementation for the top-level trait;
means for selecting an implementation for each subtrait required for the top-level trait or the top-level implementation;
means for recursively selecting an implementation for each subtrait associated with at least one of the traits or the implementations in order to construct a trait hierarchy that forms a computer program for solving the problem.
-
Specification