Search in: Word
Vietnamese keyboard: Off
Virtual keyboard: Show
Computing (FOLDOC) dictionary
CLU
Jump to user comments
CLUster.
An object-oriented programming language developed at MIT
by Liskov et al in 1974-1975.
CLU is an object-oriented language of the Pascal family
designed to support data abstraction, similar to Alphard.
It introduced the iterator: a coroutine yielding the
elements of a data object, to be used as the sequence of
values in a 'for' loop.
A CLU program consists of separately compilable procedures,
clusters and iterators, no nesting. A cluster is a module
naming an abstract type and its operations, its internal
representation and implementation. Clusters and iterators may
be generic. Supplying actual constant values for the
parameters instantiates the module.
There are no implicit type conversions. In a cluster, the
explicit type conversions 'up' and 'down' change between the
abstract type and the representation. There is a universal
type 'any', and a procedure force[] to check that an object is
a certain type. Objects may be mutable or immutable.