

Modern C++ as a Better Compiler - ingve
http://moderncpp.com/2015/04/13/modern-c-as-a-better-compiler/

======
acqq
Note that here "Modern C++" means "the header-only C++ library written by
Kenny Kerr which he named Modern."

[http://moderncpp.com/about/](http://moderncpp.com/about/)

~~~
plorkyeran
Which notably has not actually been released yet.

~~~
acqq
Which makes me feel I've spent the energy reading about the potential
vaporware. Ugh.

The author writes:

[http://kennykerr.ca/2014/08/29/a-modern-
update/](http://kennykerr.ca/2014/08/29/a-modern-update/)

"I have started using it myself and am really enjoying the experience but it
has a few rough edges that I need to work on before I can make it more widely
available"

So he has the site about it, writes the articles about it... and it works only
for him.

~~~
nadams
> The C++/CX compiler....use a weird little hat

> What does the hat do? Well nothing.

Actually the hat is drastically different than a normal pointer. It's
managed/garbage collected pointer[1]. Which is actually pretty smart to
introduce garbage collection functionality without breaking legacy code.

I watched the first code and he doesn't show him actually compiling the sample
he typed up. Instead it kind of cuts to a fullscreen version of some app. My
vote is that this library doesn't actually exist.

[1] - [https://msdn.microsoft.com/en-
us/library/yk97tc08.aspx](https://msdn.microsoft.com/en-
us/library/yk97tc08.aspx)

------
pjmlp
Curious to see how .NET Native would compare given it is using the same
backend as VC++ .

~~~
watmough
What do you mean by .NET Native?

He does compare .NET C# with the managed C++ extensions (terminology?) and
managed C++ does pretty well, just a whisker away from full on low-level C++.
And several times faster than C#.

~~~
Eyas
.NET Native is compiled C#. You can think of it as pre-JITted platform
-dependent C#. It is still managed, imposing memory safety through runtime
bound checks (unless optimized out) and garbage collection. The project is
preparing to be open sourced, it seems. For now you can read about it on MSDN.

The CoreFX project on github is part of the Common .NET implementation which
includes Native, the new ASP.NET, etc.

~~~
oscargrouch
Well they are experimenting with LLVM, as a backend for CIL.. So maybe this is
a sign that they will not open source their VC++ backend and instead go with
this LLILC [1] project for the AOT compilation target?

1 - [https://github.com/dotnet/llilc](https://github.com/dotnet/llilc)

------
masihyeganeh
This comparison is unfair. In C# code it's using foreach loop over generic
list which is ~4 time slower than for loop over array, but in C++ code it's
using pointers (correct me if I'm wrong. I'm not a C++ ninja) which is fastest
loop

------
dTal
>The C++ community is literally bursting with impressive examples

Ouch.

