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=-0.4 required=5.0 tests=AC_FROM_MANY_DOTS,BAYES_00 autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,24a59fbc07128ff8 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2001-05-07 09:20:15 PST Path: newsfeed.google.com!newsfeed.stanford.edu!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!isdnet!psinet-france!psiuk-f4!psiuk-p4!uknet!psiuk-n!news.pace.co.uk!nh.pace.co.uk!not-for-mail From: "Marin David Condic" Newsgroups: comp.lang.ada Subject: Re: RE: rename missing in Text_IO Date: Mon, 7 May 2001 12:03:19 -0400 Organization: Posted on a server owned by Pace Micro Technology plc Message-ID: <9d6h07$3b3$1@nh.pace.co.uk> References: <9d6ahn$157$1@nh.pace.co.uk> NNTP-Posting-Host: 136.170.200.133 X-Trace: nh.pace.co.uk 989251399 3427 136.170.200.133 (7 May 2001 16:03:19 GMT) X-Complaints-To: newsmaster@pace.co.uk NNTP-Posting-Date: 7 May 2001 16:03:19 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 5.50.4522.1200 X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200 Xref: newsfeed.google.com comp.lang.ada:7269 Date: 2001-05-07T16:03:19+00:00 List-Id: "Ted Dennison" wrote in message news:WazJ6.4532$vg1.353081@www.newsranger.com... > I just flat out don't do it. The only thing (IMHO) the Win32Ada bindings (or any > other "thin bindings") are good for is a reference to the correct type sizes and > calling convention for a pragma Interface, which I will hide down in the body of > my own package. Even there, you're often better going to the C API's docs, as > they give much more detail about how an object is used and what is expected of > it. If you try to use the C types and error return values that a thin binding > provides you directly, they often end up spreading themselves (and the C style > their use requires) throughout your code like a cancer. > Its that cancer - as well as the simple, flat-out pain - that makes me hate to use the Win32Ada bindings. There's just this huge and nasty collection of subtypes, etc, that are needed to line up with the Win32api and they are a ROYAL pain! I typically hide them in the bowels of a coresponding package that has Ada strings, characters, integers, enumerations, etc., as parameters. And yes, I too hate the error-code returns and usually resort to either a set of enumerals for the statuses or exceptions or some combination thereof. > I'd like to take this opportunity to volunteer my services as a Win32 "thick > binding coordinator", since I can't seem to con anyone else into taking the job. > :-) Anyone who has developed their own thick Win32 binding for some particular > Win32 facility, and has the legal right to allow their redistribution under the > GMGPL, feel free to email what you have to me. As mentioned before, I already > have bindings developed for WinNT/2K "services", process creation/control, > registry operations, and I am working on NT/2K's registry based "performance > data". They are currently only available under the GPL as part of the SETI@Home > Service (see the link on my website), but that will change soon. > I might be willing to help out here, but I'm wondering about proper guidelines. It wouldn't help much to have a dozen guys each developing package specs that look substantially different to cover the various parts of the Win32api. The intelligent thing to do would probably be to parallel the Win32ada packages. Maybe there's a "Ada_Win32ada" for every "Win32ada" where the sole job is to Ada-ize the types, parameters, return statuses, etc. There would need to be some guidelines & examples of how to translate to something that at least looks fairly regular across all the packages. Otherwise, we'd just end up with our own proliferation of Ada types, subtypes, etc. Ideas? MDC -- Marin David Condic Senior Software Engineer Pace Micro Technology Americas www.pacemicro.com Enabling the digital revolution e-Mail: marin.condic@pacemicro.com Web: http://www.mcondic.com/