Subject: Re: free cl implementation for web-based app ?
From: rpw3@rpw3.org (Rob Warnock)
Date: Sat, 16 Aug 2003 06:49:34 -0500
Newsgroups: comp.lang.lisp
Message-ID: <1bmdnc3RS83Th6OiXTWc-g@speakeasy.net>
Lars Brinkhoff  <lars.spam@nocrew.org> wrote:
+---------------
| rpw3@rpw3.org (Rob Warnock) writes:
| > I've always wondered: Why do people call within-a-single-O/S-process
| > threads (a.k.a. coroutines) "green"?
| 
| I got curious about this, so I had a Google session.
| According to this article:
|   http://groups.google.com/groups?selm=3107D7A0.431%40golfweb.com
| it started with the threads package used in the Green Project:
|   http://java.sun.com/people/jag/green/
+---------------

Ahhh, thanks! I was just curious. The first time I ever heard the "green"
nomenclature for within-process threads was when somebody back at SGI
was porting some bits of DCE to Irix, and for simplicity decided to use
"green" threads instead of Irix's "sproc()" [real multiprocessor] threads.
I had just always called them "coroutines" before that.


-Rob

p.s. Lest anyone think that the "it started" above refers to within-process
threads (coroutines) instead of just the "green" nomenclature, process-
local threads are a *LOT* older than Java. BLISS-10 had them in 1970
(explicitly in the language, with the built-in EXCHJ call), and Simula-67
had them implicitly in its object system.

[In fact, there was a cute little macro package for BLISS called "POOMAS",
for "POOr MAn's Simula", that used EXCHJ and BLISS structures to emulate
the basic features of Simula. Much later (1982), Bakul Shah & I re-emulated
POOMAS in C, using setjmp/longjmp to emulate BLISS's EXCHJ (to get coroutines).
We used it to write a discrete event simulator where each "object" was an
infinite-loop coroutine (with timed sleeps and event waits) that defined
its behaviour.]

-----
Rob Warnock, PP-ASEL-IA		<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607