Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!decvax!duke!mcnc!ncsu!uvacs!mac From: mac@uvacs.UUCP Newsgroups: net.lang Subject: CLU mutations Message-ID: <1084@uvacs.UUCP> Date: Thu, 1-Dec-83 15:17:46 EST Article-I.D.: uvacs.1084 Posted: Thu Dec 1 15:17:46 1983 Date-Received: Sun, 4-Dec-83 04:24:21 EST Lines: 14 Does CLU still have the mutable/immutable value distinction? My impression was that certain system-defined types (immutable) are copied on assignment, but that structured data are assigned with pointers and shared (mutable). Thus after A:=B operations on B can change A iff they are of a mutable type. This feature occurs in languages with pointers. In Algol W record types were always referenced with pointers, hence mutable. I think it progress that in Pascal the notion of record has been separated from that of pointer. For that matter, I think early SETL (BALM-SETL) had this problem. The wary user had to do lots of copy().