From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.9 required=5.0 tests=AWL,SPF_SOFTFAIL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id AED1BBBAF for ; Fri, 19 Dec 2008 19:51:01 +0100 (CET) X-IronPort-AV: E=Sophos;i="4.36,250,1228086000"; d="scan'208";a="18709825" Received: from discorde.inria.fr ([192.93.2.38]) by mail2-smtp-roc.national.inria.fr with ESMTP; 19 Dec 2008 19:51:01 +0100 Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id mBJIp1kl029309 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Fri, 19 Dec 2008 19:51:01 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqQBAKh7S0nBtPs+lGdsb2JhbACTZQEBAQEHDQgJEQWrJ1iQb4MD X-IronPort-AV: E=Sophos;i="4.36,250,1228086000"; d="scan'208";a="20626341" Received: from mailgw4.ericsson.se ([193.180.251.62]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 19 Dec 2008 19:51:00 +0100 Received: from mailgw4.ericsson.se (unknown [127.0.0.1]) by mailgw4.ericsson.se (Symantec Mail Security) with ESMTP id 3D1242136F; Fri, 19 Dec 2008 19:50:59 +0100 (CET) X-AuditID: c1b4fb3e-acf82bb00000537b-73-494bed131701 Received: from esealmw126.eemea.ericsson.se (unknown [153.88.253.125]) by mailgw4.ericsson.se (Symantec Mail Security) with ESMTP id 1D2FB212F9; Fri, 19 Dec 2008 19:50:59 +0100 (CET) Received: from esealmw126.eemea.ericsson.se ([153.88.254.174]) by esealmw126.eemea.ericsson.se with Microsoft SMTPSVC(6.0.3790.1830); Fri, 19 Dec 2008 19:50:58 +0100 Received: from [153.88.53.85] ([153.88.53.85]) by esealmw126.eemea.ericsson.se with Microsoft SMTPSVC(6.0.3790.1830); Fri, 19 Dec 2008 19:50:58 +0100 Message-ID: <494BED12.1020206@ericsson.com> Date: Fri, 19 Dec 2008 19:50:58 +0100 From: "Ulf Wiger (TN/EAB)" User-Agent: Thunderbird 2.0.0.18 (Windows/20081105) MIME-Version: 1.0 To: Alexy Khrabrov Cc: Dario Teixeira , OCaml Subject: Re: [Caml-list] More cores References: <157727.93194.qm@web111508.mail.gq1.yahoo.com> <52B31DF4-F49F-41A3-A630-CC9247C2F09C@gmail.com> In-Reply-To: <52B31DF4-F49F-41A3-A630-CC9247C2F09C@gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 19 Dec 2008 18:50:58.0696 (UTC) FILETIME=[BB37C880:01C9620A] X-Brightmail-Tracker: AAAAAA== X-Miltered: at discorde with ID 494BED15.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; erlang:01 ocaml:01 model:01 erlang:01 model:01 hash:01 runtime:01 eclectic:98 embrace:98 threads:01 heap:01 caml-list:01 functions:01 functions:01 concurrency:04 Alexy Khrabrov skrev: > Well, it's fun to join the old discussion in the new times. The fact > that computers go multicore at a greater scale makes it recurrent. > > Erlang makes concurrency easy due to purity, and OCaml is famous > for being eclectic. Why not embrace Erlang's model by imposing > limitations on what can be in threads -- keeping them pure? Erlang processes are not pure, but they do have their own memory heap, making it possible to do stop-and-copy GC per process. I think the share-nothing model is more important than purity. There are some functions that allow Erlang processes to update "global state" (e.g. the ETS hash and ordered_set tables), but they are ensured to be atomic by the runtime system. You could model each of these functions using normal erlang processes. BR, Ulf W