comp.lang.ada
 help / color / mirror / Atom feed
From: jls@netcom.COM (Jim Showalter)
Subject: Re: c++ vs ada results
Date: 25 Jun 91 19:27:16 GMT	[thread overview]
Message-ID: <1991Jun25.192716.10931@netcom.COM> (raw)
In-Reply-To: 3776@sirius.ucs.adelaide.edu.au

Some years ago, Grady Booch wrote a library of 501 reusable components in
Ada (and documented it in his second book, "Software Components with Ada:
Structures, Tools, and Subsystems", Benjamin-Cummings). It didn't take him all
that long to do, and they are widely used in industry. They work SO well,
in fact, that a C++ version is in the works (it may already be available
by now...how quickly one loses touch). I can answer some of the questions
you ask, at least for this particular Ada library:

>1. What trade-offs are you taking (space/time) ?

Booch finessed this by writing different flavors of his components for
different combinations of space/time tradeoffs. Thus, you have both
bounded (typically array) and unbounded (typically linked list) versions
of the components. Incidentally, Booch says (and I agree) that this was
an area where inheritance would have played a legitimate role, if Ada
had inheritance.

>2. Which kind of error-handling mechanism are you taking ?

Exceptions.

>3. Which features do you include in your code library ?

Unclear what this question is asking.

>4. Which "class" is in charge in a complex UI-application ?

N/A

>5. How do you avoid redundant code in your library ?

By building higher level abstractions up from lower level abstractions.

>6. How do you achieve localized cost (you only pay for what you use) ?

If buy "pay" you mean money (as in dollars), this is N/A, since there
is a single cost for the entire library. If by "pay" you mean the cost
of compiling in the code, this just exploits the Ada compilation rules,
in which only those units in the DAG of compilation dependencies (via
'with'ing) are included in the resulting executable.

>7. How do you avoid complexity ?

By running as fast as possible in the other direction. :-)
I'm not sure what you're asking here. Do you mean complexity within
the implementation, complexity from the standpoint of the library
client, or what? From the library client standpoint, the Booch
components are very easy to use.

>8. How do you structure the library documentation ?

