BCPL
Basic CPL
Martin Richards, 1969
A British systems language, a descendant of CPL[1] and the inspiration for B[1] and C. BCPL is low-level, typeless and block-structured, and provides only one-dimensional arrays. Case is not significant, but conventionally reserved words begin with a capital. Flow control: If-Then, Test-Then-Else, Unless-Do, While-Do, Until-Do, Repeat, Repeatwhile, Repeatuntil, For-to-By-Do, Loop, Break and Switchon-Into-Case-Default-Endcase. BCPL has conditional expressions, pointers, and manifest constants. BCPL had both procedures: 'Let foo(bar) Be command' and functions: 'Let foo(bar) = expression'. 'Valof $(..Resultis..$)' causes a compound command to produce a value. Parameters are call-by-value.
BCPL - The Language and its Compiler, Martin Richards & Colin Whitby-Stevens, Cambridge University Press, 1979.
Oxford BCPL
Differs slightly: Test-Ifso-Ifnot, and section brackets in place of $( $).