In computer programming, an indirection (also called a reference) is a way of referring to something using a name, reference, or container instead of the value itself.

The most common form of indirection is the act of manipulating a value through its memory address. For example, accessing a variable through the use of a pointer. A stored pointer that exists to provide a reference to an object by double indirection is called an indirection node.

Another example of indirection is Unicode, which serves as a bridge between specific characteristics and binary data encodings such as UTF-8