This is the mail archive of the guile@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: OOP and Relationship to the Guile Module System



> It struck me that it is much like an object
> system.


In general modules represent the /physical/ structure and classes
represent the /logical/ view of a system.  We shouldn't mix these two
concepts.

When you start developing a new system the first thing you do is to
identify the entities that are important to your system and you figure
out how they are related. (ER-model / Object-model)

After the model is completed and you have specified all the classes, you can
start writing code. But where can you put the code? In the real world you
grab a pencil, write down sentences on sheets of paper, stitch them together 
and hand them over to your boss.

Like a sheet of paper a module is just a collection of symbols
(features) with an interface that specifies which features are
available to the public.


> (define define-generic-method

Umm.. What guile needs is _inheritance_ (polymorphism). It is not possible
to emulate polymorphism by using generic methods.


Jost

@Book{Meyer97,
  author =       "B. Meyer",
  title =    "Object-Oriented Software Construction",
  year =         "1997",
  publisher =    "Prentice Hall",
  keywords =     "Eiffel,OOSC",
  address =      "New Jersey",
  ISBN =         "0-13-629155-4",
  edition =      2
}