220 41226 <CAFk2RUax+i_chjCLEfb7HGitaOtdMSmSmoot4ZTybT_58=4VTQ@mail.gmail.com> article
Path: news.gmane.org!.POSTED!not-for-mail
From: Ville Voutilainen <ville.voutilainen@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Modules and preambule, just why?
Date: Thu, 6 Dec 2018 00:04:01 +0200
Lines: 36
Approved: news@gmane.org
Message-ID: <CAFk2RUax+i_chjCLEfb7HGitaOtdMSmSmoot4ZTybT_58=4VTQ@mail.gmail.com>
References: <e3f7a8a5-8e78-49f5-97df-139951f5d07a@isocpp.org>
 <CAOU91OPMe-0PU7zEfKKPSQNMwtaf8cw+q24XAes9pZTJqPGrcg@mail.gmail.com>
 <16989401-2f0d-4200-997e-0ac60b47bec3@isocpp.org> <CAOU91ONR5v9ujCaM5Riu5Dc39cejV4VcMEdieF3O6b_edy+Y7g@mail.gmail.com>
 <a8310d69-20cb-48ba-8a8e-c62c09d4cd94@isocpp.org> <CAFk2RUaoP3h62RX10FfFv3ttyt1he96KJ_R_m=M7UA8=bf0O3A@mail.gmail.com>
 <08290107-c63b-3ef6-09d4-16c7b6c495ab@honermann.net>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: text/plain; charset="UTF-8"
X-Trace: blaine.gmane.org 1544047329 26360 195.159.176.226 (5 Dec 2018 22:02:09 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Wed, 5 Dec 2018 22:02:09 +0000 (UTC)
Cc: "ISO C++ Standard - Future Proposals" <std-proposals@isocpp.org>
To: Tom Honermann <tom@honermann.net>
Original-X-From: std-proposals+bncBC5JHI7A7ALRBXMWUHQAKGQEQYXX7DA@isocpp.org Wed Dec 05 23:02:04 2018
Return-path: <std-proposals+bncBC5JHI7A7ALRBXMWUHQAKGQEQYXX7DA@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-oi1-f200.google.com ([209.85.167.200])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBC5JHI7A7ALRBXMWUHQAKGQEQYXX7DA@isocpp.org>)
	id 1gUfF5-0006hL-N3
	for gclcip-std-proposals@m.gmane.org; Wed, 05 Dec 2018 23:02:03 +0100
Original-Received: by mail-oi1-f200.google.com with SMTP id d7sf13139534oif.5
        for <gclcip-std-proposals@m.gmane.org>; Wed, 05 Dec 2018 14:04:14 -0800 (PST)
ARC-Seal: i=2; a=rsa-sha256; t=1544047454; cv=pass;
        d=google.com; s=arc-20160816;
        b=DMxsT0JVVwRO0fIAXfJyYD8aBM42hOlspVtWMc5urRlt1fyQ+6vLWy/ikpSEuCT2WR
         RQTTwXZgqrG+FfNF1zhYyBr9+GgMqO6DEZqTylOdJguf+UKkwusat7jOGDRRb1QvLrrh
         cznK7F2Z224revPS3Yb/CElTH/TFIeVF9e/cEfTMGaC2ipPBOjZ7ZJ7f9NeyM7IGZwJN
         rJznLGfQD7phc12220/rIaZOEhJ8dptWYgDmtiHiZlTmGKnLmuPSWte3xEp1WugD3/Hs
         uXsmsQbgkOU9zkcDn0W6koqvwmt5NzGbEWfT2hj1zt/tkSujHxmQRoMB1ZOTf7BUd0vu
         dW3w==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to:cc:to:subject:message-id
         :date:from:in-reply-to:references:mime-version:dkim-signature;
        bh=s4kDHtVoQSOlkinCjzJgaeICBf0HUg3qnWK2zTmixbE=;
        b=NkMXqKKUH4vP8vE+HyursIJRrZLk0Y5NlVrld0xYoLaYa+SMRVeWuX5xFXpU1qq6Rz
         mHD07Yfavt+B5NPHP/4MTyedeokHaF7S6qwv+lZAvbaCpnW4ANWdgt9D1ApPJwutACh3
         Hy350rkBAPJhG2ByumvqPgXr9A0WnenosRmMdR9rJokVs7V8r6/XWFs8+7niJS2nAA0j
         FI8DVleoDYA93oxtZpL9EtJJgbE1mQFsQQhEoCkLi/raM+xCPTAF+QFVuldmGGgjBCbF
         rXDkUk7ipThKBX6H9ZwIfj7ZvOdL9JP66TjM8y9tpeCm6Gh62clVOHxd6mo+OmTsmeO6
         bH6w==
