A program which allows previously compiled code, from software libraries, to be linked together
Editor
Allows a programmer to enter, format and edit source code
Loader
A program which loads previously compiled code into memory
Compiler
Converts source code into executable machine code. Once compiled, a program can be run at any time
Interpreter
Converts each line of source code into machine code, and executes it as each line of code is run. The conversion process is performed each time the program is run
Trace
A facility which displays the order in which the lines of a program are executed, and possibly the values of variables as the program is being run
Error Diagnostics
Used when a program fails to compile or to run. Error messages are displayed to help the programmer diagnose what has gone wrong
Variable Watch
A facility that displays the current value of any variable. The value can be 'watched' as the program code is executed line-by-line to see the effects of the code on the variable
Memory Inspector
A facility which will display the contents of a section of memory
Break Point
Interrupts a program on a specific line of code, allowing the programmer to compare the values of variables against expected values
Debugger
A program which helps locate, identify and rectify errors in a program