guile-devel
[Top][All Lists]
Advanced

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

Re: anyone define port types?


From: Chris Vine
Subject: Re: anyone define port types?
Date: Thu, 23 Jun 2016 10:24:21 +0100

On Thu, 23 Jun 2016 09:36:48 +0200
Andy Wingo <address@hidden> wrote:
[snip]
> Excellent.  Though I think that eventually we will want to bless one
> of these concurrency patterns as the default one, we're a long way
> away from that, and even if we do bless one I think we will always
> want to allow people to experiment and deploy different ones.  So,
> great, glad to hear you are doing work in this area :)

A few things on that.  First, there will always be a use for an event
loop to do event-loopy things, irrespective of whether and how a
coroutine interface is put around it.  Sometimes you want to abstract
things away, sometimes you don't.

Secondly, as I understand it in the end you want pre-emptive "green"
threads for guile, whereas my code equates to co-operative
multi-tasking, whilst also working with native threads.  I must come
clean and say that I don't like "green" threads.

Which leads on to the third point, which is that I would like to see
guile match its words (in its documentation) with respect to native
threads.  I have found they work fine, with caution about shared global
state.  You think they don't, except possibly on intel, because some of
its lock-free structures/variables -- and I think you are possibly
referring to the VM here -- lack appropriate fences or other atomics.
(The higher level C and scheme code has plainly had serious attempts at
thread-safety made for it using mutexes.)

Chris



reply via email to

[Prev in Thread] Current Thread [Next in Thread]