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 mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id D66377FB82 for ; Tue, 1 Mar 2016 02:00:39 +0100 (CET) IronPort-PHdr: 9a23:UpB/cBwR7TwdcWnXCy+O+j09IxM/srCxBDY+r6Qd0e0eIJqq85mqBkHD//Il1AaPBtWErawVwLGO+4nbGkU+or+5+EgYd5JNUxJXwe43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6anHS+4HYoFwnlMkItf6KuStGU0ZX8jLj60qaQSjsLrQL1Wal1IhSyoFeZnegtqqwmFJwMzADUqGBDYeVcyDAgD1uSmxHh+pX4p8Y7oGx48sgs/M9YUKj8Y79wDfkBVGxnYCgJ45jCswXES0Ol73AcU2NexhNOHxLC6hvzVZfwtAP1s+N83G+ROsigHp4uXjH3zbptUxjuh28jNnZt9GPMzMB5lqFVoQmhjxN6yo/QJoqSMawtLevmYdoGSD8ZDY5qXCtbD9b5NtNXAg== Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=ljs.darkfish@gmail.com; spf=Pass smtp.mailfrom=ljs.darkfish@gmail.com; spf=None smtp.helo=postmaster@mail-pa0-f52.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of ljs.darkfish@gmail.com) identity=pra; client-ip=209.85.220.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="ljs.darkfish@gmail.com"; x-sender="ljs.darkfish@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of ljs.darkfish@gmail.com designates 209.85.220.52 as permitted sender) identity=mailfrom; client-ip=209.85.220.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="ljs.darkfish@gmail.com"; x-sender="ljs.darkfish@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-pa0-f52.google.com) identity=helo; client-ip=209.85.220.52; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="ljs.darkfish@gmail.com"; x-sender="postmaster@mail-pa0-f52.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0DTAQBn6dRWeTTcVdFehAxeDwaEOKY0j3sBDYFnHYV2AoEzBzgUAQEBAQEBAQEQAQEJCwwIIS9BDgGBXYIUAQEBAwESER0BGx0BAwELBgULAwoqAgIhAQERAQUBHAYTIodnAQMKCA6jLYExPjGLNIFpgleFMwoZJw1Rg3ABAQEBAQEEAQEBAQEBARMBAgMGBASJQX2COoFjRYJTgToFjh+EVoQXhVmGFYF0gV5Lhx6FLYcGhgYRHoEPDw8BAYI4gg8bLoZngWUBAQE X-IPAS-Result: A0DTAQBn6dRWeTTcVdFehAxeDwaEOKY0j3sBDYFnHYV2AoEzBzgUAQEBAQEBAQEQAQEJCwwIIS9BDgGBXYIUAQEBAwESER0BGx0BAwELBgULAwoqAgIhAQERAQUBHAYTIodnAQMKCA6jLYExPjGLNIFpgleFMwoZJw1Rg3ABAQEBAQEEAQEBAQEBARMBAgMGBASJQX2COoFjRYJTgToFjh+EVoQXhVmGFYF0gV5Lhx6FLYcGhgYRHoEPDw8BAYI4gg8bLoZngWUBAQE X-IronPort-AV: E=Sophos;i="5.22,521,1449529200"; d="scan'208,217";a="166405996" Received: from mail-pa0-f52.google.com ([209.85.220.52]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 01 Mar 2016 02:00:21 +0100 Received: by mail-pa0-f52.google.com with SMTP id fl4so101383033pad.0 for ; Mon, 29 Feb 2016 17:00:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=4EuVGT2rOblRTzyvdOunPDankDwf2OLqzUuD5OxnAqU=; b=bEX+uI7nfUOZruiP74zJcCuTti9jlW2HOoni0ViI2UfArKaoPkYLUh23TBFS3iqjfO dWn60azrK03b9SVsQRnQvV90abhg1uFL7/bc/jPxflHUgN2fSfR8XpXzsFJV8/YHkjEe IAWH7ip/i5/9bXVL2eB2lp0Qy1xUKVKZkCeO2cyoXtGkuS2NJnyro3to3peQuuCNiD05 cu5OuT+U6cb/DCU10+6GqOHLah2oqxebK+FxNglmJcjruIXR5evTE0BMH6/VkG8cH2v2 vJ2ONf2OuszXSyCCPqLSP3Q9wMn+K9aBGKCvlC/vaaNtLbIsnkqHCq5HtUW2sAmMI7wM 5Cbg== 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; bh=4EuVGT2rOblRTzyvdOunPDankDwf2OLqzUuD5OxnAqU=; b=TY3Fxu6FeNWD8SpiGXyDVhr6NVCl5/HOl8bGrWRyKuGmwaSNXfFvV5Zc71TfByXsOw jQwF8447lbjsLakvhLxhsExfETqwOla5NjjGASrfWdxIExig7Q/ZhIBM6HcWVirkYsVN DKWZyTkGzm3lvra7AalZvqsYI1KfPCz9cqsSNfXERi4WXyp/trO0cmMd4f6OE7e6p6AJ /LxW1XDDJxZSexfel53s2ceXRkRwV5RqKSyh1v57DqpnOVCkybN+ST35YrouquGON1YN 6JmY6MtZgeIM8Oln5SAO0+SLeiCF4m5u7esq0ZxhuXOQij9zFa5a68u0Vux8BeVzkGhC qVDg== X-Gm-Message-State: AD7BkJJ7BYiwrunF1r86vR9Oahmi1ulXclI98TTqdWYLVYH9evIAB1ADr9xmuXpyMPic0GyjCpfXwt1zxLxqxg== MIME-Version: 1.0 X-Received: by 10.66.100.196 with SMTP id fa4mr26376833pab.37.1456794020082; Mon, 29 Feb 2016 17:00:20 -0800 (PST) Received: by 10.66.2.167 with HTTP; Mon, 29 Feb 2016 17:00:20 -0800 (PST) In-Reply-To: <4C6ACEE0-9F61-431D-8FD1-1FE88E5142FA@gmail.com> References: <4C6ACEE0-9F61-431D-8FD1-1FE88E5142FA@gmail.com> Date: Mon, 29 Feb 2016 17:00:20 -0800 Message-ID: From: Junsong Li To: Anton Bachin Cc: Ivan Gotovchits , OCaml users Content-Type: multipart/alternative; boundary=047d7bd9087e13f934052cf24a76 Subject: Re: [Caml-list] =?UTF-8?Q?=5BANN=5D_Namespaces_=E2=80=93_sensible?= =?UTF-8?Q?_file_naming_for_OCaml_projects?= --047d7bd9087e13f934052cf24a76 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I don't think that would be a problem. You can always configure Merlin to read the directory that you want it to read, right? On Monday, February 29, 2016, Anton Bachin wrote: > Thanks Arto, Ivan. > > The question about Merlin is a good one. I better start using Merlin > myself, because I don=E2=80=99t know the answer. I suppose if Merlin reads > things from src/ (or lib/, or whatever) in a project, then it shouldn=E2= =80=99t > work. But if Merlin reads from _build/, as I would think it does, then > it =E2=80=9Cshould" work. But I don=E2=80=99t know either way at the mome= nt. It will > probably take some time for me to set Merlin up, but I will look into > it. > > Best, > Anton > > On Feb 29, 2016, at 12:37, Ivan Gotovchits > wrote: > > > Hi Anton! > > It is a great project! > > But nowadays I always want to know, does it work with merlin? > > Regards, > Ivan > > On Mon, Feb 29, 2016 at 11:40 AM, Anton Bachin > wrote: > >> Hello, >> >> I would like to announce the release of Namespaces, an Ocamlbuild plugin >> that >> gives your project logical nested modules based on its directory layout, >> as is >> common in the build systems of many other languages. >> >> So, src/server/foo.ml becomes Server.Foo, and src/client/foo.ml becomes >> Client.Foo. There is no conflict between the two foo.ml files, and thus >> no need >> to call them server_foo.ml and client_foo.ml. >> >> The project page and documentation can be found here: >> >> https://github.com/aantron/namespaces >> >> Namespaces works, but it abuses Ocamlbuild heavily, so there may be many >> corner >> cases that are not yet addressed well. Bug reports are very much welcome. >> If >> something can=E2=80=99t be fixed by changing Namespaces, perhaps Namespa= ces will >> be a >> good point of discussion for updating Ocamlbuild itself, or other OCaml >> tooling. >> >> >> Regards and enjoy, >> Anton >> >> >> P.S. How is Ocamlbuild spelled? I have seen it as Ocamlbuild, OCamlbuild >> (which >> stands to reason), and ocamlbuild in monospace font, in the original >> manual. >> > > > --047d7bd9087e13f934052cf24a76 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I don't think that would be a=C2=A0problem.=C2=A0You can a= lways configure Merlin to read the directory that you want it to read, righ= t?=C2=A0

