\letter A Adding a new Attribute, \indexit{38} Adding a new Operation, \indexit{37} Adding a new Representation, \indexit{39} Adding new Concepts, \indexit{40} Addition of a Method, \indexit{35} A First Attempt to Implement Elements of Residue Class Rings, \indexit{45} Applicable Methods and Method Selection, \indexit{12} `ArithmeticElementCreator', 43 Arithmetic Issues in the Implementation of New Kinds of Lists, \indexit{27} A Second Attempt to Implement Elements of Residue Class Rings, \indexit{47} \letter B `BindGlobal', 31 \letter C `CategoryCollections', 16 `CategoryFamily', 16 `CollectionsFamily', 20 Compatibility of Residue Class Rings with Prime Fields, \indexit{57} Component Objects, \indexit{21} Components versus Attributes, \indexit{40} Creating Attributes and Properties, \indexit{17} Creating Categories, \indexit{16} Creating Families, \indexit{18} Creating Objects, \indexit{20} Creating Operations, \indexit{18} Creating Other Filters, \indexit{18} Creating Own Arithmetic Objects, \indexit{42} Creating Representations, \indexit{17} Creating Types, \indexit{20} \letter D Declaration and Implementation Part, \indexit{33} `DeclareAttribute', 31 \sub example, 38, 42 `DeclareCategory', 31 `DeclareFilter', 31 `DeclareGlobalFunction', 32 `DeclareGlobalVariable', 32 `DeclareOperation', 32 `DeclareProperty', 31 `DeclareRepresentation', 31 \sub belongs to implementation part, 33 \sub example, 39 `DeclareSynonym', 32 `DeclareSynonymAttr', 33 Designing new Multiplicative Objects, \indexit{65} \letter E `ElementsFamily', 20 Enforcing Property Tests, \indexit{37} Example -- Constructing Enumerators, \indexit{24} Example -- Constructing Iterators, \indexit{26} Example: Groups with a decomposition as semidirect product, \indexit{42} Example: Groups with a word length, \indexit{42} Example: M-groups, \indexit{41} Extending the Range of Definition of an Existing Operation, \indexit{36} External Representation, \indexit{28} `ExtRepOfObj', 29 \letter F `FlushCaches', 33 Further Improvements in Implementing Residue Class Rings, \indexit{62} \letter G Global Variables in the Library, \indexit{31} \letter I Immediate Methods, \indexit{13} Implementing New List Objects, \indexit{23} `InstallFlushableValue', 32 `InstallGlobalFunction', 32 `InstallImmediateMethod', 14 `InstallMethod', 11 `InstallOtherMethod', 12 `InstallTrueMethod', 14 `InstallValue', 32 `IsAttributeStoringRep', 38, 39 `IsComponentObjectRep', 39 \letter L Logical Implications, \indexit{14} \letter M method, 11 Method Installation, \indexit{11} Mutability and Copying, \indexit{29} \letter N `NamesOfComponents', 21 New Arithmetic Operations vs. New Objects, \indexit{64} `NewAttribute', 17 \sub example, 38 \sub mutable, 17 `NewCategory', 16 `NewFamily', 19 `NewFilter', 18 `NewOperation', 18 `NewProperty', 17 `NewRepresentation', 17 \sub example, 39 `NewType', 20 \letter O `ObjByExtRep', 29 `Objectify', 20 `ObjectifyWithAttributes', 20 operation, 11 Operations and Mathematical Terms, \indexit{14} Operations and Methods, \indexit{11} overload, 14 \letter P Partial Methods, \indexit{13} Positional Objects, \indexit{22} \letter R Redispatching, \indexit{13} `RedispatchOnCondition', 13 `ResetFilterObj', 18 \letter S `SetFilterObj', 18 \letter T `TryNextMethod', 13 \letter W Why Proceed in a Different Way?, \indexit{46}