Lisp HUG Maillist Archive

Seeking intuition about Lispworks "processes"

Hello folks,

Recent Lispworks owner, more on the hobbyist side for now, had a question that I’m sure someone knows.

The Lispworks documentation mentions “Multiprocessing”, and the interface is rich and well-described, but I was wondering: should I think of these more like threads, or like coroutines ??

Much thanks,
Agam

Re: Seeking intuition about Lispworks "processes"

Hi Agam,

Better to think of them as threads—symmetric coroutines are fairly trivial to implement using LispWorks Processes, but there are better ways to implement them.

The chapter on Multiprocessing from the LispWorks manual is quite informative:

http://www.lispworks.com/documentation/lw71/LW/html/lw-140.htm#pgfId-885988


--

Colin J.E. Lupton
CEO, Founder, Principal Quantum Metamachinist
Black Brane Systems, Inc.
https://blackbrane.com/

phone: +1 (833) 227-2630 x700
fax: +1 (833) 227-2630
email: colin@blackbrane.com

Sent from Outlook for iOS

From: owner-lisp-hug@lispworks.com <owner-lisp-hug@lispworks.com> on behalf of Agam Brahma <agam.brahma@gmail.com>
Sent: Friday, April 10, 2020 6:33:36 PM
To: lisp-hug@lispworks.com <lisp-hug@lispworks.com>
Subject: Seeking intuition about Lispworks "processes"
 

Hello folks,

Recent Lispworks owner, more on the hobbyist side for now, had a question that I’m sure someone knows.

The Lispworks documentation mentions “Multiprocessing”, and the interface is rich and well-described, but I was wondering: should I think of these more like threads, or like coroutines ??

Much thanks,
Agam

Re: Seeking intuition about Lispworks "processes"

Thanks Colin!


On 10 Apr 2020, at 15:54, Colin J.E. Lupton wrote:

Hi Agam,

Better to think of them as threads—symmetric coroutines are fairly trivial to implement using LispWorks Processes, but there are better ways to implement them.

The chapter on Multiprocessing from the LispWorks manual is quite informative:

http://www.lispworks.com/documentation/lw71/LW/html/lw-140.htm#pgfId-885988


--

Colin J.E. Lupton
CEO, Founder, Principal Quantum Metamachinist
Black Brane Systems, Inc.
https://blackbrane.com/

phone: +1 (833) 227-2630 x700
fax: +1 (833) 227-2630
email: colin@blackbrane.com

Sent from Outlook for iOS

From: owner-lisp-hug@lispworks.com <owner-lisp-hug@lispworks.com> on behalf of Agam Brahma <agam.brahma@gmail.com>
Sent: Friday, April 10, 2020 6:33:36 PM
To: lisp-hug@lispworks.com <lisp-hug@lispworks.com>
Subject: Seeking intuition about Lispworks "processes"
 

Hello folks,

Recent Lispworks owner, more on the hobbyist side for now, had a question that I’m sure someone knows.

The Lispworks documentation mentions “Multiprocessing”, and the interface is rich and well-described, but I was wondering: should I think of these more like threads, or like coroutines ??

Much thanks,
Agam

Re: Seeking intuition about Lispworks "processes"

Hi,

they are 'threads' and usually each Lisp process is mapped to an operating system thread.

In operating system terms, LispWorks runs as a single OS process with multiple OS threads sharing the same Lisp runtime (memory, ....).
These threads are also scheduled by the operating system and can run concurrently. They all share one garbage collector and one memory management.

Why are threads called 'processes' in LispWorks? In earlier systems like Lisp Machines, the Lisp system was the operating system and Lisp processes and operating system processes were the same. The naming and some of the API was later supported on other Lisps.

As you can see from the documentation, LispWorks has lots of features dealing with 'Lisp processes' (aka OS threads) and a bunch of constructs for the programming of concurrent software.

Regards

Rainer Joswig




Am 11.04.2020 um 00:33 schrieb Agam Brahma <agam.brahma@gmail.com>:

Hello folks,

Recent Lispworks owner, more on the hobbyist side for now, had a question that I’m sure someone knows.

The Lispworks documentation mentions “Multiprocessing”, and the interface is rich and well-described, but I was wondering: should I think of these more like threads, or like coroutines ??

Much thanks,
Agam


Updated at: 2020-12-10 08:29 UTC