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=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,b860b4e8d00468ef X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!not-for-mail From: "Martin Dowie" Newsgroups: comp.lang.ada Subject: Re: Ada access vs C/C++ pointers and references Date: Thu, 19 Aug 2004 08:42:33 +0100 Organization: BAE SYSTEMS Message-ID: <412458a0$1_1@baen1673807.greenlnk.net> References: <87657fso10.fsf@insalien.org> <10i8l6dadu067a1@corp.supernews.com> X-Trace: news.uni-berlin.de To+Z/T/QILgT5FB67WKNUgBzGHZ0fwKLb1QNNKVjuVGT4Nd1hK X-Orig-Path: baen1673807.greenlnk.net!baen1673807!not-for-mail X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4807.1700 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4807.1700 X-Original-NNTP-Posting-Host: baen1673807.greenlnk.net Xref: g2news1.google.com comp.lang.ada:2839 Date: 2004-08-19T08:42:33+01:00 List-Id: j wrote: > Hey avionics guys, please share your knowledge and experience, > > I am starting a new job - Ada in avionics. > > Any suggestions or recommendations for: what to know, first thing to > study if you don't know, training books, pitfalls to watch for, > 'soft' skills? Here's 5 off the top of my head: KISS (Keep It Simple, Stupid). Try and avoid the more esoterique corners of the language (e.g. I can't imagine myself every using ATC). Investigate SPARK - this will certainly keep it KISS! :-) Also, check out the "Ravenscar" profile for tasking programs (SPARK can support this now). Never be tempted to export variables instead of using an access routine (pragma Inline is your friend). If you can, make sure _you_ have input to the ICD so that you ensure message have nice field boundaries. Avoid 'holey' enumerations, other than at the boundary and always convert them to a 'plain' enumeration. Avoid 'types packages' - by this I mean enormous packages that hold every type required by a system. Cheers -- Martin