Guile Mailing List Archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: records




> > but my understanding is that all of the existing record proposals can
> > basically be implemented on top of GOOPS in one way or another
> 
> As I understand the issue guile has a record implementation called
> "struct" and GOOPS is build on top of structs, no?

Yes, but structs will be going away, and GOOPS replanted.

> > Abelson and Sussman argue that object systems are misconceived to
> > begin with.  (There's a long footnote in SICP about this; I can't
> > remember where it is, exactly.)  Their argument is essentially that
> > nobody has figured out a decent way to describe operations on more
> > than one type.  Or something like that.  CLOS at least attempts to
> > address this issue, by letting you specialize a generic function on the
> > types of more than one of its arguments.  But Java, C++, etc. just
> > totally punt the issue.
> 
> I think this is the old "genericity vs. inheritance" problem.
> Bertrand Meyer showed that it is possible to emulate genericity on a
> system that supports inheritance but it is not possible to emulate
> inheritance on a system that only supports generic types/behaviour.

I have a whole series of stupid questions to ask (for example, why do
you say CLOS does not support inheritance?), but instead I'll just say
that A&S don't like CLOS, either.  Their position is that all existing
languages present insufficient solutions to the problem.

I'm in California right now, or else I would find the footnote and
type it in.

Guile Home | Main Index | Thread Index