Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!cbfsb!cbnewsc!cbnewsc!lgm From: lgm@cbnewsc.ATT.COM (lawrence.g.mayka) Newsgroups: comp.lang.clos Subject: Re: CLOS Private Methods Message-ID: Date: 26 Jun 91 01:11:33 GMT References: <20905@sdcc6.ucsd.edu> <1991Jun24.040141.27435@Think.COM> Sender: lgm@cbnewsc.cb.att.com (lawrence.g.mayka) Followup-To: comp.lang.clos Organization: AT&T Bell Laboratories Lines: 22 In-Reply-To: barmar@think.com's message of 24 Jun 91 04: 01:41 GMT In article <1991Jun24.040141.27435@Think.COM> barmar@think.com (Barry Margolin) writes: In general, CLOS doesn't try to implement any information hiding. SLOT-VALUE, WITH-SLOTS, and WITH-ACCESSORS can be used anywhere (even in ordinary functions rather than methods). As with the rest of Common Lisp, the onus is on the programmer to establish and follow programming conventions, rather than having them be enforced by the language. The Common Lisp package system can be used for namespace partitioning (but is essentially orthogonal to CLOS). Symbols - including class names, generic function names, and slot names - typically belong to a particular package, and cannot be referenced outside that package except through explicit programmer action such as importation or use of a package prefix. Typically, however, Common Lisp programmers define packages rather sparingly - for example, MY-APPLICATION and MY-APPLICATION-INTERNALS rather than a package for every class. Lawrence G. Mayka AT&T Bell Laboratories lgm@iexist.att.com Standard disclaimer.