From: Ron M Date: 2006-07-21T04:27:25+09:00 Subject: Re: Beyond threads? Better concurrency methods? Daniel Martin wrote: > "M. Edward (Ed) Borasky" writes: >> Strangely enough, I don't recall ever seeing a *real* programming >> language, to be distinguished from academic ones, that ever handled >> parallelism in a manner other than as calls to run-time >> libraries. Ruby already has that. > > Erlang doesn't count? True, I don't know of anyone using it besides > Erikson... A couple other notable projects built with Erlang are the "Wings 3D" [1,2,3] 3D modeling package and the "ejabberd" [4] database-backed Jabber server. Earlier this year Jabber.org (one of the larger jabber servers with 180K users) started using the Erlang based server for its own use[5], so it's a pretty mature product. Erlang is actually a pretty nice general purpose language; and indeed was designed to support parallelism without threads[6]. I'd have to say Erlang's an excellent answer to Ed's comment. To Ed's "real programming language .. that handled parallelism in a manner to calls other than calls to run-time libraries", doesn't C with OpenMP also count? #include int main(int argc, char *argv[]) { int i, a[100]; #pragma omp parallel for for (i=0;i<100;i++) a[i]= 2*i; return 0; } Though admittedly I've only seen OpenMP in academic projects so far. [1] http://www.wings3d.com/ [2] http://www.wings3d.com/gallery.php [3] http://en.wikipedia.org/wiki/Wings_3D [4] http://en.wikipedia.org/wiki/Ejabberd [5] http://support.process-one.net/doc/display/NEWS/2006/03/06/Jabber.org+adopts+ejabberd [6] http://en.wikipedia.org/wiki/Erlang_programming_language