Subject specific terminology

User guide

Throughout this scheme and especially in the “live coding” videos, subject specific terminology is used extensively. The more students are exposed to the language of programming the more they will become confident with it. This also enables them to articulate problems and solutions more coherently.

You can use these terms and definitions to ask students, “item” questions from the block model of program comprehension.


  • Argument: data passed into a subprogram.
  • Array: a data structure of a fixed size that holds data all of the same data type under a single identifier.
  • Assign: giving a variable or constant a value.
  • Boolean: true or false.
  • Call: running the code inside a subprogram.
  • Casting: turning one data type into another. Synonymous with coercion.
  • Coercion: turning one data type into another. Synonymous with casting.
  • Condition: the comparison of one or more data structures. The outcome is true or false.
  • Constant: a memory location that never changes its value. Synonymous with fixed value variable.
  • Data type: Boolean, integer, float or string. The type of data held by a variable or constant.
  • Data structure: an organised store for data in memory – variable, constant, array, list.
  • Define: identifying the start of a subprogram.
  • Declare: the first reference to data structure. Often includes the data type.
  • Enumerate: initial data for an array or list assigned when the structure is declared.
  • File: data held on permanent secondary storage.
  • Flag: when a variable can either be true or false. It is a variable with the Boolean data type.
  • Float: a number with a decimal component. Synonymous with real.
  • Function: a subprogram that returns a value.
  • Identifier: the name of a subprogram, variable, constant or data structure.
  • Initialise: giving a variable or constant a value for the first time.
  • Integer: a whole number.
  • Iteration: repeating a section of code. Synonymous with loop.
  • List: a data structure of a variable size that holds data of mixed data types under a single identifier.
  • Loop: repeating a section of code. Synonymous with iteration.
  • Modulus: the result of a modulo operator being applied to two values.
  • Nesting: when one selection or iteration is written inside another.
  • Operator: mathemetical + – * / ^ integer division & modulo %. Logical: < <= == >= >
  • Parameters: variables assigned in subprogram definitions.
  • Parenthesis: brackets used to signify arguments, parameters and set order of precedence.
  • Problem decomposition: breaking a problem down into smaller, manageable sections to make problem solving easier.
  • Procedure: an identified section of code used for problem decomposition.
  • Selection: branching of code to another program statement depending on the outcome of a condition.
  • Sequence: one instruction after another.
  • Qualifier: the character used to denote data – quotes around a string.
  • Real: a number with a decimal component. Synonymous with float.
  • Return value: the result of a function given back to the function call.
  • Subprogram: a smaller defined part of the program. Can be a procedure or function. Used for problem decomposition.
  • Variable: an area of memory holding a single value of a single data type.

It can help the knowledge of when to apply typical programming techniques by understanding the ten roles that variables can play in a program:

  1. Fixed value: the variable is never changed after initialisation. Known as a constant.
  2. Stepper: the value increments (goes up) or decrements ) goes down in a systematic way. Used in loops as a counting variable.
  3. Most recent holder: stores the latest value input.
  4. Most wanted holder: stores the highest value found so far in a loop. Also known as best so far.
  5. Gatherer: Stores the sum of values so far in a loop.
  6. Follower: Stores the old value of another variable before it is changed.
  7. One-way flag: a Boolean variable which once changed cannot get its original value again. Often used for validation.
  8. Temporary: a variable that is only needed for a short time. Often used to swap two values.
  9. Organiser: a variable that is used for reorganising elements. Often used to store a sorted list.
  10. Walker: a variable used to traverse a higher-order structure. Often used to store a current node in a graph or tree.
Craig'n'Dave logo

Craig ‘n’ Dave

In partnership with

Mission Encodeable
Bett Awards 2024 Finalist