[comp.lang.misc] What does ADT mean?

jba@harald.ruc.dk (Jan B. Andersen) (08/11/89)

Sorry for sleeping in class, could someone please tell me what
ADT means?

billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe,2847,) (08/12/89)

From article <86@harald.UUCP>, by jba@harald.ruc.dk (Jan B. Andersen):
> Sorry for sleeping in class, could someone please tell me what
> ADT means?

    From _Data Structures and Algorithms_ (Aho, Hopcroft, & Ullman):

       We can think of an _abstract data type_ (ADT) as a
       mathematical model with a collection of operations
       defined on that model... ADTs are generalizations 
       of primitive data types (integer, real, and so on),
       just as procedures are generalizations of primitive
       operations (+, -, and so on).  The ADT encapsulates
       a data type in the sense that the definition of the
       type and all operations of that type can be localized
       to one section of the program.  If we wish to change
       the implementation of an ADT, we know where to look,
       and by revising one small section we can be sure that
       there is no subtlety elsewhere in the program that 
       will cause errors concerning this data type.  Moreover, 
       outside the section in which the ADT's operations are
       defined, we can treat the ADT as a primitive type; we
       have no concern with the underlying implementation.

   See also _Software Components with Ada_ (Booch)...


   Bill Wolfe, wtwolfe@hubcap.clemson.edu