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,751584f55705ddb7 X-Google-Attributes: gid103376,public From: ralw@valiant.gmrc.gecm.com (R.A.L Williams) Subject: Re: Ada is almost useless in embedded systems Date: 1996/02/19 Message-ID: #1/1 X-Deja-AN: 140089334 references: <823906039.22113@assen.demon.co.uk> organization: GEC-Marconi Research Centre newsgroups: comp.lang.ada Date: 1996-02-19T00:00:00+00:00 List-Id: In article <4g3ljv$mmc@news.pacifier.com> steved@199.2.117.161 (Steve Doiel) writes: > From: steved@199.2.117.161 (Steve Doiel) > In ... (Daniel Grambihler) writes: > > [snip] > > > > >I don't recall a claim the it was *impossible* to interface to hardware. Just > >that it is badly designed for that job. I agree. Interfacing to hardware with > >Ada is a pain. > > Yes that has been my experience too. At least compared with doing the same job in C. I have to admit, however, that I haven't tried it for quite a few years and perhaps compiler quality has improved. [snip] > > Well Daniel if portability is an issue, I think you need to scrap using > 'C' bit fields to map to hardware registers or test your particular compiler > for what it generates and settle for non-portable. > [snip] I think one of the problems we are all having with this discussion is the context in which various statements are being made: - programming in the large vs. programming in the small - portability vs. fixed target environment to mention but two sources of contention. Let's take an example I was peripherally involved in recently. We had to produce a small interface unit that did a certain amount of data processing (all done in dedicated hardware because of the desired rates) and, in addition, logged time-stamped information onto a 'legacy' tape unit. Unfortunately the time-stamped information also came from 'legacy' equipment, but a different legacy. I won't go into details but hardware designers can come up with thouroughly unpleasant specifications when they want to! Portability didn't come into the matter because this was a one-off system for a particular research application. We knew the platform, in fact we designed it (the CPU board at least), we knew the host and the job was so small that we couldn't justify the expense of any compiler we didn't already have. Programming 'in the large' was not an issue because, again, the whole job was so small. To be honest, the engineer in charge of the development didn't even consider using Ada but, if he had, I would have advised strongly against it because, leaving aside the issues of large projects and portability of representation, Ada (83 at least) is IMO far harder to use than C. Large system developments certainly get all the headlines and certainly represent a larger 'concentrated' risk if they go wrong, but at what level, I wonder, is the bulk of man-power in the industry expended? In the UK more people are employed in 'small businesses' than in multi-nationals. I wonder if, by analogy, the same is also true of software development. If this is the case, then maybe us 'little people' should have a voice too :-) Bill Williams -- Bill Williams |GEC-Marconi does not necessarily GEC-Marconi Research Centre |endorse my opinions! bill.williams@gecm.com Tel: +44 1245 242016 Fax: +44 1245 478639