Abstract and concrete entities

Some elementary entities belong to the language and are available without further effort by the programmer, with their specific semantics. These we will term concrete. Others we will term abstract: they are constructed by the programmer and abstracted by means of a declaration. We might define programming along these lines as the construction of abstract algorithms.