From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: * X-Spam-Status: No, score=1.6 required=3.0 tests=BAYES_20,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.5-pre1 Path: eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: "G.B." Newsgroups: comp.lang.ada Subject: Re: renames usage Date: Sat, 2 Jan 2021 17:00:13 +0100 Organization: A noiseless patient Spider Message-ID: References: <5fedba8b$0$6186$426a74cc@news.free.fr> <5fedf478$0$21621$426a74cc@news.free.fr> <5fef180c$0$19476$426a74cc@news.free.fr> Reply-To: nonlegitur@notmyhomepage.de Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Date: Sat, 2 Jan 2021 16:00:14 -0000 (UTC) Injection-Info: reader02.eternal-september.org; posting-host="4d5f59f1e6bbabea9c97968e766767a2"; logging-data="1724"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+QwDPIR/NYeycLH9wJEN42IIixMhBAAoU=" User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 Cancel-Lock: sha1:kvY4MPd0ihl5dLomSi7NxZBI+zQ= In-Reply-To: <5fef180c$0$19476$426a74cc@news.free.fr> Content-Language: en-US Xref: reader02.eternal-september.org comp.lang.ada:61010 List-Id: On 01.01.21 13:39, DrPi wrote: > Reading all the answers, I understand that : >     X : Float renames Random (Seed); > is equivalent to : >     X : constant Float := Random (Seed); > > Right ? Also remember that limited types do not permit copying, whether constant or not. Renaming avoids having to move an object at all: procedure Hammering is type Hammer is (Claw, Sledge); task type Nail is -- A limited type entry Hit (Weight : Hammer); end Nail; task body Nail is separate; procedure Game is type Nail_Reference is access Nail; Challenge : array (1 .. 10) of Nail_Reference := (others => new Nail); function Random_Pick return Nail_Reference is begin return Challenge (2); end Random_Pick; Choice : Nail renames Random_Pick.all; begin Choice.Hit (Weight => Claw); end Game; begin Game; end Hammering;