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: 1014db,690ce1f62160d05a X-Google-Attributes: gid1014db,public X-Google-Thread: 103376,690ce1f62160d05a X-Google-Attributes: gid103376,public X-Google-Thread: 1094ba,690ce1f62160d05a X-Google-Attributes: gid1094ba,public X-Google-Thread: 109fba,690ce1f62160d05a X-Google-Attributes: gid109fba,public From: Kilgallen@eisner.decus.org.nospam (Larry Kilgallen) Subject: Re: How to Design an Application Programmers' Interface (API) Date: 2000/08/11 Message-ID: <6K+0jFPPKxTo@eisner.decus.org>#1/1 X-Deja-AN: 657154057 References: <39921178.819F6DCB@netwood.net> <399386EF.4F2AA3E6@netwood.net> X-Complaints-To: abuse@verio.net X-Trace: iad-read.news.verio.net 966000282 216.44.122.34 (Fri, 11 Aug 2000 13:24:42 GMT) Organization: LJK Software NNTP-Posting-Date: Fri, 11 Aug 2000 13:24:42 GMT Newsgroups: comp.lang.c++,comp.lang.c,comp.lang.fortran,comp.lang.ada Date: 2000-08-11T00:00:00+00:00 List-Id: In article <399386EF.4F2AA3E6@netwood.net>, "E. Robert Tisdale" writes: > A good API makes it easier for application programmers to write > safe and reliable high performance application programs clearly > and concisely so that they are easier to read, understand and maintain. > It permits library developers and application programmers > to work independently of each other and reduces the time required > to develop, debug and test applications. But library developers and application programmers can work independently even with a lousy API design, so long as they use the Ada language. Write the specification for the library first (it can even be written by the application programmer) and then have each side code using that specification. > An API is a contract between library developers and application programmers. And the implementation of that contract is the specification of the library package. If you are going to post these generalities to the Ada newsgroup, please be aware of the features of the Ada language.