Relation Implementation
Computer-aided design programs (e.g., CASE tools) use hierarchicl data models to describe complex objects wth 1:M parent-child or container-component relationships.
These tools often need to access multiple instances of some child or component type BB from one instance of a related parent or composite container or M-to-1 associated type AA.
A fast way to do this is to traverse a linked-list structure from an instance of struct AA to its related instances of struct BB.
Macros in chgen or templates in gencpp can be used to replicate generic declarations and functions.
When the database is too large for memory-resident tables or lists, caches and/or indices must be maintained on disk and used efficiently.