comp.lang.ada
 help / color / mirror / Atom feed
From: Richard D Riehle <laoXhai@ix.netcom.com>
Subject: Re: [Fwd: F22 completes 11% of its Flight tests]
Date: 2000/01/25
Date: 2000-01-25T22:05:43+00:00	[thread overview]
Message-ID: <86l6nn$mhj$1@nntp4.atl.mindspring.net> (raw)
In-Reply-To: 388E014A.B8F87F5@ebox.tninet.se

In article <388E014A.B8F87F5@ebox.tninet.se>,
	Stefan Skoglund <stetson@ebox.tninet.se> wrote:

>Can we agree on one thing ?
>Every time someone uses a package provided by the vendor
>they do so of their own volution ? ie if i need a LALR parser in
>my program i probably picks up aflex ?

I would agree that _withing_ a vendor supplied package at the
specification level often reflects poor planning.  Ordinarily,
one should define the specification required for the problem
space then _with_ the vendor's package in the package body 
(or even in a separately compiled subpgram) to effect the actual
implementation.  This accomplishes several things: 

     1) The interface is independent of the implementation
     2) A different implementation can be used to effect the
        interface,
     3) Vendor dependencies are hidden from users,
     4) With Ada 95, we can take advantage of private child units,
     5) We are more platform-independent.

These are just a few reasons for hiding vendor supplied packages
when possible.  Granted, it is not always possible or even appropriate.

There is even a valid school-of-thought that suggests no
relying directly on standard Ada library packages at the specification
level.  How often does one need all of the resources of Text_IO, or
Direct_IO. Instead, a package such as Direct_IO can be _withed_ in 
the package body to provide primitives necessary for exporting more
powerful abstractions.  Examples,

         procedure Open_With_Lock ( ... );
         procedure Read_With_Lock ( ... );
         procedure Unlock_File   ( ... );

and other routines, all of which can be implemented through the
services of Direct_IO, for ensuring file security in a task based
product.

So all the fuss about _extensions_ is just that, "fuss."  Experienced
Ada software designers have been avoiding such dependencies for a 
long time. 

Richard Riehle
richard@adaworks.com
  




  reply	other threads:[~2000-01-25  0:00 UTC|newest]

Thread overview: 71+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-01-12  0:00 [Fwd: F22 completes 11% of its Flight tests] Rocky
2000-01-12  0:00 ` Marin D. Condic
2000-01-12  0:00   ` jtarver
2000-01-12  0:00     ` Bill Greene
     [not found]       ` <Ft6f4.2216$iy5.114812@typ12.deja.bcandid.com>
2000-01-12  0:00         ` Bill Greene
2000-01-12  0:00           ` jtarver
2000-01-12  0:00             ` Bill Greene
     [not found]               ` <3d8f4.2267$iy5.117569@typ12.deja.bcandid.com>
2000-01-12  0:00                 ` Bill Greene
2000-01-14  0:00                 ` Keith Thompson
2000-01-13  0:00             ` Ted Dennison
2000-01-13  0:00               ` jtarver
2000-01-13  0:00               ` Jeff Carter
     [not found]                 ` <yxof4.2433$iy5.130692@typ12.deja.bcandid.com>
2000-01-14  0:00                   ` Tarjei T. Jensen
2000-01-13  0:00             ` Richard D Riehle
2000-01-12  0:00         ` David Tannen
2000-01-13  0:00           ` Harry Andreas
2000-01-14  0:00         ` Marin D. Condic
2000-01-14  0:00           ` Ed Falis
2000-01-14  0:00             ` Bill Greene
2000-01-15  0:00               ` Keith Willshaw
2000-01-15  0:00                 ` K. Devlin
2000-01-15  0:00                 ` Marin D. Condic
2000-01-15  0:00                   ` Keith Willshaw
2000-01-16  0:00                     ` Gautier
     [not found]                     ` <38821915.B56815F8@maths.unine.ch>
     [not found]                       ` <85t9oa$867$1@ssauraaa-i-1.production.compuserve.com>
2000-01-17  0:00                         ` Gautier
2000-01-17  0:00                           ` Keith Willshaw
     [not found]                   ` <oHcg4.2964$iy5.180009@typ12.deja.bcandid.com>
2000-01-16  0:00                     ` Keith Thompson
2000-01-16  0:00                       ` jtarver
2000-01-16  0:00                         ` Keith Thompson
2000-01-16  0:00                         ` Gautier
2000-01-16  0:00                         ` David Starner
2000-01-17  0:00                         ` Marin D. Condic
2000-01-17  0:00                           ` jtarver
2000-01-17  0:00                             ` Keith Thompson
2000-01-17  0:00                             ` Gautier
2000-01-17  0:00                               ` jtarver
2000-01-17  0:00                                 ` Bill Greene
2000-01-19  0:00                                 ` Robert S. White
2000-01-19  0:00                                   ` Ted Dennison
2000-01-19  0:00                                     ` Robert S. White
2000-01-25  0:00                                       ` Stefan Skoglund
2000-01-25  0:00                                         ` Richard D Riehle [this message]
2000-01-26  0:00                                           ` Mark Lundquist
2000-01-26  0:00                                             ` Samuel T. Harris
2000-01-17  0:00                       ` K. Devlin
2000-01-17  0:00                         ` Chris Douglas
2000-01-18  0:00                           ` P. S. Norby
     [not found]                         ` <QHvg4.3143$iy5.200225@typ12.deja.bcandid.com>
2000-01-17  0:00                           ` David Starner
2000-01-26  0:00                             ` Mark Lundquist
2000-01-17  0:00                           ` Stuart Palin
2000-01-17  0:00                             ` jtarver
2000-01-17  0:00                               ` David Tannen
2000-01-18  0:00                               ` K. Devlin
2000-01-17  0:00                           ` David Gillon
2000-01-18  0:00                           ` K. Devlin
2000-01-18  0:00                             ` Ed Falis
2000-01-18  0:00                               ` Ted Dennison
2000-01-31  0:00                         ` Roga Danar
2000-01-15  0:00               ` Marin D. Condic
2000-01-15  0:00             ` Marin D. Condic
2000-01-15  0:00               ` David Starner
2000-01-15  0:00                 ` Marin D. Condic
2000-01-16  0:00                   ` Keith Willshaw
2000-01-16  0:00                     ` Paul J. Adam
2000-01-16  0:00                       ` John Keeney
2000-01-17  0:00                         ` Paul J. Adam
2000-01-18  0:00                     ` Tarjei T. Jensen
2000-01-18  0:00                       ` Keith WIllshaw
2000-01-25  0:00                         ` Stefan Skoglund
2000-01-14  0:00     ` Marin D. Condic
     [not found] <sBvg4.3142$iy5.199834@typ12.deja.bcandid.com>
2000-01-17  0:00 ` tmoran
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox