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: goops/guile doc (was Re: Simple example program to illustrate Goops)


Gregg Reynolds writes:

   Neil Jerram wrote:
   > 
   > Does this help you at all?
   > 

   Helps me for one, but I'm afraid if I showed it to the pythonites at the
   office it would only reinforce their Fear of Scheme.

Please don't take my personal style as definitive!  I'm sure there are
many other ways that this could have been written.

   One of the things Python has going for it is that the OO parts _look_
   like OO parts - you can visually pick out, at a glance, the OO
   structure.  (Assuming that for 90% of the tech world C++ and/or VB
   defines OOness.)

I can't be sure that I'm answering your precise point here, since I
don't know what Python OO looks like, but coming from C++/Java to
CLOS/GOOPS has forced me to rethink a lot of OO concepts, and I now
think that a lot of the imposed structure in C++ and Java is nothing
to do with OO.

Placing methods inside classes, for example, is to do with the
syntactic sugar of the implicit self argument, and preferring one of
the arguments over the others, which, in general, is wrong.  This
leads to programmers having to invent the double dispatch mechanism
and worrying which class should contain the code for an algorithm that
maps an Image object onto a Surface object.

I now think that generic functions are a better solution.

It's interesting that there's a lot of C++ interest now in implicit
interfaces and functions with template arguments.  To me, such
functions seem closer in spirit to generic functions than to
traditional C++ methods.

Regards,

        Neil

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