[cfe-dev] [Modules TS] Have the file formats been decided?

Sean Silva via cfe-dev cfe-dev at lists.llvm.org
Sun Jan 22 21:50:32 PST 2017


On Sun, Jan 22, 2017 at 4:00 AM, Stephen Kelly via cfe-dev <
cfe-dev at lists.llvm.org> wrote:

> Sean Silva via cfe-dev wrote:
>
> >> I don't know what the 'developer
> >> story' is apart from 'wait for all of your dependencies to update with
> >> modules support and wait for each buildsystem of your dependency to be
> >> compatible with all the others for creating and consuming modules and
> >> then you can start using modules'.
> >
> > The problem for C++ modules is actually worse than just "wait for your
> > dependencies". You also may need to wait for your dependents since the
> > modules syntax is incompatible with pre-modules compilers (though last I
> > talked with Richard about this he had some pretty clear ideas for keeping
> > the overhead down during the transition period, which for some projects
> > will be "forever").
>
> I would be interested to hear more from Richard about this.
>
> > Waiting for your dependencies and dependents is a bit of a catch-22
> > unfortunately; we just need to hope that intermediate transitionary steps
> > are available to break the deadlock.
>
> That does sound like a problem.
>
> > Between different build systems, package managers, etc. the deadlock is
> > even stronger (nobody wants to take the first step because nobody's first
> > step adds any value without the others).
>
> I'm not certain what you're referring to. Perhaps what you have in mind is
> some standardization/conventions for buildsystems. I doubt that's possible.
> I think it would be better if Modules were designed to not have that
> impact.
>
> >> I realize this goes beyond Clang and the ModulesTS has buildsystem
> issues
> >> too...
> >>
> >
> > One interesting point here is that it's clear that some sort of
> > standardization is going to be needed "outside the ISO C++ Standard"
> (e.g.
> > conventions for build systems etc.).
>
> I can't imagine how anyone would get something like that started.
>
> > It may be too early for that work to
> > start,
>
> I don't agree with that. I think the design of C++ Modules and the impact
> the design has on buildsystems are coupled. A brilliantly designed Modules
> system which does not consider the buildsystem (or the impact on how people
> write code - what files they write and how they relate to each other in the
> way that .h and .cpp files do today etc) might not get the deserved
> adoption.
>
> > but I haven't seen much on that front (though admittedly I'm not
> > actively following all this modules stuff in detail anymore). If you're
> in
> > a position where you can contribute to that effort it would be *hugely*
> > appreciated I'm sure!
>
> I'm not sure how appreciated it will be, but I have attempted to ask some
> starting questions here:
>
>  https://groups.google.com/a/isocpp.org/forum/?fromgroups#!
> topic/modules/sDIYoU8Uljw
>
> Those are not all the questions I have, but you are correct that the
> conversation about the impact of Modules on buildsystems does not currently
> exist at all, so starting smaller is better.
>

Thanks for getting the ball rolling on this. btw, if you weren't aware,
Manuel actually has been involved with rolling out Clang's explicit modules
(i.e. essentially a "-c step for headers" that produces a .pcm file) into
Google's internal build system


-- Sean Silva


>
> Thanks,
>
> Steve.
>
>
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20170122/dbf1bad5/attachment.html>


More information about the cfe-dev mailing list