From article <CEDEDo.EIK@dcs.glasgow.ac.uk>, by pop@dcs.glasgow.ac.uk (Robin Popplestone):
> Scott Wheeler asks...
>
>> Robin, the CPL you keep mentioning - is it the same as the
>> (unfinished?) ancestor of BCPL, and are there any books extant on
>> it?
CPL, developed in the early 1960's, is an imperative language with a pure
functional subset. Within an ALGOL60-like imperative framework,
CPL also provides the ...where... form of local definitions, which,
its authors say, gives it equivalent expressive power to the lambda
calculus. CPL conditional expressions use a form of the
if...then...else... notation. CPL is strongly typed but has a general
type which enables a weak form of polymorphism. CPL has constructs for defining
functions to be either normal or applicative order. CPL provides typed array
and polymorphic list structures. List selection is through structure matching.
For more details see: Barron, Buxton, Hartley, Nixon & Strachey,
The main features of CPL,
Computer Journal
Vol 6, pp 134-43, 1963
|