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

Re: son of occam

Ian East wrote:
> Second, I don't see why OO has to be unclean or 'un-simple'.  Surely, it's the interpretation of OO, in Java and C++, that's the problem.  However, I would certainly agree that inheritance is also a problem, as it lacks a simple and coherent semantics.
> IMHO, we need /both/ process and object abstraction.  They can
> co-exist within a simple model, where every object has a single owner
> at any time.  Object and value can pass between processes.  (Besides,
> do you really want to live without defining lists, stacks, queues,
> trees /etc./?)

I fully agree. While processes are a powerful structuring concept, I
don't believe they are the only valid one.

Compare with sequential languages: would C be better off without struct?
would lisp be better off without lambda-functions? Of course not.

I know some people equate "OO" with self-determining objects, but in C#
for example there is a language distinction between reference-objects
and value-objects; the latter are implementations of new value-types,
which occam has long needed (DATA TYPE is a very poor relation) and the
former are intended to be long-lived "objects" that maintain state and
"do stuff".

While I do agree that much of the C# reference-object usage can be
implemented using processes, I also think that if you are hoping the
language will be widely taken up, then you will implement reference
objects (nicely) too: it will be easier for people to migrate to a new
language if the learning curve is not too high.

> The longer I have tinkered with Honeysuckle
> <http://www.honeysucklePL.info>, the more I am convinced that service
> protocol is the right way to raise the level of abstraction from a
> simple channel.  It is natural and intuitive, and is applicable to
> everything from flip-flop and gate to distributed (client-server)
> computing.  It also extends the formal foundation, bringing guaranteed
> /a priori/ deadlock freedom (via static verification which can built
> into the compiler – no need to hire mathematicians to prove anything).
> A compiler is under development (progressing well) that targets CSP
> initially.
> Ian
> Dr. Ian East
> 57, Kidlington Road, Islip, Oxfordshire OX5 2SS
> ian.east@xxxxxxxxxxxx <mailto:ian.east@xxxxxxxxxxxx>
> (+44) 0 1865 373268