[lisp-hh] Terminology [Was: Re: [ANN] Erlisp website]
Dirk Gerrits
dirk at dirkgerrits.com
Thu Oct 14 08:01:25 UTC 2004
Luke Gorrie <luke at synap.se> writes:
Hi Luke.
> Erlisp sounds cool, I'm looking forward to see what you come up with.
I'm glad I sparked your interest. I'm looking forward to see what I
come up with as well. ;)
> For now I suggest adopting the definition that /concurrency/ is
> juggling a lot of different tasks at once, whereas /parallelism/ is
> optimization by using multiple processors at the same time. With these
> definitions Erlang and Erlisp are about concurrency and not parallelism.
Hmm, I should add a terminology page. But I could use some suggestions
for it. The way I see it, there are (at least) 5 related concepts:
1. juggling a lot of different tasks at once on a single machine with a
single processor
2. juggling a lot of different tasks at once on a single machine with
multiple processors
3. juggling a lot of different tasks at once on a single machine
(regardless of its number of processors)
4. juggling a lot of different tasks at once across multiple machines
5. juggling a lot of different tasks at once (regardless of the number
of machines involved)
I was using the terminology:
1. -
2. -
3. dirk:parallelism
4. dirk:distribution
5. dirk:concurrency
What would would you suggest?
1. -
2. -
3. luke:concurrency
4. luke:distribution
5. luke:concurrent and luke:distributed
?
I would really like to have a single word for each of 3, 4, and 5. But
I do share your sentiment that the 1 vs 2 distinction is not really
interesting (from a language design standpoint). If I need to mention 1
and 2 at all, I'll just write them out in full.
BTW, "processor" should probably be defined more thoroughly as well. It
seems to be hot these days to make CPUs with multiple cores.
> This is an important distinction. Parallelism is boring: everybody's
> already read old papers about parallel Lisps and nobody's actually
> writing parallel Lisp programs. Concurrency is sexy: everybody's
> writing concurrent programs (McCLIM, Araneida, etc etc) and Erlisp is
> trying to break ground by making these programs much easier to write.
I agree, in principle, but the luke:parallel Lisps of old also had a
luke:concurrency aspect, and some of them look really interesting.
> Don't be labelled as just another parallel Lisp! :-)
Well so far Erlisp has mostly been labelled as an "Erlang in Lisp".
While that isn't half bad, I'd like to go beyond that once I really get
there. ;)
> P.S., IMO two great background reading books are _Communicating
> Sequential Processes_ by Hoare (online at www.usingcsp.com) and _The
> Architecture of Concurrent Programs_ by Per Brinch Hansen (library, or
> cheap at www.bookfinder.com)
They have both books at my university's library, which is good as I
don't like reading large amounts of a text of a computer screen. :) I've
already read the first, I'll have to pick up the second some time.
Thanks for the pointers.
Kind regards,
Dirk Gerrits
More information about the lisp-hh
mailing list