On Wednesday, 21 November 2012 at 00:08:05 UTC, Leandro Lucarella
wrote:
Jonathan M Davis, el 20 de November a las 14:45 me escribiste:
On Tuesday, November 20, 2012 23:32:47 Paulo Pinto wrote:
> Am 20.11.2012 21:57, schrieb Walter Bright:
> > Since people already use precompiled headers with C++, I
> > don't think
> > this change has much chance of making it compile faster.
>
> Is it really so?
>
> I would expect that with proper modules C++ compilers could
> achieve
> compile times similar to what other module based languages
> offer.
> Specially if templates are also stored in a module friendly
> format.
>
> But then again I lack enough compiler development experience
> to be able
> to judge that.
>
> Assuming you're right, then C++ is really a lost cause, and
> the current
> trend of standards might follow what happened to Extended
> ISO Pascal,
> which vendors ignored in favour of Turbo Pascal as the
> defacto standard.
You should read this:
http://www.drdobbs.com/cpp/c-compilation-speed/228701711
It's an article by Walter explaining why C++ compilation
speeds are so slow. Pre-compiled headers would help in some
circumstances, but in others, they can't (because
recompilation is required due to different preprocessor macros
or whatnot).
Did you ever cared about reading those slides?!?!? You keep
talking about
problems with pre-compiled headers and what Doug Gregor is
suggesting are NOT
pre-compiled headers. Those are already in clang AFAIK.
What he is proposing is a real module system, macros will not
be re-evaluated
inside modules. The symbols being global have nothing to do
with this being
pre-compiled headers.
Will this solve all the problems from C++ and make its compile
time blazingly
fast? Probably not, but will sure help, not only to avoid
reading the same
header over and over, but also by saving memory. But one thing
is certain,
THIS IS NOT PRE-COMPILED HEADERS (he even mention pre-compiler
headers in the
slides).
For f*ck sake... Please, stop this misinformation madness.
Thanks :)
That is my understanding as well.