From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-2.9 required=3.0 tests=BAYES_00,NICE_REPLY_A autolearn=ham autolearn_force=no version=3.4.6 Subject: Re: Ada versus Pascal Newsgroups: comp.lang.ada References: From: ldries46 Date: Sat, 23 Oct 2021 09:13:37 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.14.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-GB Message-ID: Organization: KPN B.V. Path: eternal-september.org!reader02.eternal-september.org!news.mixmin.net!feed.abavia.com!abe001.abavia.com!abp002.abavia.com!news.kpn.nl!not-for-mail Injection-Date: Sat, 23 Oct 2021 09:13:39 +0200 Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com" Xref: reader02.eternal-september.org comp.lang.ada:63060 List-Id: Op 22-10-2021 om 17:12 schreef Niklas Holsti: > On 2021-10-22 12:59, 711 Spooky Mart wrote: >> On 10/22/21 1:18 AM, ldries46 wrote: >> >> [...] >> >>> Ada is stricter >>> than other languages and is meant to have NO Operating system dependant >>> items, so if you cannot go around something there must be a package on >>> each operating system having the same interface everywhere. >> >> By this do you mean the same syntax and libs will run on all target >> systems without fiddling with {IFDEF} and architecture compiler switch >> woo foo for USES and repetitive cross-arch boilerplate? > > > I'm not ldries46, but here is an answer: Ada standardizes _some_ > functions for which some other languages use "OS" services, > principally threading, which in Ada is the "tasking" feature. Indeed > Ada tasking works in the same way whichever OS is used, and also in > the "bare board", no-OS situation. This is very useful for developing > multi-threaded embedded SW, because the Ada tasking code can be tested > on desk-top workstations and then executed on the target system > unchanged. (and no "ifdefs"). > > But real operating systems (as opposed to simpler real-time kernels) > provide many services that are not standardized in Ada, for example > inter-process communication. > Of course there are system functions that are in OS that are not implemented in standard Ada. That type users must implement themselves. In fact some users are doing that and are present these solutions to the world. For these packages the latter line of my earlier comment is applicable.