From: dstein64
Subject: Threads
Date: 
Message-ID: <9b1a2a4f-b32a-4c16-9552-88d419aa8fd0@24g2000hsh.googlegroups.com>
I am unfamiliar with threads but I believe that I will need to use
them in a program I am writing. I am using SBCL and the program will
also have to work with Allegro. Is there any suggested way of using
threads that will work with both. It seems that the SBCL manual refers
to a package called sb-thread, which I am guessing is not available on
Allegro. Any suggestions? Thanks.

From: Jeff
Subject: Re: Threads
Date: 
Message-ID: <1a82f6ca-f535-4294-b42c-54c76c716376@24g2000hsh.googlegroups.com>
You could look at Bordeau Threads, which is a unified threads library:

http://common-lisp.net/project/bordeaux-threads/
From: Pascal Costanza
Subject: Re: Threads
Date: 
Message-ID: <65vdq9F2ig7ccU2@mid.individual.net>
Jeff wrote:
> You could look at Bordeau Threads, which is a unified threads library:
> 
> http://common-lisp.net/project/bordeaux-threads/

I prefer the portable-threads library of GBBopen. It seems better 
maintained and also supports single-threaded implementations: It does 
something reasonable where it can, for example for locking (which are 
essentially no-ops in single-threaded implementations), and throws 
exceptions only for operations that don't make sense (like spawn).


Pascal

