[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: son of occam
- To: Ian East <ian.east@xxxxxxxxxxxx>
- Subject: Re: son of occam
- From: Ruth Ivimey-Cook <ruth@xxxxxxxxxx>
- Date: Sun, 02 Aug 2009 20:23:32 +0100
- Cc: Larry Dickson <tjoccam@xxxxxxxxxxx>, eric.verhulst@xxxxxxxxxxxxxxxxxxxxxx, Chris.C.Jones@xxxxxxxxxxxxxx, A.T.Sampson@xxxxxxxxxx, java-threads@xxxxxxxxxx, lewando@xxxxxxxxxxxxx, occam-com@xxxxxxxxxx, "'P.H.Welch'" <P.H.Welch@xxxxxxxxxx>, Ruth.Ivimey-Cook@xxxxxxxxxx
- Delivery-date: Sun, 02 Aug 2009 20:24:04 +0100
- Envelope-to: ats@xxxxxxxxxxxxxxxx
- In-reply-to: <7C323BE7-73C7-40F8-982B-390DB3AB5D61@xxxxxxxxxxxx>
- List-help: <mailto:sympa@kent.ac.uk?subject=help>
- List-id: <occam-com.kent.ac.uk>
- List-owner: <mailto:occam-com-request@kent.ac.uk>
- List-post: <mailto:occam-com@kent.ac.uk>
- List-subscribe: <mailto:sympa@kent.ac.uk?subject=subscribe%20occam-com>
- List-unsubscribe: <mailto:sympa@kent.ac.uk?subject=unsubscribe%20occam-com>
- References: <E1M4RKJ-0001Ez-QN@xxxxxxxxxxxxxxxx> <DDD23A06E47F444E8764470821961D8E@ericdell1720> <EB6C8794-E7E2-456A-8EBD-B3AB49E8FAAF@xxxxxxxxxxx> <7C323BE7-73C7-40F8-982B-390DB3AB5D61@xxxxxxxxxxxx>
- Sender: Mailing_List_Robot <sympa@xxxxxxxxxx>
- User-agent: Thunderbird 2.0.0.22 (Windows/20090605)
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
>
>
>
>