Map
Index
Random
Help
Topics
th

Topic: access to objects by a path

topics > computer science > data > Group: access to data



Topic:
absolute vs. relative names
Topic:
access by current position
Topic:
access to components of a data object
Topic:
hierarchical naming
Topic:
names defined by context
Topic:
notations for object access
Topic:
object-defined names
Topic:
pointers to data
Topic:
safe use of pointers
Topic:
using an address as a name

Summary

If an object's components can be selected, then selecting a component of a component seems a natural extension. The component sequence specifies an access path, or a composition of accessing functions. The components accessible from an object form the leaves of a tree whose branches are the component selectors. Accessing paths violates the principle of representational transparency since the correct functioning of an access path depends on the intermediate nodes of the access tree. Changing these intermediate nodes will change the value referenced by the access path. So multi-level embedding of access may cause programming difficulties. This parallels understanding difficulties created by multi-level embedding in natural languages. (cbb 5/80)
Subtopic: paths up

Quote: access a tree structure by specifying a path or a matching pattern [»elsoM3_1970, OK]
Quote: need path names for access and unique ids for equality testing [»hewiC8_1977]
Quote: a local name is an encoding of an access path from one actor to another [»hewiC8_1977]
Quote: a route is a list of names giving a path from source to destination [»hauzBM10_1986]
Quote: in Simula, fishdeath.cause.countermeasure.cost yields a value according to class methods [»palmJ5_1973, OK]
Quote: access remote data by a chain of pointers; e.g., ABC is the name of A->B->C [»knowK8_1966, OK]
Quote: form name for a subprogram by concatenating all embedded names [»boocG1_1982]
QuoteRef: stanT_1967 ;;70 have accessing "paths"
QuoteRef: kiebRB9_1973 ;;%Earley: pointer in a data structure is an access path
Quote: use reference variables to refer to records and their fields; e.g., age(father(B)) is the age of B's father [»wirtN6_1966]

Subtopic: avoid cursors up

Quote: cursors are not required within a database; can lead to severe bugs; e.g., CODASYL [»coddEF_1990]

Subtopic: problems with path expression up

Quote: path expressions such as self.parent.frame.left are error prone; brittle under reorganization; use get_child and get_parent instead [»zandBT11_2005]
Quote: in uucp, relative naming prevents routing optimization; disallows name forwarding
[»suZS8_1982]

Related Topics up

Topic: absolute vs. relative names (12 items)
Topic: access by current position (7 items)
Topic: access to components of a data object (4 items)
Topic: hierarchical naming (28 items)
Topic: names defined by context (36 items)
Topic: notations for object access (7 items)
Topic: object-defined names (15 items)
Topic: pointers to data (55 items)
Topic: safe use of pointers (102 items)
Topic: using an address as a name
(22 items)

Updated barberCB 3/04
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.