ARC-Authentication-Results: i=2; mx.google.com;
       dkim=pass header.i=@gmail.com header.s=20161025 header.b=Ha+iC2aW;
       spf=pass (google.com: domain of ville.voutilainen@gmail.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=ville.voutilainen@gmail.com;
       dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=mime-version:references:in-reply-to:from:date:message-id:subject:to
         :cc:x-original-sender:x-original-authentication-results:reply-to
         :precedence:mailing-list:list-id:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=s4kDHtVoQSOlkinCjzJgaeICBf0HUg3qnWK2zTmixbE=;
        b=0PlpV1X1JXUQOLHOxFm8A89Z0/EzfS93LM7kSY3ZLGrsmyxG4nWvpz492LA7bouGop
         4JbP9GXIkhIYKBeByTSjJcNbTf3vThtUPL+jQS2kAdkMJ1w/lZz+iz7onkoxbP879Ke0
         eW99uX8iiwtday2LECrMeKxsSWeaGHbKnKHeF1R+hceqm5puOyGAFp9tW/4QxV0bPKfM
         mEoGAZ+D2JFneIclxpotFKyLNDy0MqxrhNrcbQYesE8VgC2k5dX7ap+qSNXQE3DqvD0l
         qT2DF2rAqY2xyYmIrhh/ipdKLARdlQDsNFUOlxGMqlWpJiBEqnuus2ond4aYR85RTKhe
         9itg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:references:in-reply-to:from:date
         :message-id:subject:to:cc:x-original-sender
         :x-original-authentication-results:reply-to:precedence:mailing-list
         :list-id:x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=s4kDHtVoQSOlkinCjzJgaeICBf0HUg3qnWK2zTmixbE=;
        b=sFLuXGY3WEpkUkCLnQ++VZvl5blWMC9H3rafI/63vVmdp7H9Hdd3F5PUeRAESUiDmc
         Gwj5PIWqrOg43+lmh+71to4fm9dNp4pgXQXNDTvYGt349AMVOFVYf6ZMz63hOydY63eK
         nbKGUK1xXMI3BkBVdzH9HTQLTdzelQkg6jmPc6YO1ZDK7JLvSypWdumJhJUh3SaoRIVv
         zw6mLVH0gRDwls9h8VRdsw88Vb9zEvWLa9tzrcMx/RYsRvrb5V9UK5yIa4Ny4cIlqPWm
         l0bsKicbCZ8WDBhkpxp7LhdCtelVeU2sZT5Zd/7rFPq3JW/kRPkGIIlmNiPW6L/PejvH
         TQKg==
X-Gm-Message-State: AA+aEWYGbyKSuhF/MEoZcrDuiUg5et2RK51AhRGTK4FNzo1cKuq2IPzx
	F/qZ5vPAcf802wWX5QudgH7apw==
X-Google-Smtp-Source: AFSGD/U7JJMoHKJMBOgSWihsS7OQRIJxkSOgfPWf7UeV54Cq188oCtlg6clTVK9i+FqT1YEUJzyRmA==
X-Received: by 2002:aca:aa53:: with SMTP id t80mr21640226oie.22.1544047454151;
        Wed, 05 Dec 2018 14:04:14 -0800 (PST)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 2002:aca:4387:: with SMTP id q129ls140889oia.2.gmail; Wed, 05 Dec
 2018 14:04:13 -0800 (PST)
X-Received: by 2002:aca:ad8f:: with SMTP id w137mr14944822oie.38.1544047453154;
        Wed, 05 Dec 2018 14:04:13 -0800 (PST)
ARC-Seal: i=1; a=rsa-sha256; t=1544047453; cv=none;
        d=google.com; s=arc-20160816;
        b=sYIZE0eaFX/SiI/5Gb8XvR1wVZ+j45v648NUXvnDRaR5y6pherE8R0F9gOQvxrBbbZ
         o74jzZyNIsrG12k2kthG3y1BAlgMuNh3vtzlyRCYk7obddVeMKmOws+vsCxv9nPqyEGj
         As+cpqTmCjnh2e2mZdjwKnsioIKzS4OTLTk8q7eBdEZwGt5tu4Yj0Ww6oMFqoXxbVrNk
         HOwxBJeoeCl1IUYVaTtXKSScxQV18DGuJBxJffs44sb1oQ8QjDKUDyuAv+mByfUNvV8j
         74PNt+VcYjQQ+OfhDL9af5hZoUOC7aw3lRlgN5dQqpJxvYMqF7nioYClWVwZQPQowXT5
         mKOg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=cc:to:subject:message-id:date:from:in-reply-to:references
         :mime-version:dkim-signature;
        bh=YRnJplhqFJt5AElpLCVxUCnrLohygO6EVsl9YXPqoCI=;
        b=SgJjz+vkWbmQSim669QUSn3rbX3l852YngFReEXhd6aAzTDhqRXT1L/2nNecYclwIB
         l8DeVBMMZ0T8Ty/OJbqR1dqJrZgMLyLgGLoR62dHg0kbEHmMV1rBSaGEll4e+NVjtSiv
         QNxFMRJUqVyHIzYPELjMZBmCjlnkvZGusKLuZ1IAmxUMQzKwHprJh35wff66mAJmUF5G
         Wd2tRZpJKiMjEcimsTmFvf98xnQzADAfz+ohy8oNF6xSgPPVrvEpaoASpyRJObYuV879
         EEuWQiSuiOPfLqLaFPlJR81t0fYsj+2MFdRjJKS1GbqtE25dKSC2UnyxAJSfeLsENylH
         ZKtA==
ARC-Authentication-Results: i=1; mx.google.com;
       dkim=pass header.i=@gmail.com header.s=20161025 header.b=Ha+iC2aW;
       spf=pass (google.com: domain of ville.voutilainen@gmail.com designates 209.85.220.41 as permitted sender) smtp.mailfrom=ville.voutilainen@gmail.com;
       dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com
Original-Received: from mail-sor-f41.google.com (mail-sor-f41.google.com. [209.85.220.41])
        by mx.google.com with SMTPS id j99sor11462646otj.165.2018.12.05.14.04.13
        for <std-proposals@isocpp.org>
        (Google Transport Security);
        Wed, 05 Dec 2018 14:04:13 -0800 (PST)
Received-SPF: pass (google.com: domain of ville.voutilainen@gmail.com designates 209.85.220.41 as permitted sender) client-ip=209.85.220.41;
X-Received: by 2002:a05:6830:14d6:: with SMTP id t22mr15522146otq.146.1544047452882;
 Wed, 05 Dec 2018 14:04:12 -0800 (PST)
In-Reply-To: <08290107-c63b-3ef6-09d4-16c7b6c495ab@honermann.net>
X-Original-Sender: ville.voutilainen@gmail.com
X-Original-Authentication-Results: mx.google.com;       dkim=pass
 header.i=@gmail.com header.s=20161025 header.b=Ha+iC2aW;       spf=pass
 (google.com: domain of ville.voutilainen@gmail.com designates 209.85.220.41
 as permitted sender) smtp.mailfrom=ville.voutilainen@gmail.com;
       dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Spam-Checked-In-Group: std-proposals@isocpp.org
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:41226
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/41226>

On Wed, 5 Dec 2018 at 23:43, Tom Honermann <tom@honermann.net> wrote:
>
> On 12/5/18 2:01 PM, Ville Voutilainen wrote:
> > On Wed, 5 Dec 2018 at 20:47, <masse.nicolas@gmail.com> wrote:
> >> After reading your answer and thinking about it in the last days, I thing I understand things a bit better now.
> >> First I understand that module are far less related to the linking problem than I first tough.
> >> Also, I think I better understand how they will actually work in real world application.
> >>
> >> Still, one question remains for me:
> >> If for example you wanna ship a library.
> >> As of today, you generally with the library the headers so that people using the library will be able to compile their code and make use of the library you made.
> >> But how does it work if you wanna use modules? do you ship a module file together with the lib? And if so, how do you intend to generate this module file?
> > Yes, you ship the module interface with your lib. You compile the
> > module for the target implementation you want to support.
>
> To be clear, I believe Ville means that you ship the module interface
> unit source code (not a binary module artifact as they are not portable)
> and you link any object files produced by compiling the module interface
> unit in your compiled library for your supported platforms.


I think I mean that you have the choice of shipping 0-N module
interface artifacts and/or the source code.
Good catch, though, Tom. However, I think the "you compile the module
for the target implementation you
want to support" is 60% correct. (Yeah, I pulled that 60% number out
of my sleeve, it doesn't really mean anything).
For the remaining 40% (the number is, again, completely artificial),
you might want to ship something else, for example the source code.

-- 
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFk2RUax%2Bi_chjCLEfb7HGitaOtdMSmSmoot4ZTybT_58%3D4VTQ%40mail.gmail.com.

.
