Path: news.cambrium.nl!textnews.cambrium.nl!feeder1.cambriumusenet.nl!feed.tweaknews.nl!83.128.0.11.MISMATCH!news-out1.kabelfoon.nl!newsfeed.kabelfoon.nl!xindi.nntp.kabelfoon.nl!198.186.194.249.MISMATCH!transit3.readnews.com!news-out.readnews.com!news-xxxfer.readnews.com!postnews.google.com!h11g2000yqb.googlegroups.com!not-for-mail
From: Nilone <reaanb@gmail.com>
Newsgroups: comp.databases.theory
Subject: Re: Entity and Identity
Date: Sat, 25 Jul 2009 01:34:46 -0700 (PDT)
Organization: http://groups.google.com
Lines: 27
Message-ID: <337afd4f-e651-4060-a84b-58c0e904f3f5@h11g2000yqb.googlegroups.com>
References: <Mn09m.190$646.6@nwrddc01.gnilink.net> <vnI9m.783$MA3.515@nwrddc02.gnilink.net> 
 <rVI9m.37735$PH1.1555@edtnps82> <b9539af3-947e-4255-9b05-5f21e7e3d887@k1g2000yqf.googlegroups.com> 
 <4a6a3350$0$18265$703f8584@news.kpn.nl>
NNTP-Posting-Host: 196.210.206.132
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1248510886 27105 127.0.0.1 (25 Jul 2009 08:34:46 GMT)
X-Complaints-To: groups-abuse@google.com
NNTP-Posting-Date: Sat, 25 Jul 2009 08:34:46 +0000 (UTC)
Complaints-To: groups-abuse@google.com
Injection-Info: h11g2000yqb.googlegroups.com; posting-host=196.210.206.132; 
 posting-account=jTAZ8QoAAABcV-JPHVPbQ2F6pRtag3Iu
User-Agent: G2/1.0
X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.1) 
 Gecko/20090715 Firefox/3.5.1 (.NET CLR 3.5.30729),gzip(gfe),gzip(gfe)
Xref:  news.cambrium.nl

On Jul 25, 12:18=A0am, rp@raampje.(none) (Reinier Post) wrote:
> Nilone wrote:
> >[...] =A0OO always needs another paradigm to ride,
> >since it isn't a model of computation but a broken type system mixed
> >with a module system. =A0[...]
>
> You mean abstract data types?

What I said there is confused and inaccurate.  State machines
obviously are a model of computation.

OO classes are used to create data types, since encapsulation,
constructors and attributes are necessary features to create data
types.  However, it fails as a type system since it allows subtypes to
be defined that breaks the original type.  It also allows for the
creation of reference types, which is an oxymoron.

>
> OO adds inheritance; is that where it breaks?
> (BTW I agree with your criticism of inheritance.)

Implementation inheritance copies executable code across the interface
of the class and invites programmers to assume more than promised by
the interface.

My rant was against OO classes when used as a type system, although my
sloppy use of the term OO made it seem like more.
