emacs-devel
[Top][All Lists]
Advanced

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

Re: [PATCH 06/10] add most lisp-level features


From: Daniel Colascione
Subject: Re: [PATCH 06/10] add most lisp-level features
Date: Thu, 09 Aug 2012 18:45:35 -0700
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428 Thunderbird/12.0.1

On 8/9/2012 12:41 PM, Tom Tromey wrote:
> This adds most of the thread features visible to emacs lisp.
> 
> I roughly followed the Bordeaux threads API:
> 
> http://trac.common-lisp.net/bordeaux-threads/wiki/ApiDocumentation
> 
> ... but not identically.  In particular I chose not to implement
> interrupt-thread or destroy-thread, but instead a thread-signalling
> approach.

Thank you. Functions like that lead to nothing but trouble.

> I'm still undecided about *default-special-bindings* (which I did not
> implement).  I think it would be more emacs-like to capture the let
> bindings at make-thread time, but IIRC Stefan didn't like this idea
> the first time around.

I'm with Stefan here. Capturing the bindings at thread-creation time makes the
binding in effect for a thread worker hard to reason about. Say Gnus binds *foo*
and calls into bar-lib, which internally uses threads. bar-lib's thread worker
has no idea *foo* is bound, and if a non-Gnus caller uses bar-lib, *foo* won't
be bound. I feel like this approach would lead to hard-to-find bugs.

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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