COPL, the Tandem, PLITS and JAVA (WAS Re: Eppur si sugat)

Chris Pressey cpressey@REDACTED
Wed May 28 22:02:16 CEST 2003


On 28 May 2003 11:44:36 -0500
martin j logan <martin@REDACTED> wrote:

> "Why OO is less than sufficient for concurrent and fault tolerant
> systems." The above title is not too interesting. "Why OO sucks" or
> "Why OO is the worst thing since reality television" on the other hand
> are titles that grabs peoples attention. A loaded, provocative

(glamourous :)

> title will entice people to read an article. 

And to write rebuttals, naturally.

> Please forgive me if I am being presumptuous but I think Joe's main
> point is that much of OO doctrine, philosophy and current
> implementations render the paradigm quite unsuitable for concurrent,
> fault tolerant systems. No one will argue that OO techniques are
> useless for say, a GUI, etc. The point is that if you are interested
> in programming for the niche that Erlang currently occupies then OO
> inherently sucks for your purposes and you should embrace the
> doctrines described by "COPL", its forefathers, and influences. 

Does it *inherently* suck, even for COPL?

Smalltalk-style OO *is* "communicating black boxes" AFAICT.

Once (on another mailing list far far away) I proposed that one of the
properties of objects was that they were chronologically independent
(i.e. - since they isolated state from one another, they could well be
concurrent.)  Naturally, most people on that list thought that was
ridiculous, since they don't do that in Java or C++, so it's "not OO".

I think the reason this is even an issue in the first place is because
several months ago some brave Erlang newbie came on this list and
informed us that records suck.  I took exception to that, too, and tried
to explain how records don't always suck - but eventually settled with
the idea that, in order for a replacement for records to not suck as
badly, some research would have to be done into what means of
aggregating data & code have succeeded in not sucking.  i.e. to look
into fields like OO and take what works and leave behind what doesn't.

But if the anti-OO sentiment in Erlang becomes fundamental, there's no
point - anything from OO would be rejected on the grounds that OO
inherently sucks for COPL - and the best I could hope for would be that
all the relevant OO techniques would be adopted individually and renamed
so that we could blissfully pretend that they had nothing to do with OO.
Thus confusing newbies all the more.

> My couple of pennies,
> Martin

-Chris



More information about the erlang-questions mailing list