The language defines several kinds of named entities that are declared by declarations. There are several forms of declaration.
All declarations contain a definition for a view of an entity.
Most declarations associate an identifier with a declared entity. The declaration is said to declare the name, the view, and in most cases, the entity itself. These are collectively called usage names. The process by which a construct achieves its run-time effect is called execution. This process is also called elaboration for declarations and evaluation for expressions.