This is the mail archive of the guile@sourceware.cygnus.com mailing list for the Guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Some questions about GOOPS and CLOS in general


Jost Boekemeier <jostobfe@calvados.zrz.TU-Berlin.DE> writes:

> However, what I don't understand:  
> 
> 1. You say that modules and a type system are two orthogonal concepts.
> 2. You say that the module handles encapsulation on behalf of the class' objects.
> 3. You say that a module can contain more than one class.
> 
> Sorry, but these statements can't go together.

> Could you please explain that?  Please note that a module is not a package
> and that modules from the same package can access protected entities.
> I really think you confuse modules with the package concept.

Replace 'module' with 'package', then. The point, that there is no
reason at all for a class to handle its datahiding, stays.

> Okay then.  Consider a person who wants to write a package and
> writes classes A and B which both have the feature (translation: the
> "slot") "pedal" and the person wants to publish their interface.  Do
> you want to force the person to use two differend modules just
> because you use the strange concept that a module handles
> encasulation on behalf of classes?

You bring up a system with an error in OO design - unrelated classes
with the same slot should not be in the same package anyway.

> > Let's see. Class (by definition) is set of values. Type (by
> > definition) is set of values
> 
> Ups!  A type is a set of values?

integer = {0, 1, -1, 2, -2, 3, -3, ...}
string = {"", "\000", ...}

If I have to explain this, ohwell.

> (m1 format) -> 17
> (m2 format) -> "17"
> (m3 format) -> 17.0
> etc...

Now please reread my post and supply that conveniently omitted etc
part. The whole point was formatting things using different format
strategies (which aren't known in advance). Replace 'format' with
'encode' if that is easier to understand.

> The above syntax is at least as strange as the lambda with more
> than one entry.

I'm really tired of this. *plonk*

-- 
How to eff the ineffable?

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]