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
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-modified
1 . 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.