block-structured structured language <language> Any programming language in which sections of {source code} contained within pairs of matching {delimiters} such as "{" and "}" (e.g. in {C}) or "begin" and "end" (e.g. {Algol}) are executed as a single unit. A block of code may be the body of a {subroutine} or {function}, or it may be controlled by conditional execution ({if statement}) or repeated execution ({while statement}, {for statement}, etc.). In all but the most primitive block structured languages a {variable}'s {scope} can be limited to the block in which it is declared. Block-structured languages support {structured programming} where each block can be written without detailed knowledge of the inner workings of other blocks, thus allowing a {top-down design} approach. See also {abstract data type}, {module}. (2004-09-29)