Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 6/24/83 (MC830713); site luth.UUCP
Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!panda!talcott!harvard!seismo!mcvax!enea!luth!dick
From: dick@luth.UUCP (Dick O Schefstr|m)
Newsgroups: net.lang.st80,net.lang.ada,net.lang.mod2
Subject: Re: Definition of Buzzwords: "Object-Oriented"
Message-ID: <238@luth.UUCP>
Date: Mon, 11-Feb-85 04:52:24 EST
Article-I.D.: luth.238
Posted: Mon Feb 11 04:52:24 1985
Date-Received: Thu, 14-Feb-85 01:46:57 EST
References: <4288@ucbvax.ARPA> <366@cavell.UUCP> <769@loral.UUCP> <247@cheviot.UUCP> <271@usl.UUCP>
Reply-To: dick@luth.UUCP (Dick O Schefstr|m)
Organization: Univ. of Lule}, Sweden
Lines: 25
Xref: watmath net.lang.st80:193 net.lang.ada:181 net.lang.mod2:163
Summary: 


  The not too fruitful discussion of whether Ada or Modula-2 is more 
"object-oriented" seems to turn into a discussion of implementation
of "private" or "opaque" types. 

  Maybe typical to Ada, it provides
several ways of doing things: the Modula-2 style of private types
is in Ada achieved by in the private part declaring an "access" type,
allowing us to defer the layout of the structure pointed to until
writing the implementation part. This give us a higher degree of
independency between specification and implementation parts, but it
also means that we cannot give default initializations to private
types and an initialization routine must be explicitly called.
  If you create a lot of temporary used objects of this private type,
using the "pointer style", you might have to start thinking about
reuse of space and garbage collection. To statically allocate objects
has drawbacks, but their space is easily and automatically reclaimed 
when no longer used by the simple procedure call-stack mechanism. 

Dick Schefstrom, 
Computer Science Department
University of Lulea
S-951 87 Lulea
Sweden