A well-defined, step-by-step, list of operations for solving a particular problem
A device that manipulates symbols on a strip of tape according to a table of rules
A method of formulating algorithms by combining a set of universal instructions
A computer where the program resides in the same storage as the data used by that program
Data stored in computer memory, usually given a symbolic name/identifier
Some operations enable to specify that the next statement to be executed maybe other than the next one in the sequence
Operations that allow transfer of control
The order in which the individual statements, instructions, or function calls are executed or evaluated
A comma-separated list containing the name of each argument received by the procedure when it is called
A group of statements that are executed as a unit
A data structure used by most imperative languages to organise nested evaluation of procedure calls. Resembles a physical stack where two operations are allows: PUSH and POP
A procedure that contains a call to itself
A graphical representation of calling relationships between procedures in a computer program
A particular way of storing and organising data in a computer so that it can be used efficiently
A form of computer data storage. Today, it takes the form of integrated circuits that allow stored data to be accessed in any order
One of the most fundamental data structures. Defining feature: the way data is organised within RAM
A built-in data type (in C/C++). We can define variables that are references using these
One of the simplest and most fundamental data structures, made of two or more data “members” or data “fields” stored in consecutive locations in memory
A data record which includes tailor made procedures to handle the data stored in it
Carrying out operations in sequence
A subset of imperative programming. Most famous for removing or reducing reliance on the 'goto' statement
The set of all possible pairs made out of elements (a, b) where a belongs to A and b belong to B
The relation between an input set and an output set. The relationship between these sets may not necessarily be a function
Program control is transferred from “caller procedure” (aka “caller’s environment”) to the “body” of the “called procedure” (aka “callee”)
The part of the program where a variable is visible and can be used without errors
The duration of the execution of the program
The duration of the execution of a procedure
Used to access array elements in order to read/modify their values
The name identifying different types of data. It signifies a possible range of data values and operations allowed on these values
Variables that point to data which cannot change during program evaluation. Such variables are immutable
A variable that identifies another variable in memory
'Every mechanical calculation, effective procedure, or algorithm can be computed by a TM'
The person/machine executing the procedure needn’t know what the procedure is about and needn’t apply any judgement or ingenuity