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 4B10580142 for ; Fri, 19 May 2017 12:16:59 +0200 (CEST) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=mshinwell@janestreet.com; spf=Pass smtp.mailfrom=mshinwell@janestreet.com; spf=None smtp.helo=postmaster@mxout3.mail.janestreet.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of mshinwell@janestreet.com) identity=pra; client-ip=38.105.200.229; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="mshinwell@janestreet.com"; x-sender="mshinwell@janestreet.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of mshinwell@janestreet.com designates 38.105.200.229 as permitted sender) identity=mailfrom; client-ip=38.105.200.229; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="mshinwell@janestreet.com"; x-sender="mshinwell@janestreet.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@mxout3.mail.janestreet.com) identity=helo; client-ip=38.105.200.229; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="mshinwell@janestreet.com"; x-sender="postmaster@mxout3.mail.janestreet.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3AKOSRPBfnesOi7Kd840OM5ReklGMj4u6mDksu8pMi?= =?us-ascii?q?zoh2WeGdxcS9YB7h7PlgxGXEQZ/co6odzbGH7ea9BiRAuc/H6yFdNsQUFlcsso?= =?us-ascii?q?Y/oU8JOI2/NQXDNvnkbig3ToxpdWRO2DWFC3VTA9v0fFbIo3e/vnY4ExT7Mhdp?= =?us-ascii?q?dKyuQtaBx8u42Pqv9JLNfg5GmCSyYa9oLBWxsA7dqtQajZFsJ6s1yxbFuHtFdu?= =?us-ascii?q?ZLzm9sOV6fggzw68m08ZNh6Shcp+4t+8tdWqjmYqo0SqBVAzshP20p/sPnsgXN?= =?us-ascii?q?QxWS7XUGSGUWlRRIAwnB7B7kW5r6rzX3uOlg1iSEJMP6Vb87Vyis4KdtUx/olT?= =?us-ascii?q?wINyUl/2HNi8x/l7xUrRS8rBFi2YHUYYWVNP1jfqPBeN4RWGRMUtpNWyFHH4ix?= =?us-ascii?q?aZYEAegcMuZCt4TypVUOoxuwCwevGe3h1CNHi2Tq3aEmyektDR3K0BAiEt8IrX?= =?us-ascii?q?/arM/1NKAXUe2ty6fH1y/Db/BL0jng6IjIcxYhoP+SUrJ0dcra1E4iFwbejlWQ?= =?us-ascii?q?qIzlOT2U2foJs2if9OdgV/igi2g5pAFqvjiv3NkjhZfVho4P1l/E8iB5zZ8zKN?= =?us-ascii?q?alRkB7ZtukH4FRtyGcL4Z2TcIiQ31ouCYn0bIKo4K0fC8PyJkh2hXRaOSHfpCG?= =?us-ascii?q?7x/gTuqdPCt0iXJ/dL6hmxq+7VKsxvPiWsSwyFpGsDZJn93Wun0O1xHf8NWLRu?= =?us-ascii?q?V+80u7xDqC0wPe5+dZKk4uj6XbMYQuwrsom5oTr0vDGij2lV3zjK6ZcUUk5/So?= =?us-ascii?q?5ur9brXjvJCcNot0hhv8Mqs0nMywH/84MhQUX2eF5+u8yKfv8lH+QLVPlvE2k6?= =?us-ascii?q?/Zv47GJckDqKO0ABVZ3ps/5xu/FTuqzsgUkWUdIF5bZh6Ki5DlO1TUL/D5Cfe/?= =?us-ascii?q?jU6skDBux/3eO73hGZXNLnnFkLbvY7l970pcxRExzd9F4ZJbFKoBIO7pWkDvqt?= =?us-ascii?q?PYEgU1PBCzw+biENl9zJ8RWXqTAq+FN6PfqUOH6fgqI+mIfYMVvDf9K+M55/P1?= =?us-ascii?q?ln84mVodfbGz0pcNaXC4GO5mI0SDbnb2jNcBCzRCgg1rcOvvwGeDXTFeLyKuWK?= =?us-ascii?q?d65HchCY6pAMTHR5uxqLOG2yi/E5hfZ2QAAVeJRyTGbYKBDtIFciHaGc9glCMJ?= =?us-ascii?q?UbzpH4o61RCoqwL+z5JlJ+zZ4TECuJ//ktNy4ruAxlkJ6TVoApHFgCm2RGZukz?= =?us-ascii?q?ZQSg=3D=3D?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0BmAgAWxR5ZfeXIaSZcHAEBBAEBCgEBF?= =?us-ascii?q?wEBBAEBCgEBhAyBDAeDZ5wIlXaCDyiFfAKFbwdAFwEBAQEBAQEBAQEBEgEBCRY?= =?us-ascii?q?IV4IzIoJEAQIDIx0BATcBDwsLDQICJgICIhIBBQEcBhOKDAMVAwuiZD+LHWqCJ?= =?us-ascii?q?oMJAQEFhCYNg1oBAQEBAQEEAQEBAQEBARkDBRJ5hVSEeYJUhSGCYJAtjW2HHYt?= =?us-ascii?q?/gWyJGIZqkn4UH4EVIQGBP08hWxkGhEmCD3UBiRsBAQE?= X-IPAS-Result: =?us-ascii?q?A0BmAgAWxR5ZfeXIaSZcHAEBBAEBCgEBFwEBBAEBCgEBhAy?= =?us-ascii?q?BDAeDZ5wIlXaCDyiFfAKFbwdAFwEBAQEBAQEBAQEBEgEBCRYIV4IzIoJEAQIDI?= =?us-ascii?q?x0BATcBDwsLDQICJgICIhIBBQEcBhOKDAMVAwuiZD+LHWqCJoMJAQEFhCYNg1o?= =?us-ascii?q?BAQEBAQEEAQEBAQEBARkDBRJ5hVSEeYJUhSGCYJAtjW2HHYt/gWyJGIZqkn4UH?= =?us-ascii?q?4EVIQGBP08hWxkGhEmCD3UBiRsBAQE?= X-IronPort-AV: E=Sophos;i="5.38,363,1491256800"; d="scan'208";a="224203417" Received: from mxout3.mail.janestreet.com ([38.105.200.229]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 19 May 2017 12:16:58 +0200 Received: from [172.27.56.68] (helo=tot-qpr-mailcore1) by mxout3.mail.janestreet.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.89) (envelope-from ) id 1dBexr-0001u8-Q2 for caml-list@inria.fr; Fri, 19 May 2017 06:16:55 -0400 X-JS-Flow: external X-JS-Scanner-attachment: (ok) No attachments Received: by tot-qpr-mailcore1 with ocaml/mailcore/mailcore 1.0+90 (160ed8e8fef2) (envelope-from ) id BZHsYX-ARHlVw-Yx; 2017-05-19 06:16:55.796289-04:00 Received: from mail-wr0-f198.google.com ([209.85.128.198]) by mxgoog1.mail.janestreet.com with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.89) (envelope-from ) id 1dBexr-0003bw-Od for caml-list@inria.fr; Fri, 19 May 2017 06:16:55 -0400 Received: by mail-wr0-f198.google.com with SMTP id y22so4251057wry.1 for ; Fri, 19 May 2017 03:16:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=janestreet.com; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=OQf4uFcWowj0y7BHEWv02E/GfoXq5jQp40yCUoUJsRY=; b=EA0zJ1ENxJ7NgwD0bJ6FHbBzsXnukxFBoNTgsG5eXr/+p/1K87uUcNoTHq8M354omE zv69jeeSqy06Cb/cn8Vib7SylGHZwCPZPz4hmV3WXN6wfThna6f375xL1q5P5n9XZobP AfciUs05rbNsFDOobUsI6R1IEgUQXUtR8ci+0= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=OQf4uFcWowj0y7BHEWv02E/GfoXq5jQp40yCUoUJsRY=; b=MIR/C/49uUbr9xTPomx1P9lnxR3W8tksBpW8vzdtCdAi9STkSsjFhW56XpL3sn+ff+ dB6QpzV7ZnycVKoF5igJHR7DueSqnNoK/5fEFOkZGyccgpapw/jFAmMPYBu6tchRDQi5 GaHlhfH/kCLlXKj8FE6BF7MqJvA/cc2C/r4H9t9gzCNKTDhFbqeNA4xmElrvmXhrPSoL 4dU0MUg8Igw5AmxTouqQZcpD4hC8oYUpy0p3aCm/EGidBKyMxYJC5fSFZf4QN9vWZ7ve tKD18EM42AFRX45aKbECbOqJjAi2ZE2ykqsIy/dkWC+8ZdwEjEepTyMDHrp+aB4oXmok EDXw== X-Gm-Message-State: AODbwcBMylT1G6OMRxCMO78YElknr6NjnpHL7Q/jmjEzxpgqdHmhnLGw abrE2qwVS3nP9UeDcF8bo8/GYpR1Bpq9CbZMuhjnY/5aRd+W0YGYhD9KFlpfTNylh5jEEVrATe9 iJwUDkgpj92iuoWja X-Received: by 10.223.165.5 with SMTP id i5mr2829716wrb.197.1495189015008; Fri, 19 May 2017 03:16:55 -0700 (PDT) X-Received: by 10.223.165.5 with SMTP id i5mr2829702wrb.197.1495189014870; Fri, 19 May 2017 03:16:54 -0700 (PDT) MIME-Version: 1.0 Received: by 10.223.155.209 with HTTP; Fri, 19 May 2017 03:16:54 -0700 (PDT) In-Reply-To: References: From:Mark Shinwell Date: Fri, 19 May 2017 11:16:54 +0100 Message-ID: To:Tom Ridge Cc:caml-list Content-Type: text/plain; charset="UTF-8" X-JS-Exim-Data-Received: 2017-05-19 06:16:55-0400 X-JS-Processed-by: mailcore X-Validation-by: mshinwell@janestreet.com Subject: Re: [Caml-list] Best practices for avoiding global module name clashes? Well, this is one option for building libraries without packs and without clashes (not to mention building things fast): https://github.com/janestreet/jbuilder (See the manual under the "library" stanza, for example. Module aliases and various renamings are used to avoid packs.) Mark On 19 May 2017 at 11:01, Tom Ridge wrote: > Many projects include modules named "Prelude" "Monad" etc etc. > > What is the current best practice to avoid clashes? Prefix with some short > string related to the library name? I don't really want to use packing. > > Thanks