• algorithm: A general process for solving a category of problems.

  • argument: A value provided to a function when the function is called. This value is assigned to the corresponding parameter in the function.

  • body: The sequence of statements inside a function definition.

  • composition: Using an expression as part of a larger expression, or a statement as part of a larger statement.

  • deterministic: Pertaining to a program that does the same thing each time it runs, given the same inputs.

  • dot notation: The syntax for calling a function in another module by specifying the module name followed by a dot (period) and the function name.

  • flow of execution: The order in which statements are executed during a program run.

  • fruitful function: A function that returns a value.

  • function: A named sequence of statements that performs some useful operation. Functions may or may not take arguments and may or may not produce a result.

  • function call: A statement that executes a function. It consists of the function name followed by an argument list.

  • function definition: A statement that creates a new function, specifying its name, parameters, and the statements it executes.

  • function object: A value created by a function definition. The name of the function is a variable that refers to a function object.

  • header: The first line of a function definition.

  • import statement: A statement that reads a module file and creates a module object.

  • module object: A value created by an import statement that provides access to the data and code defined in a module.

  • parameter: A name used inside a function to refer to the value passed as an argument.

  • pseudorandom: Pertaining to a sequence of numbers that appear to be random, but are generated by a deterministic program.

  • return value: The result of a function. If a function call is used as an expression, the return value is the value of the expression.

  • void function: A function that does not return a value.