Last Comments

Emily Bache (Coke machine proj…): It seems very agile to me…
William Pietri (Coke machine proj…): Interesting! I’m not clea…
Amber Shah (WeVouchFor): What a great idea, I only…
William Pietri (Looking for consc…): Interesting question! I…
Keith Braithwaite… (WeVouchFor): Zombie project or zombie …
halmac3 (Quality, Safari a…): People treat “quality” as…

Archives

01 Oct - 31 Oct 2009
01 Jun - 30 Jun 2009
01 May - 31 May 2009
01 Nov - 30 Nov 2007
01 Oct - 31 Oct 2007
01 Jul - 31 Jul 2007
01 Jun - 30 Jun 2007
01 May - 31 May 2007
01 Mar - 31 Mar 2007
01 Jan - 31 Jan 2007
01 Oct - 31 Oct 2006
01 Feb - 28 Feb 2006
01 Nov - 30 Nov 2005
01 Sep - 30 Sep 2005
01 Aug - 31 Aug 2005
01 Jul - 31 Jul 2005
01 Jun - 30 Jun 2005
01 May - 31 May 2005
01 Mar - 31 Mar 2005
01 Feb - 28 Feb 2005
01 Jan - 31 Jan 2005
01 Dec - 31 Dec 2004
01 Nov - 30 Nov 2004
01 Oct - 31 Oct 2004
01 Sep - 30 Sep 2004
01 Aug - 31 Aug 2004
01 Jul - 31 Jul 2004
01 Jun - 30 Jun 2004
01 May - 31 May 2004
01 Apr - 30 Apr 2004
01 Mar - 31 Mar 2004
01 Feb - 29 Feb 2004
01 Jan - 31 Jan 2004
01 Dec - 31 Dec 2003
01 Nov - 30 Nov 2003
01 Oct - 31 Oct 2003
01 Sep - 30 Sep 2003
01 Aug - 31 Aug 2003
01 Jul - 31 Jul 2003
01 Jun - 30 Jun 2003
01 May - 31 May 2003
01 Apr - 30 Apr 2003
01 Mar - 31 Mar 2003
01 Feb - 28 Feb 2003
01 Jan - 31 Jan 2003

Pivot Homepage
Pivot Forums
Pivotstyles
Pivot Help

To change the links in this list, edit the file '_aux_link_list.html' in your Pivot's templates folder. You can do this by directly editing the file, or you can go to Administration » Templates in the Pivot interface.

Miscellany

Powered by Pivot - 1.40.6: 'Dreadwind' 
XML: RSS Feed 
XML: Atom Feed 

« Domino methodology | Home | Models shmodels »

Of types and classes

Jim writes: "I haven't seen a discussion of "type" in the OO stuff that involves any single meaning for the word."

Mostly an OO language, any OO language, is an embodiment of somebody's preconceptions about "typing" in the broad sense - how "things" in the world are to be "classified". It's taken me years of having my brain beaten upon by postmodern texts, but I've finally grokked that there simply cannot be One Right Way of classifying things. So there cannot be a single meaning for the word "type".

In Java, the preconceptions that rule are that the labeling of types has more importance than the types themselves - that's the strong typing preconception. Hence interfaces. They are a way of saying, formally, "This is a set of methods that belong together" and "This class implements this predefined set of methods".

By contrast, in Smalltalk you don't spend much time predefining and looking up labels of types, making sure that a class belongs to a particular type, and so on. In Smalltalk "type" just means having certain expectations of classes that take part in some behaviour.

I remember that interfaces made a big impression on me when I started learning Java, presumably because of previous exposure to Eiffel. Now that I have also learned Smalltalk they're less of a big deal.

Between Java and Smalltalk I got exposed to LambdaMOO, which has some of the characteristics of Self : "class" isn't a concept at all in there, there is only "object". The notion of "type" there is closer to biology's - it's all about who's descended from whom.

one comment:

True enough, but . . .

For purposes of a given discussion it’s often necessary to agree on a particular use of a particular term. Classication schemes abound. Approaches to classifications schemes abound. In the context of building software to address a particular problem, or even a group of potential problems, it’s useful to agree on a definition of something like “type” if only a definition good enough for the conversation at hand.

The point isn’t the definition, but agreeing on a common one. The two critical skills here are the ability to recognize when an apparant disagreement in content is actually a lack of agreement about the working definition for a term, and to work with a definition that is “precise enough” for the conversation at hand.
James Bullock () - 06 09 03 - 03:48


No trackbacks:

Trackback link:

Please enable javascript to generate a trackback url


  
Remember personal info?

Emoticons / Textile

Comment moderation is enabled on this site. This means that your comment will not be visible on this site until it has been approved by an editor.

To prevent automated commentspam we require you to answer this silly question
 

  (Register your username / Log in)

Notify:
Hide email:

Small print: All html tags except <b> and <i> will be removed from your comment. You can make links by just typing the url or mail-address.