-- 
1st European Lisp Symposium (ELS'08)
http://prog.vub.ac.be/~pcostanza/els08/

My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: Jeff
Subject: Re: Threads
Date: 
Message-ID: <b99f750f-eafa-4284-bb21-8a4df5e1dc3a@b64g2000hsa.googlegroups.com>
I haven't looked at them.  I'll have to take a look.
From: alien_guy
Subject: Re: Threads
Date: 
Message-ID: <pan.2008.04.07.21.00.51@l.org>
On Mon, 07 Apr 2008 22:17:15 +0200, Pascal Costanza wrote:

> Jeff wrote:
>> You could look at Bordeau Threads, which is a unified threads library:
>> 
>> http://common-lisp.net/project/bordeaux-threads/
> 
> I prefer the portable-threads library of GBBopen. It seems better
> maintained and also supports single-threaded implementations: It does
> something reasonable where it can, for example for locking (which are
> essentially no-ops in single-threaded implementations), and throws
> exceptions only for operations that don't make sense (like spawn).

bordeaux-threads does that too
From: Pascal Costanza
Subject: Re: Threads
Date: 
Message-ID: <65vmpuF2hjectU1@mid.individual.net>
alien_guy wrote:
> On Mon, 07 Apr 2008 22:17:15 +0200, Pascal Costanza wrote:
> 
>> Jeff wrote:
>>> You could look at Bordeau Threads, which is a unified threads library:
>>>
>>> http://common-lisp.net/project/bordeaux-threads/
>> I prefer the portable-threads library of GBBopen. It seems better
>> maintained and also supports single-threaded implementations: It does
>> something reasonable where it can, for example for locking (which are
>> essentially no-ops in single-threaded implementations), and throws
>> exceptions only for operations that don't make sense (like spawn).
> 
> bordeaux-threads does that too

Unless the description on the bordeaux-threads project page is out of 
date, that's not true. It explicitly mentions that clisp is not 
supported and explains that the reason is that clisp doesn't have 
multi-threading.

GBBopen's portable-threads supports clisp, and it's really convenient 
that I don't have to do my own special-casing for clisp in my code.

(In ContextL, I don't have to spawn any threads myself, but I have to 
make sure that some operations are thread-safe. I just put in the 
appropriate locks, and it just works, including on clisp.)



Pascal

-- 
1st European Lisp Symposium (ELS'08)
http://prog.vub.ac.be/~pcostanza/els08/

My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: alien_guy
Subject: Re: Threads
Date: 
Message-ID: <pan.2008.04.08.00.17.32@l.org>
On Tue, 08 Apr 2008 00:50:37 +0200, Pascal Costanza wrote:
> Unless the description on the bordeaux-threads project page is out of
> date, that's not true. It explicitly mentions that clisp is not
> supported and explains that the reason is that clisp doesn't have
> multi-threading.

Where ?

> GBBopen's portable-threads supports clisp, and it's really convenient
> that I don't have to do my own special-casing for clisp in my code.
> 
> (In ContextL, I don't have to spawn any threads myself, but I have to
> make sure that some operations are thread-safe. I just put in the
> appropriate locks, and it just works, including on clisp.)

The same in bordeaux-threads.
From: Jeff
Subject: Re: Threads
Date: 
Message-ID: <d782d22b-dae6-4779-8ac9-ab342e22403e@y21g2000hsf.googlegroups.com>
On Apr 7, 8:17 pm, alien_guy <····@l.org> wrote:
> On Tue, 08 Apr 2008 00:50:37 +0200, Pascal Costanza wrote:
> > Unless the description on the bordeaux-threads project page is out of
> > date, that's not true. It explicitly mentions that clisp is not
> > supported and explains that the reason is that clisp doesn't have
> > multi-threading.
>
> Where ?
>
> > GBBopen's portable-threads supports clisp, and it's really convenient
> > that I don't have to do my own special-casing for clisp in my code.
>
> > (In ContextL, I don't have to spawn any threads myself, but I have to
> > make sure that some operations are thread-safe. I just put in the
> > appropriate locks, and it just works, including on clisp.)
>
> The same in bordeaux-threads.


"On threadless implementations, some forms (like those related to
locks) are no-ops, others (like the make-thread) signal an error." <
http://common-lisp.net/project/bordeaux-threads/ >
From: Pascal Costanza
Subject: Re: Threads
Date: 
Message-ID: <660mlaF2htu68U1@mid.individual.net>
alien_guy wrote:
> On Tue, 08 Apr 2008 00:50:37 +0200, Pascal Costanza wrote:
>> Unless the description on the bordeaux-threads project page is out of
>> date, that's not true. It explicitly mentions that clisp is not
>> supported and explains that the reason is that clisp doesn't have
>> multi-threading.
> 
> Where ?

Not anymore. Yesterday, it was still like this:

http://web.archive.org/web/20070821175258/http://common-lisp.net/project/bordeaux-threads/

So someone has updated the project page. That's good.

>> GBBopen's portable-threads supports clisp, and it's really convenient
>> that I don't have to do my own special-casing for clisp in my code.
>>
>> (In ContextL, I don't have to spawn any threads myself, but I have to
>> make sure that some operations are thread-safe. I just put in the
>> appropriate locks, and it just works, including on clisp.)
> 
> The same in bordeaux-threads.

That's good.


Pascal

-- 
1st European Lisp Symposium (ELS'08)
http://prog.vub.ac.be/~pcostanza/els08/

My website: http://p-cos.net
Common Lisp Document Repository: http://cdr.eurolisp.org
Closer to MOP & ContextL: http://common-lisp.net/project/closer/
From: Ralf Mattes
Subject: Re: Threads
Date: 
Message-ID: <ftfkq2$3fl$1@news01.versatel.de>
On Tue, 08 Apr 2008 09:54:19 +0200, Pascal Costanza wrote:

> alien_guy wrote:
>> On Tue, 08 Apr 2008 00:50:37 +0200, Pascal Costanza wrote:
>>> Unless the description on the bordeaux-threads project page is out of
>>> date, that's not true. It explicitly mentions that clisp is not
>>> supported and explains that the reason is that clisp doesn't have
>>> multi-threading.
>> 
>> Where ?
> 
> Not anymore. Yesterday, it was still like this:
> 
> http://web.archive.org/web/20070821175258/http://common-lisp.net/project/bordeaux-threads/
> 
> So someone has updated the project page. That's good.
> 

Haha - Heisenbug. Mentioning something on C.L.L. changes it ...

 Cheers, RalfD
From: Pascal Bourguignon
Subject: Re: Threads
Date: 
Message-ID: <87k5j9ikaj.fsf@thalassa.informatimago.com>
dstein64 <········@gmail.com> writes:

> I am unfamiliar with threads but I believe that I will need to use
> them in a program I am writing. I am using SBCL and the program will
> also have to work with Allegro. Is there any suggested way of using
> threads that will work with both. It seems that the SBCL manual refers
> to a package called sb-thread, which I am guessing is not available on
> Allegro. Any suggestions? Thanks.

bordeaux-threads

Have a look at http://www.cliki.net/

-- 
__Pascal Bourguignon__                     http://www.informatimago.com/

CONSUMER NOTICE: Because of the "uncertainty principle," it is
impossible for the consumer to simultaneously know both the precise
location and velocity of this product.