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=2.8 required=5.0 tests=DNS_FROM_RFC_POST,SPF_NEUTRAL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 85146BBC4 for ; Sat, 21 Feb 2009 21:21:01 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ai8CAHPxn0nRVdyukWdsb2JhbACUGz8BAQEBCQkMBw+wFo4+AQMBA4QMBoJYgXc X-IronPort-AV: E=Sophos;i="4.38,246,1233529200"; d="scan'208";a="23326383" Received: from mail-fx0-f174.google.com ([209.85.220.174]) by mail3-smtp-sop.national.inria.fr with ESMTP; 21 Feb 2009 21:20:41 +0100 Received: by fxm22 with SMTP id 22so837957fxm.3 for ; Sat, 21 Feb 2009 12:20:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:from:to :in-reply-to:content-type:content-transfer-encoding:mime-version :subject:date:references:x-mailer; bh=W2oZoeszaCZDdgq7nR+kRHMKgx19l//Tzc7XkBLJTT4=; b=dH193WErHRQw6iXcmwBbEyxi5uXWZHr/ZKNTjy3FrQoXvCHreZXVsUW+r9Y7SBl0kQ J3R5kDXmEV8l9uAwLbZKnl2HwK/F987jUTLCOUcOfdJQ92TGkWH2trt6g5ooa4eZ8Ztp tl/LqkmV+UkkcYElhxOFY1TucWpo+fPjBltFk= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:from:to:in-reply-to:content-type :content-transfer-encoding:mime-version:subject:date:references :x-mailer; b=BmF7HlXtARdv6uFi1xqIue4KwE8qo9ozVIiw9oA5okeDy07GFuEaEns5YNq6r7M6KO mZBRj2Q81ySwRiYjnRiK229ARWKuLIcCIAibzw+4rBem+G+5xqgrfvAvMnc6PM0r+khM X9T36F+QuWJuhVNGkk7DB2BZQX+mTklPoJDqk= Received: by 10.102.219.8 with SMTP id r8mr2522070mug.10.1235247639434; Sat, 21 Feb 2009 12:20:39 -0800 (PST) Received: from ?192.168.1.34? (91-49.78-83.cust.bluewin.ch [83.78.49.91]) by mx.google.com with ESMTPS id e9sm402741muf.8.2009.02.21.12.20.38 (version=TLSv1/SSLv3 cipher=RC4-MD5); Sat, 21 Feb 2009 12:20:39 -0800 (PST) Sender: =?UTF-8?Q?Daniel_B=C3=BCnzli?= Message-Id: <231BADDB-F88E-4A3D-994B-863579C20810@erratique.ch> From: =?ISO-8859-1?Q?Daniel_B=FCnzli?= To: OCaml List In-Reply-To: <49A04DAE.6010109@lri.fr> Content-Type: text/plain; charset=ISO-8859-1; format=flowed; delsp=yes Content-Transfer-Encoding: quoted-printable Mime-Version: 1.0 (Apple Message framework v930.3) Subject: Re: [Caml-list] ocamlbuild & deps Date: Sat, 21 Feb 2009 21:19:52 +0100 References: <499ECEB7.6010709@lri.fr> <49A04DAE.6010109@lri.fr> X-Mailer: Apple Mail (2.930.3) X-Spam: no; 0.00; bunzli:01 buenzli:01 deps:01 deps:01 iter:01 dependencies:01 dependencies:01 partial:01 partial:01 caml-list:01 argument:02 argument:02 usefull:02 env:03 env:03 Le 21 f=E9vr. 09 =E0 19:53, Romain Bardou a =E9crit : > Ok I think I did not explain correctly. Let's say that : [...] I think you are not getting my point. What I meant in the first place =20= is that I see strictly no difference between : > rule ~deps ~prod r and > rule ~prod begin fun env build -> > let static_deps =3D build (List.map (fun d -> env d) deps) in > List.iter Outcome.ignore_good static_deps; > r env build > end Strictly speaking this means that all dependencies can be resolved by =20= the 'build' argument. However it is sometimes useful to introduce a =20 partial order among them. Now your distinction dynamic/static is just =20= a limited way of specifiying a partial order among dependencies. The =20 generalized way of introducing that order is just to have calls to the =20= 'build' argument in the order you want inside your rule. If the above is true then I think it would be usefull to mention this =20= in the documentation about the 'build' argument. Best, Daniel