On Monday, February 29, 2016, Anton Bachin <antronbachin@gmail.com> wrote:
Th= anks Arto, Ivan.

The question about Merlin is a go= od one. I better start using Merlin
myself, because I don=E2=80= =99t know the answer. I suppose if Merlin reads
things from src/ = (or lib/, or whatever) in a project, then it shouldn=E2=80=99t
wo= rk. But if Merlin reads from _build/, as I would think it does, then
<= div>it =E2=80=9Cshould" work. But I don=E2=80=99t know either way at t= he moment. It will
probably take some time for me to set Merlin u= p, but I will look into
it.

Best,
<= div>Anton

On Feb 29, 201= 6, at 12:37, Ivan Gotovchits <ivg@ieee.org> wrote= :


Hi Anton!
It is a great project!

But nowadays I always wan= t to know, does it work with merlin?

Regards,
Ivan

On Mon, Feb 29, 2016 at 11:40 AM, Anton Bachin <<= a href=3D"javascript:_e(%7B%7D,'cvml','antronbachin@gmail.com&#= 39;);" target=3D"_blank">antronbachin@gmail.com> wrote:
Hello= ,

I would like to announce the release of Nam= espaces, an Ocamlbuild plugin that
gives your project logical nes= ted modules based on its directory layout, as is
common in the bu= ild systems of many other languages.

So, src= /server/foo.ml becomes Ser= ver.Foo, and src/client/foo.ml= becomes
Client.Foo. There is no conflict between the two foo.ml files, and thus no nee= d
to call them server_foo.ml and client_foo.ml.

The project page and documenta= tion can be found here:


Namespaces works, but it abuses Oc= amlbuild heavily, so there may be many corner
cases that are not = yet addressed well. Bug reports are very much welcome. If
somethi= ng can=E2=80=99t be fixed by changing Namespaces, perhaps Namespaces will b= e a
good point of discussion for updating Ocamlbuild itself, or o= ther OCaml tooling.


Regards and enj= oy,
Anton


P.S. How i= s Ocamlbuild spelled? I have seen it as Ocamlbuild, OCamlbuild (which
=
stands to reason), and ocamlbuild in monospace font, in the original m= anual.


--047d7bd9087e13f934052cf24a76--