Concepts inARC++: effective typestate and lifetime dependency analysis
ARC (file format)
ARC is a lossless data compression and archival format by System Enhancement Associates (SEA). It was very popular during the early days of networked dial-up BBS. The file format and the program were both called ARC. The ARC program made obsolete the previous use of a combination of the SQ program to compress files and the LU program to create . LBR archives, by combining both compression and archiving functions into a single program.
more from Wikipedia
Smart pointer
In computer science, a smart pointer is an abstract data type that simulates a pointer while providing additional features, such as automatic garbage collection or bounds checking. These additional features are intended to reduce bugs caused by the misuse of pointers while retaining efficiency. Smart pointers typically keep track of the objects they point to for the purpose of memory management. They may also be used to manage other resources, such as network connections and file handles.
more from Wikipedia
Container (abstract data type)
In computer science, a container is a class, a data structure, or an abstract data type (ADT) whose instances are collections of other objects. In other words; they are used for storing objects in an organized way following specific access rules. The size of the container depends on the number of the objects (elements) it contains.
more from Wikipedia
Temporary variable
In computer programming, a temporary variable is a variable whose purpose is short-lived, usually to hold temporary data that will soon be discarded, or before it can be placed at a more permanent memory location. Because it is short-lived, it is usually declared with local scope. There is no formal definition of what makes a variable temporary, but it is an often-used term in programming. A typical example would be that of swapping the contents of two variables.
more from Wikipedia
Reference (computer science)
In computer science, a reference is a value that enables a program to indirectly access a particular datum, such as a variable or a record, in the computer's memory or in some other storage device. The reference is said to refer to the datum, and accessing the datum is called dereferencing the reference. A reference is distinct from the data itself. Typically, a reference is the physical address of where the data is stored in memory or in the storage device.
more from Wikipedia
Pointer (computer programming)
for both pointers and non-pointers; this need not be the case. ]] In computer science, a pointer is a programming language data type whose value refers directly to (or "points to") another value stored elsewhere in the computer memory using its address. For high-level programming languages, pointers effectively take the place of general purpose registers in low-level languages such as assembly language or machine code, but may be in available memory.
more from Wikipedia
Robustness (computer science)
In computer science, robustness is the ability of a computer system to cope with errors during execution or the ability of an algorithm to continue to operate despite abnormalities in input, calculations, etc. Formal techniques, such as fuzz testing, are essential showing robustness since this type of testing involves invalid or unexpected inputs. Various commercial products perform robustness testing of software systems. Robustness is a consideration in failure assessment analysis.
more from Wikipedia
Static program analysis
Static program analysis (also static code analysis or SCA) is the analysis of computer software that is performed without actually executing programs built from that software (analysis performed on executing programs is known as dynamic analysis). In most cases the analysis is performed on some version of the source code and in the other cases some form of the object code.
more from Wikipedia