------art_124441_29825687.1167611958093
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

On 12/31/06, M. Edward (Ed) Borasky <znmeb / cesmail.net> wrote:
>
>
> Vehement agreement: Erlang-style lightweight processes are a *proven*
> way to solve large complex problems on large collections of hardware.
> However, Erlang does some other things that seem to stick in the craw of
> a lot of folks here -- like a functional programming style and
> compile-time type checking. :)


I'm glad you agree, Ed. I'd add a couple of minor clarifications. First,
I've been involved with Posix threads since before they were Posix threads,
and to me "lightweight process" refers to what is sometimes called a kernel
thread. I assume you're using the term to mean full-weight (userland)
processes that interact with each other in more advanced ways than are
common today. Second, I was careful not to endorse the Erlang language
itself, but rather the broad approach (processes collaborating through
low-bandwidth but very flexible channels) that characterizes Erlang.

Disagreement, but perhaps more a lack of acceptance of reality: I think
> today's programmers are up to the task of highly parallel programming,
> because there are many decades of theory and practical experience in it
> already. I posted a rant about this already today, so I'm not going to
> belabor the point. I'll just fall back on Arthur C. Clarke's Law: When a
> distinguished but elderly scientist says something is possible, he is
> usually proven right. :)


There are a lot of strands to this argument, but to avoid a lot of offtopic
controversy, I'll just call out that my concern is not with highly parallel
programming. My problem is with *multithreaded* programming, which I don't
believe is the right way to take advantage of machine parallelism because it
introduces a concurrency into programs that usually isn't germane to the
business problem. I'm not interested in fighting over this, however, except
to say that if I'm right, I'll be shipping a lot more valuable software in
unit time than someone else will. I'm inclined to answer that question
empirically, and then revisit the theoretical issue.

------art_124441_29825687.1167611958093--