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.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!news.eternal-september.org!feeder.eternal-september.org!feeds.phibee-telecom.net!zen.net.uk!dedekind.zen.co.uk!news.netfront.net!not-for-mail From: "Jeffrey R. Carter" Newsgroups: comp.lang.ada Subject: Re: How (or Where?) to get started on Ada? (Properly) Date: Wed, 04 Sep 2013 11:46:50 -0700 Organization: Netfront http://www.netfront.net/ Message-ID: References: <9ec51e40-081f-4ec7-b17f-7c73dbdcd10a@googlegroups.com> <2e821865-60c7-4056-91b1-165a6e7748ac@googlegroups.com> NNTP-Posting-Host: 97.68.208.182 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: adenine.netfront.net 1378320416 32543 97.68.208.182 (4 Sep 2013 18:46:56 GMT) X-Complaints-To: news@netfront.net NNTP-Posting-Date: Wed, 4 Sep 2013 18:46:56 +0000 (UTC) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130801 Thunderbird/17.0.8 In-Reply-To: <2e821865-60c7-4056-91b1-165a6e7748ac@googlegroups.com> Xref: news.eternal-september.org comp.lang.ada:17113 Date: 2013-09-04T11:46:50-07:00 List-Id: On 09/04/2013 09:05 AM, e.s.harney@gmail.com wrote: > > How does Ada do these stack-allocations of variable size? Is there any performance downside to it? (e.g. by having to > relocate things on the stack, or stacks getting huge?) Ada doesn't do these. Specific implementations (compilers) do them, and may do them in different ways. In general, compilers are written by teams of experts who put a lot of effort into optimizing these things. Ada is about letting software engineers think in the problem space, creating useful abstractions, without worrying about such low-level details, which are best left to the compiler. In nearly 30 yrs of using Ada, I have never encountered a situation in which low-level concerns had a positive effect on a project. I would recommend you concentrate on how to best use packages, since real modules would appear to be something you haven't had much exposure to. For a real-world example, see "Ada Outperforms Assembly: A Case Study" (http://www.seas.gwu.edu/~adagroup/sigada-website/lawlis.html). Concerning your original question, I second the suggestion of "Ada Distilled". -- Jeff Carter "Now go away or I shall taunt you a second time." Monty Python and the Holy Grail --- news://freenews.netfront.net/ - complaints: news@netfront.net ---