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: fd6dd,c78177ec2e61f4ac X-Google-Attributes: gidfd6dd,public X-Google-Thread: 103376,c78177ec2e61f4ac X-Google-Attributes: gid103376,public From: gwinn@res.ray.com (Joe Gwinn) Subject: Re: ada and robots Date: 1997/06/10 Message-ID: #1/1 X-Deja-AN: 247562770 References: <338CDA96.53EA@halcyon.com> <338F5D7D.6C03@tiac.net> <338F9D05.5EB3@bix.com> <5mqpj3$bc5$1@goanna.cs.rmit.edu.au> <33930245.12A1@sprintmail.com> <5mv984$7kn@news.emi.com> Organization: Raytheon Electronic Systems Newsgroups: comp.robotics.misc,comp.lang.ada Date: 1997-06-10T00:00:00+00:00 List-Id: In article , dewar@merv.cs.nyu.edu (Robert Dewar) wrote: > Joe said > > < Experience with Ada83 shows that it is very bad at direct control of > hardware, especially I/O hardware, and simply does not handle shared > memory correctly.>> > > Please explain this claim. Please post sample code that you think is > defined in C and handles shared memory correctly ... There is tons of such code available for free on the internet. Just look for I/O drivers, such as for UNIX and VxWorks. VxWorks Board Support Packages are another example. Even C-coded I/O drivers and kernel initialization sequences resort to some assembly code. As for shared memory, look into the handling of driver comm pools, queues shared between tasks and also with ISRs. And so on. For UNIX drivers, there are multiple books available on exactly how to write such drivers, all in C. Most include (annotated) sample driver code. I would submit that there is ample evidence that C can be used for direct hardware control, and for shared memory. I would not claim that all who have tried such things have succeeded, regardless of language. Many programmers couldn't write an I/O driver if their life depended on it. Joe Gwinn