From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@sympa.inria.fr Delivered-To: caml-list@sympa.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 443CF7FC41 for ; Tue, 3 Mar 2015 16:02:39 +0100 (CET) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of francois.bobot@cea.fr) identity=pra; client-ip=132.168.224.8; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="francois.bobot@cea.fr"; x-sender="francois.bobot@cea.fr"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of francois.bobot@cea.fr) identity=mailfrom; client-ip=132.168.224.8; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="francois.bobot@cea.fr"; x-sender="francois.bobot@cea.fr"; x-conformance=sidf_compatible Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@oxalide-out.extra.cea.fr) identity=helo; client-ip=132.168.224.8; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="francois.bobot@cea.fr"; x-sender="postmaster@oxalide-out.extra.cea.fr"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0A6AgB8zPVUnAjgqIRag1Ragwu+P4VkCgKBJ00BAQEBAQEQAQEBAQEICwkJFC6EEAEFIwQLAQVAARALGAICBRYLAgIJAwIBAgFFBgEMAQcCiCsNu2maSgEBAQEBAQEDAQEBAQEBAQEBARQEgSGJcYJhgVozB4JogUMFk1mMV4xxhBJugkMBAQE X-IPAS-Result: A0A6AgB8zPVUnAjgqIRag1Ragwu+P4VkCgKBJ00BAQEBAQEQAQEBAQEICwkJFC6EEAEFIwQLAQVAARALGAICBRYLAgIJAwIBAgFFBgEMAQcCiCsNu2maSgEBAQEBAQEDAQEBAQEBAQEBARQEgSGJcYJhgVozB4JogUMFk1mMV4xxhBJugkMBAQE X-IronPort-AV: E=Sophos;i="5.09,682,1418079600"; d="scan'208";a="124189972" Received: from oxalide-out.extra.cea.fr ([132.168.224.8]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 03 Mar 2015 16:02:38 +0100 Received: from pisaure.intra.cea.fr (pisaure.intra.cea.fr [132.166.88.21]) by oxalide.extra.cea.fr (8.14.2/8.14.2/CEAnet-Internet-out-2.3) with ESMTP id t23F2akr009743; Tue, 3 Mar 2015 16:02:37 +0100 Received: from pisaure.intra.cea.fr (localhost [127.0.0.1]) by localhost (Postfix) with SMTP id 61DFC206743; Tue, 3 Mar 2015 16:02:47 +0100 (CET) Received: from muguet1.intra.cea.fr (muguet1.intra.cea.fr [132.166.192.6]) by pisaure.intra.cea.fr (Postfix) with ESMTP id 45EB22068CD; Tue, 3 Mar 2015 16:02:47 +0100 (CET) Received: from [10.8.32.80] (is222783.intra.cea.fr [10.8.32.80]) by muguet1.intra.cea.fr (8.13.8/8.13.8/CEAnet-Intranet-out-1.2) with ESMTP id t23F2axw012600; Tue, 3 Mar 2015 16:02:36 +0100 Message-ID: <54F5CD0C.4080303@cea.fr> Date: Tue, 03 Mar 2015 16:02:36 +0100 From: =?UTF-8?B?RnJhbsOnb2lzIEJvYm90?= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.4.0 MIME-Version: 1.0 To: Sebastien Mondet , Ivan Gotovchits CC: Gabriel Scherer , OCaml Mailing List References: <54F5B3F7.3030705@cea.fr> <54F5C3E6.8010404@cea.fr> In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Subject: Re: [Caml-list] Dependencies between plugins On 03/03/2015 15:42, Sebastien Mondet wrote: > > We have also some code doing that there: > https://github.com/hammerlab/ketrew/blob/master/src/lib/pure/ketrew_plugin.ml#L52 > One of the tricks used is that, at configure time, the list of findlib packages already linked is > given to the library itself to avoid double loading. Thanks for the link! I like the use of findlib for computing the set of package already linked! ``` let ketrew_deep_ancestors () = Lazy.force (lazy ( Findlib.package_deep_ancestors ["native"] Ketrew_metadata.findlib_packages )) ``` PS: I think that `fun () -> Lazy.force (lazy e)` is equivalent to `fun () -> e`. You surely wanted `let l = lazy e in fun () -> Lazy.force l`, no? -- François