Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 (MU) 9/23/84; site mulga.OZ Path: utzoo!watmath!clyde!bonnie!akgua!sdcsvax!dcdwest!ittvax!decvax!mulga!bjpt From: bjpt@mulga.OZ (Benjamin Thompson) Newsgroups: net.lang.c Subject: Re: YAAO (yet another assignment operator) Message-ID: <598@mulga.OZ> Date: Sat, 29-Dec-84 13:16:22 EST Article-I.D.: mulga.598 Posted: Sat Dec 29 13:16:22 1984 Date-Received: Mon, 31-Dec-84 02:59:37 EST References: <209@cmu-cs-k.ARPA> <529@vu44.UUCP> <6616@brl-tgr.ARPA> <582@mulga.OZ> <6771@brl-tgr.ARPA> Reply-To: bjpt@mulga.OZ (Benjamin Thompson) Organization: Comp Sci, Melbourne Uni, Australia Lines: 13 Summary: In article <6771@brl-tgr.ARPA> gwyn@brl-tgr.ARPA (Doug Gwyn) writes: >> X = Y; (call this form 1) >> is exactly the same statement as >> X = X Y; (call this form 2) > >Not quite. Another part of the semantics is that "X" is evaluated >ONLY ONCE. So a naive translation of form 1 to form 2 won't work. Quite - I forgot about nifty little lvalues like *++x. Even so, I should imagine there is already code in the compilers to handle this type of problem for the = operators C already has. I think altering a C compiler to allow more general ='s should still be fairly trivial. operators we already have