H ?
«
‹
←
→
›
»
Language peer sets for CLU: United States↑ United States/1974↑ Designed 1974 ↑ 1970s languages ↑ Fourth generation↑ High Cold War↑ Genus Pascals ↑ Multi-purpose ↑ Pascals↑ Wirth Algols↑ Generation of Algol 60 ↑ Pascals/1974↑ Wirth Algols/1974↑ Generation of Algol 60/1974↑ Pascals/United States↑ Wirth Algols/United States↑ Generation of Algol 60/United States↑ Multi-purpose ↑ Multi-purpose/1974↑ Multi-purpose/us ↑
CLUster programming language - abstractions and iteratorsalternate simple viewCountry: United States Designed 1974 Published: 1974 Genus: Pascals Sammet category: Multi-purpose for CLUster. 1974-1975. CLU is an object-oriented language of the Pascal family designed to support data abstraction, similar to Alphard. 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. Garbage collection is built in. 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. TED (a text editor), R (a document formatter), SWIFT (an operating system), and lp (a proof tool used for formal specification) have been written in CLU. People: Structures: Related languages
Samples: References: in [SIGPLAN] (1976) SIGPLAN Notices 11(02) February 1976 also Proceedings of the SIGPLAN '76 Conference on Data: Abstraction, Definition and Structure, Salt Lake City, Utah, USA, March 22-24, 1976 in [Proceedings] (1977) Proceedings of the Strathclyde ALGOL 68 conference Glasgow, Scotland 1977 in [ACM] (1977) [ACM] CACM 20(08) (Aug 1977) in [Proceedings] (1978) Proceedings of the 1978 annual conference 1978, Washington, D.C., United States in [SIGPLAN] (1978) SIGPLAN Notices 13(11) Nov 1978 in [SIGPLAN] (1978) SIGPLAN Notices 13(11) Nov 1978 in (1979) ACM Computing Reviews 20(11) November 1979 in (1979) ACM Computing Reviews 20(11) November 1979 in (1981) TOPLAS 3(1) January 1981 in [SIGPLAN] (1982) SIGPLAN Notices 17(08) August 1982 in [LIPE 1985] (1985) SIGPLAN Notices 20(07) July 1985 (Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments) in [LIPE 1985] (1985) SIGPLAN Notices 20(07) July 1985 (Proceedings of the ACM SIGPLAN 85 symposium on Language issues in programming environments) in [HOPL II] (1993) [ACM SIGPLAN] SIGPLAN Notices 28(03) March 1993 The second ACM SIGPLAN conference on History of programming languages (HOPL II) in [HOPL II] (1993) [ACM SIGPLAN] SIGPLAN Notices 28(03) March 1993 The second ACM SIGPLAN conference on History of programming languages (HOPL II) Resources Search in: Google Google scholar World Cat Yahoo Overture DBLP Monash bib NZ IEEE  ACM portal CiteSeer CSB ncstrl jstor Bookfinder |