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,fc95c1889fbed9e5 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: C Interface question Date: 1996/07/11 Message-ID: #1/1 X-Deja-AN: 168312795 references: <31E403CF.15FB7483@escmail.orl.mmc.com> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1996-07-11T00:00:00+00:00 List-Id: T.E.D. said Cool!! That was one of my favorite DECisms. The best part was the "mechanisims", field, which allowed "thin" bindings to use ADTs, rather than just integers or access types. That almost makes thin C bindings usable. Indeed. It is true that the Ada 95 rules (or rather implementation advice) if followed, allows more consistent and portable interface to C, but the Import pragma allows precise control, and GNAT does indeed fully implement the whole pragma (well to be precise, certain very VMS'y features like First_Optional_Parameter and pass by Descriptor are available on VMS only, since they make no sense elsewhere, but most of the pragma makes good sense. Actually come to think of it, maybe we should allow First_Optional_Parameter and ignore it? well probably it's not worth it, since it is only really of use for DEC packages like Starlet. But the important point is that the Value and Reference mechanisms work fine, and I think that is what Ted is really referring to in his "Cool!!"