Well, Booch chose to write a book. This seems to have worked out
quite well, since the book is so detailed that it answers almost
any question anybody would ever care to ask about how to use
the components. (It is also suitable for use as a text on data
structures.)
-- 
*** LIMITLESS SOFTWARE, Inc: Jim Showalter, jls@netcom.com, (408) 243-0630 ****
*Proven solutions to software problems. Consulting and training on all aspects*
*of software development. Management/process/methodology. Architecture/design/*
*reuse. Quality/productivity. Risk reduction. EFFECTIVE OO usage. Ada/C++.    *

  parent reply	other threads:[~1991-06-25 19:27 UTC|newest]

Thread overview: 83+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1991-06-12 16:47 c++ vs ada results alan dare
1991-06-12 19:15 ` Paul Martz
1991-06-12 20:17 ` Jim Showalter
1991-06-13 20:49   ` Paul Kohlmiller
1991-06-13 23:12     ` Bruce Jones
1991-06-14 17:56   ` GNU c++ bashing (was Re: c++ vs ada results) Eli Brandt
1991-06-16  2:48   ` c++ vs ada results Russ Nelson
1991-06-16  4:10   ` Sean Eric Fagan
1991-06-18  4:17     ` Jim Showalter
1991-06-18  8:33       ` Sean Eric Fagan
1991-06-18 21:53         ` Jim Showalter
1991-06-18 12:28       ` Mats Henricson
1991-06-18 22:06         ` Jim Showalter
1991-06-19 15:07           ` Dan Weinreb
1991-06-19 17:00           ` Doug Smith
1991-06-20 14:08             ` Steve Juneau
1991-06-20 19:56               ` Robert I. Eachus
1991-06-21 17:27                 ` David M Geary
1991-06-20 22:09               ` Paul Stachour
1991-06-21 17:03                 ` David M Geary
1991-06-23  3:14                   ` Jim Showalter
1991-06-26 22:13                 ` Dan Weinreb
1991-06-21 22:01               ` Jim Showalter
1991-06-20 14:35             ` chief programmer team organizations was (c++ vs ada results) Alex Blakemore
1991-06-21 12:40               ` chief programmer team organizations was (c++ vs ada results)H house ron
1991-06-21 15:47                 ` chief programmer team organizations Joseph Beckenbach {Adapter Software Release Engr}
1991-06-21 22:25                 ` chief programmer team organizations was (c++ vs ada results)H Jim Showalter
1991-06-26 22:18                   ` Dan Weinreb
1991-06-21 22:04               ` chief programmer team organizations was (c++ vs ada results) Lars P. Fischer
1991-06-23  3:17                 ` Jim Showalter
1991-06-24 13:23                 ` Jim Hargrove
1991-06-21 22:21               ` Jim Showalter
1991-06-22  2:14               ` John Nagle
1991-06-23  3:23                 ` Jim Showalter
1991-06-23 13:21                   ` David Feustel
1991-06-23 18:54                     ` Jim Showalter
1991-06-27 15:30                     ` Dan Weinreb
1991-06-24  4:00                   ` Marco S Hyman
1991-06-24 20:23                     ` Stanley Friesen
1991-06-26  0:37                       ` Jim Showalter
1991-06-24 20:29                     ` Jim Showalter
1991-06-24 18:29                   ` John Nagle
1991-06-25 18:38                     ` Jim Showalter
1991-06-25 19:30                       ` Christopher Warack
1991-06-25 20:06                     ` chief programmer team organizations John Baldwin
1991-06-24  9:36                 ` chief programmer team organizations was (c++ vs ada results) George C. Harrison, Norfolk State University
1991-06-25 13:42                   ` Harry Erwin
1991-06-26 16:15                 ` Bob Martin
1991-06-19 18:36           ` c++ vs ada results Jim Showalter
1991-06-19 15:01         ` Dan Weinreb
1991-06-24  2:29         ` Andrew Dunstan
1991-06-24 10:06           ` David Emery
1991-06-24 13:16           ` Mats Henricson
1991-06-25  4:29           ` Tom McClory
1991-06-26  0:35             ` Jim Showalter
1991-06-26  1:26             ` Andrew Dunstan
1991-06-26 22:47               ` Jim Showalter
1991-06-27 15:47                 ` Alex Blakemore
1991-06-27 23:58                   ` Jim Showalter
1991-06-25 19:27           ` Jim Showalter [this message]
1991-06-23 23:59       ` CBW Consulting
1991-06-24 20:11         ` Jim Showalter
1991-06-12 21:27 ` Dan L. Pierson
  -- strict thread matches above, loose matches on Subject: below --
1991-06-20 16:24 Chuck Shotton
1991-06-22  3:24 ` Thomas M. Breuel
     [not found] <164741@<1991Jun12>
1991-06-20 17:58 ` ryer
1991-06-24 14:44 ` ryer
1991-06-27 12:34 Chuck Shotton
1991-06-27 18:24 Ray Diederich, 301-294-8400
1991-07-01  5:15 Andrew Dunstan
1991-08-13 14:29 cis.ohio-state.edu!zaphod.mps.ohio-state.edu!qt.cs.utexas.edu!cs.utexas.e
1991-08-13 22:08 David Emery
1991-08-14  5:03 Mike Feldman
1991-08-14 14:41 Fred Stluka
1991-08-14 18:25 Doug Smith
1991-08-14 18:40 cis.ohio-state.edu!zaphod.mps.ohio-state.edu!swrinde!cs.utexas.edu!utgpu!
1991-08-14 19:15 Doug Smith
1991-08-14 20:15 Jim Showalter
1991-08-15 13:30 Paul Baker - CTA
1991-08-15 15:40 Andy Davidson
1991-08-16 17:56 Doug Smith
1991-08-29 16:54 David Emery
1991-08-30  7:24 Ma ts Henricson
replies disabled

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