Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!philabs!cmcl2!harvard!bu-cs!bzs From: bzs@bu-cs.UUCP (Barry Shein) Newsgroups: net.lang.c Subject: Re: Precedent for use of = Message-ID: <827@bu-cs.UUCP> Date: Sat, 21-Jun-86 20:56:53 EDT Article-I.D.: bu-cs.827 Posted: Sat Jun 21 20:56:53 1986 Date-Received: Tue, 24-Jun-86 02:36:28 EDT Organization: Boston Univ Comp. Sci. Lines: 44 I'll risk stating it even more strongly than has been said so far: It is not even clear that assignment and equality are clearly distinguished in any mathematical sense, you just think they are because you are applying a particular model of the machine you are computing on. One can envision an environment where the distinction breaks down even further: A few years ago I worked for a company which had me write a compiler with a very similar syntax to C (actually, a superset) who's semantics created a constraint network for a directed graph pseudo-machine. Basically, '=' was simply an assertion that at this point in the computation this statement was 'true' or should be made such (or, possibly, an error if it was not.) Full blown expressions were allowed on either sides of an 'assignment' thus: j = 5; i + 4 = j; simply meant that by the time the second statement was executed if 'i' was empty it was to be given the value '1'. If it was not empty it either already was '1' or indicated an error. Thus statements could be run 'backwards' to infer missing data or verify existing state of the data base. Essentially the whole program ran at once in parallel (as far as the semantics were concerned, not in fact) so the phrase above "by the time the second statement was executed..." is simply a pedagogical convenience. I think such an example should sufficiently blur rigid views towards assignment and equality. Another point would be that I have never seen a mathematician hesitate to introduce notational systems when convenient. Yet another point would be it is not clear that programming and it's languages *isn't* mathematics, rather than two things to be judged side by side. Perhaps the paradigm has shifted? -Barry Shein, Boston University