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-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,2def9aa85afa5d22 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-11-30 04:49:26 PST Sender: sjw@galadriel.frlngtn.gecm.com Newsgroups: comp.lang.ada Subject: Re: Joint Strike Fighter References: <3BDCE159.39F6D422@adaworks.com> <11bf7180.0110290311.4d8d6f04@posting.google.com> <3BDF9C6A.C25520C5@adaworks.com> <3BE023AB.8F235EF5@sparc01.ftw.rsc.raytheon.com> <9rp8mo$6d8$1@nh.pace.co.uk> <11bf7180.0111010338.6dbc1537@posting.google.com> <9u5q9g$md$1@nh.pace.co.uk> From: Simon Wright Date: 30 Nov 2001 12:49:03 +0000 Message-ID: Organization: Alenia Marconi Systems, ISD, Farlington X-Newsreader: Gnus v5.5/Emacs 20.3 NNTP-Posting-Host: galadriel.frlngtn.gecm.com X-Trace: 30 Nov 2001 12:37:31 GMT, galadriel.frlngtn.gecm.com Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!dispose.news.demon.net!demon!btnet-peer0!btnet-feed5!btnet!newreader.ukcore.bt.net!pull.gecm.com!galadriel.frlngtn.gecm.com Xref: archiver1.google.com comp.lang.ada:17212 Date: 2001-11-30T12:49:03+00:00 List-Id: "Marin David Condic" writes: > This seems to be a very common misconception about Ada that tends to > come from C/C++ programmers approaching the language for the first > time. Clearly, many programmers are simply used to having to do > something explicit to get pass-by-reference and think it won't > happen unless they make it so. I have encountered this > misconception often when teaching Ada. I don't know what could be > done with teaching materials, reference documents or the language > itself to make it more clear that the compiler will handle this for > you and won't do something stupid. It just seems to occur over and > over again and Ada gets a bad name over something that is just being > misunderstood. I'm not sure that this particular issue is the right way round (well, it wasn't for me when I encountered it). I had a Socket (record) type which needed to be passed by reference but wasn't; the cure was to make it tagged, which I was less than happy with. I forget why 'limited' wouldn't do .. So I _did_ have to do something explicit to get pass-by-reference.