From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8e64f4db20d57eb5 X-Google-Attributes: gid103376,public From: bobduff@world.std.com (Robert A Duff) Subject: Re: Call by reference vs. call by value Date: 1996/07/21 Message-ID: #1/1 X-Deja-AN: 169345973 references: <31F10E50.726@egr.uri.edu> organization: The World Public Access UNIX, Brookline, MA newsgroups: comp.lang.ada Date: 1996-07-21T00:00:00+00:00 List-Id: In article , Robert Dewar wrote: >P.S. we also got quite a few complaints of regressions that turned out to be >people assuming that records were passed by reference, and their programs >depended on reference semantics! But this is proof that the implementation-definedness is indeed a bug-causing problem. I'm convinced there must be a better solution that does not introduce huge amounts of copying. - Bob P.S. In thinking about this issue, one point is that for remote procedure calls, you pretty much *have* to pass by copy, even for very large things. So a rule saying "all arrays are passed by reference" or "all arrays that are not statically known to be small are passed by reference (for some definition of small)" would break the Distributed Systems Annex.