System and method supporting nonlocal values

Data processing: database and file management or data structures – Database design – Data structure types

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C707S793000, C707S793000, C717S165000, C345S619000

Reexamination Certificate

active

06769001

ABSTRACT:

BACKGROUND OF THE INVENTION
In typical data processing systems, a compiler reads source code and creates the object code which is ultimately processed. Typically, the compiler creates a data structure which will support property values which are defined later in the source code or during run time. In an object oriented system, the compiler may create a class and a mechanism for creating instances of that class with defined fields of preallocated memory space into which the values are stored.
An alternative data structure which has, for example, been supported in the language allows values to be stored in strings or arrays as options associated with an instance object.
SUMMARY OF THE INVENTION
In a data processing system according to one aspect of the invention, a class supports values in instances of the class. A nonlocal value hierarchy, such as a graphical hierarchy, is defined separate from the class hierarchy. In an instance of the class, a nonlocal value is set and that nonlocal value applies to the instance of the class and to other objects in the nonlocal value hierarchy.
In another aspect of the invention, an object has an option data structure which supports references to nonlocal option values without preallocation of memory space for the full option values. A nonlocal option hierarchy of objects, such as a graphical hierarchy, is defined. When a nonlocal option value is set in the option data structure, the set nonlocal option value applies to other objects in the nonlocal option hierarchy.
Values may be stored in instances of the class in defined fields of preallocated memory space and in an option data structure which supports references to the nonlocal values without preallocation of memory space for the nonlocal values. The option data structure may support both nonlocal values which apply to other objects in the nonlocal value hierarchy and local values which apply only to the object in which they are set. The option data structure may comprise a linked list of option items having option values in an instance of the class.
All objects to which a nonlocal value applies may be notified of any change in a value that affects them. Only a changed object and descendants of the changed object in the nonlocal value hierarchy need be notified of the change.
With a declaration of a nonlocal value in a class object, a corresponding nonlocal data structure may be created in a designated common superclass to support setting of a nonlocal value on an object whose superclasses do not contain an explicit declaration of the nonlocal value. The common superclass may be an immediate subclass of a class that provides a concrete implementation of a nonlocal value processing method.
Objects that are to be notified when a nonlocal value changes may be registered. Registered nonlocal values may be saved to reduce computation of a set of nonlocal values for which an object registers. An object may be notified when a descendant in the nonlocal value hierarchy changes the set of nonlocal values for which it is registered.
An nonlocal value binding declared in a second software package may attach to a class defined in a first software package. The nonlocal value binding declared in the second software package may be compiled to a second nonlocal value data structure separate from a first nonlocal value data structure of the first software package. The second nonlocal value data structure may comprise a hash table which holds links to the option binding declared in the second software package. The nonlocal value binding may be located by examining the first nonlocal value data structure and the second nonlocal value data structure.
The nonlocal data structure may include a default value. In a get operation to an instance of the class, if a nonlocal value which applies to the instance has been set, the set nonlocal value may be obtained. If no value which applies has been set, the default value for the class is obtained.


REFERENCES:
patent: 5093914 (1992-03-01), Coplien et al.
patent: 5652879 (1997-07-01), Harris et al.
patent: 5706505 (1998-01-01), Fraley et al.
patent: 5732271 (1998-03-01), Berry et al.
patent: 5740440 (1998-04-01), West
patent: 5790857 (1998-08-01), Clifford et al.
patent: 5911076 (1999-06-01), Acker et al.
patent: 5915253 (1999-06-01), Christiansen
patent: 5924098 (1999-07-01), Kluge
patent: 5943496 (1999-08-01), Li et al.
patent: 5960197 (1999-09-01), Segnan
patent: 6119157 (2000-09-01), Traversat et al.
patent: 6199157 (2001-03-01), Dov et al.
patent: 6223342 (2001-04-01), George
patent: 6305012 (2001-10-01), Beadle et al.
patent: 6356279 (2002-03-01), Halstead et al.
patent: 2001/0005886 (2001-06-01), Stratton et al.
patent: 0 725 337 (1996-08-01), None
IBM Technical Disclosure Bulletin, Sep., 1993, vol. 36, No. 9B, pp. 231-232, “Fast Memory for Enabling Secondary Inheritance.”.*
Aho, Alfred V., et al., “Run-Time Environments,”Compliers—Principles, Techniques, and Tools, Chapter 7 (MA:Addison Wesley Longman), pp. 389-413 (1998).
Deitel, H. M. et al., “Object Based Programming”,Java—How To Program, Second Edition, pp. 308-349 (1998).
Hostetter, M., et al., “Curl:A Gentle Slope Language for the Web”, (http://cag-www.lcs.mit.edu/curl/wwwpaper.html), pp. 1-15.
McLennan, Michael J., “Object-Oriented Programming with [incr Tcl] Building Mega-Widgets with [incr Tk],” http://www.ing.iac.es/~docs/external/tcl/itcl/tutorials/itclitk-a4.pdf, pp. 1-118 (1996).
Muchnick, Steven S., “Symbol-Table Structure,”Advanced Compiler Design and Implementation, pp. 43-65 (1997).
Stroustrup, Bjarne, “An Overview of C++,”SIGPLAN Notices, V21, pp. 7-18 (1986).
Ulferts, Mark L., “[incr Widgets] An Object Oriented Mega-Widget Set,” Paper presented at the Third Annual Tcl/Tk Workshop, Toronto, Ontario, Canada (Jul., 1995).
Myers, B.A., et al., “Declarative Programming in a Prototype-Instance System: Object-Oriented Programming Without Writing Methods,”ACM SIGPLAN Notices27(10): 184-200 (1992).
Hostetter, M. et al., “Curl—A Gentle Slope Language for the Web,”World Wide Web Journal, vol. II, Issue 2, Spring 1997 (http://www.w3journal.com/6/) 14 pp.

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

System and method supporting nonlocal values does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with System and method supporting nonlocal values, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and System and method supporting nonlocal values will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3186027

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.