[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Coroutines and Go
- From: Jim Whitehead II <jnwhiteh@...>
- Date: Thu, 12 Nov 2009 16:58:47 +0000
On Thu, Nov 12, 2009 at 4:55 PM, David Given <dg@cowlark.com> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Jim Whitehead II wrote:
> [...]
>> The PAR keyword doesn't in any way approximate 'OCCAM-like'
>> concurrency. Concurrency in occam is built around communication
>> between distinct processes through explicit communication channels.
>> Yes, the SEQ keyword is covered by the sequential nature of Algol-68,
>> and the PAR keywords are roughly the same.. but that only begins to
>> graze the surface of what OCCAM-like concurrency actually is.
>
> Indeed, you're quite right. I did meant to mention channels, honest, but
> forgot. CSP concurrency is one of Go's nicer features.
>
> ...according to Wikipedia CSP was first described in a paper in 1978;
> Occam came out in 1983 (although it looks way older from the syntax).
> Perhaps Algol-68 simply predates it, which would explain why it has par
> but no channels. Anyone modernising the language would definitely need
> to add them.
Indeed, being at the birthplace of CSP and a concurrency researcher I
just happened to pick up on that specific bit of your email. I
actually have a number of complaints about the current state of
channel based communication in Go, but that's another topic entirely
=)
- Jim