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 B904E7F75C for ; Wed, 24 Sep 2014 04:35:05 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of yminsky@janestreet.com) identity=pra; client-ip=38.105.200.112; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yminsky@janestreet.com"; x-sender="yminsky@janestreet.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of yminsky@janestreet.com designates 38.105.200.112 as permitted sender) identity=mailfrom; client-ip=38.105.200.112; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yminsky@janestreet.com"; x-sender="yminsky@janestreet.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mxout1.mail.janestreet.com) identity=helo; client-ip=38.105.200.112; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="yminsky@janestreet.com"; x-sender="postmaster@mxout1.mail.janestreet.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AvsBADAtIlQmachwnGdsb2JhbABghDgEgn3ORQF/CBYBEQEBAQEBBhYJP4QEAQEEEhEdAQEqCAIDAQ8LCw0CAiYCAiISAQUBHAYTIogcA6AvbYo4eIUCAQWRCAERBgqBIo5bB4J4gVOdIYdMjBUYKYMeHIF1UIJKAQEB X-IPAS-Result: AvsBADAtIlQmachwnGdsb2JhbABghDgEgn3ORQF/CBYBEQEBAQEBBhYJP4QEAQEEEhEdAQEqCAIDAQ8LCw0CAiYCAiISAQUBHAYTIogcA6AvbYo4eIUCAQWRCAERBgqBIo5bB4J4gVOdIYdMjBUYKYMeHIF1UIJKAQEB X-IronPort-AV: E=Sophos;i="5.04,585,1406584800"; d="scan'208";a="97547350" Received: from mxout1.mail.janestreet.com ([38.105.200.112]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 24 Sep 2014 04:35:04 +0200 Received: from tot-smtp.delacy.com ([172.27.22.15] helo=tot-smtp) by mxout1.mail.janestreet.com with esmtps (TLSv1.2:DHE-RSA-AES256-GCM-SHA384:256) (Exim 4.82) (envelope-from ) id 1XWcQ3-0001bI-5i for caml-list@inria.fr; Tue, 23 Sep 2014 22:35:03 -0400 Received: from [172.27.229.230] (helo=mxgoog1.mail.janestreet.com) by tot-smtp with esmtps (UNKNOWN:AES256-GCM-SHA384:256) (Exim 4.72) (envelope-from ) id 1XWcQ2-00034d-U7 for caml-list@inria.fr; Tue, 23 Sep 2014 22:35:02 -0400 Received: from mail-lb0-f180.google.com ([209.85.217.180]) by mxgoog1.mail.janestreet.com with esmtps (TLSv1:RC4-SHA:128) (Exim 4.72) (envelope-from ) id 1XWcQ2-0003vC-LD for caml-list@inria.fr; Tue, 23 Sep 2014 22:35:02 -0400 Received: by mail-lb0-f180.google.com with SMTP id b12so9676852lbj.25 for ; Tue, 23 Sep 2014 19:35:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=9p3kDBlPCileGpF589yOW11Oi+uCEPyS7ibL44hZRGQ=; b=Nqe5BFeIkbvflgA890ZBR19zofOcLniZFki9R5r+wipZWNe0+dv9MM5JCARYmmaOGa f9oAArlYj9+4tXljPYagjnTxAc4TOZCrirIg/617/O/7cE+20fgew8ZsYJLJeXPpfUEj pIRgsbn2rbPtgJLySOUD5plfBgozrAETEacbk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=9p3kDBlPCileGpF589yOW11Oi+uCEPyS7ibL44hZRGQ=; b=L7mzk1yYoEAqExUMizqrXYo213zP1s19qWXFADwsU/Zk7nN/IJ1EfzXez7fAU87ZrZ /lBty8B+/xA/cbdGnAwxMMRks0MDOejezkiHk67/BXh1UUOO2XX7jvuAblV34YObZTjC aBCZFwhEZ7BhclCPmiKnE0ipSA7FW6dM+gFsrJt4DrSoL4uk3/nXupj1jC2vBWm3zmTf 636A050vJ0OxClX5GqLPbgaZkDDlRLUbhGVrz/IutAbANB9t0AinCif5Us7TB7tsg0CD CxyUM8DwGcZSY8rjZkaz7Cm6yM68zoBKk27mzltsuOU41LtrSLO/ZFDx4/TML/YKLHvz KXWQ== X-Received: by 10.112.200.134 with SMTP id js6mr3263897lbc.0.1411526101480; Tue, 23 Sep 2014 19:35:01 -0700 (PDT) X-Gm-Message-State: ALoCoQm8LZbIdX6AGSuZwi78YqDi8dMTkZXqYFz2xNYxHKVhy0cYS9gS912X+L4L+7JzZTPoDDw+PQP3f/BEINTMPSjstic5D3R2b2qGtarLfhgx3mazgd/saqPjZJghF/EUQJ61/Wta MIME-Version: 1.0 X-Received: by 10.112.200.134 with SMTP id js6mr3263893lbc.0.1411526101412; Tue, 23 Sep 2014 19:35:01 -0700 (PDT) Received: by 10.112.56.136 with HTTP; Tue, 23 Sep 2014 19:35:01 -0700 (PDT) In-Reply-To: <5421D42A.2070504@frisch.fr> References: <541C2037.5030303@frisch.fr> <1411133763.2930.28.camel@zotac> <541C36FF.3010603@frisch.fr> <54214E1C.4010507@frisch.fr> <5421D42A.2070504@frisch.fr> Date: Tue, 23 Sep 2014 22:35:01 -0400 Message-ID: From: Yaron Minsky To: Alain Frisch Cc: Mark Shinwell , Gerd Stolpmann , Bob Zhang , Caml List Content-Type: text/plain; charset=UTF-8 Subject: Re: [Caml-list] improve omake [was One build system to rule them all] No joke. The switch required a fair bit of cleverness on our part. We actually had some clever intermediate stage when we were building jenga build description files (full of s-expressions, not OCaml code) from omake build rules, as a way of bridging the gap as we did the conversion. Flipping a big codebase is not for the faint of heart. y On Tue, Sep 23, 2014 at 4:12 PM, Alain Frisch wrote: > On 9/23/2014 12:58 PM, Mark Shinwell wrote: >> >> I think the details are hazy now, but as far as we recall: your >> statement about avoiding recomputation is correct, but a lot of md5sum >> work happened subsequent to each compilation action in serial, within >> the omake process. > > > Ok, this could affect total compilation built time, not startup (and total > time when nothing needs to be rebuilt). > >> By no means was this the only problem; another, for example, was a >> vast amount of time spent constructing rules for an entire tree even >> if only a small portion was being demanded to be built. > > > Ok. Do you remember if you had some clue about the source of inefficiency > (evaluator, data structure to represent the environment, etc)? > >> (Of course, the worst problem with omake was probably the DSL, which >> we found to be wholly unsuitable for large-scale reliable rule >> engineering. Programmability really is key.) > > > YMMV. LexiFi's experience with the omake DSL is that even if sometime > annoying, it's possible to achieve a reasonable effect with some efforts. > At least, the issues with the DSL did not compensate the other nice > properties of omake. I assume that other groups have functional build > systems implemented with omake as well, so if people working on omake can > improve its performances, it would be an immediate gain. That's not to say > that we don't keep an eye open on alternative build systems such as Jenga > (but switching an entire project to a different build system is a daunting > task, of course). > > > Alain