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=1.6 required=5.0 tests=AWL,DNS_FROM_RFC_POST autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by yquem.inria.fr (Postfix) with ESMTP id 10B58BBC4 for ; Wed, 4 Mar 2009 02:05:53 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AoUBAMhirUmArgVgkWdsb2JhbACVCAEBAQEJCwoHEQTBWgeEAQY X-IronPort-AV: E=Sophos;i="4.38,297,1233529200"; d="scan'208";a="36052245" Received: from expredir5.cites.uiuc.edu ([128.174.5.96]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 04 Mar 2009 02:05:53 +0100 Received: from axyr (aryx.cs.uiuc.edu [128.174.236.106]) by expredir5.cites.uiuc.edu (8.14.2/8.14.2) with ESMTP id n2415k2j027656; Tue, 3 Mar 2009 19:05:46 -0600 (CST) To: Brian Hurt Cc: Jon Harrop , caml-list@yquem.inria.fr Subject: Re: [Caml-list] stl? References: <91a2ba3e0903031340wcdc976cp52522eb35f7ccb73@mail.gmail.com> <200903032342.39527.jon@ffconsultancy.com> From: Yoann Padioleau Date: Tue, 03 Mar 2009 19:05:35 -0600 In-Reply-To: (Brian Hurt's message of "Tue\, 3 Mar 2009 19\:11\:32 -0500 \(EST\)") Message-ID: <87r61eyu5c.fsf@aryx.cs.uiuc.edu> User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Spam: no; 0.00; stl:01 functors:01 ocaml:01 functors:01 ocaml:01 functor:01 entail:01 wrote:01 exception:01 caml-list:01 precisely:01 writes:01 rarely:02 slightly:03 programming:03 Brian Hurt writes: > On Tue, 3 Mar 2009, Jon Harrop wrote: > >> Functors give >> you the same capability in OCaml but they are rarely used precisely because >> the functionality is not very useful. > > I think I disagree with this. I think functors aren't used very much > in Ocaml because: 0) they are intrusive! putting code inside a functor may entail the need to modify also lots of related code. That's one of the worst thing for a programming feature. Your modification can not be local. I hate monad for the same reason, and I like ocaml exception mechanism, and using sometimes global refs for the same reason. > 1) They're a big, scary name, and I'am a man, I am not scared. > 2) They're slightly less efficient. I don't care so much about that anyway. >