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,8ab6ed0f71c479cd X-Google-Attributes: gid103376,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!nx01.iad.newshosting.com!newshosting.com!newspeer.monmouth.com!newsswitch.lcs.mit.edu!nntp.TheWorld.com!not-for-mail From: Robert A Duff Newsgroups: comp.lang.ada Subject: Re: API design problem - buffer scatter I/O Date: Mon, 24 Nov 2008 16:23:52 -0500 Organization: The World Public Access UNIX, Brookline, MA Message-ID: References: <1b06d68d-a6d8-4af3-8464-92e44224dcd6@20g2000yqt.googlegroups.com> NNTP-Posting-Host: shell01.theworld.com Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: pcls6.std.com 1227561832 1931 192.74.137.71 (24 Nov 2008 21:23:52 GMT) X-Complaints-To: abuse@TheWorld.com NNTP-Posting-Date: Mon, 24 Nov 2008 21:23:52 +0000 (UTC) User-Agent: Gnus/5.1008 (Gnus v5.10.8) Emacs/21.3 (irix) Cancel-Lock: sha1:o4psLGgS+hk0zt3yS9zkGg7K3/4= Xref: g2news1.google.com comp.lang.ada:2774 Date: 2008-11-24T16:23:52-05:00 List-Id: christoph.grein@eurocopter.com writes: > So, Bob, could you please elaborate about what is wrong in this > description. Let me make an analogy: If I want to teach someone how to operate a car, I will first tell them about the steering wheel, the clutch, the brake pedal, stop signs, traffic lights and so forth. Later on, I might want to teach them about pistons and spark plugs and gears. But that "under the hood" stuff is too much confusing detail at first. It should come later. And I should make it clear that "four cylinders" is just one way to do it -- some have 6 or 8, and maybe some (electric cars?) don't have cylinders at all. You still have to stop a stop sign, when driving an electric car. Likewise, for access types, beginners to Ada (whether or not they know other languages first) need to know about .all and new and Unchecked_Deallocation. Later on, they can learn about interfacing to C, unchecked conversion, and Address_To_Access_Conversions -- and maybe even thin/fat pointers. But I should make it clear that "fat pointers" is just one way to do it. In any case, it is certainly valuable to have a wiki or whatever that presents things to programmers in a simpler way than the RM! - Bob