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

Re: SICP & the Dumbing Down of American Comp Sci



There's a good article on JavaWorld from a few months back regarding what
Objects are. One of its conclusions is that Objects are collections of
capabilities.

http://www.javaworld.com/javaworld/jw-07-1999/jw-07-toolbox.html

Whilst this might at first seem to go against the Dylan/CLOS data-object model,
stepping back it is clear that it is actually in-keeping with the Generic
Function approach of concentrating on (to mis-quote Andreas) the domain of
capabilities of a Generic Function, rather than hacking structs.

- Rob.

Andreas Bogk wrote:

> Basically design for those languages should focus on what your objects
> (in the sense of aggregated state) are and what you want to do with
> them (which gives generic functions). So instead of focusing on the
> objects and just treating the methods of that object as a detail of
> that object, you treat generic functions as entities in their own
> right.
>
> This doesn't contradict abstraction. In objects, the abstraction is
> represented through inheritance (so if I look at the state of an
> object, I'm ignoring the bits of that state which are not interesting
> to me by looking at the right level in the inheritance tree), in
> generic functions, it is represented by the domains of the methods of
> that function.




References: