Ada Reference Manual (Ada 2022)
1.3.2 Subprograms and their Properties
function
form of subprogram that returns a result and can be called as part of an expression
overriding operation
operation that replaces an inherited primitive operation
Note: Operations can be marked explicitly as overriding or not overriding.
postcondition
assertion that is expected to be True when a given subprogram returns normally
precondition
assertion that is expected to be True when a given subprogram is called
procedure
form of subprogram that does not return a result and can only be invoked by a statement
subprogram
unit of a program that can be brought into execution in various contexts, with the invocation being a subprogram call that can parameterize the effect of the subprogram through the passing of operands
Note: There are two forms of subprograms: functions, which return values, and procedures, which do not.