220 41093 <e3f7a8a5-8e78-49f5-97df-139951f5d07a@isocpp.org> article
Path: news.gmane.org!.POSTED!not-for-mail
From: masse.nicolas@gmail.com
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Modules and preambule, just why?
Date: Tue, 27 Nov 2018 13:10:29 -0800 (PST)
Lines: 81
Approved: news@gmane.org
Message-ID: <e3f7a8a5-8e78-49f5-97df-139951f5d07a@isocpp.org>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_2100_593798603.1543353029210"
X-Trace: blaine.gmane.org 1543352906 31799 195.159.176.226 (27 Nov 2018 21:08:26 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Tue, 27 Nov 2018 21:08:26 +0000 (UTC)
To: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBCCJBHV4UALBBRXF63PQKGQEQYGJ6SI@isocpp.org Tue Nov 27 22:08:22 2018
Return-path: <std-proposals+bncBCCJBHV4UALBBRXF63PQKGQEQYGJ6SI@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-yw1-f71.google.com ([209.85.161.71])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBCCJBHV4UALBBRXF63PQKGQEQYGJ6SI@isocpp.org>)
	id 1gRkai-000871-SM
	for gclcip-std-proposals@m.gmane.org; Tue, 27 Nov 2018 22:08:21 +0100
Original-Received: by mail-yw1-f71.google.com with SMTP id t17sf8366548ywc.23
        for <gclcip-std-proposals@m.gmane.org>; Tue, 27 Nov 2018 13:10:31 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=date:from:to:message-id:subject:mime-version:x-original-sender
         :reply-to:precedence:mailing-list:list-id:list-post:list-help
         :list-archive:list-subscribe:list-unsubscribe;
        bh=WtUrsswgya3k+k4fJMl8+dv6HUYYQmpC/ajnTV32Ok4=;
        b=uW1hsoN4SAyeNBzRyYa9xKWItYiWc+Mc6ju9WJ/IQX2nZbym35Z8hRqOWIinB7Jeiu
         R8/aLy3+xvR289FUE/AcqCMkcAEkSIv0O234NX0gEOIgVH70+naXN38C+rcc6zo1yyxT
         7JqqXW2pl73OG3hL+d7osOzY5HgK+33bADWS6dhd0y7MkL3Bbls0Fep1hZ0jiW3fxvMQ
         9BskDmoWU9DGJ0skoI4ARnVhIEF+frTUBg27s6DIYZUfpUgZdzLoQvNtkm6ss6nFHkBB
         z3piYiNYMcM/7BjtjNu4Wl7HCU8m5/PLEORZEIS+MdDy0ISOJLlGLnb4SmuV2HxdtLrg
         zNyw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=date:from:to:message-id:subject:mime-version:x-original-sender
         :reply-to:precedence:mailing-list:list-id:list-post:list-help
         :list-archive:list-subscribe:list-unsubscribe;
        bh=WtUrsswgya3k+k4fJMl8+dv6HUYYQmpC/ajnTV32Ok4=;
        b=tKx1ZXdWPYhXWOwckbcRwf/eVBpP2hCMKjJvdwF+EMiCIoit/Z1cxNIwKTaXhki+EL
         Qa1Nohwe0VWtqwB/TvY5nY0qaYPJEdONWmypzTuw4a8/eDRmkaum6y/K7fSUtUBThtTd
         rVx4QB8GFx2SVEi0mhXuVtCRLiGCmOueBiQeUHZog0bEKVDIZ9O4XsEhuuCe4ZeCKbv+
         RpFCIPjkXDjccCZJAUq6l+5Wt9aTpzEZXBI176enwG3Ih0SdKpiBu2mtAqSThNlvVmOt
         w76lC+gzvNlzMkf7hcfThUffTR2tEW69sJR0W8DsytipVkZrETLW92MBBAiWK5DZVijA
         E6xA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:message-id:subject:mime-version
         :x-original-sender:reply-to:precedence:mailing-list:list-id
         :x-spam-checked-in-group:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=WtUrsswgya3k+k4fJMl8+dv6HUYYQmpC/ajnTV32Ok4=;
        b=EgCP643jJ/6uwYWNxieklpdPHylCrbr2pL6GhuKzhXgfu/relCvXN7F3uXPDzK8EU9
         MC+Nb8te9LfI/N9UpV++fMGTmaG9kxOdJZfPV/uVVGmZJ6KpEzYxWJ+hRrx36RKGNxFB
         LQP0ta+lvVbSYmWZ2FTMyL6T89Dfw4Xzg7KLLkJjtCa7+5w5eJ6vFeXhxcvzZHQbrrJm
         zm5K8ugAyuPvM0t7RTgkx623QXP1MA/8QbAv4CtFTOoPAGjl0UNz/ZhcivfqTZi7/Gil
         IOyPcEpJFU5re6bbRwGFh0Qk/2a41XAXagnY282PJjr+NbNsg5xfwXuGYRAsKmInY5C5
         kxJQ==
