[comp.sw.components] ada vaporware

ted@nmsu.edu (Ted Dunning) (05/07/89)

[ the following started as simple grumbling, but blossomed into full
  scale ada-hype bashing.  take it as you well; my asbestos suit is on ]

Software components aren't be a bad idea.  Unfortunately the people
pushing them seem to smugly assume that there is some logical
equivalence between ada and software components.  They even seem to
think that ada is a reasonable way to implement software components.

These people are certainly correct that it will take every known
technique known to the software industry (not just componentry), to
make ada programs reliable.  The are incorrect when they assert that
ada is a good (or even reasonable) tool for writing and maintaining
software in general, and large systems in particular.

The particular problem is only a single aspect of the basic problem
with the ada movement which is that the impetus is being provided by
people who are technically incompetent in the field.

I have annotated the parts of a previous posting with comments about
this pervasive problem:

In article <5419@hubcap.clemson.edu> billwolf%hazel.cs.clemson.edu (William Thomas Wolfe,2847,) writes:

   From: billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe,2847,)
   Newsgroups: comp.sw.components
   Date: 6 May 89 18:15:09 GMT
   References: <6718@medusa.cs.purdue.edu>


	REUSEABILITY LIBRARY FRAMEWORK (RLF)

	  o The Reuseability Library Framework is a set of building
	    blocks and tools for building, maintaining, and accessing
	    knowledge-based libraries of Ada software components.

what is a knowledge-based library other than a buzz-word?  the madison
avenue implication here is that the library actually understands what
it contains and will help you find what you need.  _right_

	  o The base set of tools supports the creation and maintenance
	    of "intelligent software librarians": repositories of reuseable
	    Ada components organized around particular application
	    domains.

of course it doesn't support this at all, since no such "intelligent
software librarians" (quote marks are apt here aren't they) exist to
be maintained, and noone currently knows how to create them.

		...

	  o Library tools access this embedded knowledge to provide
	    active "intelligent" guidance to users in focused search
	    and retrieval of library components.

funny how suddenly the ada community has acheived what ai has failed
to do for years.  or are we really just talking about doing key-word
or full text search of abstracts describing each package.

	  o Testing and qualification of candidate components for 
	    inclusion into the reuse library are performed prior to
	    cataloging the component in the library.

is this policy or mechanism?  is the testing done to the standards
used in magellan (latest catastrophic bug found less than two weeks
ago), or the hubble space telescope?


			  Qualifying Librarian
			     /       \   \   \
			    /         \   \   \
		       Test Plan      Librarian Systems
		       Assistant           / 
			    \             /
			     \           /
			 Hybrid Knowledge Representation Systems
			     /           \
			    /             \
			AdaKNET          AdaTAU
			Semantic         Rule-Based
			Network          System

the implication that the qualifying librarian and the test plan
assistant are automated.  this is bullshit.

the bottom three items are intrinsicly vapor even if there is code
that is claimed to do this.


	ADA COMMAND ENVIRONMENT (ACE)

	   o The Ada Command Environment is an interactive,
	     object-oriented command language environment for
	     Ada software development.

do i hear another buzz word (or 10)?

	   o Ada is both the programming language and the        
	     command language used within ACE.  The paradigm
	     and philosophy used by the Ada programmer for
	     program development are extended into the environment
	     in which program development takes place.

does this imply quantum leaps in the technology of type inferencing?
or is this as problematical as debuggers like dbx?

	   o ACE is modeled after the interactive programming 
	     environments known for individual programmer productivity.

this can't mean lisp machines.  ace is obviously modeled on ada, which
is antithetical to the freewheeling development model of programming
which is at the heart of the classical lisp machine.

		...

	   o ACE has been implemented on Sun Workstations (R) running
	     the Unix (R) operating system.  ACE has also been ported
	     to the Unisys PC/IT running the MS-DOS (R) operating system.

i hear a past tense here.  this implies that much of the foregoing
hype that i found so objectionably overblown is just that and that ace
is basically turbo-ada.  why can't they just say this?

		...
	[ continuation of electronic glossy brochure ]