US2009228900A1PendingUtilityA1
Systems and methods for application programming using persistent objects
Assignee: WORLDWIDE OBJECTS INTERNAT LTDPriority: Feb 22, 2000Filed: May 11, 2009Published: Sep 10, 2009
Est. expiryFeb 22, 2020(expired)· nominal 20-yr term from priority
Inventors:Johannes C. Van Der Spuy
G06F 8/45
33
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
An application programming system includes a number of processors operable to execute software processes, a communication channel between the number of processors, and a registry of object co-operable to create an executable software application. The objects have characteristics which are dynamically alterable at run-time without requiring recompilation of code and re-building of any software processes.
Claims
exact text as granted — not AI-modified1 . A system, comprising:
a processor operable to execute a software process; an interaction manager process operating on the processor; a first plurality of objects comprising executable actions; a second plurality of objects comprising non-executable data; wherein the first plurality of objects comprising executable actions is executable by the interaction manager and thereby co-operable to form an executable software application using non-executable data of the second plurality of objects, wherein each of the plurality of objects comprises data that indicates the object's storage location; and wherein the data that indicates the object's storage location comprises a network address of a processor where the object is located and a path to the persistent storage location of the object at that processor.
2 . The system as claimed in claim 1 , wherein at least one of the first or second plurality of objects further comprises a registry, the registry comprising the data that indicates the storage location of the at least one of the plurality of objects; the registry further comprising data indicating the storage location of a second one of the plurality of objects.
3 . The system as claimed in claim 2 , wherein the registry comprises a unique key corresponding to each object whose storage location is indicated by data therein.
4 . The system as claimed in claim 1 , further comprising a second processor comprising an interaction manager process.
5 . The system as claimed in claim 4 , wherein the processor and second processor each comprise at least one microprocessor, an associated storage system, associated hardware devices and associated resources, and wherein each interaction manager process regulates the interaction between any object stored at a respective processor, and the respective associated hardware devices and respective associated resources.
6 . The system as claimed in claim 5 , wherein the interaction manager process of the second processor functions to receive a request from the processor that an executable object associated with the second processor be invoked, and acts to invoke the executable object associated with the second processor.
7 . The system as claimed in claim 1 , further comprising an object wherein the object for use in the system has a plurality of characteristics which are dynamically alterable at application run-time.
8 . The object as claimed in claim 7 , wherein the characteristics which are dynamically alterable at application run-time include any one or more of a name or a location of the object on the system.
9 . The object as claimed in claim 8 , wherein the characteristics which are dynamically alterable at application run-time also include any one or more of the state of the object, its containment, whether by value or by reference, a multiple inheritance hierarchy of the object, object data, memory, executable code or user interface attributes.
10 . The object as claimed in claim 7 , wherein the object has a self-maintaining storage mechanism.
11 . The object as claimed in claim 7 , wherein the object comprises information that allows it to be queried about one or more of its characteristics.
12 . The object as claimed in claim 7 , wherein the object includes a code generator operable to enable the object to transform itself dynamically.
13 . A method, comprising:
providing a processor operable to execute a software process; providing an interaction manager process operating on the processor; providing a first plurality of objects comprising executable actions; providing a second plurality of objects comprising non-executable data; wherein the first plurality of objects comprising executable actions is executable by the interaction manager and thereby co-operable to form an executable software application using non-executable data of the second plurality of objects, wherein each of the plurality of objects comprises data that indicates the object's storage location; and wherein the data that indicates the object's storage location comprises a network address of a processor where the object is located and a path to the persistent storage location of the object at that processor.
14 . The method as claimed in claim 13 , wherein at least one of the first or second plurality of objects further comprises a registry, the registry comprising the data that indicates the storage location of the at least one of the plurality of objects; the registry further comprising data indicating the storage location of a second one of the plurality of objects.
15 . The method as claimed in claim 14 , further comprising including in the registry a unique key corresponding to each object whose storage location is indicated by data therein.
16 . The method as claimed in claim 13 , further comprising providing a second processor comprising an interaction manager process.
17 . The method as claimed claim 16 , wherein the processor and second processor each comprise at least one microprocessor, an associated storage system, associated hardware devices and associated resources, and wherein the method further comprises regulating, by means of each interaction manager process, the interaction between any object stored at a respective processor, and the respective hardware devices and respective resources.
18 . The method as claimed in claim 17 , further comprising sending, from the first processor, a request to the interaction manager process of the second processor that an object associated with the second processor be invoked, and thereafter invoking said object associated with the second processor by the interaction manager process of the second processor.
19 . The method according to claim 13 , wherein each of the plurality of objects has at least one characteristic which is dynamically alterable at application run-time.
20 . The method as claimed in claim 19 , wherein characteristics of the objects which are dynamically alterable at application run-time include one or more of a name or a location of the object.
21 . The method as claimed in claim 20 , wherein characteristics which are dynamically alterable at application run-time also include any one or more of the state of the object, its containment, whether by value or by reference, a multiple inheritance hierarchy of the object, object data, memory, executable code or user interface attributes.
22 . The method as claimed in claim 19 , wherein each object is provided with a self-maintaining storage mechanism.
23 . The method as claimed in claim 19 , wherein each object comprises information that allows it to be queried about one or more of its characteristics.
24 . The method as claimed in claim 19 , further comprising including in each object a code generator operable to enable the object to transform itself dynamically.
25 . An application comprising computer readable program code embedded on at least one storage device, said code when executed or interpreted causing a computer to perform a method, comprising:
executing an interaction manager process by computer, the interaction manager process facilitating the execution of object actions present in a plurality of objects, thereby allowing the plurality of objects to be co-operable to form a software application; executing an action comprising a first program code sequence associated with a first object, wherein the first object comprises first data indicating its own storage location and second data indicating a storage location of a second object; using the second data indicating a storage location of a second object to resolve the location of the second object; and initiating an interaction with the second object; wherein the first data indicating the storage location of the first object and the second data indicating the storage location of a second object both comprise a network address of a processor where the respective first or second object is located and a path to the persistent storage location of the respective first or second object at the processor.
26 . The application of claim 25 , wherein the second object comprises data indicating a storage location of the first object.
27 . The application of claim 25 , wherein the method further comprises the step of executing code associated with the second object.
28 . The application of claim 25 , wherein the method further comprises the step of retrieving data associated with the second object.
29 . The application of claim 25 , wherein data associated with the second object comprises data indicating the storage location of a third object, and wherein the method further comprises the step of initiating an interaction with the third object.
30 . The application of claim 25 , wherein the data indicating the storage location of a second object comprises data usable to look up the storage location of a third object.
31 . The application of claim 25 , wherein the first object further comprises data indicating the storage location of a third object, and wherein the method further comprises the steps of using the data to resolve the location of the third object; and initiating an interaction with the third object.
32 . The application of claim 31 , wherein the second object is dynamically modifiable to include data indicating the location of the third object within the second object.
33 . The application of claim 30 , wherein at least one of the second or third objects consists of non-executable data.Join the waitlist — get patent alerts
Track US2009228900A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.