Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!nrl-cmf!cmcl2!brl-adm!umd5!purdue!i.cc.purdue.edu!j.cc.purdue.edu!pur-ee!iuvax!bsu-cs!dhesi From: dhesi@bsu-cs.UUCP (Rahul Dhesi) Newsgroups: comp.lang.c Subject: Re: Another 'D' proposal (sigh) Message-ID: <2230@bsu-cs.UUCP> Date: 29 Feb 88 02:49:38 GMT References: <1893@phoenix.Princeton.EDU> Reply-To: dhesi@bsu-cs.UUCP (Rahul Dhesi) Organization: CS Dept, Ball St U, Muncie, Indiana Lines: 16 In article <1893@phoenix.Princeton.EDU> rjchen@phoenix.Princeton.EDU (Raymond Juimong Chen) writes: >Propose that there be a way to declare "true functions", ie, functions >whose return values depend on and are solely determined by the arguments >passed to it. They also have no side-effects. Such functions were almost but not quite included in Ada. They are discussed in the Rationale for Ada, published as a special SIGPLAN Notices issue in the early eighties. Declaring such functions is like using noalias--the compiler cannot easily confirm that what the programmer claims is really true. Only truly global flow analysis will do that, and if you are doing global flow analysis across separately compiled files, then there's no need for the programmer to know the difference anyway. -- Rahul Dhesi UUCP: !{iuvax,pur-ee,uunet}!bsu-cs!dhesi