From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 29555BB9A for ; Thu, 6 Oct 2005 01:21:05 +0200 (CEST) Received: from xproxy.gmail.com (xproxy.gmail.com [66.249.82.206]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id j95NL4TI002770 for ; Thu, 6 Oct 2005 01:21:04 +0200 Received: by xproxy.gmail.com with SMTP id i27so167389wxd for ; Wed, 05 Oct 2005 16:21:04 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:reply-to:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=tN5L03G7HjvpfuFQv5/IQ/zj2+OVj3cqLPKUFFUDpW4PYxQ3JzQT7ATdjXxPC/216/Qz83T6PD4l1emBevl9D0Dsb0gfFFtFnZfZgokpi806fA6SrwPFgAC2aF2+g7tCpvTKY0wO2VZX+w2XTc6V9u4J97u+9g21VJbJx0N6BCQ= Received: by 10.70.18.9 with SMTP id 9mr687420wxr; Wed, 05 Oct 2005 16:21:04 -0700 (PDT) Received: by 10.70.20.9 with HTTP; Wed, 5 Oct 2005 16:21:04 -0700 (PDT) Message-ID: Date: Wed, 5 Oct 2005 19:21:04 -0400 From: Markus Mottl Reply-To: Markus Mottl To: Martin Chabr Subject: Re: Ant: Re: FP/IP and performance (in general) and Patterns... (Re: [Caml-list] Avoiding shared data) Cc: Oliver Bandel , caml-list@yquem.inria.fr In-Reply-To: <20051005205208.65943.qmail@web26807.mail.ukl.yahoo.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline References: <20051005121028.GA757@first.in-berlin.de> <20051005205208.65943.qmail@web26807.mail.ukl.yahoo.com> X-Miltered: at nez-perce with ID 43445FE0.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; markus:01 mottl:01 markus:01 mottl:01 caml-list:01 avoiding:01 fwiw:01 ocaml:01 ocaml:01 intending:01 mutable:01 semantically:01 ...:98 ...:98 wrote:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.5 required=5.0 tests=INFO_TLD,RCVD_BY_IP autolearn=disabled version=3.0.3 On 10/5/05, Martin Chabr wrote: > User interfaces, business systems, anything with > objects which have changing states and which react to > events and interact with each other =3D=3D> use OOP FWIW, we use OCaml for fairly large systems (> 100 KLOCs, > 1000 modules) with very complicated business logic handling high-volume realtime events. Even though OCaml supports OOP very well, probably much better than most mainstream languages, we do not use OOP and are not intending to do so. Mutable records together with modules are perfectly fine for handling changing states safely and efficiently and are in the general case semantically more transparent than objects.=20 Your mileage may vary... Regards, Markus -- Markus Mottl http://www.ocaml.info markus.mottl@gmail.com