The DICT Development Group

Search for:
Search type:

Database copyright information
Server information

1 definition found
 for CLU
From The Free On-line Dictionary of Computing (30 December 2018) :

      (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.
     Exceptions are raised using 'signal' and handled with
     'except'.  Assignment is by sharing, similar to the sharing
     of data objects in Lisp.  Arguments are passed by
     call-by-sharing, similar to call-by-value, except that the
     arguments are objects and can be changed only if they are
     mutable.  CLU has own variables and multiple assignment.
     CLU was one of Kamin's interpreters.  clu2c compiled CLU to
     C.  Concurrent CLU was an extension designed to support
     parallel proceses.
     ["CLU Reference Manual", Barbara Liskov et al, LNCS 114,
     Springer 1981].
     E-mail: Paul R. Johnson .
     Versions for Sun and VAX/VMS
     ftp://pion.lcs.mit.edu/pub/clu/)">(ftp://pion.lcs.mit.edu/pub/clu/).  Portable version

Contact=webmaster@dict.org Specification=RFC 2229