Next: How References Are Tracked, Previous: Object and References, Up: Referable Objects
In the libx1f4i0 referable objects type system data types fall in three categories:
Managing references for the first data types class is most trivial: there is
nothing to manage. When operating such data types via interfaces meant for
reference management the data type attributes will be described as a whole lot
of 0
s and NULL
s.
The intrinsic types belong to this first data types class.
See Intrinsic Types.
Managing references for the second data types class is straightforward: simple reference counting does fine. Have a count for each object, increment it when adding a new reference, decrement it when removing some reference and free data reserved resources when the count comes zero. Since objects of data types falling into this data types class cannot store references to other objects themselves there are no such issues as reference cycling and cycle detection.
Managing references for the third class should be reasonable simple for the libx1f4i0 referable objects type system. Once the inner workings of the type system are understood.
Yet, the type system is a but convention. There is nothing to it, other than the data types observing some interoperability rules. Thus, the type system provides for manageability, not for management. That is, objects must be able to determine when to free themselves by themselves, the type system only provides the premises to make that determination possible.