Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site mtxinu.UUCP
Path: utzoo!watmath!clyde!bonnie!akgua!sdcsvax!sdcrdcf!hplabs!hpda!fortune!amdcad!amd!dual!unisoft!mtxinu!ed
From: ed@mtxinu.UUCP (Ed Gould)
Newsgroups: net.lang.c
Subject: Re: YAAO  (yet another assignment operator)
Message-ID: <189@mtxinu.UUCP>
Date: Wed, 26-Dec-84 16:52:22 EST
Article-I.D.: mtxinu.189
Posted: Wed Dec 26 16:52:22 1984
Date-Received: Sat, 29-Dec-84 02:39:19 EST
References: <209@cmu-cs-k.ARPA> <529@vu44.UUCP> <6616@brl-tgr.ARPA> <582@mulga.OZ>
Organization: mt Xinu, Berkeley, CA
Lines: 16

> ...
> Consider that 
> 		X = Y;		(call this form 1)
> is exactly the same statement as
> 		X = X  Y;	(call this form 2)
> ...

But, of course, form 1 and form 2 are not quite the same thing.
The semantic difference is that in form 1 X is evaluated once,
and it's evaluated twice in 2.  If there are side effects, this
can cause great damage to the algorithm.  So, just translating
1 into 2 isn't right.

-- 
Ed Gould
{ucbvax,decvax}!mtxinu!ed