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,6413b417b806eb28 X-Google-Attributes: gid103376,public From: Robert Dewar Subject: Re: Linux Kernel in Ada. Repost Date: 1999/04/11 Message-ID: <7ep7hh$on3$1@nnrp1.dejanews.com>#1/1 X-Deja-AN: 464987060 References: <7eg43i$d3b$1@nnrp1.dejanews.com> <370CC730.4C6112DB@utech.net> <370D7007.2D3AD58B@rocketmail.com> <7el9so$geb@drn.newsguy.com> <7elrg5$egk2@ftp.kvaerner.com> <7emjk8$rp3@drn.newsguy.com> <370F025C.4C821FEC@online.no> <7en7kg$o9d@drn.newsguy.com> X-Http-Proxy: 1.0 x13.dejanews.com:80 (Squid/1.1.22) for client 205.232.38.14 Organization: Deja News - The Leader in Internet Discussion X-Article-Creation-Date: Sun Apr 11 04:13:41 1999 GMT Newsgroups: comp.lang.ada X-Http-User-Agent: Mozilla/4.04 [en] (OS/2; I) Date: 1999-04-11T00:00:00+00:00 List-Id: In article <7en7kg$o9d@drn.newsguy.com>, Mich@western_world_somehwere wrote: > Do you think it is trivial to write a fully working Ada > posix binding? by saying just go read a book to do it, > shows that you really do not know what is involved here. > Have a look at the current Ada binding posix code just to > see what is there. Remember, you have to implement all > the posix standard, not just 5 easy little functions. First of all one thing to realize is that a *thin* binding to Posix is trivial. Indeed I would guess that the SGI binding generator would automatically get you 98% or more of the way there, and even if you had to do it by hand, it would not be more than a week's work. However, the relatively thick binding for Ada prescribed by the IEEE standard is indeed a larger effort, and one that is not something you can knock off quickly. The reason is that you are building something at a significantly higher abstraction level. Indeed to call this a "binding" is a bit peculiar (certainly at some level of change-of-abstraction, we do not use the word binding, the Win32 interface is not a binding to the NT kernel -- ok, not a fair comparison of course but you see the idea). Was it a good idea to decide on a thick binding? I think not, and have always felt this, but there has always been a lot of controversy. Thin bindings Advantages easy to learn (same knowledge base as underlying system) easy to implement already documented in texts etc Disadvantages level of abstraction is lower than one would like Thick Bindings Advantages operate at a higher level of abstraction more suitable for Ada. Disadvantage much harder to implement, may not get implemented widely or quicly. new ada-specific knowledge base required no existing texts etc My opinion is that the best approach is to go for thin bindings, which can be largely generated automatically. Then let individual applications layer on top of these choosing abstractions particularly suited for the application at hand (as indeed a good C programmer would do to -- if you can find one who understands abstraction :-) But as I say this is an old argument. Just remember no one requires you to use the IEEE bindings to POSIX as *the* one and only way to interface to Unix style functionality -- go ahead and bind thin if you prefer. -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own