Automatic versioning and data mutation of user-defined data types
First Claim
1. A computer-readable memory medium tangibly storing program instructions implementing a program development environment, wherein the program instructions are executable by a processor to perform:
- creating a first version of a class definition in response to user input;
instantiating and storing a graphical program object of the first version of the class, wherein the graphical program object includes a version identifier (ID) indicating the version of the graphical program object;
modifying the first version of the class definition in response to user input, thereby creating a second version of the class definition, wherein said modifying the first version of the class definition in response to user input comprises performing a first one or more editing operations on the first version of the class definition, wherein the program instructions are further executable to perform;
recording the one or more editing operations;
generating a first one or more default mutation functions based on the one or more editing operations; and
including first mutation information indicating the first one or more default mutation functions in the second version of the class definition;
wherein the first one or more default mutation functions are useable to automatically modify the graphical program object to conform to the second version of the class definition without user intervention.
5 Assignments
0 Petitions
Accused Products
Abstract
System and method for automatic versioning and data mutation for user-defined data types. A program development environment may be operable to: create a first version of a data type definition in response to user input; instantiate and store an object of the first version of the data type, optionally including a version identifier indicating the version of the object; modify the first version of the data type definition in response to user input, thereby creating a second version of the data type definition; load the object from storage; and automatically (without user intervention) modify the object to conform to the second version of the data type definition. Successive modifications of the data type definition may generate successive versions of the data type. Objects instantiated and stored according to a previous version of the data type may be loaded from storage and automatically modified to conform to a specified subsequent version.
53 Citations
32 Claims
-
1. A computer-readable memory medium tangibly storing program instructions implementing a program development environment, wherein the program instructions are executable by a processor to perform:
creating a first version of a class definition in response to user input; instantiating and storing a graphical program object of the first version of the class, wherein the graphical program object includes a version identifier (ID) indicating the version of the graphical program object; modifying the first version of the class definition in response to user input, thereby creating a second version of the class definition, wherein said modifying the first version of the class definition in response to user input comprises performing a first one or more editing operations on the first version of the class definition, wherein the program instructions are further executable to perform; recording the one or more editing operations; generating a first one or more default mutation functions based on the one or more editing operations; and including first mutation information indicating the first one or more default mutation functions in the second version of the class definition; wherein the first one or more default mutation functions are useable to automatically modify the graphical program object to conform to the second version of the class definition without user intervention. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
-
14. A system for managing data versioning and mutation, comprising:
-
a processor; and a memory medium coupled to the processor, wherein the memory medium stores program instructions implement a program development environment, wherein the program instructions are executable by the processor to; create a first version of a class definition in response to user input; instantiate and store a graphical program object of the first version of the class, wherein the graphical program object includes a version identifier (ID) indicating the version of the graphical program object; modify the first version of the class definition in response to user input, thereby creating a second version of the class definition, wherein to modify the first version of the class definition in response to user input, the program instructions are executable to perform a first one or more editing operations on the first version of the class definition, wherein the program instructions are further executable to; record the one or more editing operations; generate a first one or more default mutation functions based on the one or more editing operations; and include first mutation information indicating the first one or more default mutation functions in the second version of the class definition; wherein the first one or more default mutation functions are useable to automatically modify the graphical program object to conform to the second version of the class definition without user intervention.
-
-
15. A computer-implemented program development environment, comprising:
-
means for creating a first version of a class definition in response to user input; means for instantiating and storing a graphical program object of the first version of the class, wherein the graphical program object includes a version identifier (ID) indicating the version of the graphical program object; means for modifying the first version of the class definition in response to user input, thereby creating a second version of the class definition, wherein said modifying the first version of the class definition in response to user input comprises performing a first one or more editing operations on the first version of the class definition, wherein the means for modifying the first version comprises; means for recording the one or more editing operations; means for generating a first one or more default mutation functions based on the one or more editing operations; and means for including first mutation information indicating the first one or more default mutation functions in the second version of the class definition; wherein the first one or more default mutation functions are useable to automatically modify the graphical program object to conform to the second version of the class definition without user intervention.
-
-
16. A computer-readable memory medium tangibly storing program instructions implementing a program development environment, wherein the program instructions are executable by a processor to implement:
-
creating a first version of a class definition in response to user input; generating graphical program data created based on the first version of the class definition; creating a second version of the class definition in response to user input, wherein the second version of the class definition includes a recording schema, wherein the recording schema corresponds to operations that convert the first version of a class definition to the second version of the class definition, and wherein said creating the second version of the class definition comprises; performing one or more edit operations on the first version of a class definition in response to user input to create the second version of the class definition; recording the one or more edit operations; generating one or more default mutation functions based on the one or more edit operations; and including mutation information in the second version of a class definition indicating the one or more default mutation functions; wherein the first one or more default mutation functions are useable to automatically modify the graphical program data to conform to the second version of the class definition without user intervention. - View Dependent Claims (17, 18, 19, 32)
-
-
20. A computer-readable memory medium tangibly storing program instructions implementing a program development environment, wherein the program instructions are executable by a processor to implement:
-
creating a first version of a class definition in response to user input; generating graphical program data in accordance with the first version of the class definition; modifying the first version of the class definition in response to user input, thereby creating a second version of the class definition, wherein said modifying the first version of the class definition in response to user input comprises performing a first one or more editing operations on the first version of the class definition, wherein the program instructions are further executable to perform; recording the one or more editing operations; generating a first one or more default mutation functions based on the one or more editing operations; and including first mutation information indicating the first one or more default mutation functions in the second version of the class definition; wherein the first one or more default mutation functions are useable to automatically modify the graphical program data to conform to the second version of the class definition without user intervention.
-
-
21. A computer-implemented method for managing data versioning and mutation, the method comprising utilizing a computer to perform:
-
creating a first version of a class definition in response to user input; instantiating and storing a graphical program object of the first version of the class, wherein the graphical program object includes a version identifier (ID) indicating the version of the graphical program object; modifying the first version of the class definition in response to user input, thereby creating a second version of the class definition, wherein said modifying the first version of the class definition in response to user input comprises performing a first one or more editing operations on the first version of the class definition, the method further comprising; recording the one or more editing operations; generating a first one or more default mutation functions based on the one or more editing operations; and including first mutation information indicating the first one or more default mutation functions in the second version of the class definition; wherein the first one or more default mutation functions are useable to automatically modify the graphical program object to conform to the second version of the class definition without user intervention.
-
Specification