X-Gm-Message-State: AA+aEWZrIgIUF7GL+lwZffctPEFBBfcdSEXHJHF7UHB7QYP0SByasT3a
	IltyddvEaoxzn/2Hxjffty13zw==
X-Google-Smtp-Source: AFSGD/WT4savrGoUGsy+XKmsEeFyV7ov6JwTJRNTc1BnNBIf7XmBaqW9CL6XlfDSmba81CajVxkijQ==
X-Received: by 2002:a81:3604:: with SMTP id d4mr1374819ywa.25.1543353031269;
        Tue, 27 Nov 2018 13:10:31 -0800 (PST)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 2002:a0d:d3c3:: with SMTP id v186-v6ls14750219ywd.9.gmail; Tue,
 27 Nov 2018 13:10:30 -0800 (PST)
X-Received: by 2002:a81:115:: with SMTP id 21mr27097ywb.7.1543353029923;
        Tue, 27 Nov 2018 13:10:29 -0800 (PST)
X-Original-Sender: Masse.Nicolas@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:41093
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/41093>

------=_Part_2100_593798603.1543353029210
Content-Type: multipart/alternative; 
	boundary="----=_Part_2101_1163182435.1543353029210"

------=_Part_2101_1163182435.1543353029210
Content-Type: text/plain; charset="UTF-8"

Hi all,

I've got a question about modules since some times now.
The way modules have been done, they require the sources files to declare 
which module they implements and what they exports into a preambule.
To be honest, I don't really get why this was necessary.
Moreover, i found some drawbacks with it:
- It makes sources files dependent on which modules they will be shipped in.
- Not only the sources does declare the module they belongs to, but they 
also need to be put together in the build system (may it be Makefiles, 
cmake, ...). This goes against the DRY concept since it cause duplication 
of information.
- There is a concept of 'module interface unit' (and even a 'primary module 
interface unit'!). As far as I understand it, it is almost the same that 
old .h files, thus providing no real benefit over the latter when writing 
new code.

So, my question is why was this preambule necessary? Can't we avoid it?
Also there seems to be a paper which  indicate that preambules are 
unnecessary 
(http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1299r0.html). 
What's the status about this?

Thanks,
Masse Nicolas.

-- 
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/e3f7a8a5-8e78-49f5-97df-139951f5d07a%40isocpp.org.

------=_Part_2101_1163182435.1543353029210
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hi all,<br><br>I&#39;ve got a question about modules since=
 some times now.<br>The way modules have been done, they require the source=
s files to declare which module they implements and what they exports into =
a preambule.<br>To be honest, I don&#39;t really get why this was necessary=
..<br>Moreover, i found some drawbacks with it:<br>- It makes sources files =
dependent on which modules they will be shipped in.<br>- Not only the sourc=
es does declare the module they belongs to, but they also need to be put to=
gether in the build system (may it be Makefiles, cmake, ...). This goes aga=
inst the DRY concept since it cause duplication of information.<br>- There =
is a concept of &#39;module interface unit&#39; (and even a &#39;primary mo=
dule interface unit&#39;!). As far as I understand it, it is almost the sam=
e that old .h files, thus providing no real benefit over the latter when wr=
iting new code.<br><br>So, my question is why was this preambule necessary?=
 Can&#39;t we avoid it?<br>Also there seems to be a paper which=C2=A0 indic=
ate that preambules are unnecessary (http://www.open-std.org/jtc1/sc22/wg21=
/docs/papers/2018/p1299r0.html). What&#39;s the status about this?<br><br>T=
hanks,<br>Masse Nicolas.<br></div>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/e3f7a8a5-8e78-49f5-97df-139951f5d07a%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/e3f7a8a5-8e78-49f5-97df-139951f5d07a=
%40isocpp.org</a>.<br />

------=_Part_2101_1163182435.1543353029210--

------=_Part_2100_593798603.1543353029210--

.
