Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!henry From: henry@utzoo.UUCP (Henry Spencer) Newsgroups: comp.lang.c Subject: Re: fabs(x) vs. (x) < 0 ? -(x) : (x) Message-ID: <7653@utzoo.UUCP> Date: Tue, 10-Feb-87 15:38:17 EST Article-I.D.: utzoo.7653 Posted: Tue Feb 10 15:38:17 1987 Date-Received: Tue, 10-Feb-87 15:38:17 EST References: <4943@mimsy.UUCP> <2550005@hpisod2.HP>, <665@jenny.cl.cam.ac.uk> Organization: U of Toronto Zoology Lines: 21 > The absence of this ability (in suitably C-like syntax) to create explicit > temporaries in C expressions explains why getc() and putc() are allowed > to evaluate their parameters more than once. > > Question: do not the ANSI committee find this uncomfortable too? > Is the absence of suitable concrete syntax the justification? I conjecture that most members of the ANSI committee don't find this particularly uncomfortable, since old implementations which evaluate the arguments more than once will be around for a long time and hence everyone has to be cautious anyway. The reason for not doing anything about it probably has nothing to do with the lack of syntax -- anyone can invent syntax -- but with the lack of clear need and the absence of substantial real experience with the idea. Although this rule sometimes seems more honored in the breach than in the observance, X3J11 really is supposed to be standardizing existing ideas rather than inventing new ones. -- Legalize Henry Spencer @ U of Toronto Zoology freedom! {allegra,ihnp4,decvax,pyramid}!utzoo!henry