(Or "GOTO", "go to", "GO TO", "JUMP", "JMP") A construct and keyword
found in several higher-level programming languages (e.g. Fortran
) to cause an unconditional jump or transfer of control
from one point in a program to another. The destination of the jump is usually indicated by a label
following the GOTO keyword.
In some languages, a label is a line number, in which case every statement may be labelled, in others a label is an optional alphanumeric identifier
Use of the GOTO instruction in high level language
programming fell into disrepute with the development and general acceptance of structured programming
, and especially following the famous article "GOTO statement considered harmful
". Since a GOTO is effectively an assignment
to the program counter
, it is tempting to make the generalisation "assignment considered harmful" and indeed, this is the basis of functional programming
Nearly(?) all machine language
instruction sets include a GOTO instruction, though in this context it is usually called branch or jump or some mnemonic
based on these.
See also COME FROM