From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.5-pre1 Date: 28 Jan 93 08:07:43 GMT From: paster@dna.lth.se (Christian S. Collberg) Subject: Re: private types and recompilation Message-ID: <1993Jan28.080743.29006@lth.se> List-Id: In article <9301271722.aa25516@Paris.ics.uci.edu> kanderso@mabillon.ICS.UCI.EDU (Kenneth Anderson) writes: >In comp.lang.ada you write: > >>When Ada 83 was designed, why did the designers choose to put >>the details of private types in package specifications, rather than >>in package bodies (which is more in the spirit of information hiding, and >>better supports independent compilation). > >I'm not sure, but I think because the compiler needs to know the size ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ >of the types so that it can allocate space for parameters in the ^^^^^^^^^^^^^ >subprograms that are defined in the spec. > > Yes, this is correct. See my thesis "Flexible Encapsulation" (Yes, this is a blatant plug :-)) for a description of an Ada-like language (Zuse) which -- through the use of novel translation techniques -- allows private parts of hidden types to be hidden within package bodies. Christian -- Christian.Collberg@dna.lth.se Department of Computer Science, Lund University, BOX 118, S-221 00 LUND